An extended banker's algorithm for deadlock avoidance
Abbreviated Journal Title
IEEE Trans. Softw. Eng.
banker's algorithm; deadlock; deadlock avoidance; graph reduction; operating system; worst-case complexity; Computer Science, Software Engineering; Engineering, Electrical &; Electronic
We describe a natural extension of the banker's algorithm for deadlock avoidance in operating systems. Representing the control flow of each process as a rooted tree of nodes corresponding to resource requests and releases, we propose a quadratic-time algorithm which decomposes each flow graph into a nested family of regions, such that all allocated resources are released before the control leaves a region. Also, information on the maximum resource claims for each of the regions can be extracted prior to process execution. By inserting operating system calls when entering a new region for each process at runtime, and applying the original banker's algorithm for deadlock avoidance, this method has the potential to achieve better resource utilization because information on the "localized approximate maximum claims" is used for testing system safety.
Ieee Transactions on Software Engineering
"An extended banker's algorithm for deadlock avoidance" (1999). Faculty Bibliography 1990s. 2707.