Aperiodic Task Scheduling

Slides:



Advertisements
Similar presentations
Fakultät für informatik informatik 12 technische universität dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund,
Advertisements

1 EE5900 Advanced Embedded System For Smart Infrastructure RMS and EDF Scheduling.
Resource Access Protocols
CPE555A: Real-Time Embedded Systems
Formal Methods for Real- Time Embedded Software Engineering 正規方法應用於即時嵌入式 軟體工程 熊博安 國立中正大學資訊工程學系 民國九十一年五月二十二日.
CSE 522 Real-Time Scheduling (4)
THE UNIVERSITY of TEHRAN Mitra Nasri Sanjoy Baruah Gerhard Fohler Mehdi Kargahi October 2014.
Mehdi Kargahi School of ECE University of Tehran
Real-time Systems Lab, Computer Science and Engineering, ASU Scheduling Algorithm and Analysis (ESP – Fall 2014) Computer Science & Engineering Department.
Real-Time Scheduling CIS700 Insup Lee October 3, 2005 CIS 700.
Lateness Models Contents
1 Swiss Federal Institute of Technology Computer Engineering and Networks Laboratory Embedded Systems Exercise 2: Scheduling Real-Time Aperiodic Tasks.
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.
Spring, Scheduling Operations. Spring, Scheduling Problems in Operations Job Shop Scheduling. Personnel Scheduling Facilities Scheduling.
Mapping of Applications to Platforms Peter Marwedel TU Dortmund, Informatik 12 Germany Graphics: © Alexandra Nolte, Gesine Marwedel, 2003 These slides.
Real Time Operating Systems
1 IOE/MFG 543 Chapter 3: Single machine models (Sections 3.1 and 3.2)
Preemptive Behavior Analysis and Improvement of Priority Scheduling Algorithms Xiaoying Wang Northeastern University China.
1 Single Machine Deterministic Models Jobs: J 1, J 2,..., J n Assumptions: The machine is always available throughout the scheduling period. The machine.
Periodic Task Scheduling
Real-Time System: Introduction
CSE 421 Algorithms Richard Anderson Lecture 6 Greedy Algorithms.
Deterministic Scheduling
Embedded Systems Exercise 3: Scheduling Real-Time Periodic and Mixed Task Sets 18. May 2005 Alexander Maxiaguine.
By Group: Ghassan Abdo Rayyashi Anas to’meh Supervised by Dr. Lo’ai Tawalbeh.
Real-Time Operating System Chapter – 8 Embedded System: An integrated approach.
1 IOE/MFG 543 Chapter 10: Single machine stochastic models Sections 10.1 and 10.4 You may skip Sections
Technische Universität Dortmund Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2007/12/14.
Minimizing Makespan and Preemption Costs on a System of Uniform Machines Hadas Shachnai Bell Labs and The Technion IIT Tami Tamir Univ. of Washington Gerhard.
A Categorization of Real-Time Multiprocessor Scheduling Problems and Algorithms Presentation by Tony DeLuce CS 537 Scheduling Algorithms Spring Quarter.
Real Time Operating Systems Scheduling & Schedulers Course originally developed by Maj Ron Smith 8-Oct-15 Dr. Alain Beaulieu Scheduling & Schedulers- 7.
Real-Time Embedded Software Synthesis 即時嵌入式軟體合成 熊博安國立中正大學資訊工程學系民國九十年十一月廿九日.
Quantifying the sub-optimality of uniprocessor fixed priority non-pre-emptive scheduling Robert Davis 1, Laurent George 2, Pierre Courbin 3 1 Real-Time.
Quantifying the Sub-optimality of Non-preemptive Real-time Scheduling Abhilash Thekkilakattil, Radu Dobrin and Sasikumar Punnekkat.
Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned.
National Taiwan University Department of Computer Science and Information Engineering 1 Optimal Real-Time Scheduling for Uniform Multiprocessors 薛智文 助理教授.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
Welcome!. PhD Dissertation Defense PhD Candidate: Wenming Li Advisor: Dr. Krishna M. Kavi Committee: Dr. Krishna M. Kavi Dr. Robert Akl Dr. Phil Sweany.
Real Time Scheduling Telvis Calhoun CSc Outline Introduction Real-Time Scheduling Overview Tasks, Jobs and Schedules Rate/Deadline Monotonic Deferrable.
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.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
6. Application mapping 6.1 Problem definition
CSC 8420 Advanced Operating Systems Georgia State University Yi Pan.
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems RMS and EDF Schedulers.
Advanced Operating Systems - Spring 2009 Lecture 14 – February 25, 2009 Dan C. Marinescu Office: HEC 439 B. Office.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
Mapping: Applications  Processors
12/19/2015COSC , Lecture 31 Real-Time Systems, COSC , Lecture 3 Stefan Andrei.
CSE 522 Real-Time Scheduling (2)
Real-Time systems By Dr. Amin Danial Asham.
Real-Time Scheduling CS 3204 – Operating Systems Lecture 13 10/3/2006 Shahrooz Feizabadi.
1 Real-Time Scheduling. 2Today Operating System task scheduling –Traditional (non-real-time) scheduling –Real-time scheduling.
Real time scheduling G.Anuradha Ref:- Stallings. Real time computing Correctness of the system depends not only on the logical result of computation,
Common Approaches to Real-Time Scheduling Clock-driven (time-driven) schedulers Priority-driven schedulers Examples of priority driven schedulers Effective.
Introduction to Embedded Systems Rabie A. Ramadan 5.
Classical scheduling algorithms for periodic systems Peter Marwedel TU Dortmund, Informatik 12 Germany 2012 年 12 月 19 日 These slides use Microsoft clip.
Introduction to Real-Time Systems
2/23/2016COSC , Lecture 21 Real-Time Systems, COSC , Lecture 2 Stefan Andrei.
CSE 421 Algorithms Richard Anderson Lecture 8 Greedy Algorithms: Homework Scheduling and Optimal Caching.
Lecture 6: Real-Time Scheduling
Tardiness Bounds for Global EDF Scheduling on a Uniform Multiprocessor Kecheng Yang James H. Anderson Dept. of Computer Science UNC-Chapel Hill.
Clock-Driven Scheduling (in-depth) Task Scheduler: i := 0; k := 0; BEGIN LOOP i := i+1; k:= i mod N; IF J(t k-1 )is empty THEN wakeup(aperiodic) ELSE wakeup(J(t.
Embedded System Scheduling
Unit OS9: Real-Time and Embedded Systems
Lecture 24: Process Scheduling Examples and for Real-time Systems
CprE 458/558: Real-Time Systems
Realtime Scheduling Algorithms
Limited-Preemption Scheduling of Sporadic Tasks Systems
Ch 4. Periodic Task Scheduling
Presentation transcript:

Aperiodic Task Scheduling 張軒彬助理教授 中興大學資訊科學系 In this chapter, we present a variety of scheduling algorithms for aperiodic tasks.

Jackson’s Algorithm Task model: Aperiodic tasks Synchronous release time But can have different computation time and deadlines Preemption is not an issue since all tasks arrive at the same time First, we introduce the Jackson’s algorithm. The task model assumed in Jackson’s algorithm is: tasks are aperiodic, all tasks have the synchronous release time. That is, all tasks arrive at the same time Each task may have different computation time and deadlines Since all tasks arrive at the same time, preemption is not an issue in Jackson’s algorithm.

Jackson’s Algorithm (Cont.) Earliest Due Date (EDD) algorithm proposed by Jackson in 1955 Given a set of n independent tasks, any algorithm that executes the tasks in order of nondecreasing deadlines is optimal with respect to minimizing the maximum lateness Maximum lateness = maxi (fi-di) Schedulability condition (C denotes the execution time) Jackson proposed a EDD (Earliest Due Date) algorithm in 1995 that minimizes the maximum lateness of above given task model. EDD says that, given a set of n independent tasks, any algorithm that executes the tasks in order of nondecreasing deadlines is optimal respect to minimizing the maximum lateness. The definition of maximum lateness is the maximum value among n task’s finish time minus its deadline. If a task set consists of n tasks, the schedulability condition can be perfomed by verifying the following n conditions.

Example J1 J2 J3 J4 J5 Ci 1 3 2 di 10 7 8 5 Ci: execution time of ith-job; di: ith-job’s deadline t J1 J5 J3 J4 J2 1 2 3 4 5 6 7 8 9 10 d1 d5 d3 d4 d2 Example: consider a set of five tasks that simultaneously arrived at time t = 0. Their worst-case computation times and deadlines are indicated in the above table. According to the EDD algorithm, the schedule of tasks is depicted above. The lateness of T1 to T5 is -2, -2, -3, -1, -2. Thus, the maximum lateness is -1, which is due to task J4.

Horn’s Algorithm Task model: Aperiodic tasks Arbitrary arrival times Different computation time and deadlines Preemptive A scheduling problem in which preemption is allowed is always easier than its nonpreemptive counterpart Require a considerable amount of searching in non-preemptive scheduling algorithm when a new task need to be scheduled In contrast, if tasks are not synchronize but can be activated arbitrarily, then preemption become an important issue. In general, a scheduling problem that allows preemptive scheduling is always easier than non preemptive scheduling. To guarantee a newly arriving nonpreemptive task does not cause other nonpreemptive tasks require a considerable amount of searching. In contrast, if preemption is allowed, Horn proposed an elegant algorithm in 1974 to the problem of scheduling a set of n independent tasks with dynamic arrival times and preemption is allowed.

Horn’s Algorithm (Cont.) Earliest Deadline First (EDF) algorithm proposed by Horn in 1974. Given a set of n independent tasks with arbitrary arrival times, any algorithm that at any instant executes the task with the earliest absolute deadline among all the ready tasks is optimal with respect to minimizing the maximum lateness. Schedulability condition ci(t) : the remaining worst-case execution time of Ji. Initially, ci(0) = Ci The statement should be clear enough from the slide.

Example J1 J2 J3 J4 J5 ai 2 3 6 Ci 1 di 5 4 10 9 ai:ith-taks’s arrival time Example, consider a set of five tasks whose arrival time a, computation time C, and deadline d are shown in above Table. According to the EDF algorithm, the schedule of tasks is depicted above. The lateness of T1 to T5 is -1, 0, 0, -1, -1. Thus, the maximum lateness is 0, which is due to task J2 and J3. t J1 J2 J3 J4 J5 1 2 3 4 5 6 7 8 9 10

Non-Preemptive Scheduling Task model: Aperiodic tasks Arbitrary arrival times Different computation time and deadlines Non-Preemptive The problem of finding a feasible schedule is NP-hard If preemption is not allowed and tasks can have arbitrary arrivals, the problems of finding a feasible schedule becomes NP-hard.

Example J1 J2 ai 1 Ci 4 2 di 7 5 t J1 J2 1 2 3 4 5 6 7 8 d5 J1 J2 t 1 1 Ci 4 2 di 7 5 t J1 J2 1 2 3 4 5 6 7 8 Optimal schedule Example, consider a set of five tasks whose arrival time a, computation time C, and deadline d are shown in above Table. The optimal schedule that minimizes the maximal lateness is depicted in the first diagram. In contrast, the schedule produced by EDF is depicted in the second diagram. EDF does not produce a feasible schedule since J2 misses its deadline. J2 miss deadline d5 J1 J2 t 1 2 3 4 5 6 7 8 Infeasible EDF schedule,

Non-Preemptive Scheduling (Cont.) Non-idle Algorithm: a scheduling algorithm that does not permit the processor to be idle when there are active jobs When arrival times are not known a priori and non-idle scheduling algorithms are allowed EDF is still optimal in a non-preemptive task model When arrival times are known a priori Branch-and-bound algorithms However, if the scheduling algorithm does not allow processor to be idle, called non-idle scheduling algorithms, then EDF is still optimal. If arrival times are known a prior, non-preemptive scheduling problems are usually solved by branch-and-bound algorithms. Nevertheless, the performance would degrade to exponential complexity that is computationally intractable. Thus, if the number of tasks is high, it cannot be used in practical systems. Some heuristic algorithm exists to limit the search space and reduce the computational complexity. However, we skip it in our class.

Reference Giorgio C. Buttazzo, “Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications,” Kluwer Academic Publishers, 1997 Jane W. S. Liu, “Real-Time Systems,” Prentice Hall, 2002