skip to main content
article
Free Access

Implementation of Argus

Authors Info & Claims
Published:01 November 1987Publication History
Skip Abstract Section

Abstract

Argus is a programming language and system developed to support the construction and execution of distributed programs. This paper describes the implementation of Argus, with particular emphasis on the way we implement atomic actions, because this is where Argus differs most from other implemented systems. The paper also discusses the performance of Argus. The cost of actions is quite reasonable, indicating that action systems like Argus are practical.

References

  1. 1 Birrell, A. D., and Nelson, B. J. "Implementing remote procedure calls". ACM Trans. on Computer Systems ~, 1 (February 1984).]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. 2 Blasgen, M., Gray, J., Mitoma, M., and Price, T. "The convoy phenomenon". ACM Operating Systems Review 13, 2 (Apr" ~.979).]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. 3 Bloom, T. Dynamic module replacement in a distributed programming system. Technical Report MIT/LCS/TR-303, M.I.T. Laboratory for Computer Science, Cambridge Ma., 1983.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. 4 Dijkstra, E.W. "The structure of the 'THE'-multiprogramming system" Comm. of the ACM 11, 5 (May 1968).]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. 5 Gray, J. N., Lorie, R. A., Putzolu, G. F., and Traiger, I. L. Granularity of locks and degrees of consistency in a shared data base. In Modeling in Data Base Management Systems, G.M. Nijssen, Ed., North Holland, 1976.]]Google ScholarGoogle Scholar
  6. 6 Gray, J.N. Notes on data base operating systems. In Lecture Notes in Computer Science, Goos and Hartmanis, Eds., Springer- Verlag, 1978, pp. 393-481.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. 7 Gray, J. N., et al. "The Recovery Manager of the System R Database Manager". ACM Computing Surveys 18, 2 (June 1981), 223-242.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 8 Greif, I., Seliger, R., and Weihl, W. A Case Study of CES: A istributed Collaborative Editing System Implemented in Argus. Programming Methodology Group Memo 55, MiT Laboratory for Computer Science, Cambridge, Ma., April, 1987. To be published in IEEE Trans. on Software Engineering.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. 9 Herlihy, M. P., and Liskov, B. "A value transmission method for abstract data types". AOM Trans. on Programming Languages and Systems 4, 4 (October 1982), 527~551.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. 10 Hwang, D. Constructing Highly-Available Services in a Distributed Environment. S.M. Thesis, M.I.T. Dept. of Electrical Engineering and Computer Science, Cambridge, Ma., forthcoming.]]Google ScholarGoogle Scholar
  11. 11 Kolodner, E. Recovery Using Virtual Memory. Technical Report MIT/LCS/TR-404, MIT Laboratory for Computer Science, Cambridge, Ma., 1987.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. 12 Lampson, B., and Redell, D. "Experience with processes and monitors in Mesa". Comm. of the ACM 23, 2 (February 1980), 105-117.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 13 Lampson, B. W., and Sturgis, H. E. Crash Recovery in a Distributed Data Storage System. Xerox Research Center, Palo Alto, Ca., 1979.]]Google ScholarGoogle Scholar
  14. 14 Lindsay, B. G., etal. u Computation and communication in R*: A distributed database manager" ACM Trans. on Computer Systems ~, 1 (February 1984).]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 15 Liskov, B., and Scheifler, R.W. "Guardians and actions: linguistic support for robust, distributed programs". ACM Trans. on Programming Languages and Systems 5, 3 (July 1983), 381-404.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 16 Liskov, B. Overview of the Argus language and system. Programming Methodology Group Memo 40, M.I.T. Laboratory for Computer Science, Cambridge, Ma., February, 1984.]]Google ScholarGoogle Scholar
  17. 17 Liskov, B., Scheifier, R., Walker, E., and Weihl, W. Orphan Detection. Programming Methodology Group Memo 53, M.I.T. Laboratory for Computer Science, Cambridge, Ma., 1987. Also published in Proc. of the 17th International Symposium on Fault- Tolerant Computing, July 1987.]]Google ScholarGoogle Scholar
  18. 18 Liskov, B., Bloom, T., Gifford, D., Scheifier, R., and Weihl, W. Communication in the Mercury System. Submitted for publication.]]Google ScholarGoogle Scholar
  19. 19 Liskov, B., and Shrira, L. Promises: Linguistic Support for Efficient Asynchronous Procedure Calls in Distributed Systems. Submitted for publication.]]Google ScholarGoogle Scholar
  20. 20 Liskov, B., and Guttag, J. Iteration Abstraction. In Abstraction and Specification in Program Development, MIT Press and McGraw Hill, 1986.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 21 Mohan, C., and Lindsay, B. Efficient commit protocols for the tree of processes model of distributed transactions. Proc. of the Second Annual Symposium on Principles of Distributed Computing, ACM, August, 1983.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. 22 Moss, J. E.B.. Nested transactions: an approach to reliable distributed computing. The MIT Press, Cambridge, Ms., 1985.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 23 Mueller, E., Moore, J., and Popek, G. A nested transaction mechanism for LOCUS. Proc. of the Ninth ACM Symposium on Operating Systems Principles, ACM, October, 1983.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. 24 Needham, R., Herbert, A., and Mitchell, J. "How to connect stable memory to a computer". ACM Operating Systems Review 17, 1 (January 1983).]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. 25 Nelson, B. Remote procedure call. Technical Report CMU- CS-81-119, Carnegie Mellon University, Pittsburgh, Pa., 1981.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. 26 Oki, B., Liskov, B., and Scheifier, R. Reliable object storage to support atomic actions. Proc. of the ACM Tenth Symposium on Operating Systems Principles, ACM, 1985.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. 27 Postel, J. Internet User Datagram Protocol. Network Information Center RFC-768, USC/Information Sciences Institute, August, 1980.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. 28 Saltzer, J. H., Reed, D. P., and Clark, D.D. "End-to-end arguments in system design" ACM Trans. on Computer Systems 2, 4 (November 1984), 277-288.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. 29 Spector, A. Z., et al. Camelot: A Distributed Transaction Facility for Mach and the Internet -- An Interim Report. Technical Report CMU-CS-87-129, Dept. of Computer Science, Carnegie Mellon University, Pittsburgh, Pa., 1987.]]Google ScholarGoogle Scholar
  30. 30 Weihl, W., and Liskov, B. "Implementation of Resilient, Atomic Data Types" ACM Trans. on Programming Languages and Systems 7, 2 (April 1985), 244-269.]] Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Implementation of Argus

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM SIGOPS Operating Systems Review
        ACM SIGOPS Operating Systems Review  Volume 21, Issue 5
        Nov. 1987
        162 pages
        ISSN:0163-5980
        DOI:10.1145/37499
        Issue’s Table of Contents
        • cover image ACM Conferences
          SOSP '87: Proceedings of the eleventh ACM Symposium on Operating systems principles
          November 1987
          162 pages
          ISBN:089791242X
          DOI:10.1145/41457

        Copyright © 1987 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 November 1987

        Check for updates

        Qualifiers

        • article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader