Providing indirect data addressing in an input/output processing system where the indirect data address list is non-contiguous
First Claim
1. A non-transitory computer program product for providing indirect data addressing at an input/output (I/O) subsystem of an I/O processing system, the computer program product comprising:
- a non-transitory tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising;
receiving a control word for an I/O operation, the control word including an indirect data address for data associated with the I/O operation, the indirect data address including a starting location of a list of storage addresses that collectively specify the data;
forwarding a transport command control block (TCCB) from the channel subsystem to a control unit controlling an I/O device for executing the I/O operation, the TCCB including at least one device control word (DCW) and the TCCB being obtained by a location identified by a transport control word (TCW);
gathering the data, wherein gathering comprises accessing entries of the list until a last entry is accessed, wherein accessing includes
1) and
2);
1) based on an entry of the list comprising a not-set first flag and a corresponding first storage address, gathering data from a corresponding storage location; and
2) based on an entry of the list comprising a set first flag and a corresponding second storage address, obtaining a next entry of the list from a second storage location, wherein the second storage address is located contiguously to the first storage address when an entry of the list comprises the not-set first flag, and the second storage address is located non-contiguously to the first storage address when an entry of the list comprises the set first flag; and
transmitting the gathered data to the control unit in the I/O processing system.
0 Assignments
0 Petitions
Accused Products
Abstract
Systems, methods and computer program products for providing indirect data addressing at an I/O subsystem of an I/O processing system. The computer program product includes a tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method. The method includes receiving a control word for an I/O operation. The control word includes an indirect data address for data associated with the I/O operation. The indirect data address includes a starting location of a list of storage addresses that collectively specify the data, the list spans two or more non-contiguous storage locations. Data is gathered responsive to the list. The gathered data is transmitted to a control unit in the I/O processing system.
-
Citations
24 Claims
-
1. A non-transitory computer program product for providing indirect data addressing at an input/output (I/O) subsystem of an I/O processing system, the computer program product comprising:
a non-transitory tangible storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising; receiving a control word for an I/O operation, the control word including an indirect data address for data associated with the I/O operation, the indirect data address including a starting location of a list of storage addresses that collectively specify the data; forwarding a transport command control block (TCCB) from the channel subsystem to a control unit controlling an I/O device for executing the I/O operation, the TCCB including at least one device control word (DCW) and the TCCB being obtained by a location identified by a transport control word (TCW); gathering the data, wherein gathering comprises accessing entries of the list until a last entry is accessed, wherein accessing includes
1) and
2);1) based on an entry of the list comprising a not-set first flag and a corresponding first storage address, gathering data from a corresponding storage location; and 2) based on an entry of the list comprising a set first flag and a corresponding second storage address, obtaining a next entry of the list from a second storage location, wherein the second storage address is located contiguously to the first storage address when an entry of the list comprises the not-set first flag, and the second storage address is located non-contiguously to the first storage address when an entry of the list comprises the set first flag; and transmitting the gathered data to the control unit in the I/O processing system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 22)
-
10. An apparatus for providing indirect data addressing at an I/O subsystem of an I/O processing system, the apparatus comprising:
an I/O subsystem configured for communication with a control unit in the I/O processing system, the I/O subsystem configured to perform a method comprising; receiving a control word for an I/O operation, the control word including an indirect data address for data associated with the I/O operation, the indirect data address including a starting location of a list of storage addresses that collectively specify the data; forwarding a transport command control block (TCCB) from the channel subsystem to the control unit controlling an I/O device for executing the I/O operation, the TCCB including at least one device control word (DCW) and the TCCB being obtained by a location identified by the TCW; gathering the data, wherein gathering comprises accessing entries of the list until a last entry is accessed, wherein accessing includes
1) and
2);1) based on an entry of the list comprising a not-set first flag and a corresponding first storage address, gathering data from a corresponding storage location; and 2) based on an entry of the list comprising a set first flag and a corresponding second storage address, obtaining a next entry of the list from a second storage location, wherein the second storage address is located contiguously to the first storage address when an entry of the list comprises the not-set first flag, and the second storage address is located non-contiguously to the first storage address when an entry of the list comprises the set first flag; and transmitting the gathered data to the control unit. - View Dependent Claims (11, 12, 13, 14, 15, 23)
-
16. A method for providing indirect data addressing at an I/O subsystem of an I/O processing system, the method comprising:
receiving a control word for an I/O operation at the I/O subsystem, the control word including an indirect data address for data associated with the I/O operation, the indirect data address including a starting location of a list of storage addresses that collectively specify the data; forwarding a transport command control block (TCCB) from the channel subsystem to a control unit controlling an I/O device for executing the I/O operation, the TCCB including at least one device control word (DCW) and the TCCB being obtained by a location identified by the TCW; gathering the data, wherein gathering comprises accessing entries of the list until a last entry is accessed, wherein accessing includes
1) and
2);1) based on an entry of the list comprising a not-set first flag and a corresponding first storage address, gathering data from a corresponding storage location; and 2) based on an entry of the list comprising a set first flag and a corresponding second storage address, obtaining a next entry of the list from a second storage location, wherein the second storage address is located contiguously to the first storage address when an entry of the list comprises the not-set first flag, and the second storage address is located non-contiguously to the first storage address when an entry of the list comprises the set first flag; transmitting the gathered data to the control unit in the I/O processing system. - View Dependent Claims (17, 18, 19, 20, 21, 24)
Specification