我正在研究无仿真启动操作系统,如您所知,在无仿真启动中,启动映像可以是任何 (实模式(二进制可执行代码。
我为我的操作系统使用 2 阶段引导加载程序,首先我加载第一个阶段 我遇到的问题是在第二阶段,当引导加载程序尝试加载操作系统映像时,它需要一个设备编号 用于进行 BIOS 调用的 CD/DVD 驱动器
问题是: 我应该使用哪个设备号码?
我已经尝试了0x81
(第一个IDE从站(和0x82
(第二个IDE主站( 在某些PC上它适用于其他PC则不然
El Torito(CD-ROM标准(协议仅声明BIOS
应模拟CD/DVD
通过任意设备编号驱动。
不同的BIOS
可能会想出 不同的驱动器号。
当 BIOS 调用引导加载程序时,它还会传递 CPUDL
寄存器中的模拟驱动器号。
引导加载程序必须捕获驱动器 数字并使用它来进行 BIOS 调用。
其余部分类似于仿真启动