将 MBR 引导代码编写为 UEFI 引导加载程序

将 MBR 引导代码编写为 UEFI 引导加载程序

我对复古计算非常感兴趣,当我在寻找所谓的 AT&T UNIX v7 的“纯”版本时,我偶然发现了这个名为 v7/x86 的 x86 架构端口。它看起来很有趣,所以我尝试下载了它。

但是,我遇到了一个问题。我的机器是基于 UEFI 的,除了硬盘和 v7/x86 CD 之外,我没有其他存储设备。由于此操作系统使用 MBR 引导程序,是否可以反编译为汇编并使用 EDK II 为其编写 UEFI 引导加载程序?

答案1

由于我自己没有编写过任何低级代码,因此暂定答案:

如果您的机器固件有“CSM”或“传统启动”选项,请使用该选项。它提供完整的 BIOS 仿真,从 MBR 引导到运行时服务,并且应该能够按原样启动 v7/x86。

如果你的机器根本没有这样的选项(这种情况很少见),那么自定义基于 UEFI 的引导加载程序可能是可行的,但只有在操作系统本身不依赖于任何BIOS 中断将提供的功能,因为没有 BIOS。(例如,据我所知,纯 80x25 文本模式在 UEFI 世界中不存在,而“磁盘访问”int 13h功能肯定不存在。)

相关内容