CEG 7370: Distributed Computing Principles

Synchronous Message Passing SMP

Prabhaker Mateti

This web page is organized in way that is useful during my lecture, instead of ppt slides.


Synchronous Message Passing SMP

  1. send message e to process B
    -- e an expression
  2. receive message x from process A
    -- var x local to B
  3. receiver waits for a message
  4. send operation blocks until received
    -- implies no/zero buffering
    -- implied synchronization
    -- cannot send messages to self
    -- communication + sync
  5. sender and receiver execute independently
  6. "time gap" between send and the corresponding receive is "zero"
  7. "time taken" by send and the corresponding receive is ...

PL constructs for SMP

  1. Q ! e   to process Q send the value of expression e
  2. P ? v   receive message sent by P and deposit it in variable v
  3. based on CSP

References

  1. Gregory R. Andrews, Concurrent Programming: Principles and Practice, Benjamin/Cummings, 1991. Chapter 8 on SMP and also Section 10.2 on Occam. Required Reading.
  2. C. A. R. Hoare, ``Communicating Sequential Processes,'' Communications of the ACM, 1978, Vol. 21, No. 8, 666-677. This paper has many exercises for you to do.

Copyright © 2014 Prabhaker Mateti