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
