vmWare上运行VxWorks

来源:互联网 发布:93年乔丹总决赛数据 编辑:程序博客网 时间:2024/04/29 22:47

vmWare上运行VxWorks

frank 

老是在网上看到有新人在问vmWare上运行VxWorks而出现的各种各样的问题。在某人的催促下,出于增长网站访问量的险恶用心,于是决定抽空把vmWare上配置VxWorks的步骤仔细的写一下,同时提供配置好的BSP包,省去新人们学习vxworks的烦恼。呵呵,废话少说,直接进入主题。

1.      涉及的软件资源

1) Tornado2.2/VxWorks5.5

首先当然是vxworks/Tornado了,这里我们以Tornado2.2/vxworks5.5 for X86为例,因为vmWare模拟的是X86体系的CPU系统,所有只能是装Tornado for X86的了。你没有Tornado,到哪里去找,呵呵,这个就不是我关心的了,自己想办法吧。什么,Tornado/VxWorks是什么东东。。。。那么老兄,我不认识你哈。

2) vmWare虚拟软件

       vmWare为一个虚拟软件,可以虚拟出一个逻辑的电脑,它可以提供基于Intel CPU的虚拟PC系统环境,包括CPU、内存、BIOS、硬盘和其他外围硬件设备。具体的自己百度,下载也请百度吧。我们这里以vmWare6.0为例,其它版本的也一样的,我在4.0,5.5,6.0上都试过,基本上设置步骤都一样。

       vmWare的好处就是可以不用去买什么开发板,相当于提供了一个x86的板子,适合新人学习vxworks。当然最大的好处就是随便你怎么折腾它都没有关系,不怕弄坏,省钱环保。

       当然,如果你有家人想学电脑,比如要学格式化啊啥的,你又不放心自己的爱机给他们折腾,就给他们装个vmware好了,你就不用胆战心惊的了。

3) 本站提供的vxworks/win98混合启动光盘映像ISO_for_vmware文件

本站提供的vxworks/win98混合启动光盘映像ISO_for_vmware文件,主要用于在vmWare上直接当光盘用,里面包含已直接从光盘启动bootrom、直接从光盘启动vxworks、启动win98的dos、从硬盘启动等功能。

如果你比较懒的话,不想怎么去设置,可以直接下载本站的启动ISO文件,直接让vmWare从光盘镜像启动,直接启动里面的bootrom就可以从host上引导vxworks。或者更懒一点,可以直接用光盘里的直接启动vxworks,在vxworks启动后再用Tornado和它连接调试,不过这样不是没有乐趣了不是。

       下载地址为: http://www.vxdev.com/html/68/690.htm

4)AMD的ln97网卡驱动及BSP

       由于vmWare里面将所有的网卡驱动都模拟成了AMD的一款ln97网卡,而对应VxWorks里的ln97的驱动有些问题不能很好的在vmWare里工作,所有我们要去AMD网站上下一个对应的驱动,同时要对vxworks里的BSP进行修改。

       方便起见,本站直接将BSP进行了修改,将修改好了的BSP整个打包给大家可以直接下载。包含了网卡驱动,并已经将sysLn97xEnd.c文件修改好,还有makefile文件的修改也都在里面了。大家也不用去编译库文件。修改的部分大家可以自己在源文件中搜索frank就可以找到了。

       下载地址为: http://www.vxdev.com/html/68/693.htm

5) win98启动工具盘映像(可选)

       这个主要是利用里面的fdisk工具对vmware的虚拟硬盘进行分区。如果有其他的比如diskman等工具也可以。我试过不进行分区格式化的话,无法实现在vmware的硬盘上启动vxworks。

       当然这个为可选项,如果不想设置vmware上硬盘启动的话,可以直接利用本站提供的光盘启动bootrom就可以了。

2.准备工作

1)Tornado2.2 for X86的安装

       忽略。 假设tornado安装的目录为d:\tornado22-x86,后面都以这个为假设,不再提。

2) vmWare6.0的安装

       安装过程也忽略。

3) 下载用于vmWare上vxworks的BSP包

       下载地址为: http://www.vxdev.com/html/68/693.htm

下载下来解压,将解压开的vmware这么个目录整个copy到d:\tornado22-x86\target\config\目录,这样我们的Tornado下就多了个vmware这么个BSP了。

4) 下载本站提供的vxworks/win98混合启动光盘映像ISO_for_vmware文件

       下载地址为: http://www.vxdev.com/html/68/690.htm

       假设下载后放的位置为 f:\source\vm.iso

5) 下载本站提供的win98启动工具盘映像(可选)

下载地址为: http://www.vxdev.com/html/68/692.htm

       假设下载后放的位置为 f:\source\win98.iso

3.利用本站提供的bootrom启动vxworks步骤

1) 配置vmWare

       建立一个vmWare的虚拟机,起名为vxworks,配置的RAM大小为32M足够了,硬盘大小为0.1G(即100M,这个大小足够了,但vmware里面最小只能设这么小了),CDROM设置直接选ISO映像,选f:\source\vm.iso,网卡就设为host-only好了(其他方式也无所谓的),客户操作系统版本选other,其他的随便设了。设置好的如下图

 

 

 

 

       然后配置vmWare的网卡设置。我这边是将vmWare的VM1网卡IP设置的是192.168.102.1,如下图(这个应该不用教的吧)。

2) vxworks的生成

       Torando中建立一个bootable的工程,注意BSP选vmware就可以了,一路往下建立工程。

建立工程后大家会发现,ln97xEnd.c文件已经包含在工程中,这是因为我在makefile中已经将此网卡驱动包含进来了。

然后,就是对vxworks进行一些配置,增加一些自己喜欢的模块,比如target shell等等,然后编译生成vxworks文件。

3) 配置host端的ftp server

       ftp server用来将host边的vxworks,通过bootrom直接下载到target的RAM中,然后直接运行vxworks。ftp server的软件很多,随便的可以。这边方便起见,就用tornado本身带的wftp来示例。运行d:\tornado22-x86\host\x86-win32\bin\ wftpd32.exe,

       设置用户名,密码,这边都设置为target;设置根目录,对应vxworks生成的目录就可以了。

可以将ftp的log打开

4) 启动vmware下的vxworks虚拟机

       启动后,先按F2键进去bios进行设置(手要快点),将启动设备的第一个设为CDROM,然后启动。启动后就会从来本站提供的vxworks bootrom/win98启动盘的界面,选第一个bootrom启动即可。

默认参数如下,可以用C命令进行修改。

参数改好后,就直接敲 @ 启动vxworks。

启动后的界面如下,这个vxworks里已经包含了target shell。

在host的命令行下,ping一下看看跟vxworks通了没有。

之后,就可以通过tornado的target server跟vxworks连接,进行调试了。

4. 配置vmware的硬盘启动vxworks的方式(可选)

写得好烦啊,一步步抓图可真累啊,后面的就简单点了。

1)        将vmware的配置里的CDROM里ISO文件改成f:\sourec\win98.iso文件,启动vmware,启动后出来一个win98的dos启动盘,选支持CDROM启动。

Win98的dos启动后,可能会有提示说硬盘分区不对。进去光盘目录(可能是D:), 然后运行fdisk,将原有的分区删除,创建新的分区,然后重启。重启后,将C盘进行格式化。这样这个vmWare中的100M的硬盘我们就可以用了哈。

2)      再将将vmware的配置里的CDROM里ISO文件改回f:\sourec\vm.iso文件,启动虚拟机。

出来选择菜单后,选3 pwin98启动,选择支持CDROM启动。启动后,进入光盘目录,里面有bootrom.bin,mkboot.bat,vxsys.com等几个文件。执行

D:> lock C:                  // 这一步很重要,否则不然往硬盘写bootrom的

D:> mkboot c: bootrom.bin

这样bootrom就写到C盘去了。

3)      启动vmware虚拟机,按F2进入bios设置,将启动项设为硬盘启动。

4) 这样就会从硬盘的bootrom启动了

就先写这么多了,大家有何问题到论坛提问吧。

Frank

http://www.vxdev.com

Frank

http://www.vxdev.com

您看到此篇文章时的感受是: 

欠扁50 支持很棒找骂搞笑软文不解吃惊
Tags:vmware vxworks责任编辑:frank 【大 中 小】【打印】 【繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部】上一篇:vxworks中实现双网卡驱动的例子下一篇Arbor EmCore-i412板子在vxworks..


评论

我想问下我安装的是Tornado2.2for rm的是不是必须给安装forx86的,才能这样用虚拟机?称呼:xiaod36 日期:2013-01-16 09:46:29  0票  0票 引用回复牛人啊称呼:游客 日期:2012-11-29 10:33:37  0票  0票 引用回复您好frank老师,我是一位初学者,拜读了您的大作受益匪浅在此表示衷心的感谢。
学生有点小问题请教老师。我的主机系统 xp安装Tornado2.2/VxWorks5.5 for pcpentium vmware8
虚拟机安装win98 dos 没有安装 vxworks
我的本意是想在vmware运行一个在vxworks下开发的x86架构dos下应用运行的老程序。能够和主机的tornado联机调试作一些改进。该程序在目标机(386 486 p1 p2 ..)运行正常。在虚拟机vmwareDOS下只能启动一下不能运行。
请教老师虚拟机软件和实际目标机硬件之间还是有关联,
如果想要在虚拟机运行是不是要必须在虚拟机安装tornado/vxworks对其重新编译调试请赐教。
恳切望你回复.谢谢!