Survey							
                            
		                
		                * Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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