Advertisement

Nesting actions through asynchronous message passing : The ACS protocol

  • Rachid Guerraoui
  • Agnes Lanusse
  • Riccardo Capobianchi
  • Pierre Roux
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 615)

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.

Keywords

Parent Action Request Message Concurrency Control Nest Action Remote Procedure Call 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bernstein P.A, Hadzilacos V and Goodman N-Concurrency Control and Recovery in Database Systems-Addison Wesley-1987.Google Scholar
  2. 2.
    Birell A and Nelson B-Implementing Remote Procedure Call-ACM Transactions on Computer Systems-February 1984.Google Scholar
  3. 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. 4.
    Caromel D-Concurrency: an Object-Oriented Approach-Proc Conf on Technology of Object-Oriented Languages and Systems-June 1990.Google Scholar
  5. 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. 6.
    Cheriton D-The V Distributed System-Comm ACM-March 1988.Google Scholar
  7. 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. 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. 9.
    Guerraoui R-“Customizing Concurrency Control in an Object-Oriented Framework”-Technical Report CEA, CE Saclay DEIN/SIR-March 1992.Google Scholar
  10. 10.
    Gray J.N-Notes on Database Operating Systems-Lecture Notes in Computer Science-Springer-1978.Google Scholar
  11. 11.
    Kafura D-ACT++: Buiding a Concurrent C++ With Actors-Journal of Object-Oriented Programming-May/June 1990.Google Scholar
  12. 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. 13.
    R.H Halstead-Multilisp: A Language for Concurrent Symbolic Computation-Transactions on Programming Languages and Systems-October 1985.Google Scholar
  14. 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. 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. 16.
    Liskov B and Sheifler R-Guardians and Actions: Linguistic Support for Robust, Distributed Programs-ACM TOPLAS-July 1983.Google Scholar
  17. 17.
    Meyer B-Object-Oriented Software Construction: ed Prentice-Hall-1988.Google Scholar
  18. 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. 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. 20.
    Nierstrasz O.M-Active Objects in Hybrid-Proc Conf on Object-Oriented Programming, Systems, Languages and Applications-Orlando, October 1987.Google Scholar
  21. 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. 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. 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. 24.
    Stroustrup B-The C++ Programming Language-Addison Wesley-1986.Google Scholar
  25. 25.
    Tony P.Ng-Using Histories to Implement Atomic Objects-Transactions on Programming Languages and Systems-November 1989.Google Scholar
  26. 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. 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. 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. 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

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • Rachid Guerraoui
    • 1
  • Agnes Lanusse
    • 1
  • Riccardo Capobianchi
    • 1
  • Pierre Roux
    • 1
  1. 1.CE Saclay DEIN/SIRGif sur Yvette CedexFrance

Personalised recommendations