eva*_*daz 5 boot kernel initrd initramfs block-device
考虑到 GRUB 执行以下几行:
kernel /vmlinuz root=/dev/sda1 ro
initrd /initrd
Run Code Online (Sandbox Code Playgroud)
在启动时,Linux 内核如何找到/dev/sda1
设备节点?
我知道 initrd/initramfs 映像包含用于存储(等)设备的模块,这些模块被加载到内存中以启用对存储的访问。困扰我的是内核如何准确root=/dev/sda1
解析内核参数。
initrd/initramfs 中的/init
(或/linuxrc
)脚本是否先创建/dev
目录,然后在其中创建设备节点/dev/sda1
?或者“主要”和“次要”数字/dev/sda1
是在内核中硬编码的?