Deadlock avoidance revisited

  title={Deadlock avoidance revisited},
  author={Toshimi Minoura},
  journal={J. ACM},
Several new algorithms which utilise wait-for relations induced by processes are developed for deadlock avoidance in operating systems. [] Key Method Further, the deadlock-prediction problem for a set of processes using locks is reduced to a new np-complete problem, and the deadlock-avoidance problem for processes with branches is shown to be pspace-complete. Finally, the relative power of various algorithms is compared. 26 references.

Figures from this paper

A survey of distributed deadlock detection algorithms

Only detection of resource deadlocks will be reviewed here, though other types of deadlock handling strategies and environments are briefly mentioned.

A New Characterization of Distributed Deadlock in Databases

The problem of distributed transactions deadlock is analyzed from a new point of view and the Havender scheme for deadlock prevention (locking entities in a fixed order) is extended to the distributed case.

On deadlocks of exclusive AND-requests for resources

A uniform framework for characterizing and developing distributed deadlock-related algorithms and the results are used to analyze several well-known deadlock detectors, thus revealing a common structure among them, despite the variety of techniques they use.

An algorithm for preventing deadlocks in distributed systems

  • A. DattaR. D. JavagalS. Ghosh
  • Computer Science
    Eleventh Annual International Phoenix Conference on Computers and Communication [1992 Conference Proceedings]
  • 1992
The authors deal with a new method for preventing deadlocks in resource sharing for distributed systems. The algorithm is based on the notion of coloring the nodes of the waitfor graph and is built

The Parallel Complexity of Deadlock Detection

The Deadlock problem: a classifying bibliography

A classification of publications dealing with problems considering deadlocks or their environment is given and it is hoped to have found essential articles for nearly all the different topics fitting under the title "Deadlock".

The application of supervisory control to deadlock avoidance in concurrent software

This work proposes and validate a novel methodology for dynamically controlling the execution of concurrent software in order to provably avoid deadlocks, based on supervisory control of discrete event systems modeled by Petri nets.

Concurrent Execution of Transaction Copies

Deadlock avoidance in parallel programs with futures: why parallel tasks should not wait for strangers

This paper introduces the Known Joins (KJ) property for parallel programs with futures, and relates it to the Deadlock Freedom (DF) and the Data-Race Freedom (DRF) properties, and develops a tool that avoids deadlocks in linear time and space when KJ holds.



Comments on prevention of system deadlocks

Habermann's method of deadlock prevention is discussed, where deadlock is defined as a system state from which resource allocations to certain processes are not possible. It is shown that the

Sequencing Tasks in Multiprocess Systems to Avoid Deadlocks

This paper assumes that advance information about future resource requirements of jobs is available and that jobs are represented as a sequence of "job steps" during which the resource usage remains constant.

Some deadlock properties of computer systems

  • R. Holt
  • Computer Science
    SOSP '71
  • 1971
A simple graph model of computer systems is developed, and its deadlock properties are investigated, and this graph model is useful for teaching purposes, unifies a number of previous results, and leads to efficient deadlock detection and prevention algorithms.

Prevention of system deadlocks

Algorithms are presented which examine a request in the light of the current allocation of resources and determi whether or not the granting of the request will introduce the possibility of a deadlock.

Locking and Deadlock Detection in Distributed Data Bases

Two protocols for the detection of deadlocks in distributed data bases are described–a hierarchically organized one and a distributed one that requires that the global graph be built and maintained in order for deadlocks to be detected.

Game interpretation of the deadlock avoidance problem

The deadlock avoidance problem may be defined informally as the determination, from some a priori information about the processes, resources, operating system, etc., of the “safe situations” which

Coordinated sharing of resources in asynchronous systems

A suitable directed graph model analogous to Petri nets is described and analyzed for the case where user activity is sequential and independent and an algorithmic allocation scheme is specified which is non-exhaustive and involves little backtracking.

A model for deadlock-free resource allocation

An investigation of the phenomenon of deadlock in various types of resource allocation systems and a modification of the basic model is considered to permit a more flexible type of resource control, and the deadlock phenomenon is reconsidered in terms of the new system.

Testing Deadlock-Freedom of Computer Systems

The problem of determining whether it is possible for a set of “free-running” processes to become deadlocked is considered and an algorithm employing a network flow technique is presented for this purpose.

Avoiding Deadlock in Multitasking Systems

System designers must be constantly alert to the deadlock possibilities of any proposed design, and once a deadlock situation has been recognized, it can probably be circumvented by one of the techniques described.