您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码:  验证码,看不清楚?请点击刷新验证码 必填



  求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
 
   
 
 
     
   
 订阅
  捐助
vmWare上运行VxWorks
 
作者:qingfenghao 来源:Chinaunix 发布于 2014-12-22
   次浏览      
 

老是在网上看到有新人在问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启动了

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

   
次浏览       
相关文章 相关文档 相关课程



深度解析:清理烂代码
如何编写出拥抱变化的代码
重构-使代码更简洁优美
团队项目开发"编码规范"系列文章
重构-改善既有代码的设计
软件重构v2
代码整洁之道
高质量编程规范
基于HTML5客户端、Web端的应用开发
HTML 5+CSS 开发
嵌入式C高质量编程
C++高级编程
最新活动计划
LLM大模型应用与项目构建 12-26[特惠]
QT应用开发 11-21[线上]
C++高级编程 11-27[北京]
业务建模&领域驱动设计 11-15[北京]
用户研究与用户建模 11-21[北京]
SysML和EA进行系统设计建模 11-28[北京]

基于模型的整车电子电气架构设计
嵌入式设备上的 Linux 系统开发
Linux 的并发可管理工作队列
ARM嵌入式系统的问题总结分析
嵌入式系统设计与实例开发
WinCE6.0的EBOOT概要
更多...   


UML +RoseRealtime+嵌入式
C++嵌入式系统开发
嵌入式白盒测试
手机软件测试
嵌入式软件测试
嵌入式操作系统VxWorks


中国航空 嵌入式C高质量编程
使用EA和UML进行嵌入式系统分析设计
基于SysML和EA的嵌入式系统建模
上海汽车 嵌入式软件架构设计
北京 嵌入式C高质量编程
北京 高质高效嵌入式开发
Nagra linux内核与设备驱动原理
更多...