xWorks下的硬盘启动方法

时间:2021-09-21 06:00:10

在VxWorks下进行开发调试,在目标机上加载VxWorks映像很重要,在目标机上加载VxWorks映像,最重要的是三个步骤:

第一步,修改config.h文件,在config.h文件里包括硬盘驱动。

#define   INCLUDE_ATA                 /* 包括IDE/EIDE(ATA) 硬盘驱动 */

修改#define DEFAULT_BOOT_LINE(引导行)宏定义。

#define DEFAULT_BOOT_LINE \

"ata=0,0(0,0)host:/ata0a/vxWorks h=192.9.10.91 e=192.9.10.92 u=target"

这样配置引导程序将从目标机主ATA接口硬盘的C盘加载vxWorks。

第二步,在Tornado中生成引导程序bootrom。这个文件的作用是引导vxworks映像。

第三步,生成VxWorks映像。

有了bootrom和VxWorks映像,就可以进行硬盘启动试验了。

VxWorks下的硬盘启动方法一:

Bootrom在开发机Tornado中生成。注意,要选择可压缩的引导程序bootrom,不要选择不可压缩的引导程序bootrom_uncmp,这是因为目标机的引导空间有限,如果选择非压缩的引导程序bootrom_uncmp,容易造成失败。我曾经生成的bootrom_uncmp用于引导,没有成功。Bootrom生成后将其拷贝到tornado\host\X86-win32\bin目录下。在3寸软驱中中插入一张格式化好的软盘。启动MS-DOS的命令行方式在此目录下执行:

Mkboot  a:  bootrom↙

执行完上述命令后开始制作启动盘。启动盘制作成功后,软盘上将出现bootrom.sys文件。

另外找一张格式化好的软盘将本目录下的vxsys.com命令拷贝出来。再将生成的VxWorks映像文件拷贝出来。

对目标机所做的工作如下:

第一步,把目标机的BIOS硬盘参数修改为NORMAL模式;

第二步,用DOS软盘启动目标机,运行FDISK命令,对硬盘进行分区,把硬盘分为FAT16格式。

A:fdisk↙

第三步,格式化硬盘。

A:format c:↙

第四步,运行vxsys命令,这个命令的作用是将引导分区加到硬盘的主引导分区,也就是说可以进行VXLD引导了。

A:vxsys  c:↙

如果是MS_DOS 6.22,直接运行A:vxsys  c:↙命令。

如果是MS_DOS 7.0,在此之前还要运行

A:lock c:↙

A:vxsys  c:↙

第五步,将做好的bootrom.sys和生成的VxWorks映像文件拷贝到目标机。

A:copy bootrom.sys c:↙

A:copy vxworks c:↙

这样执行后再重新启动目标机就可以了。

VxWorks下的硬盘启动方法二:

第二种方法比较简单,详细如下:

第一步,将目标机上预装MS_DOS 6.22或MS_DOS 7.0(Win98的DOS版本),或者将启动盘的DOS系统传递到硬盘;

第二步,将tornado\host\X86-win32\bin目录下的vxload.com文件拷贝到目标机。

第三步,将生成的bootrom.sys文件拷贝到目标机上。

第四步,将生成的vxworks映像拷贝到目标机上。

启动目标机后,运行vxload命令进行vxworks加载就可以了。

C:vxload  bootrom.sys↙

这种方法也可以通过批处理来启动VxWorks,这需要autoexec.bat、configy.sys及HIMEM.SYS文件。

为了做成在硬盘上进行硬盘启动,笔者进行了很多试验,但是前期启动一直失败,最后总结原因,可能是因为我的机器上装了VxWorks的DOS文件系统的补丁的原因,这个补丁的作用是为了支持FAT32格式的分区。后来我又在我的机器上重新装了Tornado,这一次我没有打DOS文件系统的补丁,再进行试验,就成功了,到目前为止,在硬盘上进行硬盘启动,硬盘支持FAT16/FAT32分区。