Tornado IDE与VxSim目标仿真环境
VxWorks调试手段和方法总结
: 中断程序的执行。若当前调试的任务正处于全速运行的状态,可以中断其执行。
:使程序继续执行(Continue),F5 :单步(Step Into),F11 :单步(Step Over),F10
4
:跳出当前函数(Step Out),SHIFT+F11 Continue 程序中止以后,可以使用Debug菜单的Continue命令恢复程序执行。如果没有遇到断点、 中断或信号,任务一直运行到结束。 Step Into 单击Step Into,可以单步执行程序。如果打开了调试器的观察窗口(检查数据、内存和 堆栈),窗口中的值会随着程序的单步执行自动更新。如果遇到一个子程序调用,Step Into 会单步运行到子程序的第一行,即可以进入调用的子程序。但是当调用了系统子程序和编译 时不带调试信息的应用子程序时,Step Into不会进入该子程序。 当Editor窗口的当前视图显示出汇编代码(从View下拉菜单中选择Disassembly或Mixed, 或是当前代码没有调试符号),Step Into将会使程序执行到下一条指令,而非下一条源代码。 Step Over 如果需要单步执行程序而不进入其子程序,单击Step Over。Step Over命令与Step Into命 令类似,只是在遇到子函数调用时,Step Over会一次将子函数执行完,并停在子函数调用的 下一条语句。 Step Out 当单步运行一个程序时,可能会发现问题出现在当前子函数的上一级调用函数处。这时 可以使用Step Ou命令继续执行程序直到当前子函数结束。程序停在子函数调用的下一条语 句,Debugger重新获得控制权。 Run to Cursor 为了使程序执行到一个特定的位置,却不想在此设置断点,可以将光标放在所需的代码 行,单击鼠标右键,在弹出的菜单中选择Run to Cursor。
Tornado集成开发工具介绍
起对个别的目标操作系统的对象的状态监测信息的显示,如任务、信号量、消
息队列、内存对象和看门狗定时器。这些显示可以根据开发者的要求而更新或
定时更新。
WindNavigator
WindNavigator多语言浏览器使开发者能够大大缩短分析已经存在的C和C++源
* CodeTEST for Tornado:这个工具是一个很容易用的,性价比高的,用来分析
运行在目标系统上的嵌入式实时程序,它有着两种运行模式:
- CodeTEST内存模式允许开发者对动态内存进行查看
- CodeTEST覆盖性的测试。
* Visual SlickEdit-Tornado Edition:由Visual SlickEdit提供的功能强大
为,图形化地显示了任务、中断和系统对象之间的复杂的互相作用关系。监测
目标硬件上的系统行为的WindView是可选的。
工程组件和配置工具缩短开发时间
这些工具提供一个功能强大的图形接口来自动配置VxWorks操作系统和其他的
功能模块。自动的依赖分析、程序大小计算和一个自动裁剪向导可以缩短开发
行绝大多数的应用软件测试。
* StethoScope: StethoScope是一种实时的调试工具,它能使开发者在程序运
行时对应用进行分析。
* PerformancePak: PerformancePak包括一个叫ScopeProfile的能提供在任务
运行时的详细的函数分析,它并且能够帮助开发者控制内存应用。
通过一个视图有效地显示信息。熟悉GNU gdb调试引擎的用户将受益于行命令
tornado与testbed连接配置方法(HF)
Copyright@huangfei calabar 卡莱博尔
1 修改配置文件
1.1 修改 Vxsim_build.bat
1, 打开:testbed\vxworks\Vxsim_build.bat 2, 更改:
ccsimpc.exe 编译后面加上 –Itornado(你的安装目录)\host\x86-win32你的安装目录)\target\h
1.3.4 更改 Testbed.p ..................................................................................................5
1.4 使用 set 完成工程型集合文件测试 ...........................................................................6 1.4.1 添加 set .............................................................................................................6 1.4.2 添加文件...........................................................................................................6
1.1 修改 Vxsim_build.bat ...................................................................................................2 1.2 修改 Vxworks_tbrunini.dat...........................................................................................3 1.3 指定 simulator...............................................................................................................3
使用vxsim进行vxworks仿真
使用vxsim进行vxworks仿真2011年12月31日 星期六 下午 8:53一、简述VxSim是VxWorks提供的在实验与测试环境下仿真VxWorks目标机的程序,无需硬件的支持。
在某些方面,VxSim和运行在目标机硬件 上的真实VxWorks环境相同,用户连接应用、rebuild VxWorks映像,就好象在真实的使用标准BSP(板级支持包,可以认为是对硬件平台的抽象,它为操作系统提供硬件操作接口)的VxWorks交叉开发环境一样。
vxsim是Tornado里带的VxWorks仿真工具。
VxSim是完全的原型仿真工具。
在目标系统的硬件还未得到时,可用VxSim开始应用开发,这样在开发早期就可进行大量的软件测试工作。
工业方面的嵌入式应用开发者常常需要软、硬件同时进行设计和调试。
在没有硬件开发板的条件下,我们可以利用visim建立起一个模拟环境,调试应用程序,达到我们的要求。
通过下面的图,可以更加深入理解vsim。
二、学会使用vxsim1.打开Tornado软件,具体如何安装,可以参考我写一片博文。
图 2.1 选择这里选择Create a bootable VxWorks image,那么bootable VxWorks image和downloadable application modules有什么区别呢?前者表明该工程是基于某个BSP生成 的镜像,它包含了必须的VxWorks的内核、组件以及BSP,并且应用程序可以静态包含在工程中,也可以静态链接已编译好的应用工程模块。
后者顾名思义,应用模块可以以静态链接的方式编译至VxWorks镜像工程中,还可以在VxWorks运行之后,通过网络将将应用模块(.out格式)下 载到目标板,并与VxWorks镜像进行链接。
在单独对某个模块进行调试时,我们常常会用到这种动态链接的方法。
2.选择 A BSP(板级支持包)在下拉菜单中选择simpc。
图2.2 选择 A BSP(板级支持包)3.打开文件usrAppInit.c(它的函数usrAppInit是应用的入口点),添加Hello World打印语句,保存文件。
Tornado使用(debug篇)
Tornado使用(debug)debug涉及到的按钮有:其中:启动仿真器shell启动debugbrowserstop debugrun断点continue、step into、step over、step out观察工具另外常用的还有debug菜单下面的attach等。
下面以单独的OS部分调试过程为例说明这些工具的使用方法。
仿真和下载成功后:刚开始所有的调试按钮都是灰色,点击按钮启动debug,成功后这些按钮将变为亮色,这时就可以开始调试程序了。
此时可以打开shell窗口,程序中打印的信息会出现在这里(也有一部分会打到仿真窗口中,注意观察)。
点击按钮,输入需要调试的函数(对于VxWorks应该说是个任务)以及传递的参数(如果封装以后就简单了,不需自己传递参数),并且可以选中“break at entry point”在函数的入口处设置断点,让函数的执行可以按照自己的设计单步进行。
OK之后会调试窗口出现,可以看到任务停在了函数的入口处:此时,root任务断在了OS_MemSet处,这时,如果我们需要查看该函数的具体执行过程,则可以点击step into,任务的执行就会跳进OS_MemSet函数里边,在OS_MemSet函数内部,如果需要立刻返回root函数,可以点击step out。
而step over是按照程序的正常流程,对程序语句逐条执行。
另外,如果我们需要知道OS_MemSet函数的执行结果是否正确,即m_astPidCB数组是否被全部清0,可以在该变量上边点右键,选择“add to watch”,就会出现watch窗口,这边可以看到刚才选中的变量的内容,最近被改变的内容以红色显示:断点(break point):在debug菜单下面可以看到三种断点-breakpoint、global breakpoint、temp. breakpoint。
好像breakpoint只能在一个任务内可见,而如果你进行多任务调试,从一个任务开始跑,需要在另一个任务里边断下来的话,就应该使用global breakpoint。
Tornado开发环境介绍
2.Tornado核心工具介绍
2.4 WindView
WindView是一个图形化的动态诊断和分析工具,主要 是向开发者提供目标机硬件上实际运行的应用程序的 许多的详细情况 看到目标机的任务切换、信号量、消息队列、中断、 看门狗等信息
2.Tornado核心工具介绍
2.4 WindView
2.Tornado核心工具介绍
5.连接开发板需要注意的事项和 步骤
5.配置tornado中的Target Server参数,将core files中指向的映像文 件和通过ftp下载的映像文件一致。将target server中的target地址设 为192.168.0.10(举例,可以改),选择back end方式为rpc通讯方 式。 unch target server,如果成功,在任务栏右下角会出现红色的蜗 牛,点击它可以看到连接成功的信息。 这时候表示开发主机和开发 板连接正确。 7. 可以将编译好的.out执行文件下载执行。
结束!
所有的Tornado工具(诸如Shell、Debugger及 Browser等等,这些工具的使用将在后面的章节介绍) 使用WTX (Wind River Tool Exchange ) 协议同 Target Server通讯,Target Server再将请求消息送 往目标机上的Target Agent,这就避免了主机工具频 繁地访问目标机。
3.工程类型介绍(Bootable和 Downloadable)
3.1 Bootable类型的工程
Bootable VxWorks image类型的工程是可下载的 VxWorks 映像,包含了必须的VxWorks 内核、组件 以及BSP。也可以烧到flash里面进行固化。
西工大嵌入式实验指导书-VxWorks
《嵌入式计算机系统》VxWorks实验指导书编写:魏晓敏西北工业大学2013年11月实验一基于VxWorks的多任务设计第一部搭建VxWorks开发环境VxWorks 是专门为实时嵌入式系统设计开发的操作系统软件,为程序员提供了高效的实时任务调度、中断管理、实时的系统资源以及实时的任务间通信。
VxWorks是种功能强大而且复杂的操作系统,仅仅依靠人上编程调试,很难发挥它的功能并设计出可靠、高效的嵌入式系统,必须有与之相适应的开发工具。
Tornado就是为开发基于VxWorks 的应用系统而提供的集成开发环境,Tornado中包含的工具管理软件,可以将用户自己的代码与VxWorks 的核心系统有效地组合起束,从而轻松、可靠地完成嵌入式应用厅发。
Tornado是Windriver 公司开发的嵌入式软件开发环境。
Tornado开发环境的最新版本是2.2 ,它在延续了Tornado2.0 开发环境的基础上,增加了更多易于使用、性能优异的工具,因此在商业上取得了较大成功,获得了用户的好评。
Tornado开发环境是嵌入式实时领域里最新的开发调试环境,是编写嵌入式实时应用程序的完整的软件开发平台。
它给嵌入式系统开发人员提供了一个不受目标机资源限制的超级开发和调试环境a。
它包含3 个高度集成的部分:●运行在宿主机和目标机上的强有力的交叉开发工具和实用程序●运行在目标机上的高性能、可裁剪的实时操作系统VxWorks●连接宿主机和目标机的多种通讯方式,如以太网、串u线、ICE 或ROM 仿真器VxWorks的开发环境为Tornado,我们实验室用的是Tornado2.2。
包括Wind_River_tornado2.2.1_vxworks5.5.1 和Wind_River_vxworks5.5.1_BSP_drivers 两部分,需要分别安装,安装的顺序是先安装VxWorks5.5.1,再安装BSP包。
1.1Tornado安装步骤1.1.1 获取Tornado安装文件Tornado安装文件,包括 TORNADO2.2 和BSP的文件,可以从网上下载(/ShowFile.asp?FileID=62525)。
Tornado搭建调试环境
Tornado搭建调试环境首先要安装虚拟网卡,因为习惯用网络连接vxworks 系统,虚拟网卡的安装步骤:设置-控制面板-添加新硬件-。
-从磁盘安装-然后选择到Tornado2.2ppc\host\x86-win32\bin 里面吧,有个netULIP.inf 还是什么玩意的-然后选择安装就好了。
安装完毕当然要配置拉,设置ip 什么的,就是主机这边另一块网卡的ip 了,例如我经常用192.168.10.110,子网掩码为255.255.255.0 当然,要和vxworks 系统在同一个网段里比较好,vxworks 系统就用192.168.10.1,可以直接访问,一般来说vxworks 启动起来使用的ip 是.1 例如192.168.10.1,然后是.2.3.....所以虚拟网卡的ip 不要用前面几位数。
然后第一步肯定是要启动vxworks.exe 了,然后根据vxworks 里配置的连接方式去配置target server,偶一般是采用网络连接的,配置target server 时点击:tool-configure target serversnew 一个target server 出来,地址为开始设置的ip 地址(192.168.10.110),available back 选wdbrpc,其中的core file and symbolsystem 选生成的vxworks.exe 位置处,要保证指定的是当前启动的vxworks.exe,否则target server 和vxworks 是无法建立连接的,memory catch size 选specify 2000。
target name/ip address 填192.168.10.1。
ok 即可。
配置好了以后就可以lauch 了lauch 完target server 以后调试环境基本上搭建起来了,只要在下拉列表中选择所用到的target,就可以将一些目标模块下载到对应的vxworks.exe 上了,一次最多可以跑15 个vxworks.exe 程序吧,但好像target server 只能有一个,可以在需要的时候连到对应的vxworks.exe 上面去。
vxworks Tornado2.2使用指南
Tornado使用指南目录1.概述 (2)1.1 T ORNADO 组件 (2)1.1.1 开发工具 (2)1.1.2 实时系统 (3)1.1.3 Tornado 文件目录 ...................................................................................................... 41.2 硬件/软件配置 .. (7)1.3 booting介绍 (7)1.4 Tornado开始过程 (12)1.5 WDB 代理 (14)2Projects (15)2.1 bootable projects (15)2.2 集成模拟器vxsim (23)2.3 Downloadable projects (21)2.4 build说明 (24)3WindSh 和Browser (25)3.1WindSh (25)3.2 Browser (28)4 CrossWind (29)4.1Debugging简介…………………………………………………………………………29.4.2 任务级Debugging……………………………………………………………………..29.4.3 系统级Debugging (30)1. 概述VxWorks 是美国Wind River System 公司(以下简称风河公司,即WRS 公司)推出的一个实时操作系统。
WRS 公司组建于1981年,是一个专门从事实时操作系统开发与生产的软件公司,该公司在实时操作系统领域被世界公认为是最具有领导作用的公司。
VxWorks 是一个运行在目标机上的高性能、可裁减的嵌入式实时操作系统。
它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。
在美国的F-16、FA-18 战斗机、B-2 隐形轰炸机和爱国者导弹上,甚至连1997年4月在火星表面登陆的火星探测器上也使用到了VxWorks。
Vxworks 开发工具(tornado)的使用教程
一.认识Tornado II和VxworksVxWorks是一种嵌入式的实时操作系统,所谓嵌入式系统就是用户自己开发设计板子,板子上通常有一颗CPU,VxWorks支持32位的CPU,包括Intel公司的x86、Motorola 公司的68k和PowerPC、MIPS、ARM、Intel公司的i960、Hitachi公司的SH。
我们设计的板子通常没有软件的自开发能力,所以我们需要一台通用机来辅助开发,这台通用机可以是PC或工作站,我们称辅助我们软件开发的通用机为宿主机(Host),用户自己开发的板子为目标机(Target)。
宿主机上要有一个集成开发环境(IDE)来辅助我们的软件开发,这套集成开发环境可以运行在Windows95/NT或UNIX下,包括交叉编译器(Cross Compiler)和交叉调试器(Cross Debugger),所谓交叉编译器就是在宿主机上编译生成可以在目标机上运行的代码IMAGE,交叉调试器就是通过宿主机和目标机之间的某种耦合方式实现前后台调试。
我们称宿主机上的这套集成开发环境为Tornado,编译生成的目标机上的可执行代码IMAGE为VxWorks。
在系统安装的时候,集成调试环境和VxWorks的原材料(一些obj文件)都安装到宿主机上,编译生成的在目标机上运行的IMAGE内包含操作系统。
二.Tornado II IDE的主要组成Tornado II IDE的主要组成部分有:1.集成的源代码编辑器(可惜不支持汉字输入)。
2.工程管理工具。
3.集成的C和C++编译器和make工具。
4.浏览器,用于收集可视化的资源,*目标系统。
5.CrossWind,图形化的增强型调试器。
6.WindSh,C语言命令外壳,用于控制目标机。
7.VxSim,集成的vxworks目标机仿真器。
8.WindView,集成的软件逻辑分析仪。
9.可配置的各种选项,可以改变归Tornado GUI的外观等。
VxWorks基础及开发实例-VxSim软件仿真实例
1 VxWorks软件仿真实验集成仿真工具(VxSim)是一个软件原型仿真器,主要是使开发者在无实际目标硬件情况下,先进行原型级应用程序的开发,包括网络设计和基于多处理器的设计。
VxSim还可使开发者在开发周期中较早地进行大部分的应用软件测试,从而能够以较小的代价纠正错误。
本实验的目的是使读者在不使用实际目标硬件的情况下,了解VxWorks软件仿真工具VxSim 的使用方法,并了解Tornado中各种辅助调试工具的使用方法。
1.1 编写、编译程序首先参照下面的步骤建立一个基于VxSim的工程:1.新建一个可启动的工程demoTornado采用工作区(Workspace)和工程(Project)的模式来管理应用程序,一个工程可以包含源代码文件以及与该工程相关的设置信息等;而工作区就好比一个容器,可以容纳多个工程。
选择File→New Project来启动新工程的创建过程,如图1-2所示。
创建工程时有两种不同类型的工程可供选择:可启动的工程(a bootable vxWorks image)和可下载的工程(downloadable application modules)。
图1-2 创建新工程可启动的工程:是一个链接到VxWorks映象的应用程序。
该工程中不仅包括应用程序的代码,还包括VxWorks内核代码。
在工程管理器中可以非常地添加或删除一些内核组件,(如操作系统中的ANSI C组件和POSIX组件等),从而调整VxWorks内核的特征。
通过组件的添加或删除,一方面可根据需要调整VxWorks内核的代码大小(嵌入式系统的资源都是非常有限的,保持内核的高度精简很必要);另一方面还可保证整个系统运行所需的组件都包含在所生成的目标代码中。
当目标机启动后,该应用程序会被自动加载且运行。
图1-3 输入新建工程的详细信息可下载的工程:是指该工程所编译的目标代码是一种可重定位的代码。
在一个可下载的工程中,可以包含多个可重定位的模块。
TQ2440打造VxWorks开发环境.
TQ2440 打造 VxWorks 开发环境 Version 1.0 TQ2440 嵌入式开发板 Tornado 集成开发环境以及 VxWorks BSP 的安装配置目录第 1 章前言.............................................................. 2 第 2 章安装 Tornado 集成开发环境.......................................... 2 2.1 Tonado IDE 的安装 (2)2.2 BSP 的安装 ...................................................... 11 2.3 WindML 的安装 ................................................... 15 第 3 章环境变量的设置................................................... 21 第 4 章安装串口超级终端工具以及 tftp 服务器端软件 ........................ 24 天嵌科技 Page 1TQ2440 打造 VxWorks 开发环境 Version 1.0 第 1 章前言 Tornado 2.2 集成开发环境支持多种主机平台,比如 Linux,Solaris,Windows 系列等等,下面以使用最为广泛的 Windows XP 下安装为例,来说明 Tornado 开发环境的安装和配置。
完整的安装一般包括一下三个步骤:第一步: Tornado 2.2 集成开发环境(这一步有三个安装包) Tornado IDE (CD-NUM: TDK-14624-ZC-00 BSP (CD-NUM: TDK-14634-ZC-00 WindML (CD-NUM: TDK-14774-ZC-00 第二步: 配置环境变量第三步: 安装超级终端工具以及 tftp 服务器软件经过上述的三个步骤后,就可以运行 Tornado 2.2 集成开发环境进行工程的建立和开发了。
第二讲 嵌入式操作系统VxWorks及其开发工具Tornado(2010)
第二讲:嵌入式操作系统VxWorks及其开发工具Tornado主讲人:办公地址:联系方式:刘利强31号楼222房间82519069上节课主要内容:⏹为什么要学习嵌入式技术⏹嵌入式系统概述⏹嵌入式系统的应用⏹嵌入式实时系统基础132基础知识介绍交叉开发环境的建立方法Tornado 工具及其使用方法4常用的软件调试开发方法⏹什么是VxWorks?⏹为什么VxWorks被广泛采用?⏹VxWorks系统与通用操作系统的对比⏹什么是Tornado?⏹Tornado的工具及其开发环境⏹Tornado的目录结构⏹Tornado的主要目录结构什么是VxWorks?VxWorks操作系统是美国风河公司(Wind River System 公司,WRS)于1983年设计开发的一种运行在目标机上的高性能、可裁减的嵌入式强实时操作系统。
它凭借着良好的可持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据了重要一席。
VxWorks系统具备高可靠性和实时性,目前被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中。
如美国的F-16战斗机、FA-18战斗机、B-2隐形轰炸机、爱国者导弹上、火星探测器等均使用了VxWorks操作系统。
什么是VxWorks?VxWorks的主要组成如下:⏹高性能系统内核Wind➣多任务调度(基于优先级抢占方式的实时调度算法)➣内部任务的通讯⏹其它标准工具➣设备驱动➣文件系统➣I/O系统➣内存管理➣网络协议栈为什么VxWorks被广泛采用?⏹可靠性考虑操作系统的用户希望在一个工作稳定、可以信赖的环境中工作,而稳定、可靠是VxWorks的一个突出优点。
⏹实时性考虑⏹可裁剪性考虑由于存储空间和资源的限制,及提高运行效率考虑,用户在使用嵌入式操作系统时,并不是操作系统的每一个部件都要用到,例如图形显示、文件系统以及一些设备驱动在某些嵌入式系统中往往并不使用。
Tornado简明教程
Tornado简明教程1.TornadoTornado:python编写的web服务器兼web应⽤框架1.1.Tornado的优势轻量级web框架异步⾮阻塞IO处理⽅式出⾊的抗负载能⼒优异的处理性能,不依赖多进程/多线程,⼀定程度上解决C10K问题WSGI全栈替代产品,推荐同时使⽤其web框架和HTTP服务器1.2.Tornado VS DjangoDjango:重量级web框架,功能⼤⽽全,注重⾼效开发内置管理后台内置封装完善的ORM操作session功能后台管理缺陷:⾼耦合Tornado:轻量级web框架,功能少⽽精,注重性能优越HTTP服务器异步编程WebSocket缺陷:⼊门门槛较⾼2.安装输⼊命令:pip install tornado1**备注:** Tornado应该运⾏在类Unix平台,为了达到最佳的性能和扩展性,仅推荐Linux和BSD(充分利⽤Linux的epoll⼯具和BSD的kqueue达到⾼性能处理的⽬的)3.使⽤3.1.Tornado⼊门程序 - (⼀)#-*- coding:utf-8 -*-import tornado.webimport tornado.ioloop#定义处理类型class IndexHandler(tornado.web.RequestHandler):#添加⼀个处理get请求⽅式的⽅法def get(self):#向响应中,添加数据self.write('好看的⽪囊千篇⼀律,有趣的灵魂万⾥挑⼀。
')if __name__ == '__main__':#创建⼀个应⽤对象app = tornado.web.Application([(r'/',IndexHandler)])#绑定⼀个监听端⼝app.listen(8888)#启动web程序,开始监听端⼝的连接tornado.ioloop.IOLoop.current().start()1 .在pycharm中直接运⾏代码2 .如果是在ubuntu,在命令窗⼝输⼊python ⽂件名.py4.Tornado 代码解析4.1.⼊门程序代码解析tornado.web:tornado的基础web框架RequestHandler:封装对请求处理的所有信息和处理⽅法get/post/..:封装对应的请求⽅式write():封装响应信息,写响应信息的⼀个⽅法tornado.ioloop:核⼼io循环模块,封装linux的epoll和BSD的kqueue, tornado⾼性能处理的核⼼。
vxworks网络仿真
Tornado开发环境下使用Vxsim进行网络仿真尹志伟(zhiweiyin1985@)一、背景由于是初学VxWorks,现在没有相应的开发板,于是乎采用VxWorks环境自带的仿真器进行仿真。
对于基于单机环境Demo程序,如任务间通信,可以顺利进行;而对于网络仿真或者是串口仿真,就不是那么顺利了。
今天偶就碰到了这个问题。
由于偶用的VxWorks是一个D版软件,公司虽然有可以用的Tornado2.0开发工具,但是由于这个程序比较大(有几百M吧),必须用移动硬盘采能拷过来,而本人目前还没买移动硬盘,所以嘛,就只好先用这个D版在win32环境中模拟一把。
编写了一个简单程序(创建Downloadable工程),简单的测试目标机有几个Socket端口在侦听状态。
Code->Compile->link通过完毕,执行download SockDemo.out出错提示:errors-while-downloading :/Tornado2.0Forx86/target/proj/KernelTest/SIMNTgnu/KernelTest.out: _socket_hostGetByName_connect_inet_addr我的第一感觉就是SIMNNTgnu模拟的Vxworks.exe有没包括网络支持包。
怎么解决呢,难道我还要重新创建一个vxworks.exe映像不成?用百度搜了一把,终于有点收获。
要利用Tornado开发环境建立网络仿真只要按照以下步骤操作即可:二、操作步骤2.1 软件环境:Tornado 2.2(.1) 和VxWorks 5.5(.1)说明:具体哪个版本支持本文所说的网络仿真不明,上面指出的版本信息是测试使用的版本,其他版本未进行测试,这个版本下测试通过。
2.2 必需条件:Tornado中的simulator必须是full simulator(可在Tornado 点Help->About->Details查看,在安装Tornado的时候也能查看)。
Tornado开发环境的应用
Tornado开发环境的应用1 概述Tornado是一种集成的交互式软件开发环境,为开发实时嵌入式应用程序提供高效明晰的图形化的实时应用开发平台。
它包含了一套完整的面向嵌入式系统的开发和调测工具。
Tornado环境采用主机-目标机交互开发模型,应用程序在主机的Windows环境下编译链接生成可执行文件,下载到目标机,通过主机上的目标服务器(Target Server)与目标机上的目标代理(Target Agent)的通讯完成对应用程序的调试、分析。
它主要由以下几部分组成:●VxWorks高性能的实时操作系统●应用编译工具VxWorks使用GNU的GCC编译器●集成开发环境(IDE)可以管理和编译工程,建立和管理主机和目标机的通讯,并可运行、调试和监视VxWorks 应用其中集成开发环境(IDE)包含以下组件:●集成的源码级编辑器(Editor)●工程管理工具(Project)●集成的C和C++编译器(Complier)●用于监视目标系统的可视化浏览器(Browser)●CrossWind,一个图形化的增强型源码级调试器(Debugger)●WindSh,一个可以控制目标系统的,执行C语言命令行的Tornado外壳(Shell)●VxSim,一个集成的VxWorks目标仿真器●WindView,用于目标仿真器的软件逻辑分析仪●一些用户化选项以上工具主要驻留在主机上,通过目标服务器和目标代理之间的通讯,对远程的目标板进行操作。
如图1所示。
2 Tornado 开发环境的安装针对PowerPC系列,在安装盘的VxWorks\PowerPC目录下双击Setup.exe即可启动Tornado的安装。
安装过程与常见的Windows应用程序相类似,所需序列号可以在VxWorks\PowerPC目录下的key.txt文件中找到。
选择安装目录和安装组件。
如果需要安装BSP有关的开发工具(BSP Developers Kits,Network Driver Source Code,SCSI Driver Source Code),则在安装盘的VxWorks\BspDevKit目录下双击Setup.exe,序列号在相同目录下的serial.no文件中。
基于DRL和TORCS的自动驾驶仿真系统——之环境配置
基于DRL和TORCS的⾃动驾驶仿真系统——之环境配置基于DRL和TORCS的⾃动驾驶仿真系统——之环境配置玩TORCS和DRL差不多有⼀整年了,开始的摸爬滚打都是不断碰壁过来的,近来在参与学习和翻译志愿者⼯作,也将⾃⼰以前的⼀些⼯作做⼀些备忘,以作为有兴趣同学的参考。
TORCS仿真器平台安装仿真器平台主要包括两步:安装TORCS,然后添加锦标赛⽤的patch。
TORCS仿真器的安装The open racing car simulator(TORCS)仿真器源⽂件⽀持windows和linux,windows下⾯的安装有集成的安装源⽂件包;linux系统下则需要⾃⼰编译安装⼀些依赖库,否则在下⼀步打patch的时候不成功,原因是linux的包是编译后的⽂件,不包括源⽂件,windows⽆此问题。
⽰例是在win-64bits系统下安装torcs-1.3.4。
跟普通应⽤安装类似,安装后,可在桌⾯创建快捷⽅式。
打开安装好的TORCS,如下图所⽰。
Championship Platform的安装解压下载的patch.zip覆盖上⼀步安装torcs的安装⽂件,即可搭建⼀个服务器端。
上图中的wtorcs.exe即平台的⼊⼝地址。
可将其快捷⽅式发送到桌⾯。
打开该程序,现在可以配置我们的drivers。
路径是: Race --> Quick Race/ Practice --> Configure Race --> Select Track (Accept)--> Select Drivers (如1,⽤上下⽅向键选择scr…,然后点击select(选择和删除是同⼀按钮),最后Accept即可),如下图所⽰。
然后accept, New Race 即可以进⼊仿真器。
⾄此,TORCS仿真器平台安装完毕,下⾯搭建配套的软件IDE环境。
软件IDE环境搭建Anaconda 的安装Anaconda 是⼀个开源的,基于python的跨平台(windows,osx,liunx)科学计算平台,⽀持python2和python3,⽰例⽤的是基于python2的anaconda2-4.0.0安装后,会创建⼀个Anaconda Prompt(⼀个类似DOS的命令⾏窗⼝),它可以像linux⼀样来通过命令管理各种科学计算包,执⾏命令等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验六 Tornado IDE 与 VxSim目标仿真环境6.1 实验目的熟悉 Tornado开发环境,编辑、编译、下载、调试程序,熟练使用 GNU/Diab 编译器、 Cross Wind/Wind Shell 调试工具、Brower/Wind View 分析工具、VxSim目标仿真器,了解嵌 入式开发的基本方法和过程。
6.2 实验内容(1) Hello World和 Goodbye World实验。
使用 Tornado集成开发环境新建一个工作空间 和工程,通过编辑器编辑程序,并使用工程工具的 GNU编译程序,将程序下载到运行在主 机上的 VxWorks 目标仿真器,使用Wind Shell 运行程序,(2) 通过调试 Tornado 自带的 cobble 程序,掌握使用 Browse 观察目标仿真器的内存使 用情况,使用 Wind View图形化地跟踪监视示例程序的执行流程,使用Debugger 调试运行 时应用程序的错误。
6.3 实验软硬件环境硬件:主机: PIII800 ,内存 256M ,硬盘 30G 及以上目标机:VxSim目标仿真器软件:主机: Windows2000/XP,Tornado2.2目标机:VxWorks5.56.4 实验预备知识Tornado 软总线体系结构,Tornado的工具集组成及其功能。
6.5 实验项目与步骤6.5.1 Hello World 与 Goodbye World 实验在本实验中,要求使用 Tornado工具编写一个“Hello World”的程序。
该程序中有两个 函数,可以在 Tornado的 Wind Shell 工具中输入这两个函数的名称来启动这两个函数执行。
步骤见下。
1.创建工程(1) 启动 Tornado,在创建新工程对话框(Create Project inNew/Existing Workspace)中选 择 Create downloadable application Modules for vxworks”,点击OK。
如图 61。
图61 创建新工程对话框在“Create downloadable application Modules for vxworks:step1”对话框中输入新工程名 如 project1,工程路径 d:\proj\project1,工程描述是 the first project,工作空间的路径及名称 d:\proj\workspace1.wsp,点击 next。
如图 62。
图62 输入新工程名(2) 在接下来出现的对话框中,选择 A toolchain(工具链),SIMMNT gnu , 点击 next,如图 63。
图63 选择工具链(3) Wizard最后的对话框(如图 64)要求确认以上选择,单击 Finish,出现图 65 窗口。
图64 确认对话框图65 工程与工作空间(4) 将源文件“hello.c”加进此工程中。
选 File 菜单/New,在 New 对话框中选 C/C++ Files,输入 hello.c 文件名,单击 OK。
如图66。
图66 新建源文件(5) 在 hello.c中编写两个函数。
第一个函数为 hel(),它将在屏幕上显示“hello world!” ;。
如图 67。
第二个函数为 bye(),它将在屏幕上显示“goodby world!”图67 hello.c源文件2.编译生成工程在 workspace 窗口中选择 Builds Tab,右击 project1 Builds 文件夹,选择“Builds Project1.out” 生成工程 (如图 68)。
在弹出的Dependencies 窗口中 (如图 69) 会提醒 hello.c 的 makefile dependencies 没有生成,单击OK,则出现 Build output 对话框(如图 610),显 示生成信息,然后关闭此对话框。
图68 Project Build操作图69 Dependencies窗口图610 Project Build输出窗口3.下载目标文件到仿真器(1) 选择 File Tab,右击 Project1 Files,选 Download‘Priject1.out’,则提示启动 VxWorks 目标仿真器,点击Yes,继续进行(如图 611);(2) 在出现的 VxSimLite Launch 对话框(如图 612),选择 Standard Simulator,单击 OK,Tornado提醒启动一个目标仿真器(如图 613),单击是,启动目标仿真器(如图614) ; 目标仿真器窗口打开, Tornado 提示启动一个目标服务器(如图 615)。
点击 VxSimLite launch对话框中的 OK 按钮。
目标服务器名字形式为 targetName@hostName。
在本例中,目标机名字是 vxsim,开发主 机名字是redstandc7c2df。
注意:某一时刻,只能运行一个集成的目标仿真器。
(关闭 VxWork Simulator 窗口,也 就停止了仿真器的运行)。
目标服务器的名字将显示在 Tornado launch工具栏中;这个工具栏包含启动 Tornado工 具的按钮,如 browser 、shell 和 debugger。
目标机启动后,这些按钮有效。
图611 Project Download操作图612 VxSimLite Launch 对话框图613 提示启动目标仿真器对话框图614 目标仿真器输出窗口图615 启动目标服务器对话框4.Wind Shell 下启动运行应用程序。
(1) 启动并配置 Tornado debugger在运行应用之前,首先启动并配置 Tornado debugger,以使 debugger 能够自动地对任何 程序异常产生反应。
Tornado 的 debugger(及 CrossWind)同时支持图形和命令两种调试接口。
最常用的调 试行为(例如设置断点、控制程序运行)都可以通过点击可视化图标接口直接完成;同时, 程序列表和数据观察窗口对于应用和关键部分提供实时的可视内容。
配置调试器:从 Tornado主窗口中选择 Tools>Options>Debugger。
Options 对话框出现。
如图 616。
图616 Options对话框在 Auto attach to task下选择 Always 选项。
这种设置使得当一个异常发生时,调试器可 以自动地和异常任务关联。
点击 OK 继续进行。
点击 Tornado launch工具栏中的 debugger 按钮 启动调试器。
几秒后,在 Tornado主 窗口底部的状态行显示调试器正在运行,如图 617。
图617 状态行(2) 启动 Wind Shell,调用下载到目标机上的程序。
Tornado shell(也就是 WindShell)是一个 C 语言命令解释器。
它允许在 shell 命令行中 调用下载到目标机上的任何程序进行运行。
点击 Wind Shell 按钮 ,启动 Wind Shell。
当 Wind Shell 窗口打开后,在命令行中输 入 hel,按回车,查看显示结果是否正确。
下一步,输入 bye 函数的名字,查看显示结果是 否正确。
图618 Wind Shell窗口5.打开 hello.c文件,将 bye( )改为 bye,再重新 Builds Project1.out,在 Build Output 会出现如 图 619 错误提示,双击错误的一行,则会出现 hello.c文件编缉框,可修改 hello.c文件中错 误。
图619 Build Output输出窗口6.5.2 Tornado 自带的 cobble 程序调试根据以下提供的 Tornado实验练习完成有关 Wind Shell、 CrossWind 和 WindView的使用, 熟悉 Tornado这些工具的使用1.将 cobble.c添加到当前工程中,编译生成工程,下载工程到目标仿真器。
cobble.c是一个简单的多任务应用,模拟一个数据采集系统,数据来源于外部源(例如, 当数据到达时,一个设备将生成中断)。
第一个任务模拟一个中断服务程序生成新数据;第二个任务采集数据;第三个任务处理数据,完成计算并给出一个计算处理结果;第四个任务 监视处理结果值,当处理结果超出安全范围时,向屏幕打印报警信息。
(1) 将 c:\tornado\target\src\demo\star\cobble.c 拷贝到 d:\proj\Project1,在工作空间的 File tab 中,右击 project1 File,选择 Add Files,d:\proj\Project1\cobble.c添加到当前工程中。
(2) 重新 Builds Project1.out,下载工程到目标仿真器。
(3) 启动 Wind Shell。
在 Wind Shell 的命令提示符后输入主程序的名字 progStart,然后 回车,则应用程序启动运行。
2.用 Tornado的 Browser 检查目标内存使用情况Browser 是系统对象的浏览器,是一个辅助的图形化调试工具。
它监督目标系统状态, 包括活动任务的概要、内存分布等等。
(1) 点击 Tornado launch工具栏上的 Browser 按钮 启动 Browser。
(2) 当browser 窗口出现后,从下拉菜单中选择内存使用(Memory Usage)。
(3) 点击周期刷新按钮(periodic refresh)。
系统将周期地(周期约为几秒)刷新显示。
可以看到应用程序的内存使用量无限增大, 内存被无限制地消耗了, 出现了内存泄漏 (即 使用完毕的内存空间没有被释放),如图 620。
图620 Browser窗口当关闭该窗口时,也就停止了 Browser。
3.使用 WindView检查任务执行过程WindView 是实时应用的逻辑分析仪,它是一个动态可视工具,可以提供上下文切换信 息,以及导致发生这些交换的事件,还有与信号量,消息队列和看门狗计时器等对象有关的 信息。