OpenHarmony(開源鴻蒙系統)是HarmonyOS的開源版,由華為捐贈給開放原子開源基金會(OpenAtom Foundation)開源,第一個開源版本支持在128KB~128MB設備上運行,歡迎參加開源社區一起持續演進。
系統介紹9 月 10 日,華為在 HDC 2020 大會上宣布正式開源鴻蒙操作系統(HarmonyOS)。開源的鴻蒙項目名為 OpenHarmony。
OpenHarmony是開放原子開源基金會(OpenAtom Foundation)旗下開源項目,定位是一款面向全場景的開源分布式操作系統。
OpenHarmony在傳統的單設備系統能力的基礎上,創造性地提出了基于同一套系統能力、適配多種終端形態的理念,支持多種終端設備上運行,第一個版本支持128K-128M設備上運行,歡迎參加開源社區一起持續演進。
針對設備開發者,OpenHarmony采用了組件化的設計方案,可以根據設備的資源能力和業務特征進行靈活裁剪,滿足不同形態的終端設備對于操作系統的要求。可運行在百K級別的資源受限設備和穿戴類設備,也可運行在百M級別的智能家用攝像頭/行車記錄儀等相對資源豐富的設備。
作為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)設備兼容性測試套等。
全球化
全球化資源管理子系統主要提供語言資源回溯和多偏好語言支持的能力,包括多語言資源回溯和多偏好語言支持。
公共基礎
公共基礎庫存放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面向對象編程模型構建,通過平臺解耦、內核解耦,兼容不同內核,提供了歸一化的驅動平臺底座,旨在為開發者提供更精準、更高效的開發環境,力求做到一次開發,多系統部署。
至于生態方面,由于鴻蒙系統也兼容安卓APP,所以與原來的EMUI使用起來,感覺也沒有太多的差別,一切都比較完美。
我們知道,鴻蒙系統華為是開源了的,開源項目叫做OpenHarmony 2.0,華為捐贈給了“開放原子開源基金會”,各個廠家都可以平等地在“開放原子開源基金會”獲得代碼,根據不同的業務訴求來做產品。
那么這個開源的OpenHarmony 2.0,與華為自己使用的鴻蒙,也就是HarmonyOS 2,又有什么區別呢?
其實區別可大了,HarmonyOS 2是華為基于開源項目 OpenHarmony 2.0 開發的面向多種全場景智能設備的商用版本,這個版本是華為自己專用的。
如果其它廠商需要使用鴻蒙系統,就得自己去獲得OpenHarmony 2.0的源代碼,然后再根據自己的業務,進行二次開發后,整出一個屬于自己的系統來,類似于小米要基于安卓重新弄一個MIUI出來一樣。
目前已經有技術大V們,將OpenHarmony 2.0的源代碼下載下來,并通過開發板進行了適配安裝,從實際情況來看,這個OpenHarmony 2.0系統與華為自己的HarmonyOS 2相比,是非常簡陋的,甚至連安卓應用都不兼容的,不過最厲害的分布式能力,超級終端功能這些優勢,這個OpenHarmony 2.0還是具備的。
很多網友表示,拋開其它的商業利益考慮之外,基于這個原因,估計友商們也不愿意使用啊,因為友商們如果要使用,相當于要重新編譯一遍,還要自己加N多的東西進去,還要自己去兼容安卓APK文件,然后才是一個完整可用的系統,這多麻煩啊。
openharmony官網和鴻蒙,對于此,不知道你是怎么看的?不過大家先別吐槽,谷歌的安卓也是如此,開源的與商用的也是不一樣的。
-
OpenHarmony
+關注
關注
25文章
3731瀏覽量
16431
發布評論請先 登錄
相關推薦
評論