我想在內核中編譯設備驅動程序,並使用*(不在模塊中)對其進行配置。編譯完成後,我看不到/proc/device
中的設備。我也檢查了make bzImage
的輸出,驅動已編譯完成。我是否需要刪除這兩行:在/ proc/device中找不到驅動程序
module_init(mydriver_init);
module_exit(mydriver_exit);
我想在內核中編譯設備驅動程序,並使用*(不在模塊中)對其進行配置。編譯完成後,我看不到/proc/device
中的設備。我也檢查了make bzImage
的輸出,驅動已編譯完成。我是否需要刪除這兩行:在/ proc/device中找不到驅動程序
module_init(mydriver_init);
module_exit(mydriver_exit);
沒有足夠的信息來了解您的問題。你應該顯示一些代碼。
無論如何,/proc/devices並不顯示所有內核模塊。它顯示設備,也許你的驅動程序沒有註冊設備。
您可以在您的代碼中放入一些printk()
,並使用命令dmesg
從您的終端讀取它。如果你讀了你的印刷品,你的模塊被加載。
埃文如果不編譯模塊,模塊,但建造它的內核中,職能
module_init(mydriver_init);
module_exit(mydriver_exit);
必須在那裏。內核加載你的驅動程序時會執行mydriver_init
,內核卸載你的驅動程序時會執行module_exit
。
只讀的/proc/devices
文件似乎無法使用VIM等編輯器進行編輯或查看。所以試試'cat /proc/devices'
,你的設備可能會出現。