| Design and implementation of a comprehensive real-time java virtual machine |
| Full text |
Pdf
(406 KB)
|
Source
|
International Conference On Embedded Software
archive
Proceedings of the 7th ACM & IEEE international conference on Embedded software
table of contents
Salzburg, Austria
SESSION: Implementations
table of contents
Pages: 249 - 258
Year of Publication: 2007
ISBN:978-1-59593-825-1
|
|
Authors
|
|
Joshua Auerbach
|
IBM Research, Hawthorne, NY
|
|
David F. Bacon
|
IBM Research, Hawthorne, NY
|
|
Bob Blainey
|
IBM Software Group, Toronto, ON, Canada
|
|
Perry Cheng
|
IBM Research, Hawthorne, NY
|
|
Michael Dawson
|
IBM Software Group, Ottawa, ON, Canada
|
|
Mike Fulton
|
IBM Software Group, Burnaby, BC, Canada
|
|
David Grove
|
IBM Research, Hawthorne, NY
|
|
Darren Hart
|
IBM Linux Technology Center, Beaverton, OR
|
|
Mark Stoodley
|
IBM Software Group, Toronto, ON, Canada
|
|
| Sponsors |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 35, Downloads (12 Months): 137, Citation Count: 7
|
|
|
ABSTRACT
The emergence of standards for programming real-time systems in Java has encouraged many developers to consider its use for systems previously only built using C, Ada, or assembly language. However, the RTSJ standard in isolation leaves many important problems unaddressed, and suffers from some serious problems in usability and safety. As a result, the use of Java for real-time programming has continued to be viewed as risky and adoption has been slow. In this paper we provide a description of IBM's new real-time Java virtual machine product, which combines Metronome real-time garbage collection, ahead-of-time compilation, and a complete implementation of the RTSJ standard, running on top of a custom real-time multiprocessor Linux kernel. We will describe the implementation of each of these components, including how they interacted both positively and negatively, and the extensions to previous work required to move it from research prototype to a system implementing the complete semantics of the Java language. The system has been adopted for hard real-time development of naval weapons systems and soft real-time telecommunications servers. We present measurements showing that the system is able to provide sub-millisecond worst-case garbage collection latencies, 50 microsecond Linux scheduling accuracy, and eliminate non-determinism due to JIT compilation.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
B. Alpern , C. R. Attanasio , J. J. Barton , M. G. Burke , P. Cheng , J.-D. Choi , A. Cocchi , S. J. Fink , D. Grove , M. Hind , S. F. Hummel , D. Lieber , V. Litvinov , M. F. Mergen , T. Ngo , J. R. Russell , V. Sarkar , M. J. Serrano , J. C. Shepherd , S. E. Smith , V. C. Sreedhar , H. Srinivasan , J. Whaley, The Jalapeño virtual machine, IBM Systems Journal, v.39 n.1, p.211-238, January 2000
|
| |
2
|
Andreae, C., Coady, Y., Gibbs, C., Noble, J., Vitek, J., and Zhao, T. Scoped Types and Aspects for Real-Time Java. In Proc. European Conference on Object-Oriented Programming (Nantes, France, July 2006), Springer-Verlag, pp. 124--147.
|
 |
3
|
A. W. Appel , J. R. Ellis , K. Li, Real-time concurrent collection on stock multiprocessors, Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation, p.11-20, June 20-24, 1988, Atlanta, Georgia, United States
|
 |
4
|
Austin Armbruster , Jason Baker , Antonio Cunei , Chapman Flack , David Holmes , Filip Pizlo , Edward Pla , Marek Prochazka , Jan Vitek, A real-time Java virtual machine with applications in avionics, ACM Transactions on Embedded Computing Systems (TECS), v.7 n.1, p.1-49, December 2007
[doi> 10.1145/1324969.1324974]
|
| |
5
|
Bacon, D. F., Cheng, P., and Rajan, V. T. A real-time garbage collector with low overhead and consistent utilization. In Proceedings of the 30th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (New Orleans, Louisiana, Jan. 2003). SIGPLAN Notices, 38, 1, 285--298.
|
 |
6
|
|
| |
7
|
BEA. BEA WebLogic real time: Predictable mission-critical performance for java - today. Technical white paper available at http://www.bea.com, Jan. 2006.
|
| |
8
|
|
| |
9
|
|
 |
10
|
Chandrasekhar Boyapati , Alexandru Salcianu , William Beebee, Jr. , Martin Rinard, Ownership types for safe region-based memory management in real-time Java, Proceedings of the ACM SIGPLAN 2003 conference on Programming language design and implementation, June 09-11, 2003, San Diego, California, USA
|
| |
11
|
|
 |
12
|
|
 |
13
|
Perry Cheng , Robert Harper , Peter Lee, Generational stack collection and profile-driven pretenuring, Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation, p.162-173, June 17-19, 1998, Montreal, Quebec, Canada
|
 |
14
|
|
 |
15
|
|
 |
16
|
|
 |
17
|
Damien Doligez , Georges Gonthier, Portable, unobtrusive garbage collection for multiprocessor systems, Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.70-83, January 16-19, 1994, Portland, Oregon, United States
[doi> 10.1145/174675.174673]
|
| |
18
|
Fitzgerald, R., Knoblock, T. B., Ruf, E., Steensgaard, B., and Tarditi, D. Marmot: An optimizing compiler for Java. Tech. Rep. MSR-TR-99-33, Microsoft Research, June 1999.
|
| |
19
|
|
| |
20
|
The GNU Compiler for the Java Programming Language. http://gcc.gnu.org/java.
|
| |
21
|
Gleixner, T., and Niehaus, D. HRTimers and beyond: Transforming the Linux time subsystems. In Proc. Linux Symposium (Ottawa, Ontario, June 2006).
|
| |
22
|
Henriksson, R. Scheduling Garbage Collection in Embedded Systems. PhD thesis, Lund Institute of Technology, July 1998.
|
| |
23
|
IBM Linux Technology Center. Real-time linux patches. ftp://linuxpatch.ncsa.uiuc.edu/rt-linux/rhel4u2/R1/rtlinux-src-2006-08-30-r541.tar.bz2.
|
 |
24
|
Tobias Mann , Morgan Deters , Rob LeGrand , Ron K. Cytron, Static determination of allocation rates to support real-time garbage collection, Proceedings of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems, June 15-17, 2005, Chicago, Illinois, USA
|
 |
25
|
|
| |
26
|
|
 |
27
|
Mauricio Serrano , Rajesh Bordawekar , Sam Midkiff , Manish Gupta, Quicksilver: a quasi-static compiler for Java, Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.66-82, October 2000, Minneapolis, Minnesota, United States
|
 |
28
|
Fridtjof Siebert, Eliminating external fragmentation in a non-moving garbage collector for Java, Proceedings of the 2000 international conference on Compilers, architecture, and synthesis for embedded systems, p.9-17, November 17-19, 2000, San Jose, California, United States
[doi> 10.1145/354880.354883]
|
 |
29
|
Daniel Spoonhower , Joshua Auerbach , David F. Bacon , Perry Cheng , David Grove, Eventrons: a safe programming construct for high-frequency hard real-time applications, Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation, June 11-14, 2006, Ottawa, Ontario, Canada
|
 |
30
|
Jesper Honig Spring , Filip Pizlo , Rachid Guerraoui , Jan Vitek, Reflexes: abstractions for highly responsive systems, Proceedings of the 3rd international conference on Virtual execution environments, June 13-15, 2007, San Diego, California, USA
[doi> 10.1145/1254810.1254837]
|
| |
31
|
Stoodley, M., Ma, K., and Lut, M. Real-time Java, part 2: Comparing compilation techniques (2007). http://www.ibm.com/developerworks/java/library/j-rtj2/index.html.
|
| |
32
|
Stultz, J., Hart, D., and Aravamudan, N. We are not getting any younger: A new approach to time and timers. In Proc. Linux Symposium (Ottawa, Ontario, June 2005).
|
| |
33
|
|
CITED BY 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Joshua Auerbach , David F. Bacon , Perry Cheng , David Grove , Ben Biron , Charlie Gracie , Bill McCloskey , Aleksandar Micic , Ryan Sciampacone, Tax-and-spend: democratic scheduling for real-time garbage collection, Proceedings of the 7th ACM international conference on Embedded software, October 19-24, 2008, Atlanta, GA, USA
|
|
|
Joshua Auerbach , David F. Bacon , Daniel Iercan , Christoph M. Kirsch , V. T. Rajan , Harald Röck , Rainer Trummer, Low-latency time-portable real-time programming with Exotasks, ACM Transactions on Embedded Computing Systems (TECS), v.8 n.2, p.1-48, January 2009
|
|