Vxworks and Embedded Linux
Vxworks and Embedded Linux
Vxworks and Embedded Linux
Topics Covered
What is Real Time Operating System (RTOS)
Standard for RTOS
VxWorks Features as RTOS
Layer Structure
Microkernal Functions:
Multitasking
Scheduling
Interrupt Service Code
Shared Code and Reentrancy
Intertask Communications
Applications for VxWorks
Types of RTOS
Hard RTOS
Soft RTOS
Queued signals
Semaphore
Scheduling
Message queues
Memory management
Layer Structure
Graphics
Java Support
Multiprocessing
Internet
POSIX Library
File System
WindNet Networking
Core OS:
Wind Microkernal
Multitasking
S
Suspended used primarily for debugging
Task Stacks
Common Function
myData1
comFun(myData1)
}
comFun(yourData){
}
Task2( ){ ..
comFun(myData2)
}
myData2
10
11
12
Tasks
1.
Access SharData
2.
Access SharData
3.
Access SharData
Memory
SharData
13
Semaphores
Semaphore - mechanism for mutual exclusion and intertask
communication.
Binary Semaphore
Semaphore
available
YES
NO
TimeOut=
No_Wait
NO
Task is
pended for
timeOut
YES
Task cont.
Task cont.
Semaphore
taken
Semaphore
not taken
14
Semaphores, Continued
Counting Semaphore
Every time is semaphore is given count ++
Every time is semaphore is taken count - If count=0, task that tried to take semaphore is blocked
If semaphore is given and task is blocked, task is
unblocked
Is semaphore is given and no tasks are
blocked, count ++
Special Semaphore Option (Not in POSIX)
Timeout
Time the task is willing to wait (time in ticks) in pended
state. If time > timeout, ERROR occurs.
15
16
Printers
Digital cameras
Navigation systems
Hand-held computing
devices
Modems
any systems where rigid time requirement have been
placed on the operation of a processor or the flow of the data.
17
RTLinux
A hard real-time mini operating system
runs Linux as its lowest priority execution
thread
Linux thread completely preemptible
Real time threads and interrupt handlers
never delayed by non-realtime operations
Supports user level programming
MiniRTL implementation fits on a floppy