女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

【技術視界】分布式系統硬件資源池原理和接入實踐

HarmonyOS開發者 ? 來源:未知 ? 2023-12-05 21:35 ? 次閱讀
# 技術視界# 【技術視界】欄目為開發者提供華為研發專家對于HarmonyOS關鍵技術的專業解讀,從不同角度、不同方面幫助開發者更好更快地掌握HarmonyOS相關開發知識。本期文章為大家帶來的是分布式硬件技術專家的分享,希望為您的開發之路帶來啟發~

作者:ZhangChuang,華為分布式硬件技術專家

硬件資源池理念產生背景

隨著智能設備的發展和普及,越來越多的智能設備已經深入人們的生活,比如手機PC,平板,各類穿戴設備等。當前單個設備的外設資源已經非常豐富,硬件能力也很強大。像我們的手機PC、平板都有相機音頻屏幕,鍵鼠等各種外設資源;但是這些硬件外設是屬于各個設備自身的,如果涉及到跨設備的協同操作就會比較繁瑣。比如用戶正在PC上編輯文檔,需要從平板復制一段文字,或者使用手機拍攝照片,然后插入文檔作為素材,需要用戶在各個設備上分別操作,然后發送文字或者圖片到PC,然后再回到PC進行編輯,非常繁瑣。如果應用開發者從應用層實現設備間硬件能力共享,對于應用開發者工作量和難度非常大,而且各個應用之間需要重復開發,能力難以復用和繼承。

wKgZomVvKDOAJYOfAAFY4UE7BIQ273.png

圖1 單設備硬件孤立難以共享

為此,鴻蒙系統提出了硬件資源池的理念,打破了各個設備硬件的孤立狀態,能夠做到設備間硬件外設全局共享。我們把各個設備的硬件外設抽象為外設信息單元,外設信息在各個可信設備之間自動同步,如此,實現了外設信息的全局可見;結合分布式硬件虛擬化技術,實現任意設備之間的硬件外設能力跨設備調用;分布式硬件資源池作為系統能力下沉系統底層,北向開發者不感知資源池的存在;跨設備硬件和本地硬件使用同一套API,開發者調用跨設備硬件體驗和本地硬件一致,如此明顯的便利了開發者調用跨設備硬件,開發者無需關注硬件底層細節,專注于業務創新。

wKgZomVvKDOAJ11rAAG6Wffp6kE793.png圖2 硬件資源池打破硬件邊界,全局共享

鴻蒙系統硬件資源池支持場景

鴻蒙系統采用硬件資源池的理念,能夠結合多個設備的優勢硬件為用戶提供更優的體驗,同時支持了消費者和開發者的多種創新體驗。

2.1消費者場景

在消費者層面,華為分布式硬件支持智慧辦公,智慧出行等多種創新場景。例如智慧辦公場景中,使用一套PC鍵鼠即可和周邊平板等設備跨設備操作,使用到鍵鼠外設的跨設備操控能力;多屏協同場景中,手機屏幕顯示到平板,手機視頻通話可以使用平板的麥克風和攝像頭,用戶在平板上即可同時操作手機平板兩臺設備,避免設備間來回切換,操作方便,這個場景使用到了麥克風,揚聲器,攝像頭和屏幕等硬件的跨設備分布式能力。

在智慧出行場景中,用戶在手機上聽音樂或者視頻通話,進入座艙后,手機上的音樂和通話可以自動接續到車機,使用車機的音頻外設播音和拾音,使用車機的攝像頭進行視頻通話,更加符合用戶在座艙中的使用習慣;手機導航接續到車機后,車機的GPS信號可以共享給手機,結合手機GPS信號提供更高精度的定位數據;可以看到,在智慧出行場景中,可以通過分布式硬件資源池結合手機和車機的優勢硬件,為用戶提供更好的服務體驗。

wKgZomVvKDOAeId3AAPNpEwT8Tc565.png

圖3 鴻蒙硬件資源池支持各類消費者場景

2.2開發者場景

對于開發者來說,由于分布式硬件資源池將跨設備硬件調用的復雜度都封裝在了系統底層,跨設備硬件復用本地硬件的API,開發者學習和適配難度可以做到最低。

以分布式相機為例,相機接口可以同時查詢到本地相機和跨設備相機外設,本地相機和跨設備相機通過ConnectionType.CAMERA_CONNECTION_REMOTE屬性相區分,開發者通過該屬性過濾出分布式相機后,其他操作和本地相機完全一致。無需為使用跨設備硬件學習一套獨立的API,很大程度上的簡化了開發者開發難度。wKgZomVvKDOAXC9UAANoFlFOYQA957.png

圖4 分布式硬件開發者使用示例

硬件資源池原理

以相機和音頻為例,假設設備A和設備B都有各自的相機和音頻外設,驅動層有對應的本地相機和本地音頻驅動。

wKgZomVvKDOAc72oAAIrBK7Y66k422.png

圖5分布式硬件資源池原理示意

分布式硬件從各自設備本地采集相機和音頻驅動信息,存入分布式數據庫。如果AB兩個設備建立了可信關系并且通過軟總線組網上線成功,分布式數據庫會在AB兩個設備之間自動同步各自的本地外設數據信息,這樣,設備A分布式硬件可以拿到設備B的相機和音頻外設規格數據,同樣,設備B也可以拿到設備A的相機和音頻外設規格數據。

以設備A的流程為例,分布式硬件收到對端設備B的硬件規格數據后,在驅動層注冊對應的虛擬相機和虛擬音頻驅動,虛擬驅動相當于對端設備物理硬件在本地的代理;虛擬驅動實現和本地硬件驅動相同的HDI接口,區別在于,本地硬件驅動操作本地物理硬件,虛擬硬件驅動控制和數據傳輸通過軟總線作用于對端分布式硬件。

由于和本地硬件實現同樣的HDI接口,設備B相機和音頻對應的虛擬硬件可以被相機服務和音頻服務發現并管理,包括外設的查詢,相機的預覽拍照錄像,音頻的播放,聲音的錄制等功能。

對稱的,在設備B上會執行同樣的過程,為設備A相機和音頻外設注冊對應虛擬驅動,從而實現設備B上對設備A硬件外設的查詢和使用。

如此就實現了外設信息在設備間互通共享,信息感知自動注冊虛擬硬件,注冊后即可用,成為一個無中心對稱的分布式硬件外設管理系統。同時,分布式硬件框架定義了外設熱插拔,虛擬硬件保活等機制,保證業務可靠性。在運行時,各個硬件外設的業務運行于獨立進程中,在進程層面保證不同硬件的虛擬化業務互相隔離,提高了業務可靠性。

詳細實現可以參考分布硬件管理框架源碼:https://gitee.com/openharmony/distributedhardware_distributed_hardware_fwk

硬件資源池接入實踐

4.1接口定義

通過前文分析,可以看到分布式硬件與南向硬件的交互涉及"硬件信息采集"和"驅動注冊"兩類業務,與此對應,分布式硬件針對南向硬件接入定義了兩類接口。一類是硬件規格采集接口,一類是驅動注冊與準備接口。

wKgZomVvKDSANz9mAAHDLSFkP1Y245.png

圖6 分布式硬件資源池接入接口

(1)硬件規格采集接口

硬件規格采集接口定義了規格信息的采集以及外設熱插拔事件監聽等功能。

接口鏈接:https://gitee.com/openharmony/distributedhardware_distributed_hardware_fwk/blob/master/common/utils/include/ihardware_handler.h

(2)驅動注冊與準備接口

由于我們是跨設備硬件調用,涉及雙端設備的硬件,我們定義使用周邊其他設備硬件外設的一端為Source端,共享本地硬件給其他設備調用的一端為Sink端。

驅動注冊與準備接口包括Source和Sink兩端。

Source端包括初始化,釋放以及虛擬驅動注冊/去注冊等功能;Sink端主要是初始化和釋放接口,用于響應Source端的控制指令,比如播放聲音或者采集視頻畫面。在設備組網上線后,分布式硬件框架調用各個硬件類型的南向接口實現,分別初始化各類硬件的Source和Sink端業務進程,為后續的硬件跨設備調用做好準備。

Source端接口鏈接:https://gitee.com/openharmony/distributedhardware_distributed_hardware_fwk/blob/master/common/utils/include/idistributed_hardware_source.h

Sink端接口鏈接:https://gitee.com/openharmony/distributedhardware_distributed_hardware_fwk/blob/master/common/utils/include/idistributed_hardware_sink.h

4.2硬件接入實例

由于分布式硬件良好的南向接入解耦設計,如果有新硬件外設接入,只需要如下三步即可,以分布式相機配置為例。

Step1:定義硬件外設類型枚舉值CAMERA。

enumclassDHType:uint32_t{
UNKNOWN=0x0,//unknowndevice
CAMERA=0x01,//Camera
AUDIO=0x02,//Mic
SCREEN=0x08,//Display
GPS=0x10,//GPS
INPUT=0x20,//Keyboard
MAX_DH=0x80000000
};
(左右滑動查看更多)

文件鏈接:https://gitee.com/openharmony/distributedhardware_distributed_hardware_fwk/blob/master/common/utils/include/device_type.h

Step2:實現分布式硬件框架定義的南向接入接口,分別實現為三個so。

1、實現分布式硬件框架定義的硬件規格采集接口IHardwareHandler,并編譯獲得接口實現libdistributed_camera_handler.z.so。

參考代碼:https://gitee.com/openharmony/distributedhardware_distributed_camera/blob/master/services/cameraservice/cameraoperator/handler/include/dcamera_handler.h

2、實現Source側接入接口IDistributedHardwareSource,并編譯獲得接口實現libdistributed_camera_source_sdk.z.so。

參考代碼:https://gitee.com/openharmony/distributedhardware_distributed_camera/blob/master/interfaces/inner_kits/native_cpp/camera_source/include/dcamera_source_handler.h

3、實現Sink側接入接口IDistributedHardwareSink,并編譯獲得接口實現libdistributed_camera_sink_sdk.z.so。

參考代碼:

https://gitee.com/openharmony/distributedhardware_distributed_camera/blob/master/interfaces/inner_kits/native_cpp/camera_sink/include/dcamera_sink_handler.h

Step3:在分布式硬件子部件配置文件中,添加新硬件外設相關配置,包括外設類型,南向接口實現的so名稱,版本號,以及Source和Sink端服務分配的服務Id。

該配置由產品定義確定,不同的產品可能使用不同的分布式能力。以RK3568開發板為例,配置如下:

{
"name":"distributed_camera",
"type":"CAMERA",
"comp_handler_loc":"libdistributed_camera_handler.z.so",
"comp_handler_version":"1.0",
"comp_source_loc":"libdistributed_camera_source_sdk.z.so",
"comp_source_version":"1.0",
"comp_source_sa_id":4803,
"comp_sink_loc":"libdistributed_camera_sink_sdk.z.so",
"comp_sink_version":"1.0",
"comp_sink_sa_id":4804
}

左右滑動查看更多)

配置鏈接:https://gitee.com/openharmony/device_board_hihope/blob/master/rk3568/distributedhardware/distributed_hardware_components_cfg.json

三個接口的so實現后,編譯打包到系統庫路徑下,同時配置到分布式硬件部件配置文件中,設備組網上線后,可以看到分布式相機的dcamera進程已經成功啟動,表明相機外設已經納入資源池管理,成為分布式相機。

從下述截圖也可以看到分布式硬件其他相關進程,dhardware就是分布式硬件資源池管理框架進程,顧名思義,dcamera是分布式相機進程,dinput是分布式鍵鼠輸入進程,dscreen是分布式屏幕進程。

wKgZomVvKDSARBpJAAF4EIX1ys0175.png圖7 分布式硬件相關進程

社區已開源分布式硬件代碼倉

當前在OpenHarmony開源社區,已經開源了硬件資源池管理框架,分布式相機,分布式音頻,分布式屏幕,分布式輸入的代碼倉,開放了相機,音頻,屏幕和鍵鼠輸入外設的跨設備控制源碼,關于硬件資源池的詳細實現,可以參考我們的開源代碼倉。1、分布式硬件框架(distributedhardware_distributed_hardware_fwk)https://gitee.com/openharmony/distributedhardware_distributed_hardware_fwk

2、分布式相機(distributedhardware_distributed_camera)

https://gitee.com/openharmony/distributedhardware_distributed_camera

3、分布式音頻(distributedhardware_distributed_audio)

https://gitee.com/openharmony/distributedhardware_distributed_audio

4、分布式屏幕(distributedhardware_distributed_screen)

https://gitee.com/openharmony/distributedhardware_distributed_screen

5、分布式輸入(distributedhardware_distributed_input)

https://gitee.com/openharmony/distributedhardware_distributed_input

更多推薦

wKgZomVvKDSAcElAAADXrK0uGFA001.gif點擊下方圖片鏈接,查看更多欄目內容


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

    關注

    79

    文章

    2052

    瀏覽量

    32093

原文標題:【技術視界】分布式系統硬件資源池原理和接入實踐

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

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    抗干擾CAN總線通信技術分布式電力系統中的應用

    摘要 :隨著分布式電力系統的廣泛應用,其通信系統的可靠性與穩定性受到了前所未有的挑戰。CAN總線通信技術以其卓越的抗干擾性能和可靠性,在眾多通信技術
    的頭像 發表于 04-14 18:24 ?178次閱讀

    分布式光伏發運維系統實際應用案例分享

    安科瑞劉鴻鵬 摘?要 分布式光伏發電系統其核心特點是發電設備靠近用電負荷中心,通常安裝在屋頂、建筑立面或閑置空地上,截至2025年,分布式光伏發電系統在全球和中國范圍內取得了顯著發展,
    的頭像 發表于 04-09 14:46 ?208次閱讀
    <b class='flag-5'>分布式</b>光伏發運維<b class='flag-5'>系統</b>實際應用案例分享

    淺談分布式光伏系統在工業企業的設計及應用

    主要對工業廠區屋頂分布式光伏發電系統的設計及應用進行研究,為工業廠區能源供應提供一種全新的解決思路和技術支持。介紹了工業廠區屋頂分布式光伏系統
    的頭像 發表于 03-21 14:24 ?334次閱讀
    淺談<b class='flag-5'>分布式</b>光伏<b class='flag-5'>系統</b>在工業企業的設計及應用

    基于ptp的分布式系統設計

    在現代分布式系統中,精確的時間同步對于確保數據一致性、系統穩定性和性能至關重要。PTP(Precision Time Protocol)是一種網絡協議,用于在分布式
    的頭像 發表于 12-29 10:09 ?438次閱讀

    輸電線路分布式故障定位系統的智能化發展與創新實踐

    TLKS-PMG-DSC輸電線路分布式故障定位系統。該系統采用分布式傳感器技術,實現對輸電線路的全面實時監控,能夠在故障發生時迅速鎖定故障位
    的頭像 發表于 11-29 10:51 ?744次閱讀
    輸電線路<b class='flag-5'>分布式</b>故障定位<b class='flag-5'>系統</b>的智能化發展與創新<b class='flag-5'>實踐</b>

    分布式光伏發電系統的應用

    分布式光伏發電系統現狀? Q/GDW1480-2015 《分布式電源接入電網技術規定》:分布式
    的頭像 發表于 11-21 16:31 ?558次閱讀
    <b class='flag-5'>分布式</b>光伏發電<b class='flag-5'>系統</b>的應用

    分布式通信的原理和實現高效分布式通信背后的技術NVLink的演進

    大型模型的大小已經超出了單個 GPU 的范圍。所以就需要實現跨多個 GPU 的模型訓練,這種訓練方式就涉及到了分布式通信和 NVLink。 當談及分布式通信和 NVLink 時,我們進入了一個引人入勝且不斷演進的技術領域,下面我
    的頭像 發表于 11-18 09:39 ?1105次閱讀
    <b class='flag-5'>分布式</b>通信的原理和實現高效<b class='flag-5'>分布式</b>通信背后的<b class='flag-5'>技術</b>NVLink的演進

    淺談屋頂分布式光伏發電技術的設計與應用

    【摘要】為了緩解城市用電緊張袁降低人們的用電成本,可以在工業園區、辦公樓屋頂等場所應用屋頂分布式光伏發電技術進行就近轉換、并網發電袁充分利用建筑物屋頂的太陽資源。概述屋頂分布式光伏發電
    的頭像 發表于 11-11 15:10 ?1680次閱讀
    淺談屋頂<b class='flag-5'>分布式</b>光伏發電<b class='flag-5'>技術</b>的設計與應用

    分布式光纖聲波傳感技術的工作原理

    分布式光纖聲波傳感技術(Distributed Acoustic Sensing,DAS)是一種利用光纖作為傳感元件,實現對沿光纖路徑上的環境參數進行連續分布式測量的技術
    的頭像 發表于 10-18 14:50 ?2499次閱讀
    <b class='flag-5'>分布式</b>光纖聲波傳感<b class='flag-5'>技術</b>的工作原理

    屋頂分布式光伏并網點如何監測電能質量

    分布式光伏參考標準: 安科瑞 鄒玉麗 136-3648-3643 根據國家電網Q/GDW1480-2015 《分布式電源接入電網技術規定》:分布式
    的頭像 發表于 09-13 10:30 ?596次閱讀
    屋頂<b class='flag-5'>分布式</b>光伏并網點如何監測電能質量

    安科瑞分布式光伏監控系統的應用

    低、就地消納等獨特的優勢而被廣泛應用,近年來呈現跨越發展趨勢,研究分布式光伏接入對配電網的影響,對于提升電網及人身安全具有重要意義。本文以分布式光伏為研究對象,結合工程實例,研究了
    的頭像 發表于 08-14 08:41 ?512次閱讀
    安科瑞<b class='flag-5'>分布式</b>光伏監控<b class='flag-5'>系統</b>的應用

    安科瑞分布式光伏系統在某重工企業18MW分布式光伏中應用

    ,江蘇省分布式光伏有2228萬千瓦新增接入空間! 表:江蘇省分布式光伏接入能力規劃 根據國家能源局統計數據,截止2023年底,江蘇省分布式
    的頭像 發表于 07-19 11:30 ?763次閱讀
    安科瑞<b class='flag-5'>分布式</b>光伏<b class='flag-5'>系統</b>在某重工企業18MW<b class='flag-5'>分布式</b>光伏中應用

    EasyGo使用筆記丨分布式光伏集群并網控制硬件在環仿真應用

    進行控制;對于逆變器的控制,采用三相空間矢量脈寬調制(SVPWM)控制算法以及電壓電流雙閉環控制算法。最后構建了分布式光伏集群并網發電系統的綜合仿真模型,并在MATLAB/Simulink平臺上成功實現
    發表于 07-12 17:20

    分布式光伏接入導致農村臺區電壓越限,CET中電技術如何解決?

    分布式光伏的接入也容易導致農村臺區整體電壓越限,引發經常性的電壓故障報警,影響著供配電系統的安全穩定運行。對此,CET中電技術推出CET農村臺區電壓治理解決方案,方
    的頭像 發表于 06-21 08:35 ?1576次閱讀
    因<b class='flag-5'>分布式</b>光伏<b class='flag-5'>接入</b>導致農村臺區電壓越限,CET中電<b class='flag-5'>技術</b>如何解決?

    分布式SCADA系統的特點的組成

    在工業自動化和能源管理領域,SCADA(Supervisory Control And Data Acquisition)系統扮演著至關重要的角色。其中,分布式SCADA系統憑借其獨特的結構和功能
    的頭像 發表于 06-07 14:43 ?855次閱讀