Author
Listed:
- Most Fatematuz Zohora
- Fahiba Farhin
- M Shamim Kaiser
Abstract
Effective resource allocation is crucial in operating systems to prevent deadlocks, especially when resources are limited and non-shareable. Traditional methods like the Banker’s algorithm provide solutions but suffer from limitations such as static process handling, high time complexity, and a lack of real-time adaptability. To address these challenges, we propose the Dynamic Banker’s Deadlock Avoidance Algorithm (DBDAA). The DBDAA introduces real-time processing for safety checks, significantly improving system efficiency and reducing the risk of deadlocks. Unlike conventional methods, the DBDAA dynamically includes processes in safety checks, considerably decreasing the number of comparisons required to determine safe states. This optimization reduces the time complexity to O(n) in the best-case and O(nd) in the average and worst-case scenarios, compared to the O(n2d) complexity of the original Banker’s algorithm. The integration of real-time processing ensures that all processes can immediately engage in safety checks, improving system responsiveness and making the DBDAA suitable for dynamic and time-sensitive applications. Additionally, the DBDAA introduces a primary unsafe sequence mechanism that enhances the acceptability and efficiency of the algorithm by allowing processes to participate in safety checks repeatedly after a predetermined amount of system-defined time. Experimental comparisons with existing algorithms demonstrate the superiority of the DBDAA in terms of reduced safe state prediction time and increased efficiency, making it a robust solution for deadlock avoidance in real-time systems.
Suggested Citation
Most Fatematuz Zohora & Fahiba Farhin & M Shamim Kaiser, 2024.
"DBDAA: A real-time approach to Dynamic Banker’s Deadlock Avoidance Algorithm with optimized time complexity,"
PLOS ONE, Public Library of Science, vol. 19(9), pages 1-18, September.
Handle:
RePEc:plo:pone00:0310807
DOI: 10.1371/journal.pone.0310807
Download full text from publisher
Corrections
All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:plo:pone00:0310807. See general information about how to correct material in RePEc.
If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.
We have no bibliographic references for this item. You can help adding them by using this form .
If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.
For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: plosone (email available below). General contact details of provider: https://journals.plos.org/plosone/ .
Please note that corrections may take a couple of weeks to filter through
the various RePEc services.