在 BIOS/MBR 模式下使用 Windows 双启动时的引导加载程序位置和启动过程

在 BIOS/MBR 模式下使用 Windows 双启动时的引导加载程序位置和启动过程

我最近换回了仅支持 BIOS 固件的 G31 主板,想知道如果我尝试 Windows 双启动会发生什么。

图片来自维基百科 (请注意,我们将讨论示例 1

Windows 和 Ubuntu 安装程序都在第一个分区之前对齐 1MiB 偏移量。

Linux 优先

Ubuntu 将安装boot.img在 446 字节 MBR 引导代码区域上,core.img紧接着 MBR 分区表。如果在此之后安装 Windows,会发生什么情况?我怀疑它可能会覆盖该boot.img区域,并且可能还会core.img用自己的引导加载程序替换。或者它可能会直接从引导区域启动到位于某处的引导加载程序C:\Windows。我不知道 Windows 启动管理器是如何工作的。

Windows 优先

Windows 会将其 446 字节引导代码留在 MBR 内,该代码指向磁盘上某个位置的实际引导加载程序(它可能直接指向C:\Windows,但也可能像 GRUB 2 一样分为 3 个阶段,我不知道)。如果我之后安装 Ubuntu,GRUB 2 将用 覆盖引导区boot.img。我在这里感到困惑的是它放置的位置,core.img以避免与 Windows 启动管理器发生冲突。根据gnu网站core.img可以放在普通文件系统上,而不是隐藏在未分区的空间内。


有人能解释一下吗?我真的想知道它是如何工作的,以便能够备份和管理两个操作系统。

相关内容