-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

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

( 簡體 字)
作者:林錫龍類別:1. -> 作業系統 -> Linux
   2. -> 程式設計 -> 驅動程式
譯者:
出版社:電子工業出版社嵌入式Linux驅動模板精講與項目實踐 3dWoo書號: 38649
詢問書籍請說出此書號!

缺書
NT售價: 295

出版日:5/1/2014
頁數:316
光碟數:1
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121230820
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

一、行業背景
嵌入式Linux驅動開發涉及的知識點比較多,要求開發者掌握的技能也比較多,且內核知識點比較分散,對于初學者來說門檻比較高,而嵌入式Linux在各行各業中已被廣泛應用,在物聯網、通信行業、航空航天、消費電子、汽車電子等行業中急需掌握嵌入式Linux軟件開發的研發人員。近年來,隨著嵌入式應用越來越廣泛,嵌入式Linux開發變得更加復雜,嵌入式Linux驅動開發已經成為嵌入式應用領域的一個重大課題。
二、關于本書
本書大部分內容基于專業培訓機構特訓的講稿。在專業培訓提倡的嵌入式Linux驅動的模板式教學中取得了很好的效果,在此之上結合一線研發經驗對驅動開發進行戰略性指導,其中很多關鍵點是作者花了很長時間實實在在整理出來的,旨在揭曉嵌入式Linux驅動中的各種機制,達到知其然且知其所以然的目的。
本書各章內容說明如下。
第1章為驅動總論,是驅動開發在高層次上的介紹。
第2章介紹的內核編程及基礎知識點是驅動開發的基礎,對驅動開發涉及的Linux內核中的各個知識點進行介紹,旨在掃清對Linux內核閱讀的障礙。
第3章介紹驅動模塊開發,涉及各種模塊移植中常見的設備方法,其中各個模板可以直接應用到實際研發中。
第4章結合Linux操作系統講解互斥機制在各種情況下的使用,重點分析各種機制的使用注意事項。
第5章重點介紹Linux中斷的上下部機制及Linux提供的各種接口,強調中斷程序設計的基本理念及設計手段。
第6章介紹Linux驅動中字符設備驅動的高級設備方法。
第7章在Linux子系統的層面上介紹各種高級設備驅動。
第8章重點介紹如何使用虛擬文件系統,這些實用技巧是一線研發的經驗總結。
第9章對設備驅動模型各個元素進行講解,并介紹如何一步步手動建立設備驅動模型模板。
第 10 章手把手帶領讀者建立最基本的文件系統,并制作各種常見的文件系統,其中穿插介紹各種實用技巧及實際研發工具。
第11章介紹一線研發人員使用的開發調試技巧,重點強調實用。
第12章結合V字形開發模型在嵌入式Linux驅動開發中的具體實施進行總結。
第13章介紹嵌入式Linux設備驅動編程規范。
本書附帶光盤一張,包含書中例程的源代碼、目標文件,以及各種相關的工具,光盤按照書中各個知識點建立相應文件夾存放。其中各個知識點配套的例程可以直接在Mini2440開發板上運行。驅動相應例程含有相應的例程配套使用。各個例程也作為相應Linux驅動開發的模版,可以直接修改并應用到具體項目開發中。

三、本書特色
一線研發實戰經驗積累,所有技巧及講解使用的工具都可以直接應用到實際開發工作中。
采用模板的方式對分散的各種驅動知識點進行講解,所有模板都可以直接引用。
對每個知識點都提供實際案例,從模塊的原理介紹,到系統層次的分析,圖文并茂,力求分析透徹。
提供了大量的驅動例程,這些例程可以快速應用在實際開發中,讀者可以直接運行調試。
結合實際研發工作對開發過程中的思考進行總結,重在實用。
四、作者介紹
本書由林錫龍編著,編著者在寫作過程中查閱了大量開源工具及互聯網上的資料,對各種資料的作者不能一一列舉,在此表示謝意。
由于時間倉促,書中程序和圖表較多,錯誤之處在所難免,請廣大讀者批評指正。作者電子郵箱:wlxl_1204@163.com。

編 著 者
內容簡介:

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

目錄:

第1章 驅動總論 (1)
1.1 總論 (1)
1.1.1 驅動在內核中的比例 (1)
1.1.2 驅動開發需要具備的能力 (1)
1.1.3 驅動開發重點關注的內容 (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 內核態文件操作 (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 模塊編譯流程細節 (38)
3.2.9 模塊編寫 (39)
3.3 宏觀分析Linux驅動 (39)
3.4 設備文件 (41)
3.5 設備管理系統 (46)
3.5.1 自動創建和管理設備文件揭秘 (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 靜態設定設備號方式 (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在應用層實現硬件操作 (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章 中斷系統 (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的實現:建立在等待隊列的基礎上 (117)
6.2.7 異步阻塞型I/O的實現:基于poll系統調用操作接口函數 (121)
6.3 設備復用 (126)
本章小結 (128)
第7章 高級類型驅動 (129)
7.1 misc類型驅動 (129)
7.1.1 概述 (129)
7.1.2 結構與流程分析 (129)
7.1.3 關于設備節點的創建 (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 重要的數據結構及相關聯系 (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章 虛擬文件系統 (178)
8.1 內核在線窗口——虛擬文件系統 (178)
8.2 proc文件系統 (179)
8.2.1 目錄介紹 (179)
8.2.2 創建目錄與文件 (184)

8.2.3 相關應用 (185)
8.3 sys文件系統 (186)
8.3.1 sys文件系統概述 (186)
8.3.2 sys文件目錄 (187)
8.3.3 sys文件系統接口函數與創建文件夾模板 (189)
本章小結 (192)
第9章 設備驅動模型 (193)
9.1 設備驅動模型概述 (193)
9.2 sys文件系統與設備驅動模型 (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子系統介紹 (220)
9.8.2 serio子系統框架 (220)
9.8.3 主要數據結構 (223)
本章小結 (229)
第10章 嵌入式Linux文件系統 (230)
10.1 文件系統介紹 (230)
10.2 創建最簡單的根文件系統 (233)
10.3 YAFFS文件系統移植 (241)
10.4 JFFS2文件系統制作 (250)
10.5 ramdisk文件系統制作 (250)
10.6 cramfs文件系統制作 (252)
本章小結 (253)
第11章 開發與調試技巧 (254)
11.1 vim使用 (254)
11.2 工具使用 (254)
11.3 printk使用技巧 (259)
11.4 使用proc在線打開打印開關 (260)
11.5 異常崩潰oops處理 (261)
11.6 動態修改模塊參數 (269)
11.7 使用devmem2操作物理地址 (269)
11.8 時間測量 (270)
11.9 善于使用開源項目 (270)
本章小結 (271)
第12章 底層驅動規劃與管理探索 (272)
12.1 底層驅動規劃探索 (272)
12.1.1 設計理念概述 (272)
12.1.2 底層平臺軟件設計 (273)
12.1.3 底層平臺軟件管理規則 (276)
12.1.4 獨立驅動模塊的版本管理 (276)
12.1.5 提供最基本的系統 (278)
12.1.6 驅動開發注意事項 (278)
12.1.7 版本庫 (279)
12.1.8 平臺版本構建發布 (282)
12.2 研發管理 (283)
12.2.1 嵌入式軟件研發管理暢想 (284)
12.2.2 嵌入式軟件V字形開發模式 (285)
12.3 軟件開發文檔 (286)
12.3.1 可行性分析報告 (286)
12.3.2 嵌入式軟件系統設計方案文檔 (289)
12.3.3 嵌入式軟件概要設計 (290)
12.3.4 嵌入式軟件詳細設計 (293)
12.3.5 案例分析 (294)
本章小結 (295)
第13章 Linux設備驅動編程規范 (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)
序: