EE551 Real-Time Operating Systems Modeling IPC and Constraints Course originally developed by Maj Ron Smith.

Slides:



Advertisements
Similar presentations
Solve the system of inequalities by graphing. x ≤ – 2 y > 3
Advertisements

Multiprocessor Scheduling
Slide 1 Insert your own content. Slide 2 Insert your own content.
Combining Like Terms. Only combine terms that are exactly the same!! Whats the same mean? –If numbers have a variable, then you can combine only ones.
1 Real-Time Queueing Theory Presented by: John Lehoczky Carnegie Mellon SAMSI Workshop Congestion Control and Heavy Traffic.
0 - 0.
SADC Course in Statistics Review of ideas of general regression models (Session 15)
Micro Focus Research 1 As far as youre aware, how does your organization plan to drive business growth over the next three years? (Respondents' first choices)
EE5900 Advanced Embedded System For Smart Infrastructure
Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment (then and now) EECS 750 – Spring 2006 Presented by: Shane Santner, TJ Staley,
REAL TIME SYSTEM Scheduling.
CprE 458/558: Real-Time Systems
Proportional and Non-Proportional Relationships in Tables
Columbus State Community College
C H 3 SEMESTER FINAL REVIEW. #1. F IND THE SOLUTION TO THE SYSTEM S.(3, 0) B.(2, 3) O. (.5, 7.5)
CMPT 401 Summer 2007 Dr. Alexandra Fedorova Lecture III: OS Support.
EEE 435 Principles of Operating Systems Structure of I/O Software Pt II (Modern Operating Systems & 5.3.4)
11 = This is the fact family. You say: 8+3=11 and 3+8=11
Solve an equation by multiplying by a reciprocal
Unit 14 Assessment Objective Three. Unit 14 Assessment Objective Three.
Overload Scheduling in Real-Time Systems
A Sample RTOS Presentation 4 Group A4: Sean Hudson, Manasi Kapadia Syeda Taib.
LP EXAMPLES: ANOTHER MAX AND A MIN Dr. Ron Lembke.
1 Advanced Embedded Systems, BAE 5030 Presentation Topic: Rate Monotonic Analysis By Aswin Ramachandran
From HRT-HOOD to ADA95 Real-Time Systems Lecture 5 Copyright, 2001 © Adam Czajka.
Specific Measurable Attainable Realistic Timely SMART Goals Are:
EEE 243B Applied Computer Programming Timing considerations.
Embedded and Real Time Systems Lecture #4 David Andrews
EE551 Real-Time Operating Systems Selecting an RTOS Assignment 1 Discussion Course originally developed by Maj Ron Smith.
HRT-HOOD Real-Time Systems Lecture 4 Copyright, 2002 © Adam Czajka.
Task Scheduling By Dr. Amin Danial Asham.
Real Time Operating Systems Scheduling & Schedulers Course originally developed by Maj Ron Smith 8-Oct-15 Dr. Alain Beaulieu Scheduling & Schedulers- 7.
Probabilistic Preemption Control using Frequency Scaling for Sporadic Real-time Tasks Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat.
Real Time Operating Systems Introduction to Real-Time Systems Course originally developed by Maj Ron Smith 17-Oct-151Dr. Alain Beaulieu.
Real Time Operating Systems Schedulability - Part 3 Course originally developed by Maj Ron Smith 10/24/2015Dr Alain Beaulieu1.
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 Operating Systems
EE551 Real-Time Operating Systems Introduction & Course Outline Course originally developed by Maj Ron Smith.
Real-Time Scheduling CS 3204 – Operating Systems Lecture 20 3/3/2006 Shahrooz Feizabadi.
Real Time Operating Systems Introduction to Real-Time Operating Systems (Part I) Course originally developed by Maj Ron Smith.
Academic Affairs. Dr. Karen Doenges Associate Vice President for Academic Administration.
Real Time Operating Systems Mutual Exclusion, Synchronization & Intertask Communication Course originally developed by Maj Ron Smith.
SE-3910 Real-time Systems Week 5, Class 2 – Lab turn-in page is up! – Use interrupts in a Linux/C environment – Scheduling – Watchdog follow-up Watchdog.
CSE 522 Real-Time Scheduling (2)
Real Time Operating Systems Schedulability - Part 2 Course originally developed by Maj Ron Smith 12/20/2015Dr Alain Beaulieu1.
Real-Time Scheduling CS 3204 – Operating Systems Lecture 13 10/3/2006 Shahrooz Feizabadi.
Sandtids systemer 2.modul el. Henriks 1. forsøg m. Power Point.
Mok & friends. Resource partition for real- time systems (RTAS 2001)
Slide 1 of 18 Toolkit for learner representatives Training for Learner Representatives in the Further Education and Training System.
SMART Objectives What are SMART Objectives? Why developping SMART Objectives? Examples of SMART Objectives.
Reducing a Set Covering Matrix. S I T E S Cost Areas
Scheduling in Real-Time Systems
Deadline Scheduling and Heavy tail distributionS
Lecture 4 Schedulability and Tasks
فصل نهم از کتاب طراحی آموزشی تألیف :آر.ام گانیه
3-3 Optimization with Linear Programming
Real Time Scheduling Mrs. K.M. Sanghavi.
Processes and Threads Part III
مباني کامپيوتر و برنامه نويسي
Machine Learning Course.
NET 424: REAL-TIME SYSTEMS (Practical Part)
NET 424: REAL-TIME SYSTEMS (Practical Part)
Department of Mathematics (A
Algorithms Lecture # 01 Dr. Sohail Aslam.
Section Linear Programming
1.6 Linear Programming Pg. 30.
The End Of The Line For Static Cyclic Scheduling?
S M A R T Smart Objectives Goals need to be Achievable
Cities and their Mobility Priorities
Presentation transcript:

EE551 Real-Time Operating Systems Modeling IPC and Constraints Course originally developed by Maj Ron Smith

14-Jan-15 Dr. Alain Beaulieu 2 So far…  We have covered RMA  Priority based on period  Utilisation bound  What are the limitations of RMA?  We have covered DMPO  Asynchronous tasks can be modeled using minimum inter- arrival times and a deadline << pseudo-period  We then give a priority to each task based either on periodic or absolute deadline  Response time analysis that includes interference and blocking  Priority Inversion Problem  Priority Inheritance and Ceiling Protocols

14-Jan-15 Dr. Alain Beaulieu 3 So far…  When we look at schedulability analysis such as response time analysis (time demand analysis)  The purpose is to see if we can obtain a valid and feasible schedule…

14-Jan-15 Dr. Alain Beaulieu 4 So far… (recall)  valid schedules 1.at any time one processor is assigned at most one job 2. at any time each job is assigned at most one processor* 3.no job is scheduled before its release time 4.the total amount of processor time allocated is equal to each jobs maximum execution time (or actual)** 5.all precedence and resource constraints are met a  feasible schedule is one in which all jobs meet their timing constraints (usually deadlines) * implies no parallel processing at job level ** depends on algorithm

14-Jan-15 Dr. Alain Beaulieu 5 So far…  Lets say that we have found through our task model that every job (periodic, and pseudo- periodic) is schedulable  What is the next step?

14-Jan-15 Dr. Alain Beaulieu 6 So far…  We take an RTOS and implement our priority- driven scheme  Select an RTOS such as µC/OS  Priority based, preemptive kernel  In the case of µC/OS priorities are static, but…  We implement our mutual exclusion constraints that we have modeled  By using mutexes we ensure that we have resolved transitive blocking and deadlocks problem (or have we?)  Our precedence constraints were used to derive our effective release times and relative deadlines

14-Jan-15 Dr. Alain Beaulieu 7 So far… recall: The life and times: On a graph T i Release Spec T i Effective Release Time T i Actual Response Time T i Deadline Spec T i Effective Deadline { Due to ? {

14-Jan-15 Dr. Alain Beaulieu 8 So far…  If our modeling of  Maximum execution time (how?)  Timing constraints [ Ti = (  i, pi, ei, Di) ]  Critical section identification  Precedence constraints  Identification of IPC and Synchronization req  Calculation of effective timing constraints  Approximation of asynchronous pseudo-periodic tasks Holds, and we have chosen an RTOS with the mechanisms that implements our policy then we have indeed a valid and feasible system

14-Jan-15 Dr. Alain Beaulieu 9 So far…  Our schedulability analysis for asynchronous events using DMPO is based on two assumptions:  We know the minimum inter-arrival time  We can specify a deadline  Asynchronous events can be sporadic or aperiodic  We know more about sporadic events than aperiodic events

14-Jan-15 Dr. Alain Beaulieu 10 So far…  We have seen some implementation options to deal with aperiodic events  Background (idle) – not optimal  Interrupt Driven – not correct  Slack Stealing – works but is complicated and compute intensive  Polling Servers – works but requires queue to have backlog  Bandwidth Preserving Servers  Deferred  Sporadic  All are implementable with most RTOS it is a question of analysis and design

14-Jan-15 Dr. Alain Beaulieu 11 Pre-Run-Time Scheduling  There is another school of thought that states that we can ensure that a system has a feasible schedule if we pre-set the schedule before run-time

14-Jan-15 Dr. Alain Beaulieu 12 Pre-Run-Time Scheduling  Again using the our hard-real-time model for tasks, we could construct a deterministic schedule before run-time  This requires algorithms that can take timing constraints  Several algorithms exist to produce schedules

14-Jan-15 Dr. Alain Beaulieu 13 Pre-Run-Time Scheduling  Some algorithms are compute intensive but resolvable in O(n 2 )  Earliest Deadline First  Least Laxity first  As in the case of priority scheduling:  First calculate the effective release time and deadline of each task based on precedence  Find the least common denominator for all periodic tasks and define the major cycle (make asynch tasks pseudo-periodic)  For each task in the system create a set of jobs to be executed in the major cycle (number of releases)  Jobs run to completion (more to come on this)  Schedule according to the policy (create a Gantt chart) and verify that all the deadlines are met

14-Jan-15 Dr. Alain Beaulieu 14 Pre-Run-Time Scheduling  After the Gantt chart is obtained, use it to order the tasks on the system:  Clock Driven Scheduling through an RTOS  Use the sleep (delay) function to implement the schedule  May have to keep the delays for the major cycle in a multidimensional array  If jobs run to completion do we need mutual exclusion?  In the case of parallel processors with shared resources. We can include the mutual exclusion constraints in the algorithms so that two tasks are mutually exclusive in time  We must ensure that Interrupt Service Routines have no Mutual exclusions – What if they do???

14-Jan-15 Dr. Alain Beaulieu 15 Pre-Run-Time Scheduling  What is the problem with PRT scheduling (calendar scheduling)?  Is there any advantage of using PRT scheduling?

14-Jan-15 Dr. Alain Beaulieu 16 Pre-Run-Time Scheduling  Some research was done in the past on optimal schedules  do not confuse with an optimal algorithm that always finds a solution  An optimal schedule is one that is as short as can be  The problem is to find the shortest possible schedule given a set of task without missing deadlines

14-Jan-15 Dr. Alain Beaulieu 17 Pre-Run-Time Optimal Schedule  Calculating the shortest possible schedule is an NP-Hard Problem  The computational complexity is one that is also called wicked problem  Such problems have been described in the traveling salesman problem and the backpack packing problem  NP-Hard problem solutions are not verifiable in polynomial time  So you have a solution but you are not sure if it is the optimal solution

14-Jan-15 Dr. Alain Beaulieu 18 Pre-Run-Time Optimal Schedule  Calculating the shortest possible schedule that meets timing constraints is also an NP- Hard Problem  However verifying that the timing constraints are met is an NP-Complete problem, it can be verified in polynomial time  However, you will not be able to know if it was the shortest possible schedule