驅動學習筆記
1模組載入函式
模組載入的是觸發,載入完畢後就解除安裝
static int __init mymodule_init(void)
module_init(mymodule_init);
2模組解除安裝函式
模組被關閉時觸發,或者系統被關閉時觸發
static void __exit mymodule_exit(void)
module_exit(mymodule_exit);
3模組宣告
a) module_license(「gpl」); 核心許可證(任意版本gnu通用公共許可證)
b) module_author(「author」); 宣告作者資訊 可不用
c) module_version(「version」); 版本資訊 可不用
d) module_description(「descriptin」); 宣告模組描述 可不用
4常用模組標頭檔案
#include
#include
#include
模組開發常用命令
insmod ***.ko 載入模組
rmmod *** 解除安裝模組
lsmod 檢視已載入模組
modprobe *** 可載入指定的個別模組,或者是載入一組相依賴的模組
modinfo ***.ko 檢視模組資訊
linux驅動學習
1.在dev目錄下用ls l檢視字元裝置,輸出第一列為c的的標識的裝置,其中有主裝置號,和次裝置號 裝置檔案對應裝置驅動,linux將每個裝置對映成為乙個檔案,如果訪問檔案,那麼對應的訪問就是相應的io驅動程式,檔案和驅動主要是通過主裝置號聯絡起來的,次裝置號就是反應了具體是那個裝置 核心中 dev...
Linux驅動學習
1.make時使用make arch arm cross compile arm linux gnueabihf 命令而不是make命令 2.編譯.c檔案使用arm linux gnueabihf gcc o c生產可執行檔案 3.cat proc devices 只顯示驅動的主裝置號,且是分類顯示...
Linux驅動學習 Linux裝置驅動概述
linux裝置驅動概述 以點亮led為例 包括應用程式 庫 作業系統 核心 驅動程式。而開發人員中 只要關注自己的那一層,相鄰層只關注介面就可以了 應用程式使用庫提供的open函式開啟led的裝置檔案 庫根據open函式傳入的引數執行 swi 指令,這是軟中斷,這條指令會引起 cpu異常,進入核心 ...