Jump to content

Rendezvous (Plan 9)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Sebastian Hudak (talk | contribs) at 17:15, 2 September 2020 (added no references template). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Rendezvous is a data synchronization mechanism in Plan 9 from Bell Labs. It is a system call that allows two processes to exchange a single datum while synchronizing.

The rendezvous call takes a tag and a value as its arguments. The tag is typically an address in memory shared by both processes. Calling rendezvous causes a process to sleep until a second rendezvous call with a matching tag occurs. Then, the values are exchanged and both processes are awakened.

More complex synchronization mechanisms can be created from this primitive operation. See also mutual exclusion.

See also