HarmonyOS 整體遵從分層設計,從下向上依次為:內核層、系統服務層、框架層和應用層。系統功能按照“系統 > 子系統 > 功能/模塊”逐級展開,在多設備部署場景下,支持根據實際需求裁剪某些非必要的子系統或功能/模塊。HarmonyOS 技術架構如[圖1]所示。
圖1 技術架構
內核層
內核子系統: HarmonyOS 采用多內核設計,支持針對不同資源受限設備選用適合的 OS 內核。內核抽象層(KAL,KernelAbstract Layer)通過屏蔽多內核差異,對上層提供基礎的內核能力,包括進程/線程管理、內存管理、文件系統、網絡管理和外設管理等。
驅動子系統:HarmonyOS驅動框架(HDF)是 HarmonyOS 硬件生態開放的基礎,提供統一外設訪問能力和驅動開發、管理框架。
系統服務層
系統服務層是 HarmonyOS 的核心能力集合,通過框架層對應用程序提供服務。該層包含以下幾個部分:
系統基本能力子系統集:為分布式應用在 HarmonyOS 多設備上的運行、調度、遷移等操作提供了基礎能力,由分布式軟總線、分布式數據管理、分布式任務調度、方舟多語言運行時、公共基礎庫、多模輸入、圖形、安全、AI 等子系統組成。其中,方舟運行時提供了 C / C++ / JS 多語言運行時和基礎的系統類庫,也為使用方舟編譯器靜態化的 Java 程序(即應用程序或框架層中使用 Java 語言開發的部分)提供運行時。
基礎軟件服務子系統集:為 HarmonyOS 提供公共的、通用的軟件服務,由事件通知、電話、多媒體、DFX、MSDP & DV 等子系統組成。
增強軟件服務子系統集:為 HarmonyOS 提供針對不同設備的、差異化的能力增強型軟件服務,由智慧屏專有業務、穿戴專有業務、IoT 專有業務等子系統組成。
硬件服務子系統集:為 HarmonyOS 提供硬件服務,由位置服務、生物特征識別、穿戴專有硬件服務、IoT 專有硬件服務等子系統組成。
根據不同設備形態的部署環境,基礎軟件服務子系統集、增強軟件服務子系統集、硬件服務子系統集內部可以按子系統粒度裁剪,每個子系統內部又可以按功能粒度裁剪。
框架層
框架層為 HarmonyOS 的應用程序提供了 Java / C / C++ / JS 等多語言的用戶程序框架和 Ability 框架,以及各種軟硬件服務對外開放的多語言框架 API ;同時為采用HarmonyOS的設備提供了 C / C++ / JS 等多語言的框架 API,不同設備支持的 API 與系統的組件化裁剪程度相關。
應用層
應用層包括系統應用和第三方非系統應用。HarmonyOS 的應用由一個或多個 FA(Feature Ability)或 PA(Particle Ability)組成。其中,FA 有 UI 界面,提供與用戶交互的能力;而 PA 無 UI 界面,提供后臺運行任務的能力以及統一的數據訪問抽象。基于 FA / PA 開發的應用,能夠實現特定的業務功能,支持跨設備調度與分發,為用戶提供一致、高效的應用體驗。
審核編輯 黃宇
-
API
+關注
關注
2文章
1502瀏覽量
62041 -
鴻蒙
+關注
關注
57文章
2355瀏覽量
42868 -
HarmonyOS
+關注
關注
79文章
1977瀏覽量
30221
發布評論請先 登錄
相關推薦
評論