系统引导过程步骤:
1、加载并初始化内核
linux内核本身就是一个程序,系统引导过程中的第一项任务就是把这个程序载入内存,以便执行它。内核的路径名通常是/vmlinuz或者是/boot/vmlinuz。
2、检测和配置设备
内核执行的第一批任务之一包括检查机器的环境以确定机器有什么硬件。当您为自己的系统构建内核时,应该告诉内核,它会找到哪些硬件设备。当内核开始执行时,它试图找到并初始化已经告诉它的每一个设备。
3、创建内核线程
一旦完成了基本的初始化任务,内核就在用户空间创建几个不是通过系统正规的fork机制所创建的进程,这时内核在引导阶段的任务就完成了。
4、操作员干预(*手工引导)
如果系统以单用户模式进行引导,那么在init启动时,内核所给出的命令行标志(single)会通知init实际要引导的是单用户模式,进程init最后会把控制权交给sulogin。
5、执行启动脚本
到了系统准备运行其启动脚本的时候,我们就能看出它是Linux系统了。
6、多用户运行
在初始化脚本运行过以后,系统就是完全运行的系统了,不过现在用户还不能登录进来,为了在某个特定的终端上接受用户登录,必须有一个getty进程监听终端或者控制台。init直接生成这些getty进程,完成引导过程。init还负责生成图形登录系统(如果设置系统使用的话),如gdm等。
*引导完成后,init拥有一个单用户和几个多用户“运行级”,运行级决定启用系统的哪些资源。
阅读(1387) | 评论(0) | 转发(0) |