Distributed atomic actions in Ada 95
Atomic actions are a well-known software structuring technique which allow fault tolerance of software design errors and environmental faults in complex concurrent systems. Although it is clear that support for atomic actions is vital for reducing the scope for error, it is unlikely that a productio...
Saved in:
Published in: | Computer journal Vol. 41; no. 7; pp. 486 - 502 |
---|---|
Main Authors: | , , |
Format: | Journal Article |
Language: | English |
Published: |
Oxford
Oxford University Press
01-01-1998
|
Subjects: | |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Summary: | Atomic actions are a well-known software structuring technique which allow fault tolerance of software design errors and environmental faults in complex concurrent systems. Although it is clear that support for atomic actions is vital for reducing the scope for error, it is unlikely that a production-quality language with explicit support for atomic actions will become available and be widely used. This paper presents a practical solution that can be applied to existing languages and systems, in this case Ada 95, without any changes to the language or run-time system. Ada 95 is the first standardized object-oriented language with concurrency and distribution on the language level. Although not as widespread as C and C++, it has a major role in high-integrity systems such as those found in the aerospace industry. First, the development of a distributed asynchronous atomic action scheme for Ada 95 is discussed. The scheme makes use of many unique Ada 95 features including protected objects, asynchronous transfer of control and the distributed systems annex. The authors present the packages which implement the local and global action support and illustrate their use in a (partial) implementation of the FZI production cell problem. A number of variations of the model and how these might be included are discussed, followed by a description of how the distribution model used in Ada 95 influenced the design. (Original abstract - amended) |
---|---|
Bibliography: | ObjectType-Article-2 SourceType-Scholarly Journals-1 ObjectType-Feature-1 content type line 23 |
ISSN: | 0010-4620 1460-2067 |
DOI: | 10.1093/comjnl/41.7.486 |