OpenHarmony--鸿蒙浅析
鸿蒙系统浅析
简介
鸿蒙(HarmonyOS)是由华为公司于2012年提出的一款分布式操作系统。该系统利用“分布式”技术,将手机、电脑、平板、电视、汽车和智能穿戴设备融合成一个“超级终端”,使用户便于操作和共享各种设备的资源。鸿蒙系统致力于提供统一的语言和平台,简化开发者的开发过程,提高跨设备的协同工作效率。
背景
初始版本于2019年8月9日由华为发布,并于次日推介首款搭载鸿蒙系统的产品“荣耀智能屏”。此后,华为不断完善和升级鸿蒙系统,逐步扩展其适用范围。
图1 HarmonyOS 界面
图2 搭载HarmonyOS的华为mate 40
2024年4月11日,华为发布了最新的HarmonyOS 4.2版本,该版本兼容AOSP 11/12,进一步提升了系统的稳定性和兼容性。
与此同时,HarmonyOS NEXT预计将在2024年第四季度发布,并宣布将不再兼容AOSP,从而向完全自主的方向迈进。
发展历程
版本号 | 发布时间 | 正式推送时间 | 兼容AOSP/Android 版本 | 对应openharmony API最高版本 |
---|---|---|---|---|
1.0 | 2019年8月9日 | 仅用于智能屏 | Android 9 | 无 |
2.0 | 2020年9月10日 | 2021年6月2日 | Android 9/10、AOSP 10/11 | 6 |
3.0 | 2021年10月22日 | 2022年7月27日 | Android 9/10、AOSP 10/11/12 | 8 |
4.0 | 2023年8月4日 | 2023年8月4日 | Android 10、AOSP 10/11/12 | 9 |
4.2 | 2024年4月11日 | 2024年4月11日 | AOSP 11/12 | 9 |
NEXT | 2024年8月4日 | 预计2024第四季 | 取消兼容AOSP | 11 |
OpenHarmony
华为于2020年9月及2021年5月分两次将鸿蒙系统的L0-L2分支源代码捐献给开放原子开源基金会(OpenAtom Foundation)。该基金会将受捐赠代码开源,根据基金会命名规范将该项目命名为OpenAtom OpenHarmony。开放原子开源基金会的主要成员包括阿里巴巴、百度、华为、浪潮、奇虎360、腾讯等互联网领先的国内企业。这种开放的举措促进了社区的参与和合作,加速了鸿蒙生态系统的发展。
图3 OpenHarmony 版本日期
2024年3月30日,OpenHarmony发布了最新版本“OpenHarmony 4.1 Release”分支。
差异
自身差异
目前网络上,对HarmonyOS、HarmonyOS Next以及OpenHarmony均称为鸿蒙系统。以下是它们之间的主要区别:
名称 | 是否兼容AOSP |
---|---|
HarmonyOS | 是 |
OpenHarmony | 否 |
HarmonyOS Next | 否 |
架构差异
图4 OpenHarmony 架构
与Android系统的差异
图5 Android 架构
鸿蒙操作系统优势:
鸿蒙采用微内核架构,而安卓操作系统采用宏内核架构。
稳定性更高:宏内核架构中,内核的任何错误都可能导致整个系统崩溃。微内核架构中,内核只负责提供最核心的功能,因此内核的错误影响范围较小。
安全性更高:宏内核架构中,内核的漏洞更容易被攻击者利用。微内核架构中,内核只负责提供最核心的功能,因此内核的漏洞影响范围更小。
可扩展性更强:宏内核架构中,内核的功能是固定的,因此很难扩展内核的功能。微内核架构中,内核的功能是模块化的,因此可以根据需要扩展内核的功能。
安卓操作系统优势:
系统效率更高:宏内核架构中,内核直接与硬件进行交互,因此系统效率更高。微内核架构中,内核与硬件之间需要通过服务层进行交互,因此系统效率会有所降低。
系统开发更简单:宏内核架构中,开发者只需要关注应用程序的开发,而不需要考虑内核的开发。微内核架构中,内核只负责提供最核心的功能,因此开发者需要了解内核的功能和架构,这增加了开发的复杂性。
用途
硬件支持
OpenHarmony可以部署在ARM、RISC-V和x86架构的各种硬件设备上,内存容量可由128 KB至超过1 MB,并支持以下三种系统的硬件设备:
- 轻量系统:可在连接模块、传感器和可穿戴等设备上运行,内存等于或大于128 KB,支持ARM Cortex-M和32位RISC-V等处理器。
- 小型系统:可在IP摄像机、路由器、事件数据记录器等设备上运行,内存等于或大于1 MB,支持ARM Cortex-A等处理器。
- 标准系统:可在具有增强交互、3D GPU、丰富动画和多样化组件等设备上运行,内存等于或大于128 MB,支持ARM Cortex-A等处理器。
未来展望
“万物互联”向”万物智联”转变
图6 互联网发展趋势
分布式架构
鸿蒙系统的分布式架构旨在打破设备之间的界限,实现跨设备的无缝协同工作。其核心思想是通过分布式技术,将多个设备虚拟化为一个“超级终端”,使得用户在使用任何一个设备时,都能轻松访问和控制其他设备上的资源和功能。
优点:
1、无缝体验:通过分布式软总线和数据管理,用户可以在不同设备间实现无缝切换。例如,用户在手机上进行的操作,可以无缝地切换到平板或电视上继续进行,从而提供一致的使用体验。
2、资源共享:分布式架构使得设备之间可以共享硬件和软件资源。例如,用户可以在电视上调用手机的摄像头,或者在平板上访问电脑的文件,从而提高资源利用效率。
3、协同工作:通过分布式任务调度,用户可以将某个任务分配给最适合的设备执行。例如,用户可以在手机上进行初步处理,然后将复杂计算任务交给电脑执行,从而提高任务的执行效率。
4、灵活扩展:分布式架构支持多种设备的接入和扩展。无论是新增设备还是更新现有设备,用户都可以轻松地将其纳入到“超级终端”中,从而保持系统的灵活性和可扩展性。
开发者工具(SDK)
为了方便开发者进行鸿蒙系统的开发,OpenHarmony提供了全面的开发工具和文档。
下载地址
开源社区
目录架构
以下是OpenHarmony项目的主要目录结构:
图7 SDK 目录
1 |
|
配置编译
以下是获取源码并进行编译的步骤:
1、初始化仓库:
1 | repo init -u https://gitee.com/openharmony/manifest -b OpenHarmony-4.0-Release --no-repo-verify |
2、下载预构建工具:
1 | bash build/prebuilts_download.sh |
3、进行编译:
1 | sudo ./build.sh --product-name rk3568 --ccache --no-prebuilt-sdk |
通过以上步骤,开发者可以快速搭建开发环境并开始进行OpenHarmony的开发工作。
结语
鸿蒙系统作为华为自主研发的操作系统,不仅在国内市场获得了广泛关注,还在国际市场上逐渐崭露头角。其分布式架构和微内核设计使其具备了良好的扩展性和安全性,适用于各种智能设备。随着生态系统的不断完善,鸿蒙系统有望在未来成为物联网时代的重要支柱。