資料介紹
世界各地都有人在鉆研Linux內(nèi)核,大多是在寫設備驅(qū)動程序。盡管每個驅(qū)動程序都不一樣,而且你還要知道自己設備的特殊性,但是這些設備驅(qū)動程序的許多原則和基本技術技巧都是一樣的。通過本書,可以學會寫自己的設備驅(qū)動程序,并且可以鉆研內(nèi)核的相關部分。本書涉及到的是設備無關編程技巧,不會將例子跟特殊設備綁定在一起。
?
本章沒有實際編寫代碼。但我要介紹一些關于Linux內(nèi)核的背景概念,這樣到我們稍后開始介紹實際編程時,就很順利了。
當你學習編寫驅(qū)動程序的時候,你也會發(fā)現(xiàn)很多關于Linux內(nèi)核的知識,這對理解你機器怎么工作很有幫助,并且還可以知道為什么你的機器沒有希望的那么快,或者為什么不按照你象要它做的那樣做。我們會逐漸介紹一些新概念,先從簡單的驅(qū)動程序開始,每介紹一些新概念都會看到相關例子代碼,這些代碼都不需要特殊硬件。
非常高興現(xiàn)在終于可以開始編程了。本章將介紹模塊編程和內(nèi)核編程所需的所有必要的概念。我們將要不多的篇幅來編寫和運行一個完整的模塊。這種專業(yè)技術(expertise)是編寫如何模塊化設備驅(qū)動程序的基礎。為了避免一下子給你很多概念,本章僅介紹模塊,不介紹任何類別的設備。
這里介紹的所有內(nèi)核內(nèi)容(函數(shù),變量,頭文件和宏)也將在本章最后的參考部分再次介紹。
如果你已經(jīng)座不住了,下面的代碼是一個完整的“Hello, World”模塊(這個模塊事實上并沒什么功能)。它可以在Linux 2.0或以上版本上編譯通過,但不能低于或等于1.2,關于這一點本章將在稍后的部分解釋*。
?。ùa)
函數(shù)printk是由Linux內(nèi)核定義的,功能與printf相似;模塊可以調(diào)用printk,這是因為在insmod加載了模塊后,模塊就被連編到內(nèi)核中了,也就可以調(diào)用內(nèi)核的符號了。字符串《1》是消息的優(yōu)先級。我之所以在模塊中使用了高優(yōu)先級是因為,如果你使用的是內(nèi)核2.0.x和舊的klogd守護進程,默認優(yōu)先級的消息可能不能顯示在控制臺上(關于這個問題,你可以暫且忽略,我們將在第4章,“調(diào)試技術”,的“Printk”小節(jié)中詳細解釋)。
通過執(zhí)行insmod和rmmod命令,你可以試試這個模塊,其過程如下面的屏幕輸出所示。注意,只有超級用戶才能加載和卸載模塊。
?。ùa)
正如你所見,編寫一個模塊很容易。通過本章我們將深入探討這個內(nèi)容。
- STM32單片機入門教程之GPIO編程的詳細資料說明 64次下載
- Linux教程之Linux C函數(shù)參考教程免費下載 4次下載
- Altium Designer入門教程之層次式原理圖設計的詳細資料說明 0次下載
- Linux教程之Linux的系統(tǒng)指令大全資料免費下載 31次下載
- Linux的封裝庫文件詳細資料合集免費下載 9次下載
- Linux入門教程之Linux的基本操作詳細資料說明 14次下載
- C語言入門教程之堆棧的詳細資料概述 12次下載
- Linux教程之Linux的網(wǎng)絡應用詳細知識點資料免費下載 14次下載
- Linux入門教程之LINUX入門與安裝配置 4次下載
- Linux基礎教程之Linux查看磁盤掛載有哪些方法詳細方法概述 1次下載
- Linux基礎教程之linux如何使用CP報錯 10次下載
- linux教程之Linux系統(tǒng)的安裝與啟動詳細資料 7次下載
- C++語言入門教程之C++語言程序設計函數(shù)的詳細資料概述免費下載 23次下載
- C++語言入門教程之C++語言程序設計數(shù)組的詳細資料概述免費下載 9次下載
- linux教程入門教程之linux學習視頻 14次下載
- Linux 驅(qū)動開發(fā)與應用開發(fā),你知道多少? 2.2k次閱讀
- Linux內(nèi)核驅(qū)動與單個PCI設備的綁定和解綁定 3k次閱讀
- 一文總結(jié)linux的platform驅(qū)動 2.2k次閱讀
- Linux指令的詳細整理 2.6k次閱讀
- 如何寫一個Linux設備驅(qū)動程序 5.5k次閱讀
- Linux設備驅(qū)動開發(fā)的基本知識 4.9k次閱讀
- 嵌入式Linux的驅(qū)動編寫入門資料詳細說明 3.3k次閱讀
- 米爾科技Linux設備驅(qū)動研究淺談 2.5k次閱讀
- 米爾科技LINUX設備驅(qū)動程序教程 2.7k次閱讀
- Linux教程之Linux常用命令大全 6.4k次閱讀
- PPT教程之伺服電機及其驅(qū)動技術的詳細資料講解 8.9k次閱讀
- 基于PXA255開發(fā)板外圍字符設備的嵌入式Linux字符設備驅(qū)動設計與應用 1.5k次閱讀
- 基于嵌入式Linux內(nèi)核的系統(tǒng)設備驅(qū)動程序開發(fā)設計 1.5k次閱讀
- 想要駕馭Linux驅(qū)動開發(fā),必須深刻理解Linux總線設備驅(qū)動框架 1.1w次閱讀
- 關于Linux設備驅(qū)動中input子系統(tǒng)的介紹 3k次閱讀
下載排行
本周
- 1新一代網(wǎng)絡可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費
- 2MDD品牌三極管MMBT3906數(shù)據(jù)手冊
- 2.33 MB | 次下載 | 免費
- 3MDD品牌三極管S9012數(shù)據(jù)手冊
- 2.62 MB | 次下載 | 免費
- 4聯(lián)想flex2-14D/15D說明書
- 4.92 MB | 次下載 | 免費
- 5收音環(huán)繞擴音機 AVR-1507手冊
- 2.50 MB | 次下載 | 免費
- 624Pin Type-C連接器設計報告
- 1.06 MB | 次下載 | 免費
- 7MS1000TA 超聲波測量模擬前端芯片技術手冊
- 0.60 MB | 次下載 | 免費
- 8MS1022高精度時間測量(TDC)電路數(shù)據(jù)手冊
- 1.81 MB | 次下載 | 免費
本月
- 1愛華AIWA HS-J202維修手冊
- 3.34 MB | 37次下載 | 免費
- 2PC5502負載均流控制電路數(shù)據(jù)手冊
- 1.63 MB | 23次下載 | 免費
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8100W準諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191439次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論