1: 核心原始碼存放的位置 /usr/src/linux 或者 /usr/src/kernel
2: 核心模組存放的位置 /lib/modules/($uname -r)/kernel
3: 模組的依賴性:檢查 /lib/modules/($uname -r)/modules.dep檔案,它記錄了核心支援模組的依賴關係。
.dep檔案的製作:通過depmod命令
eg:如果做好了乙個網絡卡的驅動程式,名為a.ko,該如何跟新核心的依賴性?
cp a.ko /lib/modules/($ uname -r)/kernel/drivers/net
depmod
通過以上的二步操作,新的模組的依賴性就會被跟新進來。具體表現在modules.dep檔案中。這個檔案非常重要,在模組
載入或解除安裝命令modprobe應用中非常重要。
4: 核心模組的檢視命令:lsmod 列出模組名 modinfo + 模組名 列出塊的相關資訊
5:核心模組的載入與刪除
核心載入:insmod 完整路徑
eg:載入乙個名為cifs.ko的檔案系統模組
insmod /lib/modules/($uname -r)/kernels/fs/cifs/cifs.ko
6: 核心模組的解除安裝:rmmod
7: 最建議使用的核心載入與解除安裝的方式:modprobe 模組名(載入) modprobe -r 模組名(解除安裝模組)
區別:insmod與remod 必須自行找到完整的檔名,萬一檔案之間存在依賴性,將無法載入與刪除。 為了克服依賴性的
問題,配合modules.dep檔案,使用modprobe是很方便的。eg:modprobe cifs 這樣就可以載入模組,原因在於/lib/modules
/($uname -r)/modules.dep已經完整記錄檔名。解除安裝使用 modprobe -r cifs
核心模組載入過程
載入過程 巨集module init本質是將核心中函式的指標指向模組的初始化函式.啟動時載入 過程 系統在進入與體系結構無關的核心部分後,開始呼叫 init main.c中的start kernel 函式.經過start kernel rest init kernel thread kernel i...
載入巨集的載入與解除安裝
技巧說明 載入巨集的載入與解除安裝。案例介紹 載入巨集可以有條件地載入與解除安裝。本例中將所有載入巨集載入,使用三天後再解除安裝所有載入巨集,也可指定載入 解除安裝某個載入巨集。案例實現 參見以下步驟 使用快捷鍵 alt f11 進入vbe visual basic editor 環境。單擊選單 插...
核心模組的插入和解除安裝
obj m o 名稱可改 以下內容可以不用動 current path shell pwd linux kernel shell uname r linux kernel path usr src linux headers linux kernel all make c linux kernel ...