operating sytems basics

24
Chapter 19: Real Chapter 19: Real- -Time Systems Time Systems

Transcript of operating sytems basics

Page 1: operating sytems basics

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

Page 2: operating sytems basics

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 

Page 3: operating sytems basics

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

Page 4: operating sytems basics

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.

Page 5: operating sytems basics

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

Page 6: operating sytems basics

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.

Page 7: operating sytems basics

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

Page 8: operating sytems basics

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.

Page 9: operating sytems basics

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.

Page 10: operating sytems basics

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

Page 11: operating sytems basics

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 

Page 12: operating sytems basics

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.

Page 13: operating sytems basics

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.

Page 14: operating sytems basics

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.

Page 15: operating sytems basics

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

Page 16: operating sytems basics

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

Page 17: operating sytems basics

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 

.

Page 18: operating sytems basics

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

Page 19: operating sytems basics

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.

Page 20: operating sytems basics

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.

Page 21: operating sytems basics

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.

Page 22: operating sytems basics

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 

Page 23: operating sytems basics

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.

Page 24: operating sytems basics

8/7/2019 operating sytems basics

http://slidepdf.com/reader/full/operating-sytems-basics 24/24

End of Chapter 19End of Chapter 19