The PerDiS (Persistent Distributed Store) project addresses the issue of pr
oviding support for distributed collaborative engineering applications. We
describe the design and implementation of the PerDiS platform, and its supp
ort for such applications.
Collaborative engineering raises system issues related to the sharing of la
rge volumes of fine-grain, complex objects across wide-area networks and ad
ministrative boundaries. PerDiS manages all these aspects in a well defined
, integrated, and automatic way. Distributed application programming is sim
plified because it uses the same memory abstraction as in the centralized c
ase. Porting an existing centralized program written in C or C++ is usually
a matter of a few, well-isolated changes.
We present some performance results from a proof-of-concept platform that r
uns a number of small, but real, distributed applications on Unix and Windo
ws NT. These confirm that the PerDiS abstraction is well adapted to the tar
geted application area and that the overall performance is promising compar
ed to alternative approaches.