Abstract
Critical systems written in Ada are still reluctant to use dynamic memory allocation. The Ravenscar profile, for example, prohibits the dynamic creation of tasks. This is in spite of the availability of storage pools and the strong compile-time checking of access types. The Java community has, by necessity, taken a slightly less conservative approach. Safety-Critical Java (SCJ) supports a constrained use of dynamic memory allocation. This paper takes the SCJ approach and tries to implement it using Ada's storage pools. We show that the approach is not directly transferable to Ada due to the difference in the way that SCJ and Ada handle region-based memory management. However, an equivalent approach can be developed.
- David F Bacon, Perry Cheng, and VT Rajan. A real-time garbage collector with low overhead and consistent utilization. In ACM SIGPLAN Notices, volume 38, pages 285--298. ACM, 2003. Google Scholar
Digital Library
- A. Borg, A. Wellings, C. Gill, and R.K. Cytron. Real-time memory management: life and times. In Real-Time Systems, 2006. 18th Euromicro Conference on, pages 11 pp.--250, 2006. Google Scholar
Digital Library
- Miguel Masmano, Ismael Ripoll, Alfons Crespo, and Jorge Real. Tlsf: A new dynamic memory allocator for real-time systems. In Real-Time Systems, 2004. ECRTS 2004. Proceedings. 16th Euromicro Conference on, pages 79--88. IEEE, 2004. Google Scholar
Digital Library
- F. Pizlo, J. M. Fox, D. Holmes, and J. Vitek. Real-time java scoped memory: Design patterns and semantics. 16th IEEE International Symposium on Object/component/service-oriented Real-time distributed Computing (ISORC 2013), 0:101--110, 2004.Google Scholar
Cross Ref
- Mads Tofte and Jean-Pierre Talpin. Region-based memory management. Information and Computation, 132(2):109--176, 1997. Google Scholar
Digital Library
- Tian Zhao, Jason Baker, James Hunt, James Noble, and Jan Vitek. Implicit ownership types for memory management. Science of Computer Programming, 71(3):213--241, 2008. Google Scholar
Digital Library
Index Terms
(auto-classified)Implementing Safety-Critical Java Missions in Ada
Recommendations
Mission modes for safety critical Java
SEUS'07: Proceedings of the 5th IFIP WG 10.2 international conference on Software technologies for embedded and ubiquitous systemsJava is now considered as a language for the domain of safety critical applications. A restricted version of the Real-Time Specification for Java (RTSJ) is currently under development within the Java Specification Request (JSR) 302. The application ...
The cardiac pacemaker case study and its implementation in safety-critical Java and Ravenscar Ada
JTRES '12: Proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded SystemsThe cardiac pacemaker has emerged as a case study for evaluating the effectiveness of techniques for the verification and design of embedded systems with complex control requirements. This paper reports on the experiences of using this case study to ...






Comments