Abstract
This paper describes an original object communication protocol, named ACS (Apply, Call, Send), that we adopted in KAROS (Kernel of an Action-based Reliable Object System) to deal with concurrency control and failure recovery in distributed applications. The basic idea in ACS is to associate each request message to an atomic action. ACS allows to build atomic action trees representing the logical nesting of services. Moreover, it gives to the programmer full control on the granularity of atomicity and provides a fairly natural model for grouping objects inside actions to ensure the system's global consistency. By using ACS, objects may be seen as reliable elements that can be composed to build up reliable distributed applications.
Preview
Unable to display preview. Download preview PDF.
References
Bernstein P.A, Hadzilacos V and Goodman N-Concurrency Control and Recovery in Database Systems-Addison Wesley-1987.
Birell A and Nelson B-Implementing Remote Procedure Call-ACM Transactions on Computer Systems-February 1984.
Capobianchi R, Guerraoui R, Lanusse A and Roux P-Active Objects on a Parallel Machine: A Case Study-Proc Conf on Technology of Object Oriented Languages and Systems-March/April 1992.
Caromel D-Concurrency: an Object-Oriented Approach-Proc Conf on Technology of Object-Oriented Languages and Systems-June 1990.
Corradi A and Leonardi L-The Specification of Concurrency: An Object-based Approach-Proc IEEE Conference on Computers and Communications-March 1988.
Cheriton D-The V Distributed System-Comm ACM-March 1988.
Dixon G.N, Parrington G.D, Shrivastava S.K and Wheater S.M-The Treatment of Persistent Objects in Arjuna-Proc European Conf on Object-Oriented Programming-July 1989.
Guerraoui R, Capobianchi R, Lanusse A and Roux P-“Une vue générale de KAROS: un langage à objets concurrents destiné à des applications distribuées”-Technical Report CEA, CE Saclay DEIN/SIR (in french)-January 1992.
Guerraoui R-“Customizing Concurrency Control in an Object-Oriented Framework”-Technical Report CEA, CE Saclay DEIN/SIR-March 1992.
Gray J.N-Notes on Database Operating Systems-Lecture Notes in Computer Science-Springer-1978.
Kafura D-ACT++: Buiding a Concurrent C++ With Actors-Journal of Object-Oriented Programming-May/June 1990.
Kaiser G.E, Popovitch S.S, Hseush W and Wu S.F-MELDing Multiple Granularities of Parallelism-Proc European Conf on Object-Oriented Programming-July 1989.
R.H Halstead-Multilisp: A Language for Concurrent Symbolic Computation-Transactions on Programming Languages and Systems-October 1985.
Ishikawa Y and Tokoro M-Orient84/K: An Object-Oriented Concurrent Programming Language for Knowledge Representation-Object-Oriented Concurrent Programming-ed A Yonezawa and M Tokoro, The MIT Press-MA, 1987.
Leblanc R.J and Wilkes C.T-Systems Programming with Objects and Actions-Proc IEEE Conf on Distributed Computing Systems-1985.
Liskov B and Sheifler R-Guardians and Actions: Linguistic Support for Robust, Distributed Programs-ACM TOPLAS-July 1983.
Meyer B-Object-Oriented Software Construction: ed Prentice-Hall-1988.
Moss J.E.B-Nested Actions: an Approach to Reliable Distributed Computing-Ph.D thesis, Technical Report MIT/LCS/TR-260, MIT Laboratory for Computer Science, Cambridge, MA, 1981.
Moss J.E.B-Nested Transactions And Reliable Distributed Computing-Proc Symposium on Reliability in Distributed Software and Database Systems-July 1982.
Nierstrasz O.M-Active Objects in Hybrid-Proc Conf on Object-Oriented Programming, Systems, Languages and Applications-Orlando, October 1987.
Calton P and Jerre D.N-Design and Implementation of Nested Transactions in Eden-Proc Symp on Reliability in Distributed Software and Database Systems-March 1987.
Schantz R, Thomas R and Bono G-The Architecture of the CRONUS Distributed Operating System-Proc IEEE Conf on Distributed Computing Systems-May 1986.
A.H Skarra, S Zdonik-Concurrency Control and Object-Oriented Databases-in Object-Oriented Concepts, Databases, and Applications-ed W Kim and F.H Lochovsky, Addison Wesley, 1989.
Stroustrup B-The C++ Programming Language-Addison Wesley-1986.
Tony P.Ng-Using Histories to Implement Atomic Objects-Transactions on Programming Languages and Systems-November 1989.
Walker E, Floyd R and Neves P-Asynchronous Remote Operation Execution in Distributed Systems-Proc IEEE Conf on Distributed Computing Systems-May 1990.
Weihl W.E-Local Atomicity Properties: Modular Concurrency Control for Abstract Data Types-Transactions on Programming Languages and Systems-April 1989.
Yokote Y and Tokoro M-Concurrent Programming in Concurrent Smalltalk-Object-Oriented Concurrent Programming-ed A Yonezawa and M Tokoro, The MIT Press-MA, 1987.
Yonezawa A, Shibayama E, Takada T and Honda Y-Modelling and Programming in an Object-Oriented Concurrent Language ABCL/1-Object-Oriented Concurrent Programming-ed A Yonezawa and M Tokoro, The MIT Press-MA, 1987.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1992 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Guerraoui, R., Lanusse, A., Capobianchi, R., Roux, P. (1992). Nesting actions through asynchronous message passing : The ACS protocol. In: Madsen, O.L. (eds) ECOOP ’92 European Conference on Object-Oriented Programming. ECOOP 1992. Lecture Notes in Computer Science, vol 615. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053036
Download citation
DOI: https://doi.org/10.1007/BFb0053036
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-55668-8
Online ISBN: 978-3-540-47268-1
eBook Packages: Springer Book Archive