最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

linux module命令

來源:懂視網(wǎng) 責(zé)編:李贏贏 時(shí)間:2021-11-05 14:02:19
文檔

linux module命令

簡(jiǎn)介:modules的字面意思是模塊,模塊化有兩個(gè)方法解決:設(shè)計(jì)者可以把各項(xiàng)功能分離到單獨(dú)的叫做線程的處理中去,或者是將內(nèi)核以包含排除一些功能的方式重新編譯。加載模塊方法。與modules有關(guān)的命令:lsmode列出已經(jīng)被內(nèi)核調(diào)入的模塊。
推薦度:
導(dǎo)讀簡(jiǎn)介:modules的字面意思是模塊,模塊化有兩個(gè)方法解決:設(shè)計(jì)者可以把各項(xiàng)功能分離到單獨(dú)的叫做線程的處理中去,或者是將內(nèi)核以包含排除一些功能的方式重新編譯。加載模塊方法。與modules有關(guān)的命令:lsmode列出已經(jīng)被內(nèi)核調(diào)入的模塊。

linux系統(tǒng)下module命令是什么呢?下面是具體介紹:

1、module命令簡(jiǎn)介:

modules的字面意思是模塊,模塊化有兩個(gè)方法解決:設(shè)計(jì)者可以把各項(xiàng)功能分離到單獨(dú)的叫做線程的處理中去,或者是將內(nèi)核以包含/排除一些功能的方式重新編譯。如果把功能分離到線程中去,那么內(nèi)核就叫做“微內(nèi)核”(micro-kernel),這種解決方法增加了線程間協(xié)調(diào)工作的通信開銷,這種解決方案的優(yōu)點(diǎn)在于內(nèi)核的大小。
Linux的解決方案是包含內(nèi)核模塊,這些模塊是可以按需要隨時(shí)裝入和卸下的。這樣做可以使得內(nèi)核的大小和通信量都達(dá)到最小。將模塊從內(nèi)核中獨(dú)立出來,不必預(yù)先『綁』在 kernel codes 中。

這樣做有三種優(yōu)點(diǎn): 一, 將來修改 kernel 時(shí),不必全部重新compile,可節(jié)省不少時(shí)間;二, 若需要安裝新的 modules ,不必重新 compile kernel,只要插入 (通過insmode指令) 對(duì)應(yīng)的 modules 即可;三,減少內(nèi)核對(duì)系統(tǒng)資源的占用,內(nèi)核可以集中精力做最基本的事情,把一些擴(kuò)展功能都交由modules實(shí)現(xiàn)。
模塊也可以用來嘗試新的內(nèi)核代碼而不需要每次都創(chuàng)建和重激活內(nèi)核。但是,這樣做帶來的問題是:使用內(nèi)核模塊通常會(huì)輕微的增加性能和內(nèi)存開支。一個(gè)可加載模塊肯定會(huì)產(chǎn)生更多的代碼,這種代碼和額外的數(shù)據(jù)結(jié)構(gòu)會(huì)占用更多一點(diǎn)的內(nèi)存。另外因?yàn)殚g接訪問內(nèi)核資源也讓模塊的效率輕微降低。
2、加載模塊方法:
加載內(nèi)核模塊的方法有兩種。

一是使用insmod命令手工把它插入到內(nèi)核。

二是在需要的時(shí)候加載這個(gè)模塊,叫做按需加載(demand loading)。當(dāng)內(nèi)核發(fā)現(xiàn)需要一個(gè)模塊的時(shí)候,例如當(dāng)用戶安裝一個(gè)不在內(nèi)核的文件系統(tǒng)的時(shí)候,內(nèi)核會(huì)請(qǐng)求內(nèi)核守護(hù)進(jìn)程(kerneld)試圖加載合適的模塊。

3、與modules有關(guān)的命令:
lsmode :列出已經(jīng)被內(nèi)核調(diào)入的模塊
insmode:將某個(gè)module插入到內(nèi)核中
rmmod:將某個(gè)module從內(nèi)核中卸載
depmod: 生成依賴文件,告訴將來的 insmod 要從哪兒調(diào)入 modules。這個(gè)依賴文件就在/lib/modules/[您的kernel版本]/modules.dep。
Kerneld:負(fù)責(zé)自動(dòng)的將模塊調(diào)入內(nèi)核和把模塊從內(nèi)核中卸載。
舉例:

編譯一個(gè)最小的Linux內(nèi)核

必須要編譯到內(nèi)核中的內(nèi)容:

1、root所在的硬盤配置。哪果您的硬盤是IDE接口,就把 ide 的選項(xiàng)標(biāo)記下來。如果是SCSI接口,請(qǐng)把您的接口參數(shù)及 SCSI id 記標(biāo)下來。

2、選擇使用哪一個(gè)文件系統(tǒng)。Linux的默認(rèn)文件系統(tǒng)是是 ext2 ,那么就一定要把它標(biāo)記下來。如果機(jī)器中還其它的操作系統(tǒng),如win98或windows NT,您還會(huì)可能選擇FAT32或NTFS的支持,不過后面你可以通過手工加載的方式來加入新的模塊支持。
3、選擇Linux所支持的可執(zhí)行文件格式。這里有兩種格式可供選擇:elf:這是當(dāng)前Linux普遍支持的可執(zhí)行文件格式,必須編譯到內(nèi)核中 。
a.out: 這是舊版的Linux的可執(zhí)行文件各函數(shù)庫的格式,如果你確認(rèn)肯定用不到這種格式的可執(zhí)行文件,那么就可以不把它編譯到內(nèi)核當(dāng)中。
其它內(nèi)容凡是所有選項(xiàng)中m提示的,都選擇m,這樣可以通過手工的方式添加該模塊。
** Loadable module support*Enable loadable module support (CONFIG_MODULES) [Y/n/?]Set version
information on all symbols for modules (CONFIG_MODVERSIONS) [N/y/?]Kernel daemon support (e.g.
autoload of modules) (CONFIG_KERNELD) [Y/n/?]

分別回答 Y,N,Y 。其中 CONFIG_KERNELD 的 default 值是 N, 所以要注意選擇Y。
make config 完后,仍舊是 make dep; make clean。接下來要 make zlilo 或 make zImage。然后 make modules ; make modules_install 。完成之后,就編譯出一個(gè)沒有調(diào)入多余模塊的一個(gè)“干凈的”內(nèi)核映像文件了。

以上就是小編今天的分享了,希望可以幫助到大家。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

linux module命令

簡(jiǎn)介:modules的字面意思是模塊,模塊化有兩個(gè)方法解決:設(shè)計(jì)者可以把各項(xiàng)功能分離到單獨(dú)的叫做線程的處理中去,或者是將內(nèi)核以包含排除一些功能的方式重新編譯。加載模塊方法。與modules有關(guān)的命令:lsmode列出已經(jīng)被內(nèi)核調(diào)入的模塊。
推薦度:
標(biāo)簽: linux module命令
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top