Save this PDF as:

Size: px
Start display at page:

## Transcription

2 Motivation and Assumptions Examples of Periodic Tasks sensory data acquisition control loops action planning system monitoring

3 Motivation and Assumptions Simplifying Assumptions constant period T i all instances (jobs) of a task have the same computation time C i no precedence relations, no resources preemption (deadline is equal to period D i = T i ) (no aperiodic jobs)

4 Motivation and Assumptions Example τ 1 τ 2 τ 3 C i T i find schedule think about possible scheduling algorithms

5 Motivation and Assumptions Outlook notions: jitter, processor utilization, schedulable utilization three basic approaches: static scheduling, dynamic priorities (EDF), fixed priorities (rate monotonic) examples discussion

6 Motivation and Assumptions Jitter deviation of the start/finishing time of consecutive instances of some task relative, absolute jitter for some applications it is important to minimize the jitter we do not deal with this issue in detail

7 Processor Utilization Factor Processor Utilization Factor Definition (Processor utilization factor) Given a set Γ of n periodic tasks, processor utilization factor U is the fraction of processor time spent in the execution of the task set: U = Σ n C i i=1 T i Example: U = = Note: U > 1 not schedulable

8 Processor Utilization Factor Schedulable Utilization Definition (Schedulable Utilization) schedulable utilization U S of a scheduling algorithm the algorithm can feasibly schedule any set of periodic tasks o with the total utilization of the tasks is U S used to easily verify the schedulability of a task set

9 Cyclic Scheduling Cyclic Scheduling an approach, rather than algorithm (timeline scheduling, clock-driven scheduling) static schedule, constructed off-line schedule specifies exactly when each job executes minor cycle = greatest common divisor of periods major cycle = time after which the schedule repeats itself

10 Cyclic Scheduling Example T A = 25, T B = 50, T C = 100

11 Cyclic Scheduling Aperiodic Jobs spare capacities in the static schedule can be used for handling aperiodic jobs aperiodic jobs can be scheduled e.g. by deadline based algorithm

12 Cyclic Scheduling Advantages and Disadvantages advantages: simple, efficient (precomputed) can deal with complex requirements, precedence constraints,... special requirements can be taken into account (e.g., minimizing jitter or context switches) disadvantages: inflexible, difficult to modify and maintain fragile (overrun may cause whole schedule to fail) not very suitable for systems with both periodic and aperiodic tasks Suitable for systems which are rarely modified once built (e.g., small embedded controllers).

13 Earliest Deadline First Earliest Deadline First dynamic priority assignment selects tasks according to absolute deadline does not depend on periodicity; can be directly used for periodic+aperiodic tasks

14 Earliest Deadline First Schedulability Analysis Schedulable utilization of EDF is 1. Theorem A set of periodic tasks is schedulable with EDF if and only if Σ n i=1 C i T i 1

15 Earliest Deadline First Extensions deadlines less than periods, aperiodic jobs the algorithm works directly for both extensions schedulability analysis is more complex (not covered)

16 Rate Monotonic Rate Monotonic Scheduling priority based algorithm: tasks scheduled according to priorities fixed-priority assignment: priorities assigned before the execution (all jobs of one task have the same priority) priorities according to periods: shorter period - higher priority preemptive

17 Rate Monotonic Example τ 1 τ 2 τ 3 C i T i

18 Rate Monotonic Optimality in general RM is not optimal RM is optimal among fixed-priority algorithms Theorem If a task set can be scheduled by fixed-priority algorithm then it can be scheduled by Rate Monotonic algorithm.

19 Rate Monotonic Schedulable Utilization For arbitrary set of periodic tasks, the schedulable utilization of the RM scheduling algorithm is U S = n(2 1/n 1) n U S For high values of n the schedulable utilization converges to U lub = ln

20 Rate Monotonic Optimality for Simply Periodic Tasks a set of periodic tasks is simply periodic if for every pair of tasks: T i < T j T j is an integer multiple of T i Theorem A system of simply periodic tasks is schedulable according to the RM algorithm if and only if its utilization factor is 1.

21 Rate Monotonic Deadline Monotonic deadlines less than period priorities assigned according to inverse of relative deadlines

22 Examples and Comparison Example τ 1 τ 2 C i 2 4 T i 5 7 What is the utilization factor? Is the task set schedulable? What is the schedule produced by EDF/RM?

23 Examples and Comparison Example U = =

24 Examples and Comparison Example 2 τ 1 τ 2 τ 3 C i T i What is the utilization factor? Is the task set schedulable? What is the schedule produced by RM?

25 Examples and Comparison Example 3 τ 1 τ 2 τ 3 C i T i What is the utilization factor? Is the task set schedulable? What is the schedule produced by RM/EDF?

26 Examples and Comparison Comparison: RM vs EDF RM EDF implementation multi-level priority heap, O(log n) queue, O(1) processor utilization guarantee only for 0.69, full utilization practice 0.88 context switches many few guarantee test nontrivial simple predictability good bad in practice: fixed-priority schedulers

27 Examples and Comparison Note on Predictability overload condition (processor utilization factor > 1), which tasks will not meet deadlines? EDF unpredictable RM predictable (tasks with the longest period) reminder: Apollo 11 landing processor overload RM algorithm used predictable behaviour decision possible

28 Aperiodic Jobs in Priority-driven Systems real systems combination of periodic and aperiodic tasks main approaches: fixed priority servers: scheduling of periodic tasks done by fixed priority algorithm (typically RM) dynamic priority servers: scheduling of periodic tasks done by dynamic priority algorithm (typically EDF)

29 Assumptions and Remarks periodic tasks scheduled by a fixed priority algorithm (specifically rate monotonic) all periodic tasks start simultaneously at time t = 0, deadline = period arrival times of aperiodic tasks are unknown beforehand preemption goal: meet deadlines of periodic tasks, minimize response time of aperiodic tasks ordering of aperiodic tasks not discussed (done by some aperiodic scheduling algorithm, we will use FIFO)

30 Example Periodic jobs: Aperiodic jobs: τ 1 τ 2 C i 1 2 T i 4 6 J 1 J 2 J 3 J 4 a i C i

31 Background Scheduling Background Scheduling aperiodic tasks scheduled in background (when no periodic task is running) schedule of periodic tasks is not changed major problem: high periodic load poor response times for aperiodic tasks

32 Background Scheduling Example

33 Background Scheduling Realization

34 Polling Server Server for Aperiodic Tasks periodic task whose purpose is to service aperiodic requests period T S, computation time C S (capacity) scheduled in the same way as periodic tasks note: selection of T S, C S total utilization factor must remain 1

35 Polling Server Polling Server the simplest variant of server when active: serve pending aperiodic requests within its capacity no aperiodic requests are pending suspend

36 Polling Server Polling Server: Example

37 Polling Server Improving Polling Server how can we improve the performance? (consider the previous example)

38 Deferrable Server Deferrable Server similar to polling server if no aperiodic requests are pending: suspend itself preserve capacity until the end of the period if aperiodic request arrives later during the period: it is served at the beginning of the period capacity is fully replenished

39 Deferrable Server Deferrable Server: Example

40 Deferrable Server Deferrable Server: Properties deferrable server provides better responsiveness than polling server schedulability analysis more complicated defferable server is not equivalent to periodic task

41 Deferrable Server Deferrable Server: Example 2

42 Priority Exchange Priority Exchange periodic server with high priority preserves capacity by exchanging it for the execution time of a lower-priority task: at the beginning of the period: replenish the capacity aperiodic requests are pending: serve them no aperiodic requests are pending: exchange execution time with the active periodic task with the highest priority the priority exchange is performed repeatedly

43 Priority Exchange Example

44 Slack Stealing Slack Stealing no periodic server; passive task Slack Stealer slack = d i t c i (t) main idea: no benefit in early completion of periodic tasks when aperiodic request arrives: steal available slacks better responsiveness, more complicated schedulability analysis

45 Slack Stealing Example

46 Discussion Non-existence of Optimal Servers Theorem For any set of periodic tasks ordered on a given fixed-priority scheme and aperiodic requests ordered according to a given aperiodic queueing discipline, there does not exist any valid algorithm that minimizes the response time of every soft aperiodic request. Similarly for average response time.

47 Discussion Evaluation of Fixed Priority Servers

48 Discussion Example periodic tasks τ 1 τ 2 C i 1 2 T i 5 8 aperiodic tasks J 1 J 2 J 3 a i C i Create schedules and determine response times: background scheduling polling server with intermediate priority deferrable server with the highest priority

49 Discussion Summary of the Lecture scheduling periodic tasks cyclic scheduling (static schedule) rate monotonic scheduling (static priorities) earliest deadline first scheduling (dynamic priorities) processor utilization factor, schedulable utilization aperiodic tasks in periodic systems: fixed priority servers

### 4. Fixed-Priority Scheduling

Simple workload model 4. Fixed-Priority Scheduling Credits to A. Burns and A. Wellings The application is assumed to consist of a fixed set of tasks All tasks are periodic with known periods This defines

### Dynamic Priority Scheduling. Priority-Driven Scheduling. Schedulable Utilization of FIFO

Dynamic Priority Scheduling Static-priority: Rate Monotonic (RM): The shorter the period, the higher the priority. [Liu+Layland 73] Deadline Monotonic (DM): The shorter the relative deadline, the higher

### Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems

Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems Ingo Sander ingo@kth.se Liu: Chapter 7 IL2212 Embedded Software 1 Outline l System Model and Assumptions l Scheduling Aperiodic Jobs l

### Real Time Scheduling Basic Concepts. Radek Pelánek

Real Time Scheduling Basic Concepts Radek Pelánek Basic Elements Model of RT System abstraction focus only on timing constraints idealization (e.g., zero switching time) Basic Elements Basic Notions task

### Priority-Driven Scheduling

Priority-Driven Scheduling Advantages of Priority-Driven Scheduling Priority-driven scheduling is easy to implement. It does not require the information on the release times and execution times of the

### 3. Scheduling issues. Common approaches /1. Common approaches /2. Common approaches /3. 2012/13 UniPD / T. Vardanega 23/01/2013. Real-Time Systems 1

Common approaches /1 3. Scheduling issues Clock-driven (time-driven) scheduling Scheduling decisions are made beforehand (off line) and carried out at predefined time instants The time instants normally

### Lecture 3 Theoretical Foundations of RTOS

CENG 383 Real-Time Systems Lecture 3 Theoretical Foundations of RTOS Asst. Prof. Tolga Ayav, Ph.D. Department of Computer Engineering Task States Executing Ready Suspended (or blocked) Dormant (or sleeping)

### Real-Time Scheduling (Part 1) (Working Draft) Real-Time System Example

Real-Time Scheduling (Part 1) (Working Draft) Insup Lee Department of Computer and Information Science School of Engineering and Applied Science University of Pennsylvania www.cis.upenn.edu/~lee/ CIS 41,

### Module 6. Embedded System Software. Version 2 EE IIT, Kharagpur 1

Module 6 Embedded System Software Version 2 EE IIT, Kharagpur 1 Lesson 30 Real-Time Task Scheduling Part 2 Version 2 EE IIT, Kharagpur 2 Specific Instructional Objectives At the end of this lesson, the

### Common Approaches to Real-Time Scheduling

Common Approaches to Real-Time Scheduling Clock-driven time-driven schedulers Priority-driven schedulers Examples of priority driven schedulers Effective timing constraints The Earliest-Deadline-First

### The simple case: Cyclic execution

The simple case: Cyclic execution SCHEDULING PERIODIC TASKS Repeat a set of aperiodic tasks at a specific rate (cycle) 1 2 Periodic tasks Periodic tasks (the simplified case) Scheduled to run Arrival time

### Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2

Real-time Scheduling of Periodic Tasks (1) Advanced Operating Systems Lecture 2 Lecture Outline Scheduling periodic tasks The rate monotonic algorithm Definition Non-optimality Time-demand analysis...

### COMPLEX EMBEDDED SYSTEMS

COMPLEX EMBEDDED SYSTEMS Real-Time Scheduling Summer Semester 2012 System and Software Engineering Prof. Dr.-Ing. Armin Zimmermann Contents Introduction Scheduling in Interactive Systems Real-Time Scheduling

Aperiodic Task Scheduling Jian-Jia Chen (slides are based on Peter Marwedel) TU Dortmund, Informatik 12 Germany Springer, 2010 2014 年 11 月 19 日 These slides use Microsoft clip arts. Microsoft copyright

### Predictable response times in event-driven real-time systems

Predictable response times in event-driven real-time systems Automotive 2006 - Security and Reliability in Automotive Systems Stuttgart, October 2006. Presented by: Michael González Harbour mgh@unican.es

### Real- Time Scheduling

Real- Time Scheduling Chenyang Lu CSE 467S Embedded Compu5ng Systems Readings Ø Single-Processor Scheduling: Hard Real-Time Computing Systems, by G. Buttazzo. q Chapter 4 Periodic Task Scheduling q Chapter

### Operating System Aspects. Real-Time Systems. Resource Management Tasks

Operating System Aspects Chapter 2: Basics Chapter 3: Multimedia Systems Communication Aspects and Services Multimedia Applications and Communication Multimedia Transfer and Control Protocols Quality of

### Scheduling Algorithm and Analysis

Scheduling Algorithm and Analysis EDF (Module 28) Yann-Hang Lee Arizona State University yhlee@asu.edu (480) 727-7507 Summer 2014 Priority-Driven Scheduling of Periodic Tasks Why priority-driven scheduling

Aperiodic Task Scheduling Gerhard Fohler Mälardalen University, Sweden gerhard.fohler@mdh.se Real-Time Systems Gerhard Fohler 2005 Non Periodic Tasks So far periodic events and tasks what about others?

### Real-Time Software. Basic Scheduling and Response-Time Analysis. René Rydhof Hansen. 21. september 2010

Real-Time Software Basic Scheduling and Response-Time Analysis René Rydhof Hansen 21. september 2010 TSW (2010e) (Lecture 05) Real-Time Software 21. september 2010 1 / 28 Last Time Time in a real-time

### Lecture Outline Overview of real-time scheduling algorithms Outline relative strengths, weaknesses

Overview of Real-Time Scheduling Embedded Real-Time Software Lecture 3 Lecture Outline Overview of real-time scheduling algorithms Clock-driven Weighted round-robin Priority-driven Dynamic vs. static Deadline

### Resource Reservation & Resource Servers. Problems to solve

Resource Reservation & Resource Servers Problems to solve Hard-deadline tasks may be Periodic or Sporadic (with a known minimum arrival time) or Non periodic (how to deal with this?) Soft-deadline tasks

### EECE 276 Embedded Systems

EECE 276 Embedded Systems RTOS Basics Process scheduling EECE 276 Embedded Systems RTOS Basics 1 RTOS Basics Kernel: schedules tasks Tasks: concurrent activity with its own state (PC, registers,stack,

### 174: Scheduling Systems. Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 TIMING ANALYSIS IN NETWORKED MEASUREMENT CONTROL SYSTEMS

174: Scheduling Systems Emil Michta University of Zielona Gora, Zielona Gora, Poland 1 Timing Analysis in Networked Measurement Control Systems 1 2 Introduction to Scheduling Systems 2 3 Scheduling Theory

### Real-Time Architectures 2003/2004. Overview. Issues, questions of interest. Scheduling Analysis. Johan Lukkien

Real-Time Architectures 2003/2004 Scheduling Analysis Johan Lukkien 19-04-2004 1 Overview Algorithm and problem classes Simple, periodic taskset problem statement feasibility criteria utilization bound

### Commonly Used Approaches to Real-Time Scheduling

Integre Technical Publishing Co., Inc. Liu January 13, 2000 8:46 a.m. chap4 page 60 C H A P T E R 4 Commonly Used Approaches to Real-Time Scheduling This chapter provides a brief overview of three commonly

### Real-time scheduling algorithms, task visualization

Rochester Institute of Technology RIT Scholar Works Theses Thesis/Dissertation Collections 2006 Real-time scheduling algorithms, task visualization Kevin Churnetski Follow this and additional works at:

### Scheduling Real-time Tasks: Algorithms and Complexity

Scheduling Real-time Tasks: Algorithms and Complexity Sanjoy Baruah The University of North Carolina at Chapel Hill Email: baruah@cs.unc.edu Joël Goossens Université Libre de Bruxelles Email: joel.goossens@ulb.ac.be

### Scheduling. from CPUs to Clusters to Grids. MCSN N. Tonellotto Complements of Distributed Enabling Platforms

Scheduling from CPUs to Clusters to Grids 1 Outline Terminology CPU Scheduling Real-time Scheduling Cluster Scheduling Grid Scheduling Cloud Scheduling 2 General Scheduling refers to allocate limited resources

### Real-Time Operating Systems

Real-Time Operating Systems 1 Summary Introduction Basic concepts RT Scheduling Aperiodic task scheduling Periodic task scheduling Embedded RTOS Source: G.Buttazzo, Hard Real-Time Computing Systems Predictable

### Lecture Notes 12: Scheduling - Cont.

Online Algorithms 18.1.2012 Professor: Yossi Azar Lecture Notes 12: Scheduling - Cont. Scribe:Inna Kalp 1 Introduction In this Lecture we discuss 2 scheduling models. We review the scheduling over time

### CPU scheduling. Kevin Marquet. September INSA Lyon / IF CITI Lab/INRIA Socrate

CPU scheduling Kevin Marquet INSA Lyon / IF CITI Lab/INRIA Socrate September 2014 CPU-I/O burst CPU burst : process requires CPU execution I/O burst : process waits for I/O completion (CPU-IO burst) (burst

### CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS

CPU SCHEDULING CPU SCHEDULING (CONT D) Aims to assign processes to be executed by the CPU in a way that meets system objectives such as response time, throughput, and processor efficiency Broken down into

### Partition Scheduling in APEX Runtime Environment for Embedded Avionics Software

Partition Scheduling in APEX Runtime Environment for Embedded Avionics Software Yang-Hang Lee CISE Department, University of Florida Gainesville, FL 32611 Phone: (352) 392-1536 Fax: (352) 392-1220 Email:

### Chapter 6 Process Scheduling

1 Chapter 6 Process Scheduling CPU scheduling deals with the problem of deciding which of the processes in the ready queue is to be allocated the CPU. There are many different CPU-scheduling algorithms.

### Introduction to CPU Scheduling

Introduction to CPU Scheduling Minsoo Ryu Department of Computer Science and Engineering 2 1 Process Scheduling Page X 2 Priority-Based Scheduling Page X 3 Proportional Share Scheduling Page X 4 Q & A

Periodic tasks Arrival time C: computing time F: finishing/response time SCHEDULING PERIODIC TASKS R: release time T:period D: deadline time 1 2 Periodic tasks (the simplified case) Scheduled to run Arrival

### Outline. EE899.6 Embedded System and SOC. Embedded Operating Systems. Operating Systems. Regular Operating Systems. Embedded Operating Systems

Outline EE899.6 Embedded System and SOC RTOS and Scheduling In this slide set, we will learn: The role of embedded operating systems Commercial and free real-time operating systems Department of Electrical

### Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server

Improved Handling of Soft Aperiodic Tasks in Offline Scheduled Real-Time Systems using Total Bandwidth Server Gerhard Fohler, Tomas Lennvall Mälardalen University Västeras, Sweden gfr, tlv @mdh.se Giorgio

### REAL TIME OPERATING SYSTEMS. Lesson-18:

REAL TIME OPERATING SYSTEMS Lesson-18: Round Robin Time Slicing of tasks of equal priorities 1 1. Common scheduling models 2 Common scheduling models Cooperative Scheduling of ready tasks in a circular

### Performance of Algorithms for Scheduling Real-Time Systems with Overrun and Overload

Published in the Proceedings of the Eleventh Euromicro Conference on Real-Time Systems, 9-11 June 1999, held at University of York, England Performance of Algorithms for Scheduling Real-Time Systems with

CPU Scheduling The scheduler is the component of the kernel that selects which process to run next. The scheduler (or process scheduler, as it is sometimes called) can be viewed as the code that divides

### Real-Time Scheduling 1 / 39

Real-Time Scheduling 1 / 39 Multiple Real-Time Processes A runs every 30 msec; each time it needs 10 msec of CPU time B runs 25 times/sec for 15 msec C runs 20 times/sec for 5 msec For our equation, A

### CPU SCHEDULING CS 409, FALL 2013 SCHEDULING/1

CPU SCHEDULING Aims to assign processes to be executed by the CPU in a way that meets system objectives such as response time, throughput, and processor efficiency Broken down into three separate functions:

### HARD REAL-TIME SCHEDULING: THE DEADLINE-MONOTONIC APPROACH 1. Department of Computer Science, University of York, York, YO1 5DD, England.

HARD REAL-TIME SCHEDULING: THE DEADLINE-MONOTONIC APPROACH 1 N C Audsley A Burns M F Richardson A J Wellings Department of Computer Science, University of York, York, YO1 5DD, England ABSTRACT The scheduling

### CPU Scheduling. CPU Scheduling

CPU Scheduling Electrical and Computer Engineering Stephen Kim (dskim@iupui.edu) ECE/IUPUI RTOS & APPS 1 CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling

### Multi-core real-time scheduling

Multi-core real-time scheduling Credits: Anne-Marie Déplanche, Irccyn, Nantes (many slides come from her presentation at ETR, Brest, September 2011) 1 Multi-core real-time scheduling! Introduction: problem

### Lec. 7: Real-Time Scheduling

Lec. 7: Real-Time Scheduling Part 1: Fixed Priority Assignment Vijay Raghunathan ECE568/CS590/ECE495/CS490 Spring 2011 Reading List: RM Scheduling 2 [Balarin98] F. Balarin, L. Lavagno, P. Murthy, and A.

### Effective Scheduling Algorithm and Scheduler Implementation for use with Time-Triggered Co-operative Architecture

http://dx.doi.org/10.5755/j01.eee.20.6.7282 ELEKTRONIKA IR ELEKTROTECHNIKA, ISSN 1392 1215, VOL. 20, NO. 6, 2014 Effective Scheduling Algorithm and Scheduler Implementation for use with Time-Triggered

### Last Class: Threads and Scheduling! Today: More on Scheduling Algorithms!

Last Class: Threads and Scheduling! Thread: sequential execution stream within a process Kernel threads versus user-level threads Goals for Scheduling: Minimize average response time Maximize throughput

### LAB 5: Scheduling Algorithms for Embedded Systems

LAB 5: Scheduling Algorithms for Embedded Systems Say you have a robot that is exploring an area. The computer controlling the robot has a number of tasks to do: getting sensor input, driving the wheels,

### Processor Scheduling. Background. Scheduling. Scheduling

Background Processor Scheduling The previous lecture introduced the basics of concurrency Processes and threads Definition, representation, management We now understand how a programmer can spawn concurrent

### ICS 143 - Principles of Operating Systems

ICS 143 - Principles of Operating Systems Lecture 5 - CPU Scheduling Prof. Nalini Venkatasubramanian nalini@ics.uci.edu Note that some slides are adapted from course text slides 2008 Silberschatz. Some

### Last Class: Processes

Last Class: Processes A process is the unit of execution. Processes are represented as Process Control Blocks in the OS PCBs contain process state, scheduling and memory management information, etc A process

### EE8205: Embedded Computer System Multitasking and Real-time Operating System -- Problem Set 2014 Solutions

EE8205: Embedded Computer System Multitasking and Real-time Operating System -- Problem Set 2014 Solutions Out: November 26, 2014 P. 1: What is the difference between turnaround time and response time.

### Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Real-Time Systems Prof. Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture No. # 06 Basics of Real-Time Task Scheduling Let us get started.

### COS 318: Operating Systems. CPU Scheduling. Kai Li and Andy Bavier Computer Science Department Princeton University

COS 318: Operating Systems CPU Scheduling Kai Li and Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall13/cos318/ Quiz 1 u Avg score: 10.7 u Suggested

### Short Term Scheduling. Scheduling Policies. Today: More on Scheduling Algorithms. Criteria for Comparing Scheduling Algorithms. Goals for scheduling

Today: More on Scheduling Algorithms Goals for scheduling FCFS & Round Robin SJF Multilevel Feedback Queues Short Term Scheduling The kernel runs the scheduler at least when 1. a process switches from

### Chapter 6 CPU Scheduling. Contents

Contents 1. Introduction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 9. Memory Management 10. Virtual

### N. Audsley. A. Burns Department of Computer Science, University of York, UK. ABSTRACT

REAL-TIME SYSTEM SCHEDULING N Audsley A Burns Department of Computer Science, University of York, UK ABSTRACT Recent results in the application of scheduling theory to dependable real-time systems are

### CPU Scheduling. Prof. Sirer (dr. Willem de Bruijn) CS 4410 Cornell University

CPU Scheduling Prof. Sirer (dr. Willem de Bruijn) CS 4410 Cornell University Problem You are the cook at the state st. diner customers continually enter and place their orders Dishes take varying amounts

### A Survey of Fitting Device-Driver Implementations into Real-Time Theoretical Schedulability Analysis

A Survey of Fitting Device-Driver Implementations into Real-Time Theoretical Schedulability Analysis Mark Stanovich Florida State University, USA Contents 1 Introduction 2 2 Scheduling Theory 3 2.1 Workload

### Process and Thread Scheduling. Raju Pandey Department of Computer Sciences University of California, Davis Winter 2005

Process and Thread Scheduling Raju Pandey Department of Computer Sciences University of California, Davis Winter 2005 Scheduling Context switching an interrupt occurs (device completion, timer interrupt)

CHAPTER 5 CPU scheduling is the basis of multiprogrammed operating systems. By switching the CPU among processes, the operating system can make the computer more productive. In this chapter, we introduce

### CPU Scheduling. Outline

CPU Scheduling Thomas Plagemann (with slides from Otto J. Anshus, Kai Li, Pål Halvorsen and Andrew S. Tanenbaum) Goals of scheduling Outline Scheduling algorithms: FCFS/FIFO, RR, STCF/SRTCF Priority (CTSS,

### Exercises : Real-time Scheduling analysis

Exercises : Real-time Scheduling analysis Frank Singhoff University of Brest June 2013 Exercise 1 : Fixed priority scheduling and Rate Monotonic priority assignment Given a set of tasks defined by the

### CPU Scheduling. Core Definitions

CPU Scheduling General rule keep the CPU busy; an idle CPU is a wasted CPU Major source of CPU idleness: I/O (or waiting for it) Many programs have a characteristic CPU I/O burst cycle alternating phases

### CPU Scheduling. Overview: CPU Scheduling. [SGG7/8/9] Chapter 5. Basic Concepts. CPU Scheduler. Scheduling Criteria. Optimization Criteria

TDDB68 Concurrent programming and operating systems CPU Scheduling Overview: CPU Scheduling CPU bursts and I/O bursts Scheduling Criteria Scheduling Algorithms Priority Inversion Problem Multiprocessor

### CS 4410 Operating Systems. CPU Scheduling. Summer 2011 Cornell University

CS 4410 Operating Systems CPU Scheduling Summer 2011 Cornell University Today How does CPU manage the execution of simultaneously ready processes? Example Multitasking - Scheduling Scheduling Metrics Scheduling

### An Efficient Non-Preemptive Real-Time Scheduling

An Efficient Non-Preemptive Real-Time Scheduling Wenming Li, Krishna Kavi and Robert Akl Department of Computer Science and Engineering The University of North Texas Denton, Texas 7623, USA {wenming, kavi,

### Integrating job parallelism in real-time scheduling theory

Integrating job parallelism in real-time scheduling theory Sébastien Collette Liliana Cucu Joël Goossens Abstract We investigate the global scheduling of sporadic, implicit deadline, real-time task systems

### CPU Scheduling Yi Shi Fall 2015 Xi an Jiaotong University

CPU Scheduling Yi Shi Fall 2015 Xi an Jiaotong University Goals for Today CPU Schedulers Scheduling Algorithms Algorithm Evaluation Metrics Algorithm details Thread Scheduling Multiple-Processor Scheduling

### Least Slack Time Rate First: an Efficient Scheduling Algorithm for Pervasive Computing Environment

Journal of Universal Computer Science, vol. 17, no. 6 (2011), 912-925 submitted: 15/5/10, accepted: 30/11/10, appeared: 28/3/11 J.UCS Least Slack Time Rate First: an Efficient Scheduling Algorithm for

### Outline. V Computer Systems Organization II (Honors) (Introductory Operating Systems) CPU Scheduling: Overview. Scheduling: Components

Outline V22.0202-001 Computer Systems Organization II (Honors) (Introductory Operating Systems) Lecture 10 CPU Scheduling February 23, 2005 Announcements Lab 3 due on March 2 nd, Demos on March 2 nd and

### CPU Scheduling. Basic Concepts. Basic Concepts (2) Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems

Basic Concepts Scheduling Criteria Scheduling Algorithms Batch systems Interactive systems Based on original slides by Silberschatz, Galvin and Gagne 1 Basic Concepts CPU I/O Burst Cycle Process execution

### Aperiodic Task Scheduling for Real-Time Systems. Brinkley Sprunt

Aperiodic Task Scheduling for Real-Time Systems Ph.D. Dissertation Brinkley Sprunt Department of Electrical and Computer Engineering Carnegie Mellon University August 199 Ph.D. Dissertation Submitted in

### AN APPROPRIATE ENGINEERING APPROACH

PREEMPTIVE PRIORITY BASED SCHEDULING: AN APPROPRIATE ENGINEERING APPROACH Alan Burns Real-Time Systems Research Group Department of Computer Science University of York, UK ABSTRACT Scheduling theories

### 4003-440/4003-713 Operating Systems I. Process Scheduling. Warren R. Carithers (wrc@cs.rit.edu) Rob Duncan (rwd@cs.rit.edu)

4003-440/4003-713 Operating Systems I Process Scheduling Warren R. Carithers (wrc@cs.rit.edu) Rob Duncan (rwd@cs.rit.edu) Review: Scheduling Policy Ideally, a scheduling policy should: Be: fair, predictable

### Today s topic: So far, we have talked about. Question. Task models

Overall Stucture of Real Time Systems So far, we have talked about Task...... Task n Programming Languages to implement the Tasks Run-TIme/Operating Systems to run the Tasks RTOS/Run-Time System Hardware

### Capacity Sharing and Stealing in Dynamic Server-based Real-Time Systems

Capacity Sharing and Stealing in Dynamic Server-based Real-Time Systems Luís Nogueira, Luís Miguel Pinho IPP Hurray Research Group Polythecnic Institute of Porto, Portugal {luis,lpinho}@dei.isep.ipp.pt

### Overzealous autoconfig. Chapter 6: Scheduling 1

Overzealous autoconfig 1 Start of Lecture: February 7, 2014 2 Reminders Thought Question for Exercise 2: should be from different parts of readings (unless they are high-level) if your question corresponds

### RTOS Real-Time Operating System

RTOS Real-Time Operating System What is a real-time system? A real-time system is any information processing system which has to respond to externally generated input stimuli within a finite and specified

### Modular Real-Time Linux

Modular Real-Time Linux Shinpei Kato Department of Information and Computer Science, Keio University 3-14-1 Hiyoshi, Kohoku, Yokohama, Japan shinpei@ny.ics.keio.ac.jp Nobuyuki Yamasaki Department of Information

### Using EDF in Linux: SCHED DEADLINE. Luca Abeni luca.abeni@unitn.it

Using EDF in Linux: Luca Abeni luca.abeni@unitn.it Using Fixed Priorities in Linux SCHED FIFO and SCHED RR use fixed priorities They can be used for real-time tasks, to implement RM and DM Real-time tasks

Scheduling Sporadic Tasks with Shared Resources in Hard-Real- Systems Kevin Jeffay * University of North Carolina at Chapel Hill Department of Computer Science Chapel Hill, NC 27599-3175 jeffay@cs.unc.edu

### Keywords: CPU, RTOS, LLF, EDF, PCP

Volume 4, Issue 7, July 2014 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Comparison of Different

### Scheduling of Real- Time processes, strategies and analysis

FYS 4220 / 9220 2011 / #7 Real Time and Embedded Data Systems and Computing Scheduling of Real- Time processes, strategies and analysis T.B. Skaali, Department of Physics, University of Oslo) Some definitions

### Embedded Applications. COMP595EA Chapter 5 Software Architectures

Embedded Applications COMP595EA Chapter 5 Software Architectures Goal: Control of Response Time Software is normally designed to accomplish a task in an efficient manner. The primary concern about the

### Scheduling I. Introduction to scheduling. Scheduling algorithms

Scheduling I Introduction to scheduling Scheduling algorithms 1 Role of Dispatcher vs. Scheduler Dispatcher Low-level mechanism Responsibility: context switch Scheduler High-level policy Responsibility:

### SOFTWARE VERIFICATION RESEARCH CENTRE THE UNIVERSITY OF QUEENSLAND. Queensland 4072 Australia TECHNICAL REPORT. No. 02-19. Real-Time Scheduling Theory

SOFTWARE VERIFICATION RESEARCH CENTRE THE UNIVERSITY OF QUEENSLAND Queensland 4072 Australia TECHNICAL REPORT No. 02-19 Real-Time Scheduling Theory C. J. Fidge April 2002 Phone: +61 7 3365 1003 Fax: +61

### Today. Intro to real-time scheduling Cyclic executives. Scheduling tables Frames Frame size constraints. Non-independent tasks Pros and cons

Today Intro to real-time scheduling Cyclic executives Scheduling tables Frames Frame size constraints Generating schedules Non-independent tasks Pros and cons Real-Time Systems The correctness of a real-time

Task Attribute-Based Scheduling - Extending Ada s Support for Scheduling A. Burns and A.J. Wellings Department of Computer Science University of York, UK Email: {burns,andy}@cs.york.ac.uk Abstract. Scheduling

### COS 318: Operating Systems. CPU Scheduling. (http://www.cs.princeton.edu/courses/cos318/)

COS 318: Operating Systems CPU Scheduling (http://www.cs.princeton.edu/courses/cos318/) Today s Topics! CPU scheduling! CPU Scheduling algorithms 2 When to Schedule?! Process/thread creation! Process/thread

### Introduction to process scheduling. Process scheduling and schedulers Process scheduling criteria Process scheduling algorithms

Lecture Overview Introduction to process scheduling Process scheduling and schedulers Process scheduling criteria Process scheduling algorithms First-come, first-serve Shortest-job-first Priority Round-robin

### Quality of Service su Linux: Passato Presente e Futuro

Quality of Service su Linux: Passato Presente e Futuro Luca Abeni luca.abeni@unitn.it Università di Trento Quality of Service su Linux:Passato Presente e Futuro p. 1 Quality of Service Time Sensitive applications

### Real-Time Multi-Core Virtual Machine Scheduling in Xen

Real-Time Multi-Core Virtual Machine Scheduling in Xen Sisu Xi Meng Xu Chenyang Lu Linh T.X. Phan Christopher Gill Oleg Sokolsky Insup Lee Washington University in St. Louis University of Pennsylvania

### Operating Systems. III. Scheduling. http://soc.eurecom.fr/os/

Operating Systems Institut Mines-Telecom III. Scheduling Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ Outline Basics of Scheduling Definitions Switching

### W4118 Operating Systems. Instructor: Junfeng Yang

W4118 Operating Systems Instructor: Junfeng Yang Outline Introduction to scheduling Scheduling algorithms 1 Direction within course Until now: interrupts, processes, threads, synchronization Mostly mechanisms