Rate Monotonic Analysis (RMA)

Size: px
Start display at page:

Download "Rate Monotonic Analysis (RMA)"

Transcription

1 Rate Monotonic Analysis (RMA) (Real-Time and Embedded System Laboratory) Major References: An Introduction to Rate Monotonic Analysis Tutorial Notes SEI MU* Distributed Real-Time System Design Using Generalized Rate Monotonic Theory Tutorial Notes Lui Sha SEI MU 99.* *The RMA Project is sponsored by the U.S. Dept. of Defense an we have a better way to predict the schedulability of a process set more precisely? Are we still able to predict the schedulability of a process set if the basic assumptions of rate monotonic scheduling [LL:73] are violated? Rate monotonic priorities Unique priority per unique period Preemptive scheduling Deadlines are coincident with start of period Only periodic tasks Do we have an analytical framework for reasoning the timing behavior of a process set or have an engineering basis for designing realtime systems.

2 Why are deadlines missed? For a given task consider the time needed by higher priority tasks the time needed to do this task s work delays caused by lower priority tasks priority inversion (blocking) To improve the performance of real-time systems identify and limit sources of priority inversion* *check previous examples 3 A Sample Problem Periodic tasks Servers τ τ τ 3 Emergency 50 msec 5 msec Aperiodic tasks Event handling task 40 msec msec 4 d:6 msec Desired respone 4 msec on average

3 Periodic Requirements Periodic task Ready to execute at fixed intervals deadline = the beginning of the next period (to be relaxed later!) Rate Monotonic Algorithm Assign higher priorities to tasks with shorter periods (to be relaxed later!) n If U( T ) n( ) for some n-process set T, T is schedulable [KM:9,LL:73]. 5 Periodic Requirements Task τ : =0, P =00, U =0. Task τ : =40, P =50, U =0.67 Task τ 3 : 3 =00, P 3 =350, U 3 = Total utilization: 75.3% U() 3 :3( ) = 77.9% 4.7% of the PU is usable for lowerpriority background computation! ADD more computation! 6

4 Periodic Requirements Task τ : =40, P =00, U =0.4 the utilization factor of the first two tasks: 66.7% < U(): 8.8% Total utilization: 95.3% > U(3)! The test result is inconclusive! τ τ τ 3 7 The Time Line of the Example 8 Improving the Schedulability Bound Theorem [LSD87]: A set of n independent periodic tasks scheduled by the rate monotonic algorithm will always meet its deadlines, for all task phasings, if and only if i.e., i, i n,min = { ( k, l) Ri R i i lp j j= k j lpk P ( k, l) k i, l =, Λ, P P } (min( ( k, l) Ri i j= lpk j Pj i lpk) 0) k

5 Improving the Schedulability Bound - Theorem Revisited Rate Monotonic Analysis (RMA) Basic Idea: Before time t after the critical instance of process τ i, a high priority process τ j may request amount of computation time. deadline of τ i 0 Formula: t Time i t Wi () t = c j j t d for some t in = i p j = = A sufficient and necessary condition and many extensions... Sha, An Intorduction to Rate Monotonic Analysis, tutorial notes, SEI, MU, 99 Improving the Schedulability Bound - Theorem Revisited A RMA Example: T(0,00), T(30,50), T3(80, 0), T4(00,400) T c <= 00 T c + c <= 00 or c + c <= 50 T3 c + c + c3 <= 00 or c + c + c3 <= 50 or c + c + c3 <= 00 or 3c + c + c3 <= 0 T4 c + c + c3 + c4 <= 00 or c + c + c3 + c4 <= 50 or... W3(t) Time

6 Improving the Schedulability Bound Reference: Theorem 3[JP86]: For a set of independent, periodic tasks, if each task meets its first deadline, with worst-case task phasings, the deadline will always be met ompletion Time (T) test Let W i =completion time of task i, W i may be computed by the following iterative formula Wi( n) Wi( n + ) = i + j, Wi(0) = 0 j< i Pj Task i is schedulable if its completion time is before its deadline. W i P (*Take P i as d i!!) i [LSD87] Lehoczky, Sha, and Ding, The Rate Monotonic Scheduling Algorithm-Exact haracterization and Average ase Behavior, TR, Dept. of statistics, LMU,987 [JP86] Joseph and Pandya, Finding Response Times in a Real-Time System, BS omputing Journal, vol 9, no.5, 986, pp Improving the Schedulability Bound an example Task τ : =40, P =00, U =0.4 Task τ : =40, P =50, U =0.67 Task τ 3 : 3 =00, P 3 =350, U 3 =0.86 Apply Theorem P > 00 or P > 50 or P > 00 or P * <= 300 * or P > 350

7 3 Apply Theorem 3 W 3 ( 0) = 0 0 W 3 ( ) = 3 + = 3 j = 00 j< 3 Pj W 3( ) = 3 + j j< P = = 80 3 j W 3 (3) = = W 3 (4) = = W 3 (5) = = The computation is converged! Θ W3 = 300 P3 = d3 = 350 Schedulable! Summary 4 Utilization bound test is simple but conservative. ompletion time test is more exact but also more complicated! In fact, tests based on Theorems and 3 have a pseudo-polynomial-time time complexity. To this point, UB, T, and Schedulability-Point tests share the same limitations. all tasks are periodic and not interacting with each another. deadlines are always the end of the period. no interrupts. rate monotonic priorities assigned. all tasks are on a single processor. zero context switch overhead. (stack dispelling) tasks do not suspend themselves.

8 Practical Applications Modeling context switching Schedulability with priority inversion Schedulability with Interrupts Schedulability without a rate monotonic priority Handling pre-period deadlines Important Issue: Identify the sources of blocking & manage them! 5 Modeling ontext Switching c RMA: c c Pure priority-driven preemptive schedules impose two scheduling actions per task (start of the period & end of the period) ci + s U i = P i 6

9 Modeling ontext Switching - Remark an it be more efficient than a cyclic executive? Run-time scheduling certainly appears to have more overhead than the scheduling overhead for a cyclic executive. But there is a hidden overhead in the cyclic case. Task periods must sometimes to be shortened to fit within the cyclic executive structure! Machine utilization increases, but not because more useful work is done! * yclic executive - where all work(tasks) fit into a common period (major frame) and executed non-preemptively. 7 Priority Inversion Delay to a task s execution caused by lowerpriority tasks is known as priority inversion. Systems potentially contain many sources of priority inversion. Identifying, reducing, and modeling priority inversion is central to schedulability analysis. 8

10 Priority Inversion Sources of Priority Inversion Non-rate-monotonic priority assignment (syntactically in RMA?!!) Non-preemptibility Interrupts Not enough priority levels FIFO queues (of course, they are more!) Synchronization 9 Schedulability with Interrupts Interrupt processing can be inconsistent with the RM priority assignment: Execute with a high priority despite long period! Delay execution of tasks with higher rate monotonic priorities. Source of priority inversion! 0

11 Schedulability with Interrupts Example Task : =0, P =00, U=0. Task : =40, P =50, U=0.67 Interrupt : int=60, Pint=00, Uint=0.3 Task 3 :3 =0, P3 =350, U3=0.057 Exec with RM priority Int The last task was not affected! Exec with an Interrupt priority Int Schedulability with Interrupts Solution Should interrupts be modeled in the same manner as task s context switching (i.e., treated as extra execution time)? int Int Int Int Int =+int=80 = =0

12 Schedulability with Interrupts The completion time for is correct! orrect model for. fails! Θ It is too pessimistic for. should be affected at most once per period! fails! is preempted too frequently! onsider each task separately! 3 Rule of Thumb Task schedulability is affected by Preemption effects: Potentially many times per period. Execution effects: Once per period! Blocking effects: at most once per period for each source of blocking *Blocking effects occur at a lower frequency, and thus each blocking effect can impact the task only once per period. 4

13 Schedulability with Interrupts Solution : Modeling Interrupts with Blocking Time Example: τ : =0,P =00,U =0. τ : =40,P =50,U =0.67 τ int : int =60,P int =00,U int =0.3 τ3: 3 =0,P 3 =350,U 3 = τ + int Int = P For τ τ τ Int + int + = 0.86> U() = 0.88 For τ P P 5 Schedulability with Interrupts τ τ τ int Int Int For τ 3 τ int = 0.84 > U (4) = P P P P int (Harmonic base size = 3 U(3)=0.779) 6 P *(3) int = int

14 Apply Theorem For τ : R ={(,),(,)} + + B = int = 0 > P + + B = int = 40 P τ : = 0, P = 00, U = 0. τ : = 40, P = 50, U = 0.67 τ int : int = 60, P int = 00,U int = 0.3 Apply Theorem 3 For τ : ω (0) = 0 ω () = + B + j < [0] p j j 7 = + B = 00 ω () = + B + j< 00 < P j j = + B + = 0 ω (3) = + B = + B + = 40 ω (4) = + B = + B + = 40 ω = 40 < d = P = 50 8

15 Summary This modeling technique can be used to model: Interrupts Non-preemptibility Non-rate-monotonic priorities -Find priority based on pre-period deadline -Jitter requirement (e.g. high priority I/O-related execution) Theorem : j < i P j j + i + B i P i U ( i) 9 Theorems and 3: Include B i in the computation time of τ i when the schedulability of τ i is under consideration! 30 Non-Rate-Monotonic Priority Assignment Example : Preemption/Exec/Blocking Effects T T5-Preemption Effects:, T T6-Preemption Effects:,, 5 T7-Preemption Effects:,, 6 T3 (assume no changes over priority order) T4 T3: T5 Preemption Effects:, Execution Effects: 3 T6 Blocking Effects: T7 T8

16 3 Non-Rate-Monotonic Priority Assignment Example : Limited Priority Levels T T T: Preemption: none Execution: Blocking: T3 T: T4 Preemption: T5 Execution: Blocking: none T6 T3: T7 T8 Preemption:, Execution: 3 Blocking: 4 3 Non-Rate-Monotonic Priority Assignment Example 3: Preemption/Exec/Blocking Effects T T T3 T4 T5 T6 T7 T8 T T T5 T8 T6 T3 T4 T7 T6: Preemption:,, 5 Execution: 6 Blocking: 8 T7: Preemption: -6 Execution: 7 Blocking: 8

17 Techniques for Handling Pre-Period Deadlines Insert dormant time τ τ For τ &τ D P d = = 0 τ τ τ 3 For τ 3 33 Techniques for Handling Pre-Period Deadlines - Insert dormant time P P + + P + D P + P 3 3 = = = U () = U (3) 34

18 Techniques for Handling Pre-Period Deadlines 35 Apply critical-zone analysis. Determine the worst-case completion time. ω ω ω ω ( 0 ) () ( ) ( 3 ) ω = = = = j < j = + = ( 0 ) P.ompare worst-case completion time with the pre-period deadline. ω = 60 d = = j + = 30 = = Another thought about the calculation of worst-case completion! ω ( n + ) = i i + ω i ( n) j + Bi P τ jhas a priority higher than τ i j exec preemption blocking caused by Incrementally increase priority if needed!!. If the task can not meet a specified pre-period deadline, then raise its priority & try again! non-rate-monotonic priority!.use the same analysis as for interrupts onsider the schedulability of all critical tasks!

19 Measurement Issues ommon misconception: The rate monotonic analysis seems to be useful only if accurate execution times are available! In fact, the rate monotonic analysis is forgiving to inaccurate measurement: Importance of accuracy is relative to the length of the period. (deadline) One is more likely to have better estimates for higher frequency tasks. Robust to change!! 37 Measurement Issues The issue of inaccurate execution time is not specific to the rate monotonic analysis approach; it is inherent to hard real-time systems! The rate monotonic approach, however, highlights the parameters of importance. higher-priority execution times blocking times, and execution time 38

20 Treatment of Synchronization Requirements Synchronization Priority Inversion 39 Identifying, modeling, and reducing sources of priority inversion is central to schedulability analysis!! Source of Priority Inversion non-preemptible regions of code interrupts non-unique priorities for some tasks non-rate-monotonic assignment of task priorities FIFO of any other non-priority-based queues Synchronization and mutual exclusion Remark: Blocking effects(usually) occur at a lower rate, and thus each blocking effect can impact a task(usually) at most once per period. 40

21 Synchronization Protocols. No preemption ritical sections are executed at an infinitely high priority! τ L τ M Time τ H Note that τh & τm have no intention to enter a critical section! 4 Synchronization Protocols.Highest locker s priority Execute critical section at the priority of the highest-priority task that may lock the semaphore(/resource); higher-priority tasks may preempt the critical section. τ L τ M τ H Time τ vh Note that τ vh is no longer blocked by τ L 4

22 Synchronization Protocols 3. Basic Inheritance Protocol (BIP) Execute the critical section at the priority of the highest-priority task being blocked; higher-priority tasks may preempt the critical section. τ L τ M τ H S S S blocked S blocked S & S S S Time τ vh t 43 -Note that τ M is no longer blocked until necessary. - However, system may be deadlocked or have chained blocking! Synchronization Protocols 4. Priority eiling Protocol BIP + a Priority eiling rule about when to grant lock requests (see [Sha 87, 90] ) τ L τ M τ H S S blocked S blocked S S Time τ vh 44 - No deadlock & chained blocking at the cost of reducing the concurrency level of the system. - Blocked-at-most-once.

23 Synchronization Protocols Schedulability tests for Basic Inheritance Protocol (BIP) 45 P () + = U P B + D B + + U P P P () 3 P P P U ( ) 0 50 * In PP B = max(0,0) = = Synchronization Protocols Schedulability tests for Non-preemptible ritical Sections B = + = P P D B = + + = U () = 0.88 P P P P + 3 U P P3 () 3 46

24 Synchronization Protocols a comparison Bounded Priority Nonpreemptible ritical Sections Blocked at Most Once Inversion Yes Yes Yes Deadlock Avoidance Highest Locker s Priority Yes Yes Yes BIP Yes No No PP Yes Yes Yes 47 Tasks suspending themselves inside critical sections will hand over PU to (lowerpriority) tasks. The later may lock other resources. Tasks suspending themselves between critical sections shall not be protected! 3Reasons for task suspensions: I/O Aperiodic Servers Aperiodic tasks runs at irregular intervals Aperiodic deadline hard, minimum inter-arrival time. Soft, best average response time. Services such as operator requests device interrupts... 48

25 Scheduling Aperiodic Tasks Polling ~ Average Response Time = 50 units Interrupt Handler ~ Average Response Time = unit 0 00 Deferrable Server [Lehoczky87] ~ Average Response Time = unit An on-demand service type When execution budget is used up, server execution drops to a lower (background) priority until the budgeted execution time is replenished. Deferrable Server (DS) [Lehoczky87] τ as a DS server to preserve PU bandwidth for a collection of aperiodic tasks. τ has an entire period to use its run-time and gets replenished at the beginning of each of its period. Theorem 3 [Lehoczky87]: For τ as the highest priority DS server, and τ τ n as periodic tasks, the achievable utilization factor when n U + /( n ) U + U = U + ( n )[( ) ] U = U+ ln( ) U + U + U is minimized to when U = J.P. Lehoczky, L. Sha, and J.K. Strosnider, Enhancd Aperiodic Responsiveness in Hard Real-Time Environment, RTSS 87, pp

26 Remarks: Deferrable Servers: fixed execution budget replenishment interval priority adjusted to meet requirements. Note that the response time performance improves as the replenishment rate decreases because the execution budget increases and more services can be provided. Polling: From the scheduling point of view, polling converts the servicing of aperiodic events into an equivalent periodic tasks. Not an on-demand service type. As the rate of polling increases, the response time for polling approach improves. The rationale behind aperiodic servers: No system benefit to finish periodic work early! 5 Sporadic Server [Sprunt et. al. 90] Modeled as periodic tasks fixed execution budget(c) replenishment interval (p) Execution Budget P=00ms 00ms Replenishment occurs one period after the start of usage! Priority adjusted to meet requirements. 5

27 Sporadic Server [Sprunt et. al. 90] A sporadic server differs from a deferrable server in its replenishment policy A 00 msec deferrable server replenishes its execution budget every 00 msec, no matter when the execution budget is used. The affect of a sporadic server on lower priority tasks is no worse than a periodic task with the same period and execution time. 53 Sporadic Server [Sprunt et. al. 90] A sporadic server (SS) under the fixedpriority scheduling framework. Terms: Ps: the priority at which the system is executing. Pi: one priority level in the system. Active: A priority level Pj is active is Pj <= Ps. Idle: not active RTi: replenishment time for SS executing at priority level Pi 54 Brinkley Sprunt, Aperiodic Task Scheduling for Real-Time Systems, Ph.D. Thesis Dept. of Electrical and omputer Engineering, arnegie Mellon University, August 990.

28 Sporadic Server [Sprunt et. al. 90] Rules: Replenishment Time RTi If SS has execution time available, and Pi becomes active at time t, then RTi = t + Pi. If SS s execution time is exhausted, and SS s execution time becomes non-zero (is replenished) at time t and Pi is active, then RTi = t + Pi. Replenishment Amount Determined when Pi becomes idle or SS s execution time has been exhausted. The amount is equal to the amount of server execution time consumed since the last time at which the status of Pi changes from idle to active. 55 Sporadic Server [Sprunt et. al. 90] Important theorems: Theorem [Sprunt90:p8]:Given a real-time system composed of soft-real-time aperiodic tasks and hard real-time periodic tasks, let the soft real-time aperiodic tasks be serviced by a polling server that starts at full capacity and executes at the priority level of the highest priority periodic task. If the polling server is replaced with a sporadic server having the same period, execution time, and priority, the sporadic server will provide high-priority aperiodic service at times earlier than or equal to the times the polling server would provide high-priority aperiodic service. 56

29 Sporadic Server [Sprunt et. al. 90] Theorem 5 [Sprunt90:p34]: A periodic task set that is schedulable with a periodic task Ti, is also schedulable if Ti is replaced by a sporadic server with the same period and execution time. Schedulability analysis of sporadic servers is equivalent to periodic tasks! -> overcome the penalty paid by the deferrable servers! Remark In terms of server size, the sporadic server approach is better than the deferrable server approach. Although the sporadic server approach claims low implementation overhead, it seems to be a little bit higher than the deferrable server approach. If aperiodic services are requested very heavily, the differences between DS and SS will diminish. 57 A Sporadic Server Example 58

30 Aperiodic Task Processing A ompasion A task set example Periodic task = P=4 Periodic task/ deferrable server/ sporadic server = P=5 Periodic task3 3=3 P3=0 Periodic task executions τ τ τ Aperiodic Task Processing A ompasion 60 deferrable server execution Aperiodic Instant Request Time τ τ DS apacity τ miss τ3 needs one more computation time.

31 Aperiodic Task Processing A ompasion sporadic server execution τ τ SS apacity RT 8 Instant RTime τ Note that the 3rd and 4th requests response times are delayed by 3 & time units in this case, respectively. 6 Sample Problem: aperiodic tasks Emergency events 5 ms of work arrives every 50ms, worst case hard deadline 6ms after arrival Emergency Server (ES) a sporadic server i = 5 ms P i = 50 ms (replenishment interval) 6

32 Sample Problem: aperiodic tasks routine event ms of work on average arrives every 40ms on average desired average response of 4ms after arrival. Routine Server (RS) a sporadic server i = 0 P i = 00 ms (replenishment interval) 63 Sample Problem: aperiodic tasks How to derive it?! Using M/M/ queuing approximation Response Time avg = apacity = ServiceTime Workload ( apacity avg avg ) Workload avg = ServiceTime avg InterArrivalTime Re sponsetimeavg * ServiceTimeavg IntervalArrivalTime (Re sponsetime ServiceTime avg avg avg avg ) 4* apacity = = 0. = 40(4 ) Budget Interval But what replenishment interval we should pick up?? 50ms, 80ms, 00ms,00ms, Take 00ms and make RS s priority > any periodic τ i s priority. 64

33 Sample Problem: all tasks Now we have the following sample problem: (BIP) ES RS P D B U Harmoically related! τ τ = 40/50 τ = 00/ UB Test τ Sample Problem: all tasks ( * 5) = 0.7 <.00? τ (*5) = 0.867> U() = ? 66 τ 3 (*5) = 0.953> U(3) = If PP is used B=max(0,0)=0 instead of 30.

34 Sample Problem: all tasks τ T Test for W (0) W B 0 = = W () = = W 3 * ( ) = + + P 90 () = = Since W = 90 P D = 50 0 = 30 Done 67 Summary Rate monotonic analysis offers a general framework for considering timing issues through the life cycle ~ early detection and minimization of priority inversion. Implementation: schedulability analysis facilitates separation of concerns Testing identification of bottlenecks discovering of timing errors Post-deployment easy to understand effects of changes. 68

Scheduling Slack Time in Fixed Priority Pre-emptive Systems

Scheduling Slack Time in Fixed Priority Pre-emptive Systems Scheduling Slack Time in Fixed Priority Pre-emptive Systems R.I.Davis Real-Time Systems Research Group, Department of Computer Science, University of York, England. ABSTRACT This report addresses the problem

More information

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013

Lecture 13. Real-Time Scheduling. Daniel Kästner AbsInt GmbH 2013 Lecture 3 Real-Time Scheduling Daniel Kästner AbsInt GmbH 203 Model-based Software Development 2 SCADE Suite Application Model in SCADE (data flow + SSM) System Model (tasks, interrupts, buses, ) SymTA/S

More information

CIS 4930/6930: Principles of Cyber-Physical Systems

CIS 4930/6930: Principles of Cyber-Physical Systems CIS 4930/6930: Principles of Cyber-Physical Systems Chapter 11 Scheduling Hao Zheng Department of Computer Science and Engineering University of South Florida H. Zheng (CSE USF) CIS 4930/6930: Principles

More information

On-line scheduling of periodic tasks in RT OS

On-line scheduling of periodic tasks in RT OS On-line scheduling of periodic tasks in RT OS Even if RT OS is used, it is needed to set up the task priority. The scheduling problem is solved on two levels: fixed priority assignment by RMS dynamic scheduling

More information

Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks

Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks Moonju Park Ubiquitous Computing Lab., IBM Korea, Seoul, Korea mjupark@kr.ibm.com Abstract. This paper addresses the problem of

More information

Non-Preemptive and Limited Preemptive Scheduling. LS 12, TU Dortmund

Non-Preemptive and Limited Preemptive Scheduling. LS 12, TU Dortmund Non-Preemptive and Limited Preemptive Scheduling LS 12, TU Dortmund 09 May 2017 (LS 12, TU Dortmund) 1 / 31 Outline Non-Preemptive Scheduling A General View Exact Schedulability Test Pessimistic Schedulability

More information

Real-Time Scheduling and Resource Management

Real-Time Scheduling and Resource Management ARTIST2 Summer School 2008 in Europe Autrans (near Grenoble), France September 8-12, 2008 Real-Time Scheduling and Resource Management Lecturer: Giorgio Buttazzo Full Professor Scuola Superiore Sant Anna

More information

Process Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach

Process Scheduling for RTS. RTS Scheduling Approach. Cyclic Executive Approach Process Scheduling for RTS Dr. Hugh Melvin, Dept. of IT, NUI,G RTS Scheduling Approach RTS typically control multiple parameters concurrently Eg. Flight Control System Speed, altitude, inclination etc..

More information

Embedded Systems Development

Embedded Systems Development Embedded Systems Development Lecture 3 Real-Time Scheduling Dr. Daniel Kästner AbsInt Angewandte Informatik GmbH kaestner@absint.com Model-based Software Development Generator Lustre programs Esterel programs

More information

Scheduling Algorithms for Multiprogramming in a Hard Realtime Environment

Scheduling Algorithms for Multiprogramming in a Hard Realtime Environment Scheduling Algorithms for Multiprogramming in a Hard Realtime Environment C. Liu and J. Layland Journal of the ACM, 20(1):46--61, January 1973. 2 Contents 1. Introduction and Background 2. The Environment

More information

Lecture Note #6: More on Task Scheduling EECS 571 Principles of Real-Time Embedded Systems Kang G. Shin EECS Department University of Michigan

Lecture Note #6: More on Task Scheduling EECS 571 Principles of Real-Time Embedded Systems Kang G. Shin EECS Department University of Michigan Lecture Note #6: More on Task Scheduling EECS 571 Principles of Real-Time Embedded Systems Kang G. Shin EECS Department University of Michigan Note 6-1 Mars Pathfinder Timing Hiccups? When: landed on the

More information

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i Embedded Systems 15-1 - REVIEW: Aperiodic scheduling C i J i 0 a i s i f i d i Given: A set of non-periodic tasks {J 1,, J n } with arrival times a i, deadlines d i, computation times C i precedence constraints

More information

Real-Time and Embedded Systems (M) Lecture 5

Real-Time and Embedded Systems (M) Lecture 5 Priority-driven Scheduling of Periodic Tasks (1) Real-Time and Embedded Systems (M) Lecture 5 Lecture Outline Assumptions Fixed-priority algorithms Rate monotonic Deadline monotonic Dynamic-priority algorithms

More information

Networked Embedded Systems WS 2016/17

Networked Embedded Systems WS 2016/17 Networked Embedded Systems WS 2016/17 Lecture 2: Real-time Scheduling Marco Zimmerling Goal of Today s Lecture Introduction to scheduling of compute tasks on a single processor Tasks need to finish before

More information

Clock-driven scheduling

Clock-driven scheduling Clock-driven scheduling Also known as static or off-line scheduling Michal Sojka Czech Technical University in Prague, Faculty of Electrical Engineering, Department of Control Engineering November 8, 2017

More information

Real-Time Systems. Event-Driven Scheduling

Real-Time Systems. Event-Driven Scheduling Real-Time Systems Event-Driven Scheduling Marcus Völp, Hermann Härtig WS 2013/14 Outline mostly following Jane Liu, Real-Time Systems Principles Scheduling EDF and LST as dynamic scheduling methods Fixed

More information

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions Mitra Nasri Chair of Real-time Systems, Technische Universität Kaiserslautern, Germany nasri@eit.uni-kl.de

More information

Andrew Morton University of Waterloo Canada

Andrew Morton University of Waterloo Canada EDF Feasibility and Hardware Accelerators Andrew Morton University of Waterloo Canada Outline 1) Introduction and motivation 2) Review of EDF and feasibility analysis 3) Hardware accelerators and scheduling

More information

Real-Time Systems. Event-Driven Scheduling

Real-Time Systems. Event-Driven Scheduling Real-Time Systems Event-Driven Scheduling Hermann Härtig WS 2018/19 Outline mostly following Jane Liu, Real-Time Systems Principles Scheduling EDF and LST as dynamic scheduling methods Fixed Priority schedulers

More information

RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES

RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES RUN-TIME EFFICIENT FEASIBILITY ANALYSIS OF UNI-PROCESSOR SYSTEMS WITH STATIC PRIORITIES Department for Embedded Systems/Real-Time Systems, University of Ulm {name.surname}@informatik.uni-ulm.de Abstract:

More information

CEC 450 Real-Time Systems

CEC 450 Real-Time Systems CEC 450 Real-Time Systems Lecture 3 Real-Time Services Part 2 (Rate Monotonic Theory - Policy and Feasibility for RT Services) September 7, 2018 Sam Siewert Quick Review Service Utility RM Policy, Feasibility,

More information

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

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...!2

More information

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University Che-Wei Chang chewei@mail.cgu.edu.tw Department of Computer Science and Information Engineering, Chang Gung University } 2017/11/15 Midterm } 2017/11/22 Final Project Announcement 2 1. Introduction 2.

More information

Selected solutions for. TDDD07 Real-time Systems

Selected solutions for. TDDD07 Real-time Systems Selected solutions for TDDD07 Real-time Systems Massimiliano Raciti Jordi ucurull Simin Nadjm-Tehrani Scheduling and resource sharing Real-Time Systems Laboratory Department of omputer and Information

More information

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University

Scheduling. Uwe R. Zimmer & Alistair Rendell The Australian National University 6 Scheduling Uwe R. Zimmer & Alistair Rendell The Australian National University References for this chapter [Bacon98] J. Bacon Concurrent Systems 1998 (2nd Edition) Addison Wesley Longman Ltd, ISBN 0-201-17767-6

More information

Real Time Operating Systems

Real Time Operating Systems Real Time Operating ystems hared Resources Luca Abeni Credits: Luigi Palopoli, Giuseppe Lipari, and Marco Di Natale cuola uperiore ant Anna Pisa -Italy Real Time Operating ystems p. 1 Interacting Tasks

More information

Bounding the End-to-End Response Times of Tasks in a Distributed. Real-Time System Using the Direct Synchronization Protocol.

Bounding the End-to-End Response Times of Tasks in a Distributed. Real-Time System Using the Direct Synchronization Protocol. Bounding the End-to-End Response imes of asks in a Distributed Real-ime System Using the Direct Synchronization Protocol Jun Sun Jane Liu Abstract In a distributed real-time system, a task may consist

More information

Resource Sharing in an Enhanced Rate-Based Execution Model

Resource Sharing in an Enhanced Rate-Based Execution Model In: Proceedings of the 15th Euromicro Conference on Real-Time Systems, Porto, Portugal, July 2003, pp. 131-140. Resource Sharing in an Enhanced Rate-Based Execution Model Xin Liu Steve Goddard Department

More information

EDF Scheduling. Giuseppe Lipari May 11, Scuola Superiore Sant Anna Pisa

EDF Scheduling. Giuseppe Lipari   May 11, Scuola Superiore Sant Anna Pisa EDF Scheduling Giuseppe Lipari http://feanor.sssup.it/~lipari Scuola Superiore Sant Anna Pisa May 11, 2008 Outline 1 Dynamic priority 2 Basic analysis 3 FP vs EDF 4 Processor demand bound analysis Generalization

More information

Embedded Systems 14. Overview of embedded systems design

Embedded Systems 14. Overview of embedded systems design Embedded Systems 14-1 - Overview of embedded systems design - 2-1 Point of departure: Scheduling general IT systems In general IT systems, not much is known about the computational processes a priori The

More information

EDF Scheduling. Giuseppe Lipari CRIStAL - Université de Lille 1. October 4, 2015

EDF Scheduling. Giuseppe Lipari  CRIStAL - Université de Lille 1. October 4, 2015 EDF Scheduling Giuseppe Lipari http://www.lifl.fr/~lipari CRIStAL - Université de Lille 1 October 4, 2015 G. Lipari (CRIStAL) Earliest Deadline Scheduling October 4, 2015 1 / 61 Earliest Deadline First

More information

Scheduling periodic Tasks on Multiple Periodic Resources

Scheduling periodic Tasks on Multiple Periodic Resources Scheduling periodic Tasks on Multiple Periodic Resources Xiayu Hua, Zheng Li, Hao Wu, Shangping Ren* Department of Computer Science Illinois Institute of Technology Chicago, IL 60616, USA {xhua, zli80,

More information

Aperiodic Task Scheduling

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

More information

Lecture 6. Real-Time Systems. Dynamic Priority Scheduling

Lecture 6. Real-Time Systems. Dynamic Priority Scheduling Real-Time Systems Lecture 6 Dynamic Priority Scheduling Online scheduling with dynamic priorities: Earliest Deadline First scheduling CPU utilization bound Optimality and comparison with RM: Schedulability

More information

CEC 450 Real-Time Systems

CEC 450 Real-Time Systems E 450 Real-ime Systems Lecture 4 Rate Monotonic heory Part September 7, 08 Sam Siewert Quiz Results 93% Average, 75 low, 00 high Goal is to learn what you re not learning yet Motivation to keep up with

More information

Real Time Operating Systems

Real Time Operating Systems Real Time Operating ystems Luca Abeni luca.abeni@unitn.it Interacting Tasks Until now, only independent tasks... A job never blocks or suspends A task only blocks on job termination In real world, jobs

More information

Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4

Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4 Priority-driven Scheduling of Periodic Tasks (1) Advanced Operating Systems (M) Lecture 4 Priority-driven Scheduling Assign priorities to jobs, based on their deadline or other timing constraint Make scheduling

More information

Task Models and Scheduling

Task Models and Scheduling Task Models and Scheduling Jan Reineke Saarland University June 27 th, 2013 With thanks to Jian-Jia Chen at KIT! Jan Reineke Task Models and Scheduling June 27 th, 2013 1 / 36 Task Models and Scheduling

More information

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

Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3 Real-time Scheduling of Periodic Tasks (2) Advanced Operating Systems Lecture 3 Lecture Outline The rate monotonic algorithm (cont d) Maximum utilisation test The deadline monotonic algorithm The earliest

More information

CSE 380 Computer Operating Systems

CSE 380 Computer Operating Systems CSE 380 Computer Operating Systems Instructor: Insup Lee & Dianna Xu University of Pennsylvania, Fall 2003 Lecture Note 3: CPU Scheduling 1 CPU SCHEDULING q How can OS schedule the allocation of CPU cycles

More information

Real-time Systems: Scheduling Periodic Tasks

Real-time Systems: Scheduling Periodic Tasks Real-time Systems: Scheduling Periodic Tasks Advanced Operating Systems Lecture 15 This work is licensed under the Creative Commons Attribution-NoDerivatives 4.0 International License. To view a copy of

More information

Improved Priority Assignment for the Abort-and-Restart (AR) Model

Improved Priority Assignment for the Abort-and-Restart (AR) Model Improved Priority Assignment for the Abort-and-Restart (AR) Model H.C. Wong and A. Burns Department of Computer Science, University of York, UK. February 1, 2013 Abstract This paper addresses the scheduling

More information

Segment-Fixed Priority Scheduling for Self-Suspending Real-Time Tasks

Segment-Fixed Priority Scheduling for Self-Suspending Real-Time Tasks Segment-Fixed Priority Scheduling for Self-Suspending Real-Time Tasks Junsung Kim, Björn Andersson, Dionisio de Niz, and Raj Rajkumar Carnegie Mellon University 2/31 Motion Planning on Self-driving Parallel

More information

EDF Feasibility and Hardware Accelerators

EDF Feasibility and Hardware Accelerators EDF Feasibility and Hardware Accelerators Andrew Morton University of Waterloo, Waterloo, Canada, arrmorton@uwaterloo.ca Wayne M. Loucks University of Waterloo, Waterloo, Canada, wmloucks@pads.uwaterloo.ca

More information

Schedulability Analysis for the Abort-and-Restart Model

Schedulability Analysis for the Abort-and-Restart Model Schedulability Analysis for the Abort-and-Restart Model Hing Choi Wong Doctor of Philosophy University of York Computer Science December 2014 Abstract In real-time systems, a schedulable task-set guarantees

More information

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm

Real-time operating systems course. 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm Real-time operating systems course 6 Definitions Non real-time scheduling algorithms Real-time scheduling algorithm Definitions Scheduling Scheduling is the activity of selecting which process/thread should

More information

An Improved Schedulability Test for Uniprocessor. Periodic Task Systems

An Improved Schedulability Test for Uniprocessor. Periodic Task Systems An Improved Schedulability Test for Uniprocessor Periodic Task Systems UmaMaheswari C. Devi Department of Computer Science, University of North Carolina, Chapel Hill, NC 27599-375 December 2002 Abstract

More information

Bounding the Maximum Length of Non-Preemptive Regions Under Fixed Priority Scheduling

Bounding the Maximum Length of Non-Preemptive Regions Under Fixed Priority Scheduling Bounding the Maximum Length of Non-Preemptive Regions Under Fixed Priority Scheduling Gang Yao, Giorgio Buttazzo and Marko Bertogna Scuola Superiore Sant Anna, Pisa, Italy {g.yao, g.buttazzo, m.bertogna}@sssup.it

More information

3. Scheduling issues. Common approaches 3. Common approaches 1. Preemption vs. non preemption. Common approaches 2. Further definitions

3. Scheduling issues. Common approaches 3. Common approaches 1. Preemption vs. non preemption. Common approaches 2. Further definitions Common approaches 3 3. Scheduling issues Priority-driven (event-driven) scheduling This class of algorithms is greedy They never leave available processing resources unutilized An available resource may

More information

Static priority scheduling

Static priority scheduling Static priority scheduling Michal Sojka Czech Technical University in Prague, Faculty of Electrical Engineering, Department of Control Engineering November 8, 2017 Some slides are derived from lectures

More information

Exam Spring Embedded Systems. Prof. L. Thiele

Exam Spring Embedded Systems. Prof. L. Thiele Exam Spring 20 Embedded Systems Prof. L. Thiele NOTE: The given solution is only a proposal. For correctness, completeness, or understandability no responsibility is taken. Sommer 20 Eingebettete Systeme

More information

Resource Sharing Protocols for Real-Time Task Graph Systems

Resource Sharing Protocols for Real-Time Task Graph Systems Resource Sharing Protocols for Real-Time Task Graph Systems Nan Guan, Pontus Ekberg, Martin Stigge, Wang Yi Uppsala University, Sweden Northeastern University, China Abstract Previous works on real-time

More information

Shared resources. Sistemi in tempo reale. Giuseppe Lipari. Scuola Superiore Sant Anna Pisa -Italy

Shared resources. Sistemi in tempo reale. Giuseppe Lipari. Scuola Superiore Sant Anna Pisa -Italy istemi in tempo reale hared resources Giuseppe Lipari cuola uperiore ant Anna Pisa -Italy inher.tex istemi in tempo reale Giuseppe Lipari 7/6/2005 12:35 p. 1/21 Interacting tasks Until now, we have considered

More information

An Improved Schedulability Test for Uniprocessor Periodic Task Systems

An Improved Schedulability Test for Uniprocessor Periodic Task Systems An Improved Schedulability Test for Uniprocessor Periodic Task Systems UmaMaheswari C. Devi Department of Computer Science, The University of North Carolina, Chapel Hill, NC Abstract We present a sufficient

More information

CPU SCHEDULING RONG ZHENG

CPU SCHEDULING RONG ZHENG CPU SCHEDULING RONG ZHENG OVERVIEW Why scheduling? Non-preemptive vs Preemptive policies FCFS, SJF, Round robin, multilevel queues with feedback, guaranteed scheduling 2 SHORT-TERM, MID-TERM, LONG- TERM

More information

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #7: More on Uniprocessor Scheduling

EECS 571 Principles of Real-Time Embedded Systems. Lecture Note #7: More on Uniprocessor Scheduling EECS 571 Principles of Real-Time Embedded Systems Lecture Note #7: More on Uniprocessor Scheduling Kang G. Shin EECS Department University of Michigan Precedence and Exclusion Constraints Thus far, we

More information

Real-Time Scheduling. Real Time Operating Systems and Middleware. Luca Abeni

Real-Time Scheduling. Real Time Operating Systems and Middleware. Luca Abeni Real Time Operating Systems and Middleware Luca Abeni luca.abeni@unitn.it Definitions Algorithm logical procedure used to solve a problem Program formal description of an algorithm, using a programming

More information

Real-Time Scheduling

Real-Time Scheduling 1 Real-Time Scheduling Formal Model [Some parts of this lecture are based on a real-time systems course of Colin Perkins http://csperkins.org/teaching/rtes/index.html] Real-Time Scheduling Formal Model

More information

Scheduling I. Today Introduction to scheduling Classical algorithms. Next Time Advanced topics on scheduling

Scheduling I. Today Introduction to scheduling Classical algorithms. Next Time Advanced topics on scheduling Scheduling I Today Introduction to scheduling Classical algorithms Next Time Advanced topics on scheduling Scheduling out there You are the manager of a supermarket (ok, things don t always turn out the

More information

Response Time Analysis for Tasks Scheduled under EDF within Fixed Priorities

Response Time Analysis for Tasks Scheduled under EDF within Fixed Priorities Response Time Analysis for Tasks Scheduled under EDF within Fixed Priorities M. González Harbour and J.C. Palencia Departamento de Electrónica y Computadores Universidad de Cantabria 39-Santander, SPAIN

More information

Userland Approximate Slack Stealer with Low Time Complexity

Userland Approximate Slack Stealer with Low Time Complexity Userland Approximate Slack Stealer with Low Time Complexity Damien Masson and Serge Midonnet Université Paris-Est Laboratoire d Informatique Gaspard-Monge UMR 849 IGM-LabInfo 77454 Marne-la-Vallée Cedex

More information

Schedulability Analysis for the Abort-and-Restart (AR) Model

Schedulability Analysis for the Abort-and-Restart (AR) Model Schedulability Analysis for the Abort-and-Restart (AR) Model ABSTRACT H.C. Wong Real-Time Systems Research Group, Department of Computer Science, University of York, UK. hw638@york.ac.uk This paper addresses

More information

CPU Scheduling. Heechul Yun

CPU Scheduling. Heechul Yun CPU Scheduling Heechul Yun 1 Recap Four deadlock conditions: Mutual exclusion No preemption Hold and wait Circular wait Detection Avoidance Banker s algorithm 2 Recap: Banker s Algorithm 1. Initialize

More information

Lec. 7: Real-Time Scheduling

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.

More information

Schedulability analysis of global Deadline-Monotonic scheduling

Schedulability analysis of global Deadline-Monotonic scheduling Schedulability analysis of global Deadline-Monotonic scheduling Sanjoy Baruah Abstract The multiprocessor Deadline-Monotonic (DM) scheduling of sporadic task systems is studied. A new sufficient schedulability

More information

Bursty-Interference Analysis Techniques for. Analyzing Complex Real-Time Task Models

Bursty-Interference Analysis Techniques for. Analyzing Complex Real-Time Task Models Bursty-Interference Analysis Techniques for lemma 3 Analyzing Complex Real- Task Models Cong Liu Department of Computer Science The University of Texas at Dallas Abstract Due to the recent trend towards

More information

Module 5: CPU Scheduling

Module 5: CPU Scheduling Module 5: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 5.1 Basic Concepts Maximum CPU utilization obtained

More information

Simulation of Process Scheduling Algorithms

Simulation of Process Scheduling Algorithms Simulation of Process Scheduling Algorithms Project Report Instructor: Dr. Raimund Ege Submitted by: Sonal Sood Pramod Barthwal Index 1. Introduction 2. Proposal 3. Background 3.1 What is a Process 4.

More information

There are three priority driven approaches that we will look at

There are three priority driven approaches that we will look at Priority Driven Approaches There are three priority driven approaches that we will look at Earliest-Deadline-First (EDF) Least-Slack-Time-first (LST) Latest-Release-Time-first (LRT) 1 EDF Earliest deadline

More information

Online Scheduling Switch for Maintaining Data Freshness in Flexible Real-Time Systems

Online Scheduling Switch for Maintaining Data Freshness in Flexible Real-Time Systems Online Scheduling Switch for Maintaining Data Freshness in Flexible Real-Time Systems Song Han 1 Deji Chen 2 Ming Xiong 3 Aloysius K. Mok 1 1 The University of Texas at Austin 2 Emerson Process Management

More information

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts.

TDDI04, K. Arvidsson, IDA, Linköpings universitet CPU Scheduling. Overview: CPU Scheduling. [SGG7] Chapter 5. Basic Concepts. TDDI4 Concurrent Programming, Operating Systems, and Real-time Operating Systems CPU Scheduling Overview: CPU Scheduling CPU bursts and I/O bursts Scheduling Criteria Scheduling Algorithms Multiprocessor

More information

Scheduling Periodic Real-Time Tasks on Uniprocessor Systems. LS 12, TU Dortmund

Scheduling Periodic Real-Time Tasks on Uniprocessor Systems. LS 12, TU Dortmund Scheduling Periodic Real-Time Tasks on Uniprocessor Systems Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 08, Dec., 2015 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 38 Periodic Control System Pseudo-code

More information

A 2-Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value

A 2-Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value A -Approximation Algorithm for Scheduling Parallel and Time-Sensitive Applications to Maximize Total Accrued Utility Value Shuhui Li, Miao Song, Peng-Jun Wan, Shangping Ren Department of Engineering Mechanics,

More information

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling

Scheduling I. Today. Next Time. ! Introduction to scheduling! Classical algorithms. ! Advanced topics on scheduling Scheduling I Today! Introduction to scheduling! Classical algorithms Next Time! Advanced topics on scheduling Scheduling out there! You are the manager of a supermarket (ok, things don t always turn out

More information

Cache-Aware Compositional Analysis of Real- Time Multicore Virtualization Platforms

Cache-Aware Compositional Analysis of Real- Time Multicore Virtualization Platforms University of Pennsylvania ScholarlyCommons Departmental Papers (CIS) Department of Computer & Information Science 12-2013 Cache-Aware Compositional Analysis of Real- Time Multicore Virtualization Platforms

More information

Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment

Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment Spare CASH: Reclaiming Holes to Minimize Aperiodic Response Times in a Firm Real-Time Environment Deepu C. Thomas Sathish Gopalakrishnan Marco Caccamo Chang-Gun Lee Abstract Scheduling periodic tasks that

More information

A Utilization Bound for Aperiodic Tasks and Priority Driven Scheduling

A Utilization Bound for Aperiodic Tasks and Priority Driven Scheduling A Utilization Bound for Aperiodic Tasks and Priority Driven Scheduling Tarek F. Abdelzaher, Vivek Sharma Department of Computer Science, University of Virginia, Charlottesville, VA 224 Chenyang Lu Department

More information

A Note on Modeling Self-Suspending Time as Blocking Time in Real-Time Systems

A Note on Modeling Self-Suspending Time as Blocking Time in Real-Time Systems A Note on Modeling Self-Suspending Time as Blocking Time in Real-Time Systems Jian-Jia Chen 1, Wen-Hung Huang 1, and Geoffrey Nelissen 2 1 TU Dortmund University, Germany Email: jian-jia.chen@tu-dortmund.de,

More information

TDDB68 Concurrent programming and operating systems. Lecture: CPU Scheduling II

TDDB68 Concurrent programming and operating systems. Lecture: CPU Scheduling II TDDB68 Concurrent programming and operating systems Lecture: CPU Scheduling II Mikael Asplund, Senior Lecturer Real-time Systems Laboratory Department of Computer and Information Science Copyright Notice:

More information

System Model. Real-Time systems. Giuseppe Lipari. Scuola Superiore Sant Anna Pisa -Italy

System Model. Real-Time systems. Giuseppe Lipari. Scuola Superiore Sant Anna Pisa -Italy Real-Time systems System Model Giuseppe Lipari Scuola Superiore Sant Anna Pisa -Italy Corso di Sistemi in tempo reale Laurea Specialistica in Ingegneria dell Informazione Università di Pisa p. 1/?? Task

More information

Dependency Graph Approach for Multiprocessor Real-Time Synchronization. TU Dortmund, Germany

Dependency Graph Approach for Multiprocessor Real-Time Synchronization. TU Dortmund, Germany Dependency Graph Approach for Multiprocessor Real-Time Synchronization Jian-Jia Chen, Georg von der Bru ggen, Junjie Shi, and Niklas Ueter TU Dortmund, Germany 14,12,2018 at RTSS Jian-Jia Chen 1 / 21 Multiprocessor

More information

Real-Time Systems. Lecture #14. Risat Pathan. Department of Computer Science and Engineering Chalmers University of Technology

Real-Time Systems. Lecture #14. Risat Pathan. Department of Computer Science and Engineering Chalmers University of Technology Real-Time Systems Lecture #14 Risat Pathan Department of Computer Science and Engineering Chalmers University of Technology Real-Time Systems Specification Implementation Multiprocessor scheduling -- Partitioned

More information

Process Scheduling. Process Scheduling. CPU and I/O Bursts. CPU - I/O Burst Cycle. Variations in Bursts. Histogram of CPU Burst Times

Process Scheduling. Process Scheduling. CPU and I/O Bursts. CPU - I/O Burst Cycle. Variations in Bursts. Histogram of CPU Burst Times Scheduling The objective of multiprogramming is to have some process running all the time The objective of timesharing is to have the switch between processes so frequently that users can interact with

More information

IN4343 Real Time Systems April 9th 2014, from 9:00 to 12:00

IN4343 Real Time Systems April 9th 2014, from 9:00 to 12:00 TECHNISCHE UNIVERSITEIT DELFT Faculteit Elektrotechniek, Wiskunde en Informatica IN4343 Real Time Systems April 9th 2014, from 9:00 to 12:00 Koen Langendoen Marco Zuniga Question: 1 2 3 4 5 Total Points:

More information

Real-time scheduling of sporadic task systems when the number of distinct task types is small

Real-time scheduling of sporadic task systems when the number of distinct task types is small Real-time scheduling of sporadic task systems when the number of distinct task types is small Sanjoy Baruah Nathan Fisher Abstract In some real-time application systems, there are only a few distinct kinds

More information

Tardiness Bounds under Global EDF Scheduling on a Multiprocessor

Tardiness Bounds under Global EDF Scheduling on a Multiprocessor Tardiness ounds under Global EDF Scheduling on a Multiprocessor UmaMaheswari C. Devi and James H. Anderson Department of Computer Science The University of North Carolina at Chapel Hill Abstract This paper

More information

Multiprocessor Scheduling of Age Constraint Processes

Multiprocessor Scheduling of Age Constraint Processes Multiprocessor Scheduling of Age Constraint Processes Lars Lundberg Department of Computer Science, University of Karlskrona/Ronneby, Soft Center, S-372 25 Ronneby, Sweden, email: Lars.Lundberg@ide.hk-r.se

More information

Chapter 6: CPU Scheduling

Chapter 6: CPU Scheduling Chapter 6: CPU Scheduling Basic Concepts Scheduling Criteria Scheduling Algorithms Multiple-Processor Scheduling Real-Time Scheduling Algorithm Evaluation 6.1 Basic Concepts Maximum CPU utilization obtained

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

Static-Priority Scheduling. CSCE 990: Real-Time Systems. Steve Goddard. Static-priority Scheduling

Static-Priority Scheduling. CSCE 990: Real-Time Systems. Steve Goddard. Static-priority Scheduling CSCE 990: Real-Time Systems Static-Priority Scheduling Steve Goddard goddard@cse.unl.edu http://www.cse.unl.edu/~goddard/courses/realtimesystems Static-priority Scheduling Real-Time Systems Static-Priority

More information

Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors. Sanjoy K.

Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors. Sanjoy K. Optimal Utilization Bounds for the Fixed-priority Scheduling of Periodic Task Systems on Identical Multiprocessors Sanjoy K. Baruah Abstract In fixed-priority scheduling the priority of a job, once assigned,

More information

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas January 24, 2014

Paper Presentation. Amo Guangmo Tong. University of Taxes at Dallas January 24, 2014 Paper Presentation Amo Guangmo Tong University of Taxes at Dallas gxt140030@utdallas.edu January 24, 2014 Amo Guangmo Tong (UTD) January 24, 2014 1 / 30 Overview 1 Tardiness Bounds under Global EDF Scheduling

More information

The FMLP + : An Asymptotically Optimal Real-Time Locking Protocol for Suspension-Aware Analysis

The FMLP + : An Asymptotically Optimal Real-Time Locking Protocol for Suspension-Aware Analysis The FMLP + : An Asymptotically Optimal Real-Time Locking Protocol for Suspension-Aware Analysis Björn B. Brandenburg Max Planck Institute for Software Systems (MPI-SWS) Abstract Multiprocessor real-time

More information

CSC501 Operating Systems Principles. Deadlock

CSC501 Operating Systems Principles. Deadlock CSC501 Operating Systems Principles Deadlock 1 Last Lecture q Priority Inversion Q Priority Inheritance Protocol q Today Q Deadlock 2 The Deadlock Problem q Definition Q A set of blocked processes each

More information

Cache-Aware Compositional Analysis of Real- Time Multicore Virtualization Platforms

Cache-Aware Compositional Analysis of Real- Time Multicore Virtualization Platforms University of Pennsylvania ScholarlyCommons Departmental Papers (CIS) Department of Computer & Information Science -25 Cache-Aware Compositional Analysis of Real- Time Multicore Virtualization Platforms

More information

A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption

A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption A Dynamic Real-time Scheduling Algorithm for Reduced Energy Consumption Rohini Krishnapura, Steve Goddard, Ala Qadi Computer Science & Engineering University of Nebraska Lincoln Lincoln, NE 68588-0115

More information

AS computer hardware technology advances, both

AS computer hardware technology advances, both 1 Best-Harmonically-Fit Periodic Task Assignment Algorithm on Multiple Periodic Resources Chunhui Guo, Student Member, IEEE, Xiayu Hua, Student Member, IEEE, Hao Wu, Student Member, IEEE, Douglas Lautner,

More information

Exploiting Precedence Relations in the Schedulability Analysis of Distributed Real-Time Systems

Exploiting Precedence Relations in the Schedulability Analysis of Distributed Real-Time Systems Exploiting Precedence Relations in the Schedulability Analysis of Distributed Real-Time Systems By: J.C. Palencia and M. González Harbour Departamento de Electrónica y Computadores, Universidad de Cantabria,

More information

CHAPTER 5 - PROCESS SCHEDULING

CHAPTER 5 - PROCESS SCHEDULING CHAPTER 5 - PROCESS SCHEDULING OBJECTIVES To introduce CPU scheduling, which is the basis for multiprogrammed operating systems To describe various CPU-scheduling algorithms To discuss evaluation criteria

More information

Design of Real-Time Software

Design of Real-Time Software Design of Real-Time Software Analysis of hard real-time tasks under fixed-priority pre-emptive scheduling Reinder J. Bril Technische Universiteit Eindhoven Department of Mathematics and Computer Science

More information