HP Integrity NonStop J-Series User Manual
Page 180

has saved. When the isomorphic persistence mechanism encounters a pointer to an unsaved object, it
copies the object data, saves that object data_not the pointer_to the stream, then keeps track of the
pointer in the save table. If the isomorphic persistence mechanism later encounters a pointer to the
same object, instead of copying and saving the object data, the mechanism saves the save table's
reference to the pointer.
When the isomorphic persistence mechanism restores pointers to objects from the stream, the
mechanism uses a restore table to reverse the process. When the isomorphic persistence mechanism
encounters a pointer to an unrestored object, it recreates the object with data from the stream, then
changes the restored pointer to point to the recreated object. The mechanism keeps track of the pointer
in the restore table. If the isomorphic persistence mechanism later encounters a reference to an
already-restored pointer, then the mechanism looks up the reference in the restore table, and updates
the restored pointer to point to the object referred to in the table.
Figure 4. Attempt to Save and Restore a Circularly-linked List with Simple Persistence
Figure 5. Saving and Restoring a Circularly-linked List with Isomorphic Persistence