日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

linux内核epub,Android底层开发技术实战详解——内核、移植和驱动(第2版)[EPUB][MOBI][AZW3][42.33MB]...

發(fā)布時(shí)間:2023/12/9 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux内核epub,Android底层开发技术实战详解——内核、移植和驱动(第2版)[EPUB][MOBI][AZW3][42.33MB]... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

內(nèi)容簡介

本書從底層原理開始講起,結(jié)合真實(shí)的案例向讀者詳細(xì)介紹了Android內(nèi)核、移植和驅(qū)動開發(fā)的整個(gè)流程。全書分為21章,依次講解驅(qū)動移植的必要性, Goldfish、OMAP內(nèi)核和驅(qū)動解析,顯示系統(tǒng)、輸入系統(tǒng)、振動器系統(tǒng)、音頻系統(tǒng)、視頻輸出系統(tǒng)的驅(qū)動,OpenMax多媒體和多媒體插件框架,傳感器,照相機(jī),Wi-Fi,藍(lán)牙和GPS,USB Gadget驅(qū)動,Lights光系統(tǒng)和Battery電池系統(tǒng)等。在每一章中,重點(diǎn)介紹了與Android驅(qū)動開發(fā)相關(guān)的底層知識,并對Android源碼進(jìn)行了剖析。

目錄

第1章 Android底層開發(fā)基礎(chǔ)

1.1 什么是驅(qū)動

1.1.1 驅(qū)動程序的魅力

1.1.2 手機(jī)中的驅(qū)動程序

1.2 開源還是不開源的問題

1.2.1 霧里看花的開源

1.2.2 從為什么選擇Java談為什么不開源驅(qū)動程序

1.2.3 對驅(qū)動開發(fā)者來說是一把雙刃劍

1.3 Android和Linux

1.3.1 Linux簡介

1.3.2 Android和Linux的關(guān)系

1.4 簡析Linux內(nèi)核

1.4.1 內(nèi)核的體系結(jié)構(gòu)

1.4.2 和Android密切相關(guān)的Linux內(nèi)核知識

1.5 分析Linux內(nèi)核源代碼很有必要

1.5.1 源代碼目錄結(jié)構(gòu)

1.5.2 Linux 3.10的特性

1.5.3 瀏覽源代碼的工具

1.5.4 為什么用匯編語言編寫內(nèi)核代碼

1.5.5 Linux內(nèi)核的顯著特性

1.5.6 學(xué)習(xí)Linux內(nèi)核的方法

第2章 分析Android源代碼

2.1 搭建Linux開發(fā)環(huán)境和工具

2.1.1 搭建Linux開發(fā)環(huán)境

2.1.2 設(shè)置環(huán)境變量

2.1.3 安裝編譯工具

2.2 獲取Android源代碼

2.3 分析并編譯Android源代碼

2.3.1 Android源代碼的結(jié)構(gòu)

2.3.2 編譯Android源代碼

2.3.3 運(yùn)行Android源代碼

2.3.4 實(shí)踐演練――演示編譯Android程序的兩種方法

2.4 編譯Android Kernel

2.4.1 獲取Goldfish內(nèi)核代碼

2.4.2 獲取MSM內(nèi)核代碼

2.4.3 獲取OMAP內(nèi)核代碼

2.4.4 編譯Android的Linux內(nèi)核

2.5 運(yùn)行模擬器

2.5.1 Linux環(huán)境下運(yùn)行模擬器的方法

2.5.2 模擬器輔助工具――adb

第3章 驅(qū)動需要移植

3.1 驅(qū)動開發(fā)需要做的工作

3.2 Android移植

3.2.1 移植的任務(wù)

3.2.2 移植的內(nèi)容

3.2.3 驅(qū)動開發(fā)的任務(wù)

3.3 Android對Linux的改造

3.3.1 Android對Linux內(nèi)核文件的改動

3.3.2 為Android構(gòu)建Linux的操作系統(tǒng)

3.4 內(nèi)核空間和用戶空間接口是一個(gè)媒介

3.4.1 內(nèi)核空間和用戶空間的相互作用

3.4.2 系統(tǒng)和硬件之間的交互

3.4.3 使用Relay實(shí)現(xiàn)內(nèi)核到用戶空間的數(shù)據(jù)傳輸

3.5 三類驅(qū)動程序

3.5.1 字符設(shè)備驅(qū)動程序

3.5.2 塊設(shè)備驅(qū)動程序

3.5.3 網(wǎng)絡(luò)設(shè)備驅(qū)動程序

第4章 HAL層深入分析

4.1 認(rèn)識HAL層

4.1.1 HAL層的發(fā)展

4.1.2 過去和現(xiàn)在的區(qū)別

4.2 分析HAL層源代碼

4.2.1 分析HAL moudle

4.2.2 分析mokoid工程

4.3 總結(jié)HAL層的使用方法

4.4 傳感器在HAL層的表現(xiàn)

4.4.1 HAL層的Sensor代碼

4.4.2 總結(jié)Sensor編程的流程

4.4.3 分析Sensor源代碼看Android API與硬件平臺的銜接

4.5 移植總結(jié)

4.5.1 移植各個(gè)Android部件的方式

4.5.2 移植技巧之一――不得不說的輔助工作

4.6 開發(fā)一個(gè)硬件驅(qū)動程序

4.6.1 源代碼文件wuming.h和

wuming.c

4.6.2 編譯配置處理

4.6.3 修改配置文件

4.6.4 驗(yàn)證驅(qū)動程序

第5章 分析Goldfish內(nèi)核系統(tǒng)

5.1 Android專有驅(qū)動介紹

5.2 Goldfish基礎(chǔ)

5.3 Android專用驅(qū)動簡介

5.3.1 Logger驅(qū)動介紹

5.3.2 Low Memory Killer組件介紹

5.3.3 Timed Output驅(qū)動介紹

5.3.4 Timed Gpio驅(qū)動介紹

5.3.5 Ram Console驅(qū)動介紹

5.4 Ashmem驅(qū)動介紹

5.5 Pmem驅(qū)動介紹

5.6 Alarm驅(qū)動程序

5.7 USB Gadget驅(qū)動程序

5.8 Paranoid驅(qū)動介紹

5.9 Goldfish的設(shè)備驅(qū)動

第6章 MSM內(nèi)核和驅(qū)動解析

6.1 MSM基礎(chǔ)

6.1.1 常見MSM處理器產(chǎn)品

6.1.2 Snapdragon內(nèi)核介紹

6.2 移植MSM內(nèi)核簡介

6.3 移植MSM

6.3.1 Makefile文件

6.3.2 驅(qū)動和組件

6.3.3 設(shè)備驅(qū)動

6.3.4 高通特有的組件

第7章 OMAP內(nèi)核和驅(qū)動解析

7.1 OMAP基礎(chǔ)

7.1.1 OMAP簡析

7.1.2 常見OMAP處理器產(chǎn)品

7.1.3 開發(fā)平臺

7.2 OMAP內(nèi)核

7.3 移植OMAP體系結(jié)構(gòu)

7.3.1 移植OMAP平臺

7.3.2 移植OMAP處理器

7.4 移植Android專用驅(qū)動和組件

7.5 OMAP的設(shè)備驅(qū)動

7.5.1 顯示驅(qū)動程序

7.5.2 I2C總線驅(qū)動程序

7.5.3 攝像頭和視頻輸出驅(qū)動程序

7.5.4 觸摸屏和鍵盤驅(qū)動程序

7.5.5 實(shí)時(shí)時(shí)鐘驅(qū)動程序

7.5.6 音頻驅(qū)動程序

7.5.7 藍(lán)牙驅(qū)動程序

第8章 顯示系統(tǒng)驅(qū)動應(yīng)用

8.1 顯示系統(tǒng)介紹

8.2 分析內(nèi)核層

8.2.1 分析接口文件fb.h

8.2.2 分析內(nèi)核實(shí)現(xiàn)文件fbmem.c

8.3 分析硬件抽象層

8.3.1 分析頭文件

8.3.2 分析硬件幀緩沖區(qū)

8.3.3 實(shí)現(xiàn)緩沖區(qū)的分配

8.3.4 顯示緩沖映射

8.3.5 分析管理庫文件LayerBuffer.cpp

8.4 分析顯示系統(tǒng)的驅(qū)動程序

8.4.1 Goldfish中的FrameBuffer驅(qū)動程序

8.4.2 使用Gralloc模塊的驅(qū)動程序

8.4.3 分析MSM高通處理器中的顯示驅(qū)動實(shí)現(xiàn)

8.4.4 分析OMAP處理器中的顯示驅(qū)動實(shí)現(xiàn)

第9章 輸入系統(tǒng)驅(qū)動應(yīng)用

9.1 輸入系統(tǒng)介紹

9.1.1 Android輸入系統(tǒng)結(jié)構(gòu)元素介紹

9.1.2 移植Android輸入系統(tǒng)時(shí)的工作

9.2 分析Input(輸入)系統(tǒng)驅(qū)動

9.2.1 分析頭文件

9.2.2 分析核心文件input.c

9.2.3 分析event機(jī)制

9.3 分析硬件抽象層

9.3.1 分析文件KeycodeLabels.h

9.3.2 分析文件KeyCharacterMap.h

9.3.3 分析Kl格式文件

9.3.4 分析kcm格式文件

9.3.5 分析文件EventHub.cpp

第10章 振動器系統(tǒng)驅(qū)動

10.1 振動器系統(tǒng)結(jié)構(gòu)

10.2 分析硬件抽象層

10.3 分析JNI層部分

10.4 分析Java層部分

10.5 實(shí)現(xiàn)移植工作

10.5.1 移植振動器驅(qū)動程序

10.5.2 實(shí)現(xiàn)硬件抽象層

10.6 在MSM平臺實(shí)現(xiàn)振動器驅(qū)動

第11章 音頻系統(tǒng)驅(qū)動

11.1 音頻系統(tǒng)結(jié)構(gòu)

11.2 分析音頻系統(tǒng)的層次

11.2.1 層次說明

11.2.2 Media庫中的Audio框架

11.2.3 本地代碼

11.2.4 分析JNI代碼

11.2.5 Java層代碼簡介

11.3 移植Audio系統(tǒng)的工作

11.3.1 我們的工作

11.3.2 分析硬件抽象層

11.3.3 分析AudioFlinger中的Audio

硬件抽象層的實(shí)現(xiàn)

11.3.4 真正實(shí)現(xiàn)Audio硬件抽象層

11.4 在MSM平臺實(shí)現(xiàn)Audio驅(qū)動系統(tǒng)

11.4.1 實(shí)現(xiàn)Audio驅(qū)動程序

11.4.2 實(shí)現(xiàn)硬件抽象層

第12章 視頻輸出系統(tǒng)驅(qū)動

12.1 視頻輸出系統(tǒng)結(jié)構(gòu)

12.2 需要移植的部分

12.3 分析硬件抽象層

12.3.1 Overlay系統(tǒng)硬件抽象層的接口

12.3.2 實(shí)現(xiàn)Overlay系統(tǒng)的硬件抽象層

12.3.3 實(shí)現(xiàn)接口

12.4 實(shí)現(xiàn)Overlay硬件抽象層

12.5 在OMAP平臺實(shí)現(xiàn)Overlay系統(tǒng)

12.5.1 實(shí)現(xiàn)輸出視頻驅(qū)動程序

12.5.2 實(shí)現(xiàn)Overlay硬件抽象層

12.6 系統(tǒng)層調(diào)用Overlay HAL的架構(gòu)

12.6.1 調(diào)用Overlay HAL的架構(gòu)的

流程

12.6.2 S3C6410 Android Overlay的測試代碼

第13章 OpenMax多媒體框架

13.1 OpenMax基本層次結(jié)構(gòu)

13.2 分析OpenMax框架構(gòu)成

13.2.1 OpenMax總體層次結(jié)構(gòu)

13.2.2 OpenMax IL層的結(jié)構(gòu)

13.2.3 Android中的OpenMax

13.3 實(shí)現(xiàn)OpenMax IL層接口

13.3.1 OpenMax IL層的接口

13.3.2 在OpenMax IL層中需要做什么

13.3.3 研究Android中的OpenMax適配層

13.4 在OMAP平臺實(shí)現(xiàn)OpenMax IL

13.4.1 實(shí)現(xiàn)文件

13.4.2 分析TI OpenMax IL的核心

13.4.3 實(shí)現(xiàn)TI OpenMax IL組件實(shí)例

第14章 多媒體插件框架

14.1 Android多媒體插件

14.2 需要移植的內(nèi)容

14.3 OpenCore引擎

14.3.1 OpenCore層次結(jié)構(gòu)

14.3.2 OpenCore代碼結(jié)構(gòu)

14.3.3 OpenCore編譯結(jié)構(gòu)

14.3.4 OpenCore OSCL

14.3.5 實(shí)現(xiàn)OpenCore中的OpenMax部分

14.3.6 OpenCore的擴(kuò)展

14.4 Stagefright引擎

14.4.1 Stagefright代碼結(jié)構(gòu)

14.4.2 Stagefright實(shí)現(xiàn)OpenMax接口

14.4.3 Video Buffer傳輸流程

第15章 傳感器系統(tǒng)

15.1 傳感器系統(tǒng)的結(jié)構(gòu)

15.2 分析需要移植的內(nèi)容

15.2.1 移植驅(qū)動程序

15.2.2 移植硬件抽象層

15.2.3 實(shí)現(xiàn)上層部分

15.3 在模擬器中實(shí)現(xiàn)傳感器驅(qū)動

第16章 照相機(jī)系統(tǒng)

16.1 Camera系統(tǒng)的結(jié)構(gòu)

16.2 分析需要移植的內(nèi)容

16.3 移植和調(diào)試

16.3.1 V4L2驅(qū)動程序

16.3.2 硬件抽象層

16.4 實(shí)現(xiàn)Camera系統(tǒng)的硬件抽象層

16.4.1 Java程序部分

16.4.2 Camera的Java本地調(diào)用部分

16.4.3 Camera的本地庫libui.so

16.4.4 Camera服務(wù)libcameraservice.so

16.5 在MSM平臺實(shí)現(xiàn)Camera驅(qū)動系統(tǒng)

16.6 在OMAP平臺實(shí)現(xiàn)Camera驅(qū)動系統(tǒng)

第17章 Wi-Fi系統(tǒng)、藍(lán)牙系統(tǒng)和GPS系統(tǒng)

17.1 Wi-Fi系統(tǒng)

17.1.1 Wi-Fi系統(tǒng)的結(jié)構(gòu)

17.1.2 需要移植的內(nèi)容

17.1.3 移植和調(diào)試

17.1.4 OMAP平臺實(shí)現(xiàn)Wi-Fi

17.1.5 配置Wi-Fi的流程

17.1.6 具體演練――在Android下實(shí)現(xiàn)Ethernet

17.2 藍(lán)牙系統(tǒng)

17.2.1 藍(lán)牙系統(tǒng)的結(jié)構(gòu)

17.2.2 需要移植的內(nèi)容

17.2.3 具體移植

17.2.4 MSM平臺的藍(lán)牙驅(qū)動

17.3 定位系統(tǒng)

17.3.1 定位系統(tǒng)的結(jié)構(gòu)

17.3.2 分析需要移植的內(nèi)容

17.3.3 分析驅(qū)動程序

17.3.4 分析硬件抽象層

17.3.5 分析上層應(yīng)用部分

第18章 電話系統(tǒng)

18.1 電話系統(tǒng)基礎(chǔ)

18.1.1 電話系統(tǒng)簡介

18.1.2 電話系統(tǒng)結(jié)構(gòu)

18.2 需要移植的內(nèi)容

18.3 移植和調(diào)試

18.3.1 驅(qū)動程序

18.3.2 RIL接口

18.4 電話系統(tǒng)實(shí)現(xiàn)流程分析

18.4.1 初始啟動流程

18.4.2 request流程

18.4.3 response流程

第19章 分析時(shí)鐘系統(tǒng)驅(qū)動

19.1 Alarm系統(tǒng)基礎(chǔ)

19.1.1 Alarm層次結(jié)構(gòu)介紹

19.1.2 我們需要移植的內(nèi)容

19.2 分析RTC驅(qū)動程序

19.3 分析Alarm驅(qū)動程序

19.3.1 分析文件android_alarm.h

19.3.2 分析文件alarm.c

19.3.3 分析文件alarm-dev.c

19.4 分析JNI層

19.5 分析Java層

19.5.1 分析AlarmManagerService類

19.5.2 分析AlarmManager類

19.6 模擬器環(huán)境的具體實(shí)現(xiàn)

第20章 分析USB Gadget驅(qū)動

20.1 分析Linux內(nèi)核的USB驅(qū)動程序

20.1.1 USB設(shè)備基礎(chǔ)

20.1.2 分析USB 和sysfs的聯(lián)系

20.1.3 分析urb通信方式

20.1.4 分析USB驅(qū)動的例程

20.2 分析USB Gadget驅(qū)動

20.2.1 分析軟件結(jié)構(gòu)

20.2.2 層次整合

20.2.3 USB設(shè)備枚舉

第21章 其他系統(tǒng)

21.1 Lights光系統(tǒng)

21.1.1 Lights光系統(tǒng)的結(jié)構(gòu)

21.1.2 需要移植的內(nèi)容

21.1.3 移植和調(diào)試

21.1.4 MSM平臺實(shí)現(xiàn)光系統(tǒng)

21.2 Battery電池系統(tǒng)

21.2.1 Battery系統(tǒng)的結(jié)構(gòu)

21.2.2 需要移植的內(nèi)容

21.2.3 移植和調(diào)試

21.2.4 在模擬器中實(shí)現(xiàn)電池系統(tǒng)

文檔截圖

總結(jié)

以上是生活随笔為你收集整理的linux内核epub,Android底层开发技术实战详解——内核、移植和驱动(第2版)[EPUB][MOBI][AZW3][42.33MB]...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。