Outlook. Deadlock Characterization Deadlock Prevention Deadlock Avoidance
|
|
- Arlene Alexander
- 5 years ago
- Views:
Transcription
1 Deadlocks
2 Outlook Deadlock Characterization Deadlock Prevention Deadlock Avoidance Deadlock Detection and Recovery e 2
3 Deadlock Characterization 3
4 Motivation System owns many resources of the types Memory, CPU, Files, and I/O Many resources require exclusive access; e.g. printer or CD-RW Usage pattern request R use R release R Allocation of more than one resource may lead to a deadlock 4
5 Deadlock Example Assume two processes P 1 and P 2 with P i starting to copy data from resource CD i to CD i+1 P1 Request CD1 P2 Request CD2 Request CD2 Request CD1 <Copy> <Copy> Release CD2 Release CD1 Release CD1 Release CD2 5
6 Deadlock Example Both may wait on each other to release the resource P1 Request CD1 Request CD2 P2 Request CD2 Request CD1 <Copy> <Copy> Release CD2 Release CD1 Release CD1 Release CD2 6
7 Necessary Conditions for a Deadlock Mutual exclusion only one process can use a resource at a time Hold and wait Process holds at least one resource and is waiting to acquire other ones No preemption p Process releases resources only after completing its task Circular wait There is a process ordering such that process P i waits for a resource allocated by P i+1 mod n 7
8 Resource Allocation Graph Vertices {P 1,,P n } the set of processes {R 1,,R m } the set of resources; each resource may have several instances; each instance is denoted by a dot P i R i Edges P i R k :P i requests an instance of R k R k P j : P j holds an instance of R k P i P j Rk 8
9 Resource Allocation Graph: Example 9
10 Resource Allocation Graph: Properties Deadlock Cycle 10
11 Resource Allocation Graph: Properties All resources have a single instance: Deadlock Cycle Cycle involves only single instance resources Deadlock (i.e. in such situation a cycle is a necessary and sufficient condition for a deadlock) 11
12 Cycle Deadlock? Deadlock No deadlock 12
13 Methods for handling deadlocks Use a protocol to prevent or avoid deadlocks, assuring that the system never enters a deadlock state Deadlock prevention provides a set of method to assure that at least one of the four necessary deadlock conditions cannot hold Deadlock avoidance decide for each process if it can proceed or has to wait based on available resources, currently allocated resources and the resources allocated by a process in future (processes have to know this in advance!) Allow the system to enter a deadlock state, detect it and recover Ignore the problem and pretend that deadlocks never occur in the system 13
14 Deadlock Prevention 14
15 Deadlock Prevention Idea: Ensure that one of the four necessary conditions must not hold Mutual exclusion Reasonable for sharable resources like read only files (However, other resources like a printer are intrinsically non-sharable and thus need mutual exclusion) Hold and Wait Request all resources prior to execution or Release all resources before allocating new ones 15
16 Deadlock Prevention No preemption Preempt all resources of a process requesting a resource which is already allocated Process is inserted in the waiting queue of preempted and the new requested resource Process can continue if all these resources are granted Alternative: preempt only these resources which are being requested during the wait Process is placed in waiting queue of requested resource Allocated resources are preempted p only if needed by another process 16
17 Deadlock Prevention Circular Wait Total ordering on resources F: {R 1, R m } IN Lock resources in ascending/descending order Alternative: all resources greater/smaller or equal have to be released before locking the new one Locking all resources in ascending order in fact prevents circular wait. Assume for the sake of contradiction a process set {P1,,Pn} such that Pi holds resource Ri and waits for resource Ri+1 which is held by Pi+1 (modulo n). Since Pi request resource Ri after Ri+1 (modulo n), we have: Thus: 17
18 Deadlock Prevention Circular Wait Ordering alone does not prevent circular wait It s up to the application programmers to follow the ordering System may issue a warning if ordering is not followed How to decide on the right ordering? Idea: ordering is determined dynamically while programs are executing Example: Lock-order verifier witness on BSD UNIX used in conjunction with mutual-exclusion locks 18
19 Deadlock Prevention (witness example) Thread 1: pthread_mutex_lock(&locka); pthread_mutex_lock(&lockb); /* do some work */ pthread_mutex_unlock(&lockb); t l kb) pthread_mutex_unlock(&locka); Thread 2: pthread_mutex_lock(&lockb); pthread_ mutex_ lock(&locka); /* do some work */ pthread_mutex_unlock(&locka); pthread_mutex_unlock(&lockb); unlock(&lockb); Lock ordering if Thread 1 executed first: Once Thread 2 executes, witness generates a warning on the console. 19
20 Deadlock Avoidance 20
21 Deadlock Avoidance: Safe States Assumption: each process declares the max. number of resources instances it needs Definition: P 1,,P n is a safe sequence if possible resource requests of P i can be satisfied by Currently available resources and Resources held by all P j for j<i System is in a safe state if one such sequence exists System is in an unsafe state if no such sequence exists deadlock unsafe System in safe state no deadlock can occur Deadlock system is in unsafe state System in unsafe state t not necessarily implies a deadlock safe 21
22 Example Consider 12 resource instances and three processes P 0, P 1, P 2 with the following allocations and maximum needs Maximum P P P Allocated 22
23 Example P 1 1, P 0 0, P 2 is a safe sequence Maximum Allocated Available P P 1 finishes P P P 0 finishes 23
24 A System can go from Safe to Unsafe State Example: assume P2 is granted an additional resource Maximum P P P Allocated Only 2 resources available only P1 can be allocated all resources 24
25 A System can go from Safe to Unsafe State Maximum Allocated Available P P P 1 finishes P P 0 may request 5 more resources P 0 has to wait P 2 may request 6 more resources P 2 has to wait 2 y q 2 Deadlock! 25
26 Deadlock Avoidance: General Idea System starts in a safe state For each request Grant resource if system remains in a safe state Process has to wait, otherwise We consider two example algorithms which assure the system staying in safe state Resource-allocation-graph algorithm Banker s algorithm 26
27 Resource-Allocation-Graph Algorithm Assumption: each resource has exactly one instance Idea: extend resource allocation Graph by claim edges Transitions: Claim Edge request Request Edge R R R released granted Assignment Edge P P P Grant a resource (either as assigned if it is free or as requested if it is held by another process) if the graph remains cycle free Otherwise process has to wait 27
28 Resource-Allocation-Graph Algorithm: Example R 2 may not be granted to P 2 (a) (b) 28
29 Banker s Algorithm Resource-allocation-graph algorithm not applicable when resources can have more than one instance. The following algorithm is applicable then as well. A process must declare in advance its maximum need for each resource type. This number may not exceed the number of available resources of fthese types. When a process request resources the system checks if granting the resources leaves the system in safe state If it will, resources are allocated Otherwise, the process must wait until other processes have released enough resources Before we proceed: we need the following data structures 29
30 Banker s Algorithm Let n be the number of processes and m be the number of resource types We declare the following vector of length m and the following matrices of size n x m Available[j]=k k instances of resource Rj available Max[i][j]=k Pi requests at most k instances of Rj Allocation[i][j]=k Pi is allocated k instances of Rj Need[i][j]=Max[i][j] - Allocation[i][j] 30
31 Banker s Algorithm Some notation before we proceed Let x = (1 (x1, xn) and y = (1 (y1,,yn) be two vectors of length n. We say x y iff x1 y1,, xn yn We say x < y if x y and x y Example: if x=(0,3,2,1) and y=(1,7,3,2) then x y and x < y. We treat each row in the matrices Allocation and Need as vectors of length m and refer to them as Allocation i and Need i Allocation i specifies the ressources currently allocated to process Pi Next i specifies the additional ressources that Pi may still request to complete ist task. 31
32 Banker s Algorithm: Safety Algorithm 1.Let Work and Finish be vectors of length m and n, respectively. Initialize: Work = Available Finish [i] = false for i = 0, 1,, n Find an i such that both: (a) Finish [i] = false (b) Need i Work If no such i exists, go to step 4. 3.Work = Work + Allocation i Finish[i] = true go to step 2. 4.If Finish [i] == true for all i, then the system is in a safe state. 32
33 Banker s Algorithm: Request Algorithm Input: Resource request Request i by process P i, i.e., if Request i [j] == k then process P i wants k instances of resource type R j. p i yp j If Request i Need i we can continue, otherwise we are already done (error: the process has exceeded its maximum claim) If Request i Available we can continue, otherwise P i must wait, since the resources are not available Pretend resource allocation Available = Available Request i Allocation i = Allocation i + Request i Need i = Need i Request i Check for safe state (Safety Algorithm) P i gets resource if result state is safe Otherwise P i must wait Restore old state 33
34 Banker s Algorithm: Example Consider a system with fife processes P 0, P 1, P 2, P 3, P 4 and three resource types A, B, C. Instances A B C Available A B C Allocation Max Need A B C A B C P P P P P 0 A B C P P P P P
35 Banker s Algorithm: Example Instances A B C Available A B C Is the system in safe state? Allocation Max Fin A B C A B C ish P P P P P Need A B C P P P P P Consider the sequence: 35
36 Banker s Algorithm: Example Instances A B C Available A B C Consider now that process P1 requests one additional resource of type A and dtwo of ftype B. Allocation Max Fin Need A B C A B C ish A B C P P P P P P P P P P Request(1) = (,, ). First check that Request(1) Available. 36
37 Banker s Algorithm: Example Instances A B C Available A B C Consider now that process P1 requests one additional resource of type A and dtwo of ftype B. Allocation Max Fin Need A B C A B C ish A B C P P P P P P 1 P P P P Request(1) = (1,0,2).OldAllocation(1)=, (2,0,0), 0 Now pretend that the request has been fulfilled. 37
38 Banker s Algorithm: Example Instances A B C Available A B C Consider now that process P1 requests one additional resource of type A and dtwo of ftype B. Allocation Max Fin Need A B C A B C ish A B C P P P P P P P P P P Check if a safe sequence can be found. As done before we can find for instance <P1, P3, P4, P0, P2>. Exercise. 38
39 Banker s Algorithm: Example Instances A B C Available A B C Consider now that new system state. Can the following request be granted? Allocation Max Fin Need A B C A B C ish A B C P P P P P P P P P P Request(4) = ( 3, 3, 0). First check that Request(4) Available. 39
40 Banker s Algorithm: Example Instances A B C Available A B C Consider now that new system state. Can the following request be granted? Allocation Max Fin Need A B C A B C ish A B C P P P P P P P P P P Request(0)=( ( 0,2,0).ObviouslyRequest(0), 0 Available. But remains the system in a safe state? 40
41 Deadlock Detection and Recovery 41
42 Deadlock Detection System without deadlock prevention or avoidance deadlock may occur If deadlocks are to be handled, however, e the system must provide then Algorithm which examines whether a deadlock has occurred Algorithm to recover from a deadlock We consider two methods again Wait-for-graph: each resource has only one instance and Algorithm similar to bankers-algorithm when resources can have several instances 42
43 DD: Single Instance of a Resource Remove resource nodes Resource allocation graph Wait-for graph Deadlock wait for graph contains a circle Maintain wait-for-graph Periodically check for deadlock O(n^2) 43
44 DD: Several Instances of a Resource Type We consider m resource types and n processes. We define similar data structures as in the Banker s algorithm Available: A vector of length m indicates the number of available resources of each type. Allocation: An n x m matrix defines the number of resources of each type currently allocated to each process. Request: An n x m matrix indicates the current request of each process. If Request [i][j]= k, k then process P i is requesting k more instances of resource type R j. In the following we consider again the relation and dfor each processor Pi the rows of Allocation and Request as vectors Allocation i and Request i 44
45 DD: Several Instances of a Resource Type 1. Let Work and Finish be vectors of length m and n, respectively Initialize: (a) Work = Available (b) For i = 1,2,, n, if Allocation i 0, then Finish[i] [] = false;otherwise, Finish[i] [] = true. 2. Find an index i such that both: (a) Finish[i] == false (b) Request i Work If no such i exists, go to step 4. 45
46 DD: Several Instances of a Resource Type 3. Work = Work + Allocation i Finish[i] = true go to step If Finish[i] i == false, for some i, i 1 i n, then the system is in deadlock state. Moreover, if Finish[i] i == false, then P i is deadlocked. dl d 46
47 Example Instances A B C Available A B C Is the system in a deadlocked state? Allocation Request Fin A B C A B C ish P P P P P Consider the sequence: 47
48 Example Instances A B C Available A B C Suppose now that process P2 makes one additional request for an instance of type C. Allocation Request Fin A B C A B C ish P P P P P Is the system in a deadlocked state? We can reclaim the resources of Process P0. But then? 48
49 Detection-Algorithm Usage When to invoke the deadlock detection algorithm? In the extreme, whenever a requested resource could not be granted immediately. Advantage: in this case, the process causing the deadlock can be identified. Disadvantage: incurs a considerable overhead in computation time. Less expensive alternative: invoke the algorithm in less frequent intervals e.g. once per hour (deadlocks occur infrequently) or whenever CPU utilization drops below 40% (deadlock eventually cripples system throughput and causes CPU utilization drop) Once a deadlock was detected: how to recover from a deadlock? (Inform the user/operator: he can for instance manually terminate and restart processes or the whole system) System recovers automatically by process termination System recovers automatically by resource preemption 49
50 Recovery from Deadlock: Process Termination System reclaims all resources allocated by the terminated thread Two possible methods Abort all deadlocked processes Abort one process at a time What is a good sequence? Many Factors: Priority, remaining computation time, number and type of allocated/required resources, interactive/batch 50
51 Recovery from Deadlock: Resource Preemption Successively preempt resources and pass them to others Continue this until deadlock is broken Issues to be addressed Select victim which resources and which process are to be preempted? (consider for instance the time a process already computed and/or the time it still predicts its outstanding computation.) Rollback Process has to be rolled back to a safe state from where it can resume execution once it got all required resources (back) Starvation how to assure that resources are not always preempted from one process? (e.g. include the number of rollback in the cost factor when determining the process from which resources are preempted) 51
52 Summary and References 52
53 Summary Deadlock: two or more processes waiting indefinitely for an event which can only be caused by the waiting processes themselves Three principal methods to deal with deadlocks Protocols to avoid or prevent deadlocks, assuring that the system never enters a deadlock state Allow the system running into a deadlock situation, detect it at some point in time and recover Just ignore the problem as done in Windows or UNIX (deadlock occur infrequently) Four necessary and sufficient conditions for a deadlock: mutual exclusion, hold and wait, no preemption, and circular wait Idea of deadlock prevention: just assure that not all four condition can occur at the same time Deadlock avoidance algorithms: less stringent but require a priory information on how (many) resources might be used by a process. Deadlock detection alternatives: how often to invoke? what to do if a deadlock is detected? Whenever preemption is used, three issues must be addressed: selecting a victim, rollback and starvation. 53
54 References Silberschatz, Galvin, Gagne, Operating System Concepts, Seventh Edition, Wiley, 2005 Chapter 7 Deadlocks 54
Chapter 7: Deadlocks. Operating System Concepts 9 th Edition
Chapter 7: Deadlocks Silberschatz, Galvin and Gagne 2013 Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationChapter 8: Deadlocks. The Deadlock Problem
Chapter 8: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock
More informationChapter 7: Deadlocks. Operating System Concepts 8 th Edition,
Chapter 7: Deadlocks, Silberschatz, Galvin and Gagne 2009 Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance
More informationChapter 7: Deadlocks. Chapter 7: Deadlocks. The Deadlock Problem. Chapter Objectives. System Model. Bridge Crossing Example
Silberschatz, Galvin and Gagne 2009 Chapter 7: Deadlocks Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance
More informationChapter 7 : 7: Deadlocks Silberschatz, Galvin and Gagne 2009 Operating System Concepts 8th Edition, Chapter 7: Deadlocks
Chapter 7: Deadlocks, Silberschatz, Galvin and Gagne 2009 Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance
More informationChapter 7: Deadlocks
Chapter 7: Deadlocks Chapter 7: Deadlocks 7.1 System Model 7.2 Deadlock Characterization 7.3 Methods for Handling Deadlocks 7.4 Deadlock Prevention 7.5 Deadlock Avoidance 7.6 Deadlock Detection 7.7 Recovery
More informationThe Slide does not contain all the information and cannot be treated as a study material for Operating System. Please refer the text book for exams.
The Slide does not contain all the information and cannot be treated as a study material for Operating System. Please refer the text book for exams. System Model Deadlock Characterization Methods of handling
More informationChapter 7: Deadlocks
Chapter 7: Deadlocks Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from
More informationChapter 7: Deadlocks. Operating System Concepts with Java 8 th Edition
Chapter 7: Deadlocks 7.1 Silberschatz, Galvin and Gagne 2009 Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock
More informationChapter 8: Deadlocks
Chapter 8: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock
More informationChapter 8: Deadlocks. The Deadlock Problem. System Model. Bridge Crossing Example. Resource-Allocation Graph. Deadlock Characterization
Chapter 8: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined
More informationThe Deadlock Problem
The Deadlock Problem A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set. Example System has 2 disk drives. P 1 and P 2 each hold one
More informationCS420: Operating Systems. Deadlocks & Deadlock Prevention
Deadlocks & Deadlock Prevention James Moscola Department of Physical Sciences York College of Pennsylvania Based on Operating System Concepts, 9th Edition by Silberschatz, Galvin, Gagne The Deadlock Problem
More informationChapter 7: Deadlocks
Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Chapter
More informationChapter 7: Deadlocks. Operating System Concepts 9 th Edition! Silberschatz, Galvin and Gagne 2013!
Chapter 7: Deadlocks Silberschatz, Galvin and Gagne 2013! Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationThe Deadlock Problem (1)
Deadlocks The Deadlock Problem (1) A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set. Example System has 2 disk drives. P 1 and P 2
More informationDeadlocks. Prepared By: Kaushik Vaghani
Deadlocks Prepared By : Kaushik Vaghani Outline System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection & Recovery The Deadlock Problem
More informationDeadlock Prevention. Restrain the ways request can be made. Mutual Exclusion not required for sharable resources; must hold for nonsharable resources.
Deadlock Prevention Restrain the ways request can be made. Mutual Exclusion not required for sharable resources; must hold for nonsharable resources. Hold and Wait must guarantee that whenever a process
More informationModule 7: Deadlocks. The Deadlock Problem. Bridge Crossing Example. System Model
Module 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined
More informationOPERATING SYSTEMS. Prescribed Text Book. Operating System Principles, Seventh Edition. Abraham Silberschatz, Peter Baer Galvin and Greg Gagne
OPERATING SYSTEMS Prescribed Text Book Operating System Principles, Seventh Edition By Abraham Silberschatz, Peter Baer Galvin and Greg Gagne 1 DEADLOCKS In a multi programming environment, several processes
More informationChapter 8: Deadlocks. Operating System Concepts with Java
Chapter 8: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock
More informationChapter 7: Deadlocks. Operating System Concepts 9 th Edition
Chapter 7: Deadlocks Silberschatz, Galvin and Gagne 2013 Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationChapter 7: Deadlocks. Operating System Concepts 9 th Edition
Chapter 7: Deadlocks Silberschatz, Galvin and Gagne 2013 Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationSilberschatz, Galvin and Gagne 2013! CPU cycles, memory space, I/O devices! " Silberschatz, Galvin and Gagne 2013!
Chapter 7: Deadlocks Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock 7.2 Chapter
More informationChapter 7: Deadlocks. Operating System Concepts 8 th Edition,
Chapter 7: Deadlocks, Silberschatz, Galvin and Gagne 2009 Chapter Objectives To develop a description of deadlocks, which prevent sets of concurrent processes from completing their tasks To present a number
More informationPrinciples of Operating Systems
Principles of Operating Systems Lecture 11 - Deadlocks Ardalan Amiri Sani (ardalan@uci.edu) [lecture slides contains some content adapted from previous slides by Prof. Nalini Venkatasubramanian, and course
More informationOperating systems. Lecture 5. Deadlock: System Model. Deadlock: System Model. Process synchronization Deadlocks. Deadlock: System Model
Lecture 5 Operating systems Process synchronization Deadlocks Deadlock: System Model Computer system: Processes (program in execution); Resources (CPU, memory space, files, I/O devices, on so on). Deadlock:
More informationCMSC 412. Announcements
CMSC 412 Deadlock Reading Announcements Chapter 7 Midterm next Monday In class Will have a review on Wednesday Project 3 due Friday Project 4 will be posted the same day 1 1 The Deadlock Problem A set
More informationUNIT-5 Q1. What is deadlock problem? Explain the system model of deadlock.
UNIT-5 Q1. What is deadlock problem? Explain the system model of deadlock. The Deadlock Problem A set of blocked processes each holding a resource and waiting to acquire a resource held by another process
More informationPrinciples of Operating Systems
Principles of Operating Systems Lecture 16-17 - Deadlocks Ardalan Amiri Sani (ardalan@uci.edu) [lecture slides contains some content adapted from previous slides by Prof. Nalini Venkatasubramanian, and
More informationChapter 7: Deadlocks. Operating System Concepts 9th Edition DM510-14
Chapter 7: Deadlocks Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock 7.2 Chapter
More informationDeadlock. Concepts to discuss. A System Model. Deadlock Characterization. Deadlock: Dining-Philosophers Example. Deadlock: Bridge Crossing Example
Concepts to discuss Deadlock CSCI 315 Operating Systems Design Department of Computer Science Deadlock Livelock Spinlock vs. Blocking Notice: The slides for this lecture have been largely based on those
More informationCS307 Operating Systems Deadlocks
CS307 Deadlocks Fan Wu Department of Computer Science and Engineering Shanghai Jiao Tong University Spring 2016 Bridge Crossing Example Traffic only in one direction Each section of a bridge can be viewed
More informationDeadlocks. Bridge Crossing Example. The Problem of Deadlock. Deadlock Characterization. Resource-Allocation Graph. System Model
CS07 Bridge Crossing Example Deadlocks Fan Wu Department of Computer Science and Engineering Shanghai Jiao Tong University Spring 2016 Traffic only in one direction Each section of a bridge can be viewed
More informationChapter 7: Deadlocks. Operating System Concepts 8 th Edition,! Silberschatz, Galvin and Gagne 2009!
Chapter 7: Deadlocks Operating System Concepts 8 th Edition,! Silberschatz, Galvin and Gagne 2009! Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling
More informationThe Deadlock Problem
Deadlocks The Deadlock Problem A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set. Example System has 2 disk drives. P1 and P2 each
More informationModule 7: Deadlocks. The Deadlock Problem
Module 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock
More informationDeadlocks. Deadlock Overview
Deadlocks Gordon College Stephen Brinton Deadlock Overview The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationSystem Model. Types of resources Reusable Resources Consumable Resources
Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock System Model Types
More informationModule 7: Deadlocks. System Model. Deadlock Characterization. Methods for Handling Deadlocks. Deadlock Prevention. Deadlock Avoidance
Module 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock
More informationRoadmap. Deadlock Prevention. Deadlock Prevention (Cont.) Deadlock Detection. Exercise. Tevfik Koşar. CSE 421/521 - Operating Systems Fall 2012
CSE 421/521 - Operating Systems Fall 2012 Roadmap Lecture - XI Deadlocks - II Deadlocks Deadlock Prevention Deadlock Detection Deadlock Recovery Deadlock Avoidance Tevfik Koşar University at Buffalo October
More informationThe Deadlock Problem
Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock The Deadlock
More informationDeadlocks. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University
Deadlocks Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics What is deadlock? Deadlock characterization Four conditions for deadlock
More informationDeadlocks. Operating System Concepts - 7 th Edition, Feb 14, 2005
Deadlocks Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock 7.2 Silberschatz,
More informationCSE Opera+ng System Principles
CSE 30341 Opera+ng System Principles Deadlocks Overview System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock
More informationRoadmap. Safe State. Deadlock Avoidance. Basic Facts. Safe, Unsafe, Deadlock State. Tevfik Koşar. CSC Operating Systems Spring 2007
CSC 4103 - Operating Systems Spring 2007 Roadmap Lecture - IX Deadlocks - II Deadlocks Deadlock Avoidance Deadlock Detection Recovery from Deadlock Tevfik Koşar Louisiana State University February 15 th,
More informationChapter 7: Deadlocks
Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock
More informationChapter 7: Deadlocks. Operating System Concepts 9 th Edition
Chapter 7: Deadlocks Silberschatz, Galvin and Gagne 2013 Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationCOP 4610: Introduction to Operating Systems (Spring 2016) Chapter 7 Deadlocks. Zhi Wang Florida State University
COP 4610: Introduction to Operating Systems (Spring 2016) Chapter 7 Deadlocks Zhi Wang Florida State University Contents Deadlock problem System model Handling deadlocks deadlock prevention deadlock avoidance
More informationICS Principles of Operating Systems. Lectures Set 5- Deadlocks Prof. Nalini Venkatasubramanian
ICS 143 - Principles of Operating Systems Lectures Set 5- Deadlocks Prof. Nalini Venkatasubramanian nalini@ics.uci.edu Outline System Model Deadlock Characterization Methods for handling deadlocks Deadlock
More informationModule 6: Deadlocks. Reading: Chapter 7
Module 6: Deadlocks Reading: Chapter 7 Objective: To develop a description of deadlocks, which prevent sets of concurrent processes from completing their tasks To present a number of different methods
More informationCHAPTER 7: DEADLOCKS. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.
CHAPTER 7: DEADLOCKS By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention
More informationChapter 7: Deadlocks. Operating System Concepts 9 th Edition
Chapter 7: Deadlocks Silberschatz, Galvin and Gagne 2013 Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationCSC Operating Systems Fall Lecture - XII Deadlocks - III. Tevfik Ko!ar. Louisiana State University. October 6 th, 2009
CSC 4103 - Operating Systems Fall 2009 Lecture - XII Deadlocks - III Tevfik Ko!ar Louisiana State University October 6 th, 2009 1 Deadlock Detection Allow system to enter deadlock state Detection algorithm
More informationLecture 7 Deadlocks (chapter 7)
Bilkent University Department of Computer Engineering CS342 Operating Systems Lecture 7 Deadlocks (chapter 7) Dr. İbrahim Körpeoğlu http://www.cs.bilkent.edu.tr/~korpe 1 References The slides here are
More informationDeadlock Risk Management
Lecture 5: Deadlocks, Deadlock Risk Management Contents The Concept of Deadlock Resource Allocation Graph Approaches to Handling Deadlocks Deadlock Avoidance Deadlock Detection Recovery from Deadlock AE3B33OSD
More informationUNIT-3 DEADLOCKS DEADLOCKS
UNIT-3 DEADLOCKS Deadlocks: System Model - Deadlock Characterization - Methods for Handling Deadlocks - Deadlock Prevention. Deadlock Avoidance - Deadlock Detection - Recovery from Deadlock DEADLOCKS Definition:
More informationOperating Systems 2015 Spring by Euiseong Seo DEAD LOCK
Operating Systems 2015 Spring by Euiseong Seo DEAD LOCK Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationDeadlocks. Dr. Yingwu Zhu
Deadlocks Dr. Yingwu Zhu Deadlocks Synchronization is a live gun we can easily shoot ourselves in the foot Incorrect use of synchronization can block all processes You have likely been intuitively avoiding
More informationCS307: Operating Systems
CS307: Operating Systems Chentao Wu 吴晨涛 Associate Professor Dept. of Computer Science and Engineering Shanghai Jiao Tong University SEIEE Building 3-513 wuct@cs.sjtu.edu.cn Download Lectures ftp://public.sjtu.edu.cn
More informationDeadlocks. Minsoo Ryu. Real-Time Computing and Communications Lab. Hanyang University.
Deadlocks Minsoo Ryu Real-Time Computing and Communications Lab. Hanyang University msryu@hanyang.ac.kr Topics Covered System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention
More informationChapter 8: Deadlocks. The Deadlock Problem
Chapter 8: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock
More informationThe Deadlock Problem. Chapter 8: Deadlocks. Bridge Crossing Example. System Model. Deadlock Characterization. Resource-Allocation Graph
Chapter 8: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined
More informationChapter 7: Deadlocks CS370 Operating Systems
Chapter 7: Deadlocks CS370 Operating Systems Objectives: Description of deadlocks, which prevent sets of concurrent processes from completing their tasks Different methods for preventing or avoiding deadlocks
More informationUniversity of Babylon / College of Information Technology / Network Department. Operating System / Dr. Mahdi S. Almhanna & Dr. Rafah M.
Chapter 6 Methods for Handling Deadlocks Generally speaking, we can deal with the deadlock problem in one of three ways: We can use a protocol to prevent or avoid deadlocks, ensuring that the system will
More informationDeadlock. Chapter Objectives
Deadlock This chapter will discuss the following concepts: The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationIntroduction to Deadlocks
Unit 5 Introduction to Deadlocks Structure 5.1 Introduction Objectives 5.2 System Model 5.3 Deadlock Characterization Necessary Conditions for Deadlock Resource-Allocation Graph. 5.4 Deadlock Handling
More informationContents. Chapter 8 Deadlocks
Contents * All rights reserved, Tei-Wei Kuo, National Taiwan University,.. Introduction. Computer-System Structures. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization
More informationCHAPTER 7 - DEADLOCKS
CHAPTER 7 - DEADLOCKS 1 OBJECTIVES To develop a description of deadlocks, which prevent sets of concurrent processes from completing their tasks To present a number of different methods for preventing
More informationChapter 7: Deadlocks. Chapter 7: Deadlocks. System Model. Chapter Objectives
Chapter 7: Deadlocks Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Silberschatz,
More informationOperating Systems. Designed and Presented by Dr. Ayman Elshenawy Elsefy
Operating Systems Designed and Presented by Dr. Ayman Elshenawy Elsefy Dept. of Systems & Computer Eng.. AL-AZHAR University Website : eaymanelshenawy.wordpress.com Email : eaymanelshenawy@yahoo.com Reference
More informationBridge Crossing Example
CSCI 4401 Principles of Operating Systems I Deadlocks Vassil Roussev vassil@cs.uno.edu Bridge Crossing Example 2 Traffic only in one direction. Each section of a bridge can be viewed as a resource. If
More informationChapter 7: Deadlocks. Operating System Concepts 8th Edition, modified by Stewart Weiss
Chapter 7: Deadlocks, Chapter 7: Deadlocks The Deadlock Problem System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance (briefly) Deadlock Detection
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 17 Deadlock Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Claim edge may request- request
More informationOperating Systems. Deadlocks. Stephan Sigg. November 30, Distributed and Ubiquitous Systems Technische Universität Braunschweig
Operating Systems Deadlocks Stephan Sigg Distributed and Ubiquitous Systems Technische Universität Braunschweig November 30, 2010 Stephan Sigg Operating Systems 1/86 Overview and Structure Introduction
More informationOPERATING SYSTEMS. Deadlocks
OPERATING SYSTEMS CS3502 Spring 2018 Deadlocks Chapter 7 Resource Allocation and Deallocation When a process needs resources, it will normally follow the sequence: 1. Request a number of instances of one
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 1019 L14 Deadlocks Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Creating threads without using
More informationChapter 7: Deadlocks. Chapter 7: Deadlocks. Deadlock Example. Chapter Objectives
Chapter 7: Deadlocks Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Silberschatz,
More informationDeadlocks. The Deadlock Problem. Bridge Crossing Example. Topics
Deadlocks Topics - System Model - Deadlock characterization - Methods for handling deadlocks - Deadlock prevention,avoidance - Deadlock detection and recovery The Deadlock Problem - A set of blocked processes
More informationThe Deadlock Problem. A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set.
Deadlock The Deadlock Problem A set of blocked processes each holding a resource and waiting to acquire a resource held by another process in the set Example semaphores A and B, initialized to 1 P 0 P
More informationChapter 8: Deadlocks. The Deadlock Problem
Chapter 8: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock Combined Approach to Deadlock
More informationPotential Deadlock Example
Deadlock Handling Notice: The slides for this lecture have been largely based on those accompanying an earlier edition of the course text Operating Systems Concepts, 9th ed., by Silberschatz, Galvin, and
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 16 Deadlock Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Does a cycle in a resource
More informationDeadlocks. Mehdi Kargahi School of ECE University of Tehran Spring 2008
Deadlocks Mehdi Kargahi School of ECE University of Tehran Spring 2008 What is a Deadlock Processes use resources in the following sequence: Request Use Release A number of processes may participate in
More informationPart II Process M anagement Management Chapter 7: Deadlocks Fall 2010
Part II Process Management Chapter 7: Deadlocks Fall 2010 1 System Model System resources are utilized in the following way: Request: If a process makes a request to use a system resource which cannot
More informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 1018 L14 Deadlocks Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Mutex vs Semaphore 2 2 FAQ Does
More informationChapter 7: Deadlocks
Chapter 7: Deadlocks Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from Deadlock 2009/11/30
More informationDeadlocks. System Model
Deadlocks System Model Several processes competing for resources. A process may wait for resources. If another waiting process holds resources, possible deadlock. NB: this is a process-coordination problem
More informationChapter - 4. Deadlocks Important Questions
Chapter - 4 Deadlocks Important Questions 1 1.What do you mean by Deadlocks? A process request for some resources. If the resources are not available at that time, the process enters a waiting state. The
More informationVI. Deadlocks. What is a Deadlock? Intended Schedule. Deadlock Problem (1) ???
Intended Schedule VI. Deadlocks Date Lecture Hand out Submission 0 20.04. Introduction to Operating Systems Course registration 1 27.04. Systems Programming using C (File Subsystem) 1. Assignment 2 04.05.
More informationVI. Deadlocks Operating Systems Prof. Dr. Marc H. Scholl DBIS U KN Summer Term
VI. Deadlocks 1 Intended Schedule Date Lecture Hand out Submission 0 20.04. Introduction to Operating Systems Course registration 1 27.04. Systems Programming using C (File Subsystem) 1. Assignment 2 04.05.
More informationCOMP 3713 Operating Systems Slides Part 3. Jim Diamond CAR 409 Jodrey School of Computer Science Acadia University
COMP 3713 Operating Systems Slides Part 3 Jim Diamond CAR 409 Jodrey School of Computer Science Acadia University Acknowledgements These slides borrow from those prepared for Operating System Concepts
More informationFinal Exam Review. CPSC 457, Spring 2016 June 29-30, M. Reza Zakerinasab Department of Computer Science, University of Calgary
Final Exam Review CPSC 457, Spring 2016 June 29-30, 2015 M. Reza Zakerinasab Department of Computer Science, University of Calgary Final Exam Components Final Exam: Monday July 4, 2016 @ 8 am in ICT 121
More informationRoadmap. Tevfik Koşar. CSE 421/521 - Operating Systems Fall Lecture - XI Deadlocks - II. University at Buffalo. Deadlocks. October 6 th, 2011
CSE 421/521 - Operating Systems Fall 2011 Lecture - XI Deadlocks - II Tevfik Koşar University at Buffalo October 6 th, 2011 1 Roadmap Deadlocks Resource Allocation Graphs Deadlock Prevention Deadlock Detection
More informationOperating System: Chap7 Deadlocks. National Tsing-Hua University 2016, Fall Semester
Operating System: Chap7 Deadlocks National Tsing-Hua University 2016, Fall Semester Overview System Model Deadlock Characterization Deadlock Prevention Deadlock Avoidance Deadlock Detection Recovery from
More informationOperating Systems. Deadlock. Lecture 7 Michael O Boyle
Operating Systems Deadlock Lecture 7 Michael O Boyle 1 2 Definition A thread is deadlocked when it s waiting for an event that can never occur I m waiting for you to clear the intersection, so I can proceed
More informationChapter 7: Deadlocks. Operating System Concepts 9 th Edition
Chapter 7: Deadlocks Silberschatz, Galvin and Gagne 2013 Chapter 7: Deadlocks System Model Deadlock Characterization Methods for Handling Deadlocks Deadlock Prevention Deadlock Avoidance Deadlock Detection
More informationTDDB68 + TDDD82. Lecture: Deadlocks
TDDB68 + TDDD82 Lecture: Deadlocks Mikael Asplund, Senior Lecturer Real-time Systems Laboratory Department of Computer and Information Science Thanks to Simin Nadjm-Tehrani and Christoph Kessler for much
More informationDeadlock Risk Management
Lecture 6: Deadlocks, Deadlock Risk Management Readers and Writers with Readers Priority Shared data semaphore wrt, readcountmutex; int readcount Initialization wrt = 1; readcountmutex = 1; readcount =
More informationRoadmap. Tevfik Ko!ar. CSC Operating Systems Spring Lecture - X Deadlocks - II. Louisiana State University. Deadlocks
CSC 4103 - Operating Systems Spring 2008 Lecture - X Deadlocks - II Tevfik Ko!ar Louisiana State University February 21 st, 2008 1 Roadmap Deadlocks Deadlock Prevention Deadlock Detection 2 Exercise (Silberschatz
More information