Home » 未分类 » linux系统启动过程

linux系统启动过程

第一阶段:

Boot loader(lilo或grub),内核启动前的一段引导程序,主要做三件事:

1.初始化芯片(最直接理解为CPU)

2.根据系统设置,初始化少量的外围设备(例如从U盘启动)

3.启动选择器(针对多操作系统),加载linux内核

 

 

第二阶段:

linux内核启动阶段

1.首先挂载initrd文件,形成我们linux的最小根文件系统(在内核的启动过程中,需要文件系统,而实际上的文件系统存在于硬盘上,linux解决这个问题的办法是,先挂载产生一个最小文件系统initrd,把它装入内存,然后以这个文件系统为依托,去读取完整的文件系统)

2.执行/sbin/init这个文件,产生1号进程(父进程是0号进程:内核)。

执行这一步非常重要,它生成1号进程后,大多数版本的linux内核都会利用1号进程直接或间接的产生其他进程。  而有些内核同时产生出2号进程,不同版本作用不一,我们这个内核2号进程作用是(在用户层面上)管理内存分页。

 

第三阶段:

1.execute /etc/init.d/*   执行/etc/init.d/目录下所有的程序

2.execute /sbin/getty     用来初始化标准输入输出标准错误,0,1,2

然后执行/bin/login,产生出登录界面

3.manger the orphen process管理孤儿进程(操作系统运行中一直都运行)

This entry was posted in 未分类. Bookmark the permalink.