Exception handling in object-oriented real-time distributed systems

Exception handling in a complex concurrent and distributed system (e.g. one involving cooperating rather than just competing activities) is often a necessary, but a very difficult, task. No widely accepted models or approaches exist in this area. The object-oriented paradigm, for all its structuring benefits, and real-time requirements each add further difficulties to the design and implementation of exception handling in such systems. In this paper, we develop a general structuring framework based on the coordinated atomic (CA) action concept for handling exceptions in an object-oriented distributed system, in which exceptions in both the value and the time domain are taken into account. In particular, we attempt to attack several difficult problems related to real-time system design and error recovery, including action-level timing constraints, time-triggered CA actions, and time-dependent exception handling. The proposed framework is then demonstrated and assessed using an industrial real-time application-the Production Cell III case study.

[1]  Alan Burns,et al.  Worst-case timing analysis of exception handling in Ada , 1993 .

[2]  K. H. Kim,et al.  Fault-tolerant real-time objects , 1997, CACM.

[3]  Anand R. Tripathi,et al.  Issues with Exception Handling in Object-Oriented Systems , 1997, ECOOP.

[4]  Mario Tokoro,et al.  DROL: an object-oriented programming language for distributed real-time systems , 1992, OOPSLA '92.

[5]  Mario Tokoro,et al.  DROL: an object-oriented programming language for distributed real-time systems , 1992, OOPSLA.

[6]  Brian Randell,et al.  Coordinated Atomic Actions: from Concept to Implementation , 1997 .

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

[8]  Hermann Kopetz,et al.  Temporal firewalls in large distributed real-time systems , 1997, Proceedings of the Sixth IEEE Computer Society Workshop on Future Trends of Distributed Computing Systems.

[9]  Avelino Francisco Zorzo,et al.  Implementation of blocking coordinated atomic actions based on forward error recovery , 1997, J. Syst. Archit..

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

[11]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

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

[13]  Jie Xu,et al.  Coordinated exception handling in distributed object systems: from model to system implementation , 1998, Proceedings. 18th International Conference on Distributed Computing Systems (Cat. No.98CB36183).

[14]  Aaas News,et al.  Book Reviews , 1893, Buffalo Medical and Surgical Journal.

[15]  Claus Lewerentz,et al.  Formal Development of Reactive Systems , 1995, Lecture Notes in Computer Science.

[16]  Dieter K. Hammer,et al.  Dedos: a distributed real-time environment , 1994, IEEE Parallel & Distributed Technology: Systems & Applications.

[17]  John C. Knight,et al.  A Framework for Software Fault Tolerance in Real-Time Systems , 1983, IEEE Transactions on Software Engineering.

[18]  K. H. Kim,et al.  A real-time object model RTO.k and an experimental investigation of its potentials , 1994, Proceedings Eighteenth Annual International Computer Software and Applications Conference (COMPSAC 94).

[19]  Claus Lewerentz,et al.  Formal Development of Reactive Systems: Case Study Production Cell , 1995 .

[20]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[21]  Jan Bosch,et al.  Real-Time Specification Inheritance Anomalies and Real-Time Filters , 1994, ECOOP.

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

[23]  Akinori Yonezawa,et al.  Exception Handling and Real Time Features in an Object-Oriented Concurrent Language , 1991, Concurrency: Theory, Language, And Architecture.

[24]  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.

[25]  Santosh K. Shrivastava,et al.  An overview of the Arjuna distributed programming system , 1991, IEEE Software.

[26]  K. H. Kim,et al.  Time-bounded cooperative recovery with the distributed real-time conversation scheme , 1997, Proceedings Third International Workshop on Object-Oriented Real-Time Dependable Systems.

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

[28]  B. Randell,et al.  Using Coordinated Atomic Actions to Design Complex Safety-critical Systems: the Production Cell Case Study , 1997 .