其实Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段。

1.BIOS加电自检

2.加载主引导加载程序(MBR)

3.加载次引导加载程序(GRUB)

4.Linux内核映像

5.init进程

内核映像

当用户选择启动Linux操作系统后:

GRUB会根据/boot/grub.conf配置文件中所设置的信息,从/boot/所在的分区上读取Linux内核映像

然后把内核映像加载到内存中并把控制权交给Linux内核,Linux内核获得控制权后,将会按以下步骤继续引导系统。

(1)内核映像首先会检测系统中的硬件设备,包括内存、CPU、硬盘等,对这些设备进行初始化并配置。

(2)内核映像是经过压缩的,接下来它要对自身进行解压,同时加载必要的设备驱动。

(3)初始化与文件系统相关的虚拟设备,如LVM或者软件RAID等。

(4)装载根文件系统(/),把根文件系统挂载到根目录下。

(5)引导后,Linux内核会在其进程空间内加载init,并把控制器交给init,由init继续完成接下来的引导工作。

内核

技术上说Linux是一个内核。

“内核”指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。

一个内核不是一套完整的操作系统。

一套基于Linux内核的完整操作系统叫作Linux操作系统,或是GNU/Linux。