Skip to main content

Nesting actions through asynchronous message passing : The ACS protocol

  • Conference paper
  • First Online:
ECOOP ’92 European Conference on Object-Oriented Programming (ECOOP 1992)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 615))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bernstein P.A, Hadzilacos V and Goodman N-Concurrency Control and Recovery in Database Systems-Addison Wesley-1987.

    Google Scholar 

  2. Birell A and Nelson B-Implementing Remote Procedure Call-ACM Transactions on Computer Systems-February 1984.

    Google Scholar 

  3. 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.

    Google Scholar 

  4. Caromel D-Concurrency: an Object-Oriented Approach-Proc Conf on Technology of Object-Oriented Languages and Systems-June 1990.

    Google Scholar 

  5. Corradi A and Leonardi L-The Specification of Concurrency: An Object-based Approach-Proc IEEE Conference on Computers and Communications-March 1988.

    Google Scholar 

  6. Cheriton D-The V Distributed System-Comm ACM-March 1988.

    Google Scholar 

  7. 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.

    Google Scholar 

  8. 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.

    Google Scholar 

  9. Guerraoui R-“Customizing Concurrency Control in an Object-Oriented Framework”-Technical Report CEA, CE Saclay DEIN/SIR-March 1992.

    Google Scholar 

  10. Gray J.N-Notes on Database Operating Systems-Lecture Notes in Computer Science-Springer-1978.

    Google Scholar 

  11. Kafura D-ACT++: Buiding a Concurrent C++ With Actors-Journal of Object-Oriented Programming-May/June 1990.

    Google Scholar 

  12. 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.

    Google Scholar 

  13. R.H Halstead-Multilisp: A Language for Concurrent Symbolic Computation-Transactions on Programming Languages and Systems-October 1985.

    Google Scholar 

  14. 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.

    Google Scholar 

  15. Leblanc R.J and Wilkes C.T-Systems Programming with Objects and Actions-Proc IEEE Conf on Distributed Computing Systems-1985.

    Google Scholar 

  16. Liskov B and Sheifler R-Guardians and Actions: Linguistic Support for Robust, Distributed Programs-ACM TOPLAS-July 1983.

    Google Scholar 

  17. Meyer B-Object-Oriented Software Construction: ed Prentice-Hall-1988.

    Google Scholar 

  18. 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.

    Google Scholar 

  19. Moss J.E.B-Nested Transactions And Reliable Distributed Computing-Proc Symposium on Reliability in Distributed Software and Database Systems-July 1982.

    Google Scholar 

  20. Nierstrasz O.M-Active Objects in Hybrid-Proc Conf on Object-Oriented Programming, Systems, Languages and Applications-Orlando, October 1987.

    Google Scholar 

  21. 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.

    Google Scholar 

  22. Schantz R, Thomas R and Bono G-The Architecture of the CRONUS Distributed Operating System-Proc IEEE Conf on Distributed Computing Systems-May 1986.

    Google Scholar 

  23. 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.

    Google Scholar 

  24. Stroustrup B-The C++ Programming Language-Addison Wesley-1986.

    Google Scholar 

  25. Tony P.Ng-Using Histories to Implement Atomic Objects-Transactions on Programming Languages and Systems-November 1989.

    Google Scholar 

  26. Walker E, Floyd R and Neves P-Asynchronous Remote Operation Execution in Distributed Systems-Proc IEEE Conf on Distributed Computing Systems-May 1990.

    Google Scholar 

  27. Weihl W.E-Local Atomicity Properties: Modular Concurrency Control for Abstract Data Types-Transactions on Programming Languages and Systems-April 1989.

    Google Scholar 

  28. 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.

    Google Scholar 

  29. 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.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Ole Lehrmann Madsen

Rights and permissions

Reprints 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

Publish with us

Policies and ethics