注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)LinuxLinux驅(qū)動程序開發(fā)實(shí)例

Linux驅(qū)動程序開發(fā)實(shí)例

Linux驅(qū)動程序開發(fā)實(shí)例

定 價(jià):¥55.00

作 者: 馮國進(jìn) 編著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: LINUX

ISBN: 9787111333159 出版時(shí)間: 2011-04-01 包裝: 平裝
開本: 16開 頁數(shù): 365 字?jǐn)?shù):  

內(nèi)容簡介

  《Linux驅(qū)動程序開發(fā)實(shí)例》專門介紹Linux設(shè)備驅(qū)動程序開發(fā),涵蓋了Linux驅(qū)動程序基礎(chǔ)、內(nèi)核移植、I2C驅(qū)動程序、LCD驅(qū)動程序、網(wǎng)絡(luò)驅(qū)動程序、USB驅(qū)動程序、輸入子系統(tǒng)驅(qū)動程序、塊設(shè)備驅(qū)動程序等內(nèi)容?!禠inux驅(qū)動程序開發(fā)實(shí)例》以實(shí)例為主線,是為Linux設(shè)備驅(qū)動程序開發(fā)人員量身打造的精品學(xué)習(xí)圖書和實(shí)戰(zhàn)指南?!禠inux驅(qū)動程序開發(fā)實(shí)例》提供了豐富的實(shí)例代碼和詳細(xì)的注釋,并附贈完整代碼光盤一張?!禠inux驅(qū)動程序開發(fā)實(shí)例》主要面向各層次的嵌入式Linux開發(fā)工程師,也可以作為各類嵌入式系統(tǒng)培訓(xùn)機(jī)構(gòu)的培訓(xùn)教材和高校計(jì)算機(jī)課程的教輔書籍。

作者簡介

暫缺《Linux驅(qū)動程序開發(fā)實(shí)例》作者簡介

圖書目錄

出版說明
前言
第1章 Linux設(shè)備驅(qū)動程序模型1
1.1 設(shè)備驅(qū)動程序基礎(chǔ)1
1.1.1 驅(qū)動程序的概念1
1.1.2 驅(qū)動程序的加載方式2
1.1.3 編寫可加載模塊3
1.1.4 帶參數(shù)的可加載模塊5
1.1.5 設(shè)備驅(qū)動程序的分類6
1.2 字符設(shè)備驅(qū)動程序原理7
1.2.1 file_operations結(jié)構(gòu)7
1.2.2 使用register_chrdev注冊字符設(shè)備9
1.2.3 使用cdev_add注冊字符設(shè)備11
1.2.4 字符設(shè)備的讀寫13
1.2.5 ioctl接口14
1.2.6 seek接口16
1.2.7 poll接口18
1.2.8 異步通知22
1.3 proc文件系統(tǒng)24
1.3.1 proc文件系統(tǒng)概述24
1.3.2 seq_file機(jī)制25
1.3.3 使用proc文件系統(tǒng)27
1.4 塊設(shè)備驅(qū)動程序32
1.4.1 Linux塊設(shè)備驅(qū)動程序原理32
1.4.2 簡單的塊設(shè)備驅(qū)動程序?qū)嵗?5
1.5 網(wǎng)絡(luò)設(shè)備驅(qū)動程序39
1.5.1 網(wǎng)絡(luò)設(shè)備的特殊性39
1.5.2 sk_buff結(jié)構(gòu)40
1.5.3 Linux網(wǎng)絡(luò)設(shè)備驅(qū)動程序架構(gòu)42
1.5.4 虛擬網(wǎng)絡(luò)設(shè)備驅(qū)動程序?qū)嵗?6
1.6 Linux 2.6設(shè)備管理機(jī)制50
1.6.1 kobject和kset50
1.6.2 sysfs文件系統(tǒng)51
1.6.3 設(shè)備模型層次52
1.6.4 platform的概念54
第2章 Linux內(nèi)核同步機(jī)制58
2.1 鎖機(jī)制58
2.1.1 自旋鎖58
2.1.2 讀寫鎖60
2.1.3 RCU61
2.2 互斥64
2.2.1 原子操作64
2.2.2 信號量65
2.2.3 讀寫信號量67
2.3 等待隊(duì)列68
2.3.1 等待隊(duì)列原理68
2.3.2 阻塞式I/O實(shí)例68
2.3.3 完成事件70
2.4 關(guān)閉中斷71
第3章 內(nèi)存管理與鏈表72
3.1 物理地址和虛擬地址72
3.2 內(nèi)存分配與釋放72
3.3 IO端口到虛擬地址的映射73
3.3.1 靜態(tài)映射73
3.3.2 動態(tài)映射75
3.4 內(nèi)核空間到用戶空間的映射76
3.4.1 內(nèi)核空間到用戶空間的地址映射原理76
3.4.2 mmap地址映射實(shí)例78
3.5 內(nèi)核鏈表80
3.5.1 Linux內(nèi)核中的鏈表80
3.5.2 內(nèi)核鏈表實(shí)例81
第4章 延遲處理83
4.1 內(nèi)核線程83
4.2 軟中斷機(jī)制85
4.2.1 軟中斷原理85
4.2.2 tasklet87
4.3 工作隊(duì)列89
4.3.1 工作隊(duì)列原理89
4.3.2 工作隊(duì)列實(shí)例91
4.4 內(nèi)核時(shí)間92
4.4.1 Linux中的時(shí)間概念92
4.4.2 Linux中的延遲93
4.4.3 內(nèi)核定時(shí)器93
第5章 簡單設(shè)備驅(qū)動程序96
5.1 寄存器訪問96
5.1.1 S3C6410地址映射96
5.1.2 S3C6410看門狗驅(qū)動程序?qū)嵗?8
5.1.3 S3C6410蜂鳴器驅(qū)動程序?qū)嵗?02
5.2 電平控制107
5.2.1 S3C6410 LED驅(qū)動程序?qū)嵗?07
5.2.2 掃描型S3C6410按鍵驅(qū)動程序?qū)嵗?09
5.3 時(shí)序產(chǎn)生112
5.3.1 時(shí)序圖原理112
5.3.2 AT24C02芯片原理112
5.3.3 AT24C02驅(qū)動程序開發(fā)實(shí)例115
5.4 硬中斷處理123
5.4.1 硬中斷處理原理123
5.4.2 中斷型S3C6410按鍵驅(qū)動程序?qū)嵗?27
5.5 Linux I/O端口控制132
5.5.1 Linux I/O端口讀寫132
5.5.2 在應(yīng)用層訪問Linux I/O端口133
5.5.3 /dev/port設(shè)備134
第6章 深入Linux內(nèi)核135
6.1 嵌入式Linux系統(tǒng)構(gòu)成135
6.2 Linux內(nèi)核導(dǎo)讀136
6.2.1 Linux內(nèi)核組成136
6.2.2 Linux的代碼結(jié)構(gòu)137
6.2.3 內(nèi)核Makefile138
6.2.4 S3C6410硬件初始化139
6.3 Linux文件系統(tǒng)141
6.3.1 虛擬文件系統(tǒng)141
6.3.2 根文件系統(tǒng)143
6.3.3 文件系統(tǒng)加載143
6.3.4 ext3文件系統(tǒng)145
6.4 Flash文件系統(tǒng)145
6.4.1 MTD設(shè)備145
6.4.2 MTD字符設(shè)備148
6.4.3 MTD塊設(shè)備150
6.4.4 cramfs文件系統(tǒng)153
6.4.5 JFFS2文件系統(tǒng)153
6.4.6 YAFFS文件系統(tǒng)155
6.4.7 文件系統(tǒng)總結(jié)156
6.5 Linux內(nèi)核移植156
6.5.1 體系配置156
6.5.2 添加yaffs2157
6.5.3 Nand flash驅(qū)動程序移植157
6.5.4 配置啟動參數(shù)159
6.5.5 移植RTC驅(qū)動程序160
6.6 根文件系統(tǒng)制作162
6.6.1 Busybox162
6.6.2 shell基礎(chǔ)165
6.6.3 根文件系統(tǒng)構(gòu)建實(shí)例166
6.7 udev模型167
6.7.1 udev模型原理167
6.7.2 mdev的使用167
第7章 I2C總線驅(qū)動程序169
7.1 Linux的I2C驅(qū)動程序架構(gòu)169
7.1.1 I2C適配器169
7.1.2 I2C算法170
7.1.3 I2C驅(qū)動程序結(jié)構(gòu)170
7.1.4 I2C從設(shè)備171
7.1.5 i2c-dev設(shè)備層171
7.2 Linux I2C驅(qū)動程序開發(fā)174
7.2.1 S3C2410X的I2C控制器174
7.2.2 S3C2410X的I2C驅(qū)動程序分析175
7.3 S3C2410的I2C訪問實(shí)例182
7.4 I2C客戶端驅(qū)動程序185
第8章 TTY與串口驅(qū)動程序190
8.1 TTY概念190
8.2 Linux TTY驅(qū)動程序體系190
8.2.1 TTY驅(qū)動程序調(diào)用關(guān)系190
8.2.2 TTY驅(qū)動程序原理191
8.3 線路規(guī)程194
8.4 串口驅(qū)動程序與TTY196
8.4.1 串口設(shè)備驅(qū)動程序原理196
8.4.2 S3C6410的串口驅(qū)動程序?qū)嵗?99
8.5 TTY應(yīng)用層202
第9章 網(wǎng)絡(luò)設(shè)備驅(qū)動程序205
9.1 DM9000網(wǎng)卡驅(qū)動程序開發(fā)205
9.1.1 DM9000原理205
9.1.2 DM9000X驅(qū)動程序分析207
9.1.3 DM9000網(wǎng)口驅(qū)動程序移植215
9.2 NFS根文件系統(tǒng)搭建219
9.2.1 主機(jī)配置219
9.2.2 NFS根文件系統(tǒng)搭建實(shí)例220
9.3 netlink Socket224
9.3.1 netlink機(jī)制224
9.3.2 netlink應(yīng)用層編程228
9.3.3 netlink驅(qū)動程序?qū)嵗?29
第10章 framebuffer驅(qū)動程序232
10.1 Linux framebuffer驅(qū)動程序原理232
10.1.1 framebuffer核心數(shù)據(jù)結(jié)構(gòu)232
10.1.2 framebuffer操作接口234
10.1.3 framebuffer驅(qū)動程序的文件接口236
10.1.4 framebuffer驅(qū)動程序框架236
10.2 S3C6410 顯示控制器238
10.3 S3C6410 LCD驅(qū)動程序?qū)嵗?43
10.4 framebuffer應(yīng)用層250
10.5 Qt4界面系統(tǒng)移植251
第11章 輸入子系統(tǒng)驅(qū)動程序253
11.1 Linux輸入子系統(tǒng)概述253
11.1.1 input_dev結(jié)構(gòu)253
11.1.2 輸入事件255
11.2 input_handler256
11.2.1 Input Handler層256
11.2.2 常用的Input Handler259
11.3 輸入設(shè)備應(yīng)用層261
11.4 鍵盤輸入設(shè)備驅(qū)動程序?qū)嵗?62
11.5 event接口267
11.6 觸摸屏驅(qū)動程序?qū)嵗?70
11.6.1 S3C6410觸摸屏控制器270
11.6.2 S3C6410觸摸屏驅(qū)動程序設(shè)計(jì)273
11.7 觸摸屏校準(zhǔn)282
11.7.1 觸摸屏校準(zhǔn)原理282
11.7.2 利用TSLIB庫校準(zhǔn)觸摸屏282
第12章 USB驅(qū)動程序284
12.1 USB體系概述284
12.1.1 USB系統(tǒng)組成284
12.1.2 USB主機(jī)284
12.1.3 USB設(shè)備邏輯層次285
12.2 Linux USB驅(qū)動程序體系287
12.2.1 USB總體結(jié)構(gòu)287
12.2.2 USB設(shè)備驅(qū)動程序287
12.2.3 主機(jī)控制器驅(qū)動程序288
12.2.4 USB請求塊urb289
12.2.5 USB請求塊的填充291
12.3 S3C6410 USB主機(jī)控制器驅(qū)動程序292
12.3.1 USB主機(jī)控制器驅(qū)動程序分析292
12.3.2 S3C6410 USB驅(qū)動程序加載294
12.4 USB鍵盤設(shè)備驅(qū)動程序分析296
12.5 USB Gadget驅(qū)動程序301
12.5.1 Linux USB Gadget驅(qū)動程序301
12.5.2 Linux USB Gadget驅(qū)動程序?qū)嵗?02
第13章 音頻設(shè)備驅(qū)動程序303
13.1 ALSA音頻體系303
13.2 ALSA驅(qū)動層API304
13.2.1 聲卡和設(shè)備管理304
13.2.2 PCM API304
13.2.3 控制與混音API305
13.2.4 AC97 API306
13.2.5 SOC層驅(qū)動307
13.3 ALSA驅(qū)動程序?qū)嵗?08
13.3.1 S3C6410的AC97控制單元308
13.3.2 S3C6410聲卡電路原理309
13.3.3 S3C6410的數(shù)字音頻接口310
13.3.4 wm9713的數(shù)字音頻接口313
13.4 ALSA音頻編程接口316
13.4.1 ALSA PCM接口實(shí)例316
13.4.2 ALSA MIDI接口實(shí)例320
13.4.3 ALSA mixer接口實(shí)例321
13.4.4 ALSA timer接口實(shí)例322
第14章 video4linux2視頻驅(qū)動程序327
14.1 video4linux2驅(qū)動程序架構(gòu)327
14.1.1 video4linux2驅(qū)動程序的注冊327
14.1.2 v4l2_fops接口331
14.1.3 常用的結(jié)構(gòu)332
14.1.4 video4linux2的ioctl函數(shù)333
14.2 S3C6410攝像頭驅(qū)動程序分析333
14.2.1 電路原理333
14.2.2 驅(qū)動程序分析334
14.3 video4linux2應(yīng)用層實(shí)例339
第15章 SD卡驅(qū)動程序346
15.1 Linux SD卡驅(qū)動程序體系346
15.1.1 SD卡電路原理346
15.1.2 MMC卡驅(qū)動程序架構(gòu)347
15.1.3 MMC卡驅(qū)動程序相關(guān)結(jié)構(gòu)347
15.1.4 MMC卡塊設(shè)備驅(qū)動程序350
15.1.5 SD卡主機(jī)控制器接口驅(qū)動程序356
15.2 S3C6410 SD卡控制器驅(qū)動程序分析360
15.2.1 電路原理360
15.2.2 S3C6410 SDHCI驅(qū)動程序原理360
15.2.3 SD卡的加載實(shí)例364
參考文獻(xiàn)366

本目錄推薦

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