資料介紹
世界各地都有人在鉆研Linux內核,大多是在寫設備驅動程序。盡管每個驅動程序都不一樣,而且你還要知道自己設備的特殊性,但是這些設備驅動程序的許多原則和基本技術技巧都是一樣的。通過本書,可以學會寫自己的設備驅動程序,并且可以鉆研內核的相關部分。本書涉及到的是設備無關編程技巧,不會將例子跟特殊設備綁定在一起。
?
本章沒有實際編寫代碼。但我要介紹一些關于Linux內核的背景概念,這樣到我們稍后開始介紹實際編程時,就很順利了。
當你學習編寫驅動程序的時候,你也會發現很多關于Linux內核的知識,這對理解你機器怎么工作很有幫助,并且還可以知道為什么你的機器沒有希望的那么快,或者為什么不按照你象要它做的那樣做。我們會逐漸介紹一些新概念,先從簡單的驅動程序開始,每介紹一些新概念都會看到相關例子代碼,這些代碼都不需要特殊硬件。
非常高興現在終于可以開始編程了。本章將介紹模塊編程和內核編程所需的所有必要的概念。我們將要不多的篇幅來編寫和運行一個完整的模塊。這種專業技術(expertise)是編寫如何模塊化設備驅動程序的基礎。為了避免一下子給你很多概念,本章僅介紹模塊,不介紹任何類別的設備。
這里介紹的所有內核內容(函數,變量,頭文件和宏)也將在本章最后的參考部分再次介紹。
如果你已經座不住了,下面的代碼是一個完整的“Hello, World”模塊(這個模塊事實上并沒什么功能)。它可以在Linux 2.0或以上版本上編譯通過,但不能低于或等于1.2,關于這一點本章將在稍后的部分解釋*。
?。ùa)
函數printk是由Linux內核定義的,功能與printf相似;模塊可以調用printk,這是因為在insmod加載了模塊后,模塊就被連編到內核中了,也就可以調用內核的符號了。字符串《1》是消息的優先級。我之所以在模塊中使用了高優先級是因為,如果你使用的是內核2.0.x和舊的klogd守護進程,默認優先級的消息可能不能顯示在控制臺上(關于這個問題,你可以暫且忽略,我們將在第4章,“調試技術”,的“Printk”小節中詳細解釋)。
通過執行insmod和rmmod命令,你可以試試這個模塊,其過程如下面的屏幕輸出所示。注意,只有超級用戶才能加載和卸載模塊。
(代碼)
正如你所見,編寫一個模塊很容易。通過本章我們將深入探討這個內容。
- STM32單片機入門教程之GPIO編程的詳細資料說明 61次下載
- Altium Designer入門教程之層次式原理圖設計的詳細資料說明 0次下載
- Linux教程之Linux的系統指令大全資料免費下載 30次下載
- Linux的封裝庫文件詳細資料合集免費下載 9次下載
- Linux入門教程之Linux的基本操作詳細資料說明 14次下載
- C語言入門教程之堆棧的詳細資料概述 12次下載
- Linux教程之Linux的網絡應用詳細知識點資料免費下載 14次下載
- linux的History命令代碼的詳細資料合集免費下載 2次下載
- Linux入門教程之LINUX入門與安裝配置 4次下載
- Linux基礎教程之Linux查看磁盤掛載有哪些方法詳細方法概述 1次下載
- Linux基礎教程之linux如何使用CP報錯 10次下載
- linux教程之Linux系統的安裝與啟動詳細資料 7次下載
- C++語言入門教程之C++語言程序設計函數的詳細資料概述免費下載 23次下載
- C++語言入門教程之C++語言程序設計數組的詳細資料概述免費下載 9次下載
- linux教程入門教程之linux學習視頻 13次下載
- Linux 驅動開發與應用開發,你知道多少? 120次閱讀
- Linux內核驅動與單個PCI設備的綁定和解綁定 1299次閱讀
- 一文總結linux的platform驅動 783次閱讀
- Linux指令的詳細整理 1985次閱讀
- 如何寫一個Linux設備驅動程序 4314次閱讀
- Linux設備驅動開發的基本知識 4260次閱讀
- 嵌入式Linux的驅動編寫入門資料詳細說明 2656次閱讀
- 米爾科技Linux設備驅動研究淺談 1913次閱讀
- 米爾科技LINUX設備驅動程序教程 1965次閱讀
- Linux教程之Linux常用命令大全 5545次閱讀
- PPT教程之伺服電機及其驅動技術的詳細資料講解 6999次閱讀
- 基于PXA255開發板外圍字符設備的嵌入式Linux字符設備驅動設計與應用 1138次閱讀
- 基于嵌入式Linux內核的系統設備驅動程序開發設計 1113次閱讀
- 想要駕馭Linux驅動開發,必須深刻理解Linux總線設備驅動框架 1w次閱讀
- 關于Linux設備驅動中input子系統的介紹 2663次閱讀
下載排行
本周
- 1智能門鎖原理圖
- 0.39 MB | 10次下載 | 免費
- 2PC1013三合一快充數據線充電芯片介紹
- 1.03 MB | 7次下載 | 免費
- 3PCB板EMC/EMI的設計技巧
- 0.20 MB | 3次下載 | 免費
- 42024PMIC市場洞察
- 2.23 MB | 2次下載 | 免費
- 5MCF8315A優化指南
- 1.24MB | 1次下載 | 免費
- 6HC20LG0302_Datasheet_Ver_1
- 755.91 KB | 1次下載 | 免費
- 7MCF8315EVM評估模塊
- 2.09MB | 1次下載 | 免費
- 8UC3842工作原理及開關電源電路
- 0.08 MB | 1次下載 | 免費
本月
- 1XL4015+LM358恒壓恒流電路圖
- 0.38 MB | 146次下載 | 1 積分
- 2新概念模擬電路第四冊信號處理電路電子書免費下載
- 10.69 MB | 65次下載 | 免費
- 3PCB布線和布局電路設計規則
- 0.40 MB | 26次下載 | 免費
- 4GB/T4706.1-2024 家用和類似用途電器的安全第1部分:通用要求
- 7.43 MB | 11次下載 | 1 積分
- 5JESD79-5C_v1.30-2024 內存技術規范
- 2.71 MB | 10次下載 | 免費
- 6智能門鎖原理圖
- 0.39 MB | 10次下載 | 免費
- 7elmo直線電機驅動調試細則
- 4.76 MB | 9次下載 | 6 積分
- 8PC1013三合一快充數據線充電芯片介紹
- 1.03 MB | 7次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935115次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191367次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183330次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73806次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65985次下載 | 10 積分
評論
查看更多