图书介绍

Android底层开发技术实战详解 内核、移植和驱动PDF|Epub|txt|kindle电子书版本网盘下载

Android底层开发技术实战详解 内核、移植和驱动
  • 王振丽编著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121175930
  • 出版时间:2012
  • 标注页数:530页
  • 文件大小:108MB
  • 文件页数:541页
  • 主题词:移动终端-应用程序-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Android底层开发技术实战详解 内核、移植和驱动PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 Android底层开发基础1

1.1 什么是驱动1

1.1.1 驱动程序的魅力1

1.1.2 电脑中的驱动2

1.1.3 手机中的驱动程序2

1.2 开源还是不开源的问题3

1.2.1 雾里看花的开源3

1.2.2 从为什么选择Java谈为什么不开源驱动程序3

1.2.3 对驱动开发者来说是一把双刃剑4

1.3 Android和Linux4

1.3.1 Linux简介5

1.3.2 Android和Linux的关系5

1.4 简析Linux内核8

1.4.1 内核的体系结构8

1.4.2 和Android密切相关的Linux内核知识10

1.5 分析Linux内核源代码很有必要14

1.5.1 源代码目录结构14

1.5.2 浏览源代码的工具16

1.5.3 为什么用汇编语言编写内核代码17

1.5.4 Linux内核的显著特性18

1.5.5 学习Linux内核的方法26

第2章 分析Android源代码31

2.1 搭建Linux开发环境和工具31

2.1.1 搭建Linux开发环境31

2.1.2 设置环境变量32

2.1.3 安装编译工具32

2.2 获取Android源代码33

2.3 分析并编译Android源代码35

2.3.1 Android源代码的结构35

2.3.2 编译Android源代码40

2.3.3 运行Android源代码42

2.3.4 实践演练——演示编译Android程序的两种方法43

2.4 编译Android Kernel47

2.4.1 获取Goldfish内核代码47

2.4.2 获取MSM内核代码50

2.4.3 获取OMAP内核代码50

2.4.4 编译Android的Linux内核50

2.5 运行模拟器52

2.5.1 Linux环境下运行模拟器的方法53

2.5.2 模拟器辅助工具——adb54

第3章 驱动需要移植57

3.1 驱动开发需要做的工作57

3.2 Android移植59

3.2.1 移植的任务60

3.2.2 移植的内容60

3.2.3 驱动开发的任务61

3.3 Android对Linux的改造61

3.3.1 Android对Linux内核文件的改动62

3.3.2 为Android构建Linux的操作系统63

3.4 内核空间和用户空间接口是一个媒介64

3.4.1 内核空间和用户空间的相互作用64

3.4.2 系统和硬件之间的交互64

3.4.3 使用Relay实现内核到用户空间的数据传输66

3.5 三类驱动程序70

3.5.1 字符设备驱动程序70

3.5.2 块设备驱动程序79

3.5.3 网络设备驱动程序82

第4章 HAL层深入分析84

4.1 认识HAL层84

4.1.1 HAL层的发展84

4.1.2 过去和现在的区别86

4.2 分析HAL层源代码86

4.2.1 分析HAL moudle86

4.2.2 分析mokoid工程89

4.3 总结HAL层的使用方法98

4.4 传感器在HAL层的表现101

4.4.1 HAL层的Sensor代码102

4.4.2 总结Sensor编程的流程104

4.4.3 分析Sensor源代码看Android API与硬件平台的衔接104

4.5 移植总结116

4.5.1 移植各个Android部件的方式116

4.5.2 移植技巧之一——不得不说的辅助工作117

第5章 Goldfish下的驱动解析125

5.1 staging驱动125

5.1.1 staging驱动概述125

5.1.2 Binder驱动程序126

5.1.3 Logger驱动程序135

5.1.4 Lowmemorykiller组件136

5.1.5 Timed Output驱动程序137

5.1.6 Timed Gpio驱动程序139

5.1.7 Ram Console驱动程序139

5.2 wakelock和early_suspend140

5.2.1 wakelock和early_suspend的原理140

5.2.2 Android休眠141

5.2.3 Android唤醒144

5.3 Ashmem驱动程序145

5.4 Pmem驱动程序148

5.5 Alarm驱动程序149

5.5.1 Alarm简析149

5.5.2 Alarm驱动程序的实现150

5.6 USB Gadget驱动程序151

5.7 Android Paranoid驱动程序153

5.8 Goldfish设备驱动154

5.8.1 FrameBuffer驱动155

5.8.2 键盘驱动159

5.8.3 实时时钟驱动程序160

5.8.4 TTY终端驱动程序161

5.8.5 NandFlash驱动程序162

5.8.6 MMC驱动程序162

5.8.7 电池驱动程序162

第6章 MSM内核和驱动解析164

6.1 MSM基础164

6.1.1 常见MSM处理器产品164

6.1.2 Snapdragon内核介绍165

6.2 移植MSM内核简介166

6.3 移植MSM168

6.3.1 Makefile文件168

6.3.2 驱动和组件170

6.3.3 设备驱动172

6.3.4 高通特有的组件174

第7章 OMAP内核和驱动解析177

7.1 OMAP基础177

7.1.1 OMAP简析177

7.1.2 常见OMAP处理器产品177

7.1.3 开发平台178

7.2 OMAP内核178

7.3 移植OMAP体系结构180

7.3.1 移植OMAP平台180

7.3.2 移植OMAP处理器183

7.4 移植Android专用驱动和组件188

7.5 OMAP的设备驱动190

第8章 显示系统驱动应用195

8.1 显示系统介绍195

8.1.1 Android的版本195

8.1.2 不同版本的显示系统195

8.2 移植和调试前的准备196

8.2.1 FrameBuffer驱动程序196

8.2.2 硬件抽象层198

8.3 实现显示系统的驱动程序210

8.3.1 Goldfish中的FrameBuffer驱动程序210

8.3.2 使用Gralloc模块的驱动程序214

8.4 MSM高通处理器中的显示驱动实现224

8.4.1 MSM中的FrameBuffer驱动程序225

8.4.2 MSM中的Gralloc驱动程序227

8.5 OMAP处理器中的显示驱动实现235

第9章 输入系统驱动应用239

9.1 输入系统介绍239

9.1.1 Android输入系统结构元素介绍239

9.1.2 移植Android输入系统时的工作240

9.2 Input(输入)驱动241

9.3 模拟器的输入驱动256

9.4 MSM高通处理器中的输入驱动实现257

9.4.1 触摸屏驱动257

9.4.2 按键和轨迹球驱动264

9.5 OMAP处理器平台中的输入驱动实现266

9.5.1 触摸屏驱动267

9.5.2 键盘驱动267

第10章 振动器系统驱动269

10.1 振动器系统结构269

10.1.1 硬件抽象层271

10.1.2 JNI框架部分272

10.2 开始移植273

10.2.1 移植振动器驱动程序273

10.2.2 实现硬件抽象层274

10.3 在MSM平台实现振动器驱动275

第11章 音频系统驱动279

11.1 音频系统结构279

11.2 分析音频系统的层次280

11.2.1 层次说明280

11.2.2 Media库中的Audio框架281

11.2.3 本地代码284

11.2.4 JNI代码288

11.2.5 Java代码289

11.3 移植Audio系统的必备技术289

11.3.1 移植Audio系统所要做的工作289

11.3.2 分析硬件抽象层290

11.3.3 分析AudioFlinger中的Audio硬件抽象层的实现291

11.4 真正实现Audio硬件抽象层298

11.5 MSM平台实现Audio驱动系统298

11.5.1 实现Audio驱动程序298

11.5.2 实现硬件抽象层299

11.6 OSS平台实现Audio驱动系统304

11.6.1 OSS驱动程序介绍304

11.6.2 mixer305

11.7 ALSA平台实现Audio系统312

11.7.1 注册音频设备和音频驱动312

11.7.2 在Android中使用ALSA声卡313

11.7.3 在OMAP平台移植Android的ALSA声卡驱动322

第12章 视频输出系统驱动326

12.1 视频输出系统结构326

12.2 需要移植的部分328

12.3 分析硬件抽象层328

12.3.1 Overlay系统硬件抽象层的接口328

12.3.2 实现Overlay系统的硬件抽象层331

12.3.3 实现接口332

12.4 实现Overlay硬件抽象层333

12.5 在OMAP平台实现Overlay系统335

12.5.1 实现输出视频驱动程序335

12.5.2 实现Overlay硬件抽象层337

12.6 系统层调用Overlay HAL的架构342

12.6.1 调用Overlay HAL的架构的流程342

12.6.2 S3C6410 Android Overlay的测试代码346

第13章 OpenMax多媒体框架349

13.1 OpenMax基本层次结构349

13.2 分析OpenMax框架构成350

13.2.1 OpenMax总体层次结构350

13.2.2 OpenMax IL层的结构351

13.2.3 Android中的OpenMax354

13.3 实现OpenMax IL层接口354

13.3.1 OpenMax IL层的接口354

13.3.2 在OpenMax IL层中需要做什么361

13.3.3 研究Android中的OpenMax适配层361

13.4 在OMAP平台实现OpenMax IL363

13.4.1 实现文件364

13.4.2 分析TI OpenMax IL的核心365

13.4.3 实现TI OpenMax IL组件实例368

第14章 多媒体插件框架373

14.1 Android多媒体插件373

14.2 需要移植的内容374

14.3 OpenCore引擎375

14.3.1 OpenCore层次结构375

14.3.2 OpenCore代码结构376

14.3.3 OpenCore编译结构377

14.3.4 OpenCore OSCL381

14.3.5 实现OpenCore中的OpenMax部分383

14.3.6 OpenCore的扩展398

14.4 Stagefright引擎404

14.4.1 Stagefright代码结构404

14.4.2 Stagefright实现OpenMax接口405

14.4.3 Video Buffer传输流程409

第15章 传感器系统415

15.1 传感器系统的结构415

15.2 需要移植的内容417

15.2.1 移植驱动程序417

15.2.2 移植硬件抽象层418

15.2.3 实现上层部分419

15.3 在模拟器中实现传感器424

第16章 照相机系统430

16.1 Camera系统的结构430

16.2 需要移植的内容433

16.3 移植和调试433

16.3.1 V4L2驱动程序433

16.3.2 硬件抽象层441

16.4 实现Camera系统的硬件抽象层446

16.4.1 Java程序部分446

16.4.2 Camera的Java本地调用部分447

16.4.3 Camera的本地库libui.so448

16.4.4 Camera服务libcameraservice.so449

16.5 MSM平台实现Camera系统454

16.6 OMAP平台实现Camera系统457

第17章 Wi-Fi系统、蓝牙系统和GPS系统459

17.1 Wi-Fi系统459

17.1.1 Wi-Fi系统的结构459

17.1.2 需要移植的内容461

17.1.3 移植和调试461

17.1.4 OMAP平台实现Wi-Fi469

17.1.5 配置Wi-Fi的流程471

17.1.6 具体演练——在Android下实现Ethernet473

17.2 蓝牙系统475

17.2.1 蓝牙系统的结构475

17.2.2 需要移植的内容477

17.2.3 具体移植478

17.2.4 MSM平台的蓝牙驱动480

17.3 定位系统482

17.3.1 定位系统的结构483

17.3.2 需要移植的内容484

17.3.3 移植和调试484

第18章 电话系统498

18.1 电话系统基础498

18.1.1 电话系统简介498

18.1.2 电话系统结构500

18.2 需要移植的内容501

18.3 移植和调试502

18.3.1 驱动程序502

18.3.2 RIL接口504

18.4 电话系统实现流程分析507

18.4.1 初始启动流程507

18.4.2 request流程509

18.4.3 response流程512

第19章 其他系统514

19.1 Alarm警报器系统514

19.1.1 Alarm系统的结构514

19.1.2 需要移植的内容515

19.1.3 移植和调试516

19.1.4 模拟器环境的具体实现518

19.1.5 MSM平台实现Alarm518

19.2 Lights光系统519

19.2.1 Lights光系统的结构520

19.2.2 需要移植的内容521

19.2.3 移植和调试521

19.2.4 MSM平台实现光系统523

19.3 Battery电池系统524

19.3.1 Battery系统的结构524

19.3.2 需要移植的内容526

19.3.3 移植和调试526

19.3.4 在模拟器中实现电池系统529

热门推荐