华为鸿蒙是什么,是否是安卓套壳
最近华为鸿蒙系统刷屏厉害,各种争论都有,很多都放在是否是安卓套壳系统上那就从官方发的几个图片聊聊吧。先是技术架构图。
鸿蒙架构
有没有熟悉的感觉?
熟悉那就对了,Android也是差不多的,事实上iPhone,Windows,还有Linux桌面系统,都是这个样子的。学过软件设计的,都知道现在的软件系统庞大,都需要模块化设计。Android基于Linux的,鸿蒙(Linux内核部分)也是基于Linux的,两者不像才怪呢。
现代操作系统,分核心底层,中间服务层,上层应用层,核心包含内核和驱动,中间服务层包含各个功能子系统和开发框架SDK,上层就是各个应用。
安卓框架
在看鸿蒙如何运行安卓应用的,网上找的图。可以看到为了兼容安卓应用,鸿蒙2.0复用了很多开源项目代码,其中包括aosp。估计套壳的最大争议来自于此吧。
不过搞软件开发的都知道复用二字是什么意思。不要重复开发轮子,openharmony想要运行安卓应用,想要兼容安卓,势必会应到安卓的技术,代码或设计。
是否是套壳就仁者见仁,智者见智了,现阶段鸿蒙自身的应用比较少,并且鸿蒙兼容安卓势必会有很多设计和实现向安卓靠拢。近几年很难摆脱这个嫌疑。
兼容安卓
最后看看方舟编译器。
学过编译原理的,学过虚拟机的,应该知道,方舟省略了Java的虚拟机,直接就在编译阶段生成目标平台的二进制代码了,运行的时候跳过了vm,直接在CPU上执行,所以速度会快很多。
综上所述,鸿蒙系统其实华为全新设计的系统。包含了手机平板终端和智能嵌入式终端,可以灵活定制内核,Linux内核,liteOS内核,还有其他的。有自己的编译器。并且通过复用aosp代码实现了兼容运行安卓应用。
不过因为目前安卓市场实在强大,,并且手机和平板上两者都是基于Linux的,架构类似,算是类安卓系统吧。