Computer Science Technical Reports
CS at VT

System Resource Sharing for Synchronous Collaboration

Begole, J. and Struble, C.A. and Shaffer, C. and Smith, R.B. (1999) System Resource Sharing for Synchronous Collaboration. Technical Report TR-99-11, Computer Science, Virginia Tech.

Full text available as:
PDF - Requires Adobe Acrobat Reader or other PDF viewer.
BetEtAl99b.pdf (322538)


We describe problems associated with accessing data resources external to the application, which we term externalities, in replicated synchronous collaborative applications (e.g., a multiuser text editor). Accessing externalities such as les, databases, network connections, environment variables and the system clock is not as straightforward in replicated collaborative software as in single-user applications and centralized collaborative systems. We describe ad hoc solutions that have been used previously. Our primary objection to the ad hoc solutions is that the developer must program dierent behavior into the dierent replicas of a multi-user application, which increases the cost and complexity of development. We introduce a novel general approach to accessing externalities uniformly in a replicated collaborative system. The approach uses a semi-replicated architecture where the actual externality resides at a single location and is accessed via replicated proxies. The proxies multiplex input to and output from the single instance of the externality. This approach facilitates the creation of replicated synchronous groupware in two ways: (1) developers use the same mechanisms as in traditional single-user applications (2) developers program all replicas to execute the same behavior. We describe a general design for proxied access to read{only, write{only and read{write externalities. We discuss the tradeos of this semi- replicated approach over full, literal replication and the class of applications to which this approach can be successfully applied. We also describe details of a prototype implementation of this approach within a replicated collaboration-transparency system, called Flexible JAMM (Java Applets Made Multi-user).

Item Type:Departmental Technical Report
Keywords:computer-supported cooperative work, collaboration transparency, distributed file systems, Flexible JAMM, groupware, distribution architectures, Java TM platform, input-output, object-oriented systems
Subjects:Computer Science > Parallel Computation
ID Code:524
Deposited By:Shivakumar, Priya
Deposited On:20 May 2002