[Info-vax] QIO Writes to a mailbox

Michael Moroney moroney at world.std.spaamtrap.com
Sun Nov 6 00:07:13 EDT 2011


JF Mezei <jfmezei.spamnot at vaxination.ca> writes:

>Michael Moroney wrote:

>> It works as you state if and only if you specify the IO$M_NOW modifier.
>> 
>> Without it, writes will wait until another process issues a read for the
>> same data.


>But doesn't mean that the data in the user's buffer is not copied to the
>mailbux device's buffer where it is queued for delivery.

>It only means that the IO is not deemed complete until that message has
>been read from the mailbox.

>Since mailbox devices are FIFO devices capable of holding multiple
>messages (depending on the declared buffer size and size of messages),
>wouldn't the QIO immediatly want to claim its position in the mailbox
>buffer and queue the message for delivery right away, and then wait (if
>not IO$_M_NOW) for the message to get to the head of the queue and then
>read ?


I honestly don't know for sure when the buffer is copied, and if it is 
copied before the read (I think it is) I don't know whether a $QIO is 
guaranteed to not resume execution to the calling routine before the 
buffer is copied.



More information about the Info-vax mailing list