next up previous
Next: Chapter 9: Disributed File Up: No Title Previous: Chapter 5: Theoretical Foundations

Chapter 3: Process Deadlocks

Single-Unit Request Model

AND Request Model

OR Request Model
Knot: subgraph such that starting from any node in the subgraph it is impossible to leave the knot following the edges of the graph.

AND-OR Request Model
P-out-of-Q Request model.

Resource Types
Reusable resources: do not vanish after use Consumable resources: vanish on use

General Resource Graph (GRG)

General Resource Graph (contd.)
For every reusable resource: For every consumable resource:

Operations on GRG
Request:
draw corresponding number of request edges (e).
Acquisition:
$r_j \geq e$ units of Rj available: decrement rj by e
Release:
performed by process with no outstanding request

GRG Reduction Method
Blocked process: whose requests for any resource exceed the number of available units of that resource.


Graph reduction method: by unblocked process Pi

Deadlock Determination by Reduction
However, lack of reducibility does not necessarily indicate the system is deadlocked.

Deadlock Detection
Expedient state: all processes with outstanding requests are blocked.



Theorem: In a general resource graph: However, absence of a deadlock does not necessarily imply the absence of deadlock.


Theorem: An expedient GRG with single-unit requests represents a deadlock state if and only if it contains a knot.


next up previous
Next: Chapter 9: Disributed File Up: No Title Previous: Chapter 5: Theoretical Foundations
Ravi Prakash
2000-04-22