Android底层开发技术实战详解:内核、移植和驱动
作 者: 王振丽
出版时间: 2012
内容简介
本书从底层原理开始讲起,结合真实的案例向读者详细介绍了Android内核、移植和驱动开发的整个流程。全书分为19章,依次讲解驱动移植的必要性,何为HAL层深入分析,Goldfish、MSM、MAP内核和驱动解析,显示系统、输入系统、振动器系统、音频系统、视频输出系统的驱动,OpenMax多媒体、多媒体插件框架,传感器、照相机、Wi-Fi、蓝牙、GPS和电话系统等。在每一章中,重点介绍了与Android驱动开发相关的底层知识,并对Android源代码进行了剖析。
目录
第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和Linux 4
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 Kernel 47
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 模拟器辅助工具——adb 54
第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内核文件的