Deadlock Ezio Bartocci Institute for Computer Engineering
|
|
- Shanna Potter
- 5 years ago
- Views:
Transcription
1 TECHNISCHE UNIVERSITÄT WIEN Fakultät für Informatik Cyber-Physical Systems Group Deadlock Ezio Bartocci Institute for Computer Engineering
2 Deadlock Permanent blocking of a set of processes, which compete for a common resource or communicate with each other Cyclic resource conflict between two or more processes: 1. Each process holds one resource and 2. Waits on a resource that is hold by another process There is no universal solution for this problem
3 Example Roundabout Roundabout; car from right has priority Cars only drive forward Cars ó Processes Street segments ó Resources Deadlock: each car blocks a street segment an tries to move to the segment of the upcoming car
4 Example Processes Processes access common resources; Mutual Exclusion P1: Get B Get A Release B Release A... P2: Get A Get B Release B Release A... P3: Get A Release A Get B Release B...
5 Joint Progress Diagram P1 Release A Release B Get A Get B P3 Get A Release A Get B Release B
6 Joint Progress Diagram P1 Release A Release B Get A Get B Deadlock inevitable P2 Get A Get B Release B Release A
7 The 4 Deadlock-Conditions Three requirements for the system: 1. Mutual Exclusion Exclusive access to resources (on process holds the resource, no other process can use it) 2. Hold and Wait Process can hold resources while waiting for other resources 3. No Preemption Held resources cannot be forcibly removed from a process holding it
8 The 4 Deadlock-Conditions Sequence of events may occur that leads to: 4. Circular Wait Closed chain of processes, such that each process holds at least one resource needed by another process in the chain Process P1 requests held by Resource A Resource B held by requests Process P2
9 Deadlock-Conditions Deadlock = unresolvable circular wait Circular Wait cannot be resolved when conditions 1 to 3 are true ð Conditions 1 to 4 are necessary and sufficient for a deadlock
10 Treatment of Deadlocks Deadlock Prevention Avoid one of the four Deadlock-Conditions Deadlock Avoidance Resource reservation/allocation which may lead to a deadlock are not allowed/granted Deadlock Detection Resource allocation always allowed Periodic check if a deadlock exists and recovery from the deadlock if any
11 Indirect Deadlock Prevention Mutual Exclusion This is a goal; cannot be prevented Hold and Wait Processes can acquire all resources at once Blocks until all resources available Ø Long time waiting, delay of processes Ø Inefficient use of allocated resources Ø Process must know in advance what resources are needed
12 Indirect Deadlock Prevention No Preemption a) Process releases held resources, if the request for other resources is denied; requests all resources later again b) A request of a resource of one process may require another process to release the held/needed resource Applicable for resources, which state can be easily saved and restored if necessary (cf. processor state)
13 Direct Deadlock Prevention Protocol to avoid the Circular Wait Strict linear ordering O of resource types, e.g., O(Tape Drives) = 2, O(Disk Drives) = 4 First Requirement: process requests resources of type R i (all in one step) Next: process is only allowed to acquire resources of type R k such that O(R k ) > O(R i )
14 Prevention of Circular Wait ind. Proof: protocol avoids Circular Wait Assumption: there is a Circular Wait of P 0 P n s.t. for all i: P i holds R i and waits on R (i+1) mod n W.r.t. the protocol it is valid that: O(R 0 ) < O(R 1 ) < < O(R n ) < O(R 0 ) ð which is not possible according to the protocol The protocol prevents a deadlock Inefficiency: possibly unnecessarily denying resources due to the ordering
15 Deadlock Avoidance Conditions 1 to 3 allowed, selective assignment of resources Process Initiation Denial: a process is not started if its demands can lead to a deadlock Resource Allocation Denial: resource-demands will be refused if it can lead to a deadlock Higher parallelism than deadlock prevention Requirement: resource demands of process must be known
16 Deadlock Avoidance Notation n Processes m Resource categories Vectors Resource = (R 1, R 2,, R m ) Total amount of resources in the system Available = (V 1, V 2,, V m ) Resources that are not held/allocated to any process
17 Deadlock Avoidance Notation Matrices Claim = C 11, C 12,, C 1m C n1, C n2,, C nm C_ij.. requirement of process i for resource j Allocation = A 11, A 12,, A 1m A n1, A n2,, A nm A_ij.. current allocation to process i of resource j
18 Process Initiation Denial A process P n+1 is only started, if its resource demands cannot lead to a deadlock, that is: R i C (n+1)i + n C ki k=1 Disadvantage: assumes the worst that all processes will make their maximal claim together ð restricts parallelism
19 Resource Allocation Denial - Banker s Algorithm State: current allocation of resources to processes, characterized by vectors and matrices Safe State: at least one sequence of resource allocations exists that leads to no deadlock, i.e., all processes complete their execution (marked as finished ) Unsafe State: no such sequence exists
20 Banker s Algorithm - Notation Additional matrix Required = N 11, N 12,, N 1m N n1, N n2,, N nm N ki = C ki - A ki Before a resource allocation: check if allocation leads to a safe state Safe State ð assignment of resources?? Unsafe State ð no resource assignments??
21 Banker s Algorithm Initialization: mark all processes as unfinished Work vector W i = V i, for all i loop search P k with unfinished (P k ) and N ki <= W i for all i no process found ð goto END else ð mark processes as finished and release its resources: W i = W i + A ki for all i end loop END: all processes marked finished ð Safe State else ð Unsafe State
22 Banker s Alg. - Application Test, if current resource request Q ki of process P k shall be granted 1. Test: Q ki <= N ki for all i true ð next false ð error (requirement too high) 2. Test: Q ki <= V i for all i true ð next false ð wait (resource not available) 3. Tentative grant the demand and Check for Safe State (see continuation on next slide)
23 Banker s Alg. - Application Continuation 3. for all i: V i := V i - Q ki A ki := A ki + Q ki N ki := N ki - Q ki 4. Test: Is the current?? State a Safe State? true ð allocate resources Q ki to P k false ð delay the request to later
24 Banker s Algorithm - Example 3 resources, 4 processes Initial state: R = (9 3 6) C = A = V = (1 1 2)
25 Banker s Algorithm - Example Demand of P 2 : Q 2 = (1 0 1) C = A = V = (0 1 1) Safe State: sequence of execution P 2, P 1, P 3, P 4 allows completion of all processes (after execution of P 2 is W = (6 2 3) ) Resource assignment to P 2 granted
26 R: (9 3 6) V: (1 1 2) Q 2 : (1 0 1) Banker s 3 2 Algorithm Beispiel C: A: N: W: (0 1 1) C: A: N: W: (6 2 3) C: A: N: W: (7 2 3) C: A: N:
27 Banker s Algorithm - Beispiel2 Demand of P 1 : Q 1 = (1 0 1) C = A = V = (0 1 1) Unsafe State: each process needs at least one unit of resource R 1 No assignment of resources to P 1
28 R: (9 3 6) V: (1 1 2) Q 1 : (1 0 1) C: A: N: W: (0 1 1) C: A: N: Unsafe State!!!
29 Banker s Alg. - Bemerkungen Safe State ð no deadlock possible Unsafe State ð deadlock possible, but may not happen Processes do not need the resources during their overall execution time Maximal demands/requirements in the resource categories do not occur simultaneously Strategies assume independent processes for deadlock avoidance (no conditional synchronization between processes)
30 Deadlock Detection Requested resources are granted whenever it is possible Necessary OS arrangements: Algorithm for deadlock detection Algorithm for recovery from a deadlock Deadlock check, e.g., on every resource request ð CPU-intensive
31 Deadlock Detection Algorithm Mark deadlock-free processes Initialization: set all processes P k to unmarked mark all processes P k with A ki = 0 for all i set W i := V i for all i loop search unmarked P k mit Q ki <= W i for all i Test: exists such an unmarked process P k? true ð mark P k ; set W i := W i + A ki for all i false ð exit loop end loop -- unmarked processes are in a deadlock
32 Deadlock Detection - Example Q = A = V = ( ) mark P 4 (uses no resources) W:= ( ) Q 3i (demand of P 3 ) <= W i, therefore mark P3 and set W := W + ( ) à ( ) Algorithm terminates, returns deadlock of P 1 and P 2
33 Deadlock Detection - Notes Optimistic assumption: processes do not need additional resources for completion Violation of this assumptions may lead to a deadlock later on ð Will be detected at the next call of the Deadlock Detection Algorithm
34 Deadlock Recovery Resolve the detected deadlock Abort all processes in the deadlock chain (typically used) Rollback of all involved processes to a specific state (deadlock may occur again) Abort individual processes of the chain until the deadlock is resolved (repeatedly call the detection algorithm)
35 Deadlock Recovery (2) Resources are gradually withdrawn and assigned to other processes until the deadlock is resolved Reset processes which resources have been withdrawn to a point before the resource acquisition Selection of the process to withdraw a resource: Least CPU-time used? Least amount of acquired resources? Least progress?
36 Integrated Deadlock-Strategy Combine the approaches Group the resources into classes and order the classes - Swappable space (secundary memory) - Process resources (I/O-Geräte, Files, etc.) - Main memory Circular wait prevention between classes Use strategy that fits best for an individual class (e.g., main memory - prevention: preemption, process resources - avoidance)
37 Summary 4 Conditions: Mutual Exclusion Hold and Wait No Preemption Circular Wait Deadlock Prevention Deadlock Avoidance Deadlock Detection and Recovery
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 informationLast class: Today: Synchronization. Deadlocks
Last class: Synchronization Today: Deadlocks Definition A set of processes is deadlocked if each process in the set is waiting for an event that only another process in the set can cause. An event could
More informationDeadlock. CSE 2431: Introduction to Operating Systems Reading: Chap. 7, [OSC]
Deadlock CSE 2431: Introduction to Operating Systems Reading: Chap. 7, [OSC] 1 Outline Resources Deadlock Deadlock Prevention Deadlock Avoidance Deadlock Detection Deadlock Recovery 2 Review: Synchronization
More informationCS 453 Operating Systems. Lecture 7 : Deadlock
CS 453 Operating Systems Lecture 7 : Deadlock 1 What is Deadlock? Every New Yorker knows what a gridlock alert is - it s one of those days when there is so much traffic that nobody can move. Everything
More informationDeadlock (2) Dave Eckhardt Brian Railing Roger Dannenberg
Deadlock () Dave Eckhardt Brian Railing Roger Dannenberg 1 1-410, S'18 Synchronization P You should really have, today: Drawn pictures of thread stacks (even if not perfect) Figured out where stubs belong,
More informationCS162 Operating Systems and Systems Programming Lecture 7 Semaphores, Conditional Variables, Deadlocks"
CS162 Operating Systems and Systems Programming Lecture 7 Semaphores, Conditional Variables, Deadlocks" September 19, 2012! Ion Stoica! http://inst.eecs.berkeley.edu/~cs162! Recap: Monitors" Monitors represent
More informationCIS 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 informationLecture 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 informationCPU 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 informationShared 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 information1 Lamport s Bakery Algorithm
Com S 6 Spring Semester 2009 Algorithms for Multiprocessor Synchronization Lecture 3: Tuesday, 27th January 2009 Instructor: Soma Chaudhuri Scribe: Neeraj Khanolkar Lamport s Bakery Algorithm Algorithm
More informationSafety and Liveness. Thread Synchronization: Too Much Milk. Critical Sections. A Really Cool Theorem
Safety and Liveness Properties defined over an execution of a program Thread Synchronization: Too Much Milk Safety: nothing bad happens holds in every finite execution prefix Windows never crashes No patient
More informationUC Santa Barbara. Operating Systems. Christopher Kruegel Department of Computer Science UC Santa Barbara
Operating Systems Christopher Kruegel Department of Computer Science http://www.cs.ucsb.edu/~chris/ Many processes to execute, but one CPU OS time-multiplexes the CPU by operating context switching Between
More informationNon-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 informationReal 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 informationExercises Solutions. Automation IEA, LTH. Chapter 2 Manufacturing and process systems. Chapter 5 Discrete manufacturing problems
Exercises Solutions Note, that we have not formulated the answers for all the review questions. You will find the answers for many questions by reading and reflecting about the text in the book. Chapter
More informationCorrectness of Concurrent Programs
Correctness of Concurrent Programs Trifon Ruskov ruskov@tu-varna.acad.bg Technical University of Varna - Bulgaria Correctness of Concurrent Programs Correctness of concurrent programs needs to be formalized:
More informationChe-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 informationOperating Systems. VII. Synchronization
Operating Systems VII. Synchronization Ludovic Apvrille ludovic.apvrille@telecom-paristech.fr Eurecom, office 470 http://soc.eurecom.fr/os/ @OS Eurecom Outline Synchronization issues 2/22 Fall 2017 Institut
More informationReal-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 informationAperiodic 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 informationCausality and Time. The Happens-Before Relation
Causality and Time The Happens-Before Relation Because executions are sequences of events, they induce a total order on all the events It is possible that two events by different processors do not influence
More informationLab Course: distributed data analytics
Lab Course: distributed data analytics 01. Threading and Parallelism Nghia Duong-Trung, Mohsan Jameel Information Systems and Machine Learning Lab (ISMLL) University of Hildesheim, Germany International
More informationReal 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 informationSimulation 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 informationExploring an Unknown Graph to Locate a Black Hole Using Tokens
Exploring an Unknown Graph to Locate a Black Hole Using Tokens Stefan Dobrev 1, Paola Flocchini 1, Rastislav Královič 1,2, and Nicola Santoro 3 1 SITE, University of Ottawa, {sdobrev,flocchin}@site.uottawa.ca
More informationThe Weakest Failure Detector to Solve Mutual Exclusion
The Weakest Failure Detector to Solve Mutual Exclusion Vibhor Bhatt Nicholas Christman Prasad Jayanti Dartmouth College, Hanover, NH Dartmouth Computer Science Technical Report TR2008-618 April 17, 2008
More informationSPT is Optimally Competitive for Uniprocessor Flow
SPT is Optimally Competitive for Uniprocessor Flow David P. Bunde Abstract We show that the Shortest Processing Time (SPT) algorithm is ( + 1)/2-competitive for nonpreemptive uniprocessor total flow time
More informationCSCE 313 Introduction to Computer Systems. Instructor: Dezhen Song
CSCE 313 Introduction to Computer Systems Instructor: Dezhen Song Schedulers in the OS CPU Scheduling Structure of a CPU Scheduler Scheduling = Selection + Dispatching Criteria for scheduling Scheduling
More informationThere 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 informationEmbedded 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 informationCPU 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 informationClock-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 informationIntroduction to Model Checking. Debdeep Mukhopadhyay IIT Madras
Introduction to Model Checking Debdeep Mukhopadhyay IIT Madras How good can you fight bugs? Comprising of three parts Formal Verification techniques consist of three parts: 1. A framework for modeling
More information1 st Semester 2007/2008
Chapter 17: System Departamento de Engenharia Informática Instituto Superior Técnico 1 st Semester 2007/2008 Slides baseados nos slides oficiais do livro Database System c Silberschatz, Korth and Sudarshan.
More informationLecture 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 informationReal-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 informationCSE 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 informationImproper Nesting Example
Improper Nesting Example One of the limits on the use of parbegin/parend, and any related constructs, is that the program involved must be properly nested. Not all programs are. For example, consider the
More informationPeriodic scheduling 05/06/
Periodic scheduling T T or eriodic scheduling, the best that we can do is to design an algorithm which will always find a schedule if one exists. A scheduler is defined to be otimal iff it will find a
More informationClock Synchronization
Today: Canonical Problems in Distributed Systems Time ordering and clock synchronization Leader election Mutual exclusion Distributed transactions Deadlock detection Lecture 11, page 7 Clock Synchronization
More informationBlocking time under basic priority inheritance: Polynomial bound and exact computation
Blocking time under basic priority inheritance: Polynomial bound and exact computation Paolo Torroni, Zeynep Kiziltan, Eugenio Faldella 1 arxiv:1806.01589v1 [cs.os] 5 Jun 2018 Abstract The Priority Inheritance
More informationOverview: Synchronous Computations
Overview: Synchronous Computations barriers: linear, tree-based and butterfly degrees of synchronization synchronous example 1: Jacobi Iterations serial and parallel code, performance analysis synchronous
More informationEfficient TDM-based Arbitration for Mixed-Criticality Systems on Multi-Cores
Efficient TDM-based Arbitration for Mixed-Criticality Systems on Multi-Cores Florian Brandner with Farouk Hebbache, 2 Mathieu Jan, 2 Laurent Pautet LTCI, Télécom ParisTech, Université Paris-Saclay 2 CEA
More informationOnline Energy-Aware I/O Device Scheduling for Hard Real-Time Systems with Shared Resources
Online Energy-Aware I/O Device Scheduling for Hard Real-Time Systems with Shared Resources Abstract The challenge in conserving energy in embedded real-time systems is to reduce power consumption while
More informationDistributed Deadlock-Avoidance. IMDEA Software Institute, Spain
Distributed Deadlock-voidance César Sánchez IMDE Software Institute, Spain DRV Workshop, ertinoro 19-May, 216 Distributed Deadlock-voidance little story about how static knowledge can help solve unsolvable
More informationINF 4140: Models of Concurrency Series 3
Universitetet i Oslo Institutt for Informatikk PMA Olaf Owe, Martin Steffen, Toktam Ramezani INF 4140: Models of Concurrency Høst 2016 Series 3 14. 9. 2016 Topic: Semaphores (Exercises with hints for solution)
More informationTDDB68 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 informationCPU 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 informationProcess 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 informationDistributed Algorithms Time, clocks and the ordering of events
Distributed Algorithms Time, clocks and the ordering of events Alberto Montresor University of Trento, Italy 2016/04/26 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International
More informationComp 204: Computer Systems and Their Implementation. Lecture 11: Scheduling cont d
Comp 204: Computer Systems and Their Implementation Lecture 11: Scheduling cont d 1 Today Scheduling algorithms continued Shortest remaining time first (SRTF) Priority scheduling Round robin (RR) Multilevel
More informationAn Optimal k-exclusion Real-Time Locking Protocol Motivated by Multi-GPU Systems
An Optimal k-exclusion Real-Time Locking Protocol Motivated by Multi-GPU Systems Glenn A. Elliott and James H. Anderson Department of Computer Science, University of North Carolina at Chapel Hill Abstract
More informationEmbedded 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 informationClojure Concurrency Constructs, Part Two. CSCI 5828: Foundations of Software Engineering Lecture 13 10/07/2014
Clojure Concurrency Constructs, Part Two CSCI 5828: Foundations of Software Engineering Lecture 13 10/07/2014 1 Goals Cover the material presented in Chapter 4, of our concurrency textbook In particular,
More informationBounding 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 informationDecentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication
Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication Stavros Tripakis Abstract We introduce problems of decentralized control with communication, where we explicitly
More informationZone-based Synthesis of Timed Models with Strict Phased Fault Recovery
Zone-based Synthesis of Timed Models with Strict Phased Fault Recovery Fathiyeh Faghih and Borzoo Bonakdarpour School of Computer Science, University of Waterloo, Canada TECHNICAL REPORT CS-2013-05 Abstract.
More informationProcess 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 information6.852: Distributed Algorithms Fall, Class 24
6.852: Distributed Algorithms Fall, 2009 Class 24 Today s plan Self-stabilization Self-stabilizing algorithms: Breadth-first spanning tree Mutual exclusion Composing self-stabilizing algorithms Making
More informationEmbedded 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 informationDMP. Deterministic Shared Memory Multiprocessing. Presenter: Wu, Weiyi Yale University
DMP Deterministic Shared Memory Multiprocessing 1 Presenter: Wu, Weiyi Yale University Outline What is determinism? How to make execution deterministic? What s the overhead of determinism? 2 What Is Determinism?
More informationLecture 4: Process Management
Lecture 4: Process Management Process Revisited 1. What do we know so far about Linux on X-86? X-86 architecture supports both segmentation and paging. 48-bit logical address goes through the segmentation
More informationAcceleration of Gravity
EV3 program description The program 10 determines the acceleration of gravity of a small metal ball by calculating the time between the opening of the arm and the ball s collision on a Touch Sensor. If
More informationUtility Accrual, Real-Time Scheduling Under the Unimodal Arbitrary Arrival Model with Energy Bounds
Utility Accrual, Real-Time Scheduling Under the Unimodal Arbitrary Arrival Model with Energy Bounds Haisang Wu, Binoy Ravindran, and E. Douglas Jensen Abstract In this paper, we consider timeliness and
More informationT U M. Performing Permuting on a Multiprocessor Architecture Using Packet Communication I N S T I T U T F Ü R I N F O R M A T I K
T U M I S T I T U T F Ü R I F O R M A T I K Performing Permuting on a Multiprocessor Architecture Using Packet Communication Riko Jacob Michael Schnupp ABCDE FGHIJ KLMO TUM-I0817 Juni 08 T E C H I S C
More informationLecture 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 informationOnline 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 informationRefinement-Robust Fairness
Refinement-Robust Fairness Hagen Völzer Institut für Theoretische Informatik Universität zu Lübeck May 10, 2005 0 Overview 1. Problem 2. Formalization 3. Solution 4. Remarks 1 Problem weak fairness wrt
More informationShedding the Shackles of Time-Division Multiplexing
Shedding the Shackles of Time-Division Multiplexing Farouk Hebbache with Florian Brandner, 2 Mathieu Jan, Laurent Pautet 2 CEA List, LS 2 LTCI, Télécom ParisTech, Université Paris-Saclay Multi-core Architectures
More informationNon-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 informationDistributed Consensus
Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit or Abort in distributed transactions Reaching agreement
More informationPipelining. Traditional Execution. CS 365 Lecture 12 Prof. Yih Huang. add ld beq CS CS 365 2
Pipelining CS 365 Lecture 12 Prof. Yih Huang CS 365 1 Traditional Execution 1 2 3 4 1 2 3 4 5 1 2 3 add ld beq CS 365 2 1 Pipelined Execution 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
More informationDynamic Time Quantum based Round Robin CPU Scheduling Algorithm
Dynamic Time Quantum based Round Robin CPU Scheduling Algorithm Yosef Berhanu Department of Computer Science University of Gondar Ethiopia Abebe Alemu Department of Computer Science University of Gondar
More informationThe 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 informationA Self-Stabilizing Algorithm for Finding a Minimal Distance-2 Dominating Set in Distributed Systems
JOURNAL OF INFORMATION SCIENCE AND ENGINEERING 24, 1709-1718 (2008) A Self-Stabilizing Algorithm for Finding a Minimal Distance-2 Dominating Set in Distributed Systems JI-CHERNG LIN, TETZ C. HUANG, CHENG-PIN
More informationSub-Optimal Scheduling of a Flexible Batch Manufacturing System using an Integer Programming Solution
Sub-Optimal Scheduling of a Flexible Batch Manufacturing System using an Integer Programming Solution W. Weyerman, D. West, S. Warnick Information Dynamics and Intelligent Systems Group Department of Computer
More informationCSE613: Parallel Programming, Spring 2012 Date: May 11. Final Exam. ( 11:15 AM 1:45 PM : 150 Minutes )
CSE613: Parallel Programming, Spring 2012 Date: May 11 Final Exam ( 11:15 AM 1:45 PM : 150 Minutes ) This exam will account for either 10% or 20% of your overall grade depending on your relative performance
More informationImplementing Uniform Reliable Broadcast with Binary Consensus in Systems with Fair-Lossy Links
Implementing Uniform Reliable Broadcast with Binary Consensus in Systems with Fair-Lossy Links Jialin Zhang Tsinghua University zhanggl02@mails.tsinghua.edu.cn Wei Chen Microsoft Research Asia weic@microsoft.com
More informationDecentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication 1
Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication 1 Stavros Tripakis 2 VERIMAG Technical Report TR-2004-26 November 2004 Abstract We introduce problems of decentralized
More informationGlobal Real-Time Semaphore Protocols: A Survey, Unified Analysis, and Comparison
Global Real-Time Semaphore Protocols: A Survey, Unified Analysis, and Comparison Maolin Yang Alexander Wieder Björn B. Brandenburg Max Planck Institute for Software Systems (MPI-SWS) University of Electronic
More informationRate Monotonic Analysis (RMA)
Rate Monotonic Analysis (RMA) ktw@csie.ntu.edu.tw (Real-Time and Embedded System Laboratory) Major References: An Introduction to Rate Monotonic Analysis Tutorial Notes SEI MU* Distributed Real-Time System
More informationResource 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 informationWorst-Case Execution Time Analysis. LS 12, TU Dortmund
Worst-Case Execution Time Analysis Prof. Dr. Jian-Jia Chen LS 12, TU Dortmund 09/10, Jan., 2018 Prof. Dr. Jian-Jia Chen (LS 12, TU Dortmund) 1 / 43 Most Essential Assumptions for Real-Time Systems Upper
More informationHalf Life Variable Quantum Time Round Robin (HLVQTRR)
Half Life Variable Quantum Time Round Robin () Simon Ashiru, Salleh Abdullahi, Sahalu Junaidu Department of Mathematics, ABU Zaria, Nigeria Abstract Round Robin (RR), one of the oldest CPU scheduling algorithms
More informationScheduling 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 informationINF 4140: Models of Concurrency Series 4
Universitetet i Oslo Institutt for Informatikk PMA Olaf Owe, Martin Steffen, Toktam Ramezani INF 4140: Models of Concurrency Series 4 Høst 2016 30. 9. 2016 Topic: Monitors (Exercises with hints for solution)
More informationLast class: Today: Threads. CPU Scheduling
1 Last class: Threads Today: CPU Scheduling 2 Resource Allocation In a multiprogramming system, we need to share resources among the running processes What are the types of OS resources? Question: Which
More informationLSN 15 Processor Scheduling
LSN 15 Processor Scheduling ECT362 Operating Systems Department of Engineering Technology LSN 15 Processor Scheduling LSN 15 FCFS/FIFO Scheduling Each process joins the Ready queue When the current process
More informationAllocate-On-Use Space Complexity of Shared-Memory Algorithms
Allocate-On-Use Space Complexity of Shared-Memory Algorithms James Aspnes Bernhard Haeupler Alexander Tong Philipp Woelfel DISC 2018 Asynchronous shared memory model Processes: p 1 p 2 p 3 p n Objects:
More informationScheduling. 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 informationExam 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 informationExploiting 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 informationBarrier. Overview: Synchronous Computations. Barriers. Counter-based or Linear Barriers
Overview: Synchronous Computations Barrier barriers: linear, tree-based and butterfly degrees of synchronization synchronous example : Jacobi Iterations serial and parallel code, performance analysis synchronous
More informationThe algorithmic analysis of hybrid system
The algorithmic analysis of hybrid system Authors: R.Alur, C. Courcoubetis etc. Course teacher: Prof. Ugo Buy Xin Li, Huiyong Xiao Nov. 13, 2002 Summary What s a hybrid system? Definition of Hybrid Automaton
More informationAnalysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation*
Analysis and Implementation of Global Preemptive Fixed-Priority Scheduling with Dynamic Cache Allocation* Meng Xu Linh Thi Xuan Phan Hyon-Young Choi Insup Lee University of Pennsylvania Abstract We introduce
More informationENHANCING CPU PERFORMANCE USING SUBCONTRARY MEAN DYNAMIC ROUND ROBIN (SMDRR) SCHEDULING ALGORITHM
ENHANCING CPU PERFORMANCE USING SUBCONTRARY MEAN DYNAMIC ROUND ROBIN (SMD) SCHEDULING ALGORITHM Sourav Kumar Bhoi *1, Sanjaya Kumar Panda 2 and Debashee Tarai 3 * 1 Department of Computer Science & Engineering,
More informationTrajectory planning and feedforward design for electromechanical motion systems version 2
2 Trajectory planning and feedforward design for electromechanical motion systems version 2 Report nr. DCT 2003-8 Paul Lambrechts Email: P.F.Lambrechts@tue.nl April, 2003 Abstract This report considers
More informationOn-the-Fly Model Checking for Extended Action-Based Probabilistic Operators
On-the-Fly Model Checking for Extended Action-Based Probabilistic Operators Radu Mateescu and José Ignacio Requeno Inria Grenoble and LIG / Convecs http://convecs.inria.fr SPIN 2016 - Eindhoven, March
More informationOn Two Class-Constrained Versions of the Multiple Knapsack Problem
On Two Class-Constrained Versions of the Multiple Knapsack Problem Hadas Shachnai Tami Tamir Department of Computer Science The Technion, Haifa 32000, Israel Abstract We study two variants of the classic
More information