查看原文
其他

鸿蒙OS开源项目的OpenHarmony

点击关注 👉 技术最TOP 2022-08-26

前言

华为消费者业务CEO余承东在华为开发者大会HDC 2020上正式发布了鸿蒙OS 2.0系统,并开源其源代码。
OpenHarmony广泛应用于手表、大屏、车机与电脑PC等系统,支持与安卓、苹果、PC等终端相连接,软件体积小巧但功能十分强大,运行速度快,采用全新的微内核设计,拥有更强的安全特性和低时延等特点,能够帮助用户解决现有系统性能不足的问题。

软件说明

9 月 10 日,华为在 HDC 2020 大会上宣布正式开源鸿蒙操作系统(HarmonyOS)。开源的鸿蒙项目名为 OpenHarmony。
OpenHarmony是开放原子开源基金会(OpenAtom Foundation)旗下开源项目,定位是一款面向全场景的开源分布式操作系统。
OpenHarmony在传统的单设备系统能力的基础上,创造性地提出了基于同一套系统能力、适配多种终端形态的理念,支持多种终端设备上运行,第一个版本支持128K-128M设备上运行,欢迎参加开源社区一起持续演进。
针对设备开发者,OpenHarmony采用了组件化的设计方案,可以根据设备的资源能力和业务特征进行灵活裁剪,满足不同形态的终端设备对于操作系统的要求。可运行在百K级别的资源受限设备和穿戴类设备,也可运行在百M级别的智能家用摄像头/行车记录仪等相对资源丰富的设备。

软件开发

JS应用开发框架
作为JS应用开发框架的轻量实现,提供一套跨平台的类web应用开发框架,通过Toolkit将开发者编写的HML、CSS和JS 文件编译打包成JS Bundle,然后再将JS Bundle解析运行成C++ UIKit的View 组件进行渲染。通过支持三方开发者使用声明式的API进行应用开发,以数据驱动视图变化,避免了大量的视图操作,大大降低了应用开发难度,提升开发者开发体验。带你了解鸿蒙开发基本流程
DFX
针对不同硬件架构和资源提供组件化且可定制的DFX框架。根据RISC-V、Cortex-M、Cortex-A不同硬件平台,提供两种不同的轻量级DFX框架。
XTS认证
XTS是OpenHarmony生态认证测试套件的集合,当前包括acts(application compatibility test suite)应用兼容性测试套,后续会拓展dcts(device compatibility test suite)设备兼容性测试套等。
全球化
全球化资源管理子系统主要提供语言资源回溯和多偏好语言支持的能力,包括多语言资源回溯和多偏好语言支持。我的鸿蒙 2.0 App 到底是什么
公共基础
公共基础库存放OpenHarmony通用的基础组件。这些基础组件可被OpenHarmony各业务子系统及上层应用所使用。
内核
OpenHarmony内核是面向IoT领域的实时操作系统内核,它具备类似RTOS般轻快和Linux般易用的特点。包括功能组件部分:进程和线程调度、内存管理、IPC机制、timer管理等操作系统基础组件。
分布式任务调度
分布式任务调度模块,通过主(智慧屏设备)从设备(运动手表等小内存设备)服务代理机制,在异构操作系统上建立起分布式服务平台,支持OpenHarmony智慧屏拉起其它OpenHarmony设备FA的能力。
分布式通信
实现近场设备间统一的分布式通信能力管理,提供不区分链路的设备发现和传输接口。包含服务发布、数据传输、安全等功能
启动恢复
启动恢复负责在内核启动之后,应用启动之前的操作系统中间层的启动。支持使用LiteOS-A内核的平台,当前包括:Hi3516DV300平台和Hi3518EV300平台。华为鸿蒙上车,关于智能车企的想象还有多少
图形
主要包括UI组件、布局、动画、字体、输入事件、窗口管理、渲染绘制等模块,构建基于轻量OS的应用框架,满足硬件资源较小的物联网设备的OpenHarmony系统应用开发。
媒体
为多媒体应用开发者开发者提供统一的开发接口,使得开发者可以专注于应用业务的开发,轻松使用多媒体的资源。
安全
主要提供样例给开发者展示如何去使用已有的安全机制来提升系统的安全能力,包括安全启动、应用权限管理、IPC通信鉴权、HUKS、HiChain、应用签名验签。
测试
开发过程采用测试驱动开发模式,开发者基于系统新增特性可以通过开发者自己开发用例保证,对于系统已有特性的修改,也可通过修改项目中原有自测试用例保证,旨在帮助开发者在开发阶段就能开发出高质量代码。
用户程序框架
包含两个模块:Ability子系统和包管理子系统。Ability子系统,是OpenHarmony为开发者提供的一套开发OpenHarmony应用的开发框架。包管理子系统,是OpenHarmony为开发者提供的安装包管理框架。
系统服务框架
由于平台资源有限,且硬件平台多样,因此需要屏蔽不同硬件架构和资源的不同、以及运行形态的不同,提供统一化的系统服务开发框架。根据RISC-V、Cortex-M、Cortex-A不同硬件平台,分为两种平硬件平台,简称M核、A核。
编译构建
编译构建提供了一个在GN与ninja基础上的编译构建框架。支持以下功能:1.构建不同芯片平台的产品。如:Hi3518EV300平台的ipcamera产品,Hi3516DV300平台的ipcamera产品,Hi3861平台的wifi模组产品。2.构建HPM包管理配置生成的自定义产品。
驱动
OpenHarmony驱动子系统采用C面向对象编程模型构建,通过平台解耦、内核解耦,兼容不同内核,提供了归一化的驱动平台底座,旨在为开发者提供更精准、更高效的开发环境,力求做到一次开发,多系统部署。
看了这么多,你下载了OpenHarmony(开源鸿蒙系统)吗?想要下载最新软件就来非凡软件站好玩的游戏、简单易懂的软件教程、令人耳目一新的游戏玩法这里统统都有,更多精彩不容错过!

查看安装过程

 
开源的鸿蒙项目名为OpenHarmony。OpenHarmony定位是一款面向全场景的开源分布式操作系统。
鸿蒙OS开源项目:
https://www.openatom.org/openharmony
鸿蒙OS代码仓库:
https://openharmony.gitee.com/
“鸿蒙OS 2.0将向170多个国家和地区的销售服务组织、50多个国家和地区的生态运营组织、10多个华为自有应用分发体系全面共享,向合作伙伴全面开放华为全球网络和渠道。”
参考链接:
https://www.crsky.com/soft/221913.html
https://www.jianshu.com/p/a057e0fd6c90

---END---

推荐阅读:
硬核!关于PDD员工发帖溯源联想到的相关技术与实现
虎牙二面:说说你对 Java “零拷贝”的理解?
全球最大色情网站宣布:封杀特朗普
2021年1月程序员薪资报告已出炉!升了!升了!
Kotlin开发团队惹上麻烦了!
使用 Jetpack DataStore 进行数据存储
Android UI优化全解析
你还在使用 try-catch-finally 关闭资源?不太优雅~
2020年总结!翻过这座山,他们就会听到你的故事!


更文不易,点个“在看”支持一下👇

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存