Implementing Synchronous Co-ordinated Atomic Actions Based on Forward Error Recovery

Coordinated atomic action concept is proposed as a means for providing fault tolerance in complex object oriented systems which incorporate both cooperative and competitive concurrency. This paper has two purposes: to discuss a particular implementation of this concept and to address many implementation issues which are common for any experiments with this concept. Our implementation relies on a thoroughly designed set of programming conventions for the standard Ada (Ada95) language and uses forward error recovery which incorporates asynchronous exception handling and concurrent exception resolution. We utilise the peculiarities of Ada as much as possible, which makes our approach practical and useful for many critical applications with high dependability requirements. This scheme offers a basic framework for using coordinated atomic actions and allows us to continue experimenting with them.

[1]  Jie Xu,et al.  Exception handling and resolution in distributed object-oriented systems , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[2]  Roy H. Campbell,et al.  Atomic actions for fault-tolerance using CSP , 1986, IEEE Transactions on Software Engineering.

[3]  Alan Burns,et al.  Implementing Atomic Actions in Ada 95 , 1997, IEEE Trans. Software Eng..

[4]  Brian Randell,et al.  System structure for software fault tolerance , 1975, IEEE Transactions on Software Engineering.

[5]  Hermann Kopetz,et al.  Fault tolerance, principles and practice , 1990 .

[6]  Flaviu Cristian,et al.  Exception Handling and Tolerance of Software Faults , 1995 .

[7]  K. H. Kim,et al.  Approaches to Mechanization of the Conversation Scheme Based on Monitors , 1982, IEEE Transactions on Software Engineering.

[8]  Brian Randell,et al.  Approaches to Software Fault Tolerance , 1993 .

[9]  Alexander Romaovsky Practical Exception Handling and Resolution in Concurrent Programs , 1997, Comput. Lang..

[10]  Cecília M. F. Rubira,et al.  Fault tolerance in concurrent object-oriented software through coordinated error recovery , 1995, Twenty-Fifth International Symposium on Fault-Tolerant Computing. Digest of Papers.

[11]  Alexander Romanovsky,et al.  Atomic Actions Based on Distributed/C oncurrent Exception Resolution , 1996 .

[12]  C. A. R. Hoare,et al.  Monitors: an operating system structuring concept , 1974, CACM.

[13]  Andreas Reuter,et al.  Transaction Processing: Concepts and Techniques , 1992 .

[14]  Valérie Issarny An exception handling mechanism for parallel object-oriented programming , 1992 .

[15]  Brian Randell,et al.  Error recovery in asynchronous systems , 1986, IEEE Transactions on Software Engineering.