在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

HarmonyOS的組件化設計方案

HarmonyOS開發者 ? 來源:HarmonyOS開發者 ? 作者:zhangyongzhi ? 2021-10-13 09:59 ? 次閱讀

HarmonyOS是一款面向萬物互聯時代的、全新的分布式操作系統。在傳統的單設備系統能力基礎上,HarmonyOS提出了基于同一套系統能力、適配多種終端形態的分布式理念。

為了實現“基于同一套系統能力、適配多種終端形態”,HarmonyOS采用了“組件化”的設計方案,實現根據設備的資源能力和業務特征靈活裁剪,滿足不同形態終端設備對操作系統的要求。

一、為什么采用“組件化”設計方案?

分層架構是最為流行、應用最為廣泛的軟件架構設計方式,將整個軟件系統自頂而下垂直劃分成若干個層級,對每一層的系統能力、特定行為進行抽象。層級之間單向依賴,上層使用下層的各種服務,而下層對上層不感知。每一層對自己的上層提供接口的同時,隱藏內部實現細節。

對于中小規模系統,基于架構分層可以較好地解決系統架構解耦和跨團隊協作問題,每一層提供一定的業務功能,可以由不同的小團隊負責每一層不同的業務交付。然而,對于操作系統這么龐大的軟件系統,只有架構分層還是遠遠不夠的,因為每一層都很復雜,同一分層內不同模塊之間相互依賴、無序調用。如果沒有進一步的組件化架構,絕對會給軟件工程和項目管理帶來巨大的災難。

基于以上原因,HarmonyOS采用了組件化的設計方案,先對復雜的操作系統進行架構分層,再對每一層進行組件化。

下面我們就來具體看看HarmonyOS的“組件化”設計方案。

二、“組件化”設計方案詳解

1. HarmonyOS架構分層

首先,我們來看看HarmonyOS系統是如何架構分層的。

如圖2所示,HarmonyOS劃分為以下層級:

應用層:由應用開發者交付,向最終消費者提供UI接口,為消費者體驗負責。應用層向下僅依賴于框架層提供的API,應用開發僅依賴于HarmonyOS發布的SDK。

框架層、系統服務層和內核層:這三個層級屬于HarmonyOS基礎平臺,由HarmonyOS平臺開發者交付,面向北向應用生態提供API和SDK,面向南向設備生態提供Driver Interface和DDK(Driver Development Kit,驅動開發包)。

驅動層:由設備開發者交付,向HarmonyOS提供器件驅動實現。驅動層僅依賴于驅動框架提供的Driver Interface,驅動開發僅依賴于HarmonyOS發布的DDK。

我們通過架構分層對HarmonyOS操作系統進行大顆粒系統解構,方便不同的生態參與方。參與方既可以相對獨立,又可以相互協作,共同構建形形色色的智能終端設備和豐富的應用軟件,為消費者帶來全場景智慧服務體驗。

2. HarmonyOS基礎平臺組件化

HarmonyOS基礎平臺涉及框架層、系統服務層和內核層三部分,HarmonyOS對這三個層級進行了進一步的組件化設計。

內核層組件化

如圖3所示,內核層包括LiteOSLinux和驅動框架三個組件。

LiteOS和Linux組件可以按需部署在不同設備之上。這兩個組件向系統服務層提供POSIX(Portable Operating System Interface,可移植操作系統接口)和CMSIS(Common Microcontroller Software Interface Standard,通用微處理器軟件接口標準)接口,用于屏蔽不同的內核實現差異。

驅動框架組件向驅動層提供了Driver Interface和DDK,向系統服務層提供標準化的硬件操作接口HDI(HarmonyOS Driver Interface)。

框架層/系統服務層組件化

HarmonyOS系統架構分層根據功能定位區分了系統服務層和框架層,系統服務層是所有系統服務的匯總,通過框架層向應用暴露API。單個系統能力實現通常分布在系統服務層和框架層,考慮到系統服務和框架緊密耦合,在HarmonyOS中未統一定義系統服務層和框架層之間的層間接口。如圖4所示,HarmonyOS將同一個功能實現的系統服務和框架組合在一起,形成一個個獨立的“組件”,每個組件提供一個的系統能力和對應的API接口。組件之間基于InnerSDK完成解耦,支持組件獨立代碼下載、獨立編譯、獨立測試和組件拼裝。

三、HarmonyOS如何在多終端部署?

通過“組件化”設計后,HarmonyOS支持根據設備的資源能力和業務特征靈活裁剪,滿足不同形態終端設備對操作系統的要求。也就是說,一套HarmonyOS可以部署到不同的終端設備上。

為了部署在不同形態的終端設備上,HarmonyOS細分為以下四種基本系統規格

輕量系統(mini system)

面向MCU(Micro Control Unit,微控制單元)類處理器的設備,支持的設備最小內存為128KiB,如智能家居領域的連接類模組、傳感器設備、穿戴類設備等。

可以提供多種輕量級網絡協議,輕量級的圖形框架,以及豐富的IoT總線讀寫組件等。

小型系統(small system)

面向應用處理器的設備,支持的設備最小內存為1MiB,如智能家居領域的IP Camera、電子貓眼、路由器以及行車記錄儀等。

可以提供更高的安全能力,標準的圖形框架,以及視頻編解碼的多媒體能力。

標準系統(standard system)

面向應用處理器的設備,支持的設備最小內存為128MiB,如帶屏IoT設備、智能手機

可以提供增強的交互能力,3D GPU和硬件合成能力,更多控件和動效更豐富的圖形能力,以及完整的應用框架。

大型系統(large system)

面向應用處理器的設備,支持的設備最小內存為1GiB,如智慧屏、智能手表等。

可以提供支持兼容三方OS系統的應用框架。

HarmonyOS根據不同的系統規格,分別定義了最小系統必選組件集和對應的可選組件集。產品部署HarmonyOS時,根據系統規格類型選擇對應的最小系統必選組件集,同時根據不同產品的差異化功能需要選擇可選組件。基于組件間依賴管理,如果某個可選組件被選擇,相應該組件依賴的其他組件也會自動被打包到HarmonyOS系統。

在開發者資源中心DevEco Marketplace可以進行組件管理,靈活拼裝出不同的產品解決方案。DevEco Marketplace的詳細介紹,請參見往期推文。

DevEco Marketplace鏈接如下:https://repo.harmonyos.com

組件是拼裝HarmonyOS的一個個零部件。每個組件都提供一定的系統能力,一些組件還涉及面向應用暴露API接口。不同組件組合部署到特定設備上,面向應用提供的API能力會存在差異。本文我們就組件的部署原理做了詳細說明,后續我們還將對組件化架構下的組件運行態管理、SDK管理與應用分發原理做進一步的詳細解析,敬請期待!

責任編輯:haq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 操作系統
    +關注

    關注

    37

    文章

    6825

    瀏覽量

    123332
  • 終端
    +關注

    關注

    1

    文章

    1135

    瀏覽量

    29881
  • HarmonyOS
    +關注

    關注

    79

    文章

    1975

    瀏覽量

    30194

原文標題:一文帶你看懂HarmonyOS如何適配多種終端

文章出處:【微信號:HarmonyOS_Dev,微信公眾號:HarmonyOS開發者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    HarmonyOS Web頁面加載的原理和優化方法

    在移動互聯網時代,應用的頁面渲染速度對于用戶體驗至關重要。相對于原生頁面,Web頁面的性能存在多方面的技術挑戰。本文以HarmonyOS的ArkWeb組件為基礎,介紹了Web頁面加載中的影響因素以及對應的優化方案
    的頭像 發表于 12-05 15:14 ?224次閱讀
    <b class='flag-5'>HarmonyOS</b> Web頁面加載的原理和優化方法

    宜科EEDS Slim數字擴展組件介紹

    伴隨工業互聯網理念及數字能力建設需求的普及,企業生產力規劃過程對于數字能力的要求成為基礎技術要求,對于設備制造商而言,選擇直接開放設備數據接口或是通過搭載數字能力組件,更好的體現
    的頭像 發表于 07-18 16:16 ?387次閱讀
    宜科EEDS Slim數字<b class='flag-5'>化</b>擴展<b class='flag-5'>組件</b>介紹

    HarmonyOS NEXT Developer Beta1最新術語表

    服務 原名原子服務,是HarmonyOS提供的一種面向未來的服務提供方式,是有獨立入口的(用戶可通過點擊服務卡片打開元服務)、免安裝的(無需顯式安裝,由系統程序框架后臺安裝后即可使用)用戶應用程序形態
    發表于 06-27 16:16

    設備智能:中國星坤線纜組件的解決方案

    在當今快速發展的電子行業中,產品小型和成本效益是制造商追求的兩大目標。中國星坤端子電纜組件以其靈活性和高效性,為電子設備制造商提供了一種理想的解決方案。本文將探討星坤端子電纜組件的優
    的頭像 發表于 06-27 09:49 ?299次閱讀
    設備智能<b class='flag-5'>化</b>:中國星坤線纜<b class='flag-5'>組件</b>的解決<b class='flag-5'>方案</b>!

    UPS系統設計方案解讀

    UPS的應用場景日趨多樣,每個場景都有其獨特的需求,對應不同的方案。UPS系統方案指南繼續上新,本文將聚焦UPS設計方案展開講述。
    的頭像 發表于 06-26 10:06 ?791次閱讀
    UPS系統<b class='flag-5'>設計方案</b>解讀

    HarmonyOS開發案例:【使用List組件實現設置項】

    使用List組件、Toggle組件以及Router接口,實現一個簡單的設置頁,點擊將跳轉到對應的詳細設置頁面。
    的頭像 發表于 05-10 17:01 ?941次閱讀
    <b class='flag-5'>HarmonyOS</b>開發案例:【使用List<b class='flag-5'>組件</b>實現設置項】

    HarmonyOS開發案例:【使用List組件實現商品列表】

    OpenHarmony ArkTS提供了豐富的接口和組件,開發者可以根據實際場景和開發需求,選用不同的組件和接口。
    的頭像 發表于 05-10 16:41 ?1341次閱讀
    <b class='flag-5'>HarmonyOS</b>開發案例:【使用List<b class='flag-5'>組件</b>實現商品列表】

    HarmonyOS開發案例:【基礎組件Slider的使用】

    學習如何使用聲明式UI編程框架的基礎組件。本篇Codelab將會使用Image組件、Slider組件、Text組件共同實現一個可調節的風車動畫
    的頭像 發表于 05-10 16:01 ?676次閱讀
    <b class='flag-5'>HarmonyOS</b>開發案例:【基礎<b class='flag-5'>組件</b>Slider的使用】

    HarmonyOS開發案例:【Web組件實現抽獎】

    基于ArkTS的聲明式開發范式的樣例,主要介紹了Web組件如何加載本地和云端H5小程序。
    的頭像 發表于 05-09 18:31 ?1385次閱讀
    <b class='flag-5'>HarmonyOS</b>開發案例:【Web<b class='flag-5'>組件</b>實現抽獎】

    HarmonyOS開發案例:【常用組件與布局】

    HarmonyOS ArkUI提供了豐富多樣的UI組件,您可以使用這些組件輕松地編寫出更加豐富、漂亮的界面。
    的頭像 發表于 05-09 18:20 ?1220次閱讀
    <b class='flag-5'>HarmonyOS</b>開發案例:【常用<b class='flag-5'>組件</b>與布局】

    HarmonyOS實戰開發-深度探索與打造個性自定義組件

    ,一個頁面有且僅能有一個@Entry。只有被@Entry裝飾的組件才可以調用頁面的生命周期。 自定義組件的創建和渲染流程 自定義組件的創建:自定義組件的實例由ArkUI框架創建。 初始
    發表于 05-08 16:30

    HarmonyOS開發案例:【 slider組件的使用】

    主要介紹slider滑動條組件的使用。如圖所示拖動對應滑動條調節風車的旋轉速度以及縮放比例。
    的頭像 發表于 04-25 22:02 ?952次閱讀
    <b class='flag-5'>HarmonyOS</b>開發案例:【 slider<b class='flag-5'>組件</b>的使用】

    HarmonyOS開發案例:【 switch、chart組件的使用】

    基于switch組件和chart組件,實現線形圖、占比圖、柱狀圖,并通過switch切換chart組件數據的動靜態顯示。
    的頭像 發表于 04-25 20:58 ?624次閱讀
    <b class='flag-5'>HarmonyOS</b>開發案例:【 switch、chart<b class='flag-5'>組件</b>的使用】

    鴻蒙OS開發實例:【組件模式】

    組件一直是移動端比較流行的開發方式,有著編譯運行快,業務邏輯分明,任務劃分清晰等優點,針對Android端的組件;與Android端的組件
    的頭像 發表于 04-07 17:44 ?649次閱讀
    鴻蒙OS開發實例:【<b class='flag-5'>組件</b><b class='flag-5'>化</b>模式】

    HarmonyOS開發技術全面分析

    難度和成本。這能夠讓開發者聚焦上層業務邏輯,更加便捷、高效地開發應用。 ? 對設備開發者而言, HarmonyOS 采用了組件設計方案,可以根據設備的 資源能力和業務特征進行靈活裁
    發表于 02-21 16:31
    主站蜘蛛池模板: 四虎黄色| 狠狠色狠狠色综合久久一| 国产精品青草久久| 色资源网| 日本在线亚洲| 秋霞一级特黄真人毛片| 亚洲第一香蕉视频| 91大神亚洲影视在线| 色综合天天综合网国产成人网| 丁香网五月| 性欧美一区| 深爱五月综合网| 伊人天天操| 亚色网站| 巨乳色网站| 国产欧美一级片| 亚洲成人观看| 80s国产成年女人毛片| h黄色| 免费网站日本永久免费观看| 欧美一级在线全免费| 在线看片地址| 国产盗摄女子私密保健视频| 性性欧美| 欧美色视频网| 久久精品免费| 五月天丁香婷婷网| 一级片免费在线观看| 啪啪网站色大全免费| 黄色软件入口| 欧美久久综合| 美女被日出白浆| 五月综合色婷婷影院在线观看| 又黄又湿又爽吸乳视频| 国模张文静啪啪私拍337p| 国内一级毛片| qvod高清在线成人观看| 免费精品一区二区三区在线观看| 国产chinesehd精品酒店| 色狠狠xx| 激情综合激情|