When a process executes an I/O statement, the central processor must execute some operating system code to initiate the I/O operation. Thereafter, I/O processors (IOPs) and various peripheral devices such as disk drives might all devote varying amounts of time to executing the I/O operation. At the completion of the I/O operation, the central processor executes some I/O finish code.
The I/O time recorded by the system for individual processes includes I/O initiation time as well as actual device time. The accumulated I/O time for a process is stored in the ACCUMIOTIME task attribute. The I/O time for a process is also visible in the output from the TI (Times) system command and in the Major Type 1, Minor Types 2 and 4 (EOJ and EOT) system log entries.
You can use the MAXIOTIME task attribute to set a limit on the amount of I/O time that a process can use. When the ACCUMIOTIME task attribute reaches a value equal to that of MAXIOTIME, the system discontinues the process and displays the error message I/O TIME EXCEEDED.
The main use of the MAXIOTIME task attribute is to ensure that WFL jobs are placed in the proper job queues. For example, suppose there is a high-priority job queue that is intended for jobs that are not very I/O intensive. The system administrator can use the IOTIME job queue attribute to provide default and limiting values for the MAXIOTIME task attribute of all WFL jobs that use the job queue. If you submit an extremely I/O intensive job through the job queue, the system discontinues the job when it exceeds the MAXIOTIME value. This enforcement of the MAXIOTIME value gives you an incentive to resubmit the job through a different job queue. For an introduction to the subject of job queues, refer to the discussion of WFL in Tasking from Programming Languages.
It is also possible for the system administrator to limit each person's usage of disk space. Refer to Limiting Disk Usage earlier in this section.

