Input/Output Configuration Program

From Wikipedia, the free encyclopedia
Jump to: navigation, search
This article is about Input/Output Configuration Program. For the IOCP API, see Input/output completion port.
Input/Output Configuration Program
Original author(s) IBM
Developer(s) IBM
Operating system stand alone, z/OS, z/VM, z/VSE
Platform IBM System/370-Extended Architecture
License Proprietary

In the original S/360 and S/370 architectures, each processor had its own set of I/O channels and addressed I/O devices with a 12-bit cuu address, containing a 4-bit channel number and an 8-bit unit (device) number to be sent on the channel bus in order to select the device; the operating system had to be configured to reflect the processor and cuu address for each device. The operating system had logic to queue pending I/O on each channel and to handle selection of alternate channels. Initiating an I/O to a channel on a different processor required causing a shoulder tap interrupt on the other processor so that it could initiate the I/O.

Starting with the IBM 3081 and IBM 4381 in S/370-Extended Architecture[1] mode, IBM changed the I/O architecture to allow the Channel Subsystem to handle the channel scheduling that the operating system had to handle in S/370 mode. The new I/O architecture used a 16-bit Channel Path Id (CHPID); the Channel Subsystem was responsible for mapping the CHPID to the channel and device numbers, for queuing I/O requests and for selecting from the available paths. The installation was responsible for defining the Input/Output Configuration Data Sets (IOCDS's), and the operator could select a specific IOCDS as part of a power on reset (POR). Input/Output Configuration Program (IOCP)[2][3][4] is a program for IBM mainframes that compiles a description of the Channel Subsystem and LPAR[5] configuration, optionally loading it into an Input/Output Configuration Data Set (IOCDS); it recognizes the syntax of MVS Configuration Program (MVSCP)[6] input, and there is no need to maintain separate input files.

The direct use of IOCP and MVSCP has been mostly supplanted by Hardware Configuration Definition (HCD).[7]


  1. ^ IBM (January 1987). IBM System/370 Extended Architecture Principles of Operation. Second Edition. SA22-7085-1. 
  2. ^ IBM (February 1993). Enterprise System/9000 Enterprise System/3090: Input/Output Configuration Program User's Guide and ESCON Channel-to-Channel Reference. Sixth Edition. GC38-0097-05. 
  3. ^ IBM. Input/Output Configuration Program User's Guide and ESCON Channel-to-Channel Reference. GC38-0401. 
  4. ^ IBM. Stand-Alone IOCP User's Guide. GC38-0456. 
  5. ^ IBM (August 1993). Enterprise System/9000 Enterprise System/3090: Processor Resource/Systems Manager Planning Guide. Eleventh Edition. GA22-7123-10. 
  6. ^ IBM (March 1993). MVS/ESA: MVS Configuration Program MVS/ESA System Product: JES2 Version 4 JES3 Version 4. Fifth Edition. GC28-1615-04. 
  7. ^ IBM. z/OS Hardware Configuration Definition Planning (PDF). GA22-7525-13. 

External links[edit]