正常启动后如何触发可启动CD的启动过程?

时间:2012-07-10 19:15:29

标签: windows linux dos boot bootloader

我一直在使用不同版本的多个启动软件,试图使用我最喜欢的PC工具创建一个USB引脚,并在正常启动到DOS(或其他东西)之后用ISO启动一个文件夹。

但是很多ISO都无法正常运行,或者根本不运行(即Windows启动CD等),所以我有了新的想法:

是否可以创建可启动的MS-DOS USB引脚,然后在启动后,从DOS提示符触发CD-ROM的正常启动序列?

像这样:

  • 开启电脑。
  • 按键以获取启动顺序菜单(在我的情况下为F12)。
  • 选择“从USB启动”。
  • 让USB启动进入DOS(......或其他可用于此目的的其他内容?)。
  • 从DOS提示符开始“某些程序/脚本”以在普通光驱中触发可引导CD,就好像它是直接从BIOS引导顺序菜单触发一样。

(如果可以的话,我会继续添加一个菜单,其中包含启动虚拟CD驱动器软件和将ISO文件挂载到USB引脚的选项)

感谢任何建议和/或想法和想法!

1 个答案:

答案 0 :(得分:1)

理论上,您可以使用Int13h/AH=4Ch从BIOS下运行的代码启动CD-ROM启动。但是,我似乎记得读过大多数BIOS实现并没有实际实现El Torito标准的这一部分。 (那是很久以前的事了,所以也许你不会在现代BIOS上遇到这个问题,虽然我不会指望它。)

重要的是要注意(根据我的经验),一旦启动操作系统,这不太可行。 DOS不会更改CPU模式(假设您没有安装任何扩展内存驱动程序),但它确实以其他方式更改了系统上下文 - 例如,IIRC,它挂起了几个BIOS中断。因此,一旦DOS运行,你就无法覆盖它(为了从CD启动另一个操作系统)而不会有任何事情发生。

因此,为了使这项工作(a)你必须在裸BIOS中运行你的代码,没有操作系统; (b)您需要一个能够正确实现启动功能的BIOS。第一部分只是关于裸装配和BIOS functions的问题,但第二部分几乎不受你的控制。