Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
QIO
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== 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 that 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 '''[[Asynchronous system trap|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.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)