BIOS与引导程序的区别

BIOS与引导程序的区别

首先,我知道 BIOS 正在被弃用!我刚刚在 Silberschatz OS 教科书中看到了“引导程序”这个术语,我意识到它的功能与 BIOS 非常相似,查看了互联网上的解释,例如:

现代 PC 中的 BIOS 初始化并测试系统硬件组件,并从大容量存储设备加载引导加载程序或操作系统。维基百科

我想知道它们是否相同或者是两个不同的东西?

(我还想说一下,我相信“引导程序”一定与引导加载程序不一样,所以请不要谈论引导加载程序和 BIOS 之间的区别,这已经在 SU 上了,不是我的问题,TYIA。)

答案1

仅就您对您自己的问题的评论而言:

根据我在这些链接中看到的内容,“引导程序”一词在 Silberschatz 中使用不准确,可能是为了简化理解。

— 我认为更正确的说法是,引导加载程序是整个引导程序的一个子部分,它专门处理其他更高层(例如:操作系统)的加载,就像 POST 是整个引导程序的一个子部分(必须位于主要部分之前)一样...

...或者换句话说:

  • 引导是一个完整的过程;
  • 整个“引导程序”是一些较小的程序和系统的集合(即:它并不全部集中在一个地方,只是很大一部分在 BIOS 芯片上);
  • POST 总是位于其他任何内容之前(有点像面向对象/关系/函数式编码出现之前的旧程序编码方法的“初始化”部分,其中所有程序都可以通过一个简单的程序流程图来定义:init > mainloop > end );
  • 接下来是主引导程序,它在操作系统加载之前(并需要)准备默认的通用设备驱动程序和其他较低层系统;
  • 引导加载程序有点像简单引导程序流程图的末尾或终端部分,其中控制权移交给默认或选定的操作系统(或其他一些功能端点,如诊断系统);
  • BIOS 只是一种较旧的格式,用于容纳部分 init(又名 POST - 其余部分在其他地方进行硬编码/硬连线)和其余主(引导)程序,以及存储在硬盘上的有关安装了哪些操作系统的信息的链接,以及如何将控制权移交给默认或用户选择... UEFI 是一种较新的格式,用于取代旧的 BIOS 格式。

相关内容