Title
Atomic incremental garbage collection and recovery for a large stable heap
Abstract
A stable heap is storage that is managed automatically using garbage collection, manipulated using atomic transactions, and accessed using a uniform storage model. These features enhance reliability and simplify programming by preventing errors due to explicit deallocation, by masking failures and concurrency using transactions, and by eliminating the distinction between accessing temporary storage and permanent storage. Stable heap management is useful for programming languages for reliable distributed computing, programming languages with persistent storage, and object-oriented database systems.Many applications that could benefit from a stable heap (e.g., computer-aided design, computer-aided software engineering, and office information systems) require large amounts of storage, timely responses for transactions, and high availability. We present garbage collection and recovery algorithms for a stable heap implementation that meet these goals and are appropriate for stock hardware. The collector is incremental: it does not attempt to collect the whole heap at once. The collector is also atomic: it is coordinated with the recovery system to prevent problems when it moves and modifies objects. The time for recovery is independent of heap size, even if a failure occurs during garbage collection.
Year
DOI
Venue
1993
10.1145/170035.170068
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Keywords
Field
DocType
atomic incremental garbage collection,temporary storage,large stable heap,uniform storage model,persistent storage,stable heap,programming language,stable heap implementation,permanent storage,heap size,stable heap management,garbage collection,algorithms,computer aided software engineering,collection,information system,language,masking,data bases,distributed computing,computer aided design,recovery,computer programming,software engineering,garbage,engineering,information systems,management,reliability,availability,programming languages,accumulators,data acquisition,high availability,distributed systems
Atomicity,Garbage,Computer science,Heap overflow,Heap (data structure),Storage model,Garbage collection,Binomial heap,Database,Computer programming,Distributed computing
Conference
Volume
Issue
ISSN
22
2
0163-5808
ISBN
Citations 
PageRank 
0-89791-592-5
34
34.32
References 
Authors
30
2
Name
Order
Citations
PageRank
Elliot K. Kolodner148383.65
William E. Weihl22614903.11