记得阿里巴巴曾经在YunOS 1.0版系统发布的初期多次发表声明(YunOS 3.0的时候也有),目的便是为了澄清自身的血统,传递它们并非是基于Android系统的二次开发版本,并且拿出实为交互界面而非操作系统的国产“手机系统”来举例作了说明。
所以也就是说,其实包括HTC的Sense UI、小米的MIUI、锤子的Smartisan OS等等在内,它们都不是真正的手机操作系统,前面提到的和那些没提到的“系统”本质上都是以Android 系统为底层的GUI图形交互界面,不过这并不是今天的主题。
五款采用不同系统(原生)的手机(不知道各位能说出他们的型号么?)
虽然前面我们说了这篇文章不会是一篇技术流的科普文,但由于目前各位亲们的认知水平都有了明显的提升,所以笔者觉得也有必要再重新梳理一遍这五款操作系统底层方面的东西,比如系统的内核、APP的运行环境,以及编程语言等等。
01丨苹果 iOS(最新版本为iOS 8.1)
从2007年的1.0版本开始,苹果的iOS系统就使用了从Mac OSX系统移植到ARM架构上的Darwin核心(使用与UNIX类似的XNU内核),同时搭配应用运行环境(类似Android的虚拟机)。iOS系统的底层使用C、C++编写,应用使用Object-C和最近更新的Swift语言编写。
苹果的iOS系统对开发者开放的内容越来越多(图片来自苹果)
iOS系统在底层于Mac OSX有相通的部分,但是由于UI框架、应用框架、交互框架的不同,导致了两款系在视觉呈现、应用兼容性的不同。闭源开发策略使得苹果对系统有绝对的控制权,应用生态、稳定性以及安全性方面因此而得到的提升,于是也就获得的高度统一的特性。
苹果发布了代码更精简执行效率更高的编程语言Swift(图片来自苹果)
02丨谷歌 Android(最新版本为Android L)
Android操作系统使用了Linux核心的一个分支,内存调度机制、文件存储机制均与后者一致,系统底层使用C语言编写。由于移除了GNU库,Android无法Linux的应用,其多数应用使用Java编写(也能用C语言编写使用NDK的APP),运行与Dalvik虚拟机或ART运行环境中。
Android L(5.0)改用ART运行环境支持64位处理芯片(图片来自谷歌)
开源策略导致加入这个阵营的成员非常多,同时也带来了非常多的基于其定制的加入第三方交互界面的系统们,再加上规格繁多的硬件设备,所以Android设备的碎片化现象依旧很严重。Android L在UI和ART方面的改进意义比较重大,谷歌对于Android系统控制也开始收紧。
I/O 2013大会上谷歌公布了更易用的应用开发工具 Android Studio(图片来自谷歌)
//mobile.zol.com.cn/486/4865754.html
mobile.zol.com.cn
true
中关村在线
//mobile.zol.com.cn/476/4765294.html
report
2064
记得阿里巴巴曾经在YunOS 1.0版系统发布的初期多次发表声明(YunOS 3.0的时候也有),目的便是为了澄清自身的血统,传递它们并非是基于Android系统的二次开发版本,并且拿出实为交互界面而非操作系统的国产“手机系统”来举例作了说明。所以也就是说,其实包括...