Abstract
This paper addresses linguistic issues that arise in providing support for shared resources in large scale concurrent systems. Our work is based on the Actor Model of computation which unifies the lambda calculus, the sequential stored-program and the object-oriented models of computation. We show how receptionists can be used to regulate the use of shared resources by scheduling their access and providing protection against unauthorized or accidental access. A shared financial account is an example of the kind of resource that needs a receptionist. Issues involved in the implementation of scheduling policies for shared resources are also addressed. The modularity problems involved in implementing servers which multiplex the use of physical devices illustrate how delegation aids in the implementation of parallel problem solving systems for communities of actors.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
[Atkinson and Hewitt 79] Atkinson, R. and Hewitt, C. Specification and Proof Techniques for Serializers. IEEE Transactions on Software Engineering SE-5 No. 1, IEEE, January, 1979.
[Attardi and Simi 81] Attardi, G. and Simi, M. Semantics of Inheritance and Attributions in the Description System Omega. Proceedings of IJCAI 81, IJCAI, Vancouver, B.C., Canada, August, 1981.
[Backus 78] Backus, J. Can Programming be Liberated from the von Neumann Style? A Functional Style and Its Algebra of Programs. Communications of the ACM 21, 8 (August 1978),613–641.
[Baker 78] Baker, H. Actor Systems for Real-Time Computation. Technical Report 197, Mit Laboratory for Computer Science, 1978.
[Baker and Hewitt 77] Baker, H. and Hewitt, C. The Incremental Garbage Collection of Processes. Conference Record of the Conference on AI and Programming Languages, ACM, Rochester, New York, August, 1977, pp.55–59.
[Barber, de Jong, and Hewitt 83] Barber, G.R., de Jong, S.P., and Hewitt, C. Semantic Support for Work in Organizations. Proceedings of IFIP-83, IFIP, Sept., 1983.
[Birtwistle, Dahl, Myhrhaug, and Nygaard 73] Birtwistle, G.M., Dahl, O-J., Myhrhaug, B., Nygaard, K. Simula Begin. Van Nostrand Reinhold, New York, 1973.
[Bobrow and Stefik 82] Bobrow, D. G., Stefik, M. J. Loops: An Object Oriented Programming System for Interlisp. Xerox PARC, 1982.
[Borgida, Mylopoulos, and Wong 82] Borgida, A., Mylopoulos, J.L., Wong, H. K. T. Generalization as a Basis for Software Specification. Perspectives on Conceptual Modeling, Springer-Verlag, 1982.
[Borning and Ingalls 82] Borning, A. H., Ingalls, D. H. Multiple Inheritance in Smalltalk-80. Proceedings of the National Conference on Artificial Intelligence, AAAI, August, 1982.
[Brock and Ackerman 78] Brock, J.D. and Ackerman, W.B. An Anomoly in the Specifications of Nondeterminate Packet Systems. Tech. Rep. Computation Structures Group None 33–1, M.I.T., January, 1978.
[Clinger 81] Clinger, W.D. Foundations of Actor Semantics. AI-TR-633, MIT Artificial Intelligence Laboratory, May, 1981.
[Curry, Baer, Lipkie, and Lee 82] Curry, G., Baer, L., Lipkie, D., Lee B. Traits: An Approach to Multiple-Inheritance Subclassing. Conference on Office Information Systems, ACM SIGOA, June, 1982.
[Dijkstra 77] Dijkstra, E. W. A Discipline of Programming. Prentice-Hall, 1977.
[Friedman and Wise 76] Friedman, D. P., Wise, D. S. The Impact of Applicative Programming on Multiprocessing. Proceedings of the International Conference on Parallel Processing, ACM, 1976, pp. 263–272.
[Greif 75] Greif, I. Semantics of Communicating Parallel Processes. Technical Report 154, MIT, Project MAC, 1975.
[Hewitt 75] Hewitt, C.E. Protection and Synchronization in Actor Systems. SIGCOMMSIGOPS Interface Workshop on Interprocess Communications, ACM, March, 1975.
[Hewitt 77] Hewitt, C.E. Viewing Control Structures as Patterns of Passing Messages. Journal of Artificial Intelligence 8–3 (June 1977), 323–364.
[Hewitt 83] Hewitt, C.E. Open Systems. Perspectives on Conceptual Modeling, Springer-Verlag, 1983.
[Hewitt and Baker 77] Hewitt, C. and Baker, H. Laws for Communicating Parallel Processes. 1977 IFIP Congress Proceedings, IFIP, August, 1977, pp. 987–992.
[Hewitt and de Jong 83] Hewitt, C., de Jong, P. Analyzing the Roles of Descriptions and Actions in Open Systems. Proceedings of the National Conference on Artificial Intelligence, AAAI, August, 1983.
[Hewitt, Attardi, and Lieberman 79a] Hewitt C., Attardi G., and Lieberman H. Specifying and Proving Properties of Guardians for Distributed Systems. Proceedings of the Conference on Semantics of Concurrent Computation, Vol. 70, INRIA, Springer-Verlag, Evian, France, July, 1979, pp. 316–336.
[Hewitt, Attardi, and Lieberman 79b] Hewitt, C. E., Attardi, G., and Lieberman, H. Delegation in Message Passing. Proceedings of First International Conference on Distributed Systems, ACM, Huntsville, October, 1979.
[Hoare 74] Hoare, C. A. R. Monitors: An Operating System Structuring Concept. CACM (October 1974).
[Hoare 76] Hoare, C.A.R. Language Hierarchies and Interfaces. In Lecture Notes in Computer Science, Springer-Verlag, 1976.
[Hoare 78] Hoare, C. A. R. Communicating Sequential Processes. CACM 21, 8 (August 1978), 666–677.
[Kahn 81] Kahn, K. Uniform—A Language Based Upon Unification which Unifies (much of) Lisp, Prolog, and Act 1. University of Uppsala, March, 1981.
[Kornfeld and Hewitt 81] Kornfeld, W. A. and Hewitt, C. The Scientific Community Metaphor. IEEE Transactions on Systems, Man, and Cybernetics SMC-11, 1 (January 1981).
[Landin 65] Landin, P. A Correspondence Between ALGOL 60 and Church's Lambda Notation. Communication of the ACM 8, 2 (February 1965).
[McCarthy 62] McCarthy, John. LISP 1.5 Programmer's Manual. The MIT Press, Cambridge, Ma., 1962.
[Milner 79] Milner, R. Flowgraphs and Flow Algebras. JACM 26, No. 4 (1979).
[Reynolds 74] Reynolds, J.C. On the Relation Between Direct and Continuation Semantics. Proceedings of the Second Colloquium on Automata, Language and Programming, Springer-Verlag, 1974.
[Strachey and Wadsworth 74] Strachey, C. and Wadsworth, C.P. Continuations-A Mathematical Semantics for Handling Full Jumps. University of Oxford, Programming Research Group, 1974.
[Ward and Halstead 80] Ward, S. and Halstead, R. A Syntactic Theory of Message Passing. JACM 27, No. 2 (1980), 365–383.
[Weinreb and Moon 81] Weinreb, D. and Moon D. LISP Machine Manual. MIT, 1981.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1985 Springer-Verlag
About this paper
Cite this paper
Hewitt, C., Reinhardt, T., Agha, G., Attardi, G. (1985). Linguistic support of receptionists for shared resources. In: Brookes, S.D., Roscoe, A.W., Winskel, G. (eds) Seminar on Concurrency. CONCURRENCY 1984. Lecture Notes in Computer Science, vol 197. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-15670-4_16
Download citation
DOI: https://doi.org/10.1007/3-540-15670-4_16
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-15670-3
Online ISBN: 978-3-540-39593-5
eBook Packages: Springer Book Archive