Tornado
-
Upload
muni-sankar-matam -
Category
Documents
-
view
5 -
download
1
description
Transcript of Tornado
![Page 1: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/1.jpg)
1
Tornado: An Embedded System Tornado: An Embedded System Development ToolDevelopment Tool
Maung Wynn Aung HanCIS 642, Spring 2001
Prof. Insup Lee
![Page 2: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/2.jpg)
2
TornadoTornado
An IDE to develop real-time and embedded applications with minimal intrusion on the target system.
![Page 3: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/3.jpg)
3
Tornado comprises: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.
![Page 4: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/4.jpg)
4
The Tornado IDE 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.
![Page 5: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/5.jpg)
5
Overview of Tornado IDEOverview of Tornado IDE
![Page 6: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/6.jpg)
6
The Tornado shell (WindSh)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.
![Page 7: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/7.jpg)
7
Debugger (CrossWind)Debugger (CrossWind)
Setting breakpoints and controlling program execution.
Program listings and data-inspection windows.
Command-line interface extendable by Tcl scripting.
![Page 8: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/8.jpg)
8
BrowserBrowser
The main browser window can be used to monitor-active system and application tasksmemory consumptionsummary of the current target memory use
The displays are snapshots and can be configured to update interactively, or the automatically at a specified interval.
![Page 9: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/9.jpg)
9
Browser Display Includes: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
![Page 10: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/10.jpg)
10
WindViewWindViewWindView 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.
![Page 11: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/11.jpg)
11
An example of WindView screenAn example of WindView screen
![Page 12: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/12.jpg)
12
WindView can be used to: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.
![Page 13: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/13.jpg)
13
A Simple Demo (priority inversion)A Simple Demo (priority inversion)
high
mid
low
using resource A
need resource A (blocked)
preempted
long execution
using resource B
need resource B (blocked)
release A
release B
![Page 14: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/14.jpg)
14
Sample program structureSample 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.
![Page 15: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/15.jpg)
15
Task StatesTask States
![Page 16: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/16.jpg)
16
Some WindView legendsSome WindView legends
![Page 17: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/17.jpg)
17
Seeing the tasks started in WindViewSeeing the tasks started in WindView
![Page 18: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/18.jpg)
18
High priority task blockedHigh priority task blocked
![Page 19: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/19.jpg)
19
Low priority task preemptedLow priority task preempted
![Page 20: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/20.jpg)
20
Medium priority task blocksMedium priority task blocks
![Page 21: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/21.jpg)
21
Low priority task executes to the Low priority task executes to the end and higher ones follow.end and higher ones follow.
![Page 22: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/22.jpg)
22
After using priority inheritanceAfter using priority inheritance
![Page 23: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/23.jpg)
23
Before using priority inheritanceBefore using priority inheritance
![Page 24: Tornado](https://reader034.fdocuments.in/reader034/viewer/2022042721/577c851d1a28abe054bbbf94/html5/thumbnails/24.jpg)
24
ConclusionConclusion 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
don’t get paid by WindRiver. :) (but thanks to Mr Aftahi from WindRiver for Site Keys)