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