|
ABSTRACT
The Real-time Specification for Java and the upcoming, and more restricted, Safety Critical Java standard have been designed to allow programmers to avoid pauses caused by automatic memory management algorithms. Dynamic memory is user-managed using a region-based allocation scheme known as scoped memory areas. However, usage of those scoped memories is cumbersome and often leads to runtime errors. In this paper we focus on the safety critical subset of the Real-time Specification for Java and propose a real-time garbage collector that can be scheduled like a normal real-time thread with a deadline monotonic assigned priority. The restricted programming model offered by Safety Critical Java allows us to substantially simplify the collector. Our proposal has been implemented and evaluated in the context of the JOP project. JOP is a Java processor especially designed for embedded real-time systems. The architecture is optimized for worst-case execution time (WCET) instead of the usual optimization for average case execution time. Execution time of bytecodes is known cycle accurate.
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
|
Chris Andreae, Yvonne Coady, Celina Gibbs, James Noble, Jan Vitek, and Tian Zhao. Scoped Types and Aspects for Real-Time Java. In Proceedings of the European Conference on Object-Oriented Programming (ECOOP 2006), pages 124--147, Nantes, France, July 2006. Springer.
|
 |
2
|
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]
|
| |
3
|
N. C. Audsley, A. Burns, M. F. Richardson, and A. J. Wellings. Hard real-time scheduling: The deadline monotonic approach. In Proceedings 8th IEEE Workshop on Real-Time Operating Systems and Software, Atalanta, 1991.
|
 |
4
|
David F. Bacon , Perry Cheng , V. T. Rajan, A real-time garbage collector with low overhead and consistent utilization, Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.285-298, January 15-17, 2003, New Orleans, Louisiana, USA
|
 |
5
|
|
| |
6
|
Jason Baker, Antonio Cunei, Filip Pizlo, and Jan Vitek. Accurate garbage collection in uncooperative environments with lazy pointer stacks. In International Conference on Compiler Construction (CC), 2007.
|
| |
7
|
Greg Bollella, James Gosling, Benjamin Brosgol, Peter Dibble, Steve Furr, and Mark Turnbull. The Real-Time Specification for Java. Java Series. Addison-Wesley, June 2000.
|
| |
8
|
|
 |
9
|
|
 |
10
|
|
 |
11
|
Chris Hawblitzel , Heng Huang , Lea Wittie , Juan Chen, A garbage-collecting typed assembly language, Proceedings of the 2007 ACM SIGPLAN international workshop on Types in languages design and implementation, January 16-16, 2007, Nice, Nice, France
[doi> 10.1145/1190315.1190323]
|
| |
12
|
Roger Henriksson. Scheduling Garbage Colection in Embedded Systems. PhD thesis, Lund University, July 1998.
|
| |
13
|
Java Expert Group. Java specification request JSR 302: Safety critical java technology. Available at http://jcp.org/en/jsr/detail?id=302.
|
 |
14
|
|
| |
15
|
Filip Pizlo, J. M. Fox, David Holmes, and Jan Vitek. Real-time java scoped memory: Design patterns and semantics. In Proceedings of the 7th IEEE International Symposium on, Object-Oriented Real-Time Distributed Computing (ISORC 2004), pages 101--110, 2004.
|
 |
16
|
Filip Pizlo , Antony L. Hosking , Jan Vitek, Hierarchical real-time garbage collection, Proceedings of the 2007 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems, June 13-15, 2007, San Diego, California, USA
|
| |
17
|
|
 |
18
|
Sven Gestegard Robertz , Roger Henriksson, Time-triggered garbage collection: robust and adaptive real-time GC scheduling for embedded systems, Proceedings of the 2003 ACM SIGPLAN conference on Language, compiler, and tool for embedded systems, June 11-13, 2003, San Diego, California, USA
|
| |
19
|
RTCA/DO-178B. Software considerations in airborne systems and equipment certification. December 1992.
|
| |
20
|
Martin Schoeberl. JOP: A Java Optimized Processor for Embedded Real-Time Systems. PhD thesis, Vienna University of Technology, 2005.
|
| |
21
|
|
 |
22
|
|
| |
23
|
|
| |
24
|
|
| |
25
|
Fridtjof Siebert. Hard Realtime Garbage Collection in Modern Object Oriented Programming Languages. Number ISBN: 3-8311-3893-1. aicas Books, 2002.
|
 |
26
|
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]
|
 |
27
|
Martin T. Vechev , Eran Yahav , David F. Bacon , Noam Rinetzky, CGCExplorer: a semi-automated search procedure for provably correct concurrent collectors, Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation, June 10-13, 2007, San Diego, California, USA
|
| |
28
|
|
|