Message Passing — Indirect Communication

Messages are directed and received through mailboxes. Each mailbox has a unique ID. Processes can only communicate if they share a mailbox.

The mailboxes here form the communication link, and can be shared between multiple processes. Each pair of processes may share several communication links. This link may be either uni-directional or bi-directional.

The OS provides operations to:

The main issue with a shared link such as this is determining which process receives a messsage. There are three main solutions to this: