2024年5月14日发(作者:)

多重系统启动盘的制作

多重系统启动盘的制作

上回我们讲单系统的启动光盘的制作,现在我们来讲多重启动光

盘制作。目前采用这种方法的工具软件主要有3个:Diskemu、

ISOLINUX/MEMDISK和Boot Scriptor。实际上,Boot sriptor是

Michael K Ter Louw在ISOLINUX的基础上二次开发的产品,但它对

ISOLINUX的功能和性能都进行了非常大的扩充,与ISOLINUX的差别

较大,特别是从1.2.3b版开始引入了Diskemu,使其兼容性大大提

高,所以我们重点是Diskemu和Boot Scriptor。

可以毫不夸张地说,Diskemu是个划时代的经典之作。在Diskemu被

开发出来之前,人们要制作1张多重启动CD-ROM真的需要花费九牛

二虎之力:按照El Torito规范需要进行繁琐的地址计算,找到地址

后再去修改ISO文件,最后辛辛苦苦制作出来的多重启动CD-ROM还

不能保证兼容所有的BIOS!后来,Gary Tong为了解决可启动CD-ROM

无法浏览CD-ROM上文件的问题而开发了Diskemu(支持单重启动

CD-ROM),BIOS模拟法这时才真正诞生。Bart Lagerweij继续这项工

作,使Diskemu能够最多支持20个启动磁盘映像!但非常可惜,2001

年11月,Bart在写完 v1.1 BETA后便停止了对Diskemu

的继续开发(参见/diskemu,英文)。但不可否

认,直到现在,Diskemu仍然是非常优秀的,其兼容性最好。下面是

Diskemu的主要特点:

(1)支持ISO 9660文件系统。

(2)使用一种简单的类似批处理形式的脚本语言来执行一定的

动作,例如:清屏,显示提示信息,等待按键,运行特定磁盘映像,

等等。

(3)可以快速地编写自己定制的启动菜单,并启动相应的磁盘

映像。

(4)为专业人员提供一个命令行调试模式,手工执行一些操作。

(5)自动检查软盘映像类型。支持多种软盘映像:160 KB,180

KB,320 KB,360 KB,1.2 MB,720 KB,820 KB,1.44 MB,1.68 MB,

1.72 MB,2.88 MB。

(6)使用1张可启动的Diskemu CD-Rom,你甚至可以从另外不

能启动的CD-ROM上启动磁盘映像文件。当然需要首先用可启动的

Diskemu CD-Rom启动,然后进入命令行模式,再更换光盘,键入“cd

”,再运行光盘上的映像文件(在实际工作中这项功能应用得并不

多)。

(7)它使用一个单独的引导器(),将能够正确地加

载,甚至在BIOS不完全兼容El-Torito规范的主板上,

也能保证正确引导。

Bart还有几个计划没有完成,当然也是Diskemu的主要不足:

(1)检测第1快硬盘是否看似能够启动。

(3)增加颜色功能。

(2)让diskem1x直接将信息写入屏幕缓存。

(4)键盘映射(以支持其他国家的键盘)。

(5)增加软盘映像热交换功能。

(6)加载COM文件(COM文件一定不能用DOS功能)。

“非模拟”式BIOS模拟法要求有1个引导器和1套启动映像/菜单管

理器。引导器必须以非模拟方式加载,即启动后不能模拟为软盘或硬

盘,这是制作BIOS模拟法多重启动CD-ROM的关键。下面以Diskemu

为例简述其运行流程,ISOLINUX与Boot Scriptor的运行流程与此

基本类似。