Deadlock in Distributed Systems - Unit 2
Deadlock in Distributed Systems - Unit 2
In this article, you will learn about deadlock detection in the distributed system with
its approaches, handling strategies, issues, and resolution.
1. Progress
2. Safety
1. Centralized Approach
Only one resource is responsible for detecting deadlock in the centralized method,
and it is simple and easy to use. Still, the disadvantages include excessive workload
on a single node and single-point failure (i.e., the entire system is dependent on one
node, and if that node fails, the entire system crashes), making the system less
reliable.
2. Hierarchical Approach
1. Path-Pushing Algorithms
2. Edge-chasing Algorithms
3. Diffusing Computations Based Algorithms
4. Global State Detection Based Algorithms
Path-Pushing Algorithms
Path-pushing algorithms detect distributed deadlocks by keeping an explicit global
WFG. The main concept is to create a global WFG for each distributed system site.
When a site in this class of algorithms performs a deadlock computation, it sends its
local WFG to all neighboring sites. The term path-pushing algorithm was led to
feature the sending around the paths of global WFG.
Edge-Chasing Algorithms
An edge-chasing method verifies a cycle in a distributed graph structure by sending
special messages called probes along the graph's edges. These probing messages
are distinct from request and response messages. If a site receives the matching
probe that it previously transmitted, it can cancel the formation of the cycle.