Abstract
In this paper, we propose a new algorithm for the classical deadlock avoidance problem. The new algorithm has the simplicity as Banker’s algorithm in terms of data structures used in the algorithm; in particular, there is no graph model of any kind is required. The original Banker’s algorithm has time complexity of O(n 3 d), where n is the number of processes and d is the number of resources (as per certain literatures, it is misquoted as Θ (n 2 d) which refers as the safety check part), in comparison, our algorithm has time complexity of O(n 2 d 2 + ndM), where M is the total number of resource units. When the total resource units are fixed as a constant and number of resource types is fixed, which is a reasonable assumption, the complexity of our algorithm is O(n 2 d 2), a significant improvement over the original Banker’s algorithm. The space-complexity of our algorithm is O(nd2) which is worse than the original Banker’s algorithm.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Dijkstra EW (1965) Cooperating Sequential Processes. Technical report, Technological University, Eindhoven, The Netherlands, pp 43–112
Gold EM (1978) Deadlock prediction: easy and dificult cases. SIAM J Comput 7:320–336
Habermann AN (1969) Prevention of system deadlocks. Commun ACM 12(7):373–377, 385
Holt RC (1971) Comments on prevention of system deadlocks. Commun ACM 14(1):179–196
Holt RC (1972) Some deadlock properties of computer systems. Comput Surv 4(3):179–196
Minura T (1980) Testing deadlock-freedom of computer systems. J ACM 27(2):270–280
Suguyama Y, Araki T, Okui J, Kasami T (1977) Complexity of the deadlock avoidance problem. Trans Inst Electron Comm Eng Jpn J60-D 4:251–258
Silberschatz A, Galvin PB, Gagne G (2002) Operating system concepts. Wiley, New York
Stallings W (1997) Operating systems, internals and design principles. Prentice-Hall, Upper Saddle River
Li Y, Cook R (2007) A new algorithm and asymptotical properties for deadlock detection problem for computer systems with reusable resource types. Advances and innovations in systems, computing sciences and software engineering. Springer, Heidelberg, pp 509–512
Li Y et al (2010) On Dijkstra’s algorithm for deadlock detection. Advanced techniques in computing sciences and software engineering. Springer, Heidelberg, pp 385–387
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer Science+Business Media New York
About this paper
Cite this paper
Li, Y. (2013). A Modified Banker’s Algorithm. In: Elleithy, K., Sobh, T. (eds) Innovations and Advances in Computer, Information, Systems Sciences, and Engineering. Lecture Notes in Electrical Engineering, vol 152. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-3535-8_23
Download citation
DOI: https://doi.org/10.1007/978-1-4614-3535-8_23
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-3534-1
Online ISBN: 978-1-4614-3535-8
eBook Packages: EngineeringEngineering (R0)