第一阶段:BIOS
BIOS是英文BasicInputOutputSystem的缩略词,直译过来后中文名称就是基本输入输出系统。在IBMPC兼容系统上,是一种业界标准的固件接口。BIOS这个字眼是在年第一次由CP/M操作系统中出现。BIOS是个人电脑启动时加载的第一个软件。
1.1硬件自检
系统blos的启动代码首先要做的事情就是进行post(poweronselftest,加电自检),post的主要任务是检测系统中的一些关键设备是否存在和能否正常工作,如内存和显卡等。由于post的检测过程在显示卡初始化之前,因此如果在post自检的过程中发现了一些致命错误,如没有找到内存或者内存有问题时(post过程只检查k常规内存),是无法在屏幕上显示出来的,这时系统post可通过喇叭发声来报告错误情况,声音的长短和次数代表了错误的类型。
接下来系统bios将查找显示卡的bios,存放显示卡bios的rom芯片的起始地址通常在ch处,系统blos找到显卡bios之后调用它的初始化代码,由显卡bios来完成显示卡的初始化。大多数显示卡在这个过程通常会在屏幕上显示出一些显示卡的信息,如生产厂商、图形芯片类型、显存容量等内容,这就是我们开机看到的第一个画面。
如果硬件出现问题,主板会发出不同含义的蜂鸣,启动中止。如果没有问题,屏幕就会显示出CPU、内存、硬盘等信息。
1.2启动顺序
完成硬件自检之后,BIOS把控制权转交给启动顺序的程序,去完成启动下一个设备。计算机的启动设备会有多个,就需要有个启动排序,这个启动排序就是BIOS里面的设定启动顺序项。
三、第二阶段:主引导记录
主引导记录(MBR,MasterBootRecord)是位于磁盘最前边的一段引导(Loader)代码。它负责磁盘操作系统(DOS)对磁盘进行读写时分区合法性的判别、分区引导信息的定位,它由磁盘操作系统(DOS)在对硬盘进行初始化时产生的。
通常,我们将包含MBR引导代码的扇区称为主引导扇区。因这一扇区中,引导代码占有绝大部分的空间,故而将习惯将该扇区称为MBR扇区(简称MBR)。由于这一扇区承担有不同于磁盘上其他普通存储空间的特殊管理职能,作为管理整个磁盘空间的一个特殊空间,它不属于磁盘上的任何分区,因而分区空间内的格式化命令不能清除主引导记录的任何信息。
2.1主引导记录的结构
MBR结构图系统开机或者重启时主引导扇区的读取流程如下所述。
BIOS加电自检(PowerOnSelfTest--POST)。BIOS执行内存地址为FFFF:H处的跳转指令,跳转到固化在ROM中的自检程序处,对系统硬件(包括内存)进行检查。读取主引导记录(MBR)。当BIOS检查到硬件正常并与CMOS中的设置相符后,按照CMOS中对启动设备的设置顺序检测可用的启动设备。BIOS将相应启动设备的第一个扇区(也就是MBR扇区)读入内存地址为:7C00H处。检查:7CFEH-:7CFFH(MBR的结束标志位)是否等于55AAH,若不等于则转去尝试其他启动设备,如果没有启动设备满足要求则显示“NOROMBASIC”然后死机。当检测到有启动设备满足要求后,BIOS将控制权交给相应启动设备。启动设备的MBR将自己复制到:H处,然后继续执行。根据MBR中的引导代码启动引导程序。
分区表信息第四阶段:操作系统
引导程序完成后,将会把控制权转交给操作系统,此时操作系统获得控制权之后,会加载内核程序到内存中。
然后,会以此加载系统的各个模块,比如窗口程序和网络程序,直至执行/bin/login程序,跳出登录界面,等待用户输入用户名和密码。
至此,全部启动过程完成。
所有资料均来自互联网