种豆资源网

当前位置:首页 > 百科 > 百科综合 / 正文

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

(2019-12-08 08:19:13) 百科综合

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

《现代Android系统级深入开发—移植与调试》是2011年2月电子工业出版社出版的图书,作者是韩超、梁泉。

基本介绍

  • 书名:现代Android系统级深入开发—移植与调试
  • 作者:韩超、梁泉
  • ISBN:9787121126093
  • 页数:372页
  • 出版社:电子工业出版社
  • 出版时间:2011年2月
  • 开本:16开

编辑推荐

从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移植重点关注的部分

标 签

搜索
随机推荐

Powered By 种豆资源网||