Android
19 HAL GoldfishMSMMAP
OpenMax
Wi-FiGPS Android
Android
Android Android
Android / . 2012.8
Android
ISBN 978-7-121-17593-0
. A . . . TN929.53
CIP 2012 157997
7871092
2012 8 1
3500 69.00
173 100036
1/16 33.75 864
01088254888
zlts@phei.com.cn dbqq@phei.com.cn
01088258888
3G
Google
OHA 2007 11 Android
SDKAndroid
2008 9 Android
G1 LG Android
2011 Android iOS
Android 5 Android
Android Android
Android
Android
Android
Android Web
Google Map
HTML 5 Android
Android JavaCC++ RubyPython
Google Android Simple Android
Android
19
1
2
3
4
5
6
7
8
9
10
Linux
Linux Android Linux
Android
HAL HAL
Goldfish stagingAshmenPmemAlarm Android Paranoid
MSM MSM
OMAP
MSM OMAP
11
12
13
14
15
16
17
18
19
Overlay
OpenMax
OpenCore Stagefright
Wi-Fi
Alarm Lights Battery
Android
Android
Android
www.topchuban.com
2012 5
IV
.................... 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
..................... 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
..................................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
.............................84
4.1 HAL ...................................84
4.1.1 HAL ........................84
4.1.2 ...................86
4.2 HAL .......................86
4.2.1 HAL moudle ....................86
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
................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_suspend...........140
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
VI
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
................. 164
6.1 MSM .................................... 164
6.1.1 MSM .......... 164
6.1.2 Snapdragon ............. 165
6.2 MSM ................... 166
6.3 MSM .................................... 168
6.3.1 Makefile ........................ 168
6.3.2 ........................... 170
6.3.3 .............................. 172
6.3.4 .................... 174
............... 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
....................... 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
....................... 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
......................... 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
............................. 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 ................................305
11.7 ALSA Audio ......312
11.7.1 ...312
11.7.2 Android ALSA
..................................313
11.7.3 OMAP Android
ALSA .............322
......................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
VII
12.6.2 Android Overlay
..........................346
...............349
13.1 OpenMax ............349
13.2 OpenMax ...........350
13.2.1 OpenMax ......350
13.2.2 OpenMax IL ........351
13.2.3 Android OpenMax .......354
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 IL
.....................................................363
13.4.1 ...........................364
13.4.2 TI OpenMax IL ....365
13.4.3 TI OpenMax IL
..................................368
.........................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 OSCL.................381
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
.................................415
15.1 .....................415
15.2 .........................417
VIII
15.2.1 .................... 417
15.2.2 ................ 418
15.2.3 .................... 419
15.3 ............. 424
................................. 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.so .... 448
16.4.4 Camera libcameraservice.so
........................................ 449
16.5 MSM Camera .... 454
16.6 OMAP Camera ... 457
.............................................. 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-Fi....... 469
17.1.5 Wi-Fi ............. 471
17.1.6 Android
Ethernet ..................... 473
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