Rendezvous (Plan 9): Difference between revisions
Appearance
Content deleted Content added
m Robot-assisted disambiguation (you can help!): Ken Thompson |
m Robot-assisted fixing links to disambiguation page (you can help!) Process |
||
Line 1: | Line 1: | ||
'''Rendezvous''' is a [[synchronization]] mechanism in [[Plan 9 from Bell Labs]]. It is a [[system call]] that allows two [[ |
'''Rendezvous''' is a [[synchronization]] mechanism in [[Plan 9 from Bell Labs]]. It is a [[system call]] that allows two [[Process (computing)|processes]] to exchange a single data item while synchronizing. |
||
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. |
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. |
Revision as of 16:07, 5 July 2006
Rendezvous is a synchronization mechanism in Plan 9 from Bell Labs. It is a system call that allows two processes to exchange a single data item while synchronizing.
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.