Presentation is loading. Please wait.

Presentation is loading. Please wait.

Real-Time Operating System Design

Similar presentations


Presentation on theme: "Real-Time Operating System Design"— Presentation transcript:

1 Real-Time Operating System Design
Alvin AuYoung ee290O 4/19/01 Real-Time OS Design - 1

2 Overview Introduction - Motivation - Goals Design Issues Methodologies
- Priority-based Kernel - RT extensions of timesharing systems - Research operating systems Case study: Java-OS Conclusions Real-Time OS Design - 2

3 Motivation Most current operating systems are not suitable for developing or deploying applications with real-time constraints i.e. scheduling policies, process synchronization, system architecture Real-Time OS Design - 3

4 Goals Create an environment suitable for developing applications with hard real-time constraints on task execution in a reactive environment. Two key ideas: Predictability: Predict direct consequences of any scheduling decision. Schedulability Guarantees: Verify the schedulability of a given set of tasks. Real-Time OS Design - 4

5 Design Issues How can I guarantee predictability and schedulability with the different components of my system? Architecture, Memory Management, Task structure, Kernel, etc... Real-Time OS Design - 5

6 Methodologies Priority-based Kernels VxWorks, OS9, pSOS
RT extensions of timesharing systems RT-Mach, RT-Unix Research operating systems Spring, HARTIK Real-Time OS Design - 6

7 Priority-based kernels
Objective: - High performance for average response time to external events. Characteristics: - fast context switching - small footprint - efficient interrupt handling - preemptable primitives - fast communication mechanisms Real-Time OS Design - 7

8 Priority-based kernels
Driven by a real-time clock Task Scheduling with fixed priorities Synchronization tools, limitations Communication protocols Problem? Real-Time OS Design - 8

9 Real-Time extensions of timesharing OS
Objective: Extend current (commerical) time-sharing systems to satisfy real-time constraints. Characteristics: - Reuse standard peripherals and interfaces - Speedier development Real-Time OS Design - 9

10 Real-Time extensions of timesharing OS
- Reused Kernel - Task Scheduling with fixed priorities Tasks vs Threads? (N. Wirth) - Re-implemented User-Level Threads - Nonpreemptable syscalls, interrupts problems? Real-Time OS Design - 10

11 Research Operating Systems
Objective: The ability to treat tasks with explicit timing constraints, such as periods and deadlines Characteristics: - Scheduling guarantee mechanisms - Characterize tasks with additional parameters - Avoidance of nondeterministic blocking time Real-Time OS Design - 11

12 Research Operating Systems
Case Study: Spring Kernel Real-Time OS Design - 12

13 A Java Solution: JMD A Java Kernel for Embedded Systems in Distributed Process Control Java Microcontrolled Device (JMD) - JMD applications (high level) - JMD-OS API - JMD Kernel - MicroKernel (low level) Real-Time OS Design - 13

14 A Java Solution: Task Model
Task Methods and Behaviors: parameterized by: - period of execution - deadline - WCET - Priority Class (1 - 10) Variable Scheduling Algorithm Real-Time OS Design - 14

15 A Java Solution: Conclusions
Not yet RTSJ compliant Flexible Kernel provides abstraction and possibility for future development. Maybe in the future? Real-Time OS Design - 15


Download ppt "Real-Time Operating System Design"

Similar presentations


Ads by Google