linux启动过程分析

一、  BIOS加电自检: linux

加电自检,检测硬件设备。而后按照cmos上面的顺序来搜索处在活动状态下的能够引导的设备。能够是光驱、软盘、USB等。 windows

二、  加载主引导加载程序(MBR): 网络

主引导程序是一个512字节的映像。包含一点机器码还有一个小的分区。 spa

主引导程序的任务就是查找而且加载处在硬盘分区上的次引导程序。经过分区表查找活动分区,并将处在活动分区的次引导加载程序读取到内存里面运行 进程

三、  加载次引导记载程序(GRUB) 内存

次引导加载程序只要就是加载linux内核。 it

上一阶段结束以后次引导加载程序就会在内存里面跑起来。就会出现GRUB图形界面,让用户选择加载什么样的内核。 变量

四、  linux内核映像: 配置

用户选择要加载的内核以后,次引导加载程序(GRUB)就会根据/boot/grub.conf配置文件中所设置的信息,从/boot/所在的分区上读取Linux内核映像,而后把内核映像加载到内存中并把控制权交给Linux内核。 搜索

linux内核得到控制权以后开始干本身的事

(1)、  检测硬件

(2)、  解压缩本身并安装必要驱动

(3)、  初始化与文件系统相关的虚拟设备,LVM或RAID

(四、  装载根文件系统,挂在根目录下面

(5)、  完成以后,linux在进程空间里面加载init程序,下面轮到init干活

五、  init进程

init是全部进程的发起者和控制者,全部的进程都由此衍生。

init进程得到控制权以后,它会执行/etc/rc.d/rc.sysinit脚本,根据里面的代码设置环境变量、网络、启动swap、检查并挂载文件系统、执行其余初始化工做。

至此,linux启动完成。

咱们稍微总结一下:

首先是BIOS加电自检,以后加载主引导加载程序、次引导加载程序,最后就是linux内核映像,完了把控制权交给init进程,完成初始化工做。

swap分区是什么?

相似windows系统中的虚拟内存,当物理内存不够用的时候,使用swap中的内存。

相关文章
相关标签/搜索