Linux系统启动流程(以CentOS为例):
1. 加载BIOS,获得主机的硬件信息并进行开机自检,然后根据设置取得第一个可启动的设备(如硬盘)。
2. 执行第一个可启动设备内MBR(主引导分区)的Boot Loader(如grub)。
3. 根据Boot Loader的设置加载kernel和initrd(虚拟文件系统),kernel开始检测硬件并加载驱动程序。
4. kernel调用init进程,init会取得run-level,通常run-level的默认值为3(纯文本模式)或者5(X Window模式)。
5. init执行/etc/rc.d/rc.sysinit文件来设置系统环境。
6. init启动run-level指定的各个服务(daemon进程)。
7. init执行/etc/rc.d/rc.local文件,可以将用户自定义开机启动命令写入该文件。
8. init执行终端机模拟程序mingetty来启动login进程,等待用户登录。
作者:hws912 发表于2014-2-27 15:38:09
原文链接