萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 作業系統 >  >> Linux 教學

Linux 核心模組程式設計:模組啟動參數傳遞與 insmod 自動賦值

啟動參數:避免硬編碼的靈活方式

早期範例常將檔案名、主裝置號硬編碼於模組中,違背 Unix/Linux 靈活定製精神。核心模組可定義全域變數,insmod 自動填入對應值。

運作方式

模組定義全域變數 str1、str2。編譯後以 insmod str1=xxx str2=yyy 載入。init_module 執行時,str1 指向 "xxx",str2 指向 "yyy"。

版本差異

  • 2.0 核心:無型別檢查。若參數首字為數字,核心以整數填充而非字串指標,需特別小心
  • 2.2 核心:引入 MODULE_PARM 巨集,可宣告參數名稱與型別,解決型別檢查問題,並允許數字開頭的字串參數
copyright © 萬盛學電腦網 all rights reserved