VxWorks Operating System

Download Report

Transcript VxWorks Operating System

VxWorks Operating System
by Michele Gaetani
EEL 6897 – Software Development for
Real-Time Engineering Systems
Fall 2007
Happy Halloween!
•
•
•
•
•
Description
Origin of the name “VxWorks”
Its major distinguishing features
Marketed products using this OS
Other similar real-time operating systems
Description
• Real-time operating system by Wind River
Systems of Alameda, CA
• Generally used in embedded systems
• How VxWorks development is done
Target (board)
Host (PC)
Origin of the Name
• Ready Systems “VRTX”
• VRTX didn’t work very well
• Rights to VRTX were acquired by
WindRiver Systems
Major Distinguishing Features
•
•
•
•
•
•
•
•
•
Flat memory model
Priority pre-emptive scheduling
Multitasking kernel
Interrupt-driven
Tornado IDE
Mutual exclusion via locking/semaphores
Intertask communication with message queues
Watchdog timers
User-interface shell
Flat memory model
•
•
•
•
No virtual memory or page swapping
VX_VMI
Each task has own context
Single common address space
Priority pre-emptive scheduling
•
•
•
•
•
“scheduler” software handles priorities
Pre-emptive = forcibly removing tasks
It is the default for VxWorks
Highest priority task runs
Round-robin scheduling
Priority pre-emptive scheduling
•
•
•
•
•
“scheduler” software handles priorities
Pre-emptive = forcibly removing tasks
It is the default for VxWorks
Highest priority task runs
Round-robin scheduling
Priority pre-emptive scheduling
HIGH
T3
P
R
I
O
R
I
T
Y
LOW
T2
T2
T1
T1
TIME
= preemption
= task completion
Multitasking kernel
• Fast context switching between tasks to
seem like simultaneous task execution
• Kernel’s scheduling algorithms determine
who goes next
• Task control block (TCB)
• One process, many tasks
Interrupt driven
• Interrupts generated by an asynchronous
event
• To perform context switches
• Service hardware/external signals
• Low latency
Integrated development
environment
•
•
•
•
•
•
Called Tornado
Tools to build applications
Workbench Eclipse technology
Multilanguage support
Third-party or user’s own plug-ins
VxSim
Mutual Exclusion
•
•
•
•
•
To protect shared memory
Provide exclusive access to resources
Interrupt locks
Pre-emption disabling
Semaphores
Message queues
• Task communication
• Client/server model
• Read, perform, reply
Watchdog timers
• Time delayed interrupts/function calls
• System clock
VxWorks shell
• Command-line interface
• Direct operating system interaction
• Great for debugging, performance
monitoring
• Interprets C-like commands
• Only one can be running at any given time
Shell commands
Command
------i
cd
pwd
ls
ll
ld
sp(FUNCPTR func, int
devs
inetstatShow
memShow( int type )
Description
----------Show information on all running tasks
Change Directory; just like UNIX cd
Print Working Directory; just like UNIX pwd
List directory contents
Long listing of directory contents; like UNIX "ls -l"
Load a module
arg1..9) Spawns a new task with the entry point given
by func, passing the given arguments to the function
(arg1..9 optional)
List all devices
Show network connections (like netstat on UNIX)
Show free memory summary; additional details if
argument is non-zero
“i” command
NAME
---------tExcTask
tLogTask
tShell
tRlogind
tTelnetd
scanEvent
gpibLink
tNetTask
scanPeriod
ENTRY
-----------_excTask
_logTask
_shell
_rlogind
_telnetd
30da20
2c99b2
_netTask
30d676
TID
-------3dc2f4
3d99f4
3a85f4
3b72dc
3b5438
299184
2bb5e4
3d5668
29ba44
PRI
--0
0
1
2
2
41
47
50
53
STATUS
-----PEND
PEND
READY
PEND
PEND
PEND
PEND
PEND
DELAY
PC
-------5a83c
5a83c
46f08
a2a0
a2a0
a2a0
a2a0
a2a0
46772
SP
-------3dc25c
3d9958
3a82d0
3b70e0
3b5368
29913c
2bb590
3d5610
29b9f8
ERRNO
------3006b
0
3d0001
0
0
0
0
0
0
DELAY
----0
0
0
0
0
0
0
0
4CA
“spy” command
NAME
-------tExcTask
tLogTask
tShell
tSpyTask
tRdbTask
tNetTask
tPortmapd
EthernetTask
MonitorTask
SystemContro
UITask
KERNEL
INTERRUPT
IDLE
TOTAL
ENTRY
-------excTask
logTask
shell
spyComTask
rdbTask
netTask
portmapd
OSThreadEn
OSThreadEn
OSThreadEn
OSThreadEn
TID
----bddba8
bdb230
b56140
b07a28
a6dc78
a8c928
a71e28
a6a818
a58ca8
a44570
a202c0
PRI
--0
0
1
5
20
50
100
128
128
128
128
total % (ticks)
--------------0% (
0)
0% (
0)
0% (
26)
5% (
163)
0% (
0)
0% (
4)
0% (
0)
0% (
2)
3% (
87)
11% (
329)
22% (
655)
2% (
83)
9% (
269)
25% (
715)
93% (
2851)
delta % (ticks)
--------------0% (
0)
0% (
0)
0% (
0)
5% (
29)
0% (
0)
0% (
3)
0% (
0)
0% (
0)
2% (
17)
11% (
66)
20% (
118)
3% (
18)
10% (
61)
28% (
162)
93% (
569)
Marketed VxWorks Products
• “Spirit” and “Opportunity” Mars
Exploration Rovers
• Boeing 787 airliner
• BMW iDrive system
• Apache Longbow (AH-64)
• Linksys wireless routers
Other Similar Operating Systems
•
•
•
•
Embedded Linux
Nucleus RTOS
OS-9
Windows CE
Other Similar Operating Systems
•
•
•
•
Embedded Linux
Nucleus RTOS
OS-9
Windows CE
The End
Questions can be asked via WebCT
Thank you!
The End
Questions can be asked via WebCT
Thank you!