Real Time Scheduling Telvis Calhoun CSc 8320. Outline Introduction Real-Time Scheduling Overview Tasks, Jobs and Schedules Rate/Deadline Monotonic Deferrable.

Slides:



Advertisements
Similar presentations
Real Time Scheduling.
Advertisements

EE5900 Advanced Embedded System For Smart Infrastructure
Chapter 7 - Resource Access Protocols (Critical Sections) Protocols: No Preemptions During Critical Sections Once a job enters a critical section, it cannot.
Priority Inheritance and Priority Ceiling Protocols
Introduction to Embedded Systems Resource Management - III Lecture 19.
Priority INHERITANCE PROTOCOLS
1 EE5900 Advanced Embedded System For Smart Infrastructure RMS and EDF Scheduling.
0 Synchronization Problem Resource sharing –Requires mutual exclusion –Critical section A code section that should be executed mutually exclusively by.
CS5270 Lecture 31 Uppaal, and Scheduling, and Resource Access Protocols CS 5270 Lecture 3.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems Resource Access Control Protocols.
CSE 522 Real-Time Scheduling (3)
Real-time concepts Lin Zhong ELEC424, Fall Real time Correctness – Logical correctness – Timing Hard vs. Soft – Hard: lateness is intolerable Pass/Fail.
1 Deferrable Scheduling for Temporal Consistency: Schedulability Analysis and Overhead Reduction Ming Xiong : Lucent Bell Labs Song Han: City University.
Real-Time Scheduling CIS700 Insup Lee October 3, 2005 CIS 700.
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.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
CprE 458/558: Real-Time Systems
Spring 2002Real-Time Systems (Shin) Rate Monotonic Analysis Assumptions – A1. No nonpreemptible parts in a task, and negligible preemption cost –
Real-Time Operating System Chapter – 8 Embedded System: An integrated approach.
UCDavis, ecs251 Fall /23/2007ecs251, fall Operating System Models ecs251 Fall 2007 : Operating System Models #3: Priority Inversion Dr. S.
Chapter 19: Real-Time Systems Silberschatz, Galvin and Gagne ©2005 AE4B33OSS Chapter 19: Real-Time Systems System Characteristics Features of Real-Time.
Niranjan Rao Julapelly Real-Time Scheduling [ Chapter 5.5]
Introduction to Embedded Systems
Task Scheduling By Dr. Amin Danial Asham.
Introduction to Embedded Systems Rabie A. Ramadan 6.
Real Time Operating Systems Scheduling & Schedulers Course originally developed by Maj Ron Smith 8-Oct-15 Dr. Alain Beaulieu Scheduling & Schedulers- 7.
Real-Time Systems Design1 Priority Inversion When a low-priority task blocks a higher-priority one, a priority inversion is said to occur Assume that priorities:
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
Scheduling policies for real- time embedded systems.
Real-Time Operating Systems for Embedded Computing 李姿宜 R ,06,10.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Real-Time CORBA By Christopher Bolduc. What is Real-Time? Real-time computing is the study of hardware and software systems that are subject to a “real-
Real-Time Scheduling CS4730 Fall 2010 Dr. José M. Garrido Department of Computer Science and Information Systems Kennesaw State University.
Real-Time Scheduling CS 3204 – Operating Systems Lecture 20 3/3/2006 Shahrooz Feizabadi.
Survey of Real Time Databases Telvis Calhoun CSc 6710.
6. Application mapping 6.1 Problem definition
A Deferrable Scheduling Algorithm for Real-Time Transactions Maintaining Data Freshness Ming Xiong Bell Labs Research, Lucent Technologies Song Han, Kam-yiu.
RTOS task scheduling models
Real-Time Scheduling CS 3204 – Operating Systems Lecture 13 10/3/2006 Shahrooz Feizabadi.
B. RAMAMURTHY 12/25/2015 Realtime System Fundamentals : Scheduling and Priority-based scheduling Pag e 1.
1 Real-Time Scheduling. 2Today Operating System task scheduling –Traditional (non-real-time) scheduling –Real-time scheduling.
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Real time scheduling G.Anuradha Ref:- Stallings. Real time computing Correctness of the system depends not only on the logical result of computation,
Introduction to Embedded Systems Rabie A. Ramadan 5.
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
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.
Introduction to Real-Time Systems
For a good summary, visit:
1.  System Characteristics  Features of Real-Time Systems  Implementing Real-Time Operating Systems  Real-Time CPU Scheduling  An Example: VxWorks5.x.
Undergraduate course on Real-time Systems Linköping University TDDD07 Real-time Systems Lecture 2: Scheduling II Simin Nadjm-Tehrani Real-time Systems.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
Lecture 6: Real-Time Scheduling
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Real-Time Operating Systems RTOS For Embedded systems.
Embedded System Scheduling
REAL-TIME OPERATING SYSTEMS
Unit OS9: Real-Time and Embedded Systems
EEE 6494 Embedded Systems Design
Chapter 2 Scheduling.
Lecture 24: Process Scheduling Examples and for Real-time Systems
Realtime System Fundamentals : Scheduling and Priority-based scheduling B. Ramamurthy cse321-fall2014 9/20/2018.
Realtime Scheduling Algorithms
Realtime System Fundamentals : Scheduling and Priority-based scheduling B. Ramamurthy cse321-fall /27/2018.
CSCI1600: Embedded and Real Time Software
Limited-Preemption Scheduling of Sporadic Tasks Systems
CSCI1600: Embedded and Real Time Software
Real-Time Process Scheduling Concepts, Design and Implementations
Real-Time Process Scheduling Concepts, Design and Implementations
Presentation transcript:

Real Time Scheduling Telvis Calhoun CSc 8320

Outline Introduction Real-Time Scheduling Overview Tasks, Jobs and Schedules Rate/Deadline Monotonic Deferrable Scheduling [Xiong, 2005] Real-Time Synchronization Priority Inheritance/Priority Ceiling Protocols

Introduction Real-Time systems include: Automotive control systems Telecommunications Industrial Process Control Real-Time Systems impose temporal consistency constraints Database must “closely” represent the real-time system in real time. Value of data decreases with time.

Hard Real Time vs. Soft Real Time [McObject, 2006] Critical real-time systems such as nuclear power plants or fly-by-wire airplanes are Hard Real Time Non-critical real time systems where missed transactions only degrade system quality are Soft Real Time Firm real-time systems are similar to soft real-time, except late tasks are discarded. Scheduling algorithm depends on real time system characteristics

Tasks, Jobs and Schedules Aperiodic tasks arrive at the system at arbitrary times. Periodic tasks have predictable arrival, execution times and deadlines. Each task executes a job or performs some function in the real-time system. A real-time schedule assigns tasks to the CPU in order to satisfy the system temporal constraints.

Rate Monotonic Simplest type of real-time scheduling Tasks are periodic Tasks do not communicate with each other Tasks are scheduled according to fixed priorities Calculates the critical instant for each task. Task completion time considering all other higher priority tasks. If a tasks deadline is scheduled at the critical instant, the task always meets its deadline.

Deadline Monotonic Tasks are assigned priority Tasks with shortest deadline get the highest priority. Cannot guarantee a feasible schedule NOT optimal for fixed priority non-pre-emptive scheduling

Deferrable Scheduling for Fixed Priority Systems [Xiong, 2005] Goal: Actively schedule the maximum time between periodic sensor updates to minimize energy consumption. Target System: Process control systems that require continuous sensor updates

DS: Definitions Validity interval: Time that a data item is considered fresh after an update transaction. Response Time: Time required to retrieve data from a sensor. Transaction Deadline: Time when a transaction must be complete

DS: Basic Algorithm 1. Set the update transaction deadline (d) to be the end of the validity interval. 2. The transaction start time is derived backward from the deadline using the known response time (r).

DS: Basic Algorithm cont. 1. Adjust the schedule for high priority preemption. 2. Construct a hyper-period that executes the schedule repeatedly to decrease scheduling overhead. [Xiong, 2005]

Real-Time Synchronization Tasks cooperate and share resources in a pre-emptive, priority-based environment. Tasks may be synchronized using traditional mutexes or semaphores. Potential Issues Priority Inversion – A situation in which a higher priority job is blocked by lower priority jobs for an indefinite period of time [Sha, 1990] Chain Blocking – A situation in which a high priority task is blocked for more than one lock due to more than one lower priority task. [Sha, 1990]

Priority Inversions [Netrino, 2007] Low priority task is using a shared resource. A medium-priority task preempts the lower-priority task. If the higher-priority task is otherwise ready to run, but a medium-priority task is currently running instead, a priority inversion is said to occur.

Priority Inheritance and Priority Ceiling protocols [SHA, 1990] Priority Inheritance Protocol (PIP) Eliminates priority inversion problems The algorithm will increase the priority of a task to the maximum priority of any task waiting for any resource the task has a resource lock on. Priority Ceiling Protocol (PCP) Each resource is assigned a priority ceiling, which is a priority equal to the highest priority of any task which may lock the resource.

Hardware Support for Priority Inheritance [ Akgul, 2003] SoCLC: System-on-a-Chip Lock Cache Reduces on-chip memory traffic, provides A fair and fast lock hand-off, simplifies software, increases The real-time predictability of the system and improves performance. PIP Implemented in an RTOS

References Chow, Randy, et. al.,Distributed Operating Systems & Algorithms, Addison Wesley, March 18, 1997 McObject LLC, “Real-time Databases for Embedded Systems”, Precision Data Management, 2006 M. Xiong, S. Han and K.Y. Lam, ”A Deferrable Scheduling Algorithm for Real-Time Transactions Maintaining Data Freshness,” IEEE Real-Time Systems Symposium, Sha, L.; Rajkumar, R.; Lehoczky, J.P.; Priority inheritance protocols: an approach to real-time synchronization, Computers, IEEE Transactions on Volume 39, Issue 9, Sept Page(s):1175 – 1185 Akgul, B.E.S.; Mooney III, V.J.; Thane, H.; Kuacharoen, P.; Hardware support for priority inheritance, Real-Time Systems Symposium, RTSS th IEEE 2003 Page(s):