The Amadeus GRT: generic runtime support for distributed persistent programming

Many object-oriented programming language implementations have been extended to support persistence, distribution or atomicity by integrating the necessary additional support with the language''s runtime library. We argue that a better approach is to provide a Generic Runtime library (the GRT) which implements that part of the support which is independent of any language. The GRT should be designed to interface to a language''s existing runtime in such a way that the language''s local object reference format and invocation mechanism can be retained. Hence existing compilers do not necessarily have to be modified, and a range of different object-oriented languages can be supported simultaneously. This approach has significant merits including: the ease with which a language can be extended; the sophistication of the underlying support immediately available to a language implementer; and the ability to support fine-grained language interworking.

[1]  O. Deux,et al.  The O2 system , 1991 .

[2]  Gradimir Starovic,et al.  Implementing the Comandos Virtual Machine.(Also in Chapter 10 of The Comandos Distributed Application Platform.Cahill, V., Balter, R., Harris, N., and Rousset dePina, X. (Ed.s),Springer-Verlag, Berlin, 1993). , 1993 .

[3]  Carl H. Hauser,et al.  The portable common runtime approach to interoperability , 1989, SOSP '89.

[4]  Jeffrey S. Chase,et al.  The Amber system: parallel programming on a network of multiprocessors , 1989, SOSP '89.

[5]  Narain H. Gehani,et al.  Rationale for the Design of Persistence and Query Processing Facilities in the Database Programming Language O++ , 1989, DBPL.

[6]  Rodger Lea,et al.  The COOL architecture and abstractions for object-oriented distributed operating systems , 1992, EW 5.

[7]  Jacob Stein,et al.  The GemStone object database management system , 1991, CACM.

[8]  Marc Shapiro,et al.  Persistence and Migration for C++ Objects , 1989, ECOOP.

[9]  Vinny Cahill,et al.  Towards generic support for distributed information systems , 1991, Proceedings 1991 International Workshop on Object Orientation in Operating Systems.

[10]  Brendan Tangney,et al.  Supporting the Amadeus Platform on UNIX. , 1992 .

[11]  Robert E. Strom,et al.  NIL: An integrated language and system for distributed programming , 1983, ACM SIGPLAN Notices.

[12]  R. E. Strom Hermes: an integrated language and system for distributed programming , 1990, IEEE Workshop on Experimental Distributed Systems.

[13]  Brad J. Cox,et al.  Planning the software industrial revolution , 1990, IEEE Software.

[14]  Vinny Cahill,et al.  Supporting distributed applications in the Amadeus environment , 1991, Comput. Commun..

[15]  Jack A. Orenstein,et al.  The ObjectStore database system , 1991, CACM.

[16]  Michael J. Carey,et al.  Persistence in the E Language: Issues and Implementation , 1989, Softw. Pract. Exp..

[17]  Vinny Cahill,et al.  Implementing atomic objects with the RelaX transaction facility , 1991, Proceedings 1991 International Workshop on Object Orientation in Operating Systems.

[18]  LiKai,et al.  Memory coherence in shared virtual memory systems , 1989 .

[19]  David J. DeWitt,et al.  Persistence in EXODUS , 1987, Workshop on Persistent Objects.

[20]  O. Deux,et al.  The O2 system , 1991 .

[21]  Vinny Cahill,et al.  The Comandos Distributed Application Platform , 1993, Comput. J..