文件系统未加载时怎么加载内核文件
时间:2004-11-29
来源:互联网
期望各位高手能够给出详细解释,谢谢!
作者: grix 发布时间: 2004-11-29
看到lilo加载进initrd作为根文件系统,然后内核利用这个ramdisk加载模块,从而能读取真正的root filesystem. 现在对initrd和vmlinuz的作用和区别还有有点不明,能给出详细解释吗?对了,Lilo是如何加载initrd和vmlinuz的?
作者: grix 发布时间: 2004-11-29
作者: kj501 发布时间: 2004-11-29
作者: grix 发布时间: 2004-11-29
最初由 grix 发表 那loader是如何加载vmlinuz和lilo,版主的意思是loader能识别文件系统,还是loader在mbr里标识了其在硬盘上的具体物理位置,如磁道扇区等信息? |
既然你的硬盘上的文件是以某个具体的文件系统(如ext2)来组织的,那么loader要定位所需文件,必然要在能识别该文件系统的前提下实现,你自己ls一下/boot/grub就可以看到很多*_stage_1_5,这是很明显的逻辑问题。
GRUB自己本身能识别多种文件系统,进而才定位到内核(文件)和initrd,将initrd放到某个标识的内存区域,最后将控制权交给内核,由内核来初始化自身并进一步处理initrd。
作者: home_king 发布时间: 2004-11-29
作者: grix 发布时间: 2004-11-29
最初由 home_king 发表 loader,就应该指的是OS loader,如GRUB、lilo,不是什么别的。 既然你的硬盘上的文件是以某个具体的文件系统(如ext2)来组织的,那么loader要定位所需文件,必然要在能识别该文件系统的前提下实现,你自己ls一下/boot/grub就可以看到很多*_stage_1_5,这是很明显的逻辑问题。 GRUB自己本身能识别多种文件系统,进而才定位到内核(文件)和initrd,将initrd放到某个标识的内存区域,最后将控制权交给内核,由内核来初始化自身并进一步处理initrd。 |
*_stage_1_5是加载grub的stage2 专用的,然后加载其他的文件如kernel,initrd就用stage2中的文件系统。
作者: phyma 发布时间: 2004-11-30
否则没有必要每次修改lilo.conf文件 都需要运行lilo进行加载
作者: z21921 发布时间: 2004-12-03
最初由 z21921 发表 那lilo是不是记录内核的位置啊?? 否则没有必要每次修改lilo.conf文件 都需要运行lilo进行加载 |
作者: phyma 发布时间: 2004-12-03
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28