Input/output control system with plural channel paths to I/O devices
First Claim
1. A system for controlling input/output (I/O) operations between a host computer including a host processor and host memory, in communication with one or more I/O devices each identified by a unique number specified as part of I/O instructions executed by the host processor and communicating with the host computer through one or more channels, the host memory having a control area including control data associated with each of the one or more I/O devices, the control data including identification of the operation to be performed between the host computer and I/O device and identification of one or more channels available to establish a physical path between the I/O device and host computer (CHPID), said system comprising:
- a queue in each channel for storing an indication of work to be performed by the channel for an I/O device after completing work for an I/O device currently in progress;
work indicating means in the control area of the host memory for indicating work to be performed with specified I/O devices and thereby identifying the control areas associated with the I/O devices, the indication of work being stored in said work indicating means by the host processor in response to execution of an I/O instruction;
busy indicator means for indicating the busy/not busy status of each channel;
queue status means for indicating the use status of said queues in the channels;
channel communication means including a plurality of locations, one for each channel, for storing an indication of work for the associated channel;
I/O controller means connected to the host computer for controlling the initiation of work to be performed between the host computer and I/O devices;
said I/O controller means including;
means for accessing said work indicating means, and thereby the control data associated with an associated I/O device, for determining the channels having a physical path to the I/O device;
means for accessing said busy indicator means and said queue status means;
initiating means, responsive to said busy indicator means and said queue status means indicating the non busy status of a channel, or if all channels are busy, a channel having a said queue, creating a physical path to the I/O device, for transferring the indication of the work to said channel communication means location associated with the channel of the available physical path and removing the indication of work from said work indicating means; and
means, responsive to said busy indicator means and said queue status means indicating the unavailability of any channel, and thus a physical path to the I/O device, for returning the indication of work to said work indicating means.
1 Assignment
0 Petitions
Accused Products
Abstract
A data processing system includes a host processor and host memory means. The processor interacts with a plurality of peripheral units through an I/O system that includes a plurality of channels, one or more I/O processors (IOP'"'"'s), and control data in a system area of the host memory means. Each channel has an associated busy bit in a vector, and is provided with a one position queue for dispatching work to the channel. Each queue has a bit in a vector indicating its full or empty status. A very efficient algorithm for the assignment of work for peripherals by the IOP'"'"'s is provided in a system that provides for multiple paths through multiple channels between the host and a particular peripheral using the busy vector and queue vector.
-
Citations
8 Claims
-
1. A system for controlling input/output (I/O) operations between a host computer including a host processor and host memory, in communication with one or more I/O devices each identified by a unique number specified as part of I/O instructions executed by the host processor and communicating with the host computer through one or more channels, the host memory having a control area including control data associated with each of the one or more I/O devices, the control data including identification of the operation to be performed between the host computer and I/O device and identification of one or more channels available to establish a physical path between the I/O device and host computer (CHPID), said system comprising:
-
a queue in each channel for storing an indication of work to be performed by the channel for an I/O device after completing work for an I/O device currently in progress; work indicating means in the control area of the host memory for indicating work to be performed with specified I/O devices and thereby identifying the control areas associated with the I/O devices, the indication of work being stored in said work indicating means by the host processor in response to execution of an I/O instruction; busy indicator means for indicating the busy/not busy status of each channel; queue status means for indicating the use status of said queues in the channels; channel communication means including a plurality of locations, one for each channel, for storing an indication of work for the associated channel; I/O controller means connected to the host computer for controlling the initiation of work to be performed between the host computer and I/O devices; said I/O controller means including; means for accessing said work indicating means, and thereby the control data associated with an associated I/O device, for determining the channels having a physical path to the I/O device; means for accessing said busy indicator means and said queue status means; initiating means, responsive to said busy indicator means and said queue status means indicating the non busy status of a channel, or if all channels are busy, a channel having a said queue, creating a physical path to the I/O device, for transferring the indication of the work to said channel communication means location associated with the channel of the available physical path and removing the indication of work from said work indicating means; and means, responsive to said busy indicator means and said queue status means indicating the unavailability of any channel, and thus a physical path to the I/O device, for returning the indication of work to said work indicating means. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
Specification