鴻蒙系統(tǒng)概述(HarmonyOS)
我們可以從以下三個主要方面進(jìn)行概述:系統(tǒng)定義、技術(shù)特征、系統(tǒng)安全。
目錄
鴻蒙系統(tǒng)概述(HarmonyOS)
系統(tǒng)定義?
系統(tǒng)定位
技術(shù)架構(gòu)?
內(nèi)核層?
?系統(tǒng)服務(wù)層
框架層
應(yīng)用層
?技術(shù)特性
硬件互助,資源共享
一次開發(fā),多端部署
統(tǒng)一OS,彈性部署?
系統(tǒng)安全
正確的人
正確的設(shè)備
正確地使用數(shù)據(jù)
系統(tǒng)定義?
系統(tǒng)定位
HarmonyOS是一款面向萬物互聯(lián)時代的、全新的分布式操作系統(tǒng)。
在傳統(tǒng)的單設(shè)備系統(tǒng)能力基礎(chǔ)上,HarmonyOS提出了基于同一套系統(tǒng)能力、適配多種終端形態(tài)的分布式理念,能夠支持手機(jī)、平板、智能穿戴、智慧屏、車機(jī)、PC、智能音箱、耳機(jī)、AR/VR眼鏡等多種終端設(shè)備,提供全場景(移動辦公、運(yùn)動健康、社交通信、媒體娛樂等)業(yè)務(wù)能力。
鴻蒙系統(tǒng)(HarmonyOS)有三大特征:
- 搭載該操作系統(tǒng)的設(shè)備在系統(tǒng)層面融為一體、形成超級終端,讓設(shè)備的硬件能力可以彈性擴(kuò)展,實現(xiàn)設(shè)備之硬件互助,資源共享(多種設(shè)備之間能夠?qū)崿F(xiàn)硬件互助、資源共享,依賴的關(guān)鍵技術(shù)包括分布式軟總線、分布式設(shè)備虛擬化、分布式數(shù)據(jù)管理、分布式任務(wù)調(diào)度等。)。
- 面向開發(fā)者,實現(xiàn)一次開發(fā),多端部署(HarmonyOS提供了用戶程序框架、Ability框架以及UI框架,支持應(yīng)用開發(fā)過程中多終端的業(yè)務(wù)邏輯和界面邏輯進(jìn)行復(fù)用,能夠?qū)崿F(xiàn)應(yīng)用的一次開發(fā)、多端部署,提升了跨設(shè)備應(yīng)用的開發(fā)效率。)。
- 一套操作系統(tǒng)可以滿足不同能力的設(shè)備需求,實現(xiàn)統(tǒng)一OS,彈性部署。
HarmonyOS提供了支持多種開發(fā)語言的API,供開發(fā)者進(jìn)行應(yīng)用開發(fā)。支持的開發(fā)語言包括ArkTS、JS(JavaScript)、C/C++ 、Java。
技術(shù)架構(gòu)?
HarmonyOS整體遵從分層設(shè)計,從下向上依次為:內(nèi)核層、系統(tǒng)服務(wù)層、框架層和應(yīng)用層。系統(tǒng)功能按照“系統(tǒng) > 子系統(tǒng) > 功能/模塊”逐級展開,在多設(shè)備部署場景下,支持根據(jù)實際需求裁剪某些非必要的子系統(tǒng)或功能/模塊。
HarmonyOS技術(shù)架構(gòu)如下所示:
??
內(nèi)核層?
- 內(nèi)核子系統(tǒng):HarmonyOS采用多內(nèi)核設(shè)計,支持針對不同資源受限設(shè)備選用適合的OS內(nèi)核。內(nèi)核抽象層(KAL,Kernel Abstract Layer)通過屏蔽多內(nèi)核差異,對上層提供基礎(chǔ)的內(nèi)核能力,包括進(jìn)程/線程管理、內(nèi)存管理、文件系統(tǒng)、網(wǎng)絡(luò)管理和外設(shè)管理等。
- 驅(qū)動子系統(tǒng):Hardware Driver Foundation,硬件驅(qū)動框架(HDF),用于提供統(tǒng)一外設(shè)訪問能力和驅(qū)動開發(fā)、管理框架,是HarmonyOS硬件生態(tài)開放的基礎(chǔ),提供統(tǒng)一外設(shè)訪問能力和驅(qū)動開發(fā)、管理框架。
?系統(tǒng)服務(wù)層
系統(tǒng)服務(wù)層是HarmonyOS的核心能力集合,通過框架層對應(yīng)用程序提供服務(wù)。該層包含以下幾個部分:
- 系統(tǒng)基本能力子系統(tǒng)集:為分布式應(yīng)用在HarmonyOS多設(shè)備上的運(yùn)行、調(diào)度、遷移等操作提供了基礎(chǔ)能力,由分布式軟總線、分布式數(shù)據(jù)管理、分布式任務(wù)調(diào)度、方舟多語言運(yùn)行時、公共基礎(chǔ)庫、多模輸入、圖形、安全、AI等子系統(tǒng)組成。其中,方舟運(yùn)行時提供了C/C++/JS多語言運(yùn)行時和基礎(chǔ)的系統(tǒng)類庫,也為使用方舟編譯器靜態(tài)化的Java程序(即應(yīng)用程序或框架層中使用Java語言開發(fā)的部分)提供運(yùn)行時。
- 基礎(chǔ)軟件服務(wù)子系統(tǒng)集:為HarmonyOS提供公共的、通用的軟件服務(wù),由事件通知、電話、多媒體、DFX(Design For X) 、MSDP&DV等子系統(tǒng)組成。
- 增強(qiáng)軟件服務(wù)子系統(tǒng)集:為HarmonyOS提供針對不同設(shè)備的、差異化的能力增強(qiáng)型軟件服務(wù),由智慧屏專有業(yè)務(wù)、穿戴專有業(yè)務(wù)、IoT專有業(yè)務(wù)等子系統(tǒng)組成。
- 硬件服務(wù)子系統(tǒng)集:為HarmonyOS提供硬件服務(wù),由位置服務(wù)、生物特征識別、穿戴專有硬件服務(wù)、IoT專有硬件服務(wù)等子系統(tǒng)組成。
- MSDP
Mobile Sensing Development Platform,移動感知平臺。MSDP子系統(tǒng)提供分布式融合感知能力,借助HarmonyOS分布式能力,匯總?cè)诤蟻碜远鄠€設(shè)備的多種感知源,從而精確感知用戶的空間狀態(tài)、移動狀態(tài)、手勢、運(yùn)動健康等多種狀態(tài),構(gòu)建全場景泛在基礎(chǔ)感知能力,支撐智慧生活新體驗。
- DV
Device Virtualization,設(shè)備虛擬化,通過虛擬化技術(shù)可以實現(xiàn)不同設(shè)備的能力和資源融合。
根據(jù)不同設(shè)備形態(tài)的部署環(huán)境,基礎(chǔ)軟件服務(wù)子系統(tǒng)集、增強(qiáng)軟件服務(wù)子系統(tǒng)集、硬件服務(wù)子系統(tǒng)集內(nèi)部可以按子系統(tǒng)粒度裁剪,每個子系統(tǒng)內(nèi)部又可以按功能粒度裁剪。?
框架層
框架層為HarmonyOS應(yīng)用開發(fā)提供了ArkTS/JS/C/C++/Java等多語言的用戶程序框架,兩種UI框架(包括適用于ArkTS/JS語言的方舟開發(fā)框架即ArkUI、適用于Java語言的Java UI框架),以及各種軟硬件服務(wù)對外開放的多語言框架API。根據(jù)系統(tǒng)的組件化裁剪程度,HarmonyOS設(shè)備支持的API也會有所不同。
應(yīng)用層
應(yīng)用層包括系統(tǒng)應(yīng)用和第三方非系統(tǒng)應(yīng)用。HarmonyOS的應(yīng)用由一個或多個FA(Feature Ability)或PA(Particle Ability)組成。其中,F(xiàn)A有UI界面,提供與用戶交互的能力;而PA無UI界面,提供后臺運(yùn)行任務(wù)的能力以及統(tǒng)一的數(shù)據(jù)訪問抽象。FA在進(jìn)行用戶交互時所需的后臺數(shù)據(jù)訪問也需要由對應(yīng)的PA提供支撐?;贔A/PA開發(fā)的應(yīng)用,能夠?qū)崿F(xiàn)特定的業(yè)務(wù)功能,支持跨設(shè)備調(diào)度與分發(fā),為用戶提供一致、高效的應(yīng)用體驗。
- FA
Feature Ability,元服務(wù),代表有界面的Ability,用于與用戶進(jìn)行交互。
- PA
Particle Ability,元能力,代表無界面的Ability,主要為Feature Ability提供支持,例如作為后臺服務(wù)提供計算能力,或作為數(shù)據(jù)倉庫提供數(shù)據(jù)訪問能力。
?技術(shù)特性
硬件互助,資源共享
多種設(shè)備之間能夠?qū)崿F(xiàn)硬件互助、資源共享,依賴的關(guān)鍵技術(shù)包括分布式軟總線、分布式設(shè)備虛擬化、分布式數(shù)據(jù)管理、分布式任務(wù)調(diào)度等。
分布式軟總線
分布式軟總線是手機(jī)、平板、智能穿戴、智慧屏、車機(jī)等分布式設(shè)備的通信基座,為設(shè)備之間的互聯(lián)互通提供了統(tǒng)一的分布式通信能力,為設(shè)備之間的無感發(fā)現(xiàn)和零等待傳輸創(chuàng)造了條件。開發(fā)者只需聚焦于業(yè)務(wù)邏輯的實現(xiàn),無需關(guān)注組網(wǎng)方式與底層協(xié)議。
分布式軟總線示意圖如下:
??
?典型應(yīng)用場景舉例:
- 智能家居場景:在烹飪時,手機(jī)可以通過碰一碰和烤箱連接,并將自動按照菜譜設(shè)置烹調(diào)參數(shù),控制烤箱來制作菜肴。與此類似,料理機(jī)、油煙機(jī)、空氣凈化器、空調(diào)、燈、窗簾等都可以在手機(jī)端顯示并通過手機(jī)控制。設(shè)備之間即連即用,無需繁瑣的配置。
- 多屏聯(lián)動課堂:老師通過智慧屏授課,與學(xué)生開展互動,營造課堂氛圍;學(xué)生通過平板完成課程學(xué)習(xí)和隨堂問答。統(tǒng)一、全連接的邏輯網(wǎng)絡(luò)確保了傳輸通道的高帶寬、低時延、高可靠。
?分布式設(shè)備虛擬化
分布式設(shè)備虛擬化平臺可以實現(xiàn)不同設(shè)備的資源融合、設(shè)備管理、數(shù)據(jù)處理,多種設(shè)備共同形成一個Super virtual device,超級虛擬終端。針對不同類型的任務(wù),為用戶匹配并選擇能力合適的執(zhí)行硬件,讓業(yè)務(wù)連續(xù)地在不同設(shè)備間流轉(zhuǎn),充分發(fā)揮不同設(shè)備的能力優(yōu)勢,如顯示能力、攝像能力、音頻能力、交互能力以及傳感器能力等。
- Super virtual device,超級虛擬終端
亦稱超級終端,通過分布式技術(shù)將多個終端的能力進(jìn)行整合,存放在一個虛擬的硬件資源池里,根據(jù)業(yè)務(wù)需要統(tǒng)一管理和調(diào)度終端能力,來對外提供服務(wù)。
分布式設(shè)備虛擬化示意圖:
??
?典型應(yīng)用場景舉例:
- 視頻通話場景:在做家務(wù)時接聽視頻電話,可以將手機(jī)與智慧屏連接,并將智慧屏的屏幕、攝像頭與音箱虛擬化為本地資源,替代手機(jī)自身的屏幕、攝像頭、聽筒與揚(yáng)聲器,實現(xiàn)一邊做家務(wù)、一邊通過智慧屏和音箱來視頻通話。
- 游戲場景:在智慧屏上玩游戲時,可以將手機(jī)虛擬化為遙控器,借助手機(jī)的重力傳感器、加速度傳感器、觸控能力,為玩家提供更便捷、更流暢的游戲體驗。
分布式數(shù)據(jù)管理
分布式數(shù)據(jù)管理基于分布式軟總線的能力,實現(xiàn)應(yīng)用程序數(shù)據(jù)和用戶數(shù)據(jù)的分布式管理。用戶數(shù)據(jù)不再與單一物理設(shè)備綁定,業(yè)務(wù)邏輯與數(shù)據(jù)存儲分離,跨設(shè)備的數(shù)據(jù)處理如同本地數(shù)據(jù)處理一樣方便快捷,讓開發(fā)者能夠輕松實現(xiàn)全場景、多設(shè)備下的數(shù)據(jù)存儲、共享和訪問,為打造一致、流暢的用戶體驗創(chuàng)造了基礎(chǔ)條件。
分布式數(shù)據(jù)管理示意圖:
??
典型應(yīng)用場景舉例:
- 協(xié)同辦公場景:將手機(jī)上的文檔投屏到智慧屏,在智慧屏上對文檔執(zhí)行翻頁、縮放、涂鴉等操作,文檔的最新狀態(tài)可以在手機(jī)上同步顯示。
- 照片分享場景:出游時,使用手機(jī)拍攝的照片,可以在登錄了同帳號的其他設(shè)備,比如平板上更方便地瀏覽、收藏、保存或編輯,也可以通過家中的智慧屏上同家人一起分享記錄下的快樂瞬間。
?分布式任務(wù)調(diào)度
分布式任務(wù)調(diào)度基于分布式軟總線、分布式數(shù)據(jù)管理、分布式Profile等技術(shù)特性,構(gòu)建統(tǒng)一的分布式服務(wù)管理(發(fā)現(xiàn)、同步、注冊、調(diào)用)機(jī)制,支持對跨設(shè)備的應(yīng)用進(jìn)行遠(yuǎn)程啟動、遠(yuǎn)程調(diào)用、遠(yuǎn)程連接以及遷移等操作,能夠根據(jù)不同設(shè)備的能力、位置、業(yè)務(wù)運(yùn)行狀態(tài)、資源使用情況,以及用戶的習(xí)慣和意圖,選擇合適的設(shè)備運(yùn)行分布式任務(wù)。
以應(yīng)用遷移為例,簡要地展示了分布式任務(wù)調(diào)度能力。如圖:
??
分布式連接能力
分布式連接能力提供了智能終端底層和應(yīng)用層的連接能力,通過USB接口共享終端部分硬件資源和軟件能力。開發(fā)者基于分布式連接能力,可以開發(fā)相應(yīng)形態(tài)的生態(tài)產(chǎn)品為消費(fèi)者提供更豐富的連接體驗。
分布式連接能力示意圖:
??
?分布式連接能力包含底層能力(Connect Service)和應(yīng)用層能力(AILife Client Service)。
一次開發(fā),多端部署
HarmonyOS提供了用戶程序框架、Ability框架以及UI框架,支持應(yīng)用開發(fā)過程中多終端的業(yè)務(wù)邏輯和界面邏輯進(jìn)行復(fù)用,能夠?qū)崿F(xiàn)應(yīng)用的一次開發(fā)、多端部署,提升了跨設(shè)備應(yīng)用的開發(fā)效率。
- Ability
應(yīng)用的重要組成部分,是應(yīng)用所具備能力的抽象。Ability分為兩種類型,F(xiàn)eature Ability和Particle Ability。
其中,UI框架支持使用ArkTS、JS、Java語言進(jìn)行開發(fā),并提供了豐富的多態(tài)控件,可以在手機(jī)、平板、智能穿戴、智慧屏、車機(jī)上顯示不同的UI效果。采用業(yè)界主流設(shè)計方式,提供多種響應(yīng)式布局方案,支持柵格化布局,滿足不同屏幕的界面適配能力。
一次開發(fā)、多端部署示意圖:
??
統(tǒng)一OS,彈性部署?
HarmonyOS通過組件化和小型化等設(shè)計方法,支持多種終端設(shè)備按需彈性部署,能夠適配不同類別的硬件資源和功能需求。支撐通過編譯鏈關(guān)系去自動生成組件化的依賴關(guān)系,形成組件樹依賴圖,支撐產(chǎn)品系統(tǒng)的便捷開發(fā),降低硬件設(shè)備的開發(fā)門檻。
- ?支持各組件的選擇(組件可有可無):根據(jù)硬件的形態(tài)和需求,可以選擇所需的組件。
- 支持組件內(nèi)功能集的配置(組件可大可小):根據(jù)硬件的資源情況和功能需求,可以選擇配置組件中的功能集。例如,選擇配置圖形框架組件中的部分控件。
- 支持組件間依賴的關(guān)聯(lián)(平臺可大可?。?/strong>:根據(jù)編譯鏈關(guān)系,可以自動生成組件化的依賴關(guān)系。例如,選擇圖形框架組件,將會自動選擇依賴的圖形引擎組件等。?
系統(tǒng)安全
在搭載HarmonyOS的分布式終端上,可以保證“正確的人,通過正確的設(shè)備,正確地使用數(shù)據(jù)”。
正確的人
?通過“分布式多端協(xié)同身份認(rèn)證”來保證“正確的人”;在分布式終端場景下,“正確的人”指通過身份認(rèn)證的數(shù)據(jù)訪問者和業(yè)務(wù)操作者。“正確的人”是確保用戶數(shù)據(jù)不被非法訪問、用戶隱私不泄露的前提條件。
HarmonyOS通過以下三個方面來實現(xiàn)協(xié)同身份認(rèn)證:
- 零信任模型:HarmonyOS基于零信任模型,實現(xiàn)對用戶的認(rèn)證和對數(shù)據(jù)的訪問控制。當(dāng)用戶需要跨設(shè)備訪問數(shù)據(jù)資源或者發(fā)起高安全等級的業(yè)務(wù)操作(例如,對安防設(shè)備的操作)時,HarmonyOS會對用戶進(jìn)行身份認(rèn)證,確保其身份的可靠性。
- 多因素融合認(rèn)證:HarmonyOS通過用戶身份管理,將不同設(shè)備上標(biāo)識同一用戶的認(rèn)證憑據(jù)關(guān)聯(lián)起來,用于標(biāo)識一個用戶,來提高認(rèn)證的準(zhǔn)確度。
- 協(xié)同互助認(rèn)證:HarmonyOS通過將硬件和認(rèn)證能力解耦(即信息采集和認(rèn)證可以在不同的設(shè)備上完成),來實現(xiàn)不同設(shè)備的資源池化以及能力的互助與共享,讓高安全等級的設(shè)備協(xié)助低安全等級的設(shè)備完成用戶身份認(rèn)證。
正確的設(shè)備
?通過“在分布式終端上構(gòu)筑可信運(yùn)行環(huán)境”來保證“正確的設(shè)備”。在分布式終端場景下,只有保證用戶使用的設(shè)備是安全可靠的,才能保證用戶數(shù)據(jù)在虛擬終端上得到有效保護(hù),避免用戶隱私泄露。
-
安全啟動
確保源頭每個虛擬設(shè)備運(yùn)行的系統(tǒng)固件和應(yīng)用程序是完整的、未經(jīng)篡改的。通過安全啟動,各個設(shè)備廠商的鏡像包就不易被非法替換為惡意程序,從而保護(hù)用戶的數(shù)據(jù)和隱私安全。
-
可信執(zhí)行環(huán)境
提供了基于硬件的可信執(zhí)行環(huán)境(TEE,Trusted Execution Environment)來保護(hù)用戶的個人敏感數(shù)據(jù)的存儲和處理,確保數(shù)據(jù)不泄露。由于分布式終端硬件的安全能力不同,對于用戶的敏感個人數(shù)據(jù),需要使用高安全等級的設(shè)備進(jìn)行存儲和處理。HarmonyOS使用基于數(shù)學(xué)可證明的形式化開發(fā)和驗證的TEE微內(nèi)核,獲得了商用OS內(nèi)核CC EAL5+的認(rèn)證評級。
-
設(shè)備證書認(rèn)證
支持為具備可信執(zhí)行環(huán)境的設(shè)備預(yù)置設(shè)備證書,用于向其他虛擬終端證明自己的安全能力。對于有TEE環(huán)境的設(shè)備,通過預(yù)置PKI(Public Key Infrastructure)設(shè)備證書給設(shè)備身份提供證明,確保設(shè)備是合法制造生產(chǎn)的。設(shè)備證書在產(chǎn)線進(jìn)行預(yù)置,設(shè)備證書的私鑰寫入并安全保存在設(shè)備的TEE環(huán)境中,且只在TEE內(nèi)進(jìn)行使用。在必須傳輸用戶的敏感數(shù)據(jù)(例如密鑰、加密的生物特征等信息)時,會在使用設(shè)備證書進(jìn)行安全環(huán)境驗證后,建立從一個設(shè)備的TEE到另一設(shè)備的TEE之間的安全通道,實現(xiàn)安全傳輸。
設(shè)備證書使用示意圖:
正確地使用數(shù)據(jù)
?通過“分布式數(shù)據(jù)在跨終端流動的過程中,對數(shù)據(jù)進(jìn)行分類分級管理”來保證“正確地使用數(shù)據(jù)”;在分布式終端場景下,需要確保用戶能夠正確地使用數(shù)據(jù)。HarmonyOS圍繞數(shù)據(jù)的生成、存儲、使用、傳輸以及銷毀過程進(jìn)行全生命周期的保護(hù),從而保證個人數(shù)據(jù)與隱私、以及系統(tǒng)的機(jī)密數(shù)據(jù)(如密鑰)不泄漏。
- 數(shù)據(jù)生成:根據(jù)數(shù)據(jù)所在的國家或組織的法律法規(guī)與標(biāo)準(zhǔn)規(guī)范,對數(shù)據(jù)進(jìn)行分類分級,并且根據(jù)分類設(shè)置相應(yīng)的保護(hù)等級。每個保護(hù)等級的數(shù)據(jù)從生成開始,在其存儲、使用、傳輸?shù)恼麄€生命周期都需要根據(jù)對應(yīng)的安全策略提供不同強(qiáng)度的安全防護(hù)。虛擬超級終端的訪問控制系統(tǒng)支持依據(jù)標(biāo)簽的訪問控制策略,保證數(shù)據(jù)只能在可以提供足夠安全防護(hù)的虛擬終端之間存儲、使用和傳輸。
- 數(shù)據(jù)存儲:HarmonyOS通過區(qū)分?jǐn)?shù)據(jù)的安全等級,存儲到不同安全防護(hù)能力的分區(qū),對數(shù)據(jù)進(jìn)行安全保護(hù),并提供密鑰全生命周期的跨設(shè)備無縫流動和跨設(shè)備密鑰訪問控制能力,支撐分布式身份認(rèn)證協(xié)同、分布式數(shù)據(jù)共享等業(yè)務(wù)。
- 數(shù)據(jù)使用:HarmonyOS通過硬件為設(shè)備提供可信執(zhí)行環(huán)境。用戶的個人敏感數(shù)據(jù)僅在分布式虛擬終端的可信執(zhí)行環(huán)境中進(jìn)行使用,確保用戶數(shù)據(jù)的安全和隱私不泄露。
- 數(shù)據(jù)傳輸:為了保證數(shù)據(jù)在虛擬超級終端之間安全流轉(zhuǎn),需要各設(shè)備是正確可信的,建立了信任關(guān)系(多個設(shè)備通過華為帳號建立配對關(guān)系),并能夠在驗證信任關(guān)系后,建立安全的連接通道,按照數(shù)據(jù)流動的規(guī)則,安全地傳輸數(shù)據(jù)。當(dāng)設(shè)備之間進(jìn)行通信時,需要基于設(shè)備的身份憑據(jù)對設(shè)備進(jìn)行身份認(rèn)證,并在此基礎(chǔ)上,建立安全的加密傳輸通道。
- 數(shù)據(jù)銷毀:銷毀密鑰即銷毀數(shù)據(jù)。數(shù)據(jù)在虛擬終端的存儲,都建立在密鑰的基礎(chǔ)上。當(dāng)銷毀數(shù)據(jù)時,只需要銷毀對應(yīng)的密鑰即完成了數(shù)據(jù)的銷毀。
詳細(xì)參考鏈接如下
HarmonyOS系統(tǒng)開發(fā)指導(dǎo)_HarmonyOS系統(tǒng)能力API參考 - HarmonyOS應(yīng)用開發(fā)官網(wǎng)文章來源:http://www.zghlxwxcb.cn/news/detail-403242.html
文檔中心文章來源地址http://www.zghlxwxcb.cn/news/detail-403242.html
到了這里,關(guān)于鴻蒙系統(tǒng)概述(HarmonyOS)學(xué)習(xí)這一篇就夠了!的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!