Abstract. Resource Allocation Systems (RAS) were intensively studied in the last years for Flexible Manufacturing Systems (FMS). The success of this research stems from the identification of subclasses of Petri Nets that correspond to an RAS abstraction of these systems. In this paper we take a parallel road to that travelled through for FMS, but for the case of software applications. These applications present concurrency, and deadlocks can happen due to the allocation of shared resources. We reveal that the existing subclasses of Petri Nets used to study this kind of deadlock problems are insufficient, even for very simple software systems. We propose a new subclass of Petri Nets that generalizes the previously known RAS subclasses and we present a taxonomy of anomalies that can be found in the context of software systems.
In recent times, Petri nets have consolidated as a powerful formalism for the analysis and treatment of deadlocks in Resource Allocation Systems (RAS). In particular, the methodological framework yielded by the S 4 PR class has raised considerable interest on the grounds of a well-balanced compromise between modelling flexibility and the provision of sound and effective correction techniques. These are strengthened by the advantages of the abstraction process, which allows the effective application of these techniques to diverse application domains. Most of the works on this class focus on providing tools and algorithms for dealing with the so-called resource allocation problem. This paper takes a different approach to provide an insight into the inherent computational complexity of the problem, from the perspective of optimality in either prevention, avoidance or detection of deadlocks. In particular, we will prove that most of the problems involved fall within the category of NP or co-NP-complete problems.
The long interest in finding efficient solutions to deadlock occurrence induced by resource sharing is persistent in the context of concurrent control software production. Petri net-based correction techniques which were traditionally applied in the context of flexible manufacturing systems (FMS) constitute a promising new approach. In this vein, Gadara nets were introduced as an attempt to import the strengths of these techniques into the software domain. In this paper, we prove that these Petri nets are close to a subclass of S 4 PR (a widely-exploited class in the context of FMS) and provide some related equivalence results. Some limitations which Gadara nets present for the modelling and automated correction of software are also unveiled. Last but no least, we present formal proofs of the theorems characterising non-liveness in Gadara nets. To our knowledge, no such proofs were published before.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.