如何使用 BIOS 中断设置引导分区
Posted
技术标签:
【中文标题】如何使用 BIOS 中断设置引导分区【英文标题】:How to set boot partition using BIOS interrupts 【发布时间】:2018-11-23 05:02:36 【问题描述】:Windows 允许您设置一个特定的磁盘分区来启动。设置引导分区允许我运行我在下次打开计算机时创建的自定义引导加载程序。但是,在我可以从我的引导加载程序将引导分区设置回 Window 的引导分区之前,我实际上无法执行此操作。什么是允许我从引导加载程序(实模式 x86 程序)设置引导分区的 Bios 中断(或其他方法)?
【问题讨论】:
【参考方案1】:没有 BIOS 中断可以做到这一点。您要做的是为应该启动的分区设置活动分区标志。该标志存储在每个分区表条目的第一个字节中。如果字节为 80h,则分区处于活动状态,如果字节为 00h,则分区处于非活动状态。请注意,最多一个分区应该处于活动状态。以下是您需要做的:
从磁盘加载 MBR 或假设它位于 0000:0600,这是 MBR 通常自行重定位的位置。 检查偏移量 01beh、01ceh、01deh 和 01eeh 处的字节以查看哪个分区处于活动状态 将所有这些字节设置为 00h,最多一个除外 将 MBR 写回磁盘。由于 MBR 始终是磁盘的第一个扇区,因此您可以放心地使用 Int 13h/AH=03h 来简化代码。【讨论】:
以上是关于如何使用 BIOS 中断设置引导分区的主要内容,如果未能解决你的问题,请参考以下文章