Input/Output Configuration Program

Last updated
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

The Input/Output Configuration Program is a program on IBM mainframes.[ when? ]

Contents

History

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 handled in S/370 mode. The new I/O architecture used a 16-bit subchannel number, a 16-bit device number and an 8-bit Channel Path Identifier (Channel Path Id or CHPID); the Channel Subsystem was responsible for mapping the subchannel number to the channel and device numbers, for queuing I/O requests and for selecting from the available paths.

Starting with z990, IBM introduced the concept of a Logical Channel Subsystem [2] (LCSS); each physical channel (of 1024) has a unique Physical Channel Path Identifier (PCHPID), each LCSS has a CHPID to PCHPID mapping and each LPAR is assigned to one LCSS.

Starting with System z9 running z/OS 1.7, IBM offered the multiple-subchannel set facility, which allowed up to four independent sets of 64 Ki subchannels. [3]

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) [4] [5] [6] is a program for IBM mainframes that compiles a description of the Channel Subsystem and LPAR [7] configuration, optionally loading it into an Input/Output Configuration Data Set (IOCDS); it recognizes the syntax of MVS Configuration Program (MVSCP) [8] 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 [9] (HCD).

See also

Related Research Articles

IBM mainframes are large computer systems produced by IBM since 1952. During the 1960s and 1970s, IBM dominated the computer market with the 7000 series and the later System/360, followed by the System/370. Current mainframe computers in IBM's line of business computers are developments of the basic design of the System/360.

<span class="mw-page-title-main">MVS</span> Operating system for IBM mainframes

Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z IBM mainframe computers. IBM developed MVS, along with OS/VS1 and SVS, as a successor to OS/360. It is unrelated to IBM's other mainframe operating system lines, e.g., VSE, VM, TPF.

A direct-access storage device (DASD) is a secondary storage device in which "each physical record has a discrete location and a unique address". The term was coined by IBM to describe devices that allowed random access to data, the main examples being drum memory and hard disk drives. Later, optical disc drives and flash memory units are also classified as DASD.

<span class="mw-page-title-main">IBM System/370</span> Family of mainframe computers 1970–1990

The IBM System/370 (S/370) is a model range of IBM mainframe computers announced on June 30, 1970, as the successors to the System/360 family. The series mostly maintains backward compatibility with the S/360, allowing an easy migration path for customers; this, plus improved performance, were the dominant themes of the product announcement. In September 1990, the System/370 line was replaced with the System/390.

<span class="mw-page-title-main">VM (operating system)</span> Family of IBM operating systems

VM is a family of IBM virtual machine operating systems used on IBM mainframes System/370, System/390, zSeries, System z and compatible systems, including the Hercules emulator for personal computers.

The Job Entry Subsystem (JES) is a component of IBM's MVS mainframe operating systems that is responsible for managing batch workloads. In modern times, there are two distinct implementations of the Job Entry System called JES2 and JES3. They are designed to provide efficient execution of batch jobs.

z/Architecture, initially and briefly called ESA Modal Extensions (ESAME), is IBM's 64-bit complex instruction set computer (CISC) instruction set architecture, implemented by its mainframe computers. IBM introduced its first z/Architecture-based system, the z900, in late 2000. Later z/Architecture systems include the IBM z800, z990, z890, System z9, System z10, zEnterprise 196, zEnterprise 114, zEC12, zBC12, z13, z14, z15 and z16.

Remote job entry is the procedure for sending requests for non-interactive data processing tasks (jobs) to mainframe computers from remote workstations, and by extension the process of receiving the output from such jobs at a remote workstation.

A logical partition (LPAR) is a subset of a computer's hardware resources, virtualized as a separate computer. In effect, a physical machine can be partitioned into multiple logical partitions, each hosting a separate instance of an operating system.

In computing, channel I/O is a high-performance input/output (I/O) architecture that is implemented in various forms on a number of computer architectures, especially on mainframe computers. In the past, channels were generally implemented with custom devices, variously named channel, I/O processor, I/O controller, I/O synchronizer, or DMA controller.

Count key data (CKD) is a direct-access storage device (DASD) data recording format introduced in 1964, by IBM with its IBM System/360 and still being emulated on IBM mainframes. It is a self-defining format with each data record represented by a Count Area that identifies the record and provides the number of bytes in an optional Key Area and an optional Data Area. This is in contrast to devices using fixed sector size or a separate format track.

The IBM 2780 and the IBM 3780 are devices developed by IBM to perform remote job entry (RJE) and other batch functions over telephone lines; they communicate with the mainframe via Binary Synchronous Communications and replaced older terminals using synchronous transmit-receive (STR). In addition, IBM has developed workstation programs for the 1130, 360/20, 2922, System/360 other than 360/20, System/370 and System/3.

In IBM mainframe operating systems OS/360 and its successors, a Unit Control Block (UCB) is a memory structure, or a control block, that describes any single input/output peripheral device (unit), or an exposure (alias), to the operating system. Certain data within the UCB also instructs the Input/Output Supervisor (IOS) to use certain closed subroutines in addition to normal IOS processing for additional physical device control.

System Generation (SysGen) is a two-stage process for installing or updating OS/360, OS/VS1, OS/VS2 (SVS), OS/VS2 (MVS) and chargeable systems derived from them. There are similar processes for, e.g., DOS/360, which this article does not cover. Also, some of the details have changed between releases of OS/360 and many details do not carry over to later systems.

In MVS/XA and successor versions of IBM mainframe operating systems, Start Input/Output (STARTIO) is a macro instruction and a "branch entry" for low-level device access, where the programmer is responsible for providing a list of device-specific CCWs, that is, a channel program, to be executed by I/O channels, control units and devices and a number of "exits", several of which may be immediate returns to the Input/Output Supervisor (IOS). Invokers of STARTIO must be in supervisor mode and key 0. STARTIO interfaces directly with the IOS component of MVS.

The Input/Output Supervisor (IOS) is that portion of the control program in the IBM mainframe OS/360 and successors operating systems 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.

<span class="mw-page-title-main">IBM 9370</span> IBM mainframe-compatible low-end system

The IBM 9370 systems are "baby mainframe" midrange computers, released 1986 at the very low end of, and compatible with System/370. The media of the day, referring to the VAX systems manufactured by Digital Equipment Corporation (DEC), carried IBM's alleged "VAX Killer" phrase, albeit often skeptically.

In IBM mainframe technology, a channel-to-channel adapter (CTCA) is a device that connects two input/output channels on (usually) two separate computer systems.

<span class="mw-page-title-main">IBM System/390</span> Line of mainframe computers

The IBM System/390 is a discontinued mainframe product family implementing ESA/390, the fifth generation of the System/360 instruction set architecture. The first computers to use the ESA/390 were the Enterprise System/9000 (ES/9000) family, which were introduced in 1990. These were followed by the 9672, Multiprise, and Integrated Server families of System/390 in 1994–1999, using CMOS microprocessors. The ESA/390 succeeded ESA/370, used in the Enhanced 3090 and 4381 "E" models, and the System/370 architecture last used in the IBM 9370 low-end mainframe. ESA/390 was succeeded by the 64-bit z/Architecture in 2000.

<span class="mw-page-title-main">Bus and Tag</span> IBM peripheral interface

Bus and Tag is an "IBM standard for a computer peripheral interface", and was commonly used to connect their mainframe computers to peripheral devices such as line printers, disk storage, magnetic tape drives and IBM 3270 display controllers. The technology uses two sets of thick, multi-connector copper cables, one set, carrying data, called the bus, and the other set, carrying control information, called the tag.

References

  1. IBM (January 1987). IBM System/370 Extended Architecture Principles of Operation. Second Edition. SA22-7085-1.
  2. "4.1 Multiple Logical Channel Subsystem (LCSS)" (PDF). IBM IBM eServer zSeries 990 Technical Guide (PDF) (Second ed.). May 2004. pp. 110–115. SG24-6947-01. Retrieved May 29, 2023.
  3. Multiple Subchannel Sets: An Implementation View (PDF). Retrieved May 28, 2023.{{cite book}}: |work= ignored (help)
  4. 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.
  5. IBM. Input/Output Configuration Program User's Guide and ESCON Channel-to-Channel Reference. GC38-0401.[ permanent dead link ]
  6. IBM. Stand-Alone IOCP User's Guide. GC38-0456.
  7. IBM (August 1993). Enterprise System/9000 Enterprise System/3090: Processor Resource/Systems Manager Planning Guide. Eleventh Edition. GA22-7123-10.
  8. IBM (March 1993). MVS/ESA: MVS Configuration Program MVS/ESA System Product: JES2 Version 4 JES3 Version 4. Fifth Edition. GC28-1615-04.
  9. IBM. z/OS Hardware Configuration Definition Planning (PDF). GA22-7525-13.