Method and apparatus for managing persistent data objects between
persistent storage and memory. A plurality of the objects include one or
more pointer values that reference other ones of the objects. Persistent
storage pointer values in an object are swizzled to memory pointer values
when the object is transferred from persistent storage to memory. The
memory pointer values in an object to persistent storage pointer values
are unswizzled when the object is transferred from memory to persistent
storage. In generating a persistent storage address from a persistent
storage pointer value, the persistent storage pointer value is multiplied
by a selected multiplier.