Results 1 -
1 of
1
Design of a Garbage Collector Using Design Patterns
- Proceedings of the Twenty-Fifth Conference of (TOOLS) Pacific
, 1997
"... We present six design patterns---Adapter, Facade, Iterator, Proxy, RootSet and TriColour---found during a review of four different garbage collectors. We also capture the design decisions and trade-offs behind the low-level implementation that characterises most garbage collectors. A garbage collect ..."
Abstract
-
Cited by 5 (3 self)
- Add to MetaCart
We present six design patterns---Adapter, Facade, Iterator, Proxy, RootSet and TriColour---found during a review of four different garbage collectors. We also capture the design decisions and trade-offs behind the low-level implementation that characterises most garbage collectors. A garbage collector for real-time applications is then designed using the design patterns. We discuss the selected algorithm and various implementation techniques. Finally the performance of the collector is examined using formal methods. This paper presents a novel attempt to "mine" and capture the essential design decisions and trade-offs in garbage collectors. 1 Introduction Originally created for Lisp, garbage collection is commonly used in object oriented languages 1 and functional languages 2 , where it simplifies memory management and increases encapsulation by hiding object lifecycles. Since the 1970's several algorithms have been developed, many of which are `tracing' Current address: Trimb...

