Courseware Scheduling of Distributed Real-Time Systems Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens.

Slides:



Advertisements
Similar presentations
REAL TIME SYSTEM Scheduling.
Advertisements

CS5270 Lecture 31 Uppaal, and Scheduling, and Resource Access Protocols CS 5270 Lecture 3.
Courseware Abstract RTOS Modelling for Multi-Processor SoC using SystemC Prof. Jan Madsen Informatics and Mathematical Modelling Technical University of.
RUN: Optimal Multiprocessor Real-Time Scheduling via Reduction to Uniprocessor Paul Regnier † George Lima † Ernesto Massa † Greg Levin ‡ Scott Brandt ‡
Real-Time Scheduling CIS700 Insup Lee October 3, 2005 CIS 700.
Is It Time Yet? Wing On Chan. Distributed Systems – Chapter 18 - Scheduling Hermann Kopetz.
Module 2 Priority Driven Scheduling of Periodic Task
Courseware Power-aware scheduling Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens Plads, Building 321.
Courseware Scheduling Uniprocessor Real-Time Systems Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens.
1 Multiprocessor and Real-Time Scheduling Chapter 10.
Courseware High-Level Synthesis an introduction Prof. Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens.
Courseware Basics of Real-Time Scheduling Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens Plads, Building.
Real-Time Kernels and Operating Systems. Operating System: Software that coordinates multiple tasks in processor, including peripheral interfacing Types.
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 –
Misconceptions About Real-time Computing : A Serious Problem for Next-generation Systems J. A. Stankovic, Misconceptions about Real-Time Computing: A Serious.
Multiprocessor Real- Time Scheduling Aaron Harris CSE 666 Prof. Ganesan.
1 Previous lecture review n Out of basic scheduling techniques none is a clear winner: u FCFS - simple but unfair u RR - more overhead than FCFS may not.
Chapter 10 Multiprocessor and Real-Time Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community.
Real Time Operating Systems Scheduling & Schedulers Course originally developed by Maj Ron Smith 8-Oct-15 Dr. Alain Beaulieu Scheduling & Schedulers- 7.
© Oxford University Press 2011 DISTRIBUTED COMPUTING Sunita Mahajan Sunita Mahajan, Principal, Institute of Computer Science, MET League of Colleges, Mumbai.
Scheduling policies for real- time embedded systems.
Multiprocessor Real-time Scheduling Jing Ma 马靖. Classification Partitioned Scheduling In the partitioned approach, the tasks are statically partitioned.
Chapter 10 Multiprocessor and Real-Time Scheduling Operating Systems: Internals and Design Principles, 6/E William Stallings Patricia Roy Manatee Community.
Multiprocessor and Real-Time Scheduling Chapter 10.
Chapter 101 Multiprocessor and Real- Time Scheduling Chapter 10.
1 Multiprocessor and Real-Time Scheduling Chapter 10 Real-Time scheduling will be covered in SYSC3303.
CPU Scheduling Gursharan Singh Tatla 1-Feb-20111www.eazynotes.com.
Real-Time Systems Mark Stanovich. Introduction System with timing constraints (e.g., deadlines) What makes a real-time system different? – Meeting timing.
1 Multiprocessor Scheduling Module 3.1 For a good summary on multiprocessor and real-time scheduling, visit:
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
Hard Real-Time Scheduling for Low- Energy Using Stochastic Data and DVS Processors Flavius Gruian Department of Computer Science, Lund University Box 118.
Undergraduate course on Real-time Systems Linköping 1 of 45 Autumn 2009 TDDC47: Real-time and Concurrent Programming Lecture 5: Real-time Scheduling (I)
RTOS task scheduling models
CprE 458/558: Real-Time Systems (G. Manimaran)1 CprE 458/558: Real-Time Systems RMS and EDF Schedulers.
End-To-End Scheduling Angelo Corsaro & Venkita Subramonian Department of Computer Science Washington University Distributed Systems Seminar, Spring 2003.
CS244-Introduction to Embedded Systems and Ubiquitous Computing Instructor: Eli Bozorgzadeh Computer Science Department UC Irvine Winter 2010.
Special Class on Real-Time Systems
CSE 522 Real-Time Scheduling (2)
CSCI1600: Embedded and Real Time Software Lecture 24: Real Time Scheduling II Steven Reiss, Fall 2015.
Silberschatz and Galvin  Operating System Concepts Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor.
1 CS.217 Operating System By Ajarn..Sutapart Sappajak,METC,MSIT Chapter 5 CPU Scheduling Slide 1 Chapter 5 CPU Scheduling.
CSCI1600: Embedded and Real Time Software Lecture 23: Real Time Scheduling I Steven Reiss, Fall 2015.
Lecture 2, CS52701 The Real Time Computing Environment I CS 5270 Lecture 2.
Dynamic Priority Driven Scheduling of Periodic Task
Introduction to Real-Time Systems
Real-Time Operating System Design
For a good summary, visit:
Real-Time Scheduling --- An Overview Real-Time Scheduling --- An Overview Xiaoping He.
Task Mapping and Partition Allocation for Mixed-Criticality Real-Time Systems Domițian Tămaș-Selicean and Paul Pop Technical University of Denmark.
Operating System Concepts and Techniques Lecture 6 Scheduling-2* M. Naghibzadeh Reference M. Naghibzadeh, Operating System Concepts and Techniques, First.
Unit - I Real Time Operating System. Content : Operating System Concepts Real-Time Tasks Real-Time Systems Types of Real-Time Tasks Real-Time Operating.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 32 – Multimedia OS Klara Nahrstedt Spring 2010.
ECE 692 Power-Aware Computer Systems Final Review Prof. Xiaorui Wang.
Lecture 6: Real-Time Scheduling
Distributed Process Scheduling- Real Time Scheduling Csc8320(Fall 2013)
Undergraduate course on Real-time Systems Linköping TDDD07 – Real-time Systems Lecture 1: Introduction & Scheduling I Simin Nadjm-Tehrani Real-time Systems.
Real-Time Operating Systems RTOS For Embedded systems.
Embedded System Scheduling
Wayne Wolf Dept. of EE Princeton University
EEE 6494 Embedded Systems Design
CprE 458/558: Real-Time Systems
Chapter 6: CPU Scheduling
Real Time Scheduling Mrs. K.M. Sanghavi.
Chapter 5: CPU Scheduling
Multiprocessor and Real-Time Scheduling
Chapter 6: CPU Scheduling
Operating System , Fall 2000 EA101 W 9:00-10:00 F 9:00-11:00
Chapter 6: CPU Scheduling
Presentation transcript:

courseware Scheduling of Distributed Real-Time Systems Jan Madsen Informatics and Mathematical Modelling Technical University of Denmark Richard Petersens Plads, Building 321 DK2800 Lyngby, Denmark

SoC-MOBINET courseware(c) Jan Madsen2 Multi-processor scheduling a mem b b os 3 4 mem a os 2 1 scheduling

SoC-MOBINET courseware(c) Jan Madsen3 Scheduling of distributed real-time systems  Much more complicated  Has to handle a large number of characteristics, constraints and requirements

SoC-MOBINET courseware(c) Jan Madsen4 Characteristics to be handled  Processes:  preemptive and non-preemptive  periodic and aperidoic  processes with multiple levels of importance  group of processes with single deadline  Constraints and requirements:  end-to-end timing  precedence relations  communication  shared resources  placement  hard and soft deadlines  fault tolerance

SoC-MOBINET courseware(c) Jan Madsen5 Handling interfaces between  CPU scheduling and resource allocation  IO scheduling and CPU scheduling  CPU scheduling and communication scheduling  Local and distributed scheduling  Static scheduling of critical processes and dynamic scheduling of other processes Comprehensive results will not exist for many years!

SoC-MOBINET courseware(c) Jan Madsen6 Phases of real-time distributed systems scheduling  Allocation  assigning processes and resources to processors in the system  Scheduling  Ordering the execution of processes and communications to meet timing and resource constraints  Dispatching  Executing the processes in conformance with the scheduler’s decisions

SoC-MOBINET courseware(c) Jan Madsen7 Approaches to embedded system scheduling  deterministic (static) scheduling  Allocating and static scheduling all periodic processes off-line  Allocate time-slots for handling non-periodic processes  Distributed scheduling  Each CPU runs its own scheduler  Set of processes is distributed, statically allocated but dynamically activated

SoC-MOBINET courseware(c) Jan Madsen8 Static distributed scheduling  Typical approach –Construct a comprehensive graph containing all process instances that executes in an interval of length T (T is the least common multiple of all process periods) –Cluster communicating processes –Allocate clusters of processes to PEs and schedule processes and communications

SoC-MOBINET courseware(c) Jan Madsen9 ArchitectureSpecification CharacterizationScheduling A Simple Example t1 t3t2 PE1 PE2 bus t1 t2 t3 PE1PE2PE1 PE2

SoC-MOBINET courseware(c) Jan Madsen10 First solution t1 t3t2 PE1 PE2 bus ArchitectureSpecification CharacterizationScheduling t1 t2 t3 PE1PE2PE1 PE t1t2 t3 20

SoC-MOBINET courseware(c) Jan Madsen11 Introducing communication t1 t3t2 PE1 PE2 bus ArchitectureSpecification CharacterizationScheduling t1 t2 t3 PE1PE2PE1 PE t1 t2 t3 25 bus Can transfer 2 data units per time unit 5

SoC-MOBINET courseware(c) Jan Madsen12 Introducing interfaces t1 t3t2 PE1 PE2 bus ArchitectureSpecification CharacterizationScheduling t1 t2 t3 PE1PE2PE1 PE i1i2 t1t2 t3 27 bus i1 i2 Can buffer 10 data units per time unit

SoC-MOBINET courseware(c) Jan Madsen13 PE Memory? t1 Memory contributions: program data data to be transferred Memory utilization: time Memory size PE t1

SoC-MOBINET courseware(c) Jan Madsen14 Introducing memory t1 t3t2 PE1 PE2 bus ArchitectureSpecification CharacterizationScheduling t1 t2 t3 PE1PE2PE1 15 5,515 10,5 10 5,520 10,5 5 10, i1i2 t1t2 Peak memory = 77

SoC-MOBINET courseware(c) Jan Madsen15 Dynamic multi-processor scheduling  Primary objective is to ensure that all timing constraints are met  Serious difficulties in validating hard timing constraints  Assumptions:  Each processor has its own scheduler  The scheduler uses a uni-processor scheduling algorithm  Schedulers on different processors need not use the same algorithm

SoC-MOBINET courseware(c) Jan Madsen16 Multi-processor scheduling  Task assignment  Most real-time systems are static, tasks are partitioned and statically bound to processors  Inter-processor synchronization  Ensuring that precedence constraints of tasks on different processors are always satisfied

SoC-MOBINET courseware(c) Jan Madsen17 Task assignment  Often done off-line  NP-hard problem  Assignment based on:  Execution times  Resource requirements  Data dependencies  Timing constraints  Communication cost ... b os a

SoC-MOBINET courseware(c) Jan Madsen18 Task assignment - RMFF Assume zero communication overhead Scheduling based on fixed priorities A synchronization signal makes sure that is released as soon as has completed 32  Example: 1 a i k i k  Rate-Monotonic First-Fit algorithm: 1.Sort tasks in increasing order according to their period 2.Assign tasks one by one  is assigned to  is assigned to if the total utilization of and the tasks already assigned to < U RM

SoC-MOBINET courseware(c) Jan Madsen19 Example riri TiTi eiei b os 4 a 1 2 3

SoC-MOBINET courseware(c) Jan Madsen20 Dynamic scheduling b os 4 a a b RM

SoC-MOBINET courseware(c) Jan Madsen21 Changing synchronization protocol b os 4 a a b RMEDF

SoC-MOBINET courseware(c) Jan Madsen22 Multi-processing anomalies  Assume a set of tasks optimally scheduled on a multiprocessor system with:  fixed number of processors  fixed execution times (e i )  precedence constraints  Then  changing the priority list  increasing the number of processor  reducing execution times  weakening the precedence constraints  May increase the scheduling length!

SoC-MOBINET courseware(c) Jan Madsen23 Example of anomalies Reduce e 1 of task 1 a b a b Task 2 and 4 are sharing a resource, i.e. mutually exclusion

SoC-MOBINET courseware(c) Jan Madsen24 Consequences of anomalies  Tasks may complete before their WCETs  So most on-line scheduling algorithms are subject to experience anomalies  Simple but inefficient solution:  Have tasks completing early idle

SoC-MOBINET courseware(c) Jan Madsen25 Summary  Introduction to classical uni-processor multi-task scheduling  illustration of multi-processor scheduling  Not covered:  Priority inversion when having shared resources  Context switching and cache overhead  Overload conditions  Low power scheduling,  Increasing idle periods on processors  Voltage scaling  Communication