Javascript verkar inte påslaget? - Vissa delar av Lunds universitets webbplats fungerar inte optimalt utan javascript, kontrollera din webbläsares inställningar.
Du är här

Tailoring native compilation of Java for real-time systems

Publiceringsår: 2006
Språk: Engelska
Sidor: 183
Dokumenttyp: Doktorsavhandling
Förlag: Computer Science


Our everyday appliances ranging from toys to vehicles, as well as the equipment used to manufacture them, contain an increasing number of embedded computers. Embedded systems software often implement functionality that is crucial for the operation of the device, resulting in a variety of timing requirements and resource utilization constraints to be fulfilled. Industrial competition and the ever increasing performance/cost ratio for embedded computers lead to an almost exponential growth of the software complexity, raising an increasing need for better programming languages and run-time platforms than is used today. Java was chosen as an example of a safe, object-oriented programming language that could benefit embedded systems development.

Defined key concepts, such as portability, scalability, and real-time performance, need to be fulfilled for Java to be a viable programming language for hard real-time systems. In order to fulfill these key concepts, natively compiling Java using a revised memory management technique is proposed. We have implemented a compiler and run-time system for Java, using and evaluating new object-oriented compiler construction research tools, which enables a new way of implementing optimizations and other code transformations as a set of transforms on an abstract syntax tree.

To our knowledge, this is the first implementation of natively compiled real-time Java, which handles hard real-time requirements. A new transparent garbage collector interface makes it possible to generate, or write, C code independently of garbage collector algorithm.

Experiments show that we achieve good results on real-time performance. Given our contributions and results we do see compiled real-time Java, or a similar language such as C#, as industrially viable.

We also propose a technique for multi-level deployment of embedded applications, by taking advantage of the fact that Java source code has a well defined meaning.

The same compiler construction techniques and tools used for implementing our Java compiler also appears to be suitable on a higher abstraction level. This is exemplified with with a prototype of a compiler-compiler on the ontology level.


Room E:1406, E-building, Ole Römers väg 3, Faculty of Engineering, Lund University
  • Peter Puschner (Prof.)


  • Computer Science
  • systems
  • numerical analysis
  • Java
  • embedded systems
  • real-time
  • aspect-oriented
  • object-oriented
  • Computer science
  • compiler construction
  • control
  • Datalogi
  • numerisk analys
  • system
  • kontroll


  • Klas Nilsson
  • ISSN: 1404-1219
  • ISBN: 91-628-6830-6

Box 117, 221 00 LUND
Telefon 046-222 00 00 (växel)
Telefax 046-222 47 20
lu [at] lu [dot] se

Fakturaadress: Box 188, 221 00 LUND
Organisationsnummer: 202100-3211
Om webbplatsen