日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

initrd.img、vmlinux和 vmlinuz

系統 2517 0

initrd.img是一個小的映象,包含一個最小的linux系統。通常的步驟是先啟動內核,然后內核掛載initrd.img,并執行里面的腳本來進一步掛載各種各樣的模塊,然后發現真正的root分區,掛載并執行/sbin/init...

initrd.img當然是可選的了,如果沒有initrd.img,內核就試圖直接掛載root分區。

說initrd.img文件還會提到另外一個名角---vmlinuz。vmlinuz是可引導的、壓縮的內核。“vm”代表 “Virtual Memory”。Linux 支持虛擬內存,不像老的操作系統比如DOS有640KB內存的限制。Linux能夠使用硬盤空間作為虛擬內存,因此得名“vm”。另外:vmlinux是未壓縮的內核,vmlinuz是vmlinux的壓縮文件。

為什么要initrd.img

系統內核vmlinuz被加載到內存后開始提供底層支持,在內核的支持下各種模塊,服務等被加載運行。這樣當然是大家最容易接受的方式,曾經的linux就是這樣的運行的。假設你的硬盤是scsi 接口而你的內核又不支持這種接口時,你的內核就沒有辦法訪問硬盤,當然也沒法加載硬盤上的文件系統,怎么辦?把內核加入scsi驅動源碼然后重新編譯出一個新的內核文件替換原來vmlinuz。

需要改變標準內核默認提供支持的例子還有很多,如果每次都需要編譯內核就太麻煩了。所以后來的linux就提供了一個靈活的方法來解決這些問題---initrd.img。initrd.img文件就是個ram disk的映像文件。ramdisk是用一部分內存模擬成磁盤,讓操作系統訪問。ram disk是標準內核文件認識的設備(/dev/ram0)文件系統也是標準內核認識的文件系統。內核加載這個ram disk作為根文件系統并開始執行其中的"某個文件"(2.6內核是 init文件)來加載各種模塊,服務等。經過一些配置和運行后,就可以去物理磁盤加載真正的root分區了,然后又是一些配置等,最后啟動成功。也就是你只需要定制適合自己的 initrd.img 文件就可以了。這要比重編內核簡單多了,省時省事低風險。

initrd.img、vmlinux和 vmlinuz


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 沭阳县| 邵武市| 蓬溪县| 青铜峡市| 肃南| 安吉县| 海晏县| 革吉县| 新邵县| 都兰县| 汝城县| 丹江口市| 佛山市| 剑阁县| 乌什县| 塔河县| 萨嘎县| 敦化市| 八宿县| 平乡县| 嘉善县| 屯留县| 沙河市| 新丰县| 平安县| 安陆市| 宁城县| 新干县| 抚松县| 武清区| 安图县| 松溪县| 灌云县| 琼结县| 苗栗市| 德昌县| 安达市| 西盟| 福清市| 保亭| 沾化县|