Article ID: | iaor1999451 |
Country: | United States |
Volume: | 9 |
Issue: | 2 |
Start Page Number: | 195 |
End Page Number: | 205 |
Publication Date: | Mar 1997 |
Journal: | INFORMS Journal On Computing |
Authors: | Deuermeyer Bryan L., Curry Guy L., Duchowski Andrew T., Venkatesh Srilakshmi |
Keywords: | graphs |
In this article we develop an automatic deadlock detection scheme for general purpose simulation systems and offer deadlock-resolution algorithms for grouped resources and overlapping resources. Our intent is to provide capabilities that can be incorporated in professional simulation systems to facilitate modeling situations where deadlocking is a problem. Two general modeling situations are analyzed. In grouped-resources models, a set of resources is required to complete a task, whereas in overlapping-resources models, movement to the next process requires first gaining control of the next resource. Deadlocks occurring in these two different situations require different resolution algorithms. We develop a graph-theoretic description of the simulation over time and define deadlocks in terms of strongly connected components of this graph. We make a distinction between transient deadlocks and permanent deadlocks. A prototype implementation of the detection and resolution algorithms was incorporated in a simulation system to provide information concerning the computational requirements and performance of these algorithms. We demonstrate that resolving a possible transient deadlock before it becomes permanent is worthwhile in conjunction with overlapping resources, and that the computational performance of the approach is reasonable except for situations with frequent occurrences of overlapping-resources deadlocks.