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

Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解

Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解

定 價(jià):¥89.00

作 者: 華清遠(yuǎn)見(jiàn)嵌入式培訓(xùn)中心,宋寶華
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: Linux

ISBN: 9787115172396 出版時(shí)間: 2008-02-01 包裝: 平裝
開本: 16 頁(yè)數(shù): 686 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書是一本介紹Linux設(shè)備驅(qū)動(dòng)開發(fā)理論、框架與實(shí)例的書,本書以Linux 2.6版本內(nèi)核為藍(lán)本,詳細(xì)介紹自旋鎖、信號(hào)量、完成量、中斷頂/底半部、定時(shí)器、內(nèi)存和I/O映射以及異步通知、阻塞I/O、非阻塞I/O等Linux設(shè)備驅(qū)動(dòng)理論;字符設(shè)備、塊設(shè)備、TTY設(shè)備、I2C設(shè)備、LCD設(shè)備、音頻設(shè)備、USB設(shè)備、網(wǎng)絡(luò)設(shè)備、PCI設(shè)備等Linux設(shè)備驅(qū)動(dòng)的架構(gòu)和框架中各個(gè)復(fù)雜數(shù)據(jù)架構(gòu)和函數(shù)的關(guān)系,并講解了大量Linux驅(qū)動(dòng)開發(fā)的大量實(shí)例,使讀者能夠獨(dú)立開發(fā)各類Linux設(shè)備驅(qū)動(dòng)。 本書內(nèi)容全面,實(shí)例豐富,操作性強(qiáng),語(yǔ)言通俗易懂,適合廣大Linux開發(fā)人員、嵌入式工程師參考使用。

作者簡(jiǎn)介

暫缺《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》作者簡(jiǎn)介

圖書目錄

第1篇 Linux設(shè)備驅(qū)動(dòng)入門
 第1章 設(shè)備驅(qū)動(dòng)概述
  1.1 設(shè)備驅(qū)動(dòng)的作用
  1.2 無(wú)操作系統(tǒng)時(shí)的設(shè)備驅(qū)動(dòng)
  1.3 有操作系統(tǒng)時(shí)的設(shè)備驅(qū)動(dòng)
  1.4 Linux設(shè)備驅(qū)動(dòng)
   1.4.1 設(shè)備的分類及特點(diǎn)
   1.4.2 Linux設(shè)備驅(qū)動(dòng)與整個(gè)軟硬件系統(tǒng)的關(guān)系
   1.4.3 編寫Linux設(shè)備驅(qū)動(dòng)的技術(shù)基礎(chǔ)
   1.4.4 Linux設(shè)備驅(qū)動(dòng)的學(xué)習(xí)方法
  1.5 設(shè)備驅(qū)動(dòng)的HelloWorld:LED驅(qū)動(dòng)
   1.5.1 無(wú)操作系統(tǒng)時(shí)的LED驅(qū)動(dòng)
   1.5.2 Linux系統(tǒng)下的LED驅(qū)動(dòng)
 第2章 驅(qū)動(dòng)設(shè)計(jì)的硬件基礎(chǔ)
  2.1 處理器
   2.1.1 通用處理器
   2.1.2 數(shù)字信號(hào)處理器
  2.2 存儲(chǔ)器
  2.3 接口與總線
   2.3.1 串口
   2.3.2 I2C總線
   2.3.3 USB
   2.3.4 以太網(wǎng)接口
   2.3.5 ISA總線
   2.3.6 PCI和cPCI
  2.4 CPLD和FPGA
   2.5 原理圖分析
   2.5.1 原理圖分析的內(nèi)容
   2.5.2 原理圖的分析方法
  2.6 硬件時(shí)序分析
   2.6.1 時(shí)序分析的概念
   2.6.2 典型硬件時(shí)序
  2.7 儀器儀表使用
   2.7.1 萬(wàn)用表
   2.7.2 示波器
   2.7.3 邏輯分析儀
  2.8 總結(jié)
 第3章 Linux內(nèi)核及內(nèi)核編程
  3.1 Linux內(nèi)核的發(fā)展與演變
  3.2 Linux2.6內(nèi)核的特點(diǎn)
  3.3 Linux內(nèi)核的組成
   3.3.1 Linux內(nèi)核源代碼目錄結(jié)構(gòu)
   3.3.2 Linux內(nèi)核的組成部分
   3.3.3 Linux內(nèi)核空間與用戶空間
  3.4 Linux內(nèi)核的編譯及加載
   3.4.1 Linux內(nèi)核的編譯
   3.4.2 Kconfig和Makefile
   3.4.3 Linux內(nèi)核的引導(dǎo)
  3.5 Linux下的C編程
   3.5.1 Linux程序命名習(xí)慣
   3.5.2 GNUC與ANSIC
   3.5.3 do{}while(0)
   3.5.4 goto
  3.6 總結(jié)
第2篇 Linux設(shè)備驅(qū)動(dòng)核心理論
 第4章 Linux內(nèi)核模塊
  4.1 Linux內(nèi)核模塊簡(jiǎn)介
  4.2 Linux內(nèi)核模塊的程序結(jié)構(gòu)
  4.3 模塊加載函數(shù)
  4.4 模塊卸載函數(shù)
  4.5 模塊參數(shù)
  4.6 導(dǎo)出符號(hào)
  4.7 模塊聲明與描述
  4.8 模塊的使用計(jì)數(shù)
  4.9 模塊的編譯
  4.10 模塊與GPL
  4.11 總結(jié)
 第5章 Linux文件系統(tǒng)與設(shè)備文件系統(tǒng)
  5.1 Linux文件操作
   5.1.1 文件操作的相關(guān)系統(tǒng)調(diào)用
   5.1.2 C庫(kù)函數(shù)的文件操作
  5.2 Linux文件系統(tǒng)
   5.2.1 Linux文件系統(tǒng)目錄結(jié)構(gòu)
   5.2.2 Linux文件系統(tǒng)與設(shè)備驅(qū)動(dòng)
  5.3 devfs設(shè)備文件系統(tǒng)
  5.4 udev設(shè)備文件系統(tǒng)
   5.4.1 udev與devfs的區(qū)別
   5.4.2 sysfs文件系統(tǒng)與Linux設(shè)備模型
   5.4.3 udev的組成
   5.4.4 udev規(guī)則文件
   5.4.5 創(chuàng)建和配置udev
  5.5 總結(jié)
 第6章 字符設(shè)備驅(qū)動(dòng)
  6.1 Linux字符設(shè)備驅(qū)動(dòng)結(jié)構(gòu)
   6.1.1 cdev結(jié)構(gòu)體
   6.1.2 分配和釋放設(shè)備號(hào)
   6.1.3 file_operations結(jié)構(gòu)體
   6.1.4 Linux字符設(shè)備驅(qū)動(dòng)的組成
  6.2 globalmem虛擬設(shè)備實(shí)例描述
  6.3 globalmem設(shè)備驅(qū)動(dòng)
   6.3.1 頭文件、宏及設(shè)備結(jié)構(gòu)體
   6.3.2 加載與卸載設(shè)備驅(qū)動(dòng)
   6.3.3 讀寫函數(shù)
   6.3.4 seek()函數(shù)
   6.3.5 ioctl()函數(shù)
   6.3.6 使用文件私有數(shù)據(jù)
  6.4 globalmem驅(qū)動(dòng)在用戶空間的驗(yàn)證
  6.5 總結(jié)
 第7章 Linux設(shè)備驅(qū)動(dòng)中的并發(fā)控制
  7.1 并發(fā)與競(jìng)態(tài)
  7.2 中斷屏蔽
  7.3 原子操作
   7.3.1 整型原子操作
   7.3.2 位原子操作
  7.4 自旋鎖
   7.4.1 自旋鎖的使用
   7.4.2 讀寫自旋鎖
   7.4.3 順序鎖
   7.4.4 讀-拷貝-更新
  7.5 信號(hào)量
   7.5.1 信號(hào)量的使用
   7.5.2 信號(hào)量用于同步
   7.5.3 完成量用于同步
   7.5.4 自旋鎖vs信號(hào)量
   7.5.5 讀寫信號(hào)量
  7.6 互斥體
  7.7 增加并發(fā)控制后的globalmem驅(qū)動(dòng)
  7.8 總結(jié)
 第8章 Linux設(shè)備驅(qū)動(dòng)中的阻塞與非阻塞I/O
  8.1 阻塞與非阻塞I/O
   8.1.1 等待隊(duì)列
   8.1.2 支持阻塞操作的globalfifo設(shè)備驅(qū)動(dòng)
   8.1.3 在用戶空間驗(yàn)證globalfifo的讀寫
  8.2 輪詢操作
   8.2.1 輪詢的概念與作用
   8.2.2 應(yīng)用程序中的輪詢編程
   8.2.3 設(shè)備驅(qū)動(dòng)中的輪詢編程
  8.3 支持輪詢操作的globalfifo驅(qū)動(dòng)
   8.3.1 在globalfifo驅(qū)動(dòng)中增加輪詢操作
   8.3.2 在用戶空間驗(yàn)證globalfifo設(shè)備的輪詢
  8.4 總結(jié)
 第9章 Linux設(shè)備驅(qū)動(dòng)中的異步通知與異步I/O
  9.1 異步通知的概念與作用
  9.2 Linux異步通知編程
   9.2.1 Linux信號(hào)
   9.2.2 信號(hào)的接收
   9.2.3 信號(hào)的釋放
  9.3 支持異步通知的globalfifo驅(qū)動(dòng)
   9.3.1 在globalfifo驅(qū)動(dòng)中增加異步通知
   9.3.2 在用戶空間驗(yàn)證globalfifo的異步通知
  9.4 Linux2.6異步I/O
   9.4.1 AIO概念與GNUC庫(kù)函數(shù)
   9.4.2 使用信號(hào)作為AIO的通知
   9.4.3 使用回調(diào)函數(shù)作為AIO的通知
   9.4.4 AIO與設(shè)備驅(qū)動(dòng)
  9.5 總結(jié)
 第10章 中斷與時(shí)鐘
  10.1 中斷與定時(shí)器
  10.2 Linux中斷處理程序架構(gòu)
  10.3 Linux中斷編程
   10.3.1 申請(qǐng)和釋放中斷
   10.3.2 使能和屏蔽中斷
   10.3.3 底半部機(jī)制
   10.3.4 實(shí)例:S3C2410實(shí)時(shí)鐘中斷
  10.4 中斷共享
  10.5 內(nèi)核定時(shí)器
   10.5.1 內(nèi)核定時(shí)器編程
   10.5.2 實(shí)例:秒字符設(shè)備
  10.6 內(nèi)核延時(shí)
   10.6.1 短延遲
   10.6.2 長(zhǎng)延遲
   10.6.3 睡著延遲
  10.7 總結(jié)
 第11章 內(nèi)存與I/O訪問(wèn)
  11.1 CPU與內(nèi)存和I/O
   11.1.1 內(nèi)存空間與I/O空間
   11.1.2 內(nèi)存管理單元MMU
  11.2 Linux內(nèi)存管理
  11.3 內(nèi)存存取
   11.3.1 用戶空間內(nèi)存動(dòng)態(tài)申請(qǐng)
   11.3.2 內(nèi)核空間內(nèi)存動(dòng)態(tài)申請(qǐng)
   11.3.3 虛擬地址與物理地址關(guān)系
  11.4 設(shè)備I/O端口和I/O內(nèi)存的訪問(wèn)
   11.4.1 LinuxI/O端口和I/O內(nèi)存訪問(wèn)接口
   11.4.2 申請(qǐng)與釋放設(shè)備I/O端口和I/O內(nèi)存
   11.4.3 設(shè)備I/O端口和I/O內(nèi)存訪問(wèn)流程
   11.4.4 將設(shè)備地址映射到用戶空間
  11.5 I/O內(nèi)存靜態(tài)映射
  11.6 DMA
   11.6.1 DMA與Cache一致性
   11.6.2 Linux下的DMA編程
  11.7 總結(jié)
 第12章 Linux字符設(shè)備驅(qū)動(dòng)綜合實(shí)例
  12.1 按鍵的設(shè)備驅(qū)動(dòng)
   12.1.1 按鍵的硬件原理
   12.1.2 按鍵驅(qū)動(dòng)中的數(shù)據(jù)結(jié)構(gòu)
   12.1.3 按鍵驅(qū)動(dòng)的模塊加載和卸載函數(shù)
   12.1.4 按鍵設(shè)備驅(qū)動(dòng)中斷、定時(shí)器處理程序
   12.1.5 按鍵設(shè)備驅(qū)動(dòng)的打開、釋放函數(shù)
   12.1.6 按鍵設(shè)備驅(qū)動(dòng)讀函數(shù)
  12.2 觸摸屏的設(shè)備驅(qū)動(dòng)
   12.2.1 觸摸屏的硬件原理
   12.2.2 觸摸屏設(shè)備驅(qū)動(dòng)中數(shù)據(jù)結(jié)構(gòu)
   12.2.3 觸摸屏驅(qū)動(dòng)中的硬件控制
   12.2.4 觸摸屏驅(qū)動(dòng)模塊加載和卸載函數(shù)
   12.2.5 觸摸屏驅(qū)動(dòng)中斷、定時(shí)器處理程序
   12.2.6 觸摸屏設(shè)備驅(qū)動(dòng)的打開、釋放函數(shù)
   12.2.7 觸摸屏設(shè)備驅(qū)動(dòng)的讀函數(shù)
   12.2.8 觸摸屏設(shè)備驅(qū)動(dòng)的輪詢與異步通知
   12.2.9 Linux輸入子系統(tǒng)
   12.3 DSPHPI的設(shè)備驅(qū)動(dòng)
   12.3.1 HPI接口的硬件原理
   12.3.2 HPI接口設(shè)備驅(qū)動(dòng)中數(shù)據(jù)結(jié)構(gòu)
   12.3.3 HPI接口設(shè)備驅(qū)動(dòng)的讀寫函數(shù)
  12.4 NVRAM設(shè)備驅(qū)動(dòng)
   12.4.1 NVRAM設(shè)備驅(qū)動(dòng)的數(shù)據(jù)結(jié)構(gòu)
   12.4.2 NVRAM設(shè)備驅(qū)動(dòng)的模塊加載與卸載函數(shù)
   12.4.3 NVRAM設(shè)備驅(qū)動(dòng)讀寫函數(shù)
   12.4.4 NVRAM設(shè)備驅(qū)動(dòng)的seek函數(shù)
  12.5 看門狗設(shè)備驅(qū)動(dòng)
   12.5.1 看門狗硬件原理
   12.5.2 看門狗驅(qū)動(dòng)中的數(shù)據(jù)結(jié)構(gòu)
   12.5.3 看門狗驅(qū)動(dòng)模塊的加載和卸載函數(shù)
   12.5.4 看門狗驅(qū)動(dòng)探測(cè)和移除函數(shù)
   12.5.5 看門狗驅(qū)動(dòng)的掛起和恢復(fù)函數(shù)
   12.5.6 看門狗驅(qū)動(dòng)的打開和釋放函數(shù)
   12.5.7 看門狗驅(qū)動(dòng)寫函數(shù)
  12.6 總結(jié)
第3篇 Linux設(shè)備驅(qū)動(dòng)實(shí)例
 第13章 Linux塊設(shè)備驅(qū)動(dòng)
  13.1 塊設(shè)備的I/O操作特點(diǎn)
  13.2 Linux塊設(shè)備驅(qū)動(dòng)結(jié)構(gòu)
   13.2.1 block_device_operations結(jié)構(gòu)體
   13.2.2 gendisk結(jié)構(gòu)體
   13.2.3 request與bio結(jié)構(gòu)體
   13.2.4 塊設(shè)備驅(qū)動(dòng)注冊(cè)與注銷
  13.3 Linux塊設(shè)備驅(qū)動(dòng)的模塊加載與卸載
  13.4 塊設(shè)備的打開與釋放
  13.5 塊設(shè)備驅(qū)動(dòng)的ioctl函數(shù)
  13.6 塊設(shè)備驅(qū)動(dòng)的I/O請(qǐng)求處理
   13.6.1 使用請(qǐng)求隊(duì)列
   13.6.2 不使用請(qǐng)求隊(duì)列
  13.7 實(shí)例1:RamDisk驅(qū)動(dòng)
   13.7.1 RamDisk的硬件原理
   13.7.2 RamDisk驅(qū)動(dòng)模塊的加載與卸載
   13.7.3 RamDisk設(shè)備驅(qū)動(dòng)block_device_operations及成員函數(shù)
   13.7.4 RamDiskI/O請(qǐng)求處理
  13.8 實(shí)例2:IDE硬盤設(shè)備驅(qū)動(dòng)
   13.8.1 IDE硬盤設(shè)備原理
   13.8.2 IDE硬盤設(shè)備驅(qū)動(dòng)的block_device_operations及成員函數(shù)
   13.8.3 IDE硬盤設(shè)備驅(qū)動(dòng)的I/O請(qǐng)求處理
   13.8.4 在內(nèi)核中增加對(duì)新系統(tǒng)IDE設(shè)備的支持
  13.9 總結(jié)
 第14章 Linux終端設(shè)備驅(qū)動(dòng)
  14.1 終端設(shè)備
  14.2 終端設(shè)備驅(qū)動(dòng)結(jié)構(gòu)
  14.3 終端設(shè)備驅(qū)動(dòng)的初始化與釋放
   14.3.1 模塊加載與卸載函數(shù)
   14.3.2 打開與關(guān)閉函數(shù)
  14.4 數(shù)據(jù)發(fā)送和接收
  14.5 tty線路設(shè)置
   14.5.1 線路設(shè)置用戶空間接口
   14.5.2 tty驅(qū)動(dòng)的set_termios函數(shù)
   14.5.3 tty驅(qū)動(dòng)的tiocmget和tiocmset函數(shù)
   14.5.4 tty驅(qū)動(dòng)的ioctl函數(shù)
  14.6 UART設(shè)備驅(qū)動(dòng)
  14.7 S3C2410UART的驅(qū)動(dòng)實(shí)例
   14.7.1 S3C2410串口硬件描述
   14.7.2 S3C2410串口驅(qū)動(dòng)的數(shù)據(jù)結(jié)構(gòu)
   14.7.3 S3C2410串口驅(qū)動(dòng)的初始化與釋放
   14.7.4 S3C2410串口數(shù)據(jù)收發(fā)
   14.7.5 S3C2410串口線路設(shè)置
  14.8 總結(jié)
 第15章 Linux的I2C核心、總線與設(shè)備驅(qū)動(dòng)
  15.1 Linux的I2C體系結(jié)構(gòu)
  15.2 LinuxI2C核心
  15.3 LinuxI2C總線驅(qū)動(dòng)
   15.3.1 I2C適配器驅(qū)動(dòng)加載與卸載
   15.3.2 I2C總線通信方法
  15.4 LinuxI2C設(shè)備驅(qū)動(dòng)
   15.4.1 LinuxI2C設(shè)備驅(qū)動(dòng)的模塊加載與卸載
   15.4.2 LinuxI2C設(shè)備驅(qū)動(dòng)的i2c_driver成員函數(shù)
   15.4.3 LinuxI2C設(shè)備驅(qū)動(dòng)的文件操作接口
   15.4.4 Linux的i2c-dev.c文件分析
  15.5 S3C2410I2C總線驅(qū)動(dòng)實(shí)例
   15.5.1 S3C2410I2C控制器硬件描述
   15.5.2 S3C2410I2C總線驅(qū)動(dòng)總體分析
   15.5.3 S3C2410I2C適配器驅(qū)動(dòng)的模塊加載與卸載
   15.5.4 S3C2410I2C總線通信方法
  15.6 SAA7113H視頻AD芯片的I2C設(shè)備驅(qū)動(dòng)實(shí)例
   15.6.1 SAA7113H視頻AD芯片硬件描述
   15.6.2 SAA7113H視頻AD芯片驅(qū)動(dòng)的模塊加載與卸載
   15.6.3 SAA7113H設(shè)備驅(qū)動(dòng)的i2c_driver成員函數(shù)
  15.7 總結(jié)
 第16章 Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)
  16.1 Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)的結(jié)構(gòu)
   16.1.1 網(wǎng)絡(luò)協(xié)議接口層
   16.1.2 網(wǎng)絡(luò)設(shè)備接口層
   16.1.3 設(shè)備驅(qū)動(dòng)功能層
   16.1.4 網(wǎng)絡(luò)設(shè)備與媒介層
  16.2 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)的注冊(cè)與注銷
  16.3 網(wǎng)絡(luò)設(shè)備的初始化
  16.4 網(wǎng)絡(luò)設(shè)備的打開與釋放
  16.5 數(shù)據(jù)發(fā)送流程
  16.6 數(shù)據(jù)接收流程
  16.7 網(wǎng)絡(luò)連接狀態(tài)
  16.8 參數(shù)設(shè)置和統(tǒng)計(jì)數(shù)據(jù)
  16.9 CS8900網(wǎng)卡設(shè)備驅(qū)動(dòng)實(shí)例
   16.9.1 CS8900網(wǎng)卡硬件描述
   16.9.2 CS8900網(wǎng)卡驅(qū)動(dòng)設(shè)計(jì)分析
   16.9.3 CS8900網(wǎng)卡注冊(cè)、初始化與注銷
   16.9.4 CS8900網(wǎng)卡發(fā)送數(shù)據(jù)流程
   16.9.5 CS8900網(wǎng)卡接收數(shù)據(jù)流程
  16.10 總結(jié)
 第17章 Linux音頻設(shè)備驅(qū)動(dòng)
  17.1 數(shù)字音頻設(shè)備
  17.2 音頻設(shè)備硬件接口
   17.2.1 PCM接口
   17.2.2 IIS接口
   17.2.3 AC97接口
  17.3 LinuxOSS音頻設(shè)備驅(qū)動(dòng)
   17.3.1 OSS驅(qū)動(dòng)的組成
   17.3.2 mixer接口
   17.3.3 dsp接口
   17.3.4 OSS用戶空間編程
  17.4 LinuxALSA音頻設(shè)備驅(qū)動(dòng)
   17.4.1 ALSA的組成
   17.4.2 card和組件管理
   17.4.3 PCM設(shè)備
   17.4.4 控制接口
   17.4.5 AC97API接口
   17.4.6 ALSA用戶空間編程
  17.5 S3C2410+UDA1341OSS驅(qū)動(dòng)實(shí)例
   17.5.1 S3C2410與UDA1341接口硬件描述
   17.5.2 注冊(cè)dsp和mixer接口
   17.5.3 mixer接口的I/O控制函數(shù)
   17.5.4 dsp接口音頻數(shù)據(jù)傳輸
  17.6 SA1100+UDA1341ALSA驅(qū)動(dòng)實(shí)例
   17.6.1 card注冊(cè)與注銷
   17.6.2 PCM設(shè)備的實(shí)現(xiàn)
   17.6.3 控制接口的實(shí)現(xiàn)
  17.7 PXA255+AC97ALSA驅(qū)動(dòng)實(shí)例
  17.8 總結(jié)
 第18章 LCD設(shè)備驅(qū)動(dòng)
  18.1 LCD硬件原理
  18.2 幀緩沖
   18.2.1 幀緩沖的概念
   18.2.2 顯示緩沖區(qū)與顯示點(diǎn)
   18.2.3 Linux幀緩沖相關(guān)數(shù)據(jù)結(jié)構(gòu)與函數(shù)
  18.3 Linux幀緩沖設(shè)備驅(qū)動(dòng)結(jié)構(gòu)
  18.4 幀緩沖設(shè)備驅(qū)動(dòng)的模塊加載與卸載函數(shù)
  18.5 幀緩沖設(shè)備顯示緩沖區(qū)的申請(qǐng)與釋放
  18.6 幀緩沖設(shè)備的參數(shù)設(shè)置
   18.6.1 定時(shí)參數(shù)
   18.6.2 像素時(shí)鐘
   18.6.3 顏色位域
   18.6.4 固定參數(shù)
  18.7 幀緩沖設(shè)備驅(qū)動(dòng)的fb_ops成員函數(shù)
  18.8 LCD設(shè)備驅(qū)動(dòng)的讀寫、mmap和ioctl函數(shù)
  18.9 幀緩沖設(shè)備的用戶空間訪問(wèn)
  18.10 Linux圖形用戶界面
   18.10.1 Qt-X11/QtEmbedded/Qtopia
   18.10.2 Microwindows/Nano-X
   18.10.3 MiniGUI
  18.11 實(shí)例:S3C2410LCD設(shè)備驅(qū)動(dòng)
   18.11.1 S3C2410LCD控制器硬件描述
   18.11.2 S3C2410LCD驅(qū)動(dòng)的模塊加載與卸載函數(shù)
   18.11.3 S3C2410LCD驅(qū)動(dòng)的探測(cè)與移除函數(shù)
   18.11.4 S3C2410LCD驅(qū)動(dòng)掛起與恢復(fù)函數(shù)
   18.11.5 S3C2410LCD驅(qū)動(dòng)的fb_ops成員函數(shù)
  18.12 總結(jié)
 第19章 Flash設(shè)備驅(qū)動(dòng)
  19.1 LinuxFlash驅(qū)動(dòng)結(jié)構(gòu)
   19.1.1 LinuxMTD系統(tǒng)層次
   19.1.2 LinuxMTD系統(tǒng)接口
   19.1.3 MTD用戶空間編程
  19.2 NORFlash驅(qū)動(dòng)
  19.3 NANDFlash驅(qū)動(dòng)
  19.4 NORFlash驅(qū)動(dòng)實(shí)例:S3C2410外圍的NORFlash驅(qū)動(dòng)
  19.5 NANDFlash驅(qū)動(dòng)實(shí)例:S3C2410外圍的NANDFlash驅(qū)動(dòng)
   19.5.1 S3C2410NAND控制器硬件描述
   19.5.2 nand_chip初始化和成員函數(shù)
   19.5.3 NAND設(shè)備驅(qū)動(dòng)初始化與釋放
  19.6 Flash文件系統(tǒng)的建立
   19.6.1 Flash轉(zhuǎn)換層
   19.6.2 CramFS
   19.6.3 JFFS/JFFS2
   19.6.4 YAFFS/YAFFS2
  19.7 總結(jié)
 第20章 USB主機(jī)與設(shè)備驅(qū)動(dòng)
  20.1 LinuxUSB驅(qū)動(dòng)層次
   20.1.1 主機(jī)側(cè)與設(shè)備側(cè)USB驅(qū)動(dòng)
   20.1.2 設(shè)備、配置、接口、端點(diǎn)
  20.2 USB主機(jī)驅(qū)動(dòng)
   20.2.1 USB主機(jī)驅(qū)動(dòng)的整體結(jié)構(gòu)
   20.2.2 實(shí)例:S3C2410USB主機(jī)驅(qū)動(dòng)
  20.3 USB設(shè)備驅(qū)動(dòng)
   20.3.1 USB設(shè)備驅(qū)動(dòng)整體結(jié)構(gòu)
   20.3.2 USB請(qǐng)求塊(URB)
   20.3.3 探測(cè)和斷開函數(shù)
   20.3.4 USB骨架程序
  20.4 USB設(shè)備驅(qū)動(dòng)實(shí)例
   20.4.1 USB串口驅(qū)動(dòng)
   20.4.2 USB鍵盤驅(qū)動(dòng)
  20.5 總結(jié)
 第21章 PCI設(shè)備驅(qū)動(dòng)
  21.1 PCI總線與配置空間
   21.1.1 PCI總線的Linux描述
   21.1.2 PCI設(shè)備的Linux描述
   21.1.3 PCI配置空間訪問(wèn)
  21.2 PCI設(shè)備驅(qū)動(dòng)結(jié)構(gòu)
   21.2.1 pci_driver結(jié)構(gòu)體
   21.2.2 PCI設(shè)備驅(qū)動(dòng)的組成
   21.2.3 舊版內(nèi)核的PCI設(shè)備探測(cè)
  21.3 實(shí)例:Intel810主板聲卡驅(qū)動(dòng)
  21.4 總結(jié)
第4篇 Linux設(shè)備驅(qū)動(dòng)測(cè)試、移植
 第22章 Linux設(shè)備驅(qū)動(dòng)的調(diào)試
  22.1 Linux開發(fā)環(huán)境建設(shè)
   22.1.1 實(shí)驗(yàn)室建設(shè)
   22.1.2 工具鏈
   22.1.3 串口工具
  22.2 GDB調(diào)試器用法
   22.2.1 GDB基本用法
   22.2.2 DDD圖形界面調(diào)試工具
  22.3 Linux內(nèi)核調(diào)試
  22.4 內(nèi)核打印信息-printk()
  22.5 使用/proc
  22.6 Oops
  22.7 監(jiān)視工具
  22.8 內(nèi)核調(diào)試器
   22.8.1 kcore
   22.8.2 KDB
   22.8.3 KGDB
  22.9 使用仿真器調(diào)試內(nèi)核
  22.10 應(yīng)用程序調(diào)試
  22.11 總結(jié)
 第23章 Linux設(shè)備驅(qū)動(dòng)的移植
  23.1 編寫可移植的設(shè)備驅(qū)動(dòng)
   23.1.1 可移植的數(shù)據(jù)類型
   23.1.2 結(jié)構(gòu)體對(duì)界
   23.1.3 LittleEndian與BigEndian
   23.1.4 內(nèi)存頁(yè)面大小
  23.2 巧用同類設(shè)備驅(qū)動(dòng)
   23.2.1 巧用demo板驅(qū)動(dòng)
   23.2.2 巧用類似芯片的驅(qū)動(dòng)程序
   23.2.3 借用芯片廠商的范例程序
  23.3 從Linux2.4移植設(shè)備驅(qū)動(dòng)到Linux2.6
  23.4 Linux與其他操作系統(tǒng)之間的驅(qū)動(dòng)移植
  23.5 總結(jié)
參考文獻(xiàn)

本目錄推薦

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