QIO Arguments in VMS
Under VMS, the arguments to the QIO call are:
- The event flag to set when the operation completes. It isn't possible to not specify an event flag; flag 0 is valid. It is perfectly permissible to have multiple simultaneous operations which set the same event flag on completion; it is then up to the application to sort out any confusion this might cause, or just ignore that event flag.
- The channel, a small integer previously associated with the device. At this level, all operations on disk files and directories (filename parsing, directory lookup, file opening/closing) are done by appropriate QIO requests.
- The function code to be performed. 6 bits are assigned to the basic code (such as read, write), with a further 10 bits for "modifiers" whose meaning depend on the basic code.
- The optional I/O status block (IOSB) which is cleared by the QIO call, and filled in on completion of the I/O operation. The first two bytes hold the completion status (success, end of file reached, timeout, I/O error, etc.), while the next two bytes normally return the number of bytes read or written in the operation. The meaning, if any, of the last four bytes is operation-dependent.
- The optional AST routine to invoke when the operation completes.
- An additional parameter (whose meaning is up to the caller) to be passed to the AST routine.
- A partially standardized list of up to six parameters known as P1 through P6. The first two parameters typically specify the I/O buffer starting address (P1), and the I/O byte count (P2). The remaining parameters vary with the operation, and the particular device. For example, for a computer terminal, P3 might be the time to allow for the read to complete whereas, for a disk drive, it might be the starting block number of the transfer.
Read more about this topic: QIO
Famous quotes containing the word arguments:
“Because a person is born the subject of a given state, you deny the sovereignty of the people? How about the child of Cuban slaves who is born a slave, is that an argument for slavery? The one is a fact as well as the other. Why then, if you use legal arguments in the one case, you dont in the other?”
—Franz Grillparzer (17911872)