Precise garbage collection for C

  • Authors:
  • Jon Rafkind;Adam Wick;John Regehr;Matthew Flatt

  • Affiliations:
  • University of Utah, Salt Lake City, UT, USA;Galois, Portland, OR, USA;University of Utah, Salt Lake City, UT, USA;University of Utah, Salt Lake City, UT, USA

  • Venue:
  • Proceedings of the 2009 international symposium on Memory management
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Magpie is a source-to-source transformation for C programs that enables precise garbage collection, where precise means that integers are not confused with pointers, and the liveness of a pointer is apparent at the source level. Precise GC is primarily useful for long-running programs and programs that interact with untrusted components. In particular, we have successfully deployed precise GC in the C implementation of a language run-time system that was originally designed to use conservative GC. We also report on our experience in transforming parts of the Linux kernel to use precise GC instead of manual memory management.