Embedded Operating Systems
Download
Report
Transcript Embedded Operating Systems
Real-Time Operating Systems
for Embedded Computing
李姿宜 R90921045
2003,06,10
Outline
Motivation
Embedded operating systems
Real-Time operating systems
A case study
Conclusion
Motivation
SoC CPU + ASIC + Software
Traditional application-specific systems
Implemented by algorithm-to-architecture
methodology.
Modern Trend : Design Reuse, which
software plays an important role, and
Real-time operating systems ( RTOS ) is the critical
component
Role of RTOS in HW/SW Co-Design
Formal Languages
Partitioning
SW Synthesis
RTOS
Tasks
Code Optimization
HW Synthesis
Logic Synthesis
Logic Optimization
Board Level Prototyping
Co-Simulation
And
Formal Verification
A new system-level synthesis flow
Algorithm
Development
Compilation
Process Management
System
Design
Interprocess Communication
RTOS
Memory Management
I/O Management
Architecture
IC Design
Embedded Operating System
Task Management
create, delete, suspend, resume
Time Management
system clock, generate delay
Inter Task Communication and Synchronization
Multitasking
No-OS disable interrupts / enable interrupts
With-OS enter/exit critical section
Embedded Operating System (cont’)
Inter Task Communication and
Synchronization
Wait for event, interrupt
Exchange data, queues, shared memory
Memory Management
temporary data buffers
allocate, free (critical in ES)
Real Time Operating System
Embedded applications can and will
respond to external events before deadline
Soft real-time requirements:
Breaking the time limit is unwanted, but is not
immediately critical
Hard real-time requirements
Breaking the limit is always seen as a
fundamental failure
Real Time Operating System
Characteristics
Bounded Interrupt Servicing
Priority Based Scheduling
Pre-Emptive Tasks
Scalability
Previous RTOS Research(1/2)
Scheduling of the CPU : Central purpose
of and RTOS
A complete process : waiting, ready, and
executing
Scheduling policies
Cooperative scheduler
Static priority-driven scheduler
Dynamic priority-driven scheduler
Previous RTOS Research(2/2)
Scheduling methodology examples
Rate Monotonic algorithm by Liu & Layland
static priorities based on periods
higher priorities to shorter periods
optimal among all static priority schemes
Earliest-deadline First
dynamic priority assignment
closer a task’s deadline, higher is it priority
applicable to both periodic and aperiodic tasks
need to calculate priorities when new tasks arrives
more expensive in terms of run-time overheads
Commercial RTOS Offerings
Integrated Systems (pSOS system),
WindRiver (VxWorks), Microtec Research
(VRTX), Microware Systems (OS-9), QNX
(QNX), Lynx Real-Time system (LynxOS),
Microsoft (Windows-CE)
Practical application issues
Memory requriment
Context switch time
Interrupt latency
An example of Commercial RTOS
A Case Study
On-Chip Multimedia Real-Time OS
LSIs such as digital signal processing,
image processing, and protocol processing
Two Major problems:
Overhead of Cyclic Task Execution
Memory Capacity Limiation
Modeling of System LSIs
HOST I/F
Core CPU
Memory
I/O
Block #A
Block #B
Block #C
Application specific hardware unit
Requirements of Embedded
Software
Requirement
Real-Time OS function
Hardware control
Task Management
Multitasking
Scheduling
Scheduling
Synchronization
New cyclic task
Urgent processing
Interrupt Management
Memory capacity
Semaphore Management
Very small real time OS
On-Chip Multimedia Real-Time OS
Task management
Cyclic task is
created and start
Dedicated interval
time
Cyclic task is
deleted
Cyclic task
execution
Resource
for task
Resource
for task
Allocated
deleted
On-Chip Multimedia Real-Time OS
Cyclic task is
created and start
Resource
for task
Allocated
Cyclic task is Cyclic task is
suspended
resume
Cyclic task is
deleted
Resource for
task
Resource for
task
Resource for
task
Not deleted
Not allocated
deleted
On-Chip Multimedia Real-Time OS
Interrupt Management
Semaphore management
Conclusion
Made a survey of real-time OS for
embedded system
Factors which influence the choosing of
OS?
The requirements of the applications
The special features of OS
Real- Time constrained