Abstract
Integrated Model of Distributed Systems (IMDS) is a formalism for specification and verification of distributed systems, especially following IoT (Internet of Things) paradigm. The formalism emphasizes such features as asynchrony of actions and communication, locality of decisions, and autonomy in executing actions. In conjunction with model checking, IMDS allows to analyze such features of distributed systems as deadlocks or distributed termination. However, the nature of model checking allows to find one deadlock in a single run of the verifier, which produces a counterexample. The conversion of IMDS specification to a Petri net is used to identify multiple deadlocks in one verification, using siphons. Model checking is used to verify if a siphon can become empty, which denotes a true deadlock in a purely cyclic system, like FMS (Flexible Manufacturing Systems). The extension of the verification by temporal checking allows to cover systems with any structure: cyclic, terminating, or with a more complex scheme. In addition, the proposed procedure allows to easily identify processes participating in partial deadlocks. Two types of deadlock can be identified: communication deadlocks and resource deadlocks.
Highlights
INTEGRATED MODEL OF DISTRIBUTED SYSTEMS (IMDS) (Integrated Model of Distributed Systems [1][2]) is a formalism for describing the behavior of distributed systems, especially for finding deadlocks
In IMDS, a communication dualism is exploited, since the modeled system is represented as server processes that communicate by messages, or alternatively by travelling processes that communicate by means of servers’ states
An approach to deadlock detection is presented which is based on coupling IMDS formalism with Petri net structural analysis and model checking
Summary
IMDS (Integrated Model of Distributed Systems [1][2]) is a formalism for describing the behavior of distributed systems, especially for finding deadlocks. The IMDS formalism was used, together with model checking technique [3], to develop the Dedan program which finds various kinds of deadlock in a verified system [4] These are: communication deadlock (in the server view), resource deadlock (in the agent view), partial deadlock (in which a subset of system’s processes participate) and total deadlock (concerning all processes). The contribution of this paper is an application of siphon-based deadlock detection to systems of arbitrary schemes: cycling, terminating or intermediate (some processes are cyclic while other ones terminate) For this purpose an IMDS model is converted to a Petri net. Siphon detection is done in the Petri net, while identification of deadlocks and finding processes involved (partial deadlocks and total deadlocks are identified) is performed using reachability verification and temporal analysis in IMDS specification.
Published Version (Free)
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have