00000009.htm
来自「水木社区 embeded 版精华区 下载」· HTM 代码 · 共 318 行 · 第 1/2 页
HTM
318 行
<?xml version="1.0" encoding="gb2312"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"/><title>WindRiver产品介绍(4)--部分增强工具介绍 jacobw </title></head><body><center><h1>BBS 水木清华站∶精华区</h1></center><a name="top"></a>发信人: nonsun (无晴), 信区: Embedded <br />标 题: WindRiver产品介绍(4)--部分增强工具介绍 <br />发信站: BBS 水木清华站 (Tue May 22 23:56:02 2001) <br /> <br />WindRiver产品介绍(4)——部分增强工具介绍 <br /> <br />呵呵,小子借花献佛,下列内容来自WindRiver的相关 <br />产品介绍资料,偶只是编辑整理了一下下 ^_*。 <br /> <br />四、增强的工具 <br /> <br />PerformancePak <br /> <br />实时系统通常要求快速可靠。拥有PerformancePak, Tornado开发人员就拥有 <br />两个最重要的开发快速可靠的实时系统的可视化工具:用于运行分析的 <br />ScopeProfile和用于内存分析的MemScope。PerformancePak绑定的这两个工具 <br />为用户深层次了解目标系统提供了强有力的手段。 <br /> <br />ScopeProfile: <br />实时系统必须充分发挥处理器的性能。遗憾的是,造成CPU低效率运行的原因 <br />很难发现。轮廓图将有助于优化和分析CPU的运行情况,从而获得各项应用时 <br />CPU的占用情况。如果开发人员能够真正理解应用运行时CPU的性能瓶颈,就可 <br />以很容易的提高应用代码的质量。轮廓图在编程中是很重要的,通过它可以完 <br />整的评估应用是否过多的消耗了CPU的资源,以及系统是否充分利用了CPU的效 <br />率。 <br /> <br />在VxWorks实时操作系统,ScopeProfile实时刷新轮廓图,以追踪现时的CPU状 <br />况,提供了对每个函数的详细分析,并分解当前正在运行的任务内各个程序, <br />精确指出何处效率不高,以及它们的效率是如何随时间变化的。ScopeProfile <br />与Tornado开发平台完整地集成一起,它是调整对时间极为苛刻的系统以追求 <br />性能最优所必需的工具。 <br /> <br />完整的函数树: <br />完整的函数树是用户理解和优化代码的关键。ScopeProfile既显示执行每个程 <br />序所花的CPU时间,还可显示使用的程序,包括它所调用的所有子程序所花的 <br />CPU时间总和。平面图只显示调用单个程序系统所花的时间,而不显示调用这 <br />些程序的原因。 <br /> <br />分析动态性能: <br />ScopeProfile保留动态记录,以便分析程序运行程序运行过程中负载的变化, <br />甚至可以利用ScopeProfile的数据监视窗口把结果实时地绘制出来。比柱形图 <br />好得多,ScopeProfile可会出整个历史记录。 <br /> <br />绘制整体图: <br />由于不需要特殊的编译,ScopeProfile还可以统计其他软件代码,例如操作系 <br />统与外部库,以及开发人员的应用程序。许多性能问题是由于使用库和驱动程 <br />序效率不高。要解决这些问题,开发人员必须查看整体图。 <br /> <br />干预最少: <br />ScopeProfile不会影响一个程序的执行。其中的统计采样是快速高效的。分析 <br />过程只占用很少的CPU时间,而且是以低优先级在后台执行。缺省情况下,轮 <br />廓图反这些忽略了。 <br /> <br />MemScope: <br />系统必须长期可靠地运行。内存的使用是实时系统设计中一个很关键的方面, <br />然而人们常常对内存的使用了解不够。在一些设备使用传统的调试器,这种问 <br />题几乎是不可能被发现的,而使用StethoScope的数据监视功能,从发现问题 <br />到解决问题仅花了几分钟。如果不使用StethoScope,这个问题可能需要几天 <br />时间才能解决。 <br /> <br />StethoScope对于网络数据报到、温度的读取和仿真状态变量的监视也是很有 <br />用的。 <br />提高开发效率: <br /> <br />StethoScope已成为工业方面很多行业的开发的工具,比如电信,网络,视频 <br />编辑,控制,信号处理,半导体制造设备,仪器仪表,科学研究,汔车工具, <br />航空,机器人,工业自动化以及医疗设备等许多领域。 <br /> <br />StethoScope 5.1 <br />StethoScope是一个实时图形显标与数据采集的工具。在应用程序运行过程中 <br />,用户可以很容易诊断软件故障与性能问题,并给应用程序以最小的干预。 <br /> <br />利用StethoScope,开发人员可以观察系统内任意一组变量或内存的分布,查 <br />看可能错过的峰值和故障。程序运行时,可以在指定事件发生时或者在变量发 <br />生变化时开始采集数据,并把数据存入硬盘。 <br /> <br />StethoScope是一个功能强大的诊断工具,可用于观察运行程序的内部,实时 <br />分析程序,并保持程序的实时性。StethoScope让开发人员能立即察觉到代码 <br />的改变、参数的改变或者发生的外部事件对系统所带来的影响。 <br /> <br />实时图形显示 <br />StethoScope可以同时打开几个窗口,可在每个窗口内绘制不同信号,单击鼠 <br />标可查看所选定的信号,可实时观察信号或存入缓冲区,以及可离线查看缓冲 <br />区。还可在屏幕上测量、放大或缩小图形。StethoScope的触发工具可以仅捕 <br />捉所需要的事件,信号的变化可触发数据采集,或者在事件发生前后与过程中 <br />采集数据。 <br /> <br />最小干预,支持大系统与多数据类型: <br />StethoScope不影响系统的实时性能。数据的采集速度很快,采集的数据以低 <br />优先级在后台传送。StethoScope信号的层次化管理工具,允许大型系统同时 <br />监视数百个变量。StethoScope支持所有常用的数据类型而不损失数据的精度 <br />。其中包括指针与结构等。 <br /> <br />StethoScope工作方式: <br />图1表示StethoScope的结构。StethoScope维持一个被监视变量的列表。程序 <br />运行时,所有变量的值被快速复制到本地缓存,然后由一个低优先级的线程把 <br />数据发送到宿主机。 <br /> <br />StethoScope的运行: <br />图2是StethoScope跟踪一个马达传感器的例子。本例中,系统处于振动状态。 <br />尚且不知是由于控制策略不当,机械元件受损,或者是由于系统中某个有问题 <br />传感器或马达造成的。利用StethoScope可立即把问题缩小到左边小马达速度 <br />传感器上。传感器的输出图形显示偶尔发生错误读零。StethoScope 还反映出 <br />来自一个光电编码器与驱动程序没有问题。由于硬件寄存器偶尔出现读数错误 <br />,说明问题出在编码器的电路上。中,大部分内存被浪费了。甚至,内存使用 <br />出错是很危险的。一个有内泄漏问题的系统,可能运行几天以后就会神秘地崩 <br />溃。 <br /> <br />StethoScope同样可以用来监视网络数据包,温度测量,模拟状态变量等。 <br /> <br />提高开发能力: <br />StethoScope已经成为了一种有力的开发工具,它可以针对许多行业产品的开 <br />发应用,例如电信通讯,网络,图象编辑,控制,信号处理,半导体制造设备 <br />,控制仪表,科学研究,自动化系统,宇航,机器人,工业自动化,医疗设备 <br />等。 <br /> <br />MemScope是Tornado下一个动态内存分析工具,为控制内存的使用提供了必要 <br />的可视化功能。不需特殊的编译,它为系统使用的每一块内存提供了详细的映 <br />射图。开发人员在系统崩溃之前,就可发现内存泄漏问题。该工具甚至可以发 <br />现由于操作系统调用系统调用或者第三方库所引起的内存泄漏。MemScope还能 <br />发现破坏内存区的问题,例如读写超过数组范围,或者使用了个空指针。 <br /> <br />使用方便: <br />MemScope不需特殊的编译和硬件支持,可分析正在运行的代码。MemScope拥有 <br />直观方便的图形用户界面,当打开Tornado launcher上的图标时,MemScope可 <br />自动加载所需要的目标机驻留代理。 <br /> <br />WindView 2.0 <br /> <br />风河公司的WindView 2.0 提供给开发者一个久经考验的可视化工具来适应实 <br />时嵌入系统开发的需要。 <br /> <br />1994年,WindView通过允许开发者观察一个嵌入系统的动态操作而革新了这个 <br />行业,第一次,开发者可以看到复杂的一个目标上执行的应用的任务,中断, <br />系统对象之间的交互,上下文切换象系统事件(比如信号量,消息队列,信号 <br />任务,时钟,以及用户事件)一样被清楚的显示出来。 <br /> <br />WindView 2.0通过一系列的增强提升了技术水平,是通过提供给开发者在 <br />Tornado下的Fast Focus,Deep Analysis和Everywhere应用工具来实现的。 <br /> <br />1:Fast Focus--隔离你应用中的一些需要分析的区域,便于更好的调试你的应用。 <br />2:Deep Analysis--用来分析事件日志的一种新方法。 <br />3:Everywhere- Everywhere可以在使用WindView时不考虑目标板的连接情况。 <br /> <br />* Fast Focus: <br />WindView2.0提供了专为帮助开发者快速定位他们的实时系统问题的新特性, <br />通过排除不必要的元素来实现,作为结果,问题在屏幕上被逐字的显示出来。 <br />WindView2.0 提供了一个新的VxWorks功能的接口,称做Triggering (见上图) <br />。Event Triggering允许当指定事件或事件序列发生时采取行动,Triggering <br />
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?