TMOS: A Transactional Garbage Collector

  • Authors:
  • John N. Zigman;Stephen Blackburn;J. Eliot B. Moss

  • Affiliations:
  • -;-;-

  • Venue:
  • POS-9 Revised Papers from the 9th International Workshop on Persistent Object Systems
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

Defining persistence in terms of reachability is fundamental to achieving orthogonality of persistence. It is implicit to the principles of orthogonal persistence and is a part of the ODMG 3.0 data objects standard. Although space reclamation in the context of persistence by reachability can be achieved automatically using garbage collection, relatively few papers address the problem of implementing garbage collection in a transactional storage system.Atransactional GC algorithm must operate correctly in the face of failure, and in particular must deal with the problem of transaction abort, which by undoing changes such as the deletion of references, subverts the GC reachability axiom of 'once garbage always garbage'.In this paper we make two key contributions. First, we present a generic approach to the design of transactional collectors that promotes clarity, generality, and understandability, and then using this approach, we present a new transactional garbage collection algorithm, TMOS. Our design approach brings together three independent components--a mutator, a transactional store, and a GC algorithm. TMOS represents the application of the Mature Object Space family of GC algorithms to the transactional context through our approach to transactional GC design.