3 Architecture The persistent distributed store abstraction is similar to a distributed shared memory. Applications allocate their data, including complex data structures linked by references, in the PerDiS store. Type information is also contained in the store, accessible as ordinary data. PBR means that objects accessible from persistent roots, and only those, are stored on secondary storage. Each application runs as a separate Unix process, mapping data directly in its own address space.
Clusters are groups of related objects accessed together.
This greatly simplifies the access control semantics and caching policy. Clusters support persistence, by providing a directory service, which associates string identifiers with the persistence roots. The GC is aware of such persistent roots, and uses them to implement the PBR paradigm. Once an application program retrieves a root object from a cluster, it can navigate the store by dereferencing the pointers contained in the object itself. An object may contain a reference to some other object, allocated in another cluster, thereby creating a distributed network of objects.