# VxWorks中Tornado的操作示例 ## 1. Tornado开发环境概述 Tornado是Wind River公司为VxWorks实时操作系统开发的集成开发环境(IDE),它提供了从代码编写到目标系统调试的全套工具链。作为VxWorks开发的核心平台,Tornado具有以下特点: - 交叉开发架构:主机(开发机)与目标机分离 - 集成编辑器、编译器、调试器和仿真器 - 支持多任务调试和系统级分析 - 提供WindSh命令行工具进行交互式操作 ## 2. 环境搭建与工程创建 ### 2.1 安装要求 - 主机系统:Windows NT/2000/XP - 硬件配置:建议512MB以上内存 - 目标机:支持x86、PPC、ARM等架构 ### 2.2 新建工程步骤 1. 启动Tornado开发环境 2. 选择菜单栏"File"→"New Project" 3. 选择工程类型: ```plaintext - Bootable VxWorks image (可启动镜像) - Downloadable project (可下载模块)
通过”Build”选项卡可配置:
#define INCLUDE_NETWORK /* 包含网络组件 */ #define INCLUDE_SHELL /* 包含Shell组件 */ #define USER_APPL_INIT usrAppInit /* 用户初始化函数 */
WindSh是Tornado的交互式Shell,常用命令:
命令 | 功能 |
---|---|
ld | 加载目标模块 |
unld | 卸载模块 |
i | 查看任务列表 |
tt | 挂起指定任务 |
td | 删除任务 |
sp | 启动新任务 |
示例调试会话:
-> ld "demo.o" # 加载目标文件 Loading...done. -> sp demoTask # 启动任务 New task created: 0x3a8c -> i # 查看任务状态 NAME TID PRI STATUS PC SP demoTask 0x3a8c 100 READY 0x20200 0x3ac4 tShell 0x3a00 110 READY 0x18200 0x3a44
Continue
继续执行Step Over
单步跳过Step Into
单步进入内存查看示例:
-> d 0x10000,10 # 查看内存0x10000开始的16字节 0x10000: 0x12345678 0x9abcdef0 0x11223344 0x55667788
使用checkStack
命令检测栈溢出:
-> checkStack TASK NAME STACK SIZE STACK USED STACK FREE tNetTask 4096 768 3328 demoTask 2048 1984 64 !!!警告!!!
#include <wv/wvLib.h> wvStart(100); /* 每100ms采样一次 */
查看网络配置:
-> ifShow lo0: flags=0x808<UP,LOOPBACK> inet 127.0.0.1 netmask 0xff000000 eth0: flags=0x8863<UP,BROADCAST,NOTRLERS,RUNNING> inet 192.168.1.100 netmask 0xffffff00
检查步骤: 1. 确认网络物理连接正常 2. 验证目标IP配置:
-> ifShow
-> tgtsvr Target server already running
使用memShow
命令:
-> memShow FREE LIST: block bytes seg 0x3c004 1024 0x38000 0x3c408 2048 0x38000
查看中断向量:
-> intVecShow IRQ VECTOR ISR ADDRESS 0x20 0x00105a80 (usrInt) 0x21 0x00105b00 (serialInt)
-> ld "/romfs/drivers/nicEnd.o" -> nicEndLoad(0, "eth0", 0)
#include <wdLib.h> WDOG_ID wdId; wdId = wdCreate(); wdStart(wdId, 200, (FUNCPTR)watchdogHandler, 0);
Tornado作为VxWorks的经典开发环境,通过本文演示的: - 工程配置方法 - WindSh交互技巧 - 系统调试手段 - 故障排查流程
开发者可以快速掌握嵌入式实时系统的开发要点。建议结合Wind River官方文档《Tornado User’s Guide》进行深入学习。
注意:本文基于Tornado 2.2版本编写,部分命令在新版Workbench中可能有所变化。 “`
这篇文章总计约1350字,采用Markdown格式编写,包含: 1. 多级标题结构 2. 代码块示例 3. 表格展示 4. 命令行交互片段 5. 结构化的问题解决方案 6. 版本兼容性说明
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。