This Article 
 Bibliographic References 
 Add to: 
An Efficient Deadlock Avoidance Technique
July 1990 (vol. 39 no. 7)
pp. 882-888

A deadlock avoidance technique, based on a method of representing directed acyclic graphs, is presented. This technique is suitable for systems with single resources of each resource type. The deadlock avoidance problem considered is the problem of changing a directed acyclic graph while keeping it acyclic. The resource allocation algorithm involves three operations on edges corresponding to release of a resource from a process, unsuccessful allocation of a resource to a process, and successful allocation of a resource to a process, where the allocations include a previous detection of cycles. A path matrix representation is used, making it possible to detect cycles efficiently. The low cost of cycle detection can amortize the cost of the other operations and linear (or even constant) amortized time for one operation can be attained in dense systems.

[1] R. Agrawal, M.J. Carey, and L. W. McVoy, "The performance of alternative strategies for dealing with deadlocks in database management systems,"IEEE Trans. Software Eng., vol. SE-13, pp. 1348-1363, Dec. 1987.
[2] F. Belik, "Dyamic operations on acyclic digraphs," Tech. Rep., Coden: LUNFD/(NFCS-3010), Dep. Comput. Sci., Lund Univ., 1985.
[3] F. Belik, "An efficient deadlock avoidance technique," Tech. Rep., Coden: LUNFD/(NFCS-3015), Dep. Comput. Sci., Lund Univ., 1986.
[4] A. N. Choudhary, W. H. Kohler, J. A. Stankovic, and D. Towsley, "A modified priority based probe algorithm for distributed deadlock detection and resolution,"IEEE Trans. Software Eng., vol. 15, no. 1, pp. 10-17, Jan. 1989.
[5] I. Cidon, J. M. Jaffe, and M. Sidi, "Local distributed deadlock detection by cycle detection and clustering,"IEEE Trans. Software Eng., vol. SE-13, no. 1, pp. 3-14, Jan. 1987.
[6] A. K. Elmagarmid, N. Soundaraarajan, and M. T. Liu, "A distributed deadlock detection and resolution algorithm and its correctness proof,"IEEE Trans. Software Eng., vol. 14, no. 10, pp. 1443-1452, Oct. 1988.
[7] E. Knapp, "Deadlock detection in distributed databases,"ACM Comput. Surveys, vol. 19, no. 4, pp. 303-328, Dec. 1987.
[8] K. Mehlhorn,Graph Algorithms and NP-Completeness. New York: Springer-Verlag, 1984.
[9] N. Natarajan, "A distributed scheme for detecting communication deadlocks,"IEEE Trans. Softwware Eng., vol. SE-12, no. 4, pp. 531-537, Apr. 1986.
[10] J. L. Peterson and A. Silberschatz,Operating System Concepts. Reading, MA: Addison-Wesley, 1985.
[11] D. J. Rypka and A. P. Lucido, "Deadlock detection and avoidance for shared logical resources,"IEEE Trans. Software Eng., vol. 5, no. 5, pp. 465-471, Sept. 1979.

Index Terms:
concurrency control; deadlock avoidance technique; directed acyclic graphs; resource allocation algorithm; path matrix representation; concurrency control; directed graphs.
F. Belik, "An Efficient Deadlock Avoidance Technique," IEEE Transactions on Computers, vol. 39, no. 7, pp. 882-888, July 1990, doi:10.1109/12.55690
Usage of this product signifies your acceptance of the Terms of Use.