华为鸿蒙2.0发布,铺天盖地的关于鸿蒙的文章,有点晕,也不太能看得懂,很惭愧,所以特意查了一下,感觉能够科普到能看懂相关新闻的程度。例如AOSP,GWS,HWS等,和大家分享一下:
先说关键概念
AOSP是什么我们都知道Andriod是一个开源系统,指的就是AOSP,就是AndroID Open Software Project的缩写,这个系统是Google维护的,但是由开源社区贡献的,是 *** 作系统的核心,说他是核心因为如果没有其他的一些服务(硬件驱动和GMS),还不能安装到手机上。
简单看一下Andriod *** 作系统的分层:
linux Kernel管理cpu、内存、网络,还包括手机所有硬件的驱动程序。
HAL把是app到手机硬件的抽象接口,也就是说是厂商无关的。
通用函数库:例如OpenGL ES,Webkit等
往上就是Andriod Framework,也就是我们看到的AndroID的界面,还有SDK等,
再往上,就是Apps了。
中间的AndroID Runtime,是一个java虚拟机。
AOSP并不包含硬件驱动,各芯片厂商会根据AOSP的版本,裁剪出适合自己的硬件的AOSP版本,所以,有些手机厂商的定制开发是从芯片厂商出获得AOSP。
GMSAOSP也不包含Google的应用程序套件,也就是GMS,是Google Mobile Service。这个软件套件包含了Chrome,YouTube,Google Play, Google Play 服务,Google支付,Voice command等。GMS不是开源的,凡是要安装GMS的手机必须获得Google的授权。GMS里面的大部分服务在国内可能不能使用,但是很多App,特别是国外的App是严重依赖GMS的,如果没有GMS,可能会闪崩。所以一般情况下,国内的手机厂商都会获取GMS的授权,然后在安装的时候做一些裁剪,同时推出自己的对应的服务,例如华为有自己的HMS, 小米也有自己的小米移动服务。但是里面或多或少的保留了GMS的一部分模块,国内手机用户如果有点黑客精神,还是可以把GMS安装上的(就是著名的Google三件套)。 由于中美贸易摩擦,华为不能获得GMS的授权,也就不能使用GMS,这样会造成有些App可能不兼容。为了保证不安装任何GMS情况下兼容所有App,华为必须保证HMS能够足够能力替换GMS。
原生AndroID系统(Stock AndroID)Google公司为了证明AndroID,亲自OEM了一些手机,例如Nexus系列,Google在AOSP的基础上,裁剪驱动,增加GMS,提供用户界面,推出一个能够在手机上运行的 *** 作系统,此系统最为精简,我们一般称为原生AndroID,也叫Stock AndroID。当然也有一些手机厂商直接使用这个系统。
三星、华为(EMUI)、小米(Miui)等用的定制化Andriod系统现在的大厂都基于AOSP,定制完驱动,获得GMS授权后,然后根据进行用户体验的优化,主要是进行界面的优化和性能参数调整等。
有了这些概念,我们再来看鸿蒙新闻。鸿蒙架构里面的内核包括liteOS和linux,这里,liteOS是完全自研的内核(这个内核和linux的关系还希望 *** 作系统的专家深度解读),而linux则就是AOSP里面的linux内核。如果鸿蒙要是用liteOS的话,那么上面的驱动程序,HAL,Native C/C++ library都需要在liteOS上编译后,才有可能兼容当下的大部分软件开发。当然华为实现了方舟编译器,但是所有的驱动,Native库在新的 *** 作系统上编译成功是一件工作量巨大的事情。从这个方面推断,目前华为手机上推送的鸿蒙系统,应该还是AOSP的,只不过是把HMS优化到可以完全绕过GMS,并且包含之前的EMUI(不太确定是否EMUI也开源了)。并且我也猜测,手机端的鸿蒙应该和liteOS并没有关系,有关系的话,也是通过一些驱动和 *** 作系统接口,和其他设备上的liteOS可以互联互通。
在鸿蒙的两次发布中,都提到了万物互联的概念。移动互联网已经发展到了顶峰,手机 *** 作系统已经是个非常复杂,非常成熟,生态非常庞大的系统,再开发一个一样成熟的代价将会是个天文数字,而且等开发完成了,估计手机时代也已经过去了。所以华为的目光实际上是放在物联网 *** 作系统上的,这个就是liteOS。当然,物联网 *** 作系统,Google也没有落后,Google Fuchsia是基于Google的非linux内核Zircon 并且支持 Google’s Dart 语言的物联网 *** 作系统,根据流行趋势,也是开源的。极客们,是时候去看下一代 *** 作系统了!
总结以上是内存溢出为你收集整理的鸿蒙(Harmony)、安卓(Android)、AOSP全部内容,希望文章能够帮你解决鸿蒙(Harmony)、安卓(Android)、AOSP所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)