日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

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

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

內容簡介

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

目錄

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

1.1 什么是驅動

1.1.1 驅動程序的魅力

1.1.2 手機中的驅動程序

1.2 開源還是不開源的問題

1.2.1 霧里看花的開源

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

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

1.3 Android和Linux

1.3.1 Linux簡介

1.3.2 Android和Linux的關系

1.4 簡析Linux內核

1.4.1 內核的體系結構

1.4.2 和Android密切相關的Linux內核知識

1.5 分析Linux內核源代碼很有必要

1.5.1 源代碼目錄結構

1.5.2 Linux 3.10的特性

1.5.3 瀏覽源代碼的工具

1.5.4 為什么用匯編語言編寫內核代碼

1.5.5 Linux內核的顯著特性

1.5.6 學習Linux內核的方法

第2章 分析Android源代碼

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

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

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

2.1.3 安裝編譯工具

2.2 獲取Android源代碼

2.3 分析并編譯Android源代碼

2.3.1 Android源代碼的結構

2.3.2 編譯Android源代碼

2.3.3 運行Android源代碼

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

2.4 編譯Android Kernel

2.4.1 獲取Goldfish內核代碼

2.4.2 獲取MSM內核代碼

2.4.3 獲取OMAP內核代碼

2.4.4 編譯Android的Linux內核

2.5 運行模擬器

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

2.5.2 模擬器輔助工具――adb

第3章 驅動需要移植

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

3.2 Android移植

3.2.1 移植的任務

3.2.2 移植的內容

3.2.3 驅動開發(fā)的任務

3.3 Android對Linux的改造

3.3.1 Android對Linux內核文件的改動

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

3.4 內核空間和用戶空間接口是一個媒介

3.4.1 內核空間和用戶空間的相互作用

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

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

3.5 三類驅動程序

3.5.1 字符設備驅動程序

3.5.2 塊設備驅動程序

3.5.3 網絡設備驅動程序

第4章 HAL層深入分析

4.1 認識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 總結HAL層的使用方法

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

4.4.1 HAL層的Sensor代碼

4.4.2 總結Sensor編程的流程

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

4.5 移植總結

4.5.1 移植各個Android部件的方式

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

4.6 開發(fā)一個硬件驅動程序

4.6.1 源代碼文件wuming.h和

wuming.c

4.6.2 編譯配置處理

4.6.3 修改配置文件

4.6.4 驗證驅動程序

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

5.1 Android專有驅動介紹

5.2 Goldfish基礎

5.3 Android專用驅動簡介

5.3.1 Logger驅動介紹

5.3.2 Low Memory Killer組件介紹

5.3.3 Timed Output驅動介紹

5.3.4 Timed Gpio驅動介紹

5.3.5 Ram Console驅動介紹

5.4 Ashmem驅動介紹

5.5 Pmem驅動介紹

5.6 Alarm驅動程序

5.7 USB Gadget驅動程序

5.8 Paranoid驅動介紹

5.9 Goldfish的設備驅動

第6章 MSM內核和驅動解析

6.1 MSM基礎

6.1.1 常見MSM處理器產品

6.1.2 Snapdragon內核介紹

6.2 移植MSM內核簡介

6.3 移植MSM

6.3.1 Makefile文件

6.3.2 驅動和組件

6.3.3 設備驅動

6.3.4 高通特有的組件

第7章 OMAP內核和驅動解析

7.1 OMAP基礎

7.1.1 OMAP簡析

7.1.2 常見OMAP處理器產品

7.1.3 開發(fā)平臺

7.2 OMAP內核

7.3 移植OMAP體系結構

7.3.1 移植OMAP平臺

7.3.2 移植OMAP處理器

7.4 移植Android專用驅動和組件

7.5 OMAP的設備驅動

7.5.1 顯示驅動程序

7.5.2 I2C總線驅動程序

7.5.3 攝像頭和視頻輸出驅動程序

7.5.4 觸摸屏和鍵盤驅動程序

7.5.5 實時時鐘驅動程序

7.5.6 音頻驅動程序

7.5.7 藍牙驅動程序

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

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

8.2 分析內核層

8.2.1 分析接口文件fb.h

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

8.3 分析硬件抽象層

8.3.1 分析頭文件

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

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

8.3.4 顯示緩沖映射

8.3.5 分析管理庫文件LayerBuffer.cpp

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

8.4.1 Goldfish中的FrameBuffer驅動程序

8.4.2 使用Gralloc模塊的驅動程序

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

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

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

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

9.1.1 Android輸入系統(tǒng)結構元素介紹

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

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

9.2.1 分析頭文件

9.2.2 分析核心文件input.c

9.2.3 分析event機制

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)驅動

10.1 振動器系統(tǒng)結構

10.2 分析硬件抽象層

10.3 分析JNI層部分

10.4 分析Java層部分

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

10.5.1 移植振動器驅動程序

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

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

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

11.1 音頻系統(tǒng)結構

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

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

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

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

11.4.1 實現(xiàn)Audio驅動程序

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

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

12.1 視頻輸出系統(tǒng)結構

12.2 需要移植的部分

12.3 分析硬件抽象層

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

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

12.3.3 實現(xiàn)接口

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

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

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

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

12.6 系統(tǒng)層調用Overlay HAL的架構

12.6.1 調用Overlay HAL的架構的

流程

12.6.2 S3C6410 Android Overlay的測試代碼

第13章 OpenMax多媒體框架

13.1 OpenMax基本層次結構

13.2 分析OpenMax框架構成

13.2.1 OpenMax總體層次結構

13.2.2 OpenMax IL層的結構

13.2.3 Android中的OpenMax

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

13.3.1 OpenMax IL層的接口

13.3.2 在OpenMax IL層中需要做什么

13.3.3 研究Android中的OpenMax適配層

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

13.4.1 實現(xiàn)文件

13.4.2 分析TI OpenMax IL的核心

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

第14章 多媒體插件框架

14.1 Android多媒體插件

14.2 需要移植的內容

14.3 OpenCore引擎

14.3.1 OpenCore層次結構

14.3.2 OpenCore代碼結構

14.3.3 OpenCore編譯結構

14.3.4 OpenCore OSCL

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

14.3.6 OpenCore的擴展

14.4 Stagefright引擎

14.4.1 Stagefright代碼結構

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

14.4.3 Video Buffer傳輸流程

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

15.1 傳感器系統(tǒng)的結構

15.2 分析需要移植的內容

15.2.1 移植驅動程序

15.2.2 移植硬件抽象層

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

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

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

16.1 Camera系統(tǒng)的結構

16.2 分析需要移植的內容

16.3 移植和調試

16.3.1 V4L2驅動程序

16.3.2 硬件抽象層

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

16.4.1 Java程序部分

16.4.2 Camera的Java本地調用部分

16.4.3 Camera的本地庫libui.so

16.4.4 Camera服務libcameraservice.so

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

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

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

17.1 Wi-Fi系統(tǒng)

17.1.1 Wi-Fi系統(tǒng)的結構

17.1.2 需要移植的內容

17.1.3 移植和調試

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

17.1.5 配置Wi-Fi的流程

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

17.2 藍牙系統(tǒng)

17.2.1 藍牙系統(tǒng)的結構

17.2.2 需要移植的內容

17.2.3 具體移植

17.2.4 MSM平臺的藍牙驅動

17.3 定位系統(tǒng)

17.3.1 定位系統(tǒng)的結構

17.3.2 分析需要移植的內容

17.3.3 分析驅動程序

17.3.4 分析硬件抽象層

17.3.5 分析上層應用部分

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

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

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

18.1.2 電話系統(tǒng)結構

18.2 需要移植的內容

18.3 移植和調試

18.3.1 驅動程序

18.3.2 RIL接口

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

18.4.1 初始啟動流程

18.4.2 request流程

18.4.3 response流程

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

19.1 Alarm系統(tǒng)基礎

19.1.1 Alarm層次結構介紹

19.1.2 我們需要移植的內容

19.2 分析RTC驅動程序

19.3 分析Alarm驅動程序

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)境的具體實現(xiàn)

第20章 分析USB Gadget驅動

20.1 分析Linux內核的USB驅動程序

20.1.1 USB設備基礎

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

20.1.3 分析urb通信方式

20.1.4 分析USB驅動的例程

20.2 分析USB Gadget驅動

20.2.1 分析軟件結構

20.2.2 層次整合

20.2.3 USB設備枚舉

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

21.1 Lights光系統(tǒng)

21.1.1 Lights光系統(tǒng)的結構

21.1.2 需要移植的內容

21.1.3 移植和調試

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

21.2 Battery電池系統(tǒng)

21.2.1 Battery系統(tǒng)的結構

21.2.2 需要移植的內容

21.2.3 移植和調試

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

文檔截圖

總結

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

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。