嵌入式linux-內(nèi)核移植_第1頁(yè)
嵌入式linux-內(nèi)核移植_第2頁(yè)
嵌入式linux-內(nèi)核移植_第3頁(yè)
嵌入式linux-內(nèi)核移植_第4頁(yè)
嵌入式linux-內(nèi)核移植_第5頁(yè)
已閱讀5頁(yè),還剩47頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

學(xué)習(xí)目標(biāo)學(xué)員需要掌握如下內(nèi)容:linux內(nèi)核裁剪與配置編譯編譯內(nèi)核模塊嵌入式linux內(nèi)核基礎(chǔ)內(nèi)核源代碼結(jié)構(gòu)Linux內(nèi)核源代碼結(jié)構(gòu)Linux內(nèi)核源代碼的結(jié)構(gòu)Linux內(nèi)核源代碼位于/usr/src/目錄下/include子目錄包含了建立內(nèi)核代碼時(shí)所需的大部分包含文件/init子目錄包含了內(nèi)核的初始化代碼/arch子目錄包含了所有硬件結(jié)構(gòu)特定的內(nèi)核代碼/drivers子目錄包含了內(nèi)核中所有的設(shè)備驅(qū)動(dòng)程序/fs子目錄包含了所有的文件系統(tǒng)的代碼/net子目錄包含了內(nèi)核的網(wǎng)絡(luò)連接代碼/mm子目錄包含了所有內(nèi)存管理代碼/ipc子目錄包含了進(jìn)程間通信代碼/kernel子目錄包含了主內(nèi)核代碼

Linux內(nèi)核配置編譯編譯內(nèi)核的需要Linux作為一個(gè)自由軟件,不斷增加許多新的特性。想要使用這些新特性,或想根據(jù)自己的系統(tǒng)度身定制一個(gè)更高效,更穩(wěn)定的內(nèi)核,就需要重新編譯內(nèi)核。更新的內(nèi)核會(huì)支持更多的硬件,具備更好的進(jìn)程管理能力,運(yùn)行速度更快、更穩(wěn)定,并且一般會(huì)修復(fù)老版本中發(fā)現(xiàn)的許多漏洞等。Linux內(nèi)核配置編譯編譯內(nèi)核的需要自己定制編譯的內(nèi)核運(yùn)行更快系統(tǒng)將擁有更多的內(nèi)存不需要的功能編譯進(jìn)入內(nèi)核可能會(huì)增加被系統(tǒng)攻擊者利用的漏洞將某種功能編譯為模塊方式會(huì)比編譯到內(nèi)核內(nèi)的方式速度要慢一些Linux內(nèi)核配置編譯內(nèi)核配置系統(tǒng)Linux內(nèi)核有上千個(gè)配置選項(xiàng),配置復(fù)雜。通過(guò)配置系統(tǒng)簡(jiǎn)化內(nèi)核配置。內(nèi)核配置系統(tǒng)可生成內(nèi)核配置菜單。配置系統(tǒng)包含:MakefileKconfig配置工具Linux內(nèi)核配置編譯獲取源碼或補(bǔ)丁

工具準(zhǔn)備安裝gcc、make等編譯工具sudoapt-getinstallbuild-essential安裝makemenuconfig所需庫(kù)sudoapt-getinstalllibncurses-dev安裝系統(tǒng)生成kernel-image所需的工具sudoapt-getinstalluboot-mkimageLinux內(nèi)核配置編譯內(nèi)核配置系統(tǒng)Makefile分布在Linux內(nèi)核源代碼中的Makefile,定義Linux內(nèi)核的編譯規(guī)則;頂層目錄的Makefile管理整個(gè)Linux內(nèi)核的配置編譯。配置工具不同的內(nèi)核配置方式,通過(guò)不同的配置工具完成。script目錄下提供了這些配置工具。如menuconfig目標(biāo)使用mconf。Kconfig文件(config.in)2.6內(nèi)核引入的配置文件,是內(nèi)核配置選項(xiàng)的源文件。arch/$(ARCH)/Kconfig文件是主Kconfig文件,主Kconfig文件調(diào)用其他目錄的Kconfig文件。這些Kconfig文件形成樹(shù)狀關(guān)系-->樹(shù)狀菜單。Linux內(nèi)核配置編譯內(nèi)核配置系統(tǒng)—Kconfig文件菜單項(xiàng)menu"Filesystems"配置選項(xiàng)Config開(kāi)頭,后面給出選項(xiàng)開(kāi)關(guān)變量后面幾行定義這個(gè)配置選項(xiàng)的屬性,包括選項(xiàng)類型、依賴關(guān)系、幫助等等。configEXT2_FStristate"Secondextendedfssupport"helpExt2isastandardLinuxfilesystemforharddisks.......Linux內(nèi)核配置編譯準(zhǔn)備工作:

#tarxvf

kernel120806.tgzLinux內(nèi)核配置編譯內(nèi)核配置命令:#makeconfig(基于文本的最為傳統(tǒng)的配置界面,不推薦使用)#makemenuconfig(基于文本菜單的配置界面,字符終端下推薦使用)#makexconfig(基于圖形窗口模式的配置界面,Xwindow下推薦使用)#makegconfig(基于gtk的圖形配置界面)Linux內(nèi)核配置編譯選擇相應(yīng)的配置時(shí),有三種選擇,它們分別代表的含義如下:

Y--將該功能編譯進(jìn)內(nèi)核

N--不將該功能編譯進(jìn)內(nèi)核

M--將該功能編譯成模塊,可以在需要時(shí)動(dòng)態(tài)插入到內(nèi)核中makexconfig,使用鼠標(biāo)就可以選擇對(duì)應(yīng)的選項(xiàng)。makemenuconfig,則需要使用空格鍵進(jìn)行選取。如果有不明白的地方,尋則Help查看說(shuō)明

Linux內(nèi)核配置編譯配置的原則大部分選項(xiàng)可以使用其缺省值,只有小部分需要根據(jù)用戶不同的需要選擇。將與內(nèi)核其它部分關(guān)系較遠(yuǎn)且不經(jīng)常使用的部分功能代碼編譯成為可加載模塊。有利于減小內(nèi)核的長(zhǎng)度,減小內(nèi)核消耗的內(nèi)存;不需要的功能就不要選;與內(nèi)核關(guān)心緊密而且經(jīng)常使用的部分功能代碼直接編譯到內(nèi)核中。Linux內(nèi)核配置編譯配置的注意選項(xiàng)Codematurityleveloptions--->應(yīng)該選擇[*]Promptfordevelopmentand/orincompletecode/drivers這將會(huì)在設(shè)置界面中顯示還在開(kāi)發(fā)或者還沒(méi)有完成的代碼與驅(qū)動(dòng).因?yàn)橛性S多設(shè)備可能必需選擇這個(gè)選項(xiàng)才能進(jìn)行配置,實(shí)際上它是安全的。Linux內(nèi)核配置編譯配置的注意選項(xiàng)2Generalsetup---> 大部分保持默認(rèn)[*]Supportforpagingofanonymousmemory(swap)應(yīng)該選擇這個(gè)選項(xiàng)將使你的內(nèi)核支持虛擬內(nèi)存。[*]SystemVIPC應(yīng)該選擇 為進(jìn)程提供通信機(jī)制。有些程序只有在選Y的情況下才能運(yùn)行,這里一定要選。[*]POSIXMessageQueues POSIX的消息隊(duì)列,它同樣是一種IPC,應(yīng)該選擇[*]Supportforhot-pluggabledevices支持熱插拔的,若是為普通電腦配置內(nèi)核,則最好選擇Linux內(nèi)核配置編譯配置的注意選項(xiàng)3Loadablemodulesupport--->[*]Enableloadablemodulesupport應(yīng)該選擇 這個(gè)選項(xiàng)可以讓你的內(nèi)核支持模塊。一般一些不常用到的驅(qū)動(dòng)或特性可以編譯為模塊以減少內(nèi)核的體積。[*]Moduleunloading應(yīng)該選擇 這個(gè)選項(xiàng)可以讓你卸載不再使用的模塊,如果不選的話你將不能卸載任何模塊[*]Forcedmoduleunloading

強(qiáng)行卸載模塊,可以把正在使用中的模快卸載掉。做內(nèi)核開(kāi)發(fā)或者驅(qū)動(dòng)開(kāi)發(fā)的時(shí)候,有一定的好處。但一般用戶不應(yīng)該選擇。Linux內(nèi)核配置編譯配置的注意選項(xiàng)3Loadablemodulesupport--->[*]Moduleversioningsupport模塊版本支持 該選項(xiàng)可以使得系統(tǒng)支持其它版本的內(nèi)核模塊。[]Sourcechecksumforallmodules否這個(gè)功能是為了防止更改了內(nèi)核模塊的代碼但忘記更改版本號(hào)而造成版本沖突。[*]Automatickernelmoduleloading

在內(nèi)核需要一些模塊時(shí),可以自動(dòng)調(diào)用modprobe命令來(lái)加載需要的模塊。Linux內(nèi)核配置編譯配置的注意選項(xiàng)4Processortypeandfeatures--->Processorfamily(Pentium-Pro)--->

選擇cpu的類型5Powermanagementoptions(ACPI,APM)--->[*]PowerManagementsupport

支持高級(jí)電源管理(也就是平常我們說(shuō)的軟關(guān)機(jī)、系統(tǒng)休眠等)。Linux內(nèi)核配置編譯配置的注意選項(xiàng)6Busoptions(PCI,PCMCIA,EISA,MCA,ISA)--->[*]PCIsupportPCI支持。當(dāng)然必選PCIaccessmode(Any)---> PCI的存取方式,分三種,有透過(guò)BIOS或是直接存取跟任意,預(yù)設(shè)值A(chǔ)ny7Executablefileformats--->[*]KernelsupportforELFbinaries一定要選擇Linux內(nèi)核配置編譯配置的注意選項(xiàng)8DeviceDrivers--->MemoryTechnologyDevices(MTD)--->存儲(chǔ)設(shè)備層,大部分的flash芯片驅(qū)動(dòng)都基于MTD。用于嵌入式系統(tǒng)。Blockdevices<M>Loopbackdevicesupport可以將一個(gè)文件掛成一個(gè)文件系統(tǒng)。mountiso文件8filesystems--->建議將根文件系統(tǒng)直接編譯到內(nèi)核中。并且在這里選擇系統(tǒng)支持的文件系統(tǒng)。Linux內(nèi)核配置編譯相關(guān)編譯命令:#makedep

#makeclean

#makeuImage

#makemodules

#makemodules_install

#depmod-aLinux內(nèi)核配置編譯makedep實(shí)際上讀取配置過(guò)程生成的配置文件makeclean完成刪除前面步驟留下的文件makeuImage實(shí)現(xiàn)完全編譯內(nèi)核makemodules和makemodules_install分別生成相應(yīng)的模塊和把模塊拷貝到需要的目錄中。Linux內(nèi)核配置編譯修改新的bootloader,用新內(nèi)核啟動(dòng)重新啟動(dòng)系統(tǒng),即可引導(dǎo)我們新的內(nèi)核。太多的設(shè)備驅(qū)動(dòng)和內(nèi)核功能集成在內(nèi)核中,內(nèi)核過(guò)于龐大。如何解決?Linux內(nèi)核引入內(nèi)核模塊機(jī)制。通過(guò)動(dòng)態(tài)加載內(nèi)核模塊,使得在運(yùn)行過(guò)程中擴(kuò)展內(nèi)核的功能。不需要的時(shí)候,卸載該內(nèi)核模塊。內(nèi)核模塊概述什么是內(nèi)核模塊??jī)?nèi)核模塊是一種沒(méi)有經(jīng)過(guò)鏈接,不能獨(dú)立運(yùn)行的目標(biāo)文件,是在內(nèi)核空間中運(yùn)行的程序。經(jīng)過(guò)鏈接裝載到內(nèi)核里面成為內(nèi)核的一部分,可以訪問(wèn)內(nèi)核的公用符號(hào)(函數(shù)和變量)。內(nèi)核模塊可以讓操作系統(tǒng)內(nèi)核在需要時(shí)載入和執(zhí)行,在不需要時(shí)由操作系統(tǒng)卸載。它們擴(kuò)展了操作系統(tǒng)內(nèi)核的功能卻不需要重新啟動(dòng)系統(tǒng)。如果沒(méi)有內(nèi)核模塊,我們不得不一次又一次重新編譯生成單內(nèi)核操作系統(tǒng)的內(nèi)核鏡像來(lái)加入新的功能。這還意味著一個(gè)臃腫的內(nèi)核。內(nèi)核模塊概述內(nèi)核模塊是如何被調(diào)入內(nèi)核工作的?當(dāng)操作系統(tǒng)內(nèi)核需要的擴(kuò)展功能不存在時(shí),內(nèi)核模塊管理守護(hù)進(jìn)程kmod執(zhí)行modprobe去加載內(nèi)核模塊。modprobe遍歷文件/lib/modules/version/modules.dep來(lái)判斷是否有其它內(nèi)核模塊需要在該模塊加載前被加載。最后modprobe調(diào)用insmod先加載被依賴的模塊,然后加載該被內(nèi)核要求的模塊。內(nèi)核模塊概述內(nèi)核模塊概述模塊機(jī)制的優(yōu)點(diǎn):減小內(nèi)核映像尺寸,增加系統(tǒng)靈活性;節(jié)省開(kāi)發(fā)時(shí)間;修改內(nèi)核,不必重新編譯整個(gè)內(nèi)核。模塊的目標(biāo)代碼一旦被鏈入內(nèi)核,作用和靜態(tài)鏈接的內(nèi)核目標(biāo)代碼完全等價(jià)。模塊機(jī)制的缺點(diǎn):對(duì)系統(tǒng)性能有一定損失;使用不當(dāng)時(shí)會(huì)導(dǎo)致系統(tǒng)崩潰;HelloWorld模塊順利編譯并且加載第一個(gè)“helloworld”模塊有時(shí)就會(huì)比較困難。編譯和內(nèi)核版本相關(guān)的問(wèn)題:Linux的發(fā)行版經(jīng)常給內(nèi)核打一些非標(biāo)準(zhǔn)的補(bǔ)丁,這種情況會(huì)導(dǎo)致一些問(wèn)題的發(fā)生。 強(qiáng)烈建議使用標(biāo)準(zhǔn)內(nèi)核源代碼包,編譯新內(nèi)核并用新內(nèi)核啟動(dòng)系統(tǒng)來(lái)避免以上的問(wèn)題。HelloWorld模塊為2.6版本內(nèi)核構(gòu)造模塊需要在系統(tǒng)中有一個(gè)配置好,并建立好的內(nèi)核樹(shù)。2.6內(nèi)核的模塊要和內(nèi)核源代碼樹(shù)中的目標(biāo)文件連接。printk()函數(shù)printk函數(shù)在Linux內(nèi)核中定義并且對(duì)模塊可用,為內(nèi)核提供日志功能,記錄內(nèi)核信息或用來(lái)給出警告。與標(biāo)準(zhǔn)C庫(kù)函數(shù)printf的行為相似。每個(gè)printk()聲明都會(huì)帶一個(gè)優(yōu)先級(jí)。內(nèi)核總共定義了八個(gè)優(yōu)先級(jí)的宏,在linux/kernel.h中定義。若你不指明優(yōu)先級(jí),DEFAULT_MESSAGE_LOGLEVEL這個(gè)默認(rèn)優(yōu)先級(jí)將被采用。信息添加到文件/var/log/messages,可直接查看,或者用命令dmesg查看。在X-windows下的終端insmod一個(gè)模塊,日志信息只會(huì)記錄在日志文件中,而不在終端打印。HelloWorld模塊編譯和加載2.6內(nèi)核的構(gòu)建系統(tǒng)kbuild,使得內(nèi)核源碼外的內(nèi)核模塊編譯跟內(nèi)核編譯統(tǒng)一起來(lái),無(wú)須手動(dòng)給定這些參數(shù)。Hello-1.c的Makefile文件obj-m+=hello-1.o表明有一個(gè)模塊要從目標(biāo)文件hello-1.o建立,kbuild從該目標(biāo)文件建立內(nèi)核模塊hello-1.ko。執(zhí)行以下命令編譯模塊:make-C/usr/src/linux-`uname-r`M=$PWDmodules 改變目錄到用-C選項(xiàng)提供的內(nèi)核源碼目錄,在那里找到內(nèi)核的頂層makefile。M=選項(xiàng)使makefile在試圖建立模塊目標(biāo)前,回到模塊源碼目錄。HelloWorld模塊2.6內(nèi)核引入新的內(nèi)核模塊命名規(guī)范:內(nèi)核模塊使用.ko的文件后綴(代替以往的.o后綴),從而內(nèi)核模塊區(qū)別于普通的目標(biāo)文件。使用insmod./hello-1.ko命令加載該模塊。/proc/modules記錄被加載的內(nèi)核模塊。使用命令rmmodhello-1卸載模塊HelloWorld模塊改變init_module()返回值非零,重新編譯再加載,觀察結(jié)果發(fā)生了什么變化?非0返回值表示初始化內(nèi)核模塊失敗,模塊不能加載。HelloWorld模塊從內(nèi)核Linux2.4之后,可以為模塊的“初始化”和“卸載”函數(shù)起任意的名字。不再必須使用init_module()和cleanup_module()的名字。通過(guò)宏module_init()和module_exit()實(shí)現(xiàn)。這些宏在linux/init.h中定義。 module_init(hello_2_init);module_exit(hello_2_exit);函數(shù)必須在宏的使用前定義,否則編譯會(huì)報(bào)錯(cuò)。例子2:hello-2.cHelloWorld模塊例子2:hello-2.cHelloWorld模塊關(guān)于__init和__exit宏如果該模塊被編譯進(jìn)內(nèi)核,而不是動(dòng)態(tài)加載,則宏__init的使用會(huì)在初始化完成后丟棄該函數(shù)并收回所占內(nèi)存。如果該模塊被編譯進(jìn)內(nèi)核,宏__exit將忽略“清理收尾”的函數(shù)。這些宏在頭文件linux/init.h定義,用來(lái)釋放內(nèi)核占用的內(nèi)存。例如啟動(dòng)時(shí)看到的信息“Freeingunusedkernelmemory:236kfreed”,正是內(nèi)核釋放這些函數(shù)所占用空間時(shí)的打印信息。HelloWorld模塊關(guān)于__init和__exit宏Hello-3.cstaticint__inithello_3_init(void){ printk(KERN_ALERT"Hello,world%d\n",hello3_data); return0;}staticvoid__exithello_3_exit(void){ printk(KERN_ALERT"Goodbye,world3\n");}HelloWorld模塊內(nèi)核模塊證書(shū)和內(nèi)核模塊文檔說(shuō)明2.4內(nèi)核后,引入識(shí)別代碼是否在GPL許可下發(fā)布的機(jī)制。在使用非公開(kāi)的源代碼產(chǎn)品時(shí)會(huì)得到警告。通過(guò)宏MODULE_LICENSE(“GPL”),設(shè)置模塊遵守GPL證書(shū),取消警告信息。宏MODULE_DESCRIPTION()用來(lái)描述模塊的用途。宏MODULE_AUTHOR()用來(lái)聲明模塊的作者。宏MODULE_SUPPORTED_DEVICE()聲明模塊支持的設(shè)備。這些宏都在頭文件linux/module.h定義。使用這些宏只是用來(lái)提供識(shí)別信息。HelloWorld模塊模塊參數(shù)內(nèi)核允許對(duì)模塊指定參數(shù),這些參數(shù)可在裝載模塊時(shí)改變。在運(yùn)行insmod或者modprobe命令時(shí)給出參數(shù)的值。

insmodhellophowmany=10whom="Mom"如何定義實(shí)現(xiàn)模塊參數(shù)呢?要傳遞參數(shù)給模塊,首先將獲取參數(shù)值的變量聲明為全局變量。然后使用宏moudle_param來(lái)聲明 intmyint=3;

module_param(myint,int,0);HelloWorld模塊模塊參數(shù)module_param(name,type,perm); perm是一個(gè)權(quán)限值,控制誰(shuí)可以存取模塊參數(shù)在sysfs中的表示。 perm被設(shè)為0,就根本沒(méi)有sysfs項(xiàng)這個(gè)宏定義應(yīng)當(dāng)放在任何函數(shù)之外,典型地是出現(xiàn)在源文件的前面。應(yīng)該總是為變量賦初值。HelloWorld模塊模塊參數(shù)宏MODULE_PARM_DESC()用來(lái)注解該模塊可以接收的參數(shù)。該宏兩個(gè)參數(shù):變量名和一個(gè)對(duì)該變量的描述。模塊可以用這樣的命令行加載: ./insmodmymodule.komyvariable=2

HelloWorld模塊模塊參數(shù)聲明一個(gè)數(shù)組參數(shù):

module_param_array(name,type,num,perm);name數(shù)組的名子(也是參數(shù)名)type數(shù)組元素的類型num是數(shù)組元素的個(gè)數(shù),模塊加載者拒絕比數(shù)組能放下的多的值。perm是通常的權(quán)限值.如果數(shù)組參數(shù)在加載時(shí)設(shè)置。HelloWorld模塊多個(gè)文件構(gòu)成的內(nèi)核模塊Makefile會(huì)幫我們完成編譯和連接的工作。例如內(nèi)核模塊分兩個(gè)文件start.cstop.c,則Makefile這樣寫(xiě): obj-m+=startstop.o startstop-objs:=start.ostop.o

跟單個(gè)文件模塊的編譯方式一樣,內(nèi)核編譯系統(tǒng)會(huì)將所有的目標(biāo)文件連接為一個(gè)文件。HelloWorld模塊內(nèi)核模塊和用戶程序的比較內(nèi)核模塊是如何開(kāi)始和結(jié)束的用戶程序通常從函數(shù)main()開(kāi)始,執(zhí)行一系列的指令并且當(dāng)指令執(zhí)行完成后結(jié)束程序。從頭到尾執(zhí)行任務(wù)。內(nèi)核模塊從函數(shù)init_module或是宏module_init指定的函數(shù)調(diào)用開(kāi)始。這就是內(nèi)核模塊的入口函數(shù)。初始化函數(shù)的任務(wù)注冊(cè)自己,為以后內(nèi)核調(diào)用模塊函數(shù)做準(zhǔn)備。模塊的退出函數(shù)則在模塊別卸載之前調(diào)用,撤銷“初始化函數(shù)”注冊(cè)的擴(kuò)展功能。內(nèi)核模塊和用戶程序的比較模塊可調(diào)用的函數(shù)應(yīng)用a程序可以調(diào)用它沒(méi)有定義的函數(shù)(函數(shù)庫(kù)中的函數(shù))。因?yàn)樵谶B接階段與合適的函數(shù)庫(kù)連接,解決外部引用。內(nèi)核模塊是連接到內(nèi)核,它能夠調(diào)用的函數(shù)和變量是內(nèi)核公開(kāi)的函數(shù)和變量,沒(méi)有庫(kù)來(lái)連接。可以在內(nèi)核模塊中使用的函數(shù)只能來(lái)自內(nèi)核本身。內(nèi)核提供了哪些函數(shù)符號(hào)?查看/proc/kallsyms文件。內(nèi)核模塊編譯保證系統(tǒng)具備正確的編譯器、模塊工具、以及其他必要工具。內(nèi)核目錄Documentation/Changes列出了需要的工具版本。用錯(cuò)誤的工具版本建立一個(gè)內(nèi)核(包括模塊),可能導(dǎo)致一些奇怪復(fù)雜的問(wèn)題。構(gòu)建2.6內(nèi)核模塊,首先需要有配置并構(gòu)建好的2.6內(nèi)核源代碼樹(shù)。而且最好運(yùn)行和模塊對(duì)應(yīng)的內(nèi)核。目的是使用2.6內(nèi)核的構(gòu)建系統(tǒng)kbuild,kbuild使得內(nèi)核源碼外的內(nèi)核模塊編譯跟內(nèi)核編譯統(tǒng)一起來(lái)。Makefile格式:obj-m+=hello-1.o表明有一個(gè)模塊要從目標(biāo)文件hello-1.o建立,kbuild從該目標(biāo)文件建立內(nèi)核模塊hello-1.ko。執(zhí)行以下命令編譯模塊:make-C/usr/src/linux-`uname-r`M=$PWDmodules 改變目錄到用-C選項(xiàng)提供的內(nèi)核源碼目錄,在那里找到內(nèi)核的頂層makefile。M=選項(xiàng)使makefile在試圖建立模塊目標(biāo)前,回到模塊源碼目錄。內(nèi)核模塊編譯管理內(nèi)核模塊的命令lsmod列出已經(jīng)掛載的內(nèi)核模塊lsmod是列出目前系統(tǒng)中已加載的模塊的名稱及大小等效果跟通過(guò)less/proc/modules查看模塊一

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論