最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

理解linux內(nèi)核的vmlinuz和initrd概念

2023-03-22 13:02 作者:有AI野心的電工和碼農(nóng)  | 我要投稿

Original address:http://www.chenjunlu.com/2010/11/understanding-of-vmlinuz-initrd-and-system-map/

1. vmlinuz

vmlinuz是可引導(dǎo)的、壓縮的內(nèi)核。

vm”代表“Virtual Memory”。Linux支持虛擬內(nèi)存,不像老的操作系統(tǒng)比如DOS有640KB內(nèi)存的限制。

Linux能夠使用硬盤空間作為虛擬內(nèi)存,因此得名“vm”。

vmlinuz是可執(zhí)行的Linux內(nèi)核,它一般位于/boot/vmlinuz,它一般是一個(gè)軟鏈接

vmlinuz的建立有兩種方式:

1. 編譯內(nèi)核時(shí)通過(guò)make zImage創(chuàng)建,然后通過(guò)如下命令產(chǎn)生。zImage適用于小內(nèi)核的情況,它的存在是為了向后的兼容性。

# cp /usr/src/linux-2.4/arch/i386/linux/boot/zImage /boot/vmlinuz

2. 內(nèi)核編譯時(shí)通過(guò)命令make bzImage創(chuàng)建,然后通過(guò)如下命令產(chǎn)生。bzImage是壓縮的內(nèi)核映像,需要注意,bzImage不是用bzip2壓縮的,bzImage中的bz容易引起誤解,bz表示“big zImage”。 bzImage中的b是“big”意思。 zImage(vmlinuz)和bzImage(vmlinuz)都是用gzip壓縮的。它們不僅是一個(gè)壓縮文件,而且在這兩個(gè)文件的開(kāi)頭部分內(nèi)嵌有g(shù)zip解壓縮代碼。所以你不能用gunzip或gzip -dc解包vmlinuz。

# cp /usr/src/linux-2.4/arch/i386/linux/boot/bzImage /boot/vmlinuz

內(nèi)核文件中包含一個(gè)微型的gzip用于解壓縮內(nèi)核并引導(dǎo)它。

兩者的不同之處在于,老的zImage解壓縮內(nèi)核到低端內(nèi)存(第一個(gè)640K),bzImage解壓縮內(nèi)核到高端內(nèi)存(1M以上)。

如果內(nèi)核比較小,那么可以采用 zImage或bzImage 之一,兩種方式引導(dǎo)的系統(tǒng)運(yùn)行時(shí)是相同的。大的內(nèi)核采用bzImage,不能采用 zImage。

vmlinux是未壓縮的內(nèi)核,vmlinuz是vmlinux的壓縮文件。

2. initrd-x.x.x.img

initrd是initial ramdisk的簡(jiǎn)寫。

initrd一般被用來(lái)臨時(shí)的引導(dǎo)硬件 到 實(shí)際內(nèi)核vmlinuz能夠接管 并 繼續(xù)引導(dǎo)的狀態(tài)。

一般initrd主要是用于加載ext3等文件系統(tǒng)及SCSI設(shè)備的驅(qū)動(dòng)

比如,使用的是SCSI硬盤,而內(nèi)核vmlinuz中并沒(méi)有這個(gè)SCSI硬件的驅(qū)動(dòng),那么在裝入SCSI模塊之前,內(nèi)核不能加載根文件系統(tǒng),但 SCSI模塊存儲(chǔ)在根文件系統(tǒng)的/lib/modules下。為了解決這個(gè)問(wèn)題,可以引導(dǎo)一個(gè)能夠讀實(shí)際內(nèi)核的initrd內(nèi)核并用initrd修正 SCSI引導(dǎo)問(wèn)題。

initrd映象文件是使用mkinitrd創(chuàng)建的。mkinitrd 實(shí)用程序能夠創(chuàng)建 initrd 映象文件。

這個(gè)命令是RedHat專有的。其它Linux發(fā)行版或許有相應(yīng)的命令。這是個(gè)很方便的實(shí)用程序。具體幫助請(qǐng)使用man mkinitrd命令來(lái)查看。


理解linux內(nèi)核的vmlinuz和initrd概念的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
宽城| 奉节县| 靖江市| 章丘市| 乌拉特后旗| 越西县| 龙陵县| 寿阳县| 广丰县| 余江县| 长岭县| 凤凰县| 乌拉特后旗| 高邮市| 蚌埠市| 汤原县| 天津市| 西昌市| 科技| 四会市| 永修县| 黄龙县| 保靖县| 仲巴县| 宁化县| 定西市| 赣州市| 来凤县| 藁城市| 江永县| 泽州县| 洪江市| 育儿| 苍山县| 格尔木市| 大新县| 大厂| 昭苏县| 阿尔山市| 县级市| 安义县|