请输入您要查询的百科知识:

 

词条 现代Android系统级深入开发—移植与调试
释义

基本信息

作者:韩超 梁泉

出版社:电子工业出版社

ISBN:9787121126093

上架时间:2011-2-18

出版日期:2011 年2月

开本:16开

页码:372

版次:1-1

编辑推荐

从Android开源工程到产品的开发宝典

全面介绍Android中与硬件相关的子系统

按照驱动程序和硬件抽象层两方面把握移植要点

高效粘合Linux系统经验和移动设备应用场景

以三种硬件平台为参考,参考开发环境宜于获得

作译者

韩超,中国大陆资深Linux和移动开发工程师,长期从事一线开发工作,兼具开发实践经验和完备的教育思维模式。韩超是中国大陆较早开发Android系统开发的人员,曾从事系统框架、芯片移植适配和移动产品等开发领域;也曾经引领各种技术人员进入Android领域,并组织参与技术交流。

目录

第1章 android系统移植开发概述 1

1 1 android系统架构和生态系统 1

1 1 1 android软件系统 1

1 1 2 android的生态系统 3

1 2 android移植的概念和方法 4

1 3 android移植的主要工作 5

第2章 android源代码和开发环境 8

2 1 开发环境和工具 8

2 2 android的代码库 9

2 3 android系统代码和编译 9

2 3 1 获取android源代码 9

2 3 2 android源代码结构 12

2 3 3 编译android系统源代码 13

2 3 4 编译android结果 13

2 4 android kernel代码和编译 14

2 4 1 goldfish内核源代码 15

2 4 2 msm内核源代码 15

2 4 3 omap内核源代码 16

2 5 仿真器的运行环境 16

2 5 1 仿真器的运行 16

2 5 2 使用附加工具 18

第3章 android系统移植的结构和方法 20

3 1 android的linux操作系统 20

3 1 1 标准的linux操作系统 20

3 1 2 android对linux 内核的使用 22

3 1 3 linux内核空间到用户空间的接口 24

3 1 4 平台数据和平台驱动 34

3 2 android的硬件抽象层 35

3 2 1 硬件抽象层的地位和功能 35

3 2 2 硬件抽象层接口方式 36

3 3 android中各个部件的移植方式 41

3 4 辅助性工作和基本调试方法 41

3 4 1 移植的辅助性工作 42

3 4 2 调试的方法 46

第4章 android的goldfish内核和驱动 56

4 1 goldfish内核概述 56

4 2 goldfish体系结构移植 58

4 3 goldfish的android专用驱动和组件 59

4 3 1 wakelock和earlysuspend 59

4 3 2 staging中的驱动程序 61

4 3 3 ashmem驱动程序 66

4 3 4 alarm驱动程序 67

4 3 5 pmem驱动程序 67

4 3 6 adb garget驱动程序 68

4 3 7 android paranoid网络 68

4 4 goldfish的相关设备驱动 70

4 4 1 framebuffer的驱动程序 70

4 4 2 键盘的驱动程序 70

4 4 3 实时时钟的驱动程序 71

4 4 4 tty终端的驱动程序 71

4 4 5 nandflash的驱动程序 72

4 4 6 mmc的驱动程序 72

4 4 7 电池的驱动程序 73

4 4 8 eac音频的驱动程序 73

第5章 android的msm内核和驱动 74

5 1 msm处理器概述 74

5 1 1 msm概述 74

5 1 2 msm适用于android的linux内核的结构 77

5 2 msm体系结构的移植 79

5 3 msm的android专用驱动和组件 80

5 4 msm的mahimahip平台的主要设备驱动 81

5 4 1 显示的驱动程序 81

5 4 2 触摸屏的驱动程序 82

5 4 3 按键和轨迹球的驱动程序 82

5 4 4 实时时钟的驱动程序 83

5 4 5 摄像头的驱动程序 83

5 4 6 无线局域网的驱动程序 83

5 4 7 蓝牙的驱动程序 84

5 4 8 dsp相关的驱动程序 84

5 4 9 高通特有的组件相关内容 85

第6章 android的omap内核和驱动 87

6 1 omap内核概述 87

6 1 1 omap概述 87

6 1 2 omap适用于android的linux内核的结构 91

6 2 omap体系结构的移植 92

6 2 1 omap平台部分的移植 92

6 2 2 omap处理器部分的移植 94

6 3 omap的android专用驱动和组件 96

6 4 omap的主要设备驱动 97

6 4 1 显示的驱动程序 97

6 4 2 摄像头和视频输出的驱动程序 98

6 4 3 i2c总线驱动程序 98

6 4 4 键盘的驱动程序 99

6 4 5 触摸屏的驱动程序 99

6 4 6 实时时钟的驱动程序 99

6 4 7 音频的驱动程序 99

6 4 8 蓝牙的驱动程序 100

6 4 9 以太网的驱动程序 100

6 4 10 dsp的驱动程序 100

第7章 显示系统 101

7 1 显示系统结构和移植内容 101

7 1 1 donut及其之前显示系统的结构 102

7 1 2 eclair及其之后显示系统的结构 102

7 1 3 移植的内容 103

7 2 移植和调试的要点 104

7 2 1 framebuffer驱动程序 104

7 2 2 donut及其之前的硬件抽象层 106

7 2 3 eclair及其之后的硬件抽象层 107

7 3 显示部分模拟器的实现方式 112

7 3 1 goldfish的framebuffer驱动程序 112

7 3 2 默认的gralloc模块的实现 113

7 4 msm中的实现 119

7 4 1 msm的framebuffer驱动程序 119

7 4 2 msm的gralloc模块的实现 120

7 5 omap中的实现 126

7 5 1 omap的framebuffer驱动程序 126

7 5 2 omap的用户空间的实现 128

第8章 用户输入系统 129

8 1 用户输入系统结构和移植内容 129

8 1 1 用户输入系统的结构 129

8 1 2 移植的内容 131

8 2 移植的要点 131

8 2 1 input驱动程序 131

8 2 2 用户空间的处理 134

8 2 3 移植需要注意的情况 139

8 3 模拟器中的实现 141

8 3 1 驱动程序 141

8 3 2 用户空间的配置文件 141

8 4 msm中的实现 142

8 4 1 触摸屏,轨迹球和按键驱动程序 142

8 4 2 用户空间的配置文件 144

8 5 omap中的实现 144

8 5 1 触摸屏和键盘的驱动程序 144

8 5 2 用户空间的配置文件 146

8 6 虚拟按键的实现 146

第9章 传感器系统 148

9 1 传感器系统结构和移植内容 148

9 1 1 传感器系统的结构 148

9 1 2 移植的内容 150

9 2 移植和调试的要点 150

9 2 1 驱动程序 150

9 2 2 硬件抽象层的内容 151

9 2 3 上层的情况和注意事项 153

9 3 模拟器中的实现 157

第10章 音频系统 162

10 1 音频系统结构和移植内容 162

10 1 1 音频系统的结构 162

10 1 2 移植的内容 164

10 2 移植和调试的要点 164

10 2 1 audio驱动程序 164

10 2 2 硬件抽象层的内容 164

10 2 3 audio策略管理的内容 168

10 2 4 上层的情况和注意事项 169

10 3 通用的audio系统实现 170

10 3 1 用桩实现的audio硬件抽象层 172

10 3 2 提供dump功能的audio硬件抽象层 174

10 3 3 通用的audio硬件抽象层 177

10 4 msm系统的实现 178

10 4 1 audio驱动程序 178

10 4 2 audio硬件抽象层 180

10 5 基于oss和alsa的实现方式 183

10 5 1 oss驱动程序 183

10 5 2 基于oss的硬件抽象层 184

10 5 3 alsa驱动程序 185

10 5 4 基于alsa的硬件抽象层 186

第11章 视频输出系统 190

11 1 视频输出系统结构和移植内容 190

11 1 1 视频输出系统的结构 191

11 1 2 移植的内容 192

11 2 移植和调试的要点 192

11 2 1 驱动程序 192

11 2 2 硬件抽象层的内容 192

11 2 3 上层的情况和注意实现 195

11 3 overlay硬件抽象层实现的框架 199

11 4 omap系统的实现 200

11 4 1 omap的视频输出部分的驱动程序 200

11 4 2 omap overlay 硬件抽象层 202

第12章 照相机系统 205

12 1 照相机系统结构和移植内容 205

12 1 1 照相机系统的结构 206

12 1 2 移植的内容 207

12 2 移植和调试的要点 207

12 2 1 video for 4linux驱动程序 207

12 2 2 硬件抽象层的内容 210

12 2 3 上层的情况和注意事项 215

12 2 4 照相机系统的数据流情况 219

12 3 camera硬件抽象层桩实现 222

12 4 msm平台的camera实现 226

12 4 1 msm平台的camera驱动程序 226

12 4 2 msm平台的camera硬件抽象层 227

12 5 omap平台的camera实现 228

12 5 1 omap平台的camera驱动程序 228

12 5 2 omap平台的camera硬件抽象层 229

第13章 无线局域网系统 230

13 1 无线局域网系统结构和移植内容 230

13 1 1 无线局域网系统的结构 231

13 1 2 移植的内容 232

13 2 移植和调试的要点 232

13 2 1 协议和驱动程序 232

13 2 2 用户空间的内容 233

13 2 3 上层的情况和调试方法 233

13 3 omap系统的无线局域网实现 235

13 3 1 linux内核中的内容 235

13 3 2 用户空间的实现 236

第14章 蓝牙系统 238

14 1 蓝牙系统结构和移植内容 238

14 1 1 蓝牙系统的结构 239

14 1 2 移植的内容 240

14 2 移植和调试的要点 240

14 2 1 驱动程序 240

14 2 2 本地代码的配置部分 242

14 2 3 上层的情况和调试方法 244

14 3 msm系统的蓝牙实现 245

14 3 1 驱动部分 245

14 3 2 用户空间的部分 247

第15章 定位系统 248

15 1 定位系统的系统结构和移植内容 248

15 1 1 定位系统的系统结构 248

15 1 2 移植的内容 250

15 2 移植和调试的要点 250

15 2 1 驱动程序 250

15 2 2 硬件抽象层 251

15 2 3 上层的情况和调试方法 253

15 3 仿真器的gps硬件适配层实现 256

15 4 msm平台的gps硬件适配层实现 257

第16章 电话系统 260

16 1 电话系统结构和移植内容 260

16 1 1 电话系统的系统结构 260

16 1 2 移植的内容 262

16 2 移植和调试的要点 262

16 2 1 驱动程序 262

16 2 2 ril实现库的接口 264

16 2 3 数据连接部分 266

16 2 4 调试方法 267

16 3 电话部分的ril参考实现 268

16 3 1 端口初始化 268

16 3 2 at命令处理流程 269

16 3 3 event模块 270

16 3 4 modem at命令初始化 272

16 3 5 请求和响应流程的处理 272

16 3 6 特定命令类型的实现 274

第17章 opengl 3d引擎 276

17 1 opengl系统结构和移植内容 276

17 1 1 opengl系统的结构 277

17 1 2 移植的内容 283

17 2 移植和调试的要点 283

17 2 1 opengl移植层的接口 283

17 2 2 上层的情况和opengl的调试 285

17 2 android软件opengl的实现 288

17 3 不同系统中的实现 290

第18章 openmax多媒体引擎 292

18 1 openmax系统结构和移植内容 292

18 1 1 openmax系统的结构 293

18 1 2 android openmax实现的内容 297

18 2 openmax的接口与实现 297

18 2 1 openmax il层的接口 297

18 2 2 openmax il实现的内容 302

18 2 3 android中openmax的适配层 302

18 3 omap平台openmax il的硬件实现 304

18 3 1 ti openmax il实现的结构和机制 304

18 3 2 ti openmax il的核心和公共内容 306

18 3 3 一个ti openmax il组件的实现 307

第19章 多媒体系统的插件 310

19 1 android多媒体相关结构与移植内容 310

19 1 1 多媒体处理过程 311

19 1 2 移植的内容 312

19 2 opencore引擎的结构和插件 313

19 2 1 opencore的结构 313

19 2 2 opencore的node插件机制 314

19 2 3 openmax部分的结构、实现和插件结构 316

19 2 4 关于媒体输入输出类mediaio 322

19 2 5 opencore player的视频显示部分插件 325

19 3 stagefright引擎的结构和插件 326

19 3 1 stagefright系统结构 326

19 3 2 stagefright对android中openmax接口的实现 328

19 3 3 mediasource插件机制 328

19 3 4 openmax和videorenderer插件机制 330

19 4 omap平台实现的插件 332

19 4 1 opencore的openmax插件 333

19 4 2 opencore的视频输出插件 334

19 4 3 stagefright的openmax和视频输出插件 336

第20章 位块复制系统 339

20 1 位块复制结构和移植内容 339

20 1 1 位块复制系统的结构 339

20 1 2 移植内容 340

20 2 移植和调试的要点 340

20 2 1 驱动程序 340

20 2 2 硬件抽象层的内容 341

20 2 3 上层的情况和注意事项 342

20 3 msm平台中的实现 343

第21章 警报器——实时时钟系统 346

21 1 警报器——实时时钟结构和移植内容 346

21 1 1 警报器——实时时钟系统的结构 346

21 1 2 移植内容 347

21 2 移植与调试的要点 348

21 2 1 rtc驱动程序 348

21 2 2 alarm驱动程序 349

21 2 3 上层的情况和注意事项 349

21 3 模拟器环境中的实现 351

21 4 msm平台的实现 351

第22章 光系统 354

22 1 光系统结构和移植内容 354

22 1 1 光系统部分的结构 354

22 1 2 移植内容 355

22 2 移植与调试的要点 356

22 2 1 驱动程序 356

22 2 2 硬件抽象层的内容 356

22 2 3 上层的情况和注意事项 357

22 3 msm中的实现 359

22 3 1 驱动程序 359

22 3 2 硬件抽象层 359

第23章 振动器系统 361

23 1 振动器系统结构和移植内容 361

23 1 1 振动器部分的结构 361

23 1 2 移植内容 362

23 2 移植与调试的要点 363

23 2 1 驱动程序 363

23 2 2 硬件抽象层的内容 363

23 2 3 上层的情况和注意事项 364

23 3 msm中的实现 365

第24章 电池系统 367

24 1 电池系统结构和移植内容 367

24 1 1 电池系统部分的结构 367

24 1 2 移植内容 368

24 2 移植和调试的要点 368

24 2 1 驱动程序 368

24 2 2 上层的情况和注意事项 369

24 3 模拟器中的实现 371

前言

Android系统是目前最为流行的手机系统之一,本书作者在推出了全面介绍Android系统的《Android系统原理及开发要点详解》一书,同时出版了繁体版,并将版权成功输出到韩国,韩文版将在2011年7月出版。在本书出版之后,笔者切实感到越来越多的开发人员和企业在关注Android系统的各个方面。

Android系统是开源的,它的一个比较大的优势就是可以移植到各个不同的硬件平台上。“移植”是Android系统的精华所在,也是Android开发中的难点兼重点。

本书《Android系统级深入开发——移植与调试》出版的主要目的是分享开发经验,帮助众多开发者快速地掌握Android系统在不同硬件平台移植的方法。帮助工程师以最快的速度、最小的开销、最轻的工作量,让Android系统高效地运行在更多的硬件上。

本书特点

本书紧紧抓住了Android系统移植与调试的主题,从开发者的角度出发,其特点主要包括以下几个方面:

本书使用的代码以Android的开源工程为主,硬件也是比较常见的设备,保证读者可以很容易地获得开发环境。

根据Android系统自身的固有特点,从Linux内核中的驱动和硬件抽象层两个着手点作为切入点。

按照Linux的开发思路,从驱动程序的角度出发,让具有Linux开发经验的工程师,可以更快地熟悉主要用于移动设备开发的Android系统。

从模拟器、高通的MSM平台、德州仪器的OMAP平台这三种硬件平台出发,全面介绍,不以偏概全,既把握共同点,也突出差异。

对于Android中规模和难度各不相同的子系统,抓住它们和硬件相关的共同点,采取同样的格式和思路进行介绍,体现了“从特殊到一般”的理念。

简要介绍各个子系统的框架,并列出代码路径,对移植部分的主要调用部分加强提示,让读者更全面地把握系统。

本书内容

本书分成24章,各章的内容如下所示:

第1章和第2章:概要部分 介绍Android的系统的大结构、移植的主要工作,开发环境的构建方法

第3章:全书的总纲 全面介绍Linux系统的驱动程序,突出介绍Android中硬件抽象层的不同实现方式,展示Android移植的各个方面

续表

第4章至第6章:Linux内核方面 主要介绍用于模拟器的Goldfish、MSM的mahimahip平台和OMAP的Zoom平台的3种Linux内核,介绍了不同体系结构的移植,与硬件无关的Android专用驱动,并简单介绍了各个硬件设备的驱动程序

第7章和第8章:基本GUI的系统 包括显示输出和用户输入两个部分,是每个系统最优先移植的部分

第9章:传感器系统 体现Android系统最经典的移植方式

第10章至第12章:多媒体的输入输出环节 是Android移植重点关注的部分

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/3/20 16:24:46