Cooperative applications must communicate in order to make progress, and are therefore inherently affected by communication latency. In wide-area settings this latency can increase to a point where traditional consistency management no longer provides sufficient reactivity -- in some cases making the application unusable. We address this problem by considering a cooperative application to be a collection of cooperating replicas, and then concentrate on the management of consistency within such a group of replicas.
This problem is significant for two reasons: it appears in any application domain where we have cooperation between human agents, and is a fundamental part of the structure of cooperation mechanisms. Our comprehensive study of "weak consistency" covers four domains: transactional systems, distributed shared memories, distributed shared objects, and platforms for group communication. Our contribution has three significant aspects:
We have implemented Core -- a complete development environment conforming to the above principles -- that runs on Unix, is documented, and freely available by FTP. Core provides the usual services for distributed applications (a name service, group communication and management of group membership, for example), as well as an extensible class library with which specific consistency managers can be developed. It also provides numerous classes with which application designers can implement new kinds of shared object. Two example applications have been built using Core: an extension to Emacs that permits collaborative editing, and a simple manager for shared resources.
This document was generated using the LaTeX2HTML translator Version 98.1p1 release (March 2nd, 1998)
Copyright © 1993, 1994, 1995, 1996, 1997, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
The command line arguments were:
latex2html -no_navigation -no_images -no_math -no_auto_link -antialias -no_fork -split 0 resume-en.tex.
The translation was initiated by Georges Brun-Cottan on 1998-09-11