注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡計算機組織與體系結構嵌入式Linux驅動模板精講與項目實踐

嵌入式Linux驅動模板精講與項目實踐

嵌入式Linux驅動模板精講與項目實踐

定 價:¥59.00

作 者: 林錫龍 著
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 計算機/網絡 計算機體系結構

購買這本書可以去


ISBN: 9787121230820 出版時間: 2014-05-01 包裝: 平裝
開本: 其他 頁數: 316 字數:  

內容簡介

  本書從實用的角度對嵌入式Linux驅動設計開發(fā)從理論到實踐做了比較深入的介紹,以Mini2440開發(fā)板為基礎,對各種常見驅動開發(fā)進行模板化設計訓練,各種模板可以直接應用到實際項目開發(fā)中,其中的一線研發(fā)技巧和案例分析可以供專業(yè)特訓和廣大嵌入式Linux開發(fā)者實戰(zhàn)使用。本書共分為13章,書中介紹的各種開發(fā)技巧對實際應用有很大的借鑒意義,在各個知識點介紹中穿插實際項目的經驗分享,包括實際研發(fā)的管理經驗介紹,對驅動開發(fā)初學者和實際設計開發(fā)人員有很大益處,也可作為一線研發(fā)公司的崗前培訓教程。本書重點在于內核驅動的講解,以及模板式開發(fā)的訓練,力求完全揭曉各種Linux開發(fā)中的技巧和模糊點,是一本比較實用的驅動開發(fā)訓練教程。

作者簡介

  8年嵌入式軟件一線研發(fā)經驗,曾在華為等通信公司從事底層軟件研發(fā)、Linux驅動開發(fā)工作。多次擔任專業(yè)培訓機構高級培訓師,主講嵌入式Linux驅動開發(fā)。

圖書目錄

目 錄
第1章 驅動總論 (1)
1.1 總論 (1)
1.1.1 驅動在內核中的比例 (1)
1.1.2 驅動開發(fā)需要具備的能力 (1)
1.1.3 驅動開發(fā)重點關注的內容 (2)
1.2 驅動理論與思想 (3)
1.2.1 分類思想 (4)
1.2.2 分層思想 (4)
1.2.3 分離思想 (10)
1.2.4 總線思想 (11)
本章小結 (11)
第2章 內核編程及基礎知識點 (12)
2.1 內核線程 (12)
2.2 內核定時器 (16)
2.3 鏈表 (18)
2.4 內存操作 (18)
2.5 I/O端口 (20)
2.6 內核相關宏 (21)
2.7 內核態(tài)文件操作 (22)
2.8 內核通知鏈 (25)
本章小結 (30)
第3章 模塊與常用字符設備方法 (31)
3.1 Linux驅動 (31)
3.2 內核驅動模塊剖析 (32)
3.2.1 內核模塊 (34)
3.2.2 模塊工具集 (34)
3.2.3 模塊文件結構分析 (36)
3.2.4 內核管理 (37)
3.2.5 Modutils工具包及Module-init-tools移植 (37)
3.2.6 符號 (37)
3.2.7 驅動模塊之間的依賴 (38)
3.2.8 模塊編譯流程細節(jié) (38)
3.2.9 模塊編寫 (39)
3.3 宏觀分析Linux驅動 (39)
3.4 設備文件 (41)
3.5 設備管理系統(tǒng) (46)
3.5.1 自動創(chuàng)建和管理設備文件揭秘 (46)
3.5.2 devfs、mdev和udev (46)
3.5.3 udev基本原理與流程 (47)
3.5.4 熱插拔與冷插拔 (48)
3.5.5 class (48)
3.6 字符設備驅動 (50)
3.6.1 原始方式 (51)
3.6.2 靜態(tài)設定設備號方式 (51)
3.6.3 使用udev工具自動生成設備文件方式 (52)
3.6.4 簡潔型字符設備驅動――misc字符設備驅動方式 (53)
3.7 設備操作方法file_operations (55)
3.7.1 ioctl和unlocked_ioctl操作 (57)
3.7.2 read/write設備方法 (65)
3.7.3 llseek設備方法 (70)
3.7.4 mmap設備方法 (70)
3.7.5 利用mmap在應用層實現(xiàn)硬件操作 (75)
本章小結 (76)
第4章 同步和互斥 (77)
4.1 概述 (77)
4.2 基本概念 (77)
4.3 互斥和同步機制 (79)
4.4 互斥 (79)
4.4.1 屏蔽中斷 (79)
4.4.2 原子操作 (80)
4.4.3 自旋鎖 (81)
4.4.4 信號量 (82)
4.4.5 自旋鎖與信號量 (83)
4.4.6 互斥體:專用于互斥 (84)
4.5 同步 (84)
本章小結 (86)
第5章 中斷系統(tǒng) (87)
5.1 中斷概述 (87)
5.2 基本概念 (87)
5.3 中斷原理及使用注意事項 (89)
5.4 中斷接口函數 (89)
5.4.1 中斷申請和釋放 (89)
5.4.2 中斷共享 (90)
5.4.3 中斷例程之一:按鍵中斷 (92)
5.4.4 中斷例程之二:A/D轉換驅動 (96)
5.5 底半部:tasklet、工作隊列 (104)
5.6 時間管理 (106)
本章小結 (107)
第6章 設備高級特性 (108)
6.1 字符設備file_operations的高級特性 (108)
6.2 Linux設備驅動的I/O模型 (109)
6.2.1 同步阻塞I/O (109)
6.2.2 同步非阻塞I/O (109)
6.2.3 異步阻塞I/O (110)
6.2.4 異步非阻塞I/O (110)
6.2.5 異步通知 (110)
6.2.6 同步阻塞型I/O的實現(xiàn):建立在等待隊列的基礎上 (117)
6.2.7 異步阻塞型I/O的實現(xiàn):基于poll系統(tǒng)調用操作接口函數 (121)
6.3 設備復用 (126)
本章小結 (128)
第7章 高級類型驅動 (129)
7.1 misc類型驅動 (129)
7.1.1 概述 (129)
7.1.2 結構與流程分析 (129)
7.1.3 關于設備節(jié)點的創(chuàng)建 (130)
7.2 input類型驅動 (130)
7.2.1 input驅動概述 (130)
7.2.2 三個主要結構體 (133)
7.2.3 Input驅動步驟 (136)
7.3 觸摸屏驅動 (144)
7.4 I2C驅動 (150)
7.4.1 I2C總線接口 (150)
7.4.2 I2C內核驅動層及相關文件分析 (151)
7.4.3 重要的數據結構及相關聯(lián)系 (153)
7.4.4 流程分析 (157)
7.4.5 i2c-tools (165)
7.5 塊設備驅動 (169)
7.5.1 塊設備驅動分析 (169)
7.5.2 制作一個塊設備例子:RamDisk驅動 (174)
本章小結 (177)
第8章 虛擬文件系統(tǒng) (178)
8.1 內核在線窗口――虛擬文件系統(tǒng) (178)
8.2 proc文件系統(tǒng) (179)
8.2.1 目錄介紹 (179)
8.2.2 創(chuàng)建目錄與文件 (184)
8.2.3 相關應用 (185)
8.3 sys文件系統(tǒng) (186)
8.3.1 sys文件系統(tǒng)概述 (186)
8.3.2 sys文件目錄 (187)
8.3.3 sys文件系統(tǒng)接口函數與創(chuàng)建文件夾模板 (189)
本章小結 (192)
第9章 設備驅動模型 (193)
9.1 設備驅動模型概述 (193)
9.2 sys文件系統(tǒng)與設備驅動模型 (194)
9.3 認識設備驅動模型 (195)
9.4 兩大基石kobject和kset (197)
9.4.1 內核對象kobject (197)
9.4.2 另外一個基石kset (199)
9.5 subsystem (203)
9.6 三角關系核心――總線、設備、驅動 (204)
9.6.1 總線 (204)
9.6.2 設備 (207)
9.6.3 驅動 (209)
9.7 platform總線 (211)
9.8 serio總線 (220)
9.8.1 serio子系統(tǒng)介紹 (220)
9.8.2 serio子系統(tǒng)框架 (220)
9.8.3 主要數據結構 (223)
本章小結 (229)
第10章 嵌入式Linux文件系統(tǒng) (230)
10.1 文件系統(tǒng)介紹 (230)
10.2 創(chuàng)建最簡單的根文件系統(tǒng) (233)
10.3 YAFFS文件系統(tǒng)移植 (241)
10.4 JFFS2文件系統(tǒng)制作 (250)
10.5 ramdisk文件系統(tǒng)制作 (250)
10.6 cramfs文件系統(tǒng)制作 (252)
本章小結 (253)
第11章 開發(fā)與調試技巧 (254)
11.1 vim使用 (254)
11.2 工具使用 (254)
11.3 printk使用技巧 (259)
11.4 使用proc在線打開打印開關 (260)
11.5 異常崩潰oops處理 (261)
11.6 動態(tài)修改模塊參數 (269)
11.7 使用devmem2操作物理地址 (269)
11.8 時間測量 (270)
11.9 善于使用開源項目 (270)
本章小結 (271)
第12章 底層驅動規(guī)劃與管理探索 (272)
12.1 底層驅動規(guī)劃探索 (272)
12.1.1 設計理念概述 (272)
12.1.2 底層平臺軟件設計 (273)
12.1.3 底層平臺軟件管理規(guī)則 (276)
12.1.4 獨立驅動模塊的版本管理 (276)
12.1.5 提供最基本的系統(tǒng) (278)
12.1.6 驅動開發(fā)注意事項 (278)
12.1.7 版本庫 (279)
12.1.8 平臺版本構建發(fā)布 (282)
12.2 研發(fā)管理 (283)
12.2.1 嵌入式軟件研發(fā)管理暢想 (284)
12.2.2 嵌入式軟件V字形開發(fā)模式 (285)
12.3 軟件開發(fā)文檔 (286)
12.3.1 可行性分析報告 (286)
12.3.2 嵌入式軟件系統(tǒng)設計方案文檔 (289)
12.3.3 嵌入式軟件概要設計 (290)
12.3.4 嵌入式軟件詳細設計 (293)
12.3.5 案例分析 (294)
本章小結 (295)
第13章 Linux設備驅動編程規(guī)范 (296)
13.1 基本原則 (296)
13.2 布局 (297)
13.3 基本格式 (299)
13.4 對齊 (300)
13.5 空行空格 (301)
13.6 注釋 (301)
13.7 命名 (302)
13.8 函數 (302)
13.9 可靠性 (303)
13.10 其他 (303)
本章小結 (305)
參考文獻 (306)

本目錄推薦

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