Next: 15 Acknowledgements
Up: JaRTS: A Portable Implementation
Previous: 13 Conclusion
14 Future work
As mentioned JaRTS is a prototype implementation and of course there
are open issues:
- Memory Management:
- Stack allocation has to be implemented.
- Tooling:
- A Java runtime environment can only be used in an
efficient way if there are good development tools. A remote debugger,
profiling tools an a simulator for the JaRTS runtime have to be
developed.
- Benchmarks:
- A more sophisticated benchmarking suite has to be
developed. One reason is to determine the performance and memory
bottlenecks. The other reason are more convincing comparisons to other
real-time Java solutions.
- Optimization of the translation:
- The Java to C translation has
to be optimized in terms of performance and memory consumption.
- Dynamic class loading:
- Concepts for dynamic class loading (of Core
classes) have to be investigated and implemented. Possible would be to compile
loadable classes into loadable native libraries (for RTLinux this would be
separate kernel modules, for other operating systems this would be shared
libraries) or using the standard Java Bytcode (class files) and common
techniques (interpreter, JIT compiler, compile at class-loading time). Compiling
at class loading time using the existing compiler (JaRTS in combination with a C
compiler) has very high memory and CPU requirements. The JIT solution needs much
effort to port it to a new processor. So a feasable solution would be an
interpreter or the precompiled loadable libraries.
Next: 15 Acknowledgements
Up: JaRTS: A Portable Implementation
Previous: 13 Conclusion
Urs Gleim
2002-05-29