内核加载
在上篇博文里面我说明过计算机如何从远古到近代的启动流程,然后,走到操作系统一层的时候就没有深入阐述了,在这篇博文我将以Linux系统为例来叙述操作系统是如何启动的。
通常在系统/boot
目录下放着内核文件,如下:
1 | initramfs-linux.img |
GRUB(或者LILO)加载内核的时候,会把vmlinuz-linux
映射到内存并会把它的一个初始根目录的文件镜像(initramfs-linux.img
)作为文件系统加载到内存,系统会从这个迷你的初始化文件系统来启动,在这个迷你的文件系统里面又会加载真正的磁盘文件系统,带有这种initramfs
的都是这种加载流程,但是,对于那种没有initramfs
的(例如:Slackware发行版本),它是加载内核后,内核直接从磁盘加载文件系统,这种区分跟内核配置有关。