首页 理论教育 BIOS引导工作简介-操作系统实现之路

BIOS引导工作简介-操作系统实现之路

时间:2023-10-21 理论教育 版权反馈
【摘要】:具体的引导工作,是由BIOS完成的。BIOS会试图从整个序列的第一个设备开始,检查其状态和引导能力。如果在这个过程中能够找到一个可引导扇区,则BIOS会把该扇区的内容加载到内存,并跳转到该扇区,执行引导代码。这个跳转指令,就是BIOS程序在计算机启动过程中执行的最后一条指令,至此,BIOS的工作结束。由此可见,BIOS在计算机引导过程中的角色是非常重要且复杂的。

BIOS引导工作简介-操作系统实现之路

BIOS(Basic Input and Output System,基本输入/输出系统)的功能和作用,在这里就不赘述了,这是阅读本书最基本的铺垫内容,比掌握C语言还要基本。如果读者不理解BIOS的功能和作用,那么建议先不要阅读后续内容,先补习一下BIOS相关的知识,否则将无法阅读。

按照个人计算机(PC)的硬件标准,引导环节发生在计算机的硬件系统检测完成之后。具体的引导工作,是由BIOS完成的。BIOS维持一个可用于引导计算机的硬件设备列表,比如本地硬盘、本地光驱、网络、USB接口设备等,然后做一个排序。BIOS会试图从整个序列的第一个设备开始,检查其状态和引导能力。比如针对光驱,首先会判断光驱中是否存在光盘,如果不存在,则跳过光驱设备,进入下一个设备的检测过程。如果发现光盘存在,则试图读取光盘的第一个扇区,并检查这是不是一个可引导扇区(通过检查扇区的最后两个字节是不是0x55AA)。如果发现不是一个可引导扇区,则也跳过光盘,再检查引导序列中的下一个设备,直到发现一个可引导的设备为止。如果遍历完整个引导设备列表,未找到任何可引导设备,则引导过程失败,BIOS会提示无法找到可启动设备。如果在这个过程中能够找到一个可引导扇区,则BIOS会把该扇区的内容加载到内存,并跳转到该扇区,执行引导代码。这个跳转指令,就是BIOS程序在计算机启动过程中执行的最后一条指令,至此,BIOS的工作结束。后续工作将由引导扇区代码完成。(www.xing528.com)

由此可见,BIOS在计算机引导过程中的角色是非常重要且复杂的。但是由于其独立于操作系统的实现,不是本书重点分析的对象。本章重点分析引导扇区被加载到内存,并开始执行后的过程。这个过程属于操作系统的作用范畴,而且是操作系统生命周期的最开始部分。本章将以硬盘为例,首先分析硬盘的逻辑结构和主引导记录(MBR)的作用,然后再分析不同的文件系统下,操作系统引导扇区的功能差异和实现差异,以及每种实现的功能缺陷。最后给出一种克服了这些缺陷的引导程序制作方法—预置引导法,并以Hello China操作系统的引导程序为实例,说明这种方法的应用。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈