您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 公司方案 > Tornado-开发环境
Tornado开发环境使用说明北京瑞斯康达科技有限公司2009年8月内容•Tornado集成开发环境介绍•工程管理•TargetServer•调试•ShellTornado集成开发环境的简介•Tornado是由美国风河系统公司(WindRiverSystem公司,WRS)推出的高性能实时操作系统VxWorks的开发平台,它包括一套完整的面向嵌入式系统的开发和调试工具。•Tornado是集成了编辑器、编译器、调试器于一体的高度集成的窗口环境,给嵌入式系统开发人员提供了一个不受目标机资源限制的超级开发和调试环境。•Tornado开发系统包含三个高度集成的部分:运行在目标机上的高性能、可裁剪的实时操作系统VxWorks;运行在宿主机的强有力的交叉开发工具和实用程序,可对目标机上的应用程序进行跟踪和调试;连接宿主机和目标机的多种通讯方式,如:以太网,串口线,ICE或ROM仿真器等。•Tornado环境采用主机--目标机交叉开发模型,应用程序在主机的Windows环境下编译链接生成可执行文件,下载到目标机,通过主机上的目标服务器与目标机上的目标代理程序的通信完成对应用程序的调测、分析。Tornado嵌入式集成开发系统结构SSuunnHPWindows95WindowsNTIBM。。。。。。。。HOSTLAUNCHERGUITornadoPlug-insTARGETSERVEROn-lineHypertextWindShCrossWindWindPowerToolsWindConfigBrowserThirdPartyandCustomerToolsSimulationEnvironmentVxSimTARGETVxWorks/IxWorks/WispScalableRunTimePPoowweerrPPCC6688KKCCPPUU3322CCoollddFFiirreeSSPPAARRCCii996600xx8866PPeennttiiuummAARRMMMMIIPPSSMMCCOORREEVV88XXXXSSTT2200SSHHReal-TimeEmbeddedApplicationRTGLGRAPHICSVxWindowsVxVMIVxMPWindNetNetworkingFileSystemSCSIPOSIXLibrarywindMicrokernelBSPDebugAgentTornado工具集•集成的源代码编辑器•工程管理工具•集成的C和C++编译器和make工具•调试器(CrossWind):系统和任务级调试工具,可以调试C、C++以及汇编程序。•Shell(WinSh):C语言命令外壳,用于控制目标机。•浏览器(Browser):用于收集可视化的资源,监视目标系统。•VxSim:集成的VxWorks目标机仿真器。•WindView:集成的软件逻辑分析仪目录与文件Tornado目录列表WIND_BASE(指向Tornado安装目录的环境变量).wind\存放个人定制文件和状态信息文件等Docs\存放各种帮助文件books.html,Tornado_Reference.html,VxWorks_Reference_Manaul.html、rtnIndex.htmlHost\存放Tornado主机环境相关文件include\存放TornadoAPI相关的头文件resource\存放Windows资源文件,如图标等resource\tcl\存放实现用户界面的TCL文件及各种工具实现Tcl存放TCL相关源代码x86-win32\存放主机工具及各种动态库x86-win32\lib\Tornado应用支持库Setup\安装相关目录(与用户无关)Share\Src\WDB、WTX、TargetServer源代码,由主机与目标机共享Target\存放目标机VxWorks相关文件Setup.log包含安装信息Docs目录下存放各种帮助手册,主要是与Tornado和VxWorks相关的Tornad手册列表books.html手册总入口Tornado_Reference.html分项描述各主机工具,如WindSh、elfToBin等Tornado_API_Reference.html描述TornadoAPI,一般用户不用,按结构层次分类libIndex.html库参考入口,按库名分类,包括VxWorks库和Tornado库BSP_Reference.htmlBSP参考VxWorks_Reference_Manual.htmlVxWorks库手册,以库名排序描述,经常参考rtnIndex.htmlVxWorks库手册,以函数名排序描述,经常参考启动Tornado•点击Windows任务栏上的“开始”按钮,选择程序,然后选择Tornado程序组,点击其中的Tornado项,即可启动Tornado运行,第一次启动Tornado时,创建工程窗口将出现。工具条和按钮•主窗口的顶部包括5个工具条,可以快速执行最常用的Tornado命令;•Standard:包括打开、保存、剪切、粘贴和打印等标准功能;•Launch;启动浏览器、shell、调试器、仿真器、WindView和触发;•Debug:包括启动调试、运行函数、单步执行和监视的调试器功能;•WindView:缩放功能、过滤和数值分析。•Build:构建、编译当前文件,更新相关性,以及下载。StandardLaunchDebugWindViewBuild工程管理•Tornado以工程(project)为单位组织软件开发,工程中包括源代码信息、VxWorks配置和编译配置等。Tornado提供了工作空间(workspace)机制,用于工程的组织和管理。Tornado可以创建多个工作空间,每一个工作空间可以包含多个工程。每个工程又能引用多个源代码文件,组成层次结构。工作空间主要用在主机上安装有多个不同版本的Tornado时,每个工作空间可以以Torndao的版本命名。•Tornado能创建两种工程类型:Bootable和Downloadable。前者用于生成VxWorks程序映像,包括基本的操作系统组件,经过完全连接,可以独立运行。后者生成程序模块目标映像,只是部分连接,不能独立运行,但这种映像支持动态加载和连接,为VxWorks特有,能进行应用代码的快速开发和调试,而对系统其他部分不会造成影响。在项目的开发中,采用创建Downloadable工程来调试自己开发的应用模块。工程的创建•step1:Tornado启动时或选择菜单“File-NewProject”命令选择工程类型。我们以创建Downloadable工程为例做一介绍。•step2:设置工程名称、目录、描述和所属的工作空间。•step3:选择编译工具链,与CPU类型和编译器相关。工具链决定了编译器、系统库和目标格式等。工程生成时会自动完成依赖关系,生成相关文件•step4:工程创建完成工程的文件•创建的新工程是一个初始化框架,还没有文件。只有和用户自己的应用代码关联后,才能进行实际的项目开发。•添加文件:工程的编译•完成应用代码的添加后,需要完成编译配置,才能得到需要的程序映像。编译配置在“Builds”窗口中进行。工程的编译•“C/C++compile”和“assembler”选项卡用于设置编译器和汇编器的命令和选项。•“linker”选项卡用于设置连接器的命令和选项。•“LinkOrder”选项卡可查看模块连接的情况,用于更改链接次序。编译选项-g映像中是否包含调试信息,会影响映像的大小-ansi支持标准C语法,若想在C中用C++注释则去掉-D编译器宏定义,用于代码条件编译-O指定优化等级,建议-O0(不优化)-O2优化-fvolatile防止编译器优化volatile变量相关的代码-I包含头文件目录,需自己添加-IC:/Tornado2.2/target/h-Wall报告所有告警-P预处理器不产生“#line”指令“Rules”选项卡用于设置生成的映像的类型。编译选项•“Macros”选项卡用于定义编译宏。编译选项下载工程到目标服务器•在build成功完成以后,在某一个.o文件上单击右键,选择“Download文件.o”能够实现模块的动态下载。TargetServer•TargetServer在主机上运行并管理主机工具(如shell、调试器和浏览器)以及目标机系统本身之间的通信。•TargetServer包含主机驻留目标机符号表和向正在运行的目标机系统中插入应用模块的目标模块装载器。•TargetServer和目标机系统通过目标机代理TargetAgent(WDBAgent)通信,该Agent以任务的形式运行在目标机上。Tornado工具向TargetServer发送请求,根据请求类型,有的请求由TargetServer自己处理,有的转发给TargetAgent处理。为了与TargetAgent通信,TargetServer使用一个通信后端,该后端与TargetAgent配置为相同的通信协议和传输层。配置和启动•TargetServer必须在任何工具能与TargetAgent通信之前配置并启动。在配置和启动之前,确定主机和目标机已经适当地连接。•通过选择菜单“Tools-TargetServer”即出现配置对话框:•在该对话框中可以创建、复制和删除TargetServer配置;•描述为该配置的标识,描述下的选项用于将该描述添加到菜单上,方便以后的操作;•TargetServer为目标服务器的IP地址•TargetName/IP为TargetAgent的目标机IP地址配置名称服务器名属性区目标机名称或IP地址启动服务器并保存TargetServer属性设置•授权和访问限制【Authorizations】用于限制用户访问以增加系统的网络安全性,授权配置如图所示。如果选择“LockonStartup”,则只有启动TargetServer的用户的进程才可以访问该TargetServer,如果没有选择“Lock”项,则缺省查找“$WIND_BASE/.WIND/userlock”文件来获得授权用户ID;若没有该文件,则无访问限制。也可以自己设置指定“UserIDfile”。我们一般不对该项进行设置,也就是设置成无访问限制。•通信后端【BackEnd】根据不同的目标机,可以选择不同的TargetServer通信后端与目标机的Agent通信。其中wdbrpc用于网络连接;wdbserial用于串行通道连接;wdbpile用于Visxim仿真目标机连接;netrom用于一专有的通讯协议;loopback用于测试;选择的后端类型与Agent中选择的WDBconnection类型一致才能建立主机与目标机之间的WDB连接。各后端的动态库位于“\host\x86-win32\lib\backend”目录下。wdbrpc是最常使用的一种:“Timeout”参数用于设置连接断开的确认时间,缺省为1秒,当连接超时时会进行连接重试,最大重试次数由“Re-try”确定,缺省为3次。•核心文件和符号表【CoreFileandSymbols】TargetServer依赖主机上存放的VxWorks映像文件来完成调试工作,我们需要指定映像核文件的存放路径。TargetServer在主机上为目标机VxWorks映像维护了一张符号表,该表根据核心文件建立,从文件中提取符号名称和内存地址,用于加载其他模块时进行引用符号解析。默认情况下选择“GlobalSymbol”,只有核文件中的全局符号加入到主机符号表中。若选择“AllSymbol”全局和局部符号都加入符号表中。“NoSymbol”不建立主机符号表。另外为了实现在动态加载时主机和目标机上符号表的一致性,选择“SynchronizeTarget/HostSymbolTable”选项。目标机内存管理•为了避免目标机进行过多的数据传输处理,TargetServer维持在主机系统上有一块快速存储区(Cache)。该内存区主要
本文标题:Tornado-开发环境
链接地址:https://www.777doc.com/doc-905293 .html