Control Messages<A NAME=1054> </A>



next up previous contents index
Next: PVM Daemon Up: Messages Previous: Pvmd Entry Points

Control Messages 

 

Control messages are sent to a task like regular messages, but have tags in a reserved space (between TC_FIRST and TC_LAST). Normally, when a task downloads a message, it queues it for receipt by the program. Control messages are instead passed to pvmmctl() and then discarded. Like the entry points in the pvmd, pvmmctl() is an entry point in the task, causing it to take some asynchronous action. The main difference is that control messages can't be used to get the task's attention, since it must be in mxfer(), sending or receiving, in order to get them.

The following control message tags are defined. The first three are used by the direct routing mechanism (discussed in Section gif). TC_OUTPUT is used to implement pvm_catchout() (Section gif). User-definable control messages may be added in the future as a way of implementing PVM signal handlers .

Tag            Meaning
----------------------------------------
TC_CONREQ      Connection request
TC_CONACK      Connection ack
TC_TASKEXIT    Task exited/doesn't exist
TC_NOOP        Do nothing
TC_OUTPUT      Claim child stdout data
TC_SETTMASK    Change task trace mask
----------------------------------------