Jump to content

Rendezvous (Plan 9): Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
BattyBot (talk | contribs)
 
(24 intermediate revisions by 21 users not shown)
Line 1: Line 1:
{{More citations needed|date=April 2023}}
'''Rendezvous''' is a [[synchronization]] mechanism in the [[Plan 9]] [[operating system]]. It is a [[system call]] that allows two [[process]]es to exchange a single data item 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>
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.
More complex syncronization mechanisms can be created from this primitive operation. See also [[mutual exclusion]].

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

==See also==
* [[Synchronous rendezvous]]
* [[Communicating sequential processes]]

==References==
{{Reflist}}


== External links ==
== External links ==
*[http://www.cs.bell-labs.com/sys/doc/sleep.html Rendezvous paper] - Process Sleep and Wakeup on a Shared-memory Multiprocessor
*[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]].

{{stub}}
[[Category:Plan 9 from Bell Labs]]
[[Category:Parallel computing]]
[[Category:Inter-process communication]]


{{operating-system-stub}}

Latest revision as of 17:18, 30 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]
  1. ^ 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.
[edit]