BIOS,即引导加载程序,不安装在任何操作系统下。
另一个引导加载程序 GNU GRUB 是否安装在操作系统下,还是不在任何操作系统下?
谢谢!
答案1
BIOS 不是引导加载程序。它会尝试从启动设备加载引导加载程序。它通过加载设备的第一个扇区来实现这一点。设备扇区中的空间并不大,因此通常,该扇区中的小程序会加载功能更强大的“第二阶段引导加载程序”,例如 Windows 启动管理器或 GRUB。
当引导加载程序控制系统时,操作系统不会运行。
操作系统可以安装引导加载程序 - 这是通过修改所涉及的硬盘驱动器的第一个扇区以包含第一阶段引导加载程序代码,然后根据所讨论的引导加载程序将其他文件放置在需要或预期的位置来完成的。
我不清楚 UEFI(BIOS 的替代品)是否可以充当引导加载程序 - 不过这在 Windows 系统中通常不具备。其他平台的其他固件(如 U-Boot)可以理解几个文件系统并直接从中加载内核 - 它们具有引导加载程序功能,这与 PC 平台的 BIOS 不同。
答案2
BIOS — 计算机上的 PC/AT 固件 —有引导加载程序。它集成了许多其他功能中的一个。引导加载程序从磁盘设备(某种类型)加载第一个块并运行嵌入其中的程序。该程序要么是标准 MBR 引导程序(大多数操作系统都会安装),要么是 GRUB 等程序的第一阶段,以 MBR 病毒形式安装在磁盘设备的第二个块和后续块中。
标准 MBR 引导程序和 GRUB 都直接在机器固件上运行,利用固件提供的 I/O 等服务。它们不在操作系统上运行。
他们的安装程序即把程序写入磁盘设备第一个及后续扇区中的程序,在操作系统上运行。
在 EFI 固件的世界里,固件有一个引导经理。它理解 FAT 文件系统格式,并且可以从 FAT 卷读取可执行文件并运行它们。这些可执行文件通常内核加载器程序。有时,特别是在 Microsoft Windows 的情况下,它们是更远启动管理器。这些程序也在机器固件上运行,利用 EFI 服务进行 I/O 等,而不是在操作系统上运行。
进一步阅读
- 乔纳森·德·博因·波拉德(2011年)。不同类型的引导程序. 常见问题答案。
- 乔纳森·德·博因·波拉德(2011年)。PC/AT 启动过程. 常见问题答案。
- 乔纳森·德·博因·波拉德(2006年)。EFI 启动过程. 常见问题答案。
- 乔纳森·德·博因·波拉德(2006年)。ARC 启动过程. 常见问题答案。
- 乔纳森·德·博因·波拉德(2006年)。Windows NT 6 启动过程. 常见问题答案。