8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 1/24
Chapter 19: Real Chapter 19: Real--Time SystemsTime Systems
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 2/24
19.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Chapter 19: Real Chapter 19: Real--Time SystemsTime Systems
System Characteristics
Features of Real-Time Systems
Implementing Real-Time Operating Systems
Real-Time CPU Scheduling
VxWorks 5.x
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 3/24
19.3 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
ObjectivesObjectives
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
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 4/24
19.4 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Overview of Real Overview of Real--Time SystemsTime 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.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 5/24
19.5 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
System CharacteristicsSystem Characteristics
Single purpose
Small size
Inexpensively mass-produced
Specific timing requirements
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 6/24
19.6 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
SystemSystem--onon--aa--ChipChip
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.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 7/24
19.7 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
BusBus--Oriented SystemOriented System
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 8/24
19.8 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Features of Real Features of Real--Time KernelsTime 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.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 9/24
19.9 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Virtual Memory in Real Virtual Memory in Real--Time SystemsTime Systems
Address translation may occur via:
(1) Real-addressing mode where programs generate actual addresses.
(2) Relocation register mode.
(3) Implementing full virtual memory.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 10/24
19.10 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Address Translation Address Translation
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 11/24
19.11 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Implementing Real Implementing Real--TimeTime
Operating SystemsOperating Systems
In general, real-time operating systems must provide:
(1) Preemptive, priority-based scheduling
(2) Preemptive kernels
(3) Latency must be minimized
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 12/24
19.12 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Minimizing Latency Minimizing Latency
Event latency is the amount of time from when an event occurs to when it isserviced.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 13/24
19.13 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Interrupt Latency Interrupt Latency
Interrupt latency is the period of time from when an interrupt arrives at theCPU to when it is serviced.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 14/24
19.14 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Dispatch Latency Dispatch Latency
Dispatch latency is the amount of time required for the scheduler to stopone process and start another.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 15/24
19.15 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Real Real--Time CPU SchedulingTime 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
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 16/24
19.16 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Scheduling of tasks when P Scheduling of tasks when P 2 2 has a higher priority has a higher priority
than P than P 11
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 17/24
19.17 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Rate Montonic SchedulingRate Montonic Scheduling
A priority is assigned based on the inverse of its period
Shorter periods = higher priority;
Longer periods = lower priority
P 1
is assigned a higher priority than P 2
.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 18/24
19.18 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Missed Deadlines withMissed Deadlines with
Rate Monotonic SchedulingRate Monotonic Scheduling
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 19/24
19.19 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Earliest Deadline First SchedulingEarliest 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.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 20/24
19.20 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Proportional Share SchedulingProportional 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.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 21/24
19.21 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Pthread SchedulingPthread 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.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 22/24
19.22 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
VxWorks 5.0 VxWorks 5.0
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 23/24
19.23 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts ± 7 th Edition, Jan 1, 2005
Wind Microkernel 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.
8/7/2019 operating sytems basics
http://slidepdf.com/reader/full/operating-sytems-basics 24/24
End of Chapter 19End of Chapter 19