An embedded GC module with support for multiple mutators and weak references

  • Authors:
  • Thomas B. Preußer;Peter Reichel;Rainer G. Spallek

  • Affiliations:
  • Institut für Technische Informatik, Technische Universität Dresden, Germany;Institut für Technische Informatik, Technische Universität Dresden, Germany;Institut für Technische Informatik, Technische Universität Dresden, Germany

  • Venue:
  • ARCS'10 Proceedings of the 23rd international conference on Architecture of Computing Systems
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes the design of a garbage collection (GC) module, which introduces modern GC features to the domain of embedded implementations. It supports weak references and feeds reference queues. Its architecture allows multiple concurrent mutators operating on the shared managed memory. The garbage collection is exact and fully concurrent. It combines a distributed root marking with a centralized heap scan of the managed memory. It features a novel mark-and-copy GC strategy on a segmented memory, thereby overcoming the tremendous space overhead of two-space copying and the compaction race of mark-and-compact approaches. The proposed GC architecture has been practically implemented and proven using the embedded bytecode processor SHAP as a sample testbed. The synthesis results for settings up to three SHAP mutator cores are given and online functional measurements are presented.