210 likes | 441 Views
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
E N D
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 HW Synthesis Co-Simulation And Formal Verification RTOS Tasks Logic Synthesis Code Optimization Logic Optimization Board Level Prototyping
Algorithm Development Compilation Process Management Interprocess Communication System Design RTOS Memory Management I/O Management Architecture IC Design A new system-level synthesis flow
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
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 #C Block #A Block #B Application specific hardware unit
Requirement Hardware control Scheduling Synchronization Urgent processing Memory capacity Real-Time OS function Task Management Multitasking Scheduling New cyclic task Interrupt Management Semaphore Management Very small real time OS Requirements of Embedded Software
Resource for task deleted Resource for task Allocated On-Chip Multimedia Real-Time OS • Task management Cyclic task is created and start Cyclic task is deleted Cyclic task execution Dedicated interval time
Resource for task Not deleted Resource for task Not allocated Resource for task deleted Resource for task Allocated On-Chip Multimedia Real-Time OS Cyclic task is created and start Cyclic task is suspended Cyclic task is deleted Cyclic task is resume
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