A study of the applicability of existing exception-handling techniques to component-based real-time software technology

This study focuses on the current state of error-handling technology and concludes with recommendations for further research in error handling for component-based real-time software. With real-time programs growing in size and complexity, the quality and cost of developing and maintaining them are still deep concerns to embedded software industries. Component-based software is a promising approach in reducing development cost while increasing quality and reliability. As with any other real-time software, component-based software needs exception detection and handling mechanisms to satisfy reliability requirements. The current lack of suitable error-handling techniques can make an application composed of reusable software nondeterministic and difficult to understand in the presence of errors.

[1]  Hideyuki Tokuda,et al.  Object-oriented real-time language design: constructs for timing constraints , 1990, OOPSLA/ECOOP '90.

[2]  Jørgen Lindskov Knudsen Better Exception-Handling in Block-Structured Systems , 1987, IEEE Software.

[3]  Luca Cardelli,et al.  Modula-3 Report. , 1988 .

[4]  Qian Cui,et al.  Data-Oriented Exception Handling , 1992, IEEE Trans. Software Eng..

[5]  Robin Milner,et al.  Commentary on standard ML , 1990 .

[6]  David Robson,et al.  Smalltalk-80: The Language and Its Implementation , 1983 .

[7]  John G. P. Barnes,et al.  Programming in Ada 95 , 1995 .

[8]  Alexander D. Stoyen,et al.  Real-Time Euclid: A language for reliable real-time systems , 1989, IEEE Transactions on Software Engineering.

[9]  J. M. Noble,et al.  The control of exceptional conditions in PL/1 object programs , 1968, IFIP Congress.

[10]  David A. Moon,et al.  The Lisp Machine manual , 1981, SGAR.

[11]  D. B. Stewart,et al.  Real-time software design and analysis of reconfigurable multi-sensor based systems , 1994 .

[12]  Michel Gauthier Exception Handling in Ada-94: Initial Users' Requests and Final Features , 1995, ALET.

[13]  Kwei-Jay Lin,et al.  Expressing and maintaining timing constraints in FLEX , 1988, Proceedings. Real-Time Systems Symposium.

[14]  Christophe Dony,et al.  Exception handling and object-oriented programming: towards a synthesis , 1990, OOPSLA/ECOOP '90.

[15]  Christophe Dony An Object-Oriented Exception Handling System for an Object-Oriented Language , 1988, ECOOP.

[16]  L. S. Tang,et al.  A comparison of Ada and C++ , 1992, TRI-Ada '92.

[17]  John Barnes,et al.  Programming in Ada95 , 1995 .

[18]  David L. Black,et al.  The mach exception handling facility , 1988, PADD '88.

[19]  Kwei-Jay Lin,et al.  Building flexible real-time systems using the Flex language , 1991, Computer.

[20]  Alan Snyder,et al.  Exception Handling in CLU , 1979, IEEE Transactions on Software Engineering.

[21]  J.A. Stankovic,et al.  Misconceptions about real-time computing: a serious problem for next-generation systems , 1988, Computer.

[22]  Jean D. etc. Ichbiah Reference Manual for the ADA Programming Language , 1983 .

[23]  Bruce Gilbert Lindsay Exception processing in computer systems. , 1977 .

[24]  Stanley A. Schneider,et al.  The ControlShell component-based real-time programming system , 1995, Proceedings of 1995 IEEE International Conference on Robotics and Automation.

[25]  Dmitry Lenkov,et al.  A Portable implementation of C++ Exception Handling , 1992, C++ Conference.

[26]  Roy Levin Program structures for exceptional condition handling , 1977 .

[27]  Pradeep K. Khosla,et al.  Visual Programming and Hypermedia Implementation within a Distributed Laboratory Environment , 1995, Intell. Autom. Soft Comput..

[28]  P. A. Lee Exception handling in C programs , 1983, Softw. Pract. Exp..

[29]  John K. Ousterhout,et al.  Partitioning and cooperation in a distributed multiprocessor operating system: medusa , 1980 .

[30]  John B. Goodenough,et al.  Exception handling: issues and a proposed notation , 1975, CACM.

[31]  Henry M. Levy,et al.  Hardware and software support for efficient exception handling , 1994, ASPLOS VI.

[32]  Ingemar J. Cox,et al.  Exception handling in robotics , 1989, Computer.

[33]  Diane M. Strong,et al.  Exceptions and exception handling in computerized information processes , 1995, TOIS.

[34]  Alexander Borgida,et al.  Exceptions in object-oriented languages , 1986, OOPWORK '86.

[35]  Thomas Wang Better C: an object-oriented C language with automatic memory manager suitable for interactive applications , 1994, SIGP.

[36]  Alexander Borgida Exceptions in object-oriented languages , 1986, OOPWORK '86.

[37]  Daniel M. Berry,et al.  A modular verifiable exception handling mechanism , 1985, TOPL.

[38]  Steve Niezgoda,et al.  NT's structured exception handling , 1993 .

[39]  Narain H. Gehani,et al.  Exceptional C or C with exceptions , 1992, Softw. Pract. Exp..

[40]  John B. Goodenough,et al.  Structured exception handling , 1975, POPL '75.

[41]  Pradeep K. Khosla,et al.  The Chimera II real-time operating system for advanced sensor-based control applications , 1992, IEEE Trans. Syst. Man Cybern..

[42]  George G. Robertson,et al.  Accent: A communication oriented network operating system kernel , 1981, SOSP.

[43]  Pradeep K. Khosla,et al.  Mechanisms for detecting and handling timing errors , 1997, Commun. ACM.

[44]  Stanley A. Schneider,et al.  ControlShell: component-based real-time programming , 1995, Proceedings Real-Time Technology and Applications Symposium.

[45]  Bjarne Stroustrup,et al.  The C++ programming language (2nd ed.) , 1991 .

[46]  Flaviu Cristian,et al.  Exception Handling and Software Fault Tolerance , 1982, IEEE Transactions on Computers.

[47]  Pradeep K. Khosla,et al.  Design of Dynamically Reconfigurable Real-Time Software Using Port-Based Objects , 1997, IEEE Trans. Software Eng..

[48]  Juris Hartmanis,et al.  The Programming Language Ada Reference Manual American National Standards Institute, Inc. ANSI/MIL-STD-1815A-1983 , 1983, Lecture Notes in Computer Science.

[49]  Niraj K. Jha,et al.  Fault-tolerant computer system design , 1996, IEEE Parallel & Distributed Technology: Systems & Applications.

[50]  Pradeep K. Khosla,et al.  Integration of real-time software modules for reconfigurable sensor-based control systems , 1992, Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems.

[51]  Warren Teitelman,et al.  The interlisp reference manual , 1974 .

[52]  R. Wilensky,et al.  Common LISPcraft , 1986 .

[53]  Thomas E. Bihari,et al.  Object-oriented real-time systems: concepts and examples , 1992, Computer.

[54]  Bjarne Stroustrup,et al.  Exception Handling for C++ , 1990, C++ Conference.

[55]  Henry Ledgard,et al.  Reference Manual for the ADA® Programming Language , 1983, Springer New York.

[56]  N. Cocco,et al.  A Mechanism for Exception Handling and Its Verification Rules , 1982, Comput. Lang..

[57]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[58]  Helen Custer,et al.  Inside Windows NT , 1992 .

[59]  Russell H. Taylor,et al.  A hierarchical exception handler binding mechanism , 1984 .

[60]  George Eckel Inside Windows NT , 1993 .

[61]  Mary Campione,et al.  The Java Tutorial: Object-Oriented Programming for the Internet , 1996 .