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