A Comparison of Ada and Real-Time JavaTM for Safety-Critical Applications

  • Benjamin M. Brosgol
  • Andy Wellings
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4006)


Ada has long been used for developing safety-critical systems, and the upcoming Ada 2005 language revision extends this support. For various reasons Java has not been a serious choice in this domain. However, recent work based on the Real-Time Specification for Java promises to make Java technology a credible alternative. This paper discusses and compares Ada and the RTSJ with respect to the requirements for safety-critical systems, in particular how they can serve as the basis for subsets that can be used for developing safety-certified software.


Garbage Collection Exception Handling Mission Phase Priority Inversion Ready Queue 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    RTCA SC-167/EUROCAE WG-12. RTCA/DO-178B – Software Considerations in Airborne Systems and Equipment Certification (December 1992)Google Scholar
  2. 2.
    The Motor Industry Software Reliability Association. MISRA-C:2004 – Guidelines for the use of the C language in critical systems (October 2004)Google Scholar
  3. 3.
    Dibble, P., Belliardi, R., Brosgol, B., Holmes, D., Wellings, A.: Real-Time Specification for JavaTM, V1.0.1 (June 2005),
  4. 4.
    ISO/IEC JTC1/SC 22/WG 9. Ada Reference Manual – ISO/IEC 8652:1995(E) with Technical Corrigendum 1 and Amendment 1 (Draft 13) – Language and Standard Libraries (2005)Google Scholar
  5. 5.
    Handbook for Object-Oriented Technology in Aviation (OOTiA) (October 2004),
  6. 6.
    Burns, A., Dobbing, B., Romanski, G.: The Ravenscar Tasking Profile for High Integrity Real-Time Programs. In: Asplund, L. (ed.) Ada-Europe 1998. LNCS, vol. 1411, p. 263. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  7. 7.
    ISO/IEC JTC1/SC 22/WG 9. ISO/IEC DTR 15942: Guide for the Use of the Ada Programming Language in High Integrity Systems (July 1999)Google Scholar
  8. 8.
    Gosling, J., Joy, B., Steele, G., Bracha, G.: The Java Language Specification, 3rd edn. Addison-Wesley, Reading (2005)Google Scholar
  9. 9.
    Poll, E., van den Berg, J., Jacobs, B.: Formal specification of the JavaCard API in JML: the APDU class. Computer Networks (Amsterdam, Netherlands: 1999) 36(4), 407–421 (2001)Google Scholar
  10. 10.
    Alves-Foss, J. (ed.): Formal Syntax and Semantics of Java. LNCS, vol. 1523. Springer, Heidelberg (1999)Google Scholar
  11. 11.
    Kwon, J., Wellings, A., King, S.: Ravenscar-Java: A high-integrity profile for real-time Java. Concurrency and Computation: Practice and Experience 17(5-6), 681–713 (2005)CrossRefGoogle Scholar
  12. 12.
    Cai, H., Wellings, A.: A real-time Isolate specification for Ravenscar-Java. In: Proceedings of the Seventh IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (May 2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Benjamin M. Brosgol
    • 1
  • Andy Wellings
    • 2
  1. 1.AdaCoreNew YorkUSA
  2. 2.Dept. of Computer ScienceUniversity of YorkHeslington, YorkUK

Personalised recommendations