日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

VxWorks6.6 pcPentium BSP 使用说明(二):创建启动盘

發布時間:2024/4/14 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VxWorks6.6 pcPentium BSP 使用说明(二):创建启动盘 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??本篇介紹從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中被計算。

轉載于:https://www.cnblogs.com/zfyouxi/p/5146448.html

總結

以上是生活随笔為你收集整理的VxWorks6.6 pcPentium BSP 使用说明(二):创建启动盘的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。