d operation: locSend(in receiver localSAPI, localSDU). This opera- tion allows a platform application to send data to any other named application on the platform. The operation is non-blocking, i.e. the application continues execution directly after a locSend. A local receive operation: locRec(in sender LocalSAPI; out localSDU). This operation allows a receiving platform application to receive data from a named sending application. The operation is selectively blocking, i.e. the receiving application is blocked from further communication with the sending application, until the named sender sends something to the receiving application. A more common form in existing platforms is locRec(out localSDU), i.e. the receiving application takes data from any other sending application. It is blocked as long as no other application sends something to it. We will, however, use the more selective operation to simplify the discussion. A remote procedure call: sendRec(in receiver localSAPI, Timer, localSDU; out response), where response is either a time-out or a localSDU. This operation allows an application to send a localSDU and wait for a responding localSDU. The operation blocks the calling application completely until either the called application provides a localSDU in response, or the time exceeds the Timer- value. Under some circumstances a calling application itself may decide when to receive the response. In that case, it could use locSend and locRec combined with a separate timer. The locSend, locRec and sendRec operations can be found in most software lan- guages for real-time applications. My company uses an in-house developed lan- guage (called Plex), that defines three such operations, although they are more sophisticated than we need to consider in this discussion. Some platforms provide much more advanced operations. An early overview of communication primitives for distributed applications in different software languages can be found in Sloman and Kramer (1987). Some similarities also exist between these gener