Rendezvous (Plan 9)
{{More citations needed|date=April 2023}}
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.{{Cite journal |last=Pike |first=Rob |last2=Presotto |first2=Dave |last3=Dorward |first3=Sean |last4=Flandrena |first4=Bob |last5=Thompson |first5=Ken |last6=Trickey |first6=Howard |last7=Winterbottom |first7=Phil |date=1995 |title=Plan 9 from Bell Labs |journal=Computing systems |publisher=University of California Press |volume=8 |issue=3 |pages=221–254}}
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
References
{{Reflist}}
External links
- [http://doc.cat-v.org/plan_9/4th_edition/papers/sleep Process Sleep and Wakeup on a Shared-memory Multiprocessor] by Rob Pike, Dave Presotto, Ken Thompson and Gerard Holzmann.
Category:Plan 9 from Bell Labs
Category:Inter-process communication
{{operating-system-stub}}