Providing indirect data addressing in an input/output processing system where the indirect data address list is non-contiguous

US9436272B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9436272-B2
Application numberUS-201414483700-A
CountryUS
Kind codeB2
Filing dateSep 11, 2014
Priority dateFeb 14, 2008
Publication dateSep 6, 2016
Grant dateSep 6, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computer program product for processing input/output (I/O) data is provided for performing a method, which includes receiving a control word having an indirect data address including a starting location of a list of storage addresses, gathering the data and transmitting gathered data to a control unit in the I/O processing system. Gathering includes accessing an entry of the list, the entry located at an entry storage location and including an address. Based on the entry of the list indicating that the address is a data address, data is gathered from a data storage location, and a next entry of the list is accessed. Based on the entry of the list indicating that the address is an address of a next entry of the list, the next entry of the list is obtained from another storage location that is located non-contiguously to the entry storage location.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer program product for processing input/output (I/O) data at an I/O subsystem of an I/O processing system, the computer program product comprising: a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processing circuit to perform a method comprising: receiving a control word at the I/O subsystem 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, the list including a plurality of entries; gathering the data, wherein gathering comprises accessing an entry of the list, the entry located at an entry storage location and including an address, wherein accessing includes 1) and 2): 1) based on the entry of the list indicating that the address is a data address, gathering data from a data storage location corresponding to the data address, and accessing a next entry of the list; and 2) based on the entry of the list indicating that the address is an address of a next entry of the list, obtaining the next entry of the list from another storage location that is located non-contiguously to the entry storage location; and transmitting gathered data to a control unit in the I/O processing system, the control unit configured to control an I/O device for executing the I/O operation. 2. The computer program product of claim 1 , wherein the list of storage addresses includes transport mode indirect data address words (TIDAWs), the data address refers to a portion of the data and the address of the next entry refers to a storage location where one or more storage addresses of the list are located. 3. The computer program product of claim 1 , wherein the list further includes a count field associated with each storage address in the list, the count field indicating a number of bytes to read from the storage address and the gathering is based on the count fields and to the storage addresses. 4. The computer program product of claim 1 , wherein the control word includes a transport control word (TCW) that includes at least one device control word (DCW) that specifies a command to be executed by a control unit. 5. The computer program product of claim 4 , wherein the list of storage addresses is a transport indirect data address list (TIDAL). 6. The computer program product of claim 1 , wherein the gathering includes accessing successive entries of the list until a last entry is accessed. 7. The computer program product of claim 1 , wherein the method further comprises, based on an entry of the list comprising a set last entry flag, determining that the entry is a last entry to be accessed. 8. The computer program product of claim 1 , wherein the next entry of the list is contiguous to the entry when the entry indicates that the address is the data address. 9. An apparatus for processing input/output (I/O) data, the apparatus comprising: an I/O subsystem configured for communication with a control unit in an I/O processing system, the I/O subsystem configured to perform a method comprising: receiving a control word at the I/O subsystem 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, the list including a plurality of entries; gathering the data, wherein gathering comprises accessing an entry of the list, the entry located at an entry storage location and including an address, wherein accessing includes 1) and 2): 1) based on the entry of the list indicating that the address is a data address, gathering data from a data storage location corresponding to the data address, and accessing a next entry of the list; and 2) based on the entry of the list indicating that the address is an address of a next entry of the list, obtaining the next entry of the list from another storage location that is located non-contiguously to the entry storage location; and transmitting gathered data to the control unit, the control unit configured to control an I/O device for executing the I/O operation. 10. The apparatus of claim 9 , wherein the list of storage addresses includes transport mode indirect data address words (TIDAWs), the data address refers to a portion of the data and the address of the next entry refers to a storage location where one or more storage addresses of the list are located. 11. The apparatus of claim 9 , wherein the control word includes a transport control word (TCW) that includes at least one device control word (DCW) that specifies a command to be executed by a control unit, and the list of storage addresses is a transport indirect data address list (TIDAL). 12. The apparatus of claim 9 , wherein the gathering includes accessing successive entries of the list until a last entry is accessed. 13. The apparatus of claim 9 , wherein the next entry of the list is contiguous to the entry when the entry indicates that the address is the data address. 14. A method of processing input/output (I/O) data at an I/O subsystem configured for communication with a control unit in an I/O processing system, the method comprising: receiving a control word at an I/O subsystem 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, the list including a plurality of entries; gathering the data, wherein gathering comprises accessing an entry of the list, the entry located at an entry storage location and including an address, wherein accessing includes 1) and 2): 1) based on the entry of the list indicating that the address is a data address, gathering data from a data storage location corresponding to the data address, and accessing a next entry of the list; and 2) based on the entry of the list indicating that the address is an address of a next entry of the list, obtaining the next entry of the list from another storage location that is located non-contiguously to the entry storage location; and transmitting gathered data to the control unit, the control unit configured to control an I/O device for executing the I/O operation. 15. The method of claim 14 , wherein the gathering includes accessing successive entries of the list until a last entry is accessed. 16. The method of claim 14 , wherein the next entry of the list is contiguous to the entry when the entry indicates that the address is the data address.

Assignees

Inventors

Classifications

  • G06F13/124Primary

    where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine · CPC title

  • Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices · CPC title

  • for multiple virtual address spaces, e.g. segmentation (G06F12/1045 takes precedence) · CPC title

  • G06F3/00Primary

    Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements · CPC title

  • Single storage device · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9436272B2 cover?
A computer program product for processing input/output (I/O) data is provided for performing a method, which includes receiving a control word having an indirect data address including a starting location of a list of storage addresses, gathering the data and transmitting gathered data to a control unit in the I/O processing system. Gathering includes accessing an entry of the list, the entry l…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F13/124. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 06 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).