A distributed algorithm for deadlock detection and resolution

This paper presents two distributed algorithms for detecting and resolving deadlocks. By insuring that only one of the deadlock processes will detect it, the problem of resolving the deadlock is simplified. That process could simply abort itself. In one version of the algorithm, an arbitrary process detects deadlock; and in a second version, the process with the lowest priority detects deadlock.

[1]  Ernest J. H. Chang,et al.  Echo Algorithms: Depth Parallel Operations on General Graphs , 1982, IEEE Transactions on Software Engineering.

[2]  Daniel A. Menascé,et al.  Locking and Deadlock Detection in Distributed Data Bases , 1979, IEEE Transactions on Software Engineering.

[3]  Ron Obermarck,et al.  Distributed deadlock detection algorithm , 1982, TODS.

[4]  Edsger W. Dijkstra,et al.  Termination Detection for Diffusing Computations , 1980, Inf. Process. Lett..

[5]  Virgil D. Gligor,et al.  On Deadlock Detection in Distributed Systems , 1980, IEEE Transactions on Software Engineering.

[6]  K. Mani Chandy,et al.  A distributed algorithm for detecting resource deadlocks in distributed systems , 1982, PODC '82.

[7]  Sam Toueg,et al.  A distributed algorithm for generalized deadlock detection , 1984, PODC '84.