Vous êtes sur la page 1sur 25

Tornado: An Embedded System

Development Tool
Maung Wynn Aung Han
CIS 642, Spring 2001
Prof. Insup Lee
1

Tornado
An

IDE to develop real-time and


embedded applications with minimal
intrusion on the target system.

Tornado comprises:
VxWorks,

a high-performance real-time
operating system.
Application-building tools (compilers
and associated programs).
IDE for managing projects, host-target
communication, running, debugging,
and monitoring VxWorks applications.

The Tornado IDE

An integrated source-code editor.


A project management facility.
Integrated C and C++ compiler and linker.
The browser, a visual monitoring tool for
target system.
CrossWind, a source-level debugger.
WindSh, C and Tcl command shell that
controls the target.
VxWorks target simulator VxSim.
WindView software logic analyzer for the
target simulator.
4

Overview of Tornado IDE

The Tornado shell (WindSh)


allows

you to download application modules,


invoke both VxWorks and application module
subroutines.
Can be used for interactive exploration of the
VxWorks operating system and applications.
WindSh can interpret most C language
expressions.
A Tcl interpreter is also included.

Debugger (CrossWind)
Setting

breakpoints and controlling


program execution.
Program listings and data-inspection
windows.
Command-line

interface
extendable by Tcl scripting.

Browser
The

main browser window can be used


to monitoractive

system and application tasks


memory consumption
summary of the current target memory use

The displays are snapshots and can be


configured to update interactively, or
the automatically at a specified interval.
8

Browser Display Includes:

detailed task information


semaphores
message queues
memory partitions
watchdog timers
stack usage by all tasks on the target
target CPU usage by task
object-module structure and symbols
interrupt vectors
9

WindView
WindView

acts as a logic analyzer for


real-time software.
It allows to study the dynamic
interactions of among elements of your
complex system.
triggering facility to start and stop
data collection.
view graph provides visual chronicle
of the real-time system.
10

An example of WindView screen

11

WindView can be used to:

Detect race conditions, deadlocks, CPU


starvation, and other problems relating to
task interaction.
Determine application responsiveness and
performance.
See cyclic patterns in application behavior.
Save data for deferred analysis.
Conduct post-mortem analyses of failed
systems.
12

A Simple Demo (priority inversion)


using resource B
high

need resource A (blocked)

release B

need resource B (blocked)


long execution

mid

low

using resource A

preempted

release A
13

Sample program structure


Main

task will spawn three tasks with


low, high and medium priorities
consecutively with some delay.
Three Tasks will use resources as
explained above.
After launching the three tasks, the
main task terminates.
14

Task States

15

Some WindView legends

16

Seeing the tasks started in WindView

17

High priority task blocked

18

Low priority task preempted

19

Medium priority task blocks

20

Low priority task executes to the


end and higher ones follow.

21

After using priority inheritance

22

Before using priority inheritance

23

Conclusion
VxWorks

is an established platform of

RTOS.
Tornado suite of tools allow fast
development of embedded systems.
Good debugging/monitoring tools improve
reliability of systems.
Finally, I explored it out of curiosity and
dont get paid by WindRiver. :)

(but thanks to Mr Aftahi from WindRiver for Site Keys)

24

References
www.windriver.com
www.wrs.com

25

Vous aimerez peut-être aussi