Resource Reservation & Resource Servers. Problems to solve



Similar documents
Aperiodic Task Scheduling

4. Fixed-Priority Scheduling

Scheduling Aperiodic and Sporadic Jobs in Priority- Driven Systems

Periodic Task Scheduling

Predictable response times in event-driven real-time systems

Real- Time Scheduling

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

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

Aperiodic Task Scheduling for Real-Time Systems. Brinkley Sprunt

REAL TIME OPERATING SYSTEMS. Lesson-18:

Lecture 3 Theoretical Foundations of RTOS

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

CPU SCHEDULING (CONT D) NESTED SCHEDULING FUNCTIONS

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

CPU Scheduling. CPU Scheduling

Deciding which process to run. (Deciding which thread to run) Deciding how long the chosen process can run

Real-Time Component Software. slide credits: H. Kopetz, P. Puschner

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

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

Comparison between scheduling algorithms in RTLinux and VxWorks

Operating Systems. III. Scheduling.

Real-Time Scheduling 1 / 39

ICS Principles of Operating Systems

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

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

Chapter 19: Real-Time Systems. Overview of Real-Time Systems. Objectives. System Characteristics. Features of Real-Time Systems

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

/ Operating Systems I. Process Scheduling. Warren R. Carithers Rob Duncan

Scheduling. Yücel Saygın. These slides are based on your text book and on the slides prepared by Andrew S. Tanenbaum

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

Using EDF in Linux: SCHED DEADLINE. Luca Abeni

Virtual scheduling for compositional real-time guarantees

Operatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings

CPU Scheduling Outline

Quality of Service su Linux: Passato Presente e Futuro

OPERATING SYSTEMS SCHEDULING

Operating Systems Lecture #6: Process Management

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

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

Partition Scheduling in APEX Runtime Environment for Embedded Avionics Software

Intel DPDK Boosts Server Appliance Performance White Paper

Objectives. Chapter 5: CPU Scheduling. CPU Scheduler. Non-preemptive and preemptive. Dispatcher. Alternating Sequence of CPU And I/O Bursts

CPU Scheduling 101. The CPU scheduler makes a sequence of moves that determines the interleaving of threads.

The simple case: Cyclic execution

CPU Scheduling. Multitasking operating systems come in two flavours: cooperative multitasking and preemptive multitasking.

2. is the number of processes that are completed per time unit. A) CPU utilization B) Response time C) Turnaround time D) Throughput

Exercises : Real-time Scheduling analysis

Aperiodic Task Scheduling

Run-time Resource Management in SOA Virtualized Environments. Danilo Ardagna, Raffaela Mirandola, Marco Trubian, Li Zhang

Real Time Scheduling Basic Concepts. Radek Pelánek

Scheduling. Scheduling. Scheduling levels. Decision to switch the running process can take place under the following circumstances:

Real- Time Mul,- Core Virtual Machine Scheduling in Xen

CPU Scheduling. Core Definitions

CS Fall 2008 Homework 2 Solution Due September 23, 11:59PM

Real-Time Systems Hermann Härtig Real-Time Communication (following Kopetz, Liu, Schönberg, Löser)

Design and Implementation of a POSIX Compliant Sporadic Server for the Linux Kernel

CS640: Introduction to Computer Networks. Why a New Service Model? Utility curve Elastic traffic. Aditya Akella. Lecture 20 QoS

Enhancing the Monitoring of Real-Time Performance in Linux

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

How To Compare Real Time Scheduling To A Scheduled Scheduler On Linux On A Computer System With A Visualization System

Earliest Due Date (EDD) [Ferrari] Delay EDD. Jitter EDD

Efficient Scheduling of Sporadic, Aperiodic, and Periodic Tasks with Complex Constraints

Advanced Operating Systems (M) Dr Colin Perkins School of Computing Science University of Glasgow

AN APPROPRIATE ENGINEERING APPROACH

The International Journal Of Science & Technoledge (ISSN X)

Resource Utilization of Middleware Components in Embedded Systems

Sources: Chapter 6 from. Computer Networking: A Top-Down Approach Featuring the Internet, by Kurose and Ross

Final Report. Cluster Scheduling. Submitted by: Priti Lohani

Konzepte von Betriebssystem-Komponenten. Linux Scheduler. Valderine Kom Kenmegne Proseminar KVBK Linux Scheduler Valderine Kom

6.6 Scheduling and Policing Mechanisms

Quality of Service versus Fairness. Inelastic Applications. QoS Analogy: Surface Mail. How to Provide QoS?

Operating System Tutorial

The network we see so far. Internet Best Effort Service. Is best-effort good enough? An Audio Example. Network Support for Playback

Process Scheduling. Process Scheduler. Chapter 7. Context Switch. Scheduler. Selection Strategies

Real-time scheduling algorithms, task visualization

Scheduling Algorithms

Common Approaches to Real-Time Scheduling

Real-Time (Paradigms) (51)

Efficient Parallel Processing on Public Cloud Servers Using Load Balancing

CS423 Spring 2015 MP4: Dynamic Load Balancer Due April 27 th at 9:00 am 2015

Operating Systems Concepts: Chapter 7: Scheduling Strategies

Main Points. Scheduling policy: what to do next, when there are multiple threads ready to run. Definitions. Uniprocessor policies

Keywords: Dynamic Load Balancing, Process Migration, Load Indices, Threshold Level, Response Time, Process Age.

Implementing AUTOSAR Scheduling and Resource Management on an Embedded SMT Processor

Multimedia Requirements. Multimedia and Networks. Quality of Service

Comp 204: Computer Systems and Their Implementation. Lecture 12: Scheduling Algorithms cont d

Real Time Scheduling Theory: A Historical Perspective

Transcription:

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 (and/or non RT) may be Various types (periodic or non periodic etc) We want to shedule the mixed task set so that All hard tasks meet their deadlines All soft tasks get average response times as low as possible Best average performance 2 1

Resource Reservation Application Hard real-time, Software real-time, Others? Platform Hardware Resources: CPU cycles, memory blocks Resource Reservation/Virtual Resources Application Software Components: Hard real-time, Software real-time, Others? Resource Servers: e.g. HRT servers, SRT servers,? Platform Hardware Resources: CPU cycles, memory blocks 2

Resource reservation by servers Creating a periodic server Ts=(Cs, Ps) for processing aperiodic workload and a queue to buffer tasks that arrive at different times Create one or more servers for different classes of tasks Non-periodic tasks are scheduled in the periodic server s time slots. This policy could be based on deadline, arrival time, or computation time. Algorithms all algorithms behave in the same manner when there are enough aperiodic tasks to execute - Polling Server (bandwidth non-preserving) - Deferrable Server (bandwidth preserving) - Priority Exchange Server (bandwidth preserving) 5 Polling Server (PS) Idea: Consider that all hard tasks are periodic Create a periodic task (a server) with period Ts and capacity Cs (the allowed computing time in each period) Schedule the server as a periodic task (Cs, Ts) Run time behaviour: Once the server is active, it serves all pending (buffered) aperiodic requests within its capacity Cs according to other algorithms e.g FCFS, SJF etc If no aperiodic requests, the capacity is lost: if a request arrives after the server has been suspended, it must wait until the next polling period 6 3

Deferrable server (PS preserving capacity) [Lehoczky and Sha et al, 87,95] It is similar to Polling server The only difference is that the capacity of DS will be preserved if no pending requests upon the activation of the server. The capacity is maintained until the end of the server within the period, an aperiodic request will be served; thus improving average response time 7 Priority Exchange (interesting!) Similar to PS and DS, PE has a periodic server (usually with high priority) for serving aperiodic tasks. The difference is in the way how the capacity of the server is preserved Run Time Behaviour: If the PE server is currently the task with highest priority but there is no aperiodic request pending, then the periodic task with next highest priority runs and the server is assigned with the periodic task s lower priority Thus the capacity of the server is not lost but preserved with a lower priority (the exchange continues until new aperiodic requests arrive) 8 4

So far, we should know How to schedule non-periodic task sets Optimal scheduling algorithms Precedence constraints How to schedule periodic task sets Schedulability tests Calculation of response time How to schedule mixed task sets Ensure the timing constraints of non-periodic RT tasks Improve response times for soft tasks How to avoid un-bounded priority inversion Resource access protocols Calculation of blocking time 9 Implementation of Resource Servers Periodic Servers Servers as periodic tasks: Hart Real-Time: constrained deadline Soft Real-Time: arbitrary deadline/non-deadline Other servers E.g. Bounded Delay Server Round Robin + Worst Case Delay 5

#CPU cycles 9/25/2014 Resource server: Example Static server {[ai, bi]} [a1, b1] [a2, b2] [a3, b3] [a4, b4] Periodic server (P, C) P P P Explicit Deadline Periodic : (P, C, D) P C P P C D The SBF of a perfect processor r: 100% length of intervals Over L cycles, you are guaranteed at least L cycles 6

#CPU cycles #CPU cycles 9/25/2014 Suply Bound Function (sbf) (abstract model of resource servers) sbf(l) L length of intervals Over L, you are guaranteed at least sbf(l) cycles Linear Lower Bound of SBF sbf(l) r: ratio L length of intervals Over L, you are guaranteed at least sbf(l) cycles 7

#CPU cycles 9/25/2014 Bounded Delay Server: (r,d) r: ratio sbf(l) d L L+d length of intervals Over L, you are guaranteed at least sbf(l) cycles Non-periodic tasks Periodic tasks Sporadic tasks Workload models Demand bound function: dbf(t) over time interval t, the accumulated amount of work to be computed 8

#CPU cycles 9/25/2014 Example: Periodic task 6 3 5 10 15 Length of intervals Schedulability analysis: for all t, dbf(t) <= sbf(t) sbf dbf 9

#CPU cycles 9/25/2014 Schedulability R: resource supply W: workload length of intervals Resource Reservation/Virtual Resources Application Software Components: Hard real-time, Software real-time, Others Application Scheduling Resource Servers: e.g. HRT servers, SRT servers, Xservers for house keeping, Rate monotonic scheduling Platform Hardware Resources: CPU cycles, memory blocks 10

Application Scheduling Given a group of applications e.g. HRT apps, a Resource Server Design a Scheduler s.t. no deadline miss Application Schedulers Non Real-Time Applications Schedule to run according to the budgets allocated by the servers e.g 60% resource rate Real-Time Application: (W, R, A) W: Workload model e.g. dbf R: Resource server e.g. sbf A: Scheduling algorithm e,g, EDF Research Questions Schedulability analysis dbf(t)<= sbf(t) for all t (Necessary condition for all A s) Synthesis problems e.g. Given W, R, find A s.t. W is schedulable Given W, A, find the minimal R s.t. W is schedulable. Given W, R, A: calculate R*: the remaining resource after W 11

Hierarchical Application Scheduling Given a collection of applications: workloads a set of Servers Decompose the apps into sub-apps Servers into sub-servers Resource Virtualization (Buttazo et al) 12