Next: Communications Directory
Up: Implementation
Previous: AMS Messages
MSP uses a single STREAM socket (path) in the INET domain to communicate
between any two tasks and a STREAM socket pair in the UNIX domain to
send/receive local (internal) messages. Messages on the sockets specify a
`queue' in the receiving task for which they are intended and a queue
in the sending task to which replies should be sent.
The MSP message reading function accepts a list of `receive' queues on which it
should look for messages and the MSP message sending function accepts a `send'
queue which specifies a socket and a receive queue in the other task.
N.B. the reply queue may be given as MSP__NULL_SENDQ (it is a send
queue in the task which has to reply).
AMS uses separate MSP queues within each task for:
- Receiving unexpected messages from other tasks (the command queue).
- Sending unsolicited messages to other tasks (other task's command queue).
- Receiving replies to a sent message which initiates a transaction - each
transaction has its own queue (reply queue).
- Sending replies as part of a transaction (other task's reply queue)
- Sending local (internal) messages (one for each internal message type).
- sigast_q
- sigext_q
- sigkick_q
- sigresch_q
- sigtimeout_q
- Receiving local (internal) messages (one for each internal message type).
- astint_q
- extint_q
- kick_q
- resched_q
- timeout_q
The AMS user will not need to know about MSP queues.
Next: Communications Directory
Up: Implementation
Previous: AMS Messages
AMS The Unix ADAM Message System
Starlink User Note 241
B D Kelly (ROE)
A J Chipperfield (RAL)
16 August 2001
E-mail:ussc@star.rl.ac.uk
Copyright
© 2000 Council for the Central Laboratory of the Research Councils