Skip to main content

Implementing Concurrency Control in Reliable Distributed Object-Oriented Systems

  • Conference paper
  • First Online:

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

Abstract

One of the key concepts available in many object-oriented programming languages is that of type-inheritance, which permits new types to be derived from, and inherit the capabilities of, old types. This paper describes how to exploit this property in a very simple fashion to implement object-oriented concurrency control. We show how by using type-inheritance, objects may control their own level of concurrency in a type-specific manner. Simple examples demonstrate the applicability of the approach. The implementation technique described here is being used to develop Arjuna, a fault-tolerant distributed programming system supporting atomic actions.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Best, E., and B. Randell, “A Formal Model of Atomicity in Asynchronous Systems”, Acta Inforrnatica, 16, pp. 93–124, 1981.

    Article  MATH  Google Scholar 

  2. Birman, K.P., “Replication and Fault Tolerance in the ISIS System”, Proceedings of 10th Symposium on the Principles of Operating Systems, ACM Operating Systems Review, Vol. 19, No. 4, pp. 79–86, 1985.

    Article  Google Scholar 

  3. Dasgupta et al. 85_Dasgupta, P., R.J. LeBlanc Jr., and E. Spafford, “The Clouds Project: Designing and Implementing a Fault Tolerant, Distributed Operating System,” Technical Report GIT-ICS-85/29, Georgia Institute of Technology, 1985.

    Google Scholar 

  4. Dixon, G.N., “Managing Objects for Persistence and Recoverability,” Ph.D Thesis, Computing Laboratory, University of Newcastle upon Tyne, in preparation.

    Google Scholar 

  5. Dixon, G.N., and S.K. Shrivastava, “Exploiting Type-Inheritance Facilities to Implement Recoverability in Object Based Systems”, Proceedings of 6th Symposium on Reliability in Distributed Software and Database Systems, Williamsburg, pp. 107–114, March 1986.

    Google Scholar 

  6. Dixon, G.N., S.K. Shrivastava, and G.D. Parrington, “Managing Persistent Objects in Arjuna: A System for Reliable Distributed Computing,” Proceedings of the Workshop on Persistent Object Systems, Persistent Programming Research Report 44, Department of Computational Science, University of St. Andrews, August 1987.

    Google Scholar 

  7. Eswaran, K.P., et al., “On the Notions of Consistency and Predicate Locks in a Database System”, Communications of the ACM, Vol. 19, No. 11, pp. 624–633, 1976.

    Article  MATH  MathSciNet  Google Scholar 

  8. Gray, J.N., “Notes on Data Base Operating Systems”, in Operating Systems: An Advanced Course, eds. R. Bayer, R.M. Graham, and G. Seegmueller, pp. 393–481, Springer, 1978.

    Google Scholar 

  9. Herlihy, M.P., “Optimistic Concurrency Control for Abstract Data Types”, Proceedings of the Fifth Annual ACM Symposium on Principles of Distributed Computing, pp. 206–216, Calgary, Alberta, August 1986.

    Google Scholar 

  10. Herlihy, M.P., and J.M. Wing, “Avalon: Language Support for Reliable Distributed Systems,” Digest of Papers FTCS-17: Seventeenth Annual International Symposium on Fault-Tolerant Computing, pp. 89–94, Pittsburgh, July 1987.

    Google Scholar 

  11. Kung, H.T., and J.T. Robinson, “On Optimistic Methods for Concurrency Control”, ACM Transactions on Database Systems, Vol. 6, no. 2, pp. 213–226, June 1981.

    Article  Google Scholar 

  12. Liskov, B., and R. Scheifler, “Guardians and Actions: Linguistic Support for Robust Distributed Programs”, ACM Transactions on Programming Languages and Systems, Vol. 5, No. 3, pp. 381–404, 1983.

    Article  MATH  Google Scholar 

  13. Parrington, G.D., “Management of Concurrency in a Reliable Object-Oriented Computing System,” Ph.D Thesis, Computing Laboratory, University of Newcastle upon Tyne, in preparation.

    Google Scholar 

  14. Schwarz, P.M., and A.Z. Spector, “Synchronizing Shared Abstract Types”, ACM Transactions on Computer Systems, Vol. 2, No. 3, pp. 223–250, August 1984.

    Article  Google Scholar 

  15. Spector, A.Z., et al., “Support for Distributed Transactions in the TABS Prototype”, IEEE Transactions on Software Engineering, Vol. SE-11, No. 6, pp. 520–530. 1985.

    Article  Google Scholar 

  16. B. Stroustrup, The C++ Programming Language, Addison Wesley, 1986.

    Google Scholar 

  17. Weihl, W., “Specification and Implementation of Atomic Data Types,” Ph.D Thesis, MIT/LCS/TR-314, MIT Laboratory for Computer Science, Cambridge, Mass., March 1984.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1988 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Parrington, G.D., Shrivastava, S.K. (1988). Implementing Concurrency Control in Reliable Distributed Object-Oriented Systems. In: Gjessing, S., Nygaard, K. (eds) ECOOP ’88 European Conference on Object-Oriented Programming. ECOOP 1988. Lecture Notes in Computer Science, vol 322. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45910-3_14

Download citation

  • DOI: https://doi.org/10.1007/3-540-45910-3_14

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-50053-7

  • Online ISBN: 978-3-540-45910-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics