Chapter 19: Real-Time Systems

Slides:



Advertisements
Similar presentations
Tasks Periodic The period is the amount of time between each iteration of a regularly repeated task Time driven The task is automatically activated by.
Advertisements

Introduction to Operating Systems – Windows process and thread management In this lecture we will cover Threads and processes in Windows Thread priority.
Chapter 11 Operating Systems
Real-Time Kernels and Operating Systems. Operating System: Software that coordinates multiple tasks in processor, including peripheral interfacing Types.
Chapter 5: CPU Scheduling
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Chapter 3 Overview of Operating Systems Copyright © 2008.
Chapter 19: Real-Time Systems
Lecture 5: CPU Scheduling. Lecture 5 / Page 2AE4B33OSS Silberschatz, Galvin and Gagne ©2005 Contents Why CPU Scheduling Scheduling Criteria & Optimization.
Chapter 19: Real-Time Systems Silberschatz, Galvin and Gagne ©2005 AE4B33OSS Chapter 19: Real-Time Systems System Characteristics Features of Real-Time.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Lecture 5 Operating Systems.
OPERATING SYSTEMS CPU SCHEDULING.  Introduction to CPU scheduling Introduction to CPU scheduling  Dispatcher Dispatcher  Terms used in CPU scheduling.
Dr. M. Munlin Real-Time and Multimedia Systems 1 NETE0516 Operating Systems Instructor: ผ. ศ. ดร. หมัดอามีน หมัน หลิน Faculty of Information Science and.
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
Operating Systems. Definition An operating system is a collection of programs that manage the resources of the system, and provides a interface between.
CE Operating Systems Lecture 11 Windows – Object manager and process management.
BY: ADAM BAIR Real-Time Operating Systems. What’s a Real-Time System? - A computer system that requires computation to be correct and done before a specified.
Click to edit Master subtitle style Chapter 19 Real-Time Systems CS 540 Advanced Operating systems Instructor: Dr. Behzad Perviz Fall 2010 Presented By:
19.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts with Java – 8 th Edition Chapter 19: Real-Time Systems.
Chapter 19: Real-Time Systems Silberschatz, Galvin and Gagne ©2005 Operating System Concepts Chapter 19: Real-Time Systems System Characteristics.
Chapter 19 Real-Time Systems CS 540 Advanced Operating systems Instructor: Dr. Behzad Perviz Fall 2010 Presented By: Monali Bhavsar Amee Joshi.
1.  System Characteristics  Features of Real-Time Systems  Implementing Real-Time Operating Systems  Real-Time CPU Scheduling  An Example: VxWorks5.x.
Advanced Operating Systems CS6025 Spring 2016 Processes and Threads (Chapter 2)
Real-Time Operating Systems RTOS For Embedded systems.
REAL-TIME OPERATING SYSTEMS
OPERATING SYSTEMS CS 3502 Fall 2017
Chapter 6: CPU Scheduling (Cont’d)
Chapter 19: Real-Time Systems
Chapter 6: CPU Scheduling
Lecture 12: Real-Time Scheduling
EEE Embedded Systems Design Process in Operating Systems 서강대학교 전자공학과
Chapter 5a: CPU Scheduling
Understanding Operating Systems Seventh Edition
Chapter 2 Scheduling.
Chapter 8 – Processor Scheduling
Chapter 2.2 : Process Scheduling
Real-time Software Design
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
ICS 143 Principles of Operating Systems
CPU Scheduling Basic Concepts Scheduling Criteria
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 5: CPU Scheduling
Operating System Concepts
3: CPU Scheduling Basic Concepts Scheduling Criteria
Chapter 2: The Linux System Part 3
Chapter5: CPU Scheduling
TDC 311 Process Scheduling.
Operating systems Process scheduling.
Chapter 5: CPU Scheduling
Process scheduling Chapter 5.
Chapter 6: CPU Scheduling
CPU SCHEDULING.
Outline Scheduling algorithms Multi-processor scheduling
CPU scheduling decisions may take place when a process:
Threads Chapter 4.
Multiprocessor and Real-Time Scheduling
Chapter 6: CPU Scheduling
Chapter 10 Multiprocessor and Real-Time Scheduling
Operating System , Fall 2000 EA101 W 9:00-10:00 F 9:00-11:00
Shortest-Job-First (SJR) Scheduling
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Linux Process State Scheduling information Identifiers
Chapter 6: CPU Scheduling
Chapter 6: CPU Scheduling
Module 5: CPU Scheduling
Chapter 13: I/O Systems “The two main jobs of a computer are I/O and [CPU] processing. In many cases, the main job is I/O, and the [CPU] processing is.
Presentation transcript:

Chapter 19: Real-Time Systems

Chapter 19: Real-Time Systems System Characteristics Features of Real-Time Systems Implementing Real-Time Operating Systems Real-Time CPU Scheduling VxWorks 5.x

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

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.

System Characteristics Single purpose Small size Inexpensively mass-produced Specific timing requirements

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.

Bus-Oriented System

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.

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.

Address Translation

Implementing Real-Time Operating Systems In general, real-time operating systems must provide: (1) Preemptive, priority-based scheduling (2) Preemptive kernels (3) Latency must be minimized

Minimizing Latency Event latency is the amount of time from when an event occurs to when it is serviced.

Interrupt Latency Interrupt latency is the period of time from when an interrupt arrives at the CPU to when it is serviced.

Dispatch Latency Dispatch latency is the amount of time required for the scheduler to stop one process and start another.

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

Scheduling of tasks when P2 has a higher priority than P1

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.

Missed Deadlines with Rate Monotonic Scheduling

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.

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.

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.

VxWorks 5.0

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.

End of Chapter 19