Claims Analysis
Total Claims: 25
Claim 1
Independent Claim
99 words
A method of employing hardware configurable data structures for an I/O transaction, comprising: storing offset and count information for an operating system data structure configuration employed in the I/O transaction within a plurality of storage locations; monitoring a base address storage location for a write of a base address to the base address storage location; responsive to detecting a write of a base address to the base address storage location, retrieving a data structure at the base address; and determining message data necessary to process the I/O transaction from the retrieved data structure utilizing the offset and count information.
Claim 2
Independent Claim
99 words
A method of employing hardware configurable data structures for an I/O transaction, comprising: storing offset and count information for an operating system data structure configuration employed in the I/O transaction within a plurality of storage locations; monitoring a base address storage location for a write of a base address to the base address storage location; responsive to detecting a write of a base address to the base address storage location, retrieving a data structure at the base address; and determining message data necessary to process the I/O transaction from the retrieved data structure utilizing the offset and count information.
Claim 3
Dependent Claim
43 words
The method of claim 1 , wherein the step of storing offset and count information for a data structure employed in the I/O transaction within a plurality of storage locations further comprises: storing a data offset for each parameter within the data structure.
Claim 4
Dependent Claim
47 words
The method of claim 1 , wherein the step of storing offset and count information for a data structure employed in the I/O transaction within a plurality of storage locations further comprises: storing a length offset and a length size for each parameter within the data structure.
Claim 5
Dependent Claim
118 words
The method of claim 1 , wherein the step of storing offset and count information for a data structure employed in the I/O transaction within a plurality of storage locations further comprises: storing a SCSI message out length offset, a SCSI message out length size, and a SCSI message out data offset within a first group of registers within the plurality of storage locations; storing a SCSI command descriptor block length offset, a SCSI command descriptor block length size, and a SCSI command descriptor block data offset within a second group of registers within the plurality of storage locations; storing a SCSI target LUN and ID within a third group of registers within the plurality of storage locations.
Claim 6
Dependent Claim
32 words
The method of claim 1 , wherein the step of retrieving a data structure at the base address further comprises: retrieving a data structure at the base address from a host memory.
Claim 7
Dependent Claim
49 words
The method of claim 1 , wherein the step of determining message data necessary to process the I/O transaction from the retrieved data structure utilizing the offset and count information further comprises: determining a message data content and a corresponding message data size utilizing the offset and count information.
Claim 8
Dependent Claim
132 words
The method of claim 1 , wherein the step of determining a message data contents and a corresponding message data size utilizing the offset and count information further comprises: reading a SCSI message out length from the retrieved data structure utilizing the offset and count information; reading a SCSI message out contents from the retrieved data structure utilizing the offset and count information; reading a SCSI command descriptor block length from the retrieved data structure utilizing the offset and count information; reading a SCSI command descriptor block contents from the retrieved data structure utilizing the offset and count information; reading a SCSI target LUN from the retrieved data structure utilizing the offset and count information; and reading a SCSI target ID from the retrieved data structure utilizing the offset and count information.
Claim 9
Dependent Claim
22 words
The method of claim 1 , further comprising: transmitting the message data necessary to process the I/O transaction to an I/O device.
Claim 10
Independent Claim
85 words
A method of handling an I/O request, comprising: receiving a base address for a location within a host memory of an operating system data structure for the I/O request; retrieving the operating system data structure from the location identified by the base address; utilizing offset and count information defining a configuration of the operating system data structure to identify message data within the operating system data structure which is necessary to process the I/O request; and transmitting the identified message data to an I/O device.
Claim 11
Independent Claim
85 words
A method of handling an I/O request, comprising: receiving a base address for a location within a host memory of an operating system data structure for the I/O request; retrieving the operating system data structure from the location identified by the base address; utilizing offset and count information defining a configuration of the operating system data structure to identify message data within the operating system data structure which is necessary to process the I/O request; and transmitting the identified message data to an I/O device.
Claim 12
Dependent Claim
73 words
The method of claim 9 , wherein the step of utilizing offset and count information defining a configuration of the operating system data structure to identify message data within the operating system data structure which is necessary to process the I/O request further comprises: utilizing the offset and count information to determine a message length offset, and message length size, and a message data offset for each message element forming the I/O request.
Claim 13
Dependent Claim
95 words
The method of claim 10 , wherein the step of utilizing the offset and count information to determine a message length offset, and message length size, and a message data offset for each message element forming the I/O request further comprises: determining a SCSI message out length offset, a SCSI message out data offset, a SCSI command descriptor block length offset, a SCSI command descriptor block length size, a SCSI command descriptor block data offset, a SCSI target LUN, and a SCSI target ID from the retrieved data structure utilizing the offset and count information.
Claim 14
Dependent Claim
115 words
An I/O control system, comprising: a plurality of storage locations containing offset and count information for an operating system data structure configuration employed in I/O transactions involving the I/O control system; a base address storage location containing a base address for a operating system data structure for an I/O transaction; a I/O engine connected to the plurality of storage locations and the base address storage location, the I/O engine: monitoring the base address storage location; retrieving the data structure in response to detecting a base address being written to the base address storage location; and determining message data necessary to process the I/O transaction from the retrieved data structure utilizing the offset and count information.
Claim 15
Dependent Claim
115 words
An I/O control system, comprising: a plurality of storage locations containing offset and count information for an operating system data structure configuration employed in I/O transactions involving the I/O control system; a base address storage location containing a base address for a operating system data structure for an I/O transaction; a I/O engine connected to the plurality of storage locations and the base address storage location, the I/O engine: monitoring the base address storage location; retrieving the data structure in response to detecting a base address being written to the base address storage location; and determining message data necessary to process the I/O transaction from the retrieved data structure utilizing the offset and count information.
Claim 16
Dependent Claim
22 words
The I/O control system of claim 12 , wherein the plurality of storage locations and the base address storage location comprise registers.
Claim 17
Dependent Claim
24 words
The I/O control system of claim 12 , wherein the plurality of storage locations and the base address storage location comprise firmware storage locations.
Claim 18
Dependent Claim
70 words
The I/O control system of claim 12 , further comprising: a host memory coupled to the I/O engine and containing the operating system data structure; a processor coupled to the I/O engine and executing a device driver process loading the offset and count information into the plurality of storage locations; and an I/O device coupled to the I/O engine and containing data which is the subject of the I/O transaction.
Claim 19
Dependent Claim
89 words
The I/O control system of claim 15 , further comprising: a first bus interface unit connected between the host memory and the I/O engine and between the processor and the I/O engine; a second bus interface unit connected between the I/O device and the I/O engine; a local memory connected to the I/O engine in which the retrieved data structure is stored; and a DMA engine connected to the first bus interface unit, the local memory, and the I/O engine for retrieving the data structure from the base address.
Claim 20
Dependent Claim
63 words
The I/O control system of claim 15 , wherein the plurality of storage locations contain: a SCSI message out length offset, a SCSI message out length size, a SCSI message out data offset, a SCSI command descriptor block length offset, a SCSI command descriptor block length size, a SCSI command descriptor block data offset, a SCSI target LUN, and a SCSI target ID.
Claim 21
Dependent Claim
25 words
The I/O control system of claim 15 , wherein the base address storage location contains: a host memory address for the operating system data structure.
Claim 22
Dependent Claim
100 words
A computer program product within a computer usable medium for handling an I/O request, comprising: instructions for receiving a base address for a location within a host memory of an operating system data structure for the I/O request; instructions for retrieving the operating system data structure from the location identified by the base address; instructions for utilizing offset and count information defining a configuration of the operating system data structure to identify message data within the operating system data structure which is necessary to process the I/O request; and instructions for transmitting the identified message data to an I/O device.
Claim 23
Dependent Claim
100 words
A computer program product within a computer usable medium for handling an I/O request, comprising: instructions for receiving a base address for a location within a host memory of an operating system data structure for the I/O request; instructions for retrieving the operating system data structure from the location identified by the base address; instructions for utilizing offset and count information defining a configuration of the operating system data structure to identify message data within the operating system data structure which is necessary to process the I/O request; and instructions for transmitting the identified message data to an I/O device.
Claim 24
Dependent Claim
230 words
The computer program product of claim 19 , wherein the instructions for utilizing offset and count information defining a configuration of the operating system data structure to identify message data within the operating system data structure which is necessary to process the I/O request further comprise: instructions for determining a SCSI message out length from the retrieved operating system data structure utilizing a SCSI message out length offset and a SCSI message out length size within the offset and count information; instructions for determining a SCSI message out contents from the retrieved operating system data structure utilizing a SCSI message out data offset within the offset and count information; instructions for determining a SCSI command descriptor block length from the retrieved operating system data structure utilizing a SCSI command descriptor block length offset and a SCSI command descriptor block length size within the offset and count information; instructions for determining a SCSI command descriptor block contents from the retrieved operating system data structure utilizing a SCSI command descriptor block data offset within the offset and count information; instructions for determining a SCSI target LUN from the retrieved operating system data structure utilizing a SCSI target LUN offset within the offset and count information; and instructions for determining a SCSI target ID from the retrieved operating system data structure utilizing a SCSI target ID offset within the offset and count information.
Claim 25
Dependent Claim
61 words
The computer program product of claim 20 , wherein the instructions for transmitting the identified message data to an I/O device further comprise: instructions for transmitting the SCSI message out length, the SCSI message out contents, the SCSI command descriptor block length, the SCSI command descriptor block contents, the SCSI target LUN and the SCSI target ID to the I/O device.