标签:启动
Linux启动流程主要分成下面几步
POST, 加电自检
Boot Sequence,引导启动设备
MBR启动引导程序
引导kernel和ramdisk
切换到真正的根,并运行/sbin/init
3. MBR启动引导程序
系统启动时会在启动的设备上查找是否有MBR(Master Boot Record), 如果有则运行这个引导程序.CentOS5或6用的是grub. 它主要是加载/boot分区硬盘的驱动, 以便来运行后面的kernel和ramdisk
4.引导kernel和ramdisk
在引导kernel前,还要运行最后一部分grub程序, 包括配置文件信息/boot/grub/grub.conf. 在通过这个加载不同的内核和ramdisk.
ramdisk的主要作用是加载后面根的分区硬盘, 这个和grub需要加载内核分区硬盘相似. ramdisk包含了根分区硬盘的驱动模块, 它其实是一个只存在于内存中的根系统.
5. 切换到真正的根,并运行/sbin/init
也就是运行一连串相关/sbin/init的脚本, 主要包括/etc/inittable -> /etc/rc.d/rc.sysinit -> /etc/rc.d/rc#.d->/etc/rc.d/init.d/下的脚本, #是根据系统的启动编号, 命令行启动是3, 图形启动是5.
和windows 7 启动流程比较
POST, 加电自检
Boot Sequence,引导启动设备
MBR启动引导程序
运行保留分区上的Bootmgr+BCD, bootmgr相当于一个小型的windows系统, 而bcd就是配置文件, 可以用来显示并启动多个操作系统.
运行系统分区上的winload.exe,并加载内核.
标签:启动
原文地址:http://jzrobbie.blog.51cto.com/6535329/1705074