注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)操作系統(tǒng)Linux驅(qū)動入門

Linux驅(qū)動入門

Linux驅(qū)動入門

定 價:¥49.00

作 者: 魏清 著
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 操作系統(tǒng) 計算機與互聯(lián)網(wǎng)

ISBN: 9787121224614 出版時間: 2014-03-01 包裝: 平裝
開本: 32開 頁數(shù): 320 字數(shù):  

內(nèi)容簡介

  本書主要是從Linux內(nèi)核、Linux總線和Linux子系統(tǒng)三個角度對Linux驅(qū)動進行介紹的,然后對字符設(shè)備、塊設(shè)備和網(wǎng)絡(luò)設(shè)備也分別做了大致介紹。從內(nèi)容上來講,本書包括4個部分:Linux內(nèi)核部分(第1~6章),主要包括Linux進程調(diào)度與進程管理、中斷機制、定時機制、并發(fā)與同步機制及內(nèi)存管理,通過對本篇內(nèi)容的學習,讀者可以掌握Linux內(nèi)核的基本概念;Linux總線部分(第7~13章),主要包括Platfrom總線、單總線、I2C總線、串口總線、PCI總線、SPI總線和USB總線,通過對本篇內(nèi)容的學習,讀者可以掌握設(shè)備是如何掛載到Linux內(nèi)核總線上的;Linux子系統(tǒng)部分(第14~19章),主要包括Keyboard子系統(tǒng),LED子系統(tǒng)、RTC子系統(tǒng)、Input子系統(tǒng)、Backlight子系統(tǒng)、Hwmon子系統(tǒng),通過對本篇內(nèi)容的學習,讀者可以掌握如何使用內(nèi)核中現(xiàn)有的子系統(tǒng),給設(shè)備編寫驅(qū)動;Linux驅(qū)動部分(第20~24章),主要包括看門狗驅(qū)動、LCD驅(qū)動、觸摸屏驅(qū)動、塊設(shè)備驅(qū)動和網(wǎng)絡(luò)設(shè)備驅(qū)動,通過對本篇內(nèi)容的學習,讀者可以掌握具體的設(shè)備驅(qū)動程序的設(shè)計方法。

作者簡介

  魏清,男,工學碩士,畢業(yè)于南京郵電大學通信與信息系統(tǒng)專業(yè),2011至今在蘇嵌從事嵌入式項目的研究和培訓工作,具有豐富的Linux驅(qū)動開發(fā)的經(jīng)驗。

圖書目錄

目 錄
第1章 內(nèi)核基礎(chǔ) 1
1.1 Linux內(nèi)核組成 1
1.2 Linux內(nèi)核的引導 2
1.3 處理器 3
1.4 存儲器 4
第2章 進程管理 5
2.1 進程調(diào)度 5
2.2 Linux調(diào)度的實現(xiàn) 5
2.3 搶占和上下文切換 6
2.4 進程概念 6
2.5 進程上下文 7
2.6 進程與線程的創(chuàng)建 7
2.7 孤兒進程 8
2.8 系統(tǒng)調(diào)用 8
2.9 內(nèi)核設(shè)計系統(tǒng)調(diào)用 9
第3章 中斷處理 11
3.1 中斷和中斷處理 11
3.2 中斷的下半部分 11
3.3 中斷下半部分的實現(xiàn) 12
第4章 定時計數(shù) 14
4.1 定時器基本概念 14
4.2 動態(tài)定時器的使用 15
第5章 并發(fā)同步 16
5.1 內(nèi)核同步與死鎖問題 16
5.2 解決并發(fā)同步的方法 17
第6章 內(nèi)存管理 19
6.1 內(nèi)存管理中基本概念 19
6.2 申請內(nèi)存的幾種方法 19
6.3 內(nèi)核棧 20
6.4 進程地址空間的基本概念 21
6.5 創(chuàng)建和撤銷內(nèi)存區(qū)域 22
6.6 頁表 22
6.7 頁高速緩存與頁回寫 23
第7章 Platform總線 25
7.1 Platform設(shè)備驅(qū)動概念 25
7.1.1 Platform總線 25
7.1.2 Platform設(shè)備 26
7.1.3 Platform驅(qū)動 29
7.2 平臺設(shè)備的資源 29
7.2.1 平臺數(shù)據(jù)和私有數(shù)據(jù)的區(qū)別 29
7.2.2 Platform設(shè)備資源的讀取 30
7.3 平臺設(shè)備驅(qū)動測試 30
7.3.1 Platform設(shè)備模塊代碼 31
7.3.2 Platform驅(qū)動模塊代碼 32
7.3.3 應(yīng)用層測試代碼 37
第8章 單總線 39
8.1 單總線驅(qū)動概述 39
8.2 單總線驅(qū)動移植 39
8.3 單總線驅(qū)動內(nèi)核代碼分析 40
8.3.1 master驅(qū)動分析 40
8.3.2 slave驅(qū)動分析 48
8.4 單總線驅(qū)動測試 52
8.5 脫離子系統(tǒng)的DS18B20驅(qū)動 53
第9章 I2C總線 58
9.1 系統(tǒng)理論 58
9.1.1 I2C驅(qū)動體系概述 58
9.1.2 驅(qū)動工程師需要做的事 58
9.2 內(nèi)核代碼 58
9.2.1 內(nèi)核/drivers/i2c目錄下文件分析 58
9.2.2 I2C核心 59
9.2.3 I2C總線驅(qū)動 59
9.2.4 I2C設(shè)備驅(qū)動 73
9.3 測試代碼 80
第10章 串口總線 83
10.1 系統(tǒng)理論 83
10.2 串口內(nèi)核配置 83
10.3 UART層內(nèi)核代碼 85
10.4 TTY層內(nèi)核代碼 88
10.5 線路規(guī)程內(nèi)核代碼 97
10.6 串口測試代碼 103
第11章 PCI總線 109
11.1 PCI總線理論 109
11.1.1 PCI總線的特點 109
11.1.2 PCI設(shè)備概述 109
11.1.3 查詢PCI總線和設(shè)備的命令 110
11.1.4 PCI總線架構(gòu) 110
11.2 PCI驅(qū)動 111
11.2.1 PCI尋找空間 111
11.2.2 PCI總線支持的設(shè)備 112
11.2.3 PCI驅(qū)動其他API 112
11.3 PCI驅(qū)動模型 112
11.4 PCI設(shè)備的枚舉過程 114
第12章 SPI總線 132
12.1 SPI理論介紹 132
12.2 SPI驅(qū)動移植 132
12.3 SPI設(shè)備和驅(qū)動的注冊 135
12.3.1 SPI主控設(shè)備的注冊 135
12.3.2 SPI接口設(shè)備的添加 136
12.3.3 SPI主控設(shè)備驅(qū)動的注冊 137
12.3.4 SPI接口設(shè)備的注冊 137
12.3.5 SPI接口設(shè)備驅(qū)動的注冊 138
12.4 SPI內(nèi)核代碼分析 139
12.5 SPI測試代碼 159
第13章 USB總線 162
13.1 USB總線理論 162
13.1.1 USB概述 162
13.1.2 USB主機控制器 162
13.1.3 USB設(shè)備與USB驅(qū)動的匹配 162
13.1.4 USB設(shè)備的邏輯結(jié)構(gòu)和端點的傳輸方式 163
13.1.5 USB的URB請求塊 163
13.1.6 USB的枚舉過程 164
13.2 USB總線驅(qū)動分析 164
13.2.1 USB驅(qū)動框架usb-skeleton.c 164
13.2.2 USB鼠標驅(qū)動 usbmouse.c 174
13.2.3 USB鍵盤驅(qū)動usbkbd.c 178
13.2.4 U盤驅(qū)動分析 183
13.3 U盤驅(qū)動測試 197
第14章 Keyboard子系統(tǒng) 198
14.1 Keyboard子系統(tǒng)移植與分析 198
14.2 Keyboard驅(qū)動測試 200
第15章 LED子系統(tǒng) 201
15.1 LED子系統(tǒng)移植與分析 201
15.2 LED驅(qū)動測試 205
第16章 RTC子系統(tǒng) 206
16.1 RTC子系統(tǒng)的移植與分析 206
16.2 RTC驅(qū)動測試 210
第17章 Input子系統(tǒng) 211
17.1 Input子系統(tǒng)系統(tǒng)理論 211
17.1.1 Input子系統(tǒng)概述 211
17.1.2 Input子系統(tǒng)幾個重要數(shù)據(jù)結(jié)構(gòu) 211
17.1.3 Input子系統(tǒng)核心層和事件處理層函數(shù)概述 214
17.2 內(nèi)核代碼 214
17.2.1 輸入子系統(tǒng)設(shè)備驅(qū)動層 214
17.2.2 輸入子系統(tǒng)核心層 224
17.2.3 輸入子系統(tǒng)事件處理層 227
17.3 測試代碼 229
17.3.1 設(shè)備驅(qū)動層代碼 230
17.3.2 應(yīng)用層測試代碼 232
17.3.3 測試過程和結(jié)果 233
第18章 Backlight背光子系統(tǒng) 234
18.1 Backlight背光子系統(tǒng)概述 234
18.2 PWM核心驅(qū)動 234
18.3 Backlight核心驅(qū)動 239
18.4 基于PWM&Backlight的蜂鳴器驅(qū)動 242
18.5 驅(qū)動測試 246
第19章 Hwmon子系統(tǒng) 247
19.1 Hwmon子系統(tǒng)概述 247
19.2 ADC核心驅(qū)動 247
19.3 Hwmon核心驅(qū)動 251
19.4 基于ADC&Hwmon的A/D驅(qū)動 252
19.5 驅(qū)動測試 258
第20章 看門狗驅(qū)動 259
20.1 看門狗驅(qū)動移植與分析 259
20.2 看門狗驅(qū)動測試 260
第21章 LCD驅(qū)動 261
21.1 LCD屏理論 261
21.1.1 LCD屏基本概念 261
21.1.2 幀緩沖的理解 261
21.2 Mini2440的X35型LCD移植 262
21.3 LCD文件層和驅(qū)動層設(shè)計思路 264
21.3.1 LCD驅(qū)動中幾個重要的數(shù)據(jù)結(jié)構(gòu) 265
21.3.2 LCD驅(qū)動層 268
21.3.3 LCD文件層 279
21.4 LCD驅(qū)動測試 284
第22章 觸摸屏驅(qū)動 286
22.1 觸摸屏理論概述 286
22.2 觸摸屏驅(qū)動分析 286
22.3 觸摸屏驅(qū)動測試 294
第23章 Linux下的塊設(shè)備驅(qū)動 296
23.1 塊設(shè)備驅(qū)動概論 296
23.2 塊設(shè)備驅(qū)動中幾個重要的數(shù)據(jù)結(jié)構(gòu) 296
23.3 使用I/O調(diào)度的塊設(shè)備驅(qū)動 298
23.4 塊設(shè)備驅(qū)動的測試 302
第24章 Linux下的網(wǎng)絡(luò)設(shè)備驅(qū)動 305
24.1 網(wǎng)絡(luò)設(shè)備驅(qū)動基礎(chǔ) 305
24.1.1 以太網(wǎng)基礎(chǔ)理論 305
24.1.2 Linux網(wǎng)絡(luò)驅(qū)動層次 305
24.2 網(wǎng)絡(luò)設(shè)備驅(qū)動移植 307
24.3 網(wǎng)絡(luò)設(shè)備驅(qū)動測試 308
參考文獻 309

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號