資料介紹
這是一本介紹Linux設(shè)備驅(qū)動開發(fā)理論、框架與實例的書,Linux設(shè)備驅(qū)動開發(fā)詳解基于LDD6410開發(fā)板,以Linux2.6 版本內(nèi)核為藍本,詳細介紹自旋鎖、信號量、完成量、中斷頂/底半部、定時器、內(nèi)存和I/O映射以及異步通知、阻塞I/O、非阻塞I/O等Linux設(shè)備驅(qū)動理論;字符設(shè)備、塊設(shè)備、TTY設(shè)備、I2C設(shè)備、LCD設(shè)備、音頻設(shè)備、USB設(shè)備、網(wǎng)絡(luò)設(shè)備、PCI設(shè)備等Linux設(shè)備驅(qū)動的架構(gòu)和框架中各個復(fù)雜數(shù)據(jù)架構(gòu)和函數(shù)的關(guān)系,并講解了Linux驅(qū)動開發(fā)的大量實例,使讀者能夠獨立開發(fā)各類Linux設(shè)備驅(qū)動。
第1篇
Linux設(shè)備驅(qū)動入門
第1章 Linux設(shè)備驅(qū)動概述及開發(fā)環(huán)境構(gòu)建 2
第2章 驅(qū)動設(shè)計的硬件基礎(chǔ) 21
第3章 Linux內(nèi)核及內(nèi)核編程 53
第2篇
Linux設(shè)備驅(qū)動核心理論
第4章 Linux內(nèi)核模塊 82
第5章 Linux文件系統(tǒng)與設(shè)備文件系統(tǒng) 92
第6章 字符設(shè)備驅(qū)動 118
第7章 Linux設(shè)備驅(qū)動中的并發(fā)控制 139
第8章 Linux設(shè)備驅(qū)動中的阻塞與非阻塞I/O 161
第9章 Linux設(shè)備驅(qū)動中的異步通知與異步I/O 176
第10章 中斷與時鐘 193
第11章 內(nèi)存與I/O訪問 213
第12章 工程中的Linux設(shè)備驅(qū)動 242
第3篇
Linux設(shè)備驅(qū)動實例
第13章 Linux塊設(shè)備驅(qū)動 272
第14章 Linux終端設(shè)備驅(qū)動 304
第15章 Linux的I2C核心、總線與設(shè)備驅(qū)動 333
第16章 Linux網(wǎng)絡(luò)設(shè)備驅(qū)動 363
第17章 Linux音頻設(shè)備驅(qū)動 388
第18章 LCD設(shè)備驅(qū)動 440
第19章 Flash設(shè)備驅(qū)動 479
第20章 USB主機與設(shè)備驅(qū)動 507
第21章 PCI設(shè)備驅(qū)動 547
第4篇
Linux設(shè)備驅(qū)動調(diào)試、移植
第22章 Linux設(shè)備驅(qū)動的調(diào)試 564
第23章 Linux設(shè)備驅(qū)動的移植 602
參考文獻 631
任何一個計算機系統(tǒng)的運行都是系統(tǒng)中軟硬件協(xié)作的結(jié)果,沒有硬件的軟件是空中樓閣,而沒有軟件的硬件則只是一堆廢鐵。硬件是底層基礎(chǔ),是所有軟件得以運行的平臺,代碼最終會落實為硬件上的組合邏輯與時序邏輯;軟件則實現(xiàn)了具體應(yīng)用,它按照各種不同的業(yè)務(wù)需求而設(shè)計,滿足了用戶的需求。硬件較固定,軟件則很靈活,可以適應(yīng)各種復(fù)雜多變的應(yīng)用。可以說,計算機系統(tǒng)的軟硬件互相成就了對方。但是,軟硬件之間同樣存在著悖論,那就是軟件和硬件不應(yīng)該互相滲透到對方的領(lǐng)地。
為了盡可能快速地完成設(shè)計,應(yīng)用軟件工程師不想也不必關(guān)心硬件,而硬件工程師也難有足夠的閑暇和能力來顧及軟件。例如,應(yīng)用軟件工程師在調(diào)用套接字發(fā)送和接收數(shù)據(jù)包的時候,他不必關(guān)心網(wǎng)卡上的中斷、寄存器、存儲空間、I/O 端口、片選以及其他任何硬件詞匯;在使用 printf()函數(shù)輸出信息的時候,他不用知道底層究竟是怎樣把相應(yīng)的信息輸出到屏幕或串口。也就是說,應(yīng)用軟件工程師需要看到一個沒有硬件的純粹的軟件世界,硬件必須被透明地呈現(xiàn)給他們。誰來實現(xiàn)硬件對應(yīng)用軟件工程師的隱形?這個艱巨的任務(wù)就落在了驅(qū)動工程師的頭上。對設(shè)備驅(qū)動最通俗的解釋就是“驅(qū)使硬件設(shè)備行動”。
設(shè)備驅(qū)動與底層硬件直接打交道,按照硬件設(shè)備的具體工作方式讀寫設(shè)備寄存器,完成設(shè)備的輪詢、中斷處理、 DMA 通信,進行物理內(nèi)存向虛擬內(nèi)存的映射,最終使通信設(shè)備能夠收發(fā)數(shù)據(jù),使顯示設(shè)備能夠顯示文字和畫面,使存儲設(shè)備能夠記錄文件和數(shù)據(jù)。由此可見,設(shè)備驅(qū)動充當(dāng)了硬件和應(yīng)用軟件之間的紐帶,它使得應(yīng)用軟件只需要調(diào)用系統(tǒng)軟件的應(yīng)用編程接口(API)就可讓硬件去完成要求的工作。在系統(tǒng)中沒有操作系統(tǒng)的情況下,工程師可以根據(jù)硬件設(shè)備的特點自行定義接口,如對串口定義 SerialSend()、SerialRecv();對 LED 定義 LightOn()、LightOff();以及對 Flash 定義 FlashWrite()、FlashRead()等。而在有操作系統(tǒng)的情況下,設(shè)備驅(qū)動的架構(gòu)則由相應(yīng)的操作系統(tǒng)定義,驅(qū)動工程師必須按照相應(yīng)的架構(gòu)設(shè)計設(shè)備驅(qū)動,這樣,設(shè)備驅(qū)動才能良好地整合到操作系統(tǒng)的內(nèi)核中。驅(qū)動程序溝通著硬件和應(yīng)用軟件,而驅(qū)動工程師則溝通著硬件工程師和應(yīng)用軟件工程師。隨著通信、電子行業(yè)的迅速發(fā)展,全世界每天都會有大量的新芯片被生產(chǎn),大量的新電路板被設(shè)計,因此,也會有大量設(shè)備驅(qū)動需要開發(fā)。這些設(shè)備驅(qū)動,或運行在簡單的單任務(wù)環(huán)境中,或運行在 VxWorks、Linux、Windows 等多任務(wù)操作系統(tǒng)環(huán)境中,發(fā)揮著不可替代的作用。
- 圖解數(shù)字磁帶錄音機的PDF電子書免費下載 109次下載
- 現(xiàn)代無線電實驗的PDF電子書免費下載 285次下載
- 半導(dǎo)體收音機淺談的PDF電子書免費下載 171次下載
- 光學(xué)諧振腔的圖解分析與設(shè)計方法的PDF電子書免費下載 132次下載
- 無線電全息攝影的PDF電子書免費下載 54次下載
- MATLAB函數(shù)速查手冊PDF電子書免費下載 150次下載
- 電子管數(shù)據(jù)手冊合集PDF電子書免費下載 82次下載
- 51單片機100實例源碼的注釋詳細PDF電子書免費下載 220次下載
- Java基礎(chǔ)教程PDF電子書免費下載 66次下載
- Linux設(shè)備驅(qū)動開發(fā)詳解PDF電子書免費下載的 35次下載
- 基于最新的Linux 4.0內(nèi)核Linux設(shè)備驅(qū)動開發(fā)詳解Linux設(shè)備驅(qū)動開發(fā)詳解PDF電子書免費下載 257次下載
- 電冰箱快速維修PDF電子書免費下載 51次下載
- 家電維修1128例PDF電子書免費下載 207次下載
- 數(shù)字信號處理算法C語言實現(xiàn)PDF版電子書免費下載 0次下載
- 實用Linux教程電子書 0次下載
- Linux 驅(qū)動開發(fā)與應(yīng)用開發(fā),你知道多少? 871次閱讀
- 一文總結(jié)linux的platform驅(qū)動 1199次閱讀
- 電子書閱讀器內(nèi)置鋰電池供電自動切換電路 2021次閱讀
- 如何寫一個Linux設(shè)備驅(qū)動程序 4532次閱讀
- Linux設(shè)備驅(qū)動開發(fā)的基本知識 4393次閱讀
- Linux驅(qū)動到底能不能在應(yīng)用層開發(fā)驅(qū)動 6165次閱讀
- 米爾科技Linux設(shè)備驅(qū)動研究淺談 2035次閱讀
- 米爾科技LINUX設(shè)備驅(qū)動程序教程 2103次閱讀
- 基于PXA255開發(fā)板外圍字符設(shè)備的嵌入式Linux字符設(shè)備驅(qū)動設(shè)計與應(yīng)用 1199次閱讀
- 基于嵌入式Linux內(nèi)核的系統(tǒng)設(shè)備驅(qū)動程序開發(fā)設(shè)計 1209次閱讀
- 基于Linux2.6.30開發(fā)DS18B20的驅(qū)動程序的類型和文件操作接口函數(shù)詳解 1498次閱讀
- 驅(qū)動是如何工作的_Linux設(shè)備驅(qū)動的固件加載詳解 6278次閱讀
- 想要駕馭Linux驅(qū)動開發(fā),必須深刻理解Linux總線設(shè)備驅(qū)動框架 1w次閱讀
- 嵌入式Linux驅(qū)動開發(fā)基礎(chǔ)總結(jié)(上篇) 8518次閱讀
- 最新電子書拆解評測系列報道(一):打開你的眼界 1.2w次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發(fā)板設(shè)計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論