Inheritance of synchronization and recovery properties in Avalon/C++

The inheritance mechanism of object-oriented languages is used in the new domain of fault-tolerant distributed systems. Inheritance in Avalon/C++ is used to transmit properties, such as serializability and crash resilience, that are of specific interest in distributed applications. Three base classes are presented: resilient, atomic, and dynamic. They are arranged in a linear hierarchy. Examples of derived classes with objects that guarantee desirable fault-tolerance properties are given. >

[1]  Alfred Z. Spector,et al.  Distributed logging for transaction processing , 1987, SIGMOD '87.

[2]  Bjarne Stroustrup What Is Object-Oriented Programming? , 1988, IEEE Softw..

[3]  Alfred Z. Spector,et al.  Camelot: a flexible, distributed transaction processing system , 1988, Digest of Papers. COMPCON Spring 88 Thirty-Third IEEE Computer Society International Conference.

[4]  David Robson,et al.  Smalltalk-80: The Language and Its Implementation , 1983 .

[5]  William E. Weihl,et al.  Atomic data abstractions in a distributed collaborative editing system , 1986, POPL '86.

[6]  Craig Schaffert,et al.  An introduction to Trellis/Owl , 1986, OOPSLA 1986.

[7]  Santosh K. Shrivastava,et al.  Exploiting Type Inheritance Facilities to Implement Recoverability in Object Based Systems , 1987, SRDS.

[8]  William E. Weihl,et al.  Implementation of resilient, atomic data types , 1985, TOPL.

[9]  William J. Bolosky,et al.  Mach: A New Kernel Foundation for UNIX Development , 1986, USENIX Summer.

[10]  Daniel G. Bobrow,et al.  CommonLoops: Merging Lisp and Object-Oriented Programming , 1986, OOPSLA.

[11]  Alfred Z. Spector,et al.  The Camelot project , 1986 .

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

[13]  David R. Jefferson,et al.  Virtual time , 1985, ICPP.

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

[15]  Butler W. Lampson,et al.  Atomic Transactions , 1980, Advanced Course: Distributed Systems.

[16]  Larry Carter,et al.  Distrbution and Abstract Types in Emerald , 1987, IEEE Transactions on Software Engineering.

[17]  David A. Moon Object-oriented programming with flavors , 1986, OOPSLA 1986.

[18]  Maurice Herlihy,et al.  Avalon : language support for reliable distributed systems , 1986 .