Claims Analysis
Total Claims: 19
Claim 1
Independent Claim
285 words
A data processing system including a host processor and an array of storage devices coupled to each other and the host processor via communication means, each storage device logically divided into N logical memory segments, where N is an integer greater than 1, and corresponding ones of said logical memory segments (i.e., a "parity set") across P storage devices including at least one logical memory segment which stores parity for P-1 logical memory segments of said parity set, said data processing system comprising: driver means in said host processor for generating read and write commands to said array of storage device, said commands including addresses which are in accord with ranges of addresses assigned to logical memory segments in each storage device; memory means in each said storage device for storing array configuration data which includes data identifying: a logical memory segment size; a first identifier for the storage device incorporating the respective memory means; and a second identifier for a last storage device which stores parity; control means in each said storage device for determining from said logical memory segment size and said second identifier which logical memory segment in said respective memory means stores parity data, and for responding to an address accompanying a read or write command by mapping said address to a logical memory segment other than said logical memory segment in said respective memory means which stores parity data, said control means, upon performing a write action to a logical memory segment in said parity set, communicating directly with the storage device that stores parity for the logical memory segment that was subject to the write action and causing an update of said parity in accordance with said write action.
Claim 2
Dependent Claim
285 words
A data processing system including a host processor and an array of storage devices coupled to each other and the host processor via communication means, each storage device logically divided into N logical memory segments, where N is an integer greater than 1, and corresponding ones of said logical memory segments (i.e., a "parity set") across P storage devices including at least one logical memory segment which stores parity for P-1 logical memory segments of said parity set, said data processing system comprising: driver means in said host processor for generating read and write commands to said array of storage device, said commands including addresses which are in accord with ranges of addresses assigned to logical memory segments in each storage device; memory means in each said storage device for storing array configuration data which includes data identifying: a logical memory segment size; a first identifier for the storage device incorporating the respective memory means; and a second identifier for a last storage device which stores parity; control means in each said storage device for determining from said logical memory segment size and said second identifier which logical memory segment in said respective memory means stores parity data, and for responding to an address accompanying a read or write command by mapping said address to a logical memory segment other than said logical memory segment in said respective memory means which stores parity data, said control means, upon performing a write action to a logical memory segment in said parity set, communicating directly with the storage device that stores parity for the logical memory segment that was subject to the write action and causing an update of said parity in accordance with said write action.
Claim 3
Dependent Claim
33 words
The data processing system as recited in claim 1, wherein said control means determines the storage device which stores parity for said parity set from data in said array configuration page stored therewith.
Claim 4
Dependent Claim
44 words
. The data processing system as recited in claim 1, wherein said array configuration data in each storage device enables each associated control means to calculate a corresponding address in a logical memory segment in an associated one of said P-1 logical memory segments.
Claim 5
Dependent Claim
86 words
The data processing system as recited in claim 1, wherein said array configuration data further includes a third entry which identifies one of said P storage device as evidencing a failed operational state, said control means upon receiving a read command for data in a logical memory segment, issuing read commands to other storage device evidencing an operational state, to read data at corresponding logical memory segment locations, and, upon receiving such data, regenerating data previously available from said storage device evidencing a failed operational state.
Claim 6
Dependent Claim
41 words
The data processing system as recited in claim 1, wherein said one logical memory segment which stores parity for P-1 logical memory segments of said parity set is invariably stored in an initial range of physical addresses of a storage device.
Claim 7
Dependent Claim
47 words
The data processing system as recited in claim 1, wherein said driver means accompanies each write command with a configuration identifier and each array configuration data set also includes a configuration identifier, said control means executing said write command only if each configuration identifier is the same.
Claim 8
Independent Claim
284 words
A method for controlling an array of intercoupled disk drives in a data processing system which includes a host processor, each disk drive logically divided into N logical memory segments, where N is an integer greater than 1, and corresponding ones of said logical memory segments (i.e., a "Parity set") across P storage device include at least one logical memory segment which stores parity for P-1 logical memory segments of said parity set, said method comprising the steps of: causing said host processor to generate read and write commands to said array of disk drives, said commands including addresses which are in accord with ranges of addresses assigned to logical memory segments in each disk drive; storing in memory in each said disk drive an array configuration page which includes data identifying: a logical memory segment size; a first identifier for the disk drive incorporating the respective memory; and a second identifier for a last disk drive which stores parity; operating a control means in each said disk drive to determine from said logical memory segment size and said second identifier which logical memory segment in said respective memory stores parity data, and for responding to an address accompanying a read or write command by mapping said address to a logical memory segment other than said logical memory segment in said respective memory which stores parity data, and further causing said control means, upon performing a write action to a logical memory segment in said parity set, to communicate directly with the disk drive that stores parity for the logical memory segment that was subject to the write action and to further cause an update of said parity in accordance with said write action.
Claim 9
Independent Claim
284 words
A method for controlling an array of intercoupled disk drives in a data processing system which includes a host processor, each disk drive logically divided into N logical memory segments, where N is an integer greater than 1, and corresponding ones of said logical memory segments (i.e., a "Parity set") across P storage device include at least one logical memory segment which stores parity for P-1 logical memory segments of said parity set, said method comprising the steps of: causing said host processor to generate read and write commands to said array of disk drives, said commands including addresses which are in accord with ranges of addresses assigned to logical memory segments in each disk drive; storing in memory in each said disk drive an array configuration page which includes data identifying: a logical memory segment size; a first identifier for the disk drive incorporating the respective memory; and a second identifier for a last disk drive which stores parity; operating a control means in each said disk drive to determine from said logical memory segment size and said second identifier which logical memory segment in said respective memory stores parity data, and for responding to an address accompanying a read or write command by mapping said address to a logical memory segment other than said logical memory segment in said respective memory which stores parity data, and further causing said control means, upon performing a write action to a logical memory segment in said parity set, to communicate directly with the disk drive that stores parity for the logical memory segment that was subject to the write action and to further cause an update of said parity in accordance with said write action.
Claim 10
Dependent Claim
36 words
The method as recited in claim 7, wherein said operating step causes said control means to determine the disk drive which stores parity for said parity set from data in said array configuration page stored therewith.
Claim 11
Dependent Claim
42 words
The method as recited in claim 7, wherein said array configuration page data in each disk drive enables each associated control means to calculate a corresponding address in a logical memory segment in an associated one of said P-1 logical memory segments.
Claim 12
Dependent Claim
91 words
The method as recited in claim 7, wherein said array configuration page further includes a third entry which identifies one of said P storage device as evidencing a failed operational state, and said operating step further causes said control means, upon receiving a read command for data in a logical memory segment, to issue read commands to other disk drives evidencing an operational state, to read data at corresponding logical memory segment locations, and, upon receiving such data, regenerating data previously available from said disk drive evidencing a failed operational state.
Claim 13
Dependent Claim
45 words
The method as recited in claim 7, wherein each write command includes a configuration identifier and each array configuration page also includes a configuration identifier, said operating step causing said control means to execute said write command only if each configuration identifier is the same.
Claim 14
Dependent Claim
315 words
A memory media for operation in conjunction with computation means for controlling an array of intercoupled disk drives in a data processing system which includes a host processor, each disk drive logically divided into N logical memory segments, where N is an integer greater than 1, and corresponding ones of said logical memory segments (i.e., a "parity set") across P storage device include at least one logical memory segment which stores parity for P-1 logical memory segments of said parity set, said memory media comprising: first means for operation with said computation means for causing said host processor to generate read and write commands to said array of disk drives, said commands including addresses which are in accord with ranges of addresses assigned to logical memory segments in each disk drive; second means for operation with said computation means for causing storage in memory in each said disk drive of an array configuration data which includes data identifying: a logical memory segment size; a first identifier for the disk drive incorporating the respective memory; and a second identifier for a last disk drive which stores parity; third means for operating a control means in each said disk drive to determine from said logical memory segment size and said second identifier which logical memory segment in said respective memory stores parity data, and for responding to an address accompanying a read or write command by mapping said address to a logical memory segment other than said logical memory segment in said respective memory which stores parity data, said third means further causing said control means, upon performing a write action to a logical memory segment in said parity set, to communicate directly with the disk drive that stores parity for the logical memory segment that was subject to the write action and to further cause an update of said parity in accordance with said write action.
Claim 15
Dependent Claim
315 words
A memory media for operation in conjunction with computation means for controlling an array of intercoupled disk drives in a data processing system which includes a host processor, each disk drive logically divided into N logical memory segments, where N is an integer greater than 1, and corresponding ones of said logical memory segments (i.e., a "parity set") across P storage device include at least one logical memory segment which stores parity for P-1 logical memory segments of said parity set, said memory media comprising: first means for operation with said computation means for causing said host processor to generate read and write commands to said array of disk drives, said commands including addresses which are in accord with ranges of addresses assigned to logical memory segments in each disk drive; second means for operation with said computation means for causing storage in memory in each said disk drive of an array configuration data which includes data identifying: a logical memory segment size; a first identifier for the disk drive incorporating the respective memory; and a second identifier for a last disk drive which stores parity; third means for operating a control means in each said disk drive to determine from said logical memory segment size and said second identifier which logical memory segment in said respective memory stores parity data, and for responding to an address accompanying a read or write command by mapping said address to a logical memory segment other than said logical memory segment in said respective memory which stores parity data, said third means further causing said control means, upon performing a write action to a logical memory segment in said parity set, to communicate directly with the disk drive that stores parity for the logical memory segment that was subject to the write action and to further cause an update of said parity in accordance with said write action.
Claim 16
Dependent Claim
37 words
The memory media as recited in claim 12, wherein said third means causes said control means to determine the disk drive which stores parity for said parity set from data in said array configuration data stored therewith.
Claim 17
Dependent Claim
47 words
The memory media as recited in claim 12, wherein said array configuration data in each disk drive enables said third means to operate each associated control means to calculate a corresponding address in a logical memory segment in an associated one of said P-1 logical memory segments.
Claim 18
Dependent Claim
92 words
The memory media as recited in claim 12, wherein said array configuration data further includes a third entry which identifies one of said P storage devices as evidencing a failed operational state, and said third means further causes said control means, upon receiving a read command for data in a logical memory segment, to issue read commands to other disk drives evidencing an operational state, to read data at corresponding logical memory segment locations, and, upon receiving such data, regenerating data previously available from said disk drive evidencing a failed operational state.
Claim 19
Dependent Claim
46 words
The memory media as recited in claim 12, wherein each write command includes a configuration identifier and each array configuration page also includes a configuration identifier, said third means causing said control means to execute said write command only if each configuration identifier is the same.