Real Java for real time - gain and pain
In: Proceedings of the international conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES 2002), pages 304-311, ACM Press, 2002.
Authors: Anders Nilsson, Torbjörn Ekman, Klas Nilsson
Abstract
The Java programming language, being a portable and safe object-oriented language, has gained much interest among embedded and real-time systems developers. However, standard Java implementations exhibit problems with performance, memory footprint, and predictability. The question is then, are these limitations inherent in the technology? Reviewing run-time aspects and the possibility to compile Java to native code, reveals some real limitations as well as common misconceptions. Investigation of the real limitations shows that for implementing real-time Java on small embedded platforms, native compilation via C is an appropriate solution for many platforms and applications. A revised technique for Java-compatible memory management is proposed to reduce latencies, and linkage of externally generated (C) code with natively compiled Java is considered in a prototype that has been implemented. Based on application demands and experimental verification, we find that real-time Java can, and should, retain the standard simple Java memory model to the programmer.
(PDF)
BIBTEX:
@InProceedings{cases2002,
Author = {Anders Nilsson and Torbj{\"o}rn Ekman and Klas Nilsson},
Title = "{Real Java for real time - gain and pain}",
BookTitle = "{Proceedings of the international conference on
Compilers, architecture, and synthesis for embedded
systems}",
Pages = {304--311},
Publisher = {ACM Press},
year = 2002,
location = {Greenoble, France},
}