余承东在2月份宣布:鸿蒙将于4月份全面上线,果然没有食言
华为鸿蒙2.0来了,首批升级机型名单包括:Mate X2、Mate40以及P40系列。需要注意的是这次上线的鸿蒙OS依旧只是开发者测试版,还不是正式版本。另外花粉们必须前往官网申请加入开发者计划才能接收到升级通知。
已经有一些小伙伴升级了鸿蒙系统,开机界面已经变成了鸿蒙OS,“Power By Android”已经彻底消失了。不过从体验视频来看,鸿蒙系统的操作逻辑与安卓基本上差不多,很多人不禁质疑,这和安卓系统没啥区别,是不是就是安卓系统套了一个壳啊?
鸿蒙系统技术架构
要搞清楚鸿蒙系统与安卓系统的区别,我们先要了解一下鸿蒙系统的技术架构。
鸿蒙系统技术架构
鸿蒙系统采用了分层机构,整个技术架构从下到上依次是:内核层、系统服务层、应用框架层和应用层。
HarmonyOS 采用多内核设计,支持针对不同资源受限的设备选用适合的 OS内核。目前已经支持的内核包括Lite OS和Linux Kernel。
为了对上层提供统一的基础内核能力,鸿蒙引入了一个内核抽象层(KAL:Kernel Abstract Layer)来屏蔽多内核差异。这样上层就可以获得统一的内核能力,包括进程/线程管理、内存管理、文件系统、网络管理和外设管理等。
此外内核层还有驱动子系统,HarmonyOS 驱动框架(HDF)是鸿蒙硬件生态开放的基础,为硬件设备商提供了统一外设访问能力和驱动开发、管理框架。
系统服务层是 HarmonyOS 的核心能力集合,并通过应用框架层对应用程序提供服务。应用框架层为 HarmonyOS 应用程序提供了 Java/C/C++/JS 等多语言的用户程序框架和 Ability 框架,以及各种软硬件服务API。
从华为官方的鸿蒙介绍来看,确实看不到任何安卓系统的影子,不过鸿蒙OS的多内核之一就是Linux,与安卓一样,我觉得这就是华为为兼容安卓生态而考虑的。
鸿蒙为啥可以运行安卓应用
鸿蒙OS界面
大家发现,虽然刷机了鸿蒙系统,但是所有android应用还是可以用啊,有点不可思议,对于一个全新的系统,通常需要开发者针对新系统进行二次开发,才能将程序移植到新系统上。
所以大家怀疑鸿蒙系统类似于之前的EMUI,基于安卓系统改了一个UI,即所谓安卓套壳或者说是安卓换肤,这种怀疑也是合理的。
系统底层显示从安卓变成了Harmony OS以外
不过我觉得要兼容Android应用其实有很多选择,华为对安卓系统非常熟悉,用哪种方法对华为来说都不难:
- 最简单直接的方法是在鸿蒙系统上移植安卓虚拟机来运行安卓程序,我估计这个可能性不大;
- 如果不使用安卓虚拟机,那么可以将apk文件即时编译为可以运行在鸿蒙系统上运行的字节码或机器码,这有可能是方舟编译器的能力;
- 还有一种可能性是类似于Wine,运用API转换技术做出鸿蒙对应到安卓系统的函数,从而运行安卓应用。
Wine:是一个在x86、x86-64上容许类Unix操作系统在X Window System下运行Microsoft Windows程序的软件。Wine不是Windows模拟器,而是运用API转换技术实做出Linux对应到Windows相对应的函数来调用DLL以运行Windows程序。
有网友发现了在鸿蒙系统中,有借鉴AOSP(安卓开源项目)的影子,我觉得这个是完全有可能的。鸿蒙为了利用安卓的生态,肯定要借鉴安卓系统,说一点没用到,我是不太相信的。最大的可能性就是鸿蒙在某些层面,对安卓系统和鸿蒙系统做了一个完全性的兼容,有可能是字节码,也有可能是API接口。
与其说鸿蒙是在安卓外面套了个壳,不如说鸿蒙是披着安卓的外衣。虽然外表看上去我还是安卓,但其实我的内心是鸿蒙的。
总结
大家对鸿蒙系统一直抱有很大期望,希望华为能做出一款开天辟地的系统,当看到鸿蒙与安卓系统如此接近难免有些失望。不过我想这也是华为的无奈之举,因为目前鸿蒙没有自己的应用生态,在没有一定的装机量下,没有哪家应用厂商会愿意为了鸿蒙系统开发应用。
因此华为不得不先考虑100%兼容安卓系统,好让鸿蒙系统有一个比较容易的起步,对于使用者来说,体验差距是不大的。
对于华为来说,现在类似于要改装一部车,先把发动机换掉了,外观内饰暂时还没有变化。但我们也不能否定华为的努力,相信鸿蒙会越来越好。大家如何看待鸿蒙系统呢,欢迎评论区留言。
我会持续更新关于物联网、云原生以及Java方面的文章,用简单的语言描述复杂的技术,也会偶尔发表一下对IT产业的看法,欢迎大家关注,在评论区留下您的看法。
推荐阅读
马士兵带你解读鸿蒙微内核操作系统
为什么阿里巴巴的程序员成长速度这么快?
进大厂也就这回事,工作2到3年后进大厂操作指南
阿里架构师【柏羲】带你揭秘架构项目实战与源码解读:微博+B站架构设计、JUC核心、Mybatis源码
看完三件事
如果你觉得这篇内容对你还蛮有帮助,我想邀请你帮我三个小忙:
点赞,转发,有你们的 『点赞和评论』,才是我创造的动力。
关注公众号 『 Java斗帝 』,不定期分享原创知识。
同时可以期待后续文章ing🚀