VxWorks 操作体系是美国WindRiver公司于1983年规划开发的一种嵌入式实时操作体系(RTOS),它以其杰出的可靠性和杰出的实时性被广泛地运用在通 信、军事、航空、航天等高精尖技能及实时性要求极高的范畴中,如卫星通讯、军事演习、弹道制导、飞机导航等。在美国的 F-16、FA-18 战斗机、B-2隐形轰炸机和爱国者导弹上,甚至连1997年4月在火星外表登陆的火星探测器上也运用到了VxWorks。VxWorks原先对我国区制止 出售,自解禁以来,在咱们的军事、通讯、工业操控等范畴得到了十分广泛的运用。
VxWorks 的实时性体现在能于限制的时间内履行完所规则的功用,并能在限制的时间内对外部的异步事情作出呼应。因而,实时性体系首要运用于进程操控、数据收集、通 信、多媒体信息处理等对时间灵敏的场合。本文将对这个操作体系进行一个入门级的、全面的介绍。为力求展现其全貌,全文共分五章:
(1)树立VxWorks嵌入式开发环境;
(2)扼要介绍VxWorks的根本组成,内核的根本结构;
(3)概述VxWorks板级支撑包(BSP)的概念及VxWorks的发动进程;
(4)介绍VxWorks设备驱动的架构及编写办法;
(5)指明VxWorks运用开发的思路,使命调度及使命同步、中止与使命的同步机制。
以上各章中将贯穿戴许多实例,因为本文定坐落入门级教程,所以文中的实例都将十分简略。下面咱们进入第一章内容的解说。
如 图1,嵌入式体系的调试办法一般为通过PC(宿主机)上的集成开发环境穿插编译针对特定电路板(方针机)的程序,然后将程序通过方针板的JTAG、串口或 网口等途径下载到方针板上运转。因而,为了结构一个嵌入式体系的学习环境,具有一块包括CPU、存储器及I/O电路(结构计算机体系)的方针电路板往往是 必要的。尽管许多集成开发环境顺便模仿软件,但仅限于指令集的模仿,均无法模仿物理的方针机硬件渠道,因而在其上只能进行运用程序的象征性模仿开发。但 是,并非一切人都能具有一块物理的电路板。在这种情况下,咱们怎么结构一个模仿的开发环境,其学习效果就好像具有彻底实在的电路板相同呢?本文企图回答此 问题,主体内容包括四个方面:
(1) 运用VMware等软件模仿实在的方针机;
(2) 构建VMware虚拟PC上VxWorks BSP,树立Bootrom和OS映像;
(3) 修正Tornado相关设置,衔接宿主机与方针机,树立调试通道;
(4) 写一个简略的运用程序并下载到方针体系运转。
图1 嵌入式体系的调试
本章作业的终究方针为:
(1)VxWorks在VMware发动成功并顺畅运转,如图2;
图2 在VMware中运转的VxWorks
(2)可在Tornado上针对方针板编译程序并进行调试,如图3。
图3 与方针机树立调试通道的Tornado
1. 模仿方针机
PC也具有方针机的一切特色,实际上,咱们能够把PC作为嵌入式体系的方针机,然后结构如图4所示的开发模型:
图4 PC作为方针机
很惋惜,这种办法实际上十分费事,一起开动两台PC进行调试将使你和你的室友饱尝摧残,已然他如此地热切于游戏和上网。因而,咱们能够凭借VMware来在本机上虚拟出另一PC。
VMware 的确是天才的著作!在同一PC上,运用VMware简直能够装置一切的操作体系,并且操作体系之间的切换不需要重新发动电脑。VM的含义是Virtual Machine,即虚拟出一个逻辑的电脑,它能够供给根据Intel CPU的虚拟PC体系环境,包括CPU、内存、BIOS、硬盘和其他外围硬件设备。
下面咱们解说用VMware来树立一台虚拟PC的过程:
(1)下载并装置VMware;
(2)运用VMware导游树立一个针对VxWorks的虚拟机;
此过程中注意在操作体系中挑选“other”,如图5:
由 于方针机终究通过软盘发动,因而要求你的电脑具有软驱。很惋惜,当年日常运用的软盘现在成了古玩,很少再有电脑装备软驱。因而,咱们再来制作一个假冒伪劣 产品,虚拟一个软驱。又一个天才的工具软件RamDiskNT为咱们供给了这一便当,图6演示了用RamDiskNT虚拟一个1.44M软盘的办法。
只是虚拟一个软驱是不行的,把这个软驱增加到咱们树立的虚拟机中才算修成正果,图7演示了增加软驱后的虚拟机硬件设置。
图7 包括软驱的虚拟机
2. 结构BSP
2.1下载和编译网卡驱动
VMware 为运转于其上的操作体系供给虚拟网卡支撑,该网卡类型即为AMD的PC-NET,在Tornado开发包中现已包括了该类型网卡的驱动程序,但通过测验, 在VMware环境中该驱动无法正常作业,所以可从AMD的网站上下载最新的驱动程序。下载得到的是一个可履行的装置程序,运转该程序将得到一个压缩包和 一个协助文件,依照该协助的要求,将压缩包直接释放到Tornado目录下。假如提示是否答应掩盖文件,则挑选答应。