Hardware/Software Deadlock Avoidance for Multiprocessor Multiresource System-on-a-Chip
|
|
- Joseph Lawson
- 6 years ago
- Views:
Transcription
1 P1 Q1 Hardware/Software Deadlock Avoidance for Multiprocessor Multiresource System-on-a-Chip Q2 P2 Dissertation Defense By Jaehwan Lee Advisor: Vincent J. Mooney III School of Electrical and Computer Engineering Georgia Institute of Technology Atlanta, GA USA Georgia Institute of Technology
2 P1 Q1 Outline Q2 P2 Motivation and Objective Background and Prior Work Proofs about Deadlock Detection Unit Deadlock Avoidance Unit Parallel Banker s s Algorithm Unit Integration into δ hardware/software RTOS framework Conclusion Georgia Institute of Technology
3 Motivation - Technology Trends Future SoC s Multiple heterogeneous processors (tens of processes) Multiple on-chip hardware resources DSP, FFT, MPEG, GPS, Shared Memory, etc Examples Xilinx Virtex-II Pro FPGA includes multiple PowerPC Broadcom BCM1400 includes multiple MIPS64 Processes in such an SoC Dynamically request and use resources May end up in deadlock Current embedded system or single processor system Typically ignored today HW SW RTOS SoC: System on Chip Georgia Institute of Technology
4 Motivation - Does deadlock really matter? Examples of future real-time systems Human-like robot with multiple processes In case of deadlock Damage People get injured Law-suits Mars Rover In case of deadlock Money loss Time loss Industrial control Cars Even if low probability of deadlock, prefer no deadlock whatsoever Georgia Institute of Technology
5 Objective - Problem, Solution and Goal Problem How to deal with deadlock? Goal Allow software to make requests in any order Grant as many resources as possible Avoid deadlock correctly and quickly Solution A hardware/software mechanism of deadlock avoidance, easily applicable to Real-Time Multiprocessor System-on on-a-chip (SoC) design Georgia Institute of Technology
6 Background: Definitions Definition of Deadlock A system has a deadlock iff the system has a set of processes, each of which is blocked, waiting for requirements that can never be satisfied P1 Q1 Q2 P Georgia Institute of Technology
7 Background: Definitions Definition of Livelock Livelock is a situation where a request for a resource is repeatedly denied and possibly never accepted because of the unavailability of the resource, resulting in a stalled process, while the resource is made available for other process(es) which make progress Georgia Institute of Technology
8 Background: Definitions Definition of Deadlock Avoidance A way of dealing with deadlock where resource usage is dynamically controlled not to reach deadlock (i.e., on the fly, resource usage is controlled to ensure that there can never be deadlock) Georgia Institute of Technology
9 Background: Definitions Definition of a Safe Sequence A safe sequence is an enumeration p 1, p 2,, p n of all processes in the system, such that for each i=1, 2,,, n, the resources that p i may request are a subset of the union of resources currently available plus resources currently held by p 1, p 2,,, p i Georgia Institute of Technology
10 Background: Terms Request deadlock (R-dl) A deadlock situation directly caused by a request Assumptions: No restriction on resource usage (i) P1 requires either Q1, Q2, or both depending on software flow (ii) P2 also requires either Q1, Q2, or both (iii) We don t t know in advance When P1 and P2 take flows that they require both Q1 and Q2 P1 t1 Q1 Request edge t3 Q2 t2 P2 t4 Grant edge P1, P2: processes Q1, Q2: resources Georgia Institute of Technology
11 Background: Terms Grant deadlock (G-dl) A deadlock situation directly caused by a grant The same assumptions with the previous P1 P2 P3 P1 P2 P3 t1 t3 t2 t4 t5 Q1 Q2 Q3 Q1 Q2 Q3 Request edge Grant edge Assumption (iv): Priorities P1 > P2 > P Georgia Institute of Technology
12 Differentiation between R-dl and G-dl Reason Some actions can only be taken for either R-dl R or G-dl. G (E.g., G-dl G could have been avoided by granting Q2 to P3 instead of P2 in the previous G-dl G example.) P1 Q1 P1 P2 P3 Q2 P2 Q1 Q2 Q Georgia Institute of Technology
13 Why does deadlock occur? - Four Deadlock Conditions Properties of Resources Mutual Exclusion No simultaneous sharing of a resource No Preemption A resource can be released only by the process holding the resource. Behavior of Processes Hold and Wait A process may hold some resources while the process requests additional resources. Circular Wait A process must wait for unavailable resources to become available Georgia Institute of Technology
14 Background: Terms Single vs. Multiple Instance Resources Single instance resources A resource that can support one process at a time E.g., a printer Multiple instance resources A resource that can support a certain number of multiple processes simultaneously E.g., a counting semaphore associated with allocable memory Georgia Institute of Technology
15 Background: Terms Resource Allocation Graph (RAG) A Set of Nodes V = P U Q P i : processes, Q j : resources A Set of Edges E = (P( i Q j ) U ( U (Q j P i ) P 1 P 2 P 3 P 4 Request edge Grant edge Q 1 Q 2 Q 3 Q 4 Bipartite Graph Georgia Institute of Technology
16 Terms RAG and Corresponding Matrix Representation M Used in Deadlock Detection Unit (DDU) RAG Allocation matrix processes resources Georgia Institute of Technology
17 Terms RAG and Corresponding Matrix Representation M RAG request edges Allocation matrix grant edges Georgia Institute of Technology
18 Terms RAG and Corresponding Matrix Representation M Connect nodes Terminal nodes Terminal row Terminal column RAG Allocation matrix Incoming edge Outgoing edge Terminal edges Georgia Institute of Technology
19 Prior Work by Shiu, Tan and Mooney Deadlock Detection Hardware Unit (DDU) Matrix based parallel operation approach Terminal edge reduction technique to reveal cycles (i.e., deadlock) Terminal (i.e., removable) edge*: not related to deadlock Simple bit-wise Boolean operations Implementation easier Operation faster, O(min(m,n)) 2~3 orders of magnitude faster than software Novelty from previous algorithms Does NOT trace exact cycles Does NOT require linked lists P. Shiu, Y. Tan and V. Mooney, "A Novel Parallel Deadlock Detection Algorithm and Architecture," 9th International Workshop on Hardware/Software Codesign (CODES'01), pp , April P1 * Q1 P2 Q2 P3 Q Georgia Institute of Technology
20 Abstraction of DDU Check the reducibility of an allocation matrix Remove all terminal edges currently revealed at each step in matrix M If (either R s R s or G) in column i (terminal( column) remove all entries in column i If (either R s R s or G s) G in row j (terminal( row) Remove all entries in row j Iterate until (reducible) or empty Determine deadlock If empty (no edges), no deadlock If (empty), deadlock Terminal edges Iterations Georgia Institute of Technology Not empty Deadlock
21 Prior Work in Deadlock Avoidance Traditional Methods Require some knowledge of future requests Declare maximum claims (each process) Give a grant only if remaining in a safe state Advantages No deadlock No preemption Disadvantages Low resource utilization Worse for single unit resources Performance degradation Due to dynamic avoidance decision Practical issues long software run-time Georgia Institute of Technology
22 Prior Work in Deadlock Avoidance Dijkstra: : Banker s s Algorithm (1968) For a single multiple-instance instance resource Maximum claims strategy Habermann: : O(nm 2 ) (1969) For multiple-instance instance multiple resources Livelock problem Holt: O(mn) ) (1972) Solved livelock problem using wait-time time counters For general resource systems Belik (1990) Path matrix representation Resource allocation Changing an acyclic digraph while keeping it acyclic For multiple single-instance instance resources O(mn) ) in general, O(1) in the best case No prior work in hardware implementation of a deadlock avoidance approach Georgia Institute of Technology
23 P1 Q1 Outline Q2 P2 Motivation and Objective Background and Prior Work Proofs about Deadlock Detection Unit Deadlock Avoidance Unit Parallel Banker s s Algorithm Unit Integration into δ hardware/software RTOS framework Conclusion Georgia Institute of Technology
24 Proofs of the Correctness of and run-time complexity of DDU Why do proofs matter? Authenticity No false alarm To avoid any damages or liability To ensure timeliness in a real-time SoC Within a certain amount of time for a robot not to fall over in a deadlock * Additional details can be found in a journal submission and a technical report [3, 7] Georgia Institute of Technology
25 Proof of the Correctness of DDU Deadlock vs. Cycle Relation Deadlock Cycle(s) in an RAG Cycle(s) Deadlock P1 Q1 P1 P2 P3 Q2 P2 Q1 Q2 Q3 DDU detects deadlock iff there exists a cycle in an RAG Georgia Institute of Technology
26 Proof of the Correctness of DDU - Intuition behind proofs Remove edges in columns and rows with only G s or only R s Operations performed in parallel throughout the matrix at each iteration A cycle: a circular pairs of R-G edges in rows and in columns Step 0 Step 1 Step 2 Step 3 Step 4 Step 5 Completely reducible Iterations No deadlock Georgia Institute of Technology
27 Proof of the Run-time Complexity of DDU An upper bound on the number of edges in a path (not a cycle or RAG) = 2*min(m,n min(m,n) Due to the bipartite property DDU, implemented in hardware, completes its computation in at most 2*min(m,n min(m,n) - 3 steps O(min(m,n)) P1 P2 P3 P4 P5 P6 Q1 Q2 Q3 2*min(6,3)=6 * Additional details in a journal submission and a technical report [3, 7] Georgia Institute of Technology
28 P1 Q1 Outline Q2 P2 Motivation and Objective Background and Prior Work Proofs about Deadlock Detection Unit Deadlock Avoidance Unit Parallel Banker s s Algorithm Unit Integration into δ hardware/software RTOS framework Conclusion Georgia Institute of Technology
29 Deadlock Avoidance Unit (DAU) No declaration of maximum claims No restriction on resource usage Advantages Higher resource utilization Fast avoidance due to hardware implementation Disadvantages Somewhat unfairness on a special occasion When avoiding G-dl G (a lower priority process could proceed before a higher priority process, which would end up in deadlock) -- Similar concept to priority inheritance But, resulting in higher resource utilization Possibility of resource preemption When avoiding R-dlR Assumption: all resources single-instance instance Georgia Institute of Technology
30 Deadlock Avoidance Algorithm (DAA) An n event of a request Is the resource available? Y N Would cause R-dl? R Y N Resolve livelock as well as deadlock Grant it to the requester * No deadlock here Priority of requester > Priority of owner Y N Mark the request pending Mark the request pending Ask the current owner to release the resource Ask the requester to give up resource(s) return Georgia Institute of Technology
31 Deadlock Avoidance Algorithm (DAA) An n event of a release Any process is waiting? N Mark the resource available Y Granting it to the highest priority process causes G-dl? G Y Grant it to a process causing no deadlock after finding such a process Improve resource utilization N Grant it to the highest priority process waiting return Georgia Institute of Technology
32 Proof of the Correctness of DAA Proof with lemmas and theorems Theorem 1 (R-dl case) Denying the request in the case of R-dl results in livelock unless a process involved in the deadlock releases a resource involved in the deadlock Theorem 2 (G-dl case) For a given system, not currently deadlocked, where a grant of a resource occurs, there must exist at least one process to which the resource can be granted without deadlock Georgia Institute of Technology * Additional details in a technical report
33 Architecture of the DAU DDU Address decoder Address control (matrix) Start Cell access DAA Command registers Data Reset Logic Done Deadlock w/ FSM Status registers Georgia Institute of Technology DDU: Deadlock Detection Unit FSM: finite state machine
34 State Transition Diagram - DAA Logic FSM request available? n release y R-dl? y idle grant waiting? n n make pending find owner y R>O search next pending owner give up compare priorities temporary grant requester give up O>R y G-dl? grant FSM: finite state machine n Georgia Institute of Technology
35 DAU Experimentation - Target System-on-a-Chip Four MPC755 s Each CPU has 32KB I-Cache I and 32KB D-CacheD 100MHz external clock, 16MB shared memory HW SW RTOS Four resources Q1: Video Interface (VI) Q2: Inverse Discrete Cosine Transform (IDCT) Q3: Fast Fourier Transform (FFT) Q4: Network Interface (NI) Georgia Institute of Technology
36 DAU Experimentation - RTOS, Application, Environment Atalanta RTOS 0.3 By Sun, Blough and Mooney at Georgia Tech Each process requires two resources except P4 P1: processing a video stream (needs VI + IDCT) P2: separating/enhancing frames (needs IDCT + FFT) P3: extracting special images (needs FFT + VI) P4: transferring images (needs NI) One active process for each processing element (PE) Seamless CVE from Mentor Graphics Instruction accurate simulation VCS (Synopsys( Synopsys) ) and XRAY (Mentor) Georgia Institute of Technology
37 Experimental Results of DAU G-dl avoidance simulation: Two kinds DAU: Synopsys VCS runs compiled Verilog code DAA in software: MPC755 runs compiled C code in Seamless CVE Example application invokes deadlock avoidance 12 times P1 P2 P3 P1 P2 P3 t1 t3 t2 t4 t5 Q1 Q2 Q3 Q1 Q2 Q Georgia Institute of Technology
38 Experimental Results of DAU (cont d) G-dl avoidance simulation result Time line with resource usage Q 1 and Q and Q 2 P 1 t =801 1 t = Q 2 and Q and Q 3 P 2 t = t = t =24888 t 7 8 =34791 Q 2 and Q and Q 3 P 3 t = t =16809 t 6 6 =24885 bus clock cycles Georgia Institute of Technology
39 Experimental Results of DAU (cont d) G-dl avoidance simulation result Performance improvement 99% algorithm execution time reduction 37% reduction in an application execution time Method of Deadlock Avoidance Algorithm Exe. Time (cycles) Normalized Exe. Time Application Exe. Time (cycles) DAU Hardware 7 (average) 1X DAA in Software 2188 (average) 312X Georgia Institute of Technology
40 Experimental Results of DAU (cont d) R-dl avoidance simulation: Two kinds DAU: Synopsys VCS runs compiled Verilog code DAA in software: MPC755 runs compiled C code in Seamless CVE Example application invokes deadlock avoidance 14 times P1 P2 P3 t4 t1 t2 t3 P1 t6 P2 t5 P3 Q1 Q2 Q3 Q1 Q2 Q Georgia Institute of Technology
41 Experimental Results of DAU (cont d) R-dl avoidance simulation result Performance improvement 99% algorithm execution time reduction 44% reduction in an application execution time Method of Deadlock Avoidance Algorithm Exe. Time (cycles) Normalized Exe. Time Application Exe. Time (cycles) DAU Hardware 7.13 (average) 1X DAA in Software 2102 (average) 294X Georgia Institute of Technology
42 Synthesis Results of DAU Synopsys Design Compiler TSMC.25µm m technology library from Qualcore Logic 0.05% of the total SoC area with four PEs and memory Module Name DAU 5x5 7x7 10x10 15x15 20x20 MPSoC Total Area in terms of two-input NAND gates Million Clock period used: 4 ns Lines of Verilog HDL Code Georgia Institute of Technology TSMC: Taiwan Semiconductor Manufacturing Company PE: Processing Element
43 P1 Q1 Outline Q2 P2 Motivation and Objective Background and Prior Work Proofs about Deadlock Detection Unit Deadlock Avoidance Unit Parallel Banker s s Algorithm Unit Integration into δ hardware/software RTOS framework Conclusion Georgia Institute of Technology
44 Parallel Banker s Algorithm (PBA) Parallelized Version of the Banker s s Algorithm For multiple-instance instance resources Advantages Guarantee deadlock avoidance Support multiple instance resources Provide O(n) ) run-time complexity Reduced from the original O(mn 2 ) O(1) in the best case Disadvantages Require hardware Require maximum claim declaration May under-utilize utilize resources Georgia Institute of Technology
45 PBAU Architecture (3x3) Georgia Institute of Technology
46 Parallel Banker s Algorithm (PBA) An n event of a request Is the request valid? Y Are the resources available? N N Y Pretend allocation Safe check (next slide) Safe? Y Grant it N Undo alloc Deny the request Georgia Institute of Technology return
47 Parallel Banker s Algorithm (PBA) Safety check Work[j]:= ]:=Available[j]] for all j Finish[i] ] := false for all i Find all able-to to-finish processes i in parallel (i.e., Finish[i] ] == false and Need[i][j] Work[j] ] for all j) Does any such process still exist? N Decision Y For all such able-to to-finish processes i { Finish[i] ] := true Work[j] ] = Work[j] ] + Allocation[i][j] ] for all j } return Georgia Institute of Technology
48 Resource Allocation by PBA q 1 Initial state resources q 2 instances for resources available allocated p 1 for processes need p 2 allocated p 3 (Legend) Georgia Institute of Technology
49 Resource Allocation by PBA Current safe state q 1 resources q 2 instances for resources available allocated p 1 for processes need p 2 allocated p Georgia Institute of Technology
50 Resource Allocation by PBA Current safe state q 1 resources q 2 instances for resources available allocated p 1 for processes need p 2 allocated p Georgia Institute of Technology
51 Resource Allocation by PBA Next state, safe? q 1 resources q 2 instances for resources available allocated p 1 for processes need p 2 allocated p Georgia Institute of Technology
52 Resource Allocation by PBA instances q 1 resources q 2 for resources available Finish allocated p 1 p 2 for processes need allocated p Georgia Institute of Technology
53 Resource Allocation by PBA instances q 1 resources q 2 for resources available Finish allocated p 1 p 2 for processes need allocated p Georgia Institute of Technology
54 Resource Allocation by PBA instances q 1 resources q 2 for resources available Finish allocated p 1 p 2 for processes need allocated p Georgia Institute of Technology
55 Resource Allocation by PBA instances q 1 resources q 2 for resources available Finish allocated p 1 p 2 for processes need allocated p Georgia Institute of Technology
56 Resource Allocation by PBA instances q 1 resources q 2 for resources available Finish allocated p 1 p 2 for processes need allocated p 3 A safe sequence: p 2 p 1 p Georgia Institute of Technology
57 Resource Allocation by PBA instances q 1 resources q 2 for resources available Finish allocated p 1 p 2 for processes need allocated p 3 A safe sequence: p 2 p 1 p 3, 3 steps, i.e., O(n) Georgia Institute of Technology
58 Resource Allocation by PBA An example of O(1) run-time instances q 1 resources q 2 for resources available Finish allocated p 1 p 2 for processes need allocated p Georgia Institute of Technology
59 Resource Allocation by PBA An example of O(1) run-time instances q 1 resources q 2 for resources available Finish allocated p 1 p 2 for processes need allocated p 3 A safe sequence: any combination Georgia Institute of Technology
60 PBAU Experimentation - System and Application Five processors Four resources Q1: Multiple DSPs Q2: Hardware semaphores Q3: I/O buffers Q4: A memory allocator PBAU 5x5 A robotic application Five processes Requires multiple instances 22 times of service requests to PBAU Requests, releases and claim settings HW SW RTOS Georgia Institute of Technology
61 Experimental Results of PBAU Performance improvement 99% algorithm execution time reduction 19% reduction in an application execution time Method of Deadlock Avoidance Algorithm Exe. Time (cycles) Normalized Exe. Time Application Exe. Time (cycles) PBAU Hardware 3.32 (average) 1X BA in Software 5398 (average) 1625X Georgia Institute of Technology
62 Synthesis Results of PBAU Synopsys Design Compiler TSMC.25µm m technology library from Qualcore Logic 0.05% of the total SoC area with five PEs and memory All PBAUs able to handle up to 16 instances for each resource Module Name PBAU 5x5 8x8 10x10 15x15 20x20 MPSoC Georgia Institute of Technology Total Area in terms of two-input NAND gates Million Clock period used: 4 ns TSMC: Taiwan Semiconductor Manufacturing Company PE: Processing Element Lines of Verilog HDL Code
63 P1 Q1 Outline Q2 P2 Motivation and Objective Background and Prior Work Proofs about Deadlock Detection Unit Deadlock Avoidance Unit Parallel Banker s s Algorithm Unit Integration into the δ hardware/software RTOS framework Conclusion Georgia Institute of Technology
64 δ framework Hardware/Software RTOS/MPSoC Configuration Framework Enables automatic generation of different mixes of the HW/SW RTOS Can be generalized to instantiate additional HW or SW RTOS components Integrates parameterized IP Generators such as DDU, DAU and PBAU generators Designed by Mooney and Lee RTOS Components: designed by B. Akgul, P. Kuarchroen, J. Lee, K. Ryu, M. Shalan and E. Shin Georgia Institute of Technology
65 δ framework - Methodology δ Framework DDU User Input Hardware Description Library GUI Tool DAU PBAU Top.v User.h HW Compile HW Library Executable HW Compiled Hardware Library Modelsim Simulation in Seamless CVE Result and Feedback Makefile SW Compile Executable SW HW RTOS Info. SW RTOS Info. Application SW Library XRAY Georgia Institute of Technology
66 δ framework - Methodology GUI Bus: designed by K. Ryu SoCLC: designed by B.Akgul SoCDMMU: designed by M. Shalan Georgia Institute of Technology
67 δ framework - Methodology GUIs for a custom bus generation Georgia Institute of Technology
68 Deadlock IP generator GUI Georgia Institute of Technology
69 δ framework -Implementation Verilog top file generation example Start with PBAU description Generate instantiation code multiple instantiation code if needed (e.g., PEs) IP Library Desc PBAU ~~~ enddesc (i) Generate code clock clock_gen (SYSCLK); cpu_mpc750 cpu1 ( ); bpau pbau5x5 (addr, data, ); arbiter arb (br_bar, bg_bar ); Add wires and initial statements PEs 1,2,3, Memory 1,2, PBAU Clock Arbiter (iii) After Instantiation wire addr; wire data; wire br_bar; wire bg_bar; wire SYSCLK; initial begin end; (ii) Add wires and initial states Georgia Institute of Technology
70 Conclusion with Contribution Proofs of Deadlock Detection Unit (DDU) Correctness and run-time complexity Deadlock Avoidance Unit (DAU) Faster Deadlock Avoidance (312X) No prior knowledge about resource requirements No restrictions on resource usage Higher resource utilization Solution to livelock Parallel Banker s s Algorithm Unit (PBAU) Faster deadlock avoidance for multiple instance multiple resource systems (1600X) Small area (less than 0.1% in our example SoC) δ Hardware/Software RTOS partitioning framework With custom deadlock IP generator for a specific target Georgia Institute of Technology
71 Publications [1] ] J. Lee and V. Mooney An O(n) Parallel Banker s s Algorithm for System-on on-a-chip, Chip, submitted to Design, Automation and Test in Europe (DATE( DATE 05), under review. [2] ] J. Lee and V. Mooney Hardware/Software Partitioning of Operating Systems: Focus on Deadlock Detection and Avoidance, to be appeared in IEE Computer & Digital Techniques (IEE CDT), January [3] ] J. Lee and V. Mooney An O(min(m,n)) Parallel Deadlock Detection Algorithm, resubmitted to ACM Transactions on Design Automation of Electronic Systems (TODAES) on September 2004, under review. [4] ] J. Lee and V. Mooney A A Novel Deadlock k Avoidance Algorithm and Its Hardware Implementation, International Conference on Hardware/Software Codesign and System Synthesis (CODES 04),, pp , 205, September [5] J. Lee, V. Mooney, A. Daleby,, K. Ingstrom,, T. Klevin and L. Lindh, A A comparison of the RTU hardware RTOS with a Hardware/Software RTOS, Proceedings of the Asia South Pacific Design Automation Conference (ASPDAC( 2003), pp , 688, January Best Paper Award Candidate (one of 12 nominees; not selected for Best Paper). [6] J. Lee, K. Ryu and V. Mooney, A A framework for automatic generation of configuration files for a custom RTOS, Proceedings of the Engineering of Reconfigurable Systems and Algorithms (ERSA( 2002), pp , 37, June [7] ] J. Lee and V. Mooney An O(min(m,n)) Parallel Deadlock Detection Algorithm, Tech. Rep. GIT-CC CC-03-41, College of Computing, Georgia Institute of Technology, Atlanta, GA. September [8] ] B. Akgul,, J. Lee and V. Mooney, A System-on on-a-chip Lock Cache with Task Preemption Support, Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES( 2001), pp , 157, November Georgia Institute of Technology
72 Q & A Thank you! Georgia Institute of Technology
73 Deadlock Avoidance Algorithm (DAA) More about R-dl avoidance If f P1>P2 P1 Q2 Q1 P2 Ask P2 to release Q2 Q2 can be granted to P1 If f P2>P1 P1 Q2 Q1 P2 Ask P1 to release Q1 Q1 can be granted to P Georgia Institute of Technology
74 Proof of the Correctness of DDU Algorithm Correctness Not empty cycle(s) deadlock Empty no cycle(s) no deadlock Proof with 5 Lemmas 4 Theorems * Additional detail can be found in a journal submission and a technical report [3, 7] Georgia Institute of Technology
75 Proof of the Correctness of DDU Algorithm (cont d) 5 Lemmas Removing terminal edges will not alter any cycle If a RAG can be completely reduced, the system does not have a deadlock If no cycles in a RAG, the RAG can be completely reduced. A process that is making progress is not involved in deadlock If a system does not have a deadlock, all processes can make progress within a finite time Georgia Institute of Technology
76 Proof of the Correctness of DDU Algorithm (cont d) 4 Theorems If a RAG contains any cycle, the RAG cannot be completely reduced If a RAG cannot be completely reduced, the RAG contains at least a cycle A cycle is a necessary and sufficient condition for deadlock DDU Algorithm detects deadlock iff there exists a cycle in a RAG Georgia Institute of Technology
77 Proof of Run-Time Complexity of DDU Q: How many steps does DDU need to detect deadlock in parallel hardware? Proof with 2 Corollaries 1 Lemma 1 Theorem * Additional detail can be found in a journal submission and a technical report [3, 7] Georgia Institute of Technology
78 Proof of Run-Time Complexity of DDU (cont'd) 2 Corollaries The total number of nodes in the smallest possible cycle = 4 The number of edges in any path (not cycle) using all nodes in the smallest possible cycle = 3 P1 P2 P1 P2 Q1 Q2 Q1 Q Georgia Institute of Technology
79 Comparison: DDU and DAU Method of Deadlock Detection DDU DDU in software Detection Time (average cycles) Normalized Detection Time 1X 1408X Method of Deadlock Avoidance Hardware Software Avoidance Time (average cycles) Normalized Avoidance Time 1X 312X Georgia Institute of Technology
A Novel Deadlock Avoidance Algorithm and Its Hardware Implementation
A ovel Deadlock Avoidance Algorithm and Its Hardware Implementation + Jaehwan Lee and *Vincent* J. Mooney III Hardware/Software RTOS Group Center for Research on Embedded Systems and Technology (CREST)
More informationA Framework for Automatic Generation of Configuration Files for a Custom Hardware/Software RTOS
A Framework for Automatic Generation of Configuration Files for a Custom Hardware/Software RTOS Jaehwan Lee* Kyeong Keol Ryu* Vincent J. Mooney III + {jaehwan, kkryu, mooney}@ece.gatech.edu http://codesign.ece.gatech.edu
More informationA Novel Deadlock Avoidance Algorithm and Its Hardware Implementation
A Novel Deadlock Avoidance Algorithm and Its Hardware Implementation Jaehwan Lee Georgia Institute of Technology Atlanta, Georgia, U.S.A. jaehwan@ece.gatech.edu Vincent John Mooney III Georgia Institute
More informationDynamic Memory Management for Real-Time Multiprocessor System-on-a-Chip
Dynamic Memory Management for Real-Time Multiprocessor System-on-a-Chip Mohamed A. Shalan Dissertation Advisor Vincent J. Mooney III School of Electrical and Computer Engineering Agenda Introduction &
More informationInterconnect Delay Aware RTL Verilog Bus Architecture Generation for an SoC
Interconnect Delay Aware RTL Verilog Bus Architecture Generation for an SoC Kyeong Ryu, Alexandru Talpasanu, Vincent Mooney and Jeffrey Davis School of Electrical and Computer Engineering Georgia Institute
More informationHardware Support for Priority Inheritance
Hardware Support for Priority Inheritance Bilge. S. Akgul +, Vincent J. Mooney +, Henrik Thane* and Pramote Kuacharoen + + Center for Research on mbedded Systems and Technology (CRST) + School of lectrical
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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 informationA Dynamic Memory Management Unit for Embedded Real-Time System-on-a-Chip
A Dynamic Memory Management Unit for Embedded Real-Time System-on-a-Chip Mohamed Shalan Georgia Institute of Technology School of Electrical and Computer Engineering 801 Atlantic Drive Atlanta, GA 30332-0250
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 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. 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
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 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 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 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 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 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 informationHardware Support for Priority Inheritance
Hardware Support for Priority Inheritance Bilge E. S. Akgul, Vincent J. Mooney III, Henrik Thane, Pramote Kuacharoen Center for Research on Embedded Systems and Technology School of Electrical and Computer
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 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 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
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 informationShared Address Space I/O: A Novel I/O Approach for System-on-a-Chip Networking
Shared Address Space I/O: A Novel I/O Approach for System-on-a-Chip Networking Di-Shi Sun and Douglas M. Blough School of Electrical and Computer Engineering Georgia Institute of Technology Atlanta, GA
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 informationHardware Support for Real-Time Embedded Multiprocessor System-on-a-Chip Memory Management
Hardware Support for Real-Time Embedded Multiprocessor System-on-a-Chip Memory Management Mohamed Shalan Georgia Institute of Technology School of Electrical and Computer Engineering 801 Atlantic Drive
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. 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 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 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 informationDX-Gt: Memory Management and Crossbar Switch Generator for Multiprocessor System-on-a-Chip
DX-Gt: Memory Management and Crossbar Switch Generator for Multiprocessor System-on-a-Chip Mohamed A Shalan, Eung S Shin and Vincent J Mooney III Georgia Institute of Technology School of Electrical and
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 informationDeadlock. A Bit More on Synchronization. The Deadlock Problem. Deadlock Characterization. Operating Systems 2/7/2005. CSC 256/456 - Spring
A Bit More on Synchronization Deadlock CS 256/456 Dept. of Computer Science, University of Rochester Synchronizing interrupt handlers: Interrupt handlers run at highest priority and they must not block.
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 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 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 informationFall 2015 COMP Operating Systems. Lab 06
Fall 2015 COMP 3511 Operating Systems Lab 06 Outline Monitor Deadlocks Logical vs. Physical Address Space Segmentation Example of segmentation scheme Paging Example of paging scheme Paging-Segmentation
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 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 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 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 informationCS370 Operating Systems
CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 L16 Deadlocks, Main Memory Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Where we are: Deadlocks
More informationCache Design and Timing Analysis for Preemptive Multi- tasking Real-Time Uniprocessor Systems
Cache Design and Timing Analysis for Preemptive Multi- tasking Real-Time Uniprocessor Systems PhD Defense by Yudong Tan Advisor: Vincent J. Mooney III Center for Research on Embedded Systems and Technology
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 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 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. 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 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 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 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 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 informationResource Management and Deadlocks 43
Resource Management and Deadlocks 43 The Deadlock Problem Law passed by the Kansas Legislature in early 20th century: When two trains approach each other at a crossing, both shall come to a full stop and
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 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 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 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 informationBasics of Deadlock Theory. Deadlocks
CMSC 621, Advanced Operating Systems. Fall 2003 Basics of Deadlock Theory Dr. Kalpakis Deadlocks deadlock occurs when there is a set of processes which have outstanding requests for resources that can
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. 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 informationFall COMP3511 Review
Outline Fall 2015 - COMP3511 Review Monitor Deadlock and Banker Algorithm Paging and Segmentation Page Replacement Algorithms and Working-set Model File Allocation Disk Scheduling Review.2 Monitors Condition
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 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 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 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 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 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 informationResource Management and Deadlocks 1
Resource Management and Deadlocks 1 The Deadlock Problem Law passed by the Kansas Legislature in early 20th century: When two trains approach each other at a crossing, both shall come to a full stop and
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 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 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 informationCSC 539: Operating Systems Structure and Design. Spring 2005
CSC 539: Operating Systems Structure and Design Spring 2005 Process deadlock deadlock prevention deadlock avoidance deadlock detection recovery from deadlock 1 Process deadlock in general, can partition
More informationA Novel Parallel Deadlock Detection Algorithm and Architecture
A Novel Paallel Deadlock Detection Aloithm and Achitectue Pun H. Shiu 2, Yudon Tan 2, Vincent J. Mooney III {ship, ydtan, mooney}@ece.atech.ed }@ece.atech.edu http://codesin codesin.ece.atech.eduedu,2
More informationLecture 7: Introduction to Co-synthesis Algorithms
Design & Co-design of Embedded Systems Lecture 7: Introduction to Co-synthesis Algorithms Sharif University of Technology Computer Engineering Dept. Winter-Spring 2008 Mehdi Modarressi Topics for today
More information! What is a deadlock? ! What causes a deadlock? ! How do you deal with (potential) deadlocks? Maria Hybinette, UGA
Chapter 8: Deadlock Questions? CSCI 4730 Operating Systems! What is a deadlock?! What causes a deadlock?! How do you deal with (potential) deadlocks? Deadlock Deadlock: What is a deadlock? Example: Two
More informationUnit-03 Deadlock and Memory Management Unit-03/Lecture-01
1 Unit-03 Deadlock and Memory Management Unit-03/Lecture-01 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.
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 informationA More Sophisticated Snooping-Based Multi-Processor
Lecture 16: A More Sophisticated Snooping-Based Multi-Processor Parallel Computer Architecture and Programming CMU 15-418/15-618, Spring 2014 Tunes The Projects Handsome Boy Modeling School (So... How
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 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 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 informationDeadlock. CS 450 : Operating Systems Michael Lee
Deadlock CS 450 : Operating Systems Michael Lee deadlock noun 1 [in sing. ] a situation, typically one involving opposing parties, in which no progress can be made : an attempt to break the
More informationCSE 380 Computer Operating Systems
CSE 380 Computer Operating Systems Instructor: Insup Lee and Dianna Xu University of Pennsylvania, Fall 2003 Lecture Note: Deadlocks 1 Resource Allocation q Examples of computer resources printers tape
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. Disclaimer: some slides are adopted from Dr. Kulkarni s and book authors slides with permission 1
Deadlock Disclaimer: some slides are adopted from Dr. Kulkarni s and book authors slides with permission 1 Recap: Synchronization Race condition A situation when two or more threads read and write shared
More information