Garbage collection in an uncooperative environment
Software—Practice & Experience
Tag-free garbage collection for strongly typed programming languages
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
Compiler support for garbage collection in a statically typed language
PLDI '92 Proceedings of the ACM SIGPLAN 1992 conference on Programming language design and implementation
Space efficient conservative garbage collection
PLDI '93 Proceedings of the ACM SIGPLAN 1993 conference on Programming language design and implementation
Portable, unobtrusive garbage collection for multiprocessor systems
POPL '94 Proceedings of the 21st ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Garbage collection and local variable type-precision and liveness in Java virtual machines
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Barrier techniques for incremental tracing
Proceedings of the 1st international symposium on Memory management
Guaranteeing non-disruptiveness and real-time deadlines in an incremental garbage collector
Proceedings of the 1st international symposium on Memory management
The Java programming language (2nd ed.)
The Java programming language (2nd ed.)
Support for garbage collection at every instruction in a Java compiler
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
Eliminating external fragmentation in a non-moving garbage collector for Java
CASES '00 Proceedings of the 2000 international conference on Compilers, architecture, and synthesis for embedded systems
List processing in real time on a serial computer
Communications of the ACM
On-the-fly garbage collection: an exercise in cooperation
Communications of the ACM
TurboJ, a Java Bytecode-to-Native Compiler
LCTES '98 Proceedings of the ACM SIGPLAN Workshop on Languages, Compilers, and Tools for Embedded Systems
Hard Real-Time Garbage-Collection in the Jamaica Virtual Machine
RTCSA '99 Proceedings of the Sixth International Conference on Real-Time Computing Systems and Applications
Real-Time Garbage Collection in Multi-Threaded Systems on a Single Processor
RTSS '99 Proceedings of the 20th IEEE Real-Time Systems Symposium
GC Points in a Threaded Environment
GC Points in a Threaded Environment
Nonblocking real-time garbage collection
ACM Transactions on Embedded Computing Systems (TECS)
Hi-index | 0.00 |
Root scanning is the task of identifying references to heap objects that are stored outside of the heap itself, in global and local variables and on the execution stack. Root scanning is particularly difficult within an incremental garbage collector that needs to be deterministic or give hard realtime guarantees. Here, a method that allows exact root scanning is presented. The basic idea is to ensure that copies of all root references exist on the heap whenever the garbage collector might become active. This approach reduces the root scanning phase of the garbage collection cycle to an efficient constant-time operation. A Java virtual machine and a static Java byte-- code compiler that use this technique have been implemented and analysed using the SPECjvm98 benchmark suite. This Java implementation allows for deterministic memory management as needed in real-time systems that is difficult to achieve with traditional methods to perform root scanning.