Priority-Driven Scheduling of Periodic Tasks. Why Focus on Uniprocessor Scheduling?

Size: px
Start display at page:

Download "Priority-Driven Scheduling of Periodic Tasks. Why Focus on Uniprocessor Scheduling?"

Transcription

1 Priority-Driven Scheduling of Periodic asks Priority-driven vs. clock-driven scheduling: clock-driven: cyclic schedule executive processor tasks a priori! priority-driven: priority queue processor tasks Assumptions for now: tasks are periodic jobs are ready as soon as they are released preemption is allowed tasks are independent no aperiodic or sporadic tasks We will later: integrate aperiodic and sporadic tasks integrate resources etc. Why Focus on Uniprocessor Scheduling? Dynamic Multiprocessor Scheduling : tasks Static Multiprocessor Scheduling : tasks task assignment priority queue partn partn2 partn3 partn4 processors local priority queues Poor worst-case performance of priority-driven algorithms in dynamic environments. Difficulty in validating timing constraints.

2 Static-Priority vs. Dynamic Priority Static-Priority: "All jobs in task have same priority. Example: Rate-Monotonic: " " he shorter the period, the higher the priority. 2 5, 3, 3,, Dynamic-Priority: "May assign different priorities to individual jobs. Example: Earliest-Deadline-First: " he nearer the absolute deadline, the higher the priority. here we break tie 2 is not preempted Example Algorithms Static-Priority: Rate-Monotonic RM: he shorter the period, the higher the priority. [Liu+Layland 73] Deadline-Monotonic DM: he shorter the relative deadline, the higher the priority. [Leung+Whitehead 82] For arbitrary relative deadlines, DM outperforms RM. Dynamic-Priority: EDF: Earliest-Deadline-First. LS: Least-Slack-ime-First. FIFO/LIFO etc. 2

3 Considerations about Priority Scheduling Question: What makes for a good scheduling algorithm? Def: [Schedulable Utilization] Every set of periodic tasks with total utilization less or equal than the schedulable utilization of an algorithm can be feasibly scheduled by that algorithm. wo observations:. he higher the schedulable utilization, the better the algorithm. 2. Schedulable utilization is always less or equal.0! Schedulable Utilization of FIFO Proof: heorem: U FIFO 0 "Given any utilization level ε > 0, we can find a task set, with utilization ε, that may not be feasibly scheduled according to FIFO. Example task set: p e e 2 p 2 3

4 Optimality of EDF for Periodic Systems heorem: EDF can feasibly schedule a system of independent preemptable tasks with relative deadlines equal to their periods iff their total utilization is less or equal. Proof: "only-if : "obvious "if : "show that if EDF fails to find feasible " " "schedule, then the total utilization must " " "exceed. Assumptions: At some time t, Job J i,c of ask i misses its deadline. WLOG: if more than one job have deadline t, break tie for J i,c. Optimality of EDF cont Case : "Current period of every task begins at or after r i,c. Case 2: "Current period of some task may start before r i,c. Case : 2 current period i r i,c r i,c +p i Current jobs other than J i,c do not execute before time t. J i,c misses deadline! 4

5 Optimality of EDF cont 2 Case 2: "Some current periods start before r i,c. Notation: " " : "Set of all tasks. " : "Set of tasks where current period starts before r i,c. "- : "Set of tasks where current period start at or after r i,c. φ 2 i r i,c r i,c +p i t l : "Last point in time before t when some current job in is executed. No current job is executed immediately after time t l. Why? ". All jobs in are done. " "2. Jobs in - not yet ready. t l t Case 2 cont What about assumption that processor never idle? forget this part same proof holds for this part t l Q.E.D. 5

6 What about Static Priority? Static-Priority is not optimal! Example: 2 2, 5,, 2. 5, So: Why bother with static-priority? simplicity predictability J,3 must have lower priority than J 2,! Unpredictability of EDF Scheduling Over-running jobs in EDF hold on to their priorities Example,2 2,4 3 2,8 Normal Operation,2 2,4 3 2,8 3 over-runs by a bit more than one time unit 6

7 Unpredictability of EDF Scheduling II,2 2,4 3 2,8 3 over-runs for a bit longer...,2 2,4 3 2,8 he same situation using Rate-Monotonic Scheduling: high-priority tasks are protected Schedulability Bounds for Static-Priority Definition: A set of tasks is simply periodic if, for every pair of tasks, one period is multiple of another period. heorem: A system of simply periodic, independent, preemptable tasks whose relative deadlines are equal to their periods is schedulable according to RM iff their total utilization does not exceed 00%. Proof: "Assume i misses deadline at time t. "t is integer multiple of p i. "t is also integer multiple of p k, p k < p i. Utilization due to i highest-priority tasks ""> total time to complete jobs with deadline t : "If job of i misses deadline, then U i > U >. Q.E.D. 7

8 Schedulable Utilization of asks with D i p i with Rate-Monotonic Algorithm heorem: [Liu&Layland 73] A system of n independent, preemptable periodic tasks with D i p i can be feasibly scheduled by the RM algorithm if its total utilization U is less or equal to U RM n n2 /n -. Why not.0? Counterexample: 2 2, 5,, 2.5, 2 5 misses deadline! 2 Proof Outline: First, show that theorem is correct for special case where longest period p n <2p p shortest period. We will remove this restriction later. Proof of Liu&Layland General idea: "Find the most-difficult-to-schedule system of n "tasks among all difficult-to-schedule systems of "n tasks. Difficult-to-schedule : Fully utilizes processor for some time "interval. Any increase in execution time would "make system unschedulable. Most-difficult-to-schedule : system with lowest utilization among "difficult-to-schedule systems. Each of the following 4 steps brings us closer to this system. 8

9 Proof of Liu&Layland cont Step : Identify phases of tasks in most-difficult-to-schedule system. System must be in-phase. talk about this later Proof of Liu&Layland cont Step 2: Choose relationship between periods and execution times. Hypothesize that parameters of MDS system are thus related. Confine attention to first period of each task. asks keep processor busy until end of period p n. " " p 2 3 n- n p 2 p 3... p n- p n 9

10 Proof Liu&Layland cont Proof Liu&Layland cont Deviate the other way: " "Reduce execution time of some high-priority "tasks by ε: " " "Must increase execution time of some lower-" "priority task: 0

11 Proof Liu&Layland cont Define Find least upper bound on utilization: Set first derivative of U with respect to each of g i s to zero: for j,2,3,,n- Q.E.D. What about Period Ratios > 2? We show: ". "Every D--S task system with period ratio > 2 " " "can be transformed into D--S task system " " "with"period ratio < 2. " "2. "he total utilization of the task set decreases " " "during the transformation step. We can therefore confine search to systems with period ratio < 2. ransformation -> : Compare utilizations: Q.E.D.

12 hat Little Question about the Phasing... Definition: [Critical Instant] [Liu&Layland] If the maximum response time of all jobs in i is less than D, i then the job of i released in the critical instant has the maximum response time. [Baker] If the response time of some jobs in i exceeds D, i then the response time of the job released during the critical instant exceeds D. i heorem: In a fixed-priority system where every job completes before the next job in the same task is released, a critical instant of a task i occurs when one of its jobs J i,c is released at the same time with a job of every higher-priority task. Proof informal Assume: " "heorem holds for k < i. WLOG: " " k < i : φ k 0 ", and we look at J i, : Observation:" "he completion time of higher-priority jobs is " " "independent of the release time of J i,. herefore: " "he sooner J i, is released, the longer it has " " "to wait until it is completed. Q.E.D. 2

13 Proof 2 less informal WLOG: "min{φ k k,, i} 0 Observation:"Need only consider time processor is busy executing jobs in, 2,, i- before φ i. If processor idle or executes lower-priority jobs, ignore that portion of schedule and redefine the φ k s. " Let R i, be the response time for J i,. During [φ k, φ i +R i, ] a total of R i, + φ i - φ k / p k jobs of k become ready for execution. so time-demand analysis: and: Optimal Static-Priority Scheduling heorem: If a task set can be feasibly scheduled by some static-priority algorithm, it can be feasibly scheduled by DM. [J.Y.-.Leung, J. Whitehead, On the complexity of Fixed-Priority Scheduling of Periodic, Real-ime asks, Performance Evaluation 2, 982.] " Proof: Assume: "A feasible schedule S exists for a task set. he " "priority assignment is, 2,, n. " "For some k, we have D k > D k+. We show that we can swap the priority of k and k+ and the resulting schedule call it Sk remains feasible. 3

14 Optimality of DM: Proof II So, you want to swap the priority of k and k+?! Observation: Response time for each task other than k and k+ is the same in S and Sk. Observation: Response time of k+ in Sk must be smaller than in S, since k+ is not delayed by k in Sk. hus: Must prove that deadline of first invocation of k is also met in Sk. Critical Instant Let x be the amount of work done in S for all tasks in,..., k- during interval [0, d k+ ]. Note: Amount of work done in S and Sk for tasks in,..., k- is at most x during any interval of length d k+. We must have x + e k + e k+ d k+ Optimality of DM: ProofIII Observation: Number of invocations of k+ in Schedule Sk during interval [0, d k /d k+ *d k+ ] is at most d k /d k+. Observation: Amount of work for all tasks in,..., k- in the interval [0, d k /d k+ *d k+ ] is at most d k/d k+ *x. he following condition is sufficient ot guarantee that the deadline of the first request of k is met in Sk: d k /d k+ * x+e k+ + e k d k /d k+ * d k+ his, however, follows from inequality on previous page. qed 4

15 Why Utilization-Based ests? If no parameter ever varies, we could use simulation. But: Execution times may be smaller than e i Inter-release times may vary. ests are still robust. Useful as methodology to define execution times or periods. ime-demand Analysis Compute total demand on processor time of job released at a critical instant and by higher-priority tasks as function of time from the critical instant. Check whether demand can be met before deadline. Determine whether i is schedulable: Focus on a job in i, suppose release time is critical instant of i : " "w i t: "Processor-time demand of this job and all higher- " " "priority jobs released in t 0, t: his job in i meets its deadline if, for some " " " "t D i p i : w i t t If this does not hold, job cannot meet its deadline, and system of tasks is not schedulable by given static-priority algorithm. 5

16 6 Example wt t w t 5. 0, 8 25., 7 5., 5, Example wt t w t w 2 t 5. 0, 8 25., 7 5., 5,

17 Example , 5, 7, 8, wt w 3 t w 2 t w t t Example , 5, 7, 8, wt w 4 t w 3 t w 2 t w t t 7

18 Practical Factors Non-Preemptable Portions * Self-Suspension of Jobs * Context Switches * Insufficient Priority Resolutions Limited Number of Distinct Priorities ime-driven Implementation of Scheduler ick Scheduling Varying Priorities in Fixed-Priority Systems Practical Factors I: Non-Preemptability Jobs, or portions thereof, may be non-preemptable. Definition: [non-preemptable portion] Let s denote by ρ I the largest non-preemptable portion of jobs in i. Definition: A job is said to be blocked if it is prevented from executing by lower-priority job. priority-inversion When testing schedulability of a task i, we must consider higher-priority tasks and non-preemptable portions of lower-priority tasks 8

19 Analysis with Non-Preemptable Portions Definition: he blocking time b i of ask i is the longest time by which any job of i can be blocked by lower-priority jobs: ime-demand function with blocking: Utilization bounds with blocking: " "test one task at a time: Non-Preemptability: Example 2 3 4, 5, 9,. 5 2 wt w 3 t time-demand function w 2 t w t 3 non-preemptible i.e. ρ t 9

20 Practical Factors II: Self-Suspension Definition: Self-suspension of a job occurs when the job waits for an external operation to complete RPC, I/O operation. Assumption: "We know the maximum length of external "operation; i.e., " "the duration of self-suspension is bounded. Example: φ 0,p 4,e 2.5 self-suspension! 2 φ 2 3,p 2 7,e Analysis: "b i SS : Blocking time of i due to self-suspension. b SS i max. self-suspension time of i + i k mine k, max. self-suspension time of k Self-Suspension with Non-Preemptable Portions Whenever job self-suspends, it loses the processor. When tries to re-acquire processor, it may be blocked by tasks in non-preemptable portions. Analysis: "b NP : i "Blocking time due to non-preemptable " " " "portions " "K : i "Max. number of self-suspensions " " "b : i "otal blocking time " " "b i b SS i + K i + b NP i 20

21 Practical Factors III: Context Switches Definition: [Job-level fixed priority assignment] In a job-level fixed priority assignment, each job is given a fixed priority for its entire execution. Case I: No self-suspension In a job-level fixed-priority system, each job preempts at most one other job. Each job therefore causes at most two context switches herefore: Add the context switch time twice to the execution time of job: "e i e i + 2 CS Case II: Self-suspensions can occur Each job suffers two more context switches each time it selfsuspends herefore: Add more context switch times appropriately: " " " "e i e i + 2 K i + CS 2

ELC 4438: Embedded System Design Real-Time Scheduling

ELC 4438: Embedded System Design Real-Time Scheduling ELC 4438: Embedded System Design Real-Time Scheduling Liang Dong Electrical and Computer Engineering Baylor University Scheduler and Schedule Jobs are scheduled and allocated resources according to the

More information

Lecture 6: Scheduling. Michael O Boyle Embedded Software

Lecture 6: Scheduling. Michael O Boyle Embedded Software Lecture 6: Scheduling Michael O Boyle Embedded Software Overview Definitions of real time scheduling Classification Aperiodic no dependence No preemption EDD Preemption EDF Least Laxity Periodic Rate Monotonic

More information

Lecture Note #4: Task Scheduling (1) EECS 571 Principles of Real-Time Embedded Systems. Kang G. Shin EECS Department University of Michigan

Lecture Note #4: Task Scheduling (1) EECS 571 Principles of Real-Time Embedded Systems. Kang G. Shin EECS Department University of Michigan Lecture Note #4: Task Scheduling (1) EECS 571 Principles of Real-Time Embedded Systems Kang G. Shin EECS Department University of Michigan 1 Reading Assignment Liu and Layland s paper Chapter 3 of the

More information

Clock-Driven Scheduling

Clock-Driven Scheduling NOTATIONS AND ASSUMPTIONS: UNIT-2 Clock-Driven Scheduling The clock-driven approach to scheduling is applicable only when the system is by and large deterministic, except for a few aperiodic and sporadic

More information

Real-Time and Embedded Systems (M) Lecture 4

Real-Time and Embedded Systems (M) Lecture 4 Clock-Driven Scheduling Real-Time and Embedded Systems (M) Lecture 4 Lecture Outline Assumptions and notation for clock-driven scheduling Handling periodic jobs Static, clock-driven schedules and the cyclic

More information

ENGG4420 CHAPTER 4 LECTURE 3 GENERALIZED TASK SCHEDULER

ENGG4420 CHAPTER 4 LECTURE 3 GENERALIZED TASK SCHEDULER CHAPTER 4 By Radu Muresan University of Guelph Page 1 ENGG4420 CHAPTER 4 LECTURE 3 November 14 12 9:44 AM GENERALIZED TASK SCHEDULER In practical applications we need to be able to schedule a mixture of

More information

Lab: Response Time Analysis using FpsCalc Course: Real-Time Systems Period: Autumn 2015

Lab: Response Time Analysis using FpsCalc Course: Real-Time Systems Period: Autumn 2015 Lab: Response Time Analysis using FpsCalc Course: Real-Time Systems Period: Autumn 2015 Lab Assistant name: Jakaria Abdullah email: jakaria.abdullah@it.uu.se room: 1235 Introduction The purpose of this

More information

Clock-Driven Scheduling

Clock-Driven Scheduling Integre Technical Publishing Co., Inc. Liu January 13, 2000 8:49 a.m. chap5 page 85 C H A P T E R 5 Clock-Driven Scheduling The previous chapter gave a skeletal description of clock-driven scheduling.

More information

GENERALIZED TASK SCHEDULER

GENERALIZED TASK SCHEDULER CHAPTER 4 By Radu Muresan University of Guelph Page 1 ENGG4420 CHAPTER 4 LECTURE 4 November 12 09 2:49 PM GENERALIZED TASK SCHEDULER In practical applications we need to be able to schedule a mixture of

More information

3. Scheduling issues. Common approaches /2. Common approaches /1. Common approaches / /17 UniPD / T. Vardanega 06/03/2017

3. Scheduling issues. Common approaches /2. Common approaches /1. Common approaches / /17 UniPD / T. Vardanega 06/03/2017 Common approaches /2 3. Scheduling issues Weighted round-robin scheduling With basic round-robin All ready jobs are placed in a FIFO queue The job at head of queue is allowed to execute for one time slice

More information

2. Scheduling issues. Common approaches /2. Common approaches /1. Common approaches / /18 UniPD - T. Vardanega 14/03/2018

2. Scheduling issues. Common approaches /2. Common approaches /1. Common approaches / /18 UniPD - T. Vardanega 14/03/2018 Common approaches /2 2. Scheduling issues Weighted round-robin scheduling With basic round-robin (which requires preemption) All ready jobs are placed in a FIFO queue CPU time quantized, that is, allotted

More information

CHAPTER 4 CONTENT October :10 PM

CHAPTER 4 CONTENT October :10 PM CHAPTER 4 By Radu Muresan University of Guelph Page 1 CHAPTER 4 CONTENT October 30 09 4:10 PM UNIPROCESSOR SCHEDULING Real Time Task Model Concepts Types of Real Time Tasks and Their Characteristics Task

More information

DEADLINE MONOTONIC ALGORITHM (DMA)

DEADLINE MONOTONIC ALGORITHM (DMA) CHAPTER 4 By Radu Muresan University of Guelph Page 1 ENGG4420 CHAPTER 4 LECTURE 5 November 19 12 12:07 PM DEADLINE MONOTONIC ALGORITHM (DMA) RMA no longer remains an optimal scheduling algorithm for periodic

More information

Limited-preemptive Earliest Deadline First Scheduling of Real-time Tasks on Multiprocessors

Limited-preemptive Earliest Deadline First Scheduling of Real-time Tasks on Multiprocessors Limited-preemptive Earliest Deadline First Scheduling of Real-time Tasks on Multiprocessors Mälardalen University School of Innovation, Design and Technology Kaiqian Zhu Master Thesis 5/27/15 Examiner:

More information

Real Time Scheduling. Real Time Scheduling. Real-Time Scheduling. Scheduling

Real Time Scheduling. Real Time Scheduling. Real-Time Scheduling. Scheduling Real Time Scheduling Process control plants, robotics, air traffic control, telecommunications Real Time Computing is defined as:- a type of computing where the correctness of the system depends not only

More information

Tasks or processes attempt to control or react to external events occuring in real time RT processes must be able to keep up events

Tasks or processes attempt to control or react to external events occuring in real time RT processes must be able to keep up events RTOS Characteristics Time constraints Shdli Scheduling C. Brandolese, W. Fornaciari Real-Time Systems Definition of real-time system A real-time system is one in which h the correctness of the computation

More information

Scheduling theory, part 1

Scheduling theory, part 1 Scheduling theory, part 1 Aperiodic jobs Pontus Ekberg Uppsala University 2017-09-01 Real-time systems? Not necessarily fast but always predictable 2 Real-time systems: theory & practice Practice Building

More information

Periodic task scheduling

Periodic task scheduling Periodic task scheduling Optimality of rate monotonic scheduling (among static priority policies) Utilization bound for EDF Optimality of EDF (among dynamic priority policies) Tick-driven scheduling (OS

More information

Introduction to Real-Time Systems. Note: Slides are adopted from Lui Sha and Marco Caccamo

Introduction to Real-Time Systems. Note: Slides are adopted from Lui Sha and Marco Caccamo Introduction to Real-Time Systems Note: Slides are adopted from Lui Sha and Marco Caccamo 1 Overview Today: this lecture introduces real-time scheduling theory To learn more on real-time scheduling terminology:

More information

Mode Change Protocols for Priority-Driven Preemptive Scheduling

Mode Change Protocols for Priority-Driven Preemptive Scheduling Technical Report CMU/SEI-88-TR-34 ESD-TR-88-035 Mode Change Protocols for Priority-Driven Preemptive Scheduling Lui Sha Ragunathan Rajkumar John Lehoczky Krithi Ramamritham November 1988 Technical Report

More information

ure Outline edulability tests for fixed-priority systems ctical factors nues from material in lecturee 5, with the same assumption

ure Outline edulability tests for fixed-priority systems ctical factors nues from material in lecturee 5, with the same assumption riority-driven Scheduling f Periodic Ta asks (2) Embedded Softw ware Lectu ure 6 Real-Time ure Outline edulability tests for fixed-priority systems onditions for optimality and schedulability eneral schedulability

More information

Dual Priority Scheduling: A Means of Providing Flexibility in Hard Real-time Systems.

Dual Priority Scheduling: A Means of Providing Flexibility in Hard Real-time Systems. Dual Priority Scheduling: A Means of Providing Flexibility in Hard Real-time Systems Robert Davis Real-Time Systems Research Group, Department of Computer Science, University of York, Y1 5DD, England Email:

More information

Scheduling issues in mixedcriticality

Scheduling issues in mixedcriticality Scheduling issues in mixedcriticality systems Sanjoy Baruah The University of North Carolina at Chapel Hill Scheduling issues in mixedcriticality systems Integrated environments: Multiple systems on a

More information

Real-Time Scheduling Theory and Ada

Real-Time Scheduling Theory and Ada Technical Report CMU/SEI-88-TR-033 ESD-TR-88-034 Real-Time Scheduling Theory and Ada Lui Sha John B. Goodenough November 1988 Technical Report CMU/SEI-88-TR-033 ESD-TR-88-034 November 1988 Real-Time Scheduling

More information

Motivation. Types of Scheduling

Motivation. Types of Scheduling Motivation 5.1 Scheduling defines the strategies used to allocate the processor. Successful scheduling tries to meet particular objectives such as fast response time, high throughput and high process efficiency.

More information

CS510 Operating System Foundations. Jonathan Walpole

CS510 Operating System Foundations. Jonathan Walpole CS510 Operating System Foundations Jonathan Walpole Project 3 Part 1: The Sleeping Barber problem - Use semaphores and mutex variables for thread synchronization - You decide how to test your code!! We

More information

Energy Efficient Fixed-Priority Scheduling for Real-Time Systems on Variable Voltage Processors

Energy Efficient Fixed-Priority Scheduling for Real-Time Systems on Variable Voltage Processors Energy Efficient Fixed-Priority Scheduling for Real-Time Systems on Variable Voltage Processors Gang Quan Xiaobo (Sharon) Hu Department of Computer Science & Engineering University of Notre Dame Notre

More information

Project 2 solution code

Project 2 solution code Project 2 solution code Project 2 solution code in files for project 3: Mutex solution in Synch.c But this code has several flaws! If you copied this, we will know! Producer/Consumer and Dining Philosophers

More information

Lecture 11: Scheduling

Lecture 11: Scheduling Design & Co-design of Embedded Systems Lecture 11: Scheduling Sharif University of Technology Computer Engineering Dept. Winter-Spring 2008 Mehdi Modarressi Processes and operating systems Dynamic vs.

More information

Real-Time Systems. Modeling Real-Time Systems

Real-Time Systems. Modeling Real-Time Systems Real-Time Systems Modeling Real-Time Systems Hermann Härtig WS 2013/14 Models purpose of models describe: certain properties derive: knowledge about (same or other) properties (using tools) neglect: details

More information

Exploiting Dynamic Workload Variation in Low Energy Preemptive Task Scheduling

Exploiting Dynamic Workload Variation in Low Energy Preemptive Task Scheduling Exploiting Dynamic Workload Variation in Low Energy Preemptive Scheduling Xiaobo Sharon Department of Electrical and Electronic Engineering Department of Computer Science and Engineering Hong Kong University

More information

Limited Preemptive Real-time Scheduling on Multiprocessors. Abhilash Thekkilakattil

Limited Preemptive Real-time Scheduling on Multiprocessors. Abhilash Thekkilakattil Limited Preemptive Real-time Scheduling on Multiprocessors Abhilash Thekkilakattil Mälardalen University- Sweden Västerås ( Westeros ) Stockholm Västerås Kerala, India Why am I here? 5 Why am I here? 6

More information

CPU SCHEDULING. Scheduling Objectives. Outline. Basic Concepts. Enforcement of fairness in allocating resources to processes

CPU SCHEDULING. Scheduling Objectives. Outline. Basic Concepts. Enforcement of fairness in allocating resources to processes Scheduling Objectives CPU SCHEDULING Enforcement of fairness in allocating resources to processes Enforcement of priorities Make best use of available system resources Give preference to processes holding

More information

CSE 451: Operating Systems Spring Module 8 Scheduling

CSE 451: Operating Systems Spring Module 8 Scheduling CSE 451: Operating Systems Spring 2017 Module 8 Scheduling John Zahorjan Scheduling In discussing processes and threads, we talked about context switching an interrupt occurs (device completion, timer

More information

CPU Scheduling. Chapter 9

CPU Scheduling. Chapter 9 CPU Scheduling 1 Chapter 9 2 CPU Scheduling We concentrate on the problem of scheduling the usage of a single processor among all the existing processes in the system The goal is to achieve High processor

More information

Real time scheduling for embedded systems

Real time scheduling for embedded systems Real time scheduling for embedded systems Introduction In many critical systems, tasks must compute a value within a given time bound The correctness of the system relies on these contraints Introduction

More information

Intro to O/S Scheduling. Intro to O/S Scheduling (continued)

Intro to O/S Scheduling. Intro to O/S Scheduling (continued) Intro to O/S Scheduling 1. Intro to O/S Scheduling 2. What is Scheduling? 3. Computer Systems Scheduling 4. O/S Scheduling Categories 5. O/S Scheduling and Process State 6. O/S Scheduling Layers 7. Scheduling

More information

New Results for Lazy Bureaucrat Scheduling Problem. fa Sharif University of Technology. Oct. 10, 2001.

New Results for Lazy Bureaucrat Scheduling Problem. fa  Sharif University of Technology. Oct. 10, 2001. New Results for Lazy Bureaucrat Scheduling Problem Arash Farzan Mohammad Ghodsi fa farzan@ce., ghodsi@gsharif.edu Computer Engineering Department Sharif University of Technology Oct. 10, 2001 Abstract

More information

MAX PLANCK INSTITUTE FOR SOFTWARE SYSTEMS. Max Planck Institute for Software Systems (MPI-SWS) Germany

MAX PLANCK INSTITUTE FOR SOFTWARE SYSTEMS. Max Planck Institute for Software Systems (MPI-SWS) Germany MAX PLANCK INSTITUTE FOR SOFTWARE SYSTEMS Mitra Nasri* Bjӧrn B. Brandenburg Max Planck Institute for Software Systems (MPI-SWS) Germany RTSS, December 2017 An exact and sustainable schedulability analysis

More information

Preference-Oriented Fixed-Priority Scheduling for Real-Time Systems

Preference-Oriented Fixed-Priority Scheduling for Real-Time Systems Preference-Oriented Fixed-Priority Scheduling for Real-Time Systems Rehana Begam, Dakai Zhu University of Texas at San Antonio San Antonio, TX, 7829 rehan.sheta@gmail.com, dakai.zhu@utsa.edu Hakan Aydin

More information

Uniprocessor Scheduling

Uniprocessor Scheduling Chapter 9 Uniprocessor Scheduling In a multiprogramming system, multiple processes are kept in the main memory. Each process alternates between using the processor, and waiting for an I/O device or another

More information

Co-scheduling Real-time Tasks and Non Real-time Tasks Using Empirical Probability Distribution of Execution Time Requirements.

Co-scheduling Real-time Tasks and Non Real-time Tasks Using Empirical Probability Distribution of Execution Time Requirements. Co-scheduling Real-time Tasks and Non Real-time Tasks Using Empirical Probability Distribution of Execution Time Requirements Abhishek Singh A dissertation submitted to the faculty of the University of

More information

CPU scheduling. CPU Scheduling

CPU scheduling. CPU Scheduling EECS 3221 Operating System Fundamentals No.4 CPU scheduling Prof. Hui Jiang Dept of Electrical Engineering and Computer Science, York University CPU Scheduling CPU scheduling is the basis of multiprogramming

More information

EEE499 - Real-Time Embedded System Design. Real-Time Schedulability Part I

EEE499 - Real-Time Embedded System Design. Real-Time Schedulability Part I EEE499 - Real-Time Embedded System Design Real-Time Schedulability Part I Outline Timing Requirements Concurrency and Scheduling Scheduling Schemes Notation Rate Monotonic Algorithm Utilization Bound Theorem

More information

CS 143A - Principles of Operating Systems

CS 143A - Principles of Operating Systems CS 143A - Principles of Operating Systems Lecture 4 - CPU Scheduling Prof. Nalini Venkatasubramanian nalini@ics.uci.edu CPU Scheduling 1 Outline Basic Concepts Scheduling Objectives Levels of Scheduling

More information

א א א א א א א א

א א א א א א א א א א א W א א א א א א א א א 2008 2007 1 Chapter 6: CPU Scheduling Basic Concept CPU-I/O Burst Cycle CPU Scheduler Preemptive Scheduling Dispatcher Scheduling Criteria Scheduling Algorithms First-Come, First-Served

More information

CSC 553 Operating Systems

CSC 553 Operating Systems CSC 553 Operating Systems Lecture 9 - Uniprocessor Scheduling Types of Scheduling Long-term scheduling The decision to add to the pool of processes to be executed Medium-term scheduling The decision to

More information

SE350: Operating Systems. Lecture 6: Scheduling

SE350: Operating Systems. Lecture 6: Scheduling SE350: Operating Systems Lecture 6: Scheduling Main Points Definitions Response time, throughput, scheduling policy, Uniprocessor policies FIFO, SJF, Round Robin, Multiprocessor policies Scheduling sequential

More information

Schedulability Test for Soft Real-Time Systems under Multi- processor Environment by using an Earliest Deadline First Scheduling Algorithm Abstract

Schedulability Test for Soft Real-Time Systems under Multi- processor Environment by using an Earliest Deadline First Scheduling Algorithm Abstract Schedulability Test for Soft Real-Time Systems under Multiprocessor Environment by using an Earliest Deadline First Scheduling Algorithm Jagbeer Singh Dept. of Computer Science and Engineering Gandhi Institute

More information

The Design of SMART: A Scheduler for Multimedia Applications

The Design of SMART: A Scheduler for Multimedia Applications The Design of SMART: A Scheduler for Multimedia Applications Jason Nieh and Monica S. Lam {nieh,lam}@cs.stanford.edu Technical Report CSL-TR-96-697 Computer Systems Laboratory Stanford University June

More information

Adaptive Total Bandwidth Server: Using Predictive Execution Time

Adaptive Total Bandwidth Server: Using Predictive Execution Time Adaptive Total Bandwidth Server: Using Predictive Execution Time Kiyofumi Tanaka School of Information Science, Japan Advanced Institute of Science and Technology, Asahidai 1 1, Nomi-city, Ishikawa, 923

More information

Dual Priority Algorithm to Schedule Real-Time Tasks in a Shared Memory Multiprocessor

Dual Priority Algorithm to Schedule Real-Time Tasks in a Shared Memory Multiprocessor Dual Priority Algorithm to Schedule Real-Time Tasks in a Shared Memory Multiprocessor Josep M. Banús, Alex Arenas and Jesús Labarta Departament d'enginyeria Informàtica i Matemàtiques, Universitat Rovira

More information

Preemptive Scheduling of Multi-Criticality Systems with Varying Degrees of Execution Time Assurance

Preemptive Scheduling of Multi-Criticality Systems with Varying Degrees of Execution Time Assurance 28th IEEE International Real-Time Systems Symposium Preemptive Scheduling of Multi-Criticality Systems with Varying Degrees of Execution Time Assurance Steve Vestal steve.vestal@honeywell.com Honeywell

More information

Reference model of real-time systems

Reference model of real-time systems Reference model of real-time systems Chapter 3 of Liu Michal Sojka Czech Technical University in Prague, Faculty of Electrical Engineering, Department of Control Engineering November 8, 2017 Some slides

More information

Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling

Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling Georg von der Brüggen 1, Jian-Jia Chen 1, Robert I. Davis 2, and Wen-Hung Kevin Huang

More information

Author's personal copy

Author's personal copy J. Parallel Distrib. Comput. 71 (2011) 963 973 Contents lists available at ScienceDirect J. Parallel Distrib. Comput. journal homepage: www.elsevier.com/locate/jpdc Online algorithms for advance resource

More information

Asymptotic Analysis of Real-Time Queues

Asymptotic Analysis of Real-Time Queues Asymptotic Analysis of John Lehoczky Department of Statistics Carnegie Mellon University Pittsburgh, PA 15213 Co-authors: Steve Shreve, Kavita Ramanan, Lukasz Kruk, Bogdan Doytchinov, Calvin Yeung, and

More information

An Optimal Service Ordering for a World Wide Web Server

An Optimal Service Ordering for a World Wide Web Server An Optimal Service Ordering for a World Wide Web Server Amy Csizmar Dalal Hewlett-Packard Laboratories amy dalal@hpcom Scott Jordan University of California at Irvine sjordan@uciedu Abstract We consider

More information

Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras

Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras Introduction to Operating Systems Prof. Chester Rebeiro Department of Computer Science and Engineering Indian Institute of Technology, Madras Week 05 Lecture 19 Priority Based Scheduling Algorithms So

More information

CPU Scheduling (Chapters 7-11)

CPU Scheduling (Chapters 7-11) CPU Scheduling (Chapters 7-11) CS 4410 Operating Systems [R. Agarwal, L. Alvisi, A. Bracy, M. George, E. Sirer, R. Van Renesse] The Problem You re the cook at State Street Diner customers continuously

More information

Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities

Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities Schedulability Analysis of the Linux Push and Pull Scheduler with Arbitrary Processor Affinities Arpan Gujarati Felipe Cerqueira Björn B. Brandenburg Max Planck Institute for Software Systems (MPI-SWS)

More information

Fixed-Priority Preemptive Multiprocessor Scheduling: To Partition or not to Partition

Fixed-Priority Preemptive Multiprocessor Scheduling: To Partition or not to Partition Fixed-Priority Preemptive Multiprocessor Scheduling: To Partition or not to Partition Björn Andersson and Jan Jonsson Department of Computer Engineering Chalmers University of Technology SE 412 96 Göteborg,

More information

Chapter 6: CPU Scheduling. Basic Concepts. Histogram of CPU-burst Times. CPU Scheduler. Dispatcher. Alternating Sequence of CPU And I/O Bursts

Chapter 6: CPU Scheduling. Basic Concepts. Histogram of CPU-burst Times. CPU Scheduler. Dispatcher. Alternating Sequence of CPU And I/O Bursts Chapter 6: CPU Scheduling Basic Concepts Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation Maximum CPU utilization obtained

More information

Operating System 9 UNIPROCESSOR SCHEDULING

Operating System 9 UNIPROCESSOR SCHEDULING Operating System 9 UNIPROCESSOR SCHEDULING TYPES OF PROCESSOR SCHEDULING The aim of processor scheduling is to assign processes to be executed by the processor or processors over time, in a way that meets

More information

Operating Systems. Scheduling

Operating Systems. Scheduling Operating Systems Fall 2014 Scheduling Myungjin Lee myungjin.lee@ed.ac.uk 1 Scheduling In discussing processes and threads, we talked about context switching an interrupt occurs (device completion, timer

More information

Energy Efficient Scheduler of Aperiodic Jobs for Real-time Embedded Systems

Energy Efficient Scheduler of Aperiodic Jobs for Real-time Embedded Systems International Journal of Automation and omputing DOI: 10.1007/s11633-016-0993-3 Energy Efficient Scheduler of Aperiodic Jobs for Real-time Embedded Systems Hussein El Ghor 1 E. M. Aggoune 2 1 University

More information

Chapter 9 Uniprocessor Scheduling

Chapter 9 Uniprocessor Scheduling Operating Systems: Internals and Design Principles Chapter 9 Uniprocessor Scheduling Eighth Edition By William Stallings Table 9.1 Types of Scheduling Long- t er m schedul i ng The decision to add to the

More information

Mwave/OS: A Predictable Real-time DSP Operating System

Mwave/OS: A Predictable Real-time DSP Operating System Mwave/OS: A Predictable Real-time DSP Operating System Jay K. Strosnider and Daniel I. Katcher Department of Electrical& Computer Engineering Carnegie Mellon University Pittsburgh, PA 15213 strosnider@ece.cmu.edu

More information

Real-time System Overheads: a Literature Overview

Real-time System Overheads: a Literature Overview Real-time System Overheads: a Literature Overview Mike Holenderski October 16, 2008 Abstract In most contemporary systems there are several jobs concurrently competing for shared resources, such as a processor,

More information

Bounding Worst-Case Response Time for Tasks With Non-Preemptive Regions

Bounding Worst-Case Response Time for Tasks With Non-Preemptive Regions Bounding Worst-Case Response Time for Tasks With Non-Preemptive Regions Harini Ramaprasad, Frank Mueller Dept. of Computer Science, Center for Efficient, Secure and Reliable Computing North Carolina State

More information

Design and Implementation of LST Based Dynamic Scheduler on Real Time OS

Design and Implementation of LST Based Dynamic Scheduler on Real Time OS Design and Implementation of LST Based Dynamic Scheduler on Real Time OS Prasad M Kamath, Rakesh Belagali, Sushant S Kulkarni, Vinayak Hegde, Geetishree Mishra Department of Electronics and Communication,

More information

SINGLE MACHINE SEQUENCING. ISE480 Sequencing and Scheduling Fall semestre

SINGLE MACHINE SEQUENCING. ISE480 Sequencing and Scheduling Fall semestre SINGLE MACHINE SEQUENCING 2011 2012 Fall semestre INTRODUCTION The pure sequencing problem is a specialized scheduling problem in which an ordering of the jobs completely determines a schedule. Moreover,

More information

SEQUENCING & SCHEDULING

SEQUENCING & SCHEDULING SEQUENCING & SCHEDULING November 14, 2010 1 Introduction Sequencing is the process of scheduling jobs on machines in such a way so as to minimize the overall time, cost and resource usage thereby maximizing

More information

Technical Report CMU/SEI-89-TR-14 ESD-TR-89-; 022. Carnegie-Mellon University. Software Engineering Institute. Real-Time Scheduling Theory

Technical Report CMU/SEI-89-TR-14 ESD-TR-89-; 022. Carnegie-Mellon University. Software Engineering Institute. Real-Time Scheduling Theory ADA*H317 Technical Report CMU/SEI-89-TR-14 ESD-TR-89-; 022 Carnegie-Mellon University Software Engineering Institute Real-Time Scheduling Theory and Ada Lui Sha John B. Goodenough April 1989 Technical

More information

Slack Assessment of the Real Time Scheduling Algorithms

Slack Assessment of the Real Time Scheduling Algorithms International Journal of Control Theory and Applications ISSN : 0974-5572 International Science Press Volume 9 Number 43 2016 Slack Assessment of the Real Time Scheduling Algorithms P. Ramesh a and Uppu

More information

Q1. What is Real time system? Explain the basic model of Real time system. (8)

Q1. What is Real time system? Explain the basic model of Real time system. (8) B. TECH VIII SEM I MID TERM EXAMINATION BRANCH: CSE SUB. CODE: 8CS4.2A SUBJECT: REAL TIME SYSTEM TIME ALLOWED: 2 Hours MAX. MARKS: 40 Q1. What is Real time system? Explain the basic model of Real time

More information

SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES

SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES SCHEDULING AND CONTROLLING PRODUCTION ACTIVITIES Al-Naimi Assistant Professor Industrial Engineering Branch Department of Production Engineering and Metallurgy University of Technology Baghdad - Iraq dr.mahmoudalnaimi@uotechnology.edu.iq

More information

CPU Scheduling. Disclaimer: some slides are adopted from book authors and Dr. Kulkarni s slides with permission

CPU Scheduling. Disclaimer: some slides are adopted from book authors and Dr. Kulkarni s slides with permission CPU Scheduling Disclaimer: some slides are adopted from book authors and Dr. Kulkarni s slides with permission 1 Recap Deadlock prevention Break any of four deadlock conditions Mutual exclusion, no preemption,

More information

CSC 1600: Chapter 5. CPU Scheduling. Review of Process States

CSC 1600: Chapter 5. CPU Scheduling. Review of Process States CSC 1600: Chapter 5 CPU Scheduling Review of Process States 1 OS Queuing Model Enter Ready queue CPU Exit Disk Queue Network Queue Printer Queue Processes enter and leave the system CPU Scheduling Each

More information

Enhancement in System Schedulability by Controlling Task Releases

Enhancement in System Schedulability by Controlling Task Releases Enhancement in System Schedulability by Controlling Task Releases Basharat Mahmood Department of Computer Science COMSATS Institute of Information Technology Islamabad, Pakistan Naveed Ahmad Department

More information

This is a repository copy of Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling.

This is a repository copy of Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling. This is a repository copy of Exact Speedup Factors for Linear-Time Schedulability Tests for Fixed-Priority Preemptive and Non-preemptive Scheduling. White Rose Research Online URL for this paper: http://eprints.whiterose.ac.uk/103630/

More information

Announcements. Program #1. Reading. Is on the web Additional info on elf file format is on the web. Chapter 6. CMSC 412 S02 (lect 5)

Announcements. Program #1. Reading. Is on the web Additional info on elf file format is on the web. Chapter 6. CMSC 412 S02 (lect 5) Program #1 Announcements Is on the web Additional info on elf file format is on the web Reading Chapter 6 1 Selecting a process to run called scheduling can simply pick the first item in the queue called

More information

Network Flows. 7. Multicommodity Flows Problems. Fall 2010 Instructor: Dr. Masoud Yaghini

Network Flows. 7. Multicommodity Flows Problems. Fall 2010 Instructor: Dr. Masoud Yaghini In the name of God Network Flows 7. Multicommodity Flows Problems 7.1 Introduction Fall 2010 Instructor: Dr. Masoud Yaghini Introduction Introduction In many application contexts, several physical commodities,

More information

Advanced Types Of Scheduling

Advanced Types Of Scheduling Advanced Types Of Scheduling In the previous article I discussed about some of the basic types of scheduling algorithms. In this article I will discuss about some other advanced scheduling algorithms.

More information

Rate Monotonic Analysis

Rate Monotonic Analysis Rate Monotonic Analysis Periodic tasks Extending basic theory Synchronization and priority inversion Aperiodic servers Case study: BSY-1 Trainer 1 Purpose of Tutorial Introduce rate monotonic analysis

More information

CPU Scheduling. Jo, Heeseung

CPU Scheduling. Jo, Heeseung CPU Scheduling Jo, Heeseung CPU Scheduling (1) CPU scheduling Deciding which process to run next, given a set of runnable processes Happens frequently, hence should be fast Scheduling points 2 CPU Scheduling

More information

Mixed Criteria Packet Scheduling

Mixed Criteria Packet Scheduling Mixed Criteria Packet Scheduling Chad R. Meiners meinersc@cse.msu.edu Eric Torng torng@cse.msu.edu Abstract. Packet scheduling in networks with quality of service constraints has been extensively studied

More information

Course Outline. Embedded Real Time Operating System Chin Fu Kuo National University of Kaohsiung 2009 Fall

Course Outline. Embedded Real Time Operating System Chin Fu Kuo National University of Kaohsiung 2009 Fall Course Outline Embedded Real Time Operating System Chin Fu Kuo National University of Kaohsiung 2009 Fall Information Instructor: chinfukuo2006@nuk.edu.tw Office: M624 TA:? Course Materials Website http://www.csie.nuk.edu.tw/~kcf/course_main.htm

More information

CS 111. Operating Systems Peter Reiher

CS 111. Operating Systems Peter Reiher Operating System Principles: Scheduling Operating Systems Peter Reiher Page 1 Outline What is scheduling? What are our scheduling goals? What resources should we schedule? Example scheduling algorithms

More information

Model Based Design of Super Schedulers Managing Catastrophic Scenario in Hard Real Time Systems

Model Based Design of Super Schedulers Managing Catastrophic Scenario in Hard Real Time Systems Model Based Design of Super Schedulers Managing Catastrophic Scenario in Hard Real Time Systems A. Christy Persya 1, T.R.Gopalakrishnan Nair 2 1 Research Associate, Real Time Systems Group, RIIC, Assistant

More information

Lecture 11: CPU Scheduling

Lecture 11: CPU Scheduling CS 422/522 Design & Implementation of Operating Systems Lecture 11: CPU Scheduling Zhong Shao Dept. of Computer Science Yale University Acknowledgement: some slides are taken from previous versions of

More information

Energy-Efficient Scheduling of Interactive Services on Heterogeneous Multicore Processors

Energy-Efficient Scheduling of Interactive Services on Heterogeneous Multicore Processors Energy-Efficient Scheduling of Interactive Services on Heterogeneous Multicore Processors Shaolei Ren, Yuxiong He, Sameh Elnikety University of California, Los Angeles, CA Microsoft Research, Redmond,

More information

Today s Papers. Composability is Essential. The Future is Parallel Software. EECS 262a Advanced Topics in Computer Systems Lecture 12

Today s Papers. Composability is Essential. The Future is Parallel Software. EECS 262a Advanced Topics in Computer Systems Lecture 12 EECS 262a Advanced Topics in Computer Systems Lecture 12 Multiprocessor/Realtime Scheduling October 8 th, 2012 Today s Papers Implementing Constant-Bandwidth Servers upon Multiprocessor Platforms Sanjoy

More information

Implementation and Evaluation of Mixed-Criticality Scheduling Approaches for Sporadic Tasks

Implementation and Evaluation of Mixed-Criticality Scheduling Approaches for Sporadic Tasks Implementation and Evaluation of Mixed-Criticality Scheduling Approaches for Sporadic Tasks HUANG-MING HUANG, CHRISTOPHER GILL, and CHENYANG LU, Washington University in St. Louis Traditional fixed-priority

More information

EDZL Schedulability Analysis in Real-Time Multicore Scheduling

EDZL Schedulability Analysis in Real-Time Multicore Scheduling 910 IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 39, NO. 7, JULY 2013 EDZL Schedulability Analysis in Real-Time Multicore Scheduling Jinkyu Lee, Member, IEEE, and Insik Shin, Member, IEEE Abstract In

More information

Learning Module II: Real-Time Systems Design

Learning Module II: Real-Time Systems Design Learning Module II: Real-Time Systems Design Outline Introduction to real-time systems Timing requirements and timing analysis - Concept of Worst-Case Execution Time (WCET) - Why it is hard for analyzing

More information

Meeting End-to-End Deadlines Through Distributed Local Deadline Assignments

Meeting End-to-End Deadlines Through Distributed Local Deadline Assignments Meeting End-to-End Deadlines Through Distributed Local Deadline Assignments Shengyan Hong, Thidapat Chantem, Xiaobo Sharon Hu Department of Computer Science and Engineering University of Notre Dame Notre

More information

Preemptive Resource Management for Dynamically Arriving Tasks in an Oversubscribed Heterogeneous Computing System

Preemptive Resource Management for Dynamically Arriving Tasks in an Oversubscribed Heterogeneous Computing System 2017 IEEE International Parallel and Distributed Processing Symposium Workshops Preemptive Resource Management for Dynamically Arriving Tasks in an Oversubscribed Heterogeneous Computing System Dylan Machovec

More information

SimSo: A Simulation Tool to Evaluate Real-Time Multiprocessor Scheduling Algorithms

SimSo: A Simulation Tool to Evaluate Real-Time Multiprocessor Scheduling Algorithms : A Simulation Tool to Evaluate Real-Time Multiprocessor Scheduling Algorithms Maxime Chéramy, Pierre-Emmanuel Hladik and Anne-Marie Déplanche maxime.cheramy@laas.fr July 8, 2014 5th International Workshop

More information

Process Scheduling I. COMS W4118 Prof. Kaustubh R. Joshi hdp://

Process Scheduling I. COMS W4118 Prof. Kaustubh R. Joshi hdp:// Process Scheduling I COMS W4118 Prof. Kaustubh R. Joshi krj@cs.columbia.edu hdp://www.cs.columbia.edu/~krj/os References: OperaVng Systems Concepts (9e), Linux Kernel Development, previous W4118s Copyright

More information