Design of the opportunistic garbage collector

  • Authors:
  • P. R. Wilson;T. G. Moher

  • Affiliations:
  • Electrical Engineering and Computer Science Dept., University of Illinois at Chicago, Box 4348 (M/C 154) Chicago, Illinois;Electrical Engineering and Computer Science Dept., University of Illinois at Chicago, Box 4348 (M/C 154) Chicago, Illinois

  • Venue:
  • OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
  • Year:
  • 1989

Quantified Score

Hi-index 0.00

Visualization

Abstract

The Opportunistic Garbage Collector (OGC) is a generational garbage collector for stock hardware and operating systems. While incorporating important features of previous systems, the OGC includes several innovations. A new bucket brigade heap organization supports advancement thresholds between one and two scavenges, using only two or three spaces per generation, and without requiring per-object counts. Opportunistic scavenging decouples scavenging from the filling of available memory, in order to hide potentially disruptive scavenge pauses and improve efficiency. Card marking efficiently records which small areas of the heap may contain pointers into younger generations, and is supported by a refinement of the crossing map technique, to enable scanning of arbitrary cards.