RelaX-an extensible architecture supporting reliable distributed applications

The authors provide a description of RelaX (reliable distributed applications support on UniX), a portable and extensible system software layer on top of UNIX-like operating system kernels that supports reliable distributed applications by a generalized transaction mechanism. The transaction mechanism relieves each programmer of dealing explicitly with error recovery and concurrency control in every distributed application. In order to make transactions applicable as a general programming tool, flexibility has been introduced into the traditional transaction concept. The transaction mechanism is isolated in a server (Transaction Manager) that cooperates with an extensible set of resource managers, which provide different kinds of long-term storage entities accessible by RelaX transactions. Each resource manager provides a standard interface to the transaction kernel, and, if so desired, additional resource managers can be built. In order to ease the construction of new resource managers, RelaX provides generic software components as building blocks for any kind of resource manager. The RelaX architecture is described and the design of an examplary resource manager, the transactional object management system which provides access to persistent shared objects, is outlined.<<ETX>>

[1]  Santosh K. Shrivastava,et al.  An Overview of Arjuna: A Programming System for Reliable Distributed Computing , 1989 .

[2]  Alfred Z. Spector Camelot : a distributed transaction facility for mach and the internet - an interim report , 1987 .

[3]  David Maier,et al.  Development of an object-oriented DBMS , 1986, OOPLSA '86.

[4]  Partha Dasgupta,et al.  The Clouds distributed operating system: functional description, implementation details and related work , 1988, [1988] Proceedings. The 8th International Conference on Distributed.

[5]  David J. DeWitt,et al.  The Architecture of the EXODUS Extensible DBMS , 1986, On Object-Oriented Database System.

[6]  Irving L. Traiger,et al.  The notions of consistency and predicate locks in a database system , 1976, CACM.

[7]  Claude Kaiser,et al.  CHORUS Distributed Operating System , 1988, Comput. Syst..

[8]  David L. Black,et al.  The duality of memory and communication in the implementation of a multiprocessor operating system , 1987, SOSP '87.

[9]  José Legatheaux Martins,et al.  The CHORUS Distributed Operating System: Some Design Issues , 1987 .

[10]  David L. Black,et al.  Machine-independent virtual memory management for paged uniprocessor and multiprocessor architectures , 1987, ASPLOS 1987.

[11]  Barbara Liskov,et al.  Guardians and Actions: Linguistic Support for Robust, Distributed Programs , 1983, TOPL.

[12]  Jo-Mei Chang,et al.  Reliable broadcast protocols , 1984, TOCS.

[13]  Reinhold Kröger,et al.  Recovery-management in the RelaX distributed transaction layer , 1989, Proceedings of the Eighth Symposium on Reliable Distributed Systems.

[14]  Maurice Herlihy,et al.  Inheritance of synchronization and recovery properties in Avalon/C++ , 1988, Computer.

[15]  Andrew P. Black,et al.  The Eden System: A Technical Review , 1985, IEEE Transactions on Software Engineering.

[16]  Stanley B. Zdonik,et al.  An Object Server for an Object-Oriented Database System , 1986, OODBS.

[17]  Kenneth P. Birman,et al.  Exploiting virtual synchrony in distributed systems , 1987, SOSP '87.