© 1999 by British Computer Society
Consistent implementations of replicated objects
Department of Computer Science, The Hong Kong University of Science and Technology, Clear Water Bay, Hong Kong Email: choy@cs.ust.hk
Shared objects are used in the distributed environment for synchronization, date sharing and service provision. They are usually replicated in a distributed system for higher availability and fault tolerance. Coherent or strongly consistent implementation of replicated objects has been studied extensively in the literature. This paper concentrates on a general method for specifying and implementing replicated objects that may require weaker consistency conditions. The weakness of the objects is left open and users are allowed to specify their objects by defining how concurrent sets of operations should be performed. The implementation of a replicated object consists of two modules: one module is an algorithm to identify concurrent sets from a distributed computation and the other module is a user-defined procedure to process the concurrent sets. We show examples of weaker objects that can be defined and implemented more efficiently because of the less stringent requirements imposed on these objects. Several objects, including a shared dictionary are used to demonstrate our scheme and we show that non-blocking implementations of some of these objects are possible.