Where have all the pointers gone?: A story of distributed pointer tracking

We present new algorithms for tracking pointers in distributed object systems where each node in the system has its own local storage and may communicate with other nodes only by passing messages. The problem is difficult because of asynchrony, implying lack of knowledge of global state, and lack of...

Full description

Bibliographic Details
Main Authors: Richard Hudson, Ron Morrison, David S. Munro
Other Authors: The Pennsylvania State University CiteSeerX Archives
Format: Text
Language:English
Subjects:
Online Access:http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.43.6927
Description
Summary:We present new algorithms for tracking pointers in distributed object systems where each node in the system has its own local storage and may communicate with other nodes only by passing messages. The problem is difficult because of asynchrony, implying lack of knowledge of global state, and lack of globally atomic operators on that state. The pointer tracking algoritms may be used as part of a garbage collector to identifiy when there are no pointers to an object from another node, in object migration protocols where one object is substituted by another object possibly located on a different node, and in persistent systems to identify persistent data. A discussion of the correctness of the algoritms is given. Keywords: distributed systems, pointer tracking, persistence 1 Introduction The ability to identify which objects hold references to other objects is an essential property of all systems based on reachability such as: garbage collection systems [Wilson92]; object migration sys.