
我正在開發內核 2.6.37,我製作了一些可載入模組而不是靜態模組來優化內核,
我的任務是在運行我成功執行的應用程式後加載一些模組,
在任何嵌入式系統中,在系統初始化時,腳本都會從指定檔案(例如 etc/modules)中修改模組。所以我刪除了模組名稱,以便在檔案系統初始化時不加載,而是需要在應用程式啟動後加載。更像是運行等級優先權從 35 改為 99。
現在我的 wifi 核心模組需要 1-2 秒來加載,所以我嘗試刪除 wifi 模組名稱及其依賴項,但 wifi 模組是在檔案系統初始化時加載的。檢查 rcS 腳本後,udev 腳本正在執行 udevadm 觸發器,該觸發器正在載入模組,而不是應該由 modprobe 完成。
/sbin/udevadm 觸發器--subsystem-nomatch=tty --subsystem-nomatch=mem --subsystem-nomatch=vc --subsystem-nomatch=vtconsole --subsystem-nomatch=misc --subsystem-nomatch=dcon -- subsystem -nomatch=pci_bus --subsystem-nomatch=顯示卡 --subsystem-nomatch=背光 --subsystem-nomatch=video4linux --subsystem-nomatch=平台
誰能建議如何避免 wifi 模組載入?
答案1
這些不是我的問題的完美答案,而是更多的解決方法,
我製作了一些模組黑名單[它將在文件系統初始化時停止自動加載]和modprobe在我的應用程式運行後。
貓 /etc/modprobe.d/blacklist.conf
#blacklist那些需要停止自動載入的模組
黑名單 wl18xx
如果有人有更好的答案請分享。
感謝與問候,GBiradar