话说最近阿里云OS和Android吵的沸沸扬扬的,于是蛋疼去阿里的官方论坛上下了个W700刷机包,解压出来看了看。图就不贴了,想看的去下载下来然后解压就好:
http://kuai.xunlei.com/d/FMCJFEWOPWIW众所周知,Android主要分四大块:
1. Linux kernel,Google对其打了大量的补丁
2. Android的众多组件和库,包括mediaserver bionic logcat等等,这块相当于Linux发行版中除内核和GUI之外的部分,是系统的必须组件。在这部分除了自己写的上面那些,Google也采用了很多开源组件,比如dnsmasq、pptd等等。
3. dalvik虚拟机,所有的应用,包括系统和用户的,均跑在这个java虚拟机上
4. 系统应用,比如Contacts Gallery MediaProvider Phone .....
那么相对这些,阿里云OS有哪些区别呢
1. Linux Kernel,后面要说到阿里云OS的第2部分和Android是基本一致的,那么显然必须用Google打过补丁的内核,否则无法工作。按理说阿里应该按照GPL开放内核源代码,那样一目了然,可惜王坚没这么做。
2. 各种组件和库,和Android基本一致,包括Google专门写的bionic c库,阿里也是照搬无误。(bionic不如glibc啊,阿里怎么想的)
此处阿里有cloudserver是Android没有的,估计就是那个云OS中的云。
3. dalvik虚拟机。阿里云OS并不是和王坚宣称的那样,用一个什么转换程序把Android dex转换成lex,然后用阿里自己的lemur虚拟机来运行,而是依然保留了dalvik vm。
这里还有阿里云OS和Android最大的区别,也就是阿里自主开发的lemur java虚拟机!这也是阿里云OS和Android最大的区别。Android是只有dalvik,阿里云OS是dalvik和lemur同时跑,个人窃以为是阿里无法做到lemur完美兼容dalvik,所以只好跑两个虚拟机了。。
4. 系统界面,虽然阿里云的app目录下都是lar包,但是除第三方应用和阿里自己的应用外,系统应用名字恰巧和Android中的apk包一致,不得不怀疑阿里只是稍微改了改以适用于lemur。
综上所述,阿里云OS能做个java虚拟机也算很不错了,可惜很明显不是像王坚所说,只是略微借鉴了Android,而是在Android的基础上添加了lemur虚拟机和一些阿里自己的应用,顺便改了下UI,就成了新OS。
P.S 话说自己实现java虚拟机有必要么,,完全用dalvik的话就能保证和Android 100%兼容,也不会导致Acer被Google警告。。
P.S. 敦促阿里云OS遵守GPL,公开内核源码;遵守Apache,加入版权信息。
最后附上 ls /system/bin的图,其中就有大名鼎鼎,全自主开发,国家15亿经费投入的产出------lemur虚拟机!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/47871
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.