操作系統自20世紀50年代誕生,經歷了從專用操作系統到通用操作系統的轉變。整體可以將操作系統的發展歷史分為3個階段:PC時代、移動互聯網時代、萬物互聯時代。
PC時代主要以計算機為主,用戶規模從1970年的10億增長到1990年的30億。這一時代誕生了Windows、Linux、MacOS等操作系統。由于Windows操作系統的廣泛應用部署,微軟于20世紀90年代成為全球市值最高的公司。
隨著智能手機的普及,操作系統正式進入了移動互聯網時代,蘋果推出了iOS操作系統,支撐蘋果成為全球市值最高的科技公司;谷歌2005年收購了Android公司,并持續地進行研發投入和版本迭代,如今Android操作系統已經成為世界上發行量最大的移動智能操作系統。
在萬物互聯時代,隨著越來越多的設備接入互聯網,單一操作系統很難適應多樣化的智能終端、各種復雜應用場景的需求。谷歌、華為等各大企業紛紛進入物聯網操作系統領域,并持續加大這方面的投入。
谷歌從2016年開始研發基于Zircon微內核的Fuchsia操作系統,可以取代為移動設備設計的 Android,計劃用于個人移動設備、IoT設備等不同算力和需求的場景。
華為于2019發布了基于物聯網的鴻蒙操作系統HarmonyOS,隨后于2020年正式發布了開源版本,也就是OpenHarmony,面向全場景、全連接,適用于各類智能設備。
1 OpenHarmony發展歷史
2012年,華為總裁任正非表示:“華為做終端操作系統是出于戰略的考慮”,此時鴻蒙操作系統的概念首次出現在大眾視野。
2016年5月,鴻蒙正式在華為公司的軟件部內部立項并開始投入研發。
2019年8月9號,華為正式發布了HarmonyOS 1.0,該系統率先部署在智慧屏上。
2020年9月10日,華為在HDC大會上發布HarmonyOS2.0。該版主要在3個方面做出重大提升:分布式的軟總線、分布式的數據管理以及分布式的安全。
2020年6月,由工信部牽頭的開放原子開源基金會正式成立,也是國內首個開源軟件基金會。華為將HarmonyOS2.0中的基礎能力部分開源出來,并捐贈給開放原子開源基金會,正式成立了OpenHarmony開源項目。
2021年6月,OpenHarmony發布了2.0 Canary版本,支持輕量帶屏設備。該版本新增22個子系統,支持全面的OS能力,支持內存大于128 MB的帶屏設備開發等。
2021年9月,OpenHarmony發布了3.0 LTS版本,支持簡單標準帶屏設備。該版本新增幾十項特性,支持方舟JS編譯工具鏈和運行時,支持JS UI框架應用開發和運行。
2022年3月,OpenHarmony發布了3.1 Release版本,支持復雜標準帶屏設備。該版本基礎能力得到增強,主要體現在多媒體能力、圖形顯示能力、內存管理能力等,分布式能力也得到了增強。
2023年4月,OpenHarmony發布了3.2 Release版本,全面支持復雜標準帶屏設備。該版本能力提升主要如下:
①系統流程度:架構級的全面優化,包括ArkUI最小化更新技術、并行化極速啟動架構、高性能ArkTS引擎、基礎庫性能優化等。
②系統功能方面:HDF支持800多個HDI標準化設備接口,API 9擁有18 000+ ArkTS API,已經足夠支持復雜大型應用的開發。
③應用性能方面:提供NAPI及混合開發能力、豐富的Native API、TaskPool并行開發框架、DevEco Insight實時性能分析工具等,支持開發極致高性能的框架和應用。
④分布式能力:進一步優化和完善分布式屏幕能力、分布式數據技術以及一次開發多端部署能力上。
整個OpenHarmony版本迭代如圖1所示。

圖1 OpenHarmony版本演進路線
此外,在2023年6月,OpenHarmony發布了4.0 Beta版本,ArkUI進一步完善組件能力和效果,并提供首批API Level 10接口。正式的4.0 Release版本在2023年9月發布。
2 鴻蒙、HarmonyOS、OpenHarmony三者關系
從某種意義上來說,鴻蒙包括HarmonyOS和OpenHarmony。
2016 年 5 月,華為消費者 BG 軟件部開始立項研發“分布式操作系統 1.0 版本”,這就是鴻蒙系統的雛形。
考慮到華為設備的現有數量和鴻蒙系統初期軟件生態的不完善,華為鴻蒙系統技術上兼容Android應用,同時集成了華為自身的能力,包括HMS等,形成了一個可以在華為手機、智慧屏、平板等設備上運行的操作系統,也就是HarmonyOS,該系統不開源。
隨著華為開源戰略的布局,為確保鴻蒙系統能有一個良好的生態,吸納更多共建參與,華為將鴻蒙系統的基礎能力部分開源出來,開源部分也就是OpenHarmony。該部分為華為自研項目,不兼容Android生態。
所以,一般OpenHarmony指開源鴻蒙,HarmonyOS指華為閉源鴻蒙,兩者在應用框架上都采用ArkUI開發框架,應用開發上互相兼容。
隨著OpenHarmony生態的完善,OpenHarmony會逐步替代HarmonyOS,最終形成一個統一開源鴻蒙的生態系統。
3 OpenHarmony與Android的對比
Android是一種基于Linux內核(不包含GNU組件)的自由及開放源代碼的操作系統,主要用于移動設備,如智能手機和平板電腦,由美國Google公司和開放手機聯盟領導及開發。
在系統架構設計之初,OpenHarmony定位就不是Android的替代品,OpenHarmony的目標是構建一個面向萬物互聯時代的分布式操作系統,與Android并非同一個賽道。
兩者在系統架構設計上比較相似,不過OpenHarmony在傳統的系統架構上新增了分布式相關能力,如圖2所示。

圖2 系統架構對比
可以看到,OpenHarmony有著自己的一套架構設計和實現,在開發語言、運行時、應用框架等方面都不同于Android,兩者是完全不同的操作系統。
(1)內核對比
Android:基于Linux內核,程序的安全性、網絡協議、內存管理、進程管理、驅動程序都由Linux內核提供。另外,Android Runtime(ART)就是依靠Linux內核來執行底層功能的,其中包括線程和底層內存管理。
OpenHarmony:采用多內核設計,支持針對不同資源受限設備選用適合的OS內核。內核抽象層(KAL,Kernel Abstract Layer)通過屏蔽多內核差異對上層提供基礎的內核能力,包括進程/線程管理、內存管理、文件系統、網絡管理和外設管理等。
(2)運行時對比
Android Runtime(ART)是Android上的應用和部分系統服務使用的托管式運行時。ART及其前身Dalvik最初是專為Android項目打造的。作為運行時的ART可執行Dalvik可執行文件并遵循Dex字節碼規范。
方舟eTS運行時是OpenHarmony上默認的ArkTS語言運行時,提供完備的C++交互ArkTS NAPI和各種高性能的垃圾回收器,驅動著萬物互聯時代的OpenHarmony應用程序。
4 技術架構
OpenHarmony整體遵從分層設計,從下向上依次為內核層、系統服務層、框架層和應用層。系統功能按照“系統>子系統>組件”逐級展開,在多設備部署場景下,支持根據實際需求裁剪掉某些非必要的組件。OpenHarmony技術架構如圖3所示。

圖3 OpenHarmony技術架構
(1)內核層
內核層包括內核子系統和驅動子系統。OpenHarmony是一個支持多種內核的操作系統,包括可以支持華為自研的LiteOS內核、Linux內核等。開發者可以根據自身的硬件平臺資源、應用場景選擇不同的內核。此外、內核子系統也支持開發者使用其他內核,并通過內核抽象層向上提供統一的操作系統能力。
(2)系統服務層
系統服務層是OpenHarmony的核心能力集合,通過框架層對應用程序提供服務。該層包含以下幾個部分:系統基本能力子系統集、基礎軟件服務子系統集、增強軟件服務子系統集、硬件服務子系統集。
(3)框架層
框架層為應用開發提供了C/C++/JS等多語言的用戶程序框架和Ability框架,適用于JS語言的ArkUI框架,以及各種軟硬件服務對外開放的多語言框架API。
(4)應用層
應用層包括系統應用和第三方非系統應用。應用由一個或多個FA(Feature Ability)或PA(Particle Ability)組成。其中,FA有UI界面,提供與用戶交互的能力;而PA無UI界面,提供后臺運行任務的能力以及統一的數據訪問抽象。
4.1 技術特性
OpenHarmony最主要的技術特性是以下3點:
(1)統一OS,彈性部署
OpenHarmony采用組件化和組件彈性化等設計方法,做到硬件資源的可大可小,在多種終端設備間按需彈性部署,全面覆蓋了ARM、RISC-V、x86等各種CPU,硬件形態支持手機、平板、工業網關、路由器、音箱、耳機等。
(2)一次開發,多端部署
OpenHarmony提供用戶程序框架、Ability框架以及UI框架,能夠保證開發的應用在多終端運行時的一致性。一次開發、多端部署。多終端軟件平臺API具備一致性,確保了用戶程序運行的兼容性。
(3)硬件互助,資源共享
多種設備之間能夠實現硬件互助、資源共享,依賴的關鍵技術包括分布式軟總線、分布式設備虛擬化、分布式數據管理、分布式任務調度等。
分布式軟總線為設備之間的互聯互通提供了統一的分布式通信能力,為設備之間的無感發現和零等待傳輸創造了條件。開發者只需聚焦于業務邏輯的實現,無需關注組網方式與底層協議。分布式軟總線技術架構如圖4所示。

圖4 軟總線架構
分布式設備虛擬化平臺可以實現不同設備的資源融合、設備管理、數據處理,多種設備共同形成一個超級虛擬終端。
分布式數據管理基于分布式軟總線的能力,實現應用程序數據和用戶數據的分布式管理。
分布式任務調度基于分布式軟總線、分布式數據管理、分布式Profile等技術特性,構建統一的分布式服務管理(發現、同步、注冊、調用)機制,支持對跨設備的應用進行遠程啟動、遠程調用、遠程連接以及遷移等操作,能夠根據不同設備的能力、位置、業務運行狀態、資源使用情況,以及用戶的習慣和意圖,選擇合適的設備運行分布式任務。
5 應用開發框架——ArkUI
應用框架是操作系統連接開發者生態、實現用戶體驗的關鍵基礎設施。OpenHarmony為開發者提供了ArkTS開發語言以及ArkUI開發框架。
ArkUI整體架構如圖5所示。最上層提供了自研聲明式UI范式,也支持類Web范式;中間層為方舟編譯器和運行時、聲明式UI后端引擎以及渲染引擎;下層為平臺適配層和平臺橋接層。此外,ArkUI開發框架還配套了相應的IDE開發工具以及工具鏈,以提升開發體驗。
此外,ArkUI不僅僅局限于OpenHarmony或者HarmonyOS,它是一個支持跨平臺的UI框架,也可以運行在Android、iOS等系統上。

圖5 ArkUI框架
ArkUI的聲明式范式通過語法擴展方法提供了裝飾器、自定義組件、UI描述、狀態管理、內置組件、屬性方法以及事件方法等模塊,可以根據用戶需求靈活組合,從而形成定制化界面,如圖6所示。

圖6 ArkUI聲明式范式
7 生態發展
一個操作系統的成果,除了系統本身能力足夠優秀之外,最重要的是其生態是否足夠完善。生態的維度包括硬件生態、應用生態、共建單位、開發者生態等。
7.1 硬件生態
當前,OpenHarmony已經吸引超過50家企業參與共建、落地多個行業,160多款設備搭載OpenHarmony操作系統,如圖7所示。接下來從以下幾方面介紹OpenHarmony的生態進展。

圖7 OpenHarmony生態總覽
(1)芯片生態
2020年9月,OpenHarmony第一次發布并開源時,潤和軟件率先發布了3款支持OpenHarmony海思芯片的開發板,分別是Hi3861、Hi3516、Hi3518。
經過幾年發展,目前OpenHarmony已經支持超過40款芯片,芯片適配歷程如圖8所示。

圖8 芯片適配歷程
OpenHarmony芯片合作伙伴包括瑞芯微、全志、晶晨、Intel、AMD、NXP、賽昉、飛騰、龍芯、匯頂、瑞昱、上海博通、聯盛德、博流、翱捷、意法半導體、芯海等。
(2)設備生態
截止到2023年7月8日,通過OpenHarmony兼容性認證的商用設備數量已達162個,相關廠家80家,如圖9所示。
設備形態包括電子學生證、掃碼支付終端、冰箱、攝像頭、網關等。其中,美的13款、華帝9款,產品形態都是智能家電。聯迪9款、升騰6款都是金融行業相關設備,包括POS機、收款云喇叭等。

圖9 商用設備廠家數據
7.2 行業落地
為推動相關行業落地,OpenHarmony鼓勵企業用戶基于開源版本的OpenHarmony系統,根據行業特點,在系統中新增行業組件、應用功能等,最終形成企業自己的行業發行版。
截至2023年7月8日,通過OpenHarmony兼容性測評的行業發行版總共34個,相關企業19家。
對行業發行版進行數據統計和分析,如圖10所示。可以看到,OpenHarmony已經落地教育、金融、公共安全、超高清、交通、電力、醫療、工業、智慧城市等。其中,教育和金融行業的發行版最多,都達到了5個。

圖10 行業發行版數據
此外,對已經通過兼容性認證的商用設備的行業屬性進行數據統計,如圖11所示。可以看到當前OpenHarmony在金融、家電行業的產品最多,兩者總共占比為49%,接近一半,其次是工業、教育、交通等行業。

圖11 行業發行版廠家數據
7.3 應用生態
應用生態是OpenHarmony接下來幾年發展的重中之重。
在API能力方面,OpenHarmony已經發展到API9版本,API數量已經達到了18 000多個,包括聲明式UI能力、應用開發框架、WEB能力、多媒體能力、分布式能力等,已經可以支持復雜應用開發。
2022年HDC大會上,華為與鴻蒙生態的 14 家合作伙伴簽署合作備忘錄,將在鴻蒙生態領域深度投入。參加簽約的品牌合作伙伴包括新浪、中國國航、人民網、金山辦公、奇安信、去哪兒網、樂元素、科大訊飛、酷狗、百度、小沃科技、網易、航旅縱橫、搜狗。
搜狗已經推出了OpenHarmony版本的輸入法;Cocos引擎適配OpenHarmony,將為應用開發者和用戶帶來更多的便利和創新;Unity引擎已經能夠支持OpenHarmony系統,并且渲染效果和幀率與傳統操作系統不相上下。
8 展 望
OpenHarmony作為一款全新的操作系統,其設計理念非常先進,相信未來OpenHarmony一定會發展成一個偉大的操作系統,在裝機量、應用數量上有重大突破,在萬物互聯時代,成為下一代知名操作系統。OpenHarmony未來發展方向主要圍繞下面幾點。
8.1 架構優化
系統架構設計上持續優化,包括ArkUI重構、視窗架構優化,實現極簡UI繪制管線、分布式窗口、多源窗口融合,進一步探索高性能、輕量化的2D&3D融合的UI框架,以實現2D&3D混合UI開發。
進一步優化芯片架構的代碼、驅動代碼、第三方庫、系統組件等相關設計,減少代碼耦合性、降低代碼復雜度,使得代碼結構更合理,降低代碼冗余。
進一步提升系統流暢度、穩定性,給開發者提供更易用、更好用以及更高效的并發API。在并發調度上,也將針對現存系統中的線程泛濫問題,從時間和空間兩個維度設計相關方案進行優化和改進,并將開發一套統一的并行框架,在運行時根據任務依賴狀態和可執行資源自動并發調度和執行任務。
8.2 系統能力
當前,OpenHarmony核心API數量已經到18 000之多,而Android核心API數量為36 000之多。未來,OpenHarmony將圍繞聲明式UI能力、應用開發框架、WEB能力、多媒體能力、多媒體能力、分布式能力、通信能力、安全能力、全球化服務、DEX、電話等能力,提供更豐富的API,如圖12所示。

圖12 系統能力
8.3 分布式能力
分布式能力進一步增強,提供更強大的全場景能力。分布式能力效率進一步提升,減少時延、實現大帶寬場景的分布式流轉和協同,從交互體驗走向場景化體驗。
輕量系統軟總線能力完善,實現IoT設備與智能設備之間的軟總線互聯互通。
優化軟總線代碼,減少資源占用,在內存更小的芯片上實現軟總線功能。
8.4 多內核
OpenHarmony未來將支持更多的內核,其中比較重要的是硬實時內核和微內核。
(1)硬實時內核
在工業控制領域,實時(Real Time) 是很重要的要求。傳統LiteOS-M內核在實時性上達不到硬實時的要求。為了補齊硬實時的能力,OpenHarmony已經開始支持UniProton內核。該內核主要聚焦硬實時場景,同時為上層業務軟件提供一個統一的操作系統平臺,屏蔽底層硬件差異,并提供強大的調試功能。
(2)微內核
當前,OpenHarmony支持的內核為LiteOS和Linux,兩者都是宏內核。OpenHarmony微內核已經在研發中,未來OpenHarmony將支持微內核架構。
同時,OpenHarmony也將基于微內核技術的可信執行環境,通過“形式化方法”顯著提升了TEE內核的安全等級,全面提升全場景終端設備的安全性。
8.5 應用生態
應用生態建設是OpenHarmony未來發展的重心,主要圍繞以下幾方面展開:①補齊應用能力,提供高效的應用API、適配更多的第三方庫組件,完善ArkUI開發框架,給開發者提供一個更高效的應用開發環境。②賦能開發者,提供各種激勵,建立應用上架、應用商城等,讓開發者更有動力開發OpenHarmony應用。③拓展應用廠家,與頭部應用廠家建立聯合開發機制,加速頭部應用支持OpenHarmony,共同建設應用生態;賦能中小應用廠家、開發者,幫助他們解決OpenHarmony應用開發過程中的問題,實現應用生態的突破。
-
應用程序
+關注
關注
38文章
3344瀏覽量
60260 -
萬物互聯
+關注
關注
1文章
232瀏覽量
15257 -
OpenHarmony
+關注
關注
33文章
3952瀏覽量
21104
原文標題:OpenHarmony當前進展和未來趨勢
文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
低溫無壓燒結銀的前世今生:從發明到未來趨勢
【原創】OpenHarmony系統投屏工具軟件 - OpenHarmony_OHScrcpy使用推薦
飛凌嵌入式ElfBoard-系統信息與資源之獲取當前進程時間
MPO光纖跳線未來趨勢:從800G到硅光集成的技術演進
【重要通知】OpenHarmony主干平臺開發板選型提報倒計時(參考工具發布)
OpenHarmony年度技術課題評選通知
物聯網未來發展趨勢如何?
聚首巴黎!歐洲OpenHarmony城市技術論壇點亮未來創新之光
OpenHarmony當前進展和未來趨勢
評論