linux核心學習第三天——核心模組的載入

來源:互聯網
上載者:User

上一章講到Linux核心的編譯,得到Image鏡像後就可以燒到開發板上運行了,不過這樣也會帶來一些問題:比如當你想要增加或者修改linux核心的一些配置、組件時必須選擇重新編譯linux核心然後燒到開發板上。我們可以從網上或者其他人那邊拷貝得到Image,但不免要添加一些組件,這時我們該怎麼辦,就需要自己編譯模組,然後放到核心中!當然這個時候安裝的模組不會被核心檔案中,只會在核心運行期動態安裝,當不用的時候卸載!

安裝核心模組時用module_init(/*載入的模組函數*/),卸載核心模組時用module_exit("卸載的模組函數");下面是我寫的一小段模組函數——由多檔案組成:

這是我的外函數

下面就是如何將我的add模組函數加入到我的核心中!

1.編寫makefile檔案

2.安裝我的模組檔案:insmod calculate.ko,  卸載是rmmod calculate

3.檢查是否安裝好了:lsmod,如果看到了calculate說明安裝完成

4.用modprobe也可以載入一個模組到核心中,不過它會根據/lib/module<$version>/modules.dep檔案來自動的載入需要依賴的模組!

5.在編寫模組時有一些可選資訊可以寫到核心中:許可證聲明、作者聲明、模組描述、模組版本、模組別名、模組參數的聲明,下面是我對我的參數進行模組聲明(用module_param)

這些都是些基本的核心模組載入,但是存在一個問題:不能列印核心模組的列印資訊,代碼如上!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.