【发布时间】:2019-01-30 10:36:34
【问题描述】:
我正在研究 no-emulation 引导操作系统,正如您在 no-emulation 引导中所知道的,引导映像可以是任何 (实模式)二进制可执行代码。
我为我的操作系统使用 2 阶段引导加载程序,首先我加载第一阶段 我遇到的问题是在第二阶段,当引导加载程序尝试加载操作系统映像时,它需要一个设备号 用于进行 BIOS 调用的 CD/DVD 驱动器
问题是:我应该使用哪个设备号?
我尝试过0x81(第一个 IDE 从站)和0x82(第二个 IDE 主站)
在某些电脑上它可以在其他电脑上工作它不是
【问题讨论】:
-
@PeterCordes 你能提供更多细节吗
-
我完全不知道。但是,如果您搜索wiki.osdev.org,您应该会找到一些东西。 (或者可能是@MichaelPetch 在 SO 上的答案之一。)或者查看相关的侧边栏;标题中有“dl register and drive number”的问题。
-
在无仿真模式下,您的引导加载程序可以使用 INT 13H AH=4Bh, AL=1 查询引导驱动器
标签: x86 operating-system bootloader osdev dvd