LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1797|回复: 2

启动的时候,内核是怎么找到根文件系统的?

[复制链接]
发表于 2011-1-9 02:38:36 | 显示全部楼层 |阅读模式
假设启动参数是root=/dev/mtdblock2,也就是说根文件系统在/dev/mtdblock2这个设备上。

由于此时还没有装载根文件系统,那么内核是怎样根据“/dev/mtdblock2”这样一个字符串 找到所对应的硬件设备的呢?


我是这样理解的:内核首先根据“/dev/mtdblock2”这个字符串,找到设备号(这个设备号是怎样找到的?是编译到内核里面去了吗?),然后根据设备号找到设备的驱动程序,然后设备驱动程序把“设备的中根文件系统的超级块”读进内存中,从而加载了根文件系统。

是这样一个过程吗?
请大侠们帮小弟解释一下!
非常感谢!
发表于 2011-1-9 12:04:37 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2011-1-9 23:51:32 | 显示全部楼层
没有那么复杂吧

内核使用 udev 得到 mtdblock2 设备信息的。

然后将 udev 挂载为 /dev 路径
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表