Next: References
Up: Sketch of a ``Device-Level''
Previous: Eager send protocol
This assumes the protocol:
-
source sends ready-to-send
-
destination sends ready-to-receive
-
data is exchanged
Data is never buffered, although ready-to-send messages may be.
This protocol is likely to be more efficient for long messages, because
it eliminates the need to copy data from input-buffer to user space.
A ready-to-receive message can include an identifier for the request
object at the receiving end. The sending end can reflect this id in the
header of the data packet, allowing the input handler at the receiving
end to retrieve the relevant request when the data arrives.
Figure 7: Pseudocode for isend method (rendezvous protocol)
Figure 8: Pseudocode for irecv method (rendezvous protocol)
Figure 9: Pseudocode for waitany method (rendezvous protocol)
Figure 10: Pseudocode for input handler threads (rendezvous protocol)
Bryan Carpenter
Tue Nov 23 10:50:26 EST 1999