資料介紹
世界各地都有人在鉆研Linux內(nèi)核,大多是在寫設(shè)備驅(qū)動程序。盡管每個驅(qū)動程序都不一樣,而且你還要知道自己設(shè)備的特殊性,但是這些設(shè)備驅(qū)動程序的許多原則和基本技術(shù)技巧都是一樣的。通過本書,可以學會寫自己的設(shè)備驅(qū)動程序,并且可以鉆研內(nèi)核的相關(guān)部分。本書涉及到的是設(shè)備無關(guān)編程技巧,不會將例子跟特殊設(shè)備綁定在一起。
?
本章沒有實際編寫代碼。但我要介紹一些關(guān)于Linux內(nèi)核的背景概念,這樣到我們稍后開始介紹實際編程時,就很順利了。
當你學習編寫驅(qū)動程序的時候,你也會發(fā)現(xiàn)很多關(guān)于Linux內(nèi)核的知識,這對理解你機器怎么工作很有幫助,并且還可以知道為什么你的機器沒有希望的那么快,或者為什么不按照你象要它做的那樣做。我們會逐漸介紹一些新概念,先從簡單的驅(qū)動程序開始,每介紹一些新概念都會看到相關(guān)例子代碼,這些代碼都不需要特殊硬件。
非常高興現(xiàn)在終于可以開始編程了。本章將介紹模塊編程和內(nèi)核編程所需的所有必要的概念。我們將要不多的篇幅來編寫和運行一個完整的模塊。這種專業(yè)技術(shù)(expertise)是編寫如何模塊化設(shè)備驅(qū)動程序的基礎(chǔ)。為了避免一下子給你很多概念,本章僅介紹模塊,不介紹任何類別的設(shè)備。
這里介紹的所有內(nèi)核內(nèi)容(函數(shù),變量,頭文件和宏)也將在本章最后的參考部分再次介紹。
如果你已經(jīng)座不住了,下面的代碼是一個完整的“Hello, World”模塊(這個模塊事實上并沒什么功能)。它可以在Linux 2.0或以上版本上編譯通過,但不能低于或等于1.2,關(guān)于這一點本章將在稍后的部分解釋*。
?。ù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)先級的消息可能不能顯示在控制臺上(關(guān)于這個問題,你可以暫且忽略,我們將在第4章,“調(diào)試技術(shù)”,的“Printk”小節(jié)中詳細解釋)。
通過執(zhí)行insmod和rmmod命令,你可以試試這個模塊,其過程如下面的屏幕輸出所示。注意,只有超級用戶才能加載和卸載模塊。
?。ùa)
正如你所見,編寫一個模塊很容易。通過本章我們將深入探討這個內(nèi)容。
- STM32單片機入門教程之GPIO編程的詳細資料說明 61次下載
- Altium Designer入門教程之層次式原理圖設(shè)計的詳細資料說明 0次下載
- Linux教程之Linux的系統(tǒng)指令大全資料免費下載 30次下載
- Linux的封裝庫文件詳細資料合集免費下載 9次下載
- Linux入門教程之Linux的基本操作詳細資料說明 14次下載
- C語言入門教程之堆棧的詳細資料概述 12次下載
- Linux教程之Linux的網(wǎng)絡(luò)應用詳細知識點資料免費下載 14次下載
- linux的History命令代碼的詳細資料合集免費下載 2次下載
- Linux入門教程之LINUX入門與安裝配置 4次下載
- Linux基礎(chǔ)教程之Linux查看磁盤掛載有哪些方法詳細方法概述 1次下載
- Linux基礎(chǔ)教程之linux如何使用CP報錯 10次下載
- linux教程之Linux系統(tǒng)的安裝與啟動詳細資料 7次下載
- C++語言入門教程之C++語言程序設(shè)計函數(shù)的詳細資料概述免費下載 23次下載
- C++語言入門教程之C++語言程序設(shè)計數(shù)組的詳細資料概述免費下載 9次下載
- linux教程入門教程之linux學習視頻 13次下載
- Linux 驅(qū)動開發(fā)與應用開發(fā),你知道多少? 120次閱讀
- Linux內(nèi)核驅(qū)動與單個PCI設(shè)備的綁定和解綁定 1299次閱讀
- 一文總結(jié)linux的platform驅(qū)動 783次閱讀
- Linux指令的詳細整理 1985次閱讀
- 如何寫一個Linux設(shè)備驅(qū)動程序 4314次閱讀
- Linux設(shè)備驅(qū)動開發(fā)的基本知識 4260次閱讀
- 嵌入式Linux的驅(qū)動編寫入門資料詳細說明 2656次閱讀
- 米爾科技Linux設(shè)備驅(qū)動研究淺談 1913次閱讀
- 米爾科技LINUX設(shè)備驅(qū)動程序教程 1965次閱讀
- Linux教程之Linux常用命令大全 5545次閱讀
- PPT教程之伺服電機及其驅(qū)動技術(shù)的詳細資料講解 6999次閱讀
- 基于PXA255開發(fā)板外圍字符設(shè)備的嵌入式Linux字符設(shè)備驅(qū)動設(shè)計與應用 1138次閱讀
- 基于嵌入式Linux內(nèi)核的系統(tǒng)設(shè)備驅(qū)動程序開發(fā)設(shè)計 1113次閱讀
- 想要駕馭Linux驅(qū)動開發(fā),必須深刻理解Linux總線設(shè)備驅(qū)動框架 1w次閱讀
- 關(guān)于Linux設(shè)備驅(qū)動中input子系統(tǒng)的介紹 2663次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1490次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 93次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關(guān)電源設(shè)計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關(guān)電源設(shè)計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多