嵌入式系统开发与集成开发环境的应用(3)
——
(7) 多主机:这是指Workbench可以在Windows、Linux、Solaris这三大流行的主机操作系统下运行,这不仅可以适合不同开发者的使用习惯,而且在一定程度上有利于某些目标系统的开发,如使用Linux主机环境调试运行Linux系统的目标板(但这并不是必须的)。
2.4 丰富易用的调试手段,大大加快调试进度
(1) 动态链接:用过Tornado开发环境的人都对其独特的分模块单独下载、动态链接到目标系统的功能深有体会,而Workbench也完全继承了这个特性。有了这个功能,就使开发者不必将所有应用模块都编写完成再进行调试,也不用每次将应用模块和操作系统编译到一起然后下载调试,而是编好一个小模块,如果想进行验证,只需将这个小模块(哪怕只是一个函数)编译然后下载到目标板中就行了,这大大加快了调试验证的速度,尤其是在目标板和主机之间是低速连接的情况下更能体现出其优势所在。
(2) 目标可视:对目标系统的可视化是每一个嵌入式软件开发人员都希望得到的功能,为达到这一目的,Workbench除了提供一般的查看内存,积存器、变量、调用树等的传统视图工具外,还提供了几种增强的系统查看工具:目标浏览器、系统观察器和SCOPETOOLS工具集。目标浏览器可以用来查看目标系统每一个系统资源的使用情况和当前状态,包括系统各个模块、任务、信号量、消息队列、内存、堆栈等。系统观察器可对系统事件提供详细的分析和图形化的可视效果,同时还可展示在目标机上执行的应用程序的相关任务、中断以及系统对象之间复杂的交互作用。它能够清楚地显示上下文变化以及信号量、消息队列、信号、任务、用户事件和记时器一类的系统事件,就象一个软件的“示波器”。应用这些系统查看工具,开发人员可以很容易地去诊断和解决嵌入式系统中存在的调度问题(如死锁,饥饿和竞争),性能问题(如优先级设置,资源的竞争与互斥),定时问题等。而RTI SCOPETOOLS则是专门为设备类软件开发提供的一组强大的可视化工具集,用户可以动态观察整个系统平台,包括应用代码、第三方的库,甚至操作系统本身。Workbench 2.2中集成进来了用于观察函数执行效率的ProfileScope工具,用于观察内存使用效率和检测内存泄露的MemScope工具,和用于检测变量或指定内存位置处数值的动态变化情况的StethoScope工具。另外,还有可选的用于实时跟踪代码执行情况的TraceScope工具和用于检测代码执行覆盖率的CoverageScope工具。
(3) 仿真环境:在目标系统的硬件开发完成之前,往往软件系统的开发也要同步进行,Workbench提供的模拟仿真环境(只适用于针对VxWorks操作系统的应用软件开发)就提供了这种同步开发的途径。VxWorks软件仿真器运行于主机操作系统环境中,是一种从VxWorks6.0操作系统移植过来的本地应用程序,它能够精确地实施VxWorks 6.0的高级复杂特性,包括实时进程、内存保护等,它还具有完整的文件系统和网络功能,并能调用主机系统API。这些特性使得在VxWorks软件仿真器中开发复杂的系统成为可能。例如,在VxWorks软件仿真器中可以组建多个网络,这些网络不但互相之间可以通讯,还可以通过主机系统的网口与外界相连,实现一个完全真实的网络环境;再例如,可以利用主机系统的显示屏幕来开发具有图形用户界面的应用程序,这是通过调用主机系统与图形相关的API来实现的。一般来说,用户可以为主机系统的任何资源编写API,而在VxWorks软件仿真环境中进行调用,这极大地扩展了VxWorks软件仿真器的功能,也更便于应用软件的同步开发。
评论