本篇介绍从Solaris、Linux、Windows或VxWorks创建VxWorks启动盘的方法。

从Solaris或Linux创建启动盘

使用Solaris或Linux自带的工具/usr/bin/fdformat。它须要一个引导载入程序vxld.bin,位置为安装文件夹下的$WIND_BASE/host/$WIND_HOST_TYPE/bin/vxld.bin。

插入一张1.44MB的软盘,键入fdformat命令格式化软盘并安装引导。

fdformat
-U -d -B $WIND_BASE/host/$WIND_HOST_TYPE/bin/vxld.bin

Formatting
1.44 MB in /vol/dev/rdiskette0/no_name#0

Press
return to start formatting floppy.

..................................................
...........

fdformat:
using "vxld.bin" for MS-DOS boot loader

退出并又一次插入该软盘。在很多系统中必须键入弹出命令。

>
eject

/vol/dev/rdiskette0/no_name
can now be manually ejected

>
volcheck

复制BootROM的镜像到软盘。使用cp命令复制bin镜像或使用objcopypentium命令对于其它镜像文件。

>
cp bootrom.bin /floppy/floppy0/bootrom.sys

...

>
objcopypentium -O binary bootrom /floppy/floppy0/bootrom.sys

在Solaris下使用一些版本号的fdformat进行低级格式化可能会导致启动时间变长。

因为现今的软盘仅仅是未格式化,Solaris用户可加入-
x
參数格式化软盘以避免过长的启动时间:

fdformat
-x -U -d -B $WIND_BASE/host/$WIND_HOST_TYPE/bin/vxld.bin

该參数仅仅能在格式化软盘时使用。

从Windows创建启动软盘

C:\WR\VxWorks\target\config\pcPentium\>
format a: /v /q

Insert
new disk for drive A:

and
press ENTER when ready...

The
type of the file system is FAT.

Verifying
1.44M

Format
complete.

Volume
label (11 characters, ENTER for none)?



 
1457664 bytes total disk space.



 
1457664 bytes available on disk.



     
512 bytes in each allocation unit.

    
2847 allocation units available on disk.



Volume
Serial Number is 307A-4ACB

Format
another (Y/N)? n

C:\WR\VxWorks\target\config\pcPentium>
mkboot a: bootrom.bin

VxSys
1.6 (c) Wind River 1993-2002

Boot
sector installed OK.

1
file(s) copied.

System
transferred. Checking
a:BOOTROM.SYS is contiguous

chkdsk
a:bootrom.sys

The
type of the file system is FAT.

Volume
Serial Number is D4CF-F52B

Windows
is verifying files and folders...

File
and folder verification is complete.

Windows
has checked the file system and found no problem.



   
1,457,664 bytes total disk space.

     
271,360 bytes in 1 files.

   
1,186,304 bytes available on disk.



         
512 bytes in each allocation unit.

       
2,847 total allocation units on disk.

       
2,317 allocation units available on disk.

All
specified file(s) are contiguous.

mkboot.bat将启动引导写入软盘的引导扇区。

然后mkboot拷贝启动文件到软盘上并检測确保启动文件是连续的。用户必须注意反馈的报告信息确保启动文件是连续的。

引导装载程序将不能正确地处理一个非连续的启动文件。

还有一种方法是手动调用mkboot.bat:

格式化

使用.\host\x86-win32\bin\vxsys创建一个引导扇区

拷贝引导镜像并改动扩展名为.bin

对于全部其它启动镜像使用objcopypentium命令

比如:

C:\WR\VxWorks\target\config\pcPentium\>
format a: /v /q

Insert
new disk for drive A:

The
type of the file system is FAT.

The
type of the file system is FAT.



QuickFormatting
1.44M

Format
complete.

Volume
label (11 characters, ENTER for none)?



1457664字节总磁盘空间。

1457664 bytes available on disk.



     
512 bytes in each allocation unit.

    
2847 allocation units available on disk.



Volume
Serial Number is DC31-1143





QuickFormat
another (Y/N)? n



C:\WR\VxWorks\host\x86-win32\bin>
vxsys a:

VxSys
1.6 (c) Wind River 1993-2002

Boot
sector installed OK.

如今复制启动镜像到软盘。

对.bin的镜像使用copy命令

C:\WR\VxWorks\target\config\pcPentium>
copy bootrom.bin a:bootrom.sys

对于其它全部的镜像使用objcopypentium命令

C:\WR\VxWorks\host\x86-win32\bin\objcopypentium
-O binary --gap-fill=0

bootrom
a:bootrom.sys

如今验证该文件是连续的。非连续的镜像将无法启动。

C:\WR\VxWorks\target\config\pcPentium>
chkdsk a:bootrom.sys

The
type of the file system is FAT.

Volume
Serial Number is DC31-1143

CHKDSK
is verifying files and directories...

File
and directory verification completed.



1457664字节总磁盘空间。

  
964608 bytes available on disk.

  
964608 bytes available on disk.



    
2847 total allocation units on disk.

    
2847 total allocation units on disk.

    
1884 allocation units available on disk.

All
specified file(s) are contiguous.

你也能够使用硬盘来引导VxWorks。

你必须从计算机的BIOS上显示的主磁盘上的主引导分区引导。

建议您使用FDISK或类似的有用程序来创建主引导分区。原因是FDISK的使用PC
BIOS调用来创建磁盘主引导记录。

BIOS的任务是在启动过程中装载启动引导。因此。建议使用像FDISK一样通过BIOS改写分区的有用程序。

磁盘分区和文件系统能够支持FAT12、FAT16或VxWorks专有的VXLONGNAMES文件系统。引导载入程序不支持FAT32格式。

假设您须要FAT32格式,分出一个小的FAT16分区作为主引导分区。第二个较大的分区作为FAT32格式包括剩余的磁盘空间。

在上面的样例中用盘符“C:”代替盘符“A:”创建引导磁盘时,vxsys.com会问提演示样例如以下问题:

That's
a hard disk!Are
you sure (y/n)?

您应该输入“Y”,以确认操作。

这是为了防止误覆盖其它的从本磁盘启动的操作系统。

从vxWorks创建可启动磁盘

VxWorks下的三个引导工具使用方法例如以下:

STATUS
mkbootFd 

   
(

   
int drive,    /* destination drive number: (0 - 3)  */

   
int fdType,   /* type of floppy disk: (0 - 1)       */

   
char *in      /* source file name                   */

   
)



STATUS
mkbootAta    
(   
int ctrl,     /* dest. controller number: (0 - 1)   */

   
int drive,    /* dest. drive number: (0 - 1)        */

   
char *in      /* source file name                   */

   
)



STATUS
mkbootTffs   
(

   
int drive,       /* drive number: (0 - TFFS_MAX_DRIVES - 1) */

   
int removable,   /* removable or not: (TRUE - FALSE)        */

   
char *in         /* source file name                        */

   
)

全部例程成功后均会返回OK,假设在复制镜像文件到磁盘时失败则会返回ERROR。这些例程的源码在BSP文件mkboot.c中。

演示样例

演示样例1:使用mkbootFd创建一个启动软盘:

软盘位于驱动器0(或a:),镜像文件的名称是bootrom.sys

->
mkbootFd 0, 0, "bootrom.sys"

演示样例2:使用mkbootFd创建一个可引导的磁盘:

硬盘位于ATA控制器0通道,其驱动器号为0(或C:)。镜像文件的名称是bootrom.sys

-> mkbootAta 0, 0, "bootrom.sys"

演示样例3:使用mkbootTffs创建一个可启动的TrueFFS磁盘:

磁盘驱动器TrueFFS位于0(或C:),这是一个非移动驱动器。

镜像文件的名称是bootrom.sys

->
mkbootTffs 0, 0, "bootrom.sys"

这些板不具有非易失性RAM,因此,系统断电后引导參数将不被保留。然而。静态引导參数能够设置在config.h中的启动參数设置行DEFAULT_BOOT_LINE

BootROM程序

vxsys.com
驱动器号:

此命令将在磁盘引导扇区安装一个VxWorks引导加载程序。该驱动器能够是由BIOS的引导的软盘(驱动器A:)或硬盘。VxWorks的引导加载程序在根文件夹搜索bootrom.sys并直接加载到内存0x8000的线性地址中。然后跳转到0x8000运行romInit()

附注:

经过引导载入器在磁盘引导扇区创建引导。您不必再为新的ROM镜像反复vxsys创建引导的操作。

仅仅需复制一个新的启动映像到已经安装引导的磁盘就可以。

vxld.bin

vxld.bin既不是一个命令,也不是一个程序,而是一个由vxsys.com安装到磁盘或软盘上引导扇区的副本。他被单独便提及以便于替换Solaris、Linux或其它第三方引导创建的引导载入程序。

mkboot
驱动器号:源文件

此命令是一个MS
- DOS批处理文件,它调用vxsys.com安装VxWorks的引导载入程序到启动扇区,然后使用复制源文件到“盘符:bootrom.sys”。它也调用MS-DOS的chkdsk校验bootrom.sys是否连续。

vxload.com
[image_file]

此命令用于从MS-DOS启动并载入VxWorks镜像。尤其是bootrom镜像。它能够在PC启动时更方便快捷地载入镜像。
vxload须要一个參数。即镜像文件的名称。

vxload.com不与不论什么Microsoft Windows版本号兼容,它仅支持在MS-DOS下执行。

VxWorks的低内存镜像执行在内存0x8000到0xa0000的空间。这限制了提供给镜像的可用的内存池的大小。config.h中的INCLUDE_BOOT_ADDMEM配置使能代码执行时是否可使用内存池中指定的高内存(内存物理地址大于0x100000)单镜像为低内存版本号时。此选项不能用在系统的内存少于4MB的情况下。

载入低内存镜像的内存大小ADDED_BOOTMEM_SIZE的默认值为2MB。这个值可能会添加。但要确保该池不与下载下来的vxWorks镜像重叠,当INCLUDE_BOOT_ADDMEM配置为使用低内存启动镜像时。假设有重叠,载入的vxWorks镜像执行会破坏已载入的内存池。

确定ADDED_BOOTMEM_SIZE值的计算方法例如以下:

(RAM_LOW_ADRS + vxWorks image size) < (memTopPhys + ADDED_BOOTMEM_SIZE)

memTopPhys在BSP文件sysLib.c中被计算。

VxWorks6.6 pcPentium BSP 使用说明(二):创建启动盘的更多相关文章

  1. VxWorks6.6 pcPentium BSP 使用说明(一):基本概念

    "VxWorks6.6 BSP 使用说明"将发布pcPentium和idp945两个系列的BSP的使用说明.每个系列约5篇文章.之后还将发布由这两个官方提供的BSP的实战移植方法. ...

  2. VxWorks6.6 pcPentium BSP 使用说明(三):设备驱动

      本文主要介绍了pcPentium BSP中包含的驱动程序.包含了官方提供的所有驱动程序,除了aic7888Lib--现在已用得很少的一个AIC-7888 SCSI控制器的驱动介绍.建议重点阅读at ...

  3. linux系统创建windows启动盘

    平时工作中用到linux的操作命令较多,因此为了方便,就给电脑装了双系统,一般工作的时候,都选择进入linux系统.但是今天有件工作之外的事情需要解决下:创建一个windows启动盘.如果按照往常来说 ...

  4. Linux启动盘制作

    1.下载Universal-USB-Installer软件,在电脑上插入空U盘,打开软件,依下列所示步骤进行 2.点击同意 3.点击版本选择框,会出现它支持的系统镜像文件的版本,包括win7.win8 ...

  5. DevExpress XtraReports 入门二 创建 data-aware(数据感知) 报表

    原文:DevExpress XtraReports 入门二 创建 data-aware(数据感知) 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的, ...

  6. Orleans学习总结(二)--创建工程

    通过第一篇Orleans学习总结(一)--入门认识我们大致知道知道是干嘛的了,下面我们来动手造一个传说中的神秘的高并发集群Orleans程序. 一.创建四个C#工程 1.IGrain工程,用来定义各种 ...

  7. Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查

    一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...

  8. 从零开始学习 asp.net core 2.1 web api 后端api基础框架(二)-创建项目

    原文:从零开始学习 asp.net core 2.1 web api 后端api基础框架(二)-创建项目 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.ne ...

  9. 爬虫(二)-创建项目&应用

    一.回顾 上篇已经讲解了python-django的环境搭建,本次将继续上次的课程,开始创建项目及应用. 上篇的验证结果为: 本次将加上创建应用之后浏览器打开演示~ 二.创建项目 1)使用django ...

随机推荐

  1. 将时间显示为“刚刚”“n分钟/小时前”等

    在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来.比如微博,SNS类应用就最长用到这个功能.而一般存储在数据库中的时间格式为 Uni ...

  2. Windows Phone 8初学者开发—第15部分:在选中ListItem时播放声音

    原文 Windows Phone 8初学者开发—第15部分:在选中ListItem时播放声音 第15部分:在选中ListItem时播放声音 原文地址:  http://channel9.msdn.co ...

  3. SUP (SAP Mobile SDK 2.2) 连接 Sybase SQL Anywhere sample 数据库

    安装了   SAP Mobile SDK 2.2   后发现,这个版本没有自带Sybase SQL Anywhere  数据库. 解决办法: 1. 免费下载 SQL Anywhere Develope ...

  4. Jekyll搭建过程详解

    原先博客用Jekyll搭建在Github上,近来访问缓慢,而且markdown不太方便写,故决定在博客园安个新家. 文章见Github博客: 搭建过程:http://wuxichen.github.i ...

  5. 浅析Java中的反射机制原理

    反射反射,程序员的快乐! Java中反射机制使用的还是比较广泛的,系统的灵活性.可扩展性大都都是通过反射等方式来加载外部插件,使得系统与插件解耦的同时,增加了功能.但是很多人都只是会用,却是不知道它的 ...

  6. Vmware虚拟机下三种网络模式配置

    VMware虚拟机有三种网络模式,分别是Bridged(桥接模式).NAT(网络地址转换模式).Host-only(主机模式). VMware workstation安装好之后会多出两个网络连接,分别 ...

  7. 04-UIKit(UINavigationController、NSAttributeString、UIImageView)

    目录: 一.UINavigationController导航视图控制器 二.NSAttributeString属性字符串 三.UIImageView图像处理 回到顶部 一.UINavigationCo ...

  8. QVector 和vector的比较(QVector默认使用隐式共享,而且有更多的函数提供)

    QVector和vector的比较: Qvector默认使用隐式共享,可以用setSharable改变其隐式共享.使用non-const操作和函数将引起深拷贝.at()比operator[](),快, ...

  9. HDU 4160 Dolls (最小路径覆盖=顶点数-最大匹配数)

    Dolls Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...

  10. CCIE路由实验(8) -- QoS

    1.查看端口缺省的队列机制2.配置CB-WFQ3.配置CB-LLQ4.配置CB-Shapping在以太接口下5.配置CB-Shapping在FR接口下6.配置帧中继流量整形FRTS7.配置CB-Pol ...