A design environment for deadlock-free concurrent software

Using current software engineering technology, the robustness required for safety critical software is not assurable. However, different approaches are possible which can help to assure software robustness to some extent. For achieving high reliability software, methods should be adopted which avoid...

Full description

Bibliographic Details
Main Author: Khan, Mahmood A.
Published: Aston University 1992
Subjects:
005
Online Access:http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.332084
id ndltd-bl.uk-oai-ethos.bl.uk-332084
record_format oai_dc
spelling ndltd-bl.uk-oai-ethos.bl.uk-3320842017-04-20T03:28:37ZA design environment for deadlock-free concurrent softwareKhan, Mahmood A.1992Using current software engineering technology, the robustness required for safety critical software is not assurable. However, different approaches are possible which can help to assure software robustness to some extent. For achieving high reliability software, methods should be adopted which avoid introducing faults (fault avoidance); then testing should be carried out to identify any faults which persist (error removal). Finally, techniques should be used which allow any undetected faults to be tolerated (fault tolerance). The verification of correctness in system design specification and performance analysis of the model, are the basic issues in concurrent systems. In this context, modeling distributed concurrent software is one of the most important activities in the software life cycle, and communication analysis is a primary consideration to achieve reliability and safety. By and large fault avoidance requires human analysis which is error prone; by reducing human involvement in the tedious aspect of modelling and analysis of the software it is hoped that fewer faults will persist into its implementation in the real-time environment. The Occam language supports concurrent programming and is a language where interprocess interaction takes place by communications. This may lead to deadlock due to communication failure. Proper systematic methods must be adopted in the design of concurrent software for distributed computing systems if the communication structure is to be free of pathologies, such as deadlock. Therefore, the objective of this thesis is to ensure that processes do not deadlock due to communication failure. A software tool was designed and used to facilitate the production of fault-tolerant software for distributed concurrent systems. Where Occam is used as a design language then state space methods, such as Petri-nets, can be used in analysis and simulation to determine the dynamic behaviour of the software, and to identify structures which may be prone to deadlock so that they may be eliminated from the design before the program is ever run. This design software tool consists of two parts. One takes an input program and translates it into a mathematical model (Petri-net), which is used for modeling and analysis of the concurrent software. The second part is the Petri-net simulator that takes the translated program as its input and starts simulation to generate the reachability tree. The tree identifies `deadlock potential' which the user can explore further.005Electrical EngineeringAston Universityhttp://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.332084http://publications.aston.ac.uk/8099/Electronic Thesis or Dissertation
collection NDLTD
sources NDLTD
topic 005
Electrical Engineering
spellingShingle 005
Electrical Engineering
Khan, Mahmood A.
A design environment for deadlock-free concurrent software
description Using current software engineering technology, the robustness required for safety critical software is not assurable. However, different approaches are possible which can help to assure software robustness to some extent. For achieving high reliability software, methods should be adopted which avoid introducing faults (fault avoidance); then testing should be carried out to identify any faults which persist (error removal). Finally, techniques should be used which allow any undetected faults to be tolerated (fault tolerance). The verification of correctness in system design specification and performance analysis of the model, are the basic issues in concurrent systems. In this context, modeling distributed concurrent software is one of the most important activities in the software life cycle, and communication analysis is a primary consideration to achieve reliability and safety. By and large fault avoidance requires human analysis which is error prone; by reducing human involvement in the tedious aspect of modelling and analysis of the software it is hoped that fewer faults will persist into its implementation in the real-time environment. The Occam language supports concurrent programming and is a language where interprocess interaction takes place by communications. This may lead to deadlock due to communication failure. Proper systematic methods must be adopted in the design of concurrent software for distributed computing systems if the communication structure is to be free of pathologies, such as deadlock. Therefore, the objective of this thesis is to ensure that processes do not deadlock due to communication failure. A software tool was designed and used to facilitate the production of fault-tolerant software for distributed concurrent systems. Where Occam is used as a design language then state space methods, such as Petri-nets, can be used in analysis and simulation to determine the dynamic behaviour of the software, and to identify structures which may be prone to deadlock so that they may be eliminated from the design before the program is ever run. This design software tool consists of two parts. One takes an input program and translates it into a mathematical model (Petri-net), which is used for modeling and analysis of the concurrent software. The second part is the Petri-net simulator that takes the translated program as its input and starts simulation to generate the reachability tree. The tree identifies `deadlock potential' which the user can explore further.
author Khan, Mahmood A.
author_facet Khan, Mahmood A.
author_sort Khan, Mahmood A.
title A design environment for deadlock-free concurrent software
title_short A design environment for deadlock-free concurrent software
title_full A design environment for deadlock-free concurrent software
title_fullStr A design environment for deadlock-free concurrent software
title_full_unstemmed A design environment for deadlock-free concurrent software
title_sort design environment for deadlock-free concurrent software
publisher Aston University
publishDate 1992
url http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.332084
work_keys_str_mv AT khanmahmooda adesignenvironmentfordeadlockfreeconcurrentsoftware
AT khanmahmooda designenvironmentfordeadlockfreeconcurrentsoftware
_version_ 1718440937827336192