我想知道是否可以在一個.ko文件中合併幾個內核模塊(設備驅動程序,.ko文件)。如何合併幾個內核模塊的代碼?
每個模塊的代碼(每個模塊的module_init())都可用。
提示:可以在內核中編譯獨立模塊。我想有一些.ka模塊庫,可以使用modprobe加載。
我想知道是否可以在一個.ko文件中合併幾個內核模塊(設備驅動程序,.ko文件)。如何合併幾個內核模塊的代碼?
每個模塊的代碼(每個模塊的module_init())都可用。
提示:可以在內核中編譯獨立模塊。我想有一些.ka模塊庫,可以使用modprobe加載。
合併內核模塊與動態(取消)加載模塊的意圖相沖突。
正如在編譯內核中的那些時會發生衝突一樣。但是,這是可能的。我可以將所有相關的模塊編譯到內核中,對吧?我問是否可以構建某種超模塊,它將處理insmod()中的多個module_init()函數和rmmod()中的多個module_release()函數。這將如何與動態卸載相沖突?只是模仿多個insmod/rmmod調用。 – user1284631
這是不夠的答案,應該是一個評論。 –
內核沒有爲此提供內置機制。我很好奇你爲什麼想嘗試。 –
@JonathonReinhart:因爲我無法更改加載腳本(它在具有硬編碼名稱的模塊上調用modprobe)。但是,我需要添加一些功能(新設備)。解決方法是創建我的超級模塊,它的module_init()函數將調用call_usermodehelper()/ request_module()或類似的東西來加載其他模塊。我想知道替代解決方案。 – user1284631