系统启动流程

本文详细介绍了Linux系统从按下电源键到用户登录的启动流程,包括POST加电自检、BIOS启动、引导阶段(stage 1-2-1.5)、加载内核和初始化进程。在引导阶段,涉及MBR、BootLoader、stage 1.5和stage 2,内核加载后运行/sbin/init进程,执行初始化脚本和设置运行级别。整个启动过程涉及到多个配置文件和脚本,确保系统正常启动并进入用户登录状态。
摘要由CSDN通过智能技术生成

一、前言

当我们按下电源的那一刻,到我们进入操作系统,计算机内部进行了一系列复杂的操作。而对于用户来说,这些操作都是看不到的,这里以linux为例,简要的描述一下系统的启动流程。

二、POST加电自检

POST(Power-on self-test)加电自检,又称之为开机自动检测。

当我们按下电源键的时候,电流流过主板的芯片组,芯片组会向CPU发送一个RESET信号,让CPU初始化,同时等待电源发出的POWER GOOD信号(电源准备好信号)。当电源开始稳定供电后,芯片组便撤去RESET信号,CPU马上就从地址FFFF0H处开始执行第一条指令,而这个地址就是指向BIOS的地址,同时将控制权限交给BIOS。系统BIOS的启动代码首先要做的事情就是进行POST,负责完成对CPU 、主板、内存 、硬盘子系统、显示子系统、 串并行接口、键盘、CD-ROM 光驱等硬件情况的检测 。POST是BIOS的一个重要功能。

如果某个设备测试没有通过,检测程序会中止,并根据已定的报警声进行报警,BIOS厂商对报警声也分别作了定义,不同的设置出现故障,其报警声也是不同的,我们可以根据报警声的不同,分辨出故障所在。

这个操作我们称之为POST加电自检。

三、BIOS系统启动自举程序

BIOS是 Base Input/Output System 的缩写,意思是“基本输入输出系统”,这是固化在主板上只读的ROM中的一组基本输入输出驱动程序,除驱动程序外,BIOS的主要内容还有上述的开机通电自检程序,系统启动自举程序、系统参数设置程序。由于这些程序是存放在ROM中,所以它的完整名称又叫ROM BIOS。

BIOS系统启动自举程序。在完成POST自检后,BIOS将按照系统CMOS设置中的启动顺序搜寻软/硬盘及CD-ROM、网络服务器等有效的启动驱动器,读取磁盘的引导记录到内存中,然后将系统控制权交给引导记录,有引导记录完成系统的启动。

CMOS,互补金属氧化物半导体,原意是一种大规模集成电路芯片制造的原料,但在这里它是表示PC主板上的一块可读写的RAM芯片,该RAM芯片中存放着各种系统设置参数,并且可对这些参数随时进行更新。因此,此处CMOS的全称应为CMOS RAM,其特点是功耗低,关机后由电池供电,因而在它上面存放的系统信息不会消失。

对CMOS RAM的各项参数的设置要通过专门的程序来完成,这个专门程序就是我们在前面提到过的,存放在BIOS中的系统参数设置程序。BIOS中的程序在停电后不会消失,所以每次开机时通过特定的按键,就可进入这种CMOS设置程序。由于CMOS设置程序是存放在BIOS中的,所以CMOS设置又称之为BIOS设置,这两种说法都是一回事,但是BISO和CMOS确实是两种不同性质,不同任务的芯片。

BIOS

四、引导阶段

引导阶段也就是计算机加电自检之后到装载操作系统的过程,这个过程有三个阶段,stage 1 - -> stage 1.5 - -> stage 2

1、stage 1 阶段

BIOS会按照定义在CMOS中的顺序去搜索活跃的可引导的存储设备,并读取存储设备中的主引导记录MBR(Master Boot Record)加载到内存中,并将控制权限转交给MBR。然后系统可以根据启动区安装的引导加载程序Boot Loader开始执行核心识别的工作。同时将控制权限转交给stage 1.5 阶段。

MBR(Master Boot Record)主引导记录,又叫做主引导扇区,是计算机开机后访问硬盘时所必须要读取的首个扇区。其开头的446字节内容特指为“主引导记录”(BootLoader),其后是4个16字节的“磁盘分区表”(DPT),以及2字节的结束标志(55AA)。因此,在使用“

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值