Misplaced Pages

Input/Output Supervisor

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

The Input/Output Supervisor ( IOS ) is that portion of the control program in the IBM mainframe OS/360 operating system and successors which issues the privileged I/O instructions and supervises the resulting I/O interruptions for any program which requests I/O device operations until the normal or abnormal conclusion of those operations.

#105894

6-529: IOS has two purposes: To facilitate the handling of the I/O requests and interrupts, IOS is divided into two primary program sections (CSECTs): These primary sections are resident in main storage and provide control program support for the normal execution of channel programs. The secondary program sections (also CSECTs), termed Error Recovery Procedures (ERPs), are, with but one exception, located on external storage, and are brought into main storage for recovery from

12-547: The IPL volume and on other volumes which contain datasets which may be concatenated with certain system datasets. IOS is designed around a multi-programming concept whereby operations on different I/O channels, control units and devices may be managed concurrently and apparently simultaneously. This concurrency and apparent simultaneity is present even in the most basic version of the OS, PCP, which otherwise supports only one user task, as

18-528: The OS, IOS is also designed around a multi-processing concept whereby all available processors, as many as two in MVS/370 and as many as sixteen in later instances of the OS (twelve were supported by IBM; sixteen were supported by Amdahl), are effectively and efficiently utilized. And, to best utilize this multi-processing capability, IOS's multi-programming implementation was partitioned into smaller executable units, in particular those which may be executed under

24-719: The abnormal execution of channel programs. In the early instances of the OS, these sections were brought into the Input/Output Supervisor's " transient area ", not unlike the OS/360 Control Program's Supervisor Call "transient areas". In post-MVT instances of the OS, these sections are located in the pageable linkpack area (PLPA) and are demand-paged. The sole exception is, of course, the ERP for direct-access storage devices , which must always remain resident in order to recover from possible I/O errors on

30-447: The single I/O interrupt by IOS yet this entire process, from start to finish, is made to appear to be synchronous to the application. Essentially, IOS is a hypervising operating system built on top of the OS itself, and entirely within it, not as a separable function. A very specialized hypervisor , to be sure, as the hypervisation is restricted to the several I/O instructions and the one I/O interruption. In MVS/370 and later instances of

36-401: The underlying hardware architecture has but one set of I/O instructions and but one I/O interruption, for accessing the devices and for accessing the resulting device status, respectively, available to support all attached I/O devices, hence all I/O device operations must be synchronously multiplexed in to the half-dozen privileged I/O instructions and asynchronously de-multiplexed out from

#105894