Rendezvous (Plan 9): Difference between revisions
Appearance
Content deleted Content added
Replaced {{unreferenced}} with {{more citations needed}} and other General fixes |
|||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{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 [[Process (computing)|processes]] to exchange a single datum while synchronizing. |
|||
'''Rendezvous''' is a [[data synchronization]] mechanism in [[Plan 9 from Bell Labs]]. It is a [[system call]] that allows two [[Process (computing)|processes]] to exchange a single datum while synchronizing.<ref>{{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}}</ref> |
|||
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. |
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. |
||
Line 8: | Line 10: | ||
* [[Synchronous rendezvous]] |
* [[Synchronous rendezvous]] |
||
* [[Communicating sequential processes]] |
* [[Communicating sequential processes]] |
||
==References== |
|||
{{Reflist}} |
|||
== External links == |
== 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 (computer programmer)|Ken Thompson]] and [[Gerard Holzmann]]. |
*[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 (computer programmer)|Ken Thompson]] and [[Gerard Holzmann]]. |
||
⚫ | |||
[[Category:Plan 9 from Bell Labs]] |
[[Category:Plan 9 from Bell Labs]] |
||
[[Category:Parallel computing]] |
[[Category:Parallel computing]] |
||
[[Category:Inter-process communication]] |
[[Category:Inter-process communication]] |
||
⚫ |
Latest revision as of 17:18, 30 April 2023
This article needs additional citations for verification. (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.[1]
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
[edit]References
[edit]- ^ Pike, Rob; Presotto, Dave; Dorward, Sean; Flandrena, Bob; Thompson, Ken; Trickey, Howard; Winterbottom, Phil (1995). "Plan 9 from Bell Labs". Computing systems. 8 (3). University of California Press: 221–254.
External links
[edit]- Process Sleep and Wakeup on a Shared-memory Multiprocessor by Rob Pike, Dave Presotto, Ken Thompson and Gerard Holzmann.