[go: up one dir, main page]

0% found this document useful (0 votes)
42 views24 pages

RTOS

This chapter discusses real-time systems and their characteristics such as timing requirements and scheduling algorithms. Real-time systems must guarantee that tasks are completed by their deadlines. The chapter covers rate monotonic and earliest deadline first scheduling and how they assign priorities to tasks.

Uploaded by

Bijay Nag
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views24 pages

RTOS

This chapter discusses real-time systems and their characteristics such as timing requirements and scheduling algorithms. Real-time systems must guarantee that tasks are completed by their deadlines. The chapter covers rate monotonic and earliest deadline first scheduling and how they assign priorities to tasks.

Uploaded by

Bijay Nag
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Chapter 19: Real-Time

Systems

Operating System Concepts – 8th Edition Silberschatz, Galvin and Gagne ©2009
Chapter 19: Real-Time Systems

 System Characteristics

 Features of Real-Time Systems

 Implementing Real-Time Operating Systems

 Real-Time CPU Scheduling

 An Example: VxWorks 5.x

Operating System Concepts – 8th Edition 19.2 Silberschatz, Galvin and Gagne ©2009
Objectives
 To explain the timing requirements of real-time systems

 To distinguish between hard and soft real-time systems

 To discuss the defining characteristics of real-time systems

 To describe scheduling algorithms for hard real-time systems

Operating System Concepts – 8th Edition 19.3 Silberschatz, Galvin and Gagne ©2009
Overview of Real-Time Systems
 A real-time system requires that results be produced within a
specified deadline period.

 An embedded system is a computing device that is part of a larger


system (i.e., automobile, airliner).

 A safety-critical system is a real-time system with catastrophic


results in case of failure.

 A hard real-time system guarantees that real-time tasks be completed


within their required deadlines.

 A soft real-time system provides priority of real-time tasks over non


real-time tasks.

Operating System Concepts – 8th Edition 19.4 Silberschatz, Galvin and Gagne ©2009
System Characteristics
 Single purpose

 Small size

 Inexpensively mass-produced

 Specific timing requirements

Operating System Concepts – 8th Edition 19.5 Silberschatz, Galvin and Gagne ©2009
System-on-a-Chip
 Many real-time systems are designed using system-on-a-chip (SOC)
strategy

 SOC allows the CPU, memory, memory-management unit, and


attached peripheral ports (i.e., USB) to be contained in a single
integrated circuit

Operating System Concepts – 8th Edition 19.6 Silberschatz, Galvin and Gagne ©2009
Bus-Oriented System

Operating System Concepts – 8th Edition 19.7 Silberschatz, Galvin and Gagne ©2009
Features of Real-Time Kernels
 Most real-time systems do not provide the features found in a
standard desktop system

 Reasons include
 Real-time systems are typically single-purpose
 Real-time systems often do not require interfacing with a user
 Features found in a desktop PC require more substantial
hardware that what is typically available in a real-time system

Operating System Concepts – 8th Edition 19.8 Silberschatz, Galvin and Gagne ©2009
Virtual Memory in Real-Time Systems
 Address translation may occur via:

1. Real-addressing mode where programs generate actual addresses


2. Relocation register mode
3. Implementing full virtual memory

Operating System Concepts – 8th Edition 19.9 Silberschatz, Galvin and Gagne ©2009
Address Translation

Operating System Concepts – 8th Edition 19.10 Silberschatz, Galvin and Gagne ©2009
Implementing Real-Time Systems

 In general, real-time operating systems must provide:

1. Preemptive, priority-based scheduling

2. Preemptive kernels

3. Latency must be minimized

Operating System Concepts – 8th Edition 19.11 Silberschatz, Galvin and Gagne ©2009
Minimizing Latency
 Event latency is the amount of time from when an event occurs to
when it is serviced.

Operating System Concepts – 8th Edition 19.12 Silberschatz, Galvin and Gagne ©2009
Interrupt Latency
 Interrupt latency is the period of time from when an interrupt arrives at
the CPU to when it is serviced

Operating System Concepts – 8th Edition 19.13 Silberschatz, Galvin and Gagne ©2009
Dispatch Latency
 Dispatch latency is the amount of time required for the scheduler to
stop one process and start another

Operating System Concepts – 8th Edition 19.14 Silberschatz, Galvin and Gagne ©2009
Real-Time CPU Scheduling
 Periodic processes require the CPU at specified intervals (periods)
 p is the duration of the period
 d is the deadline by when the process must be serviced
 t is the processing time

Operating System Concepts – 8th Edition 19.15 Silberschatz, Galvin and Gagne ©2009
Scheduling of tasks when P2
has a higher priority than P1

Operating System Concepts – 8th Edition 19.16 Silberschatz, Galvin and Gagne ©2009
Rate Montonic Scheduling

 A priority is assigned based on the inverse of its period

 Shorter periods = higher priority;

 Longer periods = lower priority

 P1 is assigned a higher priority than P2.

Operating System Concepts – 8th Edition 19.17 Silberschatz, Galvin and Gagne ©2009
Missed Deadlines with
Rate Monotonic Scheduling

Operating System Concepts – 8th Edition 19.18 Silberschatz, Galvin and Gagne ©2009
Earliest Deadline First Scheduling

 Priorities are assigned according to deadlines:

the earlier the deadline, the higher the priority;


the later the deadline, the lower the priority

Operating System Concepts – 8th Edition 19.19 Silberschatz, Galvin and Gagne ©2009
Proportional Share Scheduling

 T shares are allocated among all processes in the system

 An application receives N shares where N < T

 This ensures each application will receive N / T of the total processor


time

Operating System Concepts – 8th Edition 19.20 Silberschatz, Galvin and Gagne ©2009
Pthread Scheduling

 The Pthread API provides functions for managing real-time threads

 Pthreads defines two scheduling classes for real-time threads:

1. SCHED_FIFO - threads are scheduled using a FCFS strategy with


a FIFO queue. There is no time-slicing for threads of equal priority

2. SCHED_RR - similar to SCHED_FIFO except time-slicing occurs


for threads of equal priority

Operating System Concepts – 8th Edition 19.21 Silberschatz, Galvin and Gagne ©2009
VxWorks 5.0

Operating System Concepts – 8th Edition 19.22 Silberschatz, Galvin and Gagne ©2009
Wind Microkernel

 The Wind microkernel provides support for the following:

1. Processes and threads

2. Preemptive and non-preemptive round-robin scheduling

3. Manages interrupts (with bounded interrupt and dispatch latency


times)

4. Shared memory and message passing interprocess communication


facilities

Operating System Concepts – 8th Edition 19.23 Silberschatz, Galvin and Gagne ©2009
End of Chapter 19

Operating System Concepts – 8th Edition Silberschatz, Galvin and Gagne ©2009

You might also like