日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

内核与ramdisk到底是什么关系?

發(fā)布時間:2025/3/21 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 内核与ramdisk到底是什么关系? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
假如把所有驅(qū)動/模塊都編譯進內(nèi)核(注:即編一個通用的、萬能的內(nèi)核),那自然沒問題,但是這樣就違背了“內(nèi)核”的精神或本質(zhì),所以一般來說驅(qū)動/模塊都駐留在根文件系統(tǒng)本身上/lib/modules/xxx,那么“雞蛋”問題就來了,現(xiàn)在要mount根文件系統(tǒng)需要根文件系統(tǒng)上的模塊文件,怎么辦?于是,想出ramdisk內(nèi)核總是能安裝ramdisk的(注:這是因為ramdisk臨時文件系統(tǒng)和內(nèi)核一樣,也是由bootloader通過低級讀寫命令(如uboot用nand read,而不用通過文件系統(tǒng)層提供的高級讀寫接口)加載進內(nèi)存,因此內(nèi)核可以掛載內(nèi)存里ramdisk文件系統(tǒng)),然后把所有可能需要的驅(qū)動/模塊都放在ramdisk上首先,讓內(nèi)核將ramdisk當作根文件系統(tǒng)來安裝,然后再用這個根文件系統(tǒng)上的驅(qū)動來安裝真正的根文件系統(tǒng),就將這個矛盾問題解決了 ?

ramdisk還舉出一個作用,現(xiàn)在的發(fā)行版在boot時一般都是圖形界面的,那么,ramdisk就可以放framebuffer驅(qū)動和一些圖片來做這種簡單的動畫。
前一段時間剛好也在研究ramdisk, 下面是我找到的關(guān)于ramdisk的資料,希望對樓主有用
在 Linux kernel 2.4 中,initrd 大致的處理流程如下:(方括號表示主要的執(zhí)行單元)[boot loader]?Boot loader 依據(jù)預(yù)先設(shè)定的條件,將 kernel 與 initrd 這兩個 image 載入到 RAM?[boot loader -> kernel]?完成必要的動作后,準備將執(zhí)行權(quán)交給 Linux kernel?[kernel] 進行一系列初始化動作initrd 所在的記憶體被 kernel 對應(yīng)為 /dev/initrd 裝置設(shè)備,? ?? ???透過?kernel 內(nèi)部的 decompressor?(gzip 解壓縮)?解開該內(nèi)容并複製到 /dev/ram0 裝置設(shè)備上?[kernel]?Linux 以 R/W (可讀寫) 模式將 /dev/ram0 掛載為暫時性的 rootfs?[kernel-space -> user-space]?kernel 準備執(zhí)行 /dev/ram0 上的 /linuxrc 程式,并切換執(zhí)行流程?[user space]?/linuxrc 與相關(guān)的程式處理特定的操作,比方說準備掛載 rootfs 等?[user-space -> kernel-space] /linuxrc 執(zhí)行即將完畢,執(zhí)行權(quán)轉(zhuǎn)交給 kernel?[kernel]?Linux 掛載真正的 rootfs 并執(zhí)行 /sbin/init 程式?[user space]?依據(jù) Linux distribution 規(guī)范的流程,執(zhí)行各式系統(tǒng)與應(yīng)用程式?

值得一提的是,以上「兩階段開機」是 initrd 提出的彈性開機流程,在真實的應(yīng)用中,也可能從未需要掛載真正的 rootfs,換言之,只是把系統(tǒng)當作都在 RAM disk 上運作,或者永遠都在 initrd 所引導(dǎo)執(zhí)行的 /linuxrc 程序中執(zhí)行 (注意:kernel 永遠保留 PID=1 作為 init process 識別,而 /linuxrc 執(zhí)行的 PID 必非為 1),在許多裝置如智慧型手機,都是行之有年的,不過這不影響我們后續(xù)的探[/quote]
里邊所說的?initrd 大體上就是指 包含根文件系統(tǒng)的ramdisk

總結(jié)

以上是生活随笔為你收集整理的内核与ramdisk到底是什么关系?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。