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

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Android硬件通訊之HIDL介紹

哆啦安全 ? 來源:Android開發(fā)編程 ? 2023-03-08 15:52 ? 次閱讀

一、前言

HIDL的全稱是HAL interface definition language(硬件抽象層接口定義語言),是AndroidFramework 與Android HAL之間的接口。HIDL 旨在用于進(jìn)程間通信 (IPC),進(jìn)程之間的通信采用 Binder 機(jī)制;

Android O(8.0)版本之后,底層實(shí)現(xiàn)有了比較大的變化,最顯著的一個(gè)方面就是HIDL機(jī)制的全面實(shí)施。今天我們介紹下。

二、HIDL 設(shè)計(jì)目的

Android O(8.0)之前系統(tǒng)的升級牽扯多方協(xié)作,極為麻煩,HIDL機(jī)制的推出就是將frameworkhal層分開,使得框架部分可以直接被覆蓋、更新,而不需要重新對 HAL 進(jìn)行編譯,這樣在系統(tǒng)升級時(shí),OEM廠商 跳過SoC廠商,先對framework進(jìn)行升級。

2.1、8.0 之前

frameworkhal緊緊耦合存在于system.img中,因此在版本升級時(shí)需要:OEM廠商適配frameworkSoC廠商適配hal, 之后將修改打包到system.img,生成 OTA 升級包,推送到手機(jī)進(jìn)行 OTA 升級

2.2、8.0 之后

frameworkhal進(jìn)行了解耦,framework存在于system.imghal存在于vendor.img,進(jìn)行版本升級時(shí),分為兩次升級:

framework升級:OEM 廠商適配 framework,將修改打包到 system.img, 生成OTA 升級包,推送到手機(jī)進(jìn)行 OTA 升級(framework 發(fā)生改變,hal 層未變)。

hal升級:SoC 廠商適配 hal, 將修改打包到 vendor.img, 生成OTA 升級包,推送到手機(jī)進(jìn)行OTA升級(framework發(fā)生改變,hal 層發(fā)生改變)。

三、HIDL機(jī)制演進(jìn)

3.1 老版本 Framework 與 HAL 的通信框架

舊版的系統(tǒng)架構(gòu)中, Android Framework 層與 Hal 層是打包成一個(gè)system.img的,且 Framework 與 hal 層之間是緊密耦合的,通過鏈接的方式使用相應(yīng)的硬件so庫。它們之間的架構(gòu)一般有如下兩種方式:

7c322bbe-bb08-11ed-bfe3-dac502259ad0.png

3.2 HIDL 類型介紹

為了解決兩者之間這種緊耦合所帶來的弊端,google 引入 HIDL 來定義 Framework 與 HAL 之間的接口,可以用下圖來描述:

7c6aa372-bb08-11ed-bfe3-dac502259ad0.png

事實(shí)上雖然 google 推出了這種機(jī)制,但是很多廠商沒有很快的跟上節(jié)奏,因此為了向前兼容, google 定義了三種類型:

7c8d8cc0-bb08-11ed-bfe3-dac502259ad0.png

① 是 Treble Project 之前使用的實(shí)現(xiàn)架構(gòu),使用的是傳統(tǒng) HAL 和舊版 HAL

② 直通模式,passthrough mode。如圖所示,F(xiàn)ramework 和 HAL 層工作在同一個(gè)進(jìn)程當(dāng)中,下面的 HAL 是使用 HIDL 封裝后的庫,是直通式 HAL。這些庫文件也可用于 ③ 綁定模式

③ 綁定模式,binderized mode。是直通式 HAL binder 化,變?yōu)榻壎ㄊ?HAL。Framework 和 HAL 層工作在不同的進(jìn)程,之間通過 Binder 進(jìn)行 IPC

④ 純綁定式。相對于 ③ 來說,綁定式 HAL 中并不包含直通式 HAL,因此稱為純綁定式

上述可總結(jié)為

7cb0d752-bb08-11ed-bfe3-dac502259ad0.jpg





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    3939

    瀏覽量

    127642
  • soc
    soc
    +關(guān)注

    關(guān)注

    38

    文章

    4188

    瀏覽量

    218612
  • IPC
    IPC
    +關(guān)注

    關(guān)注

    3

    文章

    352

    瀏覽量

    51977
  • HAL
    HAL
    +關(guān)注

    關(guān)注

    2

    文章

    71

    瀏覽量

    12647

原文標(biāo)題:Android的硬件通訊之HIDL介紹

文章出處:【微信號:哆啦安全,微信公眾號:哆啦安全】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Android系統(tǒng)與應(yīng)用開發(fā)內(nèi)容介紹

    建立,為后面的Android移植打好基礎(chǔ)。1、PXA270硬件平臺介紹2、安裝交叉編譯工具鏈與其他相關(guān)工具3、移植bootloader到PXA270硬件平臺4、移植Linux內(nèi)核到PX
    發(fā)表于 07-13 14:03

    Android介紹

    Android介紹:HTC G1操作界面Android 是Google開發(fā)的基于Linux平臺的開源手機(jī)操作系統(tǒng)。它包括操作系統(tǒng)、用戶界面和應(yīng)用程序 —— 移動電話工作所需的全部軟件,而且
    發(fā)表于 08-15 14:10

    干貨!Android藍(lán)牙驅(qū)動開發(fā)經(jīng)驗(yàn)

    干貨!Android藍(lán)牙驅(qū)動開發(fā)經(jīng)驗(yàn)?zāi)夸浺?Bluetooth基本概念1二 Android Bluetooth架構(gòu)12.1 Bluetooth架構(gòu)圖12.2 Bluetooth代碼層次結(jié)構(gòu)3三
    發(fā)表于 02-29 15:53

    AndroidsettingsWifi學(xué)習(xí)

    AndroidsettingsWifi學(xué)習(xí)
    發(fā)表于 11-02 10:52

    Androidwifi分析(上)

    Androidwifi分析(上)
    發(fā)表于 11-02 10:53

    基于Android的平板和具備USB控制功能的微處理器之間建立通訊介紹方案

    和具備USB控制功能的微處理器之間建立這樣的通訊介紹一個(gè)基本的方案。  USB主控的一個(gè)關(guān)鍵特點(diǎn)是能為USB裝置(或從設(shè)備)供電,并提供了一個(gè)非常豐富的通信協(xié)議,支持傳輸相對大量的數(shù)據(jù)。然而,就協(xié)議
    發(fā)表于 06-05 05:00

    嵌入式擴(kuò)展板模塊按鍵硬件介紹

    藍(lán)橋杯嵌入式擴(kuò)展板模塊按鍵硬件介紹Button.cButton.c函數(shù)實(shí)現(xiàn)的講解Button.h總結(jié)硬件介紹U1S1這是我見到過最NB的
    發(fā)表于 12-20 06:06

    IMX8mq Android 11 BSP很快失敗,無法解析JSON:* 9330行怎么解決?

    /.intermediates/system/libhidl/transport/manager/1.0/android.hidl.manager@1.0_genc++_headers/gen -Iout
    發(fā)表于 03-22 07:45

    Android平臺簡易即時(shí)通訊方案

    論文簡單介紹Android平臺的特性,主要闡述了基于Android平臺簡易即時(shí)通訊(IM)的作用和功能以及實(shí)現(xiàn)方法。
    發(fā)表于 02-21 10:27 ?5159次閱讀
    <b class='flag-5'>Android</b>平臺簡易即時(shí)<b class='flag-5'>通訊</b>方案

    android界面切換動畫效果全匯總

    android界面切換動畫效果全匯總
    發(fā)表于 03-19 11:23 ?0次下載

    ARM嵌入式系統(tǒng)開發(fā)Android開發(fā)入門

    介紹了ARM嵌入式系統(tǒng)開發(fā)Android開發(fā)入門基礎(chǔ)。
    發(fā)表于 03-17 11:46 ?24次下載
    ARM嵌入式系統(tǒng)開發(fā)<b class='flag-5'>之</b><b class='flag-5'>Android</b>開發(fā)入門

    Verilog HIDL的RTL設(shè)計(jì)風(fēng)格指南資源下載

    Verilog HIDL的RTL設(shè)計(jì)風(fēng)格指南資源下載
    發(fā)表于 04-13 10:09 ?9次下載

    Android智能硬件開發(fā)串口通信介紹

    串口通信是Android智能硬件開發(fā)所必須具備的能力,市面上類型眾多的外設(shè)基本都是通過串口進(jìn)行數(shù)據(jù)傳輸?shù)模哉f不會串口通信根本就做不了智能硬件開發(fā)。
    的頭像 發(fā)表于 07-03 16:27 ?4714次閱讀

    Android Q打通應(yīng)用層到HAL層(HIDL服務(wù)實(shí)現(xiàn))

    AndroidQ 打通應(yīng)用層到HAL層—(HAL模塊實(shí)現(xiàn))這篇文章中我們已經(jīng)實(shí)現(xiàn)了自己的HAL,本篇我們實(shí)現(xiàn)一個(gè)HIDL服務(wù),通過這個(gè)服務(wù)來調(diào)用HAL模塊的函數(shù)
    的頭像 發(fā)表于 02-21 10:28 ?3127次閱讀

    基于Android平臺的個(gè)性通訊

    電子發(fā)燒友網(wǎng)站提供《基于Android平臺的個(gè)性通訊錄.doc》資料免費(fèi)下載
    發(fā)表于 10-30 11:32 ?0次下載
    基于<b class='flag-5'>Android</b>平臺的個(gè)性<b class='flag-5'>通訊</b>錄
    主站蜘蛛池模板: 在线观看你懂的网址| 口述他拿舌头进去我下面好爽| 婷婷 夜夜| 日韩欧美卡通动漫在线观看| 天天摸天天碰色综合网| 特级毛片a级毛免费播放| 色综合久久久高清综合久久久| 日韩在线三级| 免费一级在线观看| 色综合久久中文字幕网| 日本三级在线视频| 特级aaa片毛片免费观看| 色妇网| 亚洲成a人片在线观看中| 四虎永久免费网站入口2020| 日本大片免a费观看在线| 久久精品夜色国产| 嫩草影院在线入口| 狠狠色丁香婷婷久久| 99se亚洲综合色区| 奇米777狠狠| 163黄页网又粗又长又舒服| 在线毛片免费| 亚洲精品成人在线| 日韩精品你懂的在线播放| 精品卡1卡2卡三卡免费网站视频 | 日本一区二区免费在线观看 | 一区卡二区卡三区卡视频| 中国特级毛片| 日本h视频在线| 不卡精品国产_亚洲人成在线| 国产婷婷综合丁香亚洲欧洲| 亚洲精品视频在线看| 国产精品久久精品福利网站| 国产精品久久精品福利网站| 夜色成人网| 婷婷99| 国产婷婷色一区二区三区| 免费看又爽又黄禁片视频1000| 亚洲影视一区二区| 天天摸天天添人人澡|