Advertisement

Loosely-Coupled Processes (Preliminary Version)

  • Jayadev Misra
Part of the Lecture Notes in Computer Science book series (LNCS, volume 506)

Abstract

A system of processes in which the interactions are solely through messages is often called loosely-coupled. Such systems are attractive from a programming viewpoint. They are designed by decomposing a specification into its separable concerns, each of which could then be implemented by a process; the operation of the system can be understood by asserting properties of the message sequences transmitted among the component processes. A key attribute of loosely-coupled systems is a guarantee that a message that has been sent cannot be unsent. As a consequence, a process can commence its computation upon receiving a message, with the guarantee that no future message it receives will require it to undo its previous computations.

Keywords

Shared Variable Local Store Component Process Mutual Exclusion Safety Property 
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. Arvind, Nikil, R.S. and K. K. Pingali [1989]. “I-Structures: Data Structures for Parallel Computing,” ACM TOPLAS, Vol 11, No. 4, October 1989, 598 - 632.CrossRefGoogle Scholar
  2. Chandy, K. M., and J. Misra [ 1988 ]. Parallel Program Design: A Foundation, Reading, Massachusetts: Addison-Wesley, 1988.MATHGoogle Scholar
  3. Chandy, K. Mani and Stephen Taylor, “A Primer for Program Composition Notation,” Caltech-CS-TR-90-10, June 20, 1990.Google Scholar
  4. Eswaran, K. P., Gray, J. N., Lorie, R. A. and I. L. Traiger, “The Notions of Consistency and Predicate Locks in a Database System,” C. ACM 19(11):624-633,November 1976.Google Scholar
  5. Gaifman, H., Maher, M. J., and E. Shapiro [ 1990. “Replay, Recovery, Replication and Snapshot of Nondeterministic Concurrent Programs,” Department of Applied Mathematics and Computer Science, The Weizmann Institute of Science, Rehovot, 76100, Israel, July 1990.Google Scholar
  6. C. A. R. Hoare, “Monitors: An Operating System Structuring Concept,” C. ACM, Vol. 17, No. 10, 549 - 557, October 1974.CrossRefMATHGoogle Scholar
  7. Lenoski, D., Gharachorloo, K., Laudon, J., Gupta, A., Hennessy, J., Horowitz, M. and Lam, M, M., “Design of Scalable Shared-Memory Multiprocessors: The DASH Approach,” Proc. ACM, Compcon, February, 1990.Google Scholar
  8. Lenoski, D., Laudon, J., Gharachorloo, K., Gupta, A. and Hennessy, J., “The Directory-Based Cache Coherence Protocol for the DASH Multiprocessor,” Proc. IEEE, 17th Annual International Symposium on Computer Architecture, 148-159, Seattle, WA, May, 1990.Google Scholar
  9. Misra, J. [ 1990 ]. “Specifying Concurrent Objects as Communicating Processes,” Science of Computer Programming 14 (1990), 159 - 184.MathSciNetCrossRefMATHGoogle Scholar
  10. Owicki, S., and D. Gries [1976]. “An Axiomatic Proof Technique for Parallel Programs I,” Acta Informatica, 6: 1, 1976, 319 - 340.MathSciNetCrossRefMATHGoogle Scholar
  11. Shapiro, E. [1989]. “The Family of Concurrent Logic Programming Languages,” ACM Computing Surveys, 21: 3, 412 - 510, 1989.CrossRefGoogle Scholar
  12. Steele, Guy L. Jr., “Making Asynchronous Parallelism Safe for the World,” Proc. 17th Annual ACM Symposium on Principles of Programming Languages, San Francisco, CA, January 17-19, 1990, pp. 218 - 231.Google Scholar
  13. Vishnubhotla, Prasad [1989], Prasad [1989]. “Concurrency and Synchronization in the ALPS Programming Language,” TR56, Ohio State University, 1989.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Jayadev Misra
    • 1
  1. 1.Department of Computer SciencesThe University of Texas at AustinAustinUSA

Personalised recommendations