官术网_书友最值得收藏!

3.2 Android的硬件抽象層

3.2.1 硬件抽象層的地位和功能

硬件抽象層是位于用戶空間的Android系統和位于內核空間的Linux驅動程序中間的一個層次。

Android中硬件抽象層的結構如圖3-6所示。

圖3-6 Android中硬件抽象層的結構

經典的方式是實現硬件抽象層和驅動程序,硬件抽象層對驅動程序調用,在這種經典的方式中,Android系統實際上關心的只是硬件抽象層,并不關心驅動程序。這樣做的好處是將Android系統的部分功能和Linux中的驅動程序隔離,Android不依賴于Linux的驅動程序。對于同一種功能的實現,可能具有不同的驅動程序。Audio、Video輸出、Camera、Sensor、GPS等系統的移植均使用了這種方式。

在某些情況下,硬件抽象層是標準的,這樣就只需要實現驅動程序即可。這種情況下的驅動程序,一般也是Linux中的標準的驅動程序。例如:顯示部分(donut以及之前的版本),用戶輸入部分、無線局域網部分、藍牙部分等,分別使用Linux標準的framebuffer驅動,event驅動,Wlan、BlueTooth作為驅動程序。

主站蜘蛛池模板: 衢州市| 上饶市| 永年县| 郴州市| 务川| 天祝| 栾川县| 麻栗坡县| 内乡县| 突泉县| 宁城县| 永嘉县| 电白县| 光泽县| 三台县| 柘城县| 鸡泽县| 宁海县| 彰化市| 繁峙县| 尼勒克县| 苍山县| 广昌县| 汾阳市| 赤壁市| 安义县| 吐鲁番市| 保亭| 安阳市| 桂平市| 上饶市| 林口县| 都江堰市| 方正县| 江门市| 金湖县| 文昌市| 岫岩| 晋城| 平安县| 公主岭市|