最近赶上答辩会,听说其中有一道题目是Linux系统启动的先后顺序
当时听到时,整个人都
傻了,幸运提前了解到了,哈哈 赶紧上网搜索和查资料,终于对linux系统启动的顺序有个相对清晰的概念
了,特此写下,以便以后查阅啦~!
当我们按下主机电源开关时,系统启动的序幕就从这一按拉开了。计算机硬件会主动读取BIOS来加载硬
件信息及进行硬件系统的自我测试,然后系统会主动的去读取第一个可开机的装置(由BIOS设定的),此时
就可以读入开机管理程序了。开机管理程序可以指定使用哪个核心档案来开机,并实际加载核心到内存当中
进行解压缩与执行,此时核心就能够开始在内存内活动,并侦测所有硬件信息与加载适当的驱动程序来使整
部主机开始动作,等到核心侦测硬件与加载驱动完毕后,一个最阳春的操作系统就开始在你的PC上面跑了。
主机系统开始动作后,此时Linux会呼叫外部程序开始准备软件执行的环境,并且实际的加载所有系统动
作所需要的软件程序哩!最后系统就会开始等待你的登入和操作啦~ 简单来说,系统开机的经过可以汇整成
底下的流程的:
1. 加载 BIOS 的硬件信息进行自我测试,并根据设定取得第一个可开机的装置;
2. 读取并执行第一个开机装置内 MBR 的 boot Loader (亦即是 grub, spfdisk 等程序);
3. 依据 boot loader 的设定加载 Kernel ,Kernel 会开始侦测硬件不加载驱动程序;
4. 在硬件驱动成功后,Kernel 会主动呼叫 init 程序,而 init 会取得 run-level 信息;
5. init 执行 /etc/rc.d/rc.sysinit 档案来准备软件执行的作业环境 (如网络、时区等);
6. init 执行 run-level 的各个服务之启动 (script 方式);
7. init 执行 /etc/rc.d/rc.local 档案;
8. init 执行终端机仿真程序 mingetty 来启动 login 程序,最后就等待用户登入啦;
阅读(8385) | 评论(0) | 转发(0) |