Skip to main content

Lessons learned from building and using the Arjuna distributed programming system

  • Conference paper
  • First Online:
Theory and Practice in Distributed Systems

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

Abstract

Arjuna is an object-oriented programming system implemented in C++ that provides a set of tools for the construction of fault-tolerant distributed applications. This paper reports on the experience gained by building and using the system. It then describes how in light of this experience, a new version of the system is being designed.

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. ANSA Reference Manual, Cambridge, UK, 1991. (Available from APM Ltd., Poseiden House, Cambridge, UK.)

    Google Scholar 

  2. Birman, K. and T. Joseph, “Exploiting virtual synchrony in distributed systems”, in 11th Symposium on Operating System Principles, ACM SIGOPS, November 1987.

    Google Scholar 

  3. Birman, K., “The process group approach to reliable computing”, CACM, 36, 12, pp. 37–53, December 1993.

    Google Scholar 

  4. Buzato, L.E., and A. Calsavara, “Stabilis: A Case Study in Writing Fault-Tolerant Distributed Applications Using Persistent Objects,” Proceedings of the Fifth Int. Workshop on Persistent Objects, SanMiniato, Italy, September 1–4, 1992.

    Google Scholar 

  5. Buzato, L.E., “Management of Object-Oriented Action-Based Distributed Programs”, PhD Thesis, October 1994, Dept. of Computing Science, University of Newcastle upon Tyne, UK.

    Google Scholar 

  6. Calsvara, A., Doctoral research work in progress.

    Google Scholar 

  7. Caughey, S.J., G.D. Parrington and S.K. Shrivastava, “SHADOWS — A Flexible Support System for Objects in Distributed Systems”, Proc. of 3rd IEEE Intl. Workshop on Object Orientation in Operating Systems, pp. 73–82, Asheville, North Carolina, December 1993.

    Google Scholar 

  8. Caughey, S.J., and S.K. Shrivastava, “Architectural Support for Mobile Objects”, BROADCAST Project deliverable report, Vol. 3, October 1994 (available from Dept. of Computing Science, University of Newcastle upon Tyne, UK).

    Google Scholar 

  9. Cheriton, D.R., and D. Skeen, “Understanding the Limitations of Causally and Totally Ordered Communication”, Proc. of 14th ACM Symp. on Operating Systems Principles, Operating Systems Review, 27 (5), pp. 44–57, December 1993.

    Google Scholar 

  10. Rebuttals from Cornell, Operating Systems Review, 28 (1), January 1994.

    Google Scholar 

  11. Kiczales, G., “Towards a New Model of Abstraction in Software Engineering”, Proc. of Intl. Workshop on Reflection and Meta-Level Architecture, Tama-City, Tokyo, November 1992.

    Google Scholar 

  12. Little, M. C., D. L. McCue, and S. K. Shrivastava, “Maintaining Information about Persistent Replicated Objects in a Distributed System,” Proceedings of Thirteenth International Conference on Distributed Computing Systems, Pittsburgh, May 1993.

    Google Scholar 

  13. Little, M. C. and S. K. Shrivastava, “Object Replication in Arjuna,” BROADCAST Project deliverable report, Vol. 2, October 1994 (available from Dept. of Computing Science, University of Newcastle upon Tyne, UK).

    Google Scholar 

  14. Panzieri, F. and S.K. Shrivastava, “Rajdoot: a Remote Procedure Call Mechanism Supporting Orphan Detection and Killing”’ IEEE Trans. on Software Eng. 14, 1, pp. 30–37, January 1988.

    Google Scholar 

  15. Parrington, G. D., “Reliable Distributed Programming in C++: The Arjuna Approach,” Second Usenix C++ Conference, pp. 37–50, San Fransisco, April 1990.

    Google Scholar 

  16. Parrington, G.D., S.K. Shrivastava, S.M. Wheater and M.C. Little, ”The Design and Implementation of Arjuna”, BROADCAST Project deliverable report, Vol. 4, October 1994 (available from Dept. of Computing Science, University of Newcastle upon Tyne, UK).

    Google Scholar 

  17. Stroud, R. “Transparency and Reflection in Distributed Systems”, Operating Systems Review, Vol. 27, pp. 99–103, April 1993.

    Google Scholar 

  18. Shrivastava, S. K., G. N. Dixon, and G. D. Parrington, “An Overview of Arjuna: A Programming System for Reliable Distributed Computing,” IEEE Software, Vol. 8, No. 1, pp. 63–73, January 1991.

    Google Scholar 

  19. Shrivastava, S. K., and D. McCue, “Structuring Fault-tolerant Object Systems for Modularity in a Distributed Environment,” IEEE Trans. on Parallel and Distributed Systems, Vol. 5, No. 4, pp. 421–432, April 1994.

    Google Scholar 

  20. Shrivastava, S. K., “To Catocs or not to Catocs, that is the‖“ Operating Systems Review, Vol. 28, pp. 11–14, October 1994.

    Google Scholar 

  21. Smith, J. A. and S.K. Shrivastava, “Fault Tolerant Execution of Computationally and Storage Intensive Programs on a Network of Workstations: a Case Study”, Technical Report, Dept. of Computing Science, University of Newcastle upon Tyne, UK, 1995.

    Google Scholar 

  22. Snow, C.R., M.C. Little and S.M. Wheater, “An experiment in the use of Arjuna: the Student Registration System”, paper in preparation.

    Google Scholar 

  23. Wheater, S. M. and S. K. Shrivastava, “Exercising Application Specific Run-time Control over Clustering of Objects,” Proc. of IEEE Second Intl. Workshop on Configurable Distributed Systems, March, 1994, Pittsburgh, pp. 72–81.

    Google Scholar 

  24. Wheater, S.M., and M.C. Little,”The Design and Implementation of an Extensible Software Development Framework”, Technical Report, Dept. of Computing Science, University of Newcastle upon Tyne, UK, 1995.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Kenneth P. Birman Friedemann Mattern André Schiper

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Shrivastava, S.K. (1995). Lessons learned from building and using the Arjuna distributed programming system. In: Birman, K.P., Mattern, F., Schiper, A. (eds) Theory and Practice in Distributed Systems. Lecture Notes in Computer Science, vol 938. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60042-6_2

Download citation

  • DOI: https://doi.org/10.1007/3-540-60042-6_2

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60042-8

  • Online ISBN: 978-3-540-49409-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics