注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡數(shù)據(jù)庫數(shù)據(jù)結構與算法(第3版)

數(shù)據(jù)結構與算法(第3版)

數(shù)據(jù)結構與算法(第3版)

定 價:¥42.00

作 者: 楊柳 著
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 大學教材 大中專教材教輔

購買這本書可以去


ISBN: 9787111457954 出版時間: 2014-04-01 包裝: 平裝
開本: 16開 頁數(shù): 字數(shù):  

內容簡介

  《數(shù)據(jù)結構與算法(第3版)》根據(jù)作者多年的從業(yè)經驗,從開發(fā)實戰(zhàn)出發(fā),全面深入地講解了Android驅動開發(fā)。本書以Android驅動本質為源,深入淺出地剖析了Android驅動程序開發(fā)要用到的DMA、中斷、同步、等待隊列與signal等多項技術。本書還從系統(tǒng)的角度描述了Android驅動與Android其他部分的有機結合,為Android用戶提供各類智能輸入/輸出服務。本書適合從事Linux開發(fā)、Android底層驅動開發(fā)、系統(tǒng)框架開發(fā),以及Android底層模塊驗證測試等的相關軟件工程人員閱讀;也適合從事Android智能手機其他領域的研發(fā)人員參考;還適合作為大、中專院校與培訓機構的相關實踐性指導教材。

作者簡介

暫缺《數(shù)據(jù)結構與算法(第3版)》作者簡介

圖書目錄

前言
第一篇 Android的前世今生——Android概述篇
第1章 Android的前世今生  2
1.1 Android的起源  2
1.2 開放手機聯(lián)盟  2
1.3 開源與相關協(xié)議  3
1.4 系統(tǒng)的升級與發(fā)展  3
第2章 Android體系結構  4
2.1 四層空間基本結構  4
2.1.1 Android系統(tǒng)底層開發(fā)  6
2.1.2 應用程序開發(fā)  7
2.2 Android代碼目錄結構  7
2.3 Android開發(fā)環(huán)境搭建  8
第二篇 勿于浮砂筑高臺——Linux驅動基礎篇
第3章 Linux 內核綜述  14
3.1 OS基本概念  14
3.1.1 多用戶系統(tǒng)  15
3.1.2 用戶和組  15
3.1.3 進程  16
3.1.4 Linux單核架構  16
3.2 Linux內核綜述  18
3.2.1 進程/內核模型綜述  18
3.2.2 內存管理綜述  26
3.2.3 文件系統(tǒng)綜述  29
3.2.4 設備驅動簡述  34
第4章 Linux內核編程與內核模塊  35
4.1 Linux內核源代碼目錄結構  35
4.2 Linux內核的編譯與啟動  36
4.3 Linux內核的C編程  37
4.4 Linux內核模塊基礎與骨架  43
4.5 Linux模塊的加載與卸載  46
4.6 Linux模塊的參數(shù)與導出符號  46
4.7 Linux模塊的使用計數(shù)  48
第5章 Linux文件系統(tǒng)  50
5.1 Linux文件系統(tǒng)概述  50
5.1.1 Linux文件系統(tǒng)的目錄結構  50
5.1.2 設備驅動與Linux文件系統(tǒng)的關聯(lián)  51
5.2 Linux設備文件系統(tǒng)  55
5.2.1 devfs設備文件系統(tǒng)  55
5.2.2 udev設備文件系統(tǒng)  56
5.2.3 sysfs文件系統(tǒng)與Linux設備  57
5.2.4 udev的組成  67
5.2.5 udev規(guī)則文件  68
第6章 Linux字符設備驅動  70
6.1 Linux字符設備驅動結構  70
6.1.1 cdev結構體  70
6.1.2 分配和釋放設備號  71
6.1.3 file_operations結構體  72
6.1.4 Linux字符設備驅動的組成  74
6.2 一個字符設備驅動例子——virtualchar  77
6.2.1 頭文件、宏及設備結構體  77
6.2.2 加載與卸載設備驅動  78
6.2.3 驅動函數(shù)實現(xiàn)  79
6.2.4 驅動設備私有數(shù)據(jù)  83
6.3 對virtualchar設備的訪問  90
第7章 Linux設備驅動中的內存與I/O訪問  92
7.1 CPU與內存和I/O之間的故事  92
7.1.1內存空間與I/O空間  92
7.1.2 內存管理單元MMU  93
7.2 Linux內存管理  97
7.3 Linux內存訪問  99
7.4 Linux I/O訪問  102
7.4.1 訪問I/O  102
7.4.2 申請與釋放I/O資源  105
7.4.3 I/O訪問流程  107
7.4.4 設備地址與用戶空間的映射  107
7.5 DMA  114
7.5.1 DMA與Cache的一致性  114
7.5.2 Linux下的DMA編程  114
第8章 Linux設備驅動中的中斷  125
8.1 Linux中斷及中斷處理架構  125
8.2 Linux中斷編程  126
8.2.1 申請和釋放中斷  126
8.2.2 使能與屏蔽中斷  127
8.2.3 底半部機制  127
8.2.4 中斷共享  130
8.3 Linux定時器  132
8.4 Linux延時處理  134
8.4.1 短延時  135
8.4.2 長延時  135
8.4.3 睡眠延時  136
第9章 Linux設備驅動中的并發(fā)  138
9.1 Linux中的并發(fā)與競爭  138
9.2 Linux中常用的同步訪問技術  139
9.2.1 中斷屏蔽  139
9.2.2 原子操作  140
9.2.3 自旋鎖  142
9.2.4 信號量  147
9.2.5 互斥燈  152
9.3 增加并發(fā)控制的virtualchar驅動  153
第10章 Linux設備的阻塞式與非阻塞式訪問  157
10.1 阻塞式與非阻塞式訪問  157
10.1.1 等待隊列  158
10.1.2 支持阻塞操作的virtualfifo設備驅動  162
10.2 Linux的輪詢訪問  167
10.2.1 應用程序中的輪詢編程  167
10.2.2 設備驅動中的輪詢編程  168
10.2.3 支持輪詢操作的virtualfifo驅動  169
第11章 Linux設備驅動中的異步訪問  171
11.1 Linux 2.6 中的異步訪問  171
11.1.1 異步訪問概念與GNU C庫函數(shù)  171
11.1.2 使用信號作為異步訪問的通知  175
11.1.3 使用回調函數(shù)作為異步訪問的通知  177
11.1.4 異步訪問與設備驅動  178
11.2 異步Fifo驅動例子  180
11.2.1 在virtualfifo驅動中增加異步通知  180
11.2.2 在用戶空間驗證virtualfifo的異步通知  182
第12章 Linux塊設備驅動  184
12.1 塊設備的I/O操作特點  184
12.2 Linux塊設備驅動結構  184
12.2.1 block_device_operations結構體  184
12.2.2 gendisk結構體  186
12.2.3 request與bio結構體  188
12.2.4 塊設備驅動注冊與注銷  197
12.3 Linux塊設備驅動的模塊加載與卸載  198
12.4 塊設備的打開/釋放/IOCTL  200
第13章 Linux網絡設備驅動  202
13.1 Linux網絡設備驅動體系結構  202
13.2 Linux網絡設備驅動結構  203
13.3 Linux網絡設備驅動I/O實現(xiàn)  204
13.3.1 網絡設備初始化  204
13.3.2 網絡數(shù)據(jù)包的收發(fā)  205
第三篇 實踐出真知——Android驅動實踐篇
第14章 Android HAL層的設計  208
14.1 Android HAL概述  208
14.2 為Android開發(fā)虛擬驅動virtualio  209
14.3 Android集成C程序訪問virtualio  220
14.4 Android通過HAL訪問virtualio  222
14.4.1 virtualio HAL模塊實現(xiàn)  222
14.4.2 實現(xiàn)訪問virtualio HAL模塊JNI  226
14.4.3 在Framework層增加virtualio服務  229
第15章 Framebuffer子系統(tǒng)  231
15.1 Linux Framebuffer一般子系統(tǒng)  231
15.1.1 Framebuffer數(shù)據(jù)結構  231
15.1.2 Framebuffer驅動  237
15.2 Android Framebuffer子系統(tǒng)實踐  238
15.2.1 硬件基礎  238
15.2.2 CPU側顯示驅動模塊  240
15.2.3 LCM驅動模塊  242
15.3 Android系統(tǒng)對Framebuffer的使用  247
第16章 Input子系統(tǒng)  249
16.1 Linux Input一般子系統(tǒng)  249
16.1.1 Input數(shù)據(jù)結構  250
16.1.2 Input內核模塊  252
16.2 Android Input子系統(tǒng)實踐  257
16.2.1 硬件基礎  258
16.2.2 Input驅動模塊  258
16.3 Android系統(tǒng)對Input的使用  263
第17章 V4L2子系統(tǒng)  266
17.1 Linux V4L2一般子系統(tǒng)  266
17.1.1 V4L2數(shù)據(jù)結構  266
17.1.2 V4L2接口  268
17.1.3 V4L2虛擬驅動vivi  273
17.2 Android V4L2實踐  279
17.2.1 硬件基礎  280
17.2.2 CPU側CCIC驅動模塊  281
17.2.3 OV5642模組驅動模塊  283
17.3 Android系統(tǒng)對V4L2的使用  286
第18章 Binder IPC通信子系統(tǒng)  288
18.1 Binder驅動概述  288
18.2 Binder通信模型  288
18.3 Binder驅動  291
18.3.1 Binder相關的結構體  292
18.3.2 Android Binder子系統(tǒng)的架構設計  292
18.4 Binder的工作流程  293
第19章 USB子系統(tǒng)  295
19.1 USB協(xié)議基礎知識  295
19.1.1 USB物理連接  295
19.1.2 USB通信協(xié)議  297
19.2 USB子系統(tǒng)底層  299
19.2.1 USB Core  299
19.2.2 Linux USB gadget三層架構  303
19.3 Android USB子系統(tǒng)實踐  305
19.3.1 Android IPC通信補充  305
19.3.2 Android USB Mass Storage流程分析  309
第20章 Bootloader引導子系統(tǒng)  312
20.1 Bootloader流程分析  312
20.1.1 Bootloader概述  312
20.1.2 U-Boot啟動流程分析  314
20.2 Bootloader修改指南  317
20.2.1 開機第一幀圖的修改  317
20.2.2 開機模式的定制  318
參考文獻  321

本目錄推薦

掃描二維碼
Copyright ? 讀書網 www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號