載入.ko的兩種方法:insmod與modprob
阿新 • • 發佈:2021-10-13
假設要載入的驅動程式模組名為hello.ko
載入驅動模組
方法一:
進入hello.ko驅動模組檔案所在的目錄,然後直接
insmod hello.ko
方法二:
將hello.ko檔案拷貝到/lib/module/#uname -r#/目錄下,這裡,#uname -r#意思是,在終端中輸入
uname -r後顯示的核心版本及名稱。
然後
depmod(會在/lib/modules/#uname -r#/目錄下生成modules.dep和modules.dep.bb檔案,表明模組的依賴關係)
最後
modprobe hello(注意這裡無需輸入.ko字尾)
兩種方法的區別:
modprobe和insmod類似,都是用來動態載入驅動模組的,區別在於modprobe可以解決load module時的依賴關係,它是通過/lib/modules/#uname -r/modules.dep(.bb)檔案來查詢依賴關係的;而insmod不能解決依賴問題。
也就是說,如果你確定你要載入的驅動模組不依賴其他驅動模組的話,既可以insmod也可以modprobe,當然insmod可以在任何目錄下執行,更方便一些。而如果你要載入的驅動模組還依賴其他ko驅動模組的話,就只能將模組拷貝到上述的特定目錄,depmod後再modprobe。
原文連結:https://blog.csdn.net/zztingfeng/article/details/92012965