VxWorks的使用
绪论
这本书的目的不是为你介绍VxWorks入门的详细内容或嵌入式和实时系统的编程。也就是说,
本章将介绍关于VxWorks使用的一些基本背景知识和一些相关的工具。本章将主要介绍命令行工具,因为它们对中级或高级用户来说更有用,而风河公司的文件对此也涉及较少。
基本工具
工具介绍
每一个VxWorks安装都自带一些工具。自5.3版以后,他们被称为Tornado;在此之前,他们只是安装的产品的一部分。这些工具的二进制文件可以在主机的安装根目录/host-type/bin
(如.../host/sun4-solaris2/bin, ...\host\x86-win32\bin o或 .../host/x86-linux2/bin)中到。
VxWorks提供的最常用的编译器是一种变异的GNU的gcc C/C++编译器。在VxWorks AE和VxWorks 5.5版本之前通常是2.7.2 版本。令人困惑的是,有些版本的Tornado 2,进行更大的和2.0版本小于2.2 ,使
用其他版本。要检查您的编译器的版本就调用有版本选择的编译器(注意双波折号前缀)。混合不同版本的VxWorks二进制文件不是一个好方法。二进制文件的规格出现了一些变化,例如:针对某一特定的CPU,修正编译器使其更好的遵守EABI或ABI约定。升级到VxWorks AE或VxWorks 5.5后也更改格式为ELF的几乎所有的架构,已经被埃尔夫。偶尔也会改变内部数据结构,这可能会导致旧的二进制文件的兼容性问题。
其他一些编译器也可以使用(如Green Hills或Diab,后者现为风河公司所有)。不过总的来
讲,这些编译器和GNU编译器相比几乎没有优势。作者强烈建议在仔细评估代码在实际应用的效果后再选择支付这些编译器中的一个。在某些情况下,两者都能够产生比GNU更小且更快的代码,但不是总是如此,而且通常幅度并不大。
下表列出了VxWorks提供的具体工具。为明确起见,省略了工具应加的结构名称后缀,例如,当使用PowerPC目标机时将使用cc代替ccppc。如果你不知道的话,在文件中查对你的结构的后缀,。另请注意,并非每个版本的Tornado/ VxWorks都带有所有这些,所以如果有一些较含糊的内容在您的安装文件中不到也不要感到惊讶,
还有一些结构的独立工具放在Tornado安装目录下的bin中。下面的表格为命令行用户介绍一
Target Server  目标服务器
gnu编译器通过目标服务器将运行在主机上的工具和目标系统联系起来。目标机必须运行WDB代理进行这一工作(在INCLUDE_WDB中查看所有的宏/组件配置,以及WDB_配置参数)。也许不那么众所
周知的事实是,目标服务器并不需要和工具运行在同一台计算机上。每个目标服务器有一个名字,而且名字被注册在目标机注册表里(可在文件中查看wtxregd和环境变量WIND_REGISTRY )
启动目标服务器,首先请确保WIND_REGISTRY点,一台机器在您的网络上运行的WTX登录守护进程(服务在Windows的术语)。然后用目标机系统的名称或IP地址运行tgtsvr(如果您的主机的文件或LAN的DNS服务器中没有目标机的IP地址,那么您必须使用分配给目标机系统的IP 地址)
tgtsvr -n target-99 target-99 &
tgtsvr -n target-99 192.168.1.99 &
请注意,在这些例子中,服务器使用Unix shell在后台运行,其特点是在命令行的结尾增加了' & '符号。 Windows用户则可能想要建立一个快捷命令,可以简单地双击来启动服务器,或使用开始命令通过命令提示符在它本身的窗口中启动一个新的目标服务器
在所有这些例子中,我们使用了- n选项来为目标服务器指定了一个名称。如果不使用该选项,它会默认为目标机的名字或IP地址。假设主机的全名为host.somecompany ,那么目标服务器的全名就是**************************。在该主机上的,可使用简写形式target - 99;同一域的其他计算机可以使用target - 99 @ host。从理论上讲,如果系统对互联网是开
放的,那么世界上任何地方的工具可使用全名连接到目标服务器。
注:使一台目标服务器在互联网上可见可能是一个严重的安全风险
这种命名方式允许在潜在的任何计算机上运行的工具都可以连接到这个目标服务器,并从那里到目标机系统本身。这样可使多个开发者共享目标机。由于  VxWorks不是一个多用户操作系统,所
以多个用户同时共用一个目标机是不明智的。也就是说,让另一位也许在一个远程站点工程师使用目标机帮助调试东西可能会有作用。另一个常见的作用是当目标机需要被孤立在自己的子网上时。一台机器可以作为所有目标服务器的主机,从而允许任何机计算机上的工具连接到目标机,而基本上他们对网络的其余部分是不可见的(只要网关没有设置网络之间的数据包转发)。
Figure 1.1 - Hiding Targets from the Corporate LAN
从公司局域网中屏蔽目标机
有效的隐藏专用局域网上的目标机系统这种方式也许是可取的,原因有许多,包括应用中目标系统要产生大量的网络流量,这可能干扰企业局域网的日常使用。
可能会用到目标服务器的一些其他选项。如果要查看完整的列表,选择帮助选项开始目标服务器。
源文件调试工具

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。