US4989205A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Disk drive memory
Assignee: Storage Technology Corp
•
Filing: 1990-01-11
•
Granted: 1991-01-29
•
Expires: 2010-01-11
Abstract
Abstract The disk drive memory of the present invention uses a large plurality of small form factor disk drives to implement an inexpensive, high performance, high reliability disk drive memory that emulates the format and capability of large form factor disk drives. The plurality of disk drives are switchably interconnectable to form parity groups of N+1 parallel connected disk drives to store data thereon. The N+1 disk drives are used to store the N segments of each data word plus a parity segment. In addition, a pool of backup disk drives is maintained to automatically substitute a replacement disk drive for a disk drive in a parity group that fails during operation.
Inventors
- 👤 Robert H. Dunphy, Jr.
- 👤 Robert Walsh
- 👤 John H. Bowers
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-25 04:13
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1076; G06F11/1008; G11; G11B; G11B20/00; G11B20/10; G11B20/18; G11B20/1833; G11B5/00; G11B5/012; Y; Y10; Y10S; Y10S360/00; Y10S360/90; Y10S360/902; Y10S360/903
Claims Analysis
Total Claims: 40
Claim 1
Independent Claim
170 words
A disk memory system (100) for storing data files for associated data processing devices comprising: a plurality of disk drives (130-0 to 130-M); means (140) for assigning a subset of said plurality of disk drives into two or more parity groups, each parity group consisting of two or more disk drives, the size of the parity group being one of at least two different parity group sizes in said two or more parity groups; means (101) responsive to the receipt of a data file from said associated data processing devices for selecting one of said parity groups to store said data file thereon; means (161, 101, 111, 121, 141-*) for writing said received data file and parity data associated with said received data file in segments across said two or more disk drives in said selected parity group; means (140) for reserving one or more of said plurality of disk drives as backup disk drives, which backup disk drives are shared in common by said two or more parity groups.
Claim 2
Dependent Claim
170 words
A disk memory system (100) for storing data files for associated data processing devices comprising: a plurality of disk drives (130-0 to 130-M); means (140) for assigning a subset of said plurality of disk drives into two or more parity groups, each parity group consisting of two or more disk drives, the size of the parity group being one of at least two different parity group sizes in said two or more parity groups; means (101) responsive to the receipt of a data file from said associated data processing devices for selecting one of said parity groups to store said data file thereon; means (161, 101, 111, 121, 141-*) for writing said received data file and parity data associated with said received data file in segments across said two or more disk drives in said selected parity group; means (140) for reserving one or more of said plurality of disk drives as backup disk drives, which backup disk drives are shared in common by said two or more parity groups.
Claim 3
Dependent Claim
85 words
The system (100) of claim 1 further including: means (101, 140) for identifying one of said disk drives in said subset that fails to function; and means (140, 145, 313, 314, 301, 307, 308, 121, 141-*) responsive to said identifying means for switchably connecting one of said backup disk drives in place of said identified failed disk drive; means (301, 302, 111, 121, 141-*, 130-*) for reconstructing the segment of said data file written on said identified failed disk drive, using said associated parity data.
Claim 4
Dependent Claim
30 words
The system (100) of claim 2 further including: means (301, 302, 111, 121, 141-*) for writing said reconstructed segment of said data file on to said one backup disk drive.
Claim 5
Dependent Claim
42 words
The system (100) of claim 2 wherein said reconstructing means (301, 302, 111, 121, 141-*, 130-*) includes: means (301) for generating said segment written on said identified failed disk drive using said associated parity data and the remainder of said data file.
Claim 6
Dependent Claim
40 words
The system (100) of claim 1 wherein said writing means (161, 101, 111, 121, 141-*) includes: means (301) for dividing said data file into two or more segments; and means (301) for generating parity data for said segmented data file.
Claim 7
Dependent Claim
49 words
The system (100) of claim 5 wherein said writing means (161, 101, 111, 121, 141-*) further includes: means (301-308, 111, 121, 141-*) for writing each of said segments and said parity data on to a different one of said two or more disk drives in said selected parity group.
Claim 8
Dependent Claim
39 words
The system (100) of claim 1 further including: means (401, 411-414, 421-424, 145, 101-104) for maintaining data indicative of the correspondence between said data file and the identity said two or more disk drives in said selected parity group.
Claim 9
Dependent Claim
38 words
The system (100) of claim 1 further including: means (101, 111, 121, 141-*, 130-*) responsive to a request for said data file from one of said associated data processing devices for reconstruct said segments of said data file.
Claim 10
Dependent Claim
31 words
The system (100) of claim 8 further including: means (261, 143) responsive to said reconstructing means for transmitting said concatenated segments of said data file to said requesting data processing device.
Claim 11
Independent Claim
152 words
A method of storing data files for data processing devices on an associated disk memory system that includes a plurality of disk drives comprising the steps of: assigning a subset of said plurality of disk drives into two or more parity groups, each parity group consisting of two or more disk drives, the size of the parity group being one of at least two different parity group sizes in said two or more parity groups; selecting, in response to the receipt of a data file from said processing devices, one of said parity groups to store said received data file thereon; writing said received data file and parity data associated with said received data file across said two or more disk drives of said selected parity group; reserving one or more of said plurality of disk drives as backup disk drives, said backup disk drives shared in common by said parity groups.
Claim 12
Independent Claim
152 words
A method of storing data files for data processing devices on an associated disk memory system that includes a plurality of disk drives comprising the steps of: assigning a subset of said plurality of disk drives into two or more parity groups, each parity group consisting of two or more disk drives, the size of the parity group being one of at least two different parity group sizes in said two or more parity groups; selecting, in response to the receipt of a data file from said processing devices, one of said parity groups to store said received data file thereon; writing said received data file and parity data associated with said received data file across said two or more disk drives of said selected parity group; reserving one or more of said plurality of disk drives as backup disk drives, said backup disk drives shared in common by said parity groups.
Claim 13
Dependent Claim
58 words
The method of claim 10 further including the step of: identifying one of said disk drives in said subset that fails to function; switchably connecting one of said backup disk drives in place of said identified failed disk drive; reconstructing the segment of said data file written on said identified failed disk drive, using said associated parity data.
Claim 14
Dependent Claim
25 words
The method of claim 11 further including the step of: writing said reconstructed segment of said data file on to said one backup disk drive.
Claim 15
Dependent Claim
41 words
The method of claim 11 wherein said step of reconstructing includes the steps of: identifying said failed disk drive; and generating said segment written on said failed disk drive using said associated parity data and the remainder of said data file
Claim 16
Dependent Claim
32 words
The method of claim 11 wherein said step of writing includes the steps of: dividing said data file into one or more segments; and generating parity data for said segmented data file.
Claim 17
Dependent Claim
36 words
The method of claim 14 wherein said step of writing further includes the step of: writing each of said segments and said parity data on to a different one of said two or more disk drives.
Claim 18
Dependent Claim
29 words
The method of claim 10 further including the step of: maintaining data indicative of the correspondence between said data file and the identity said two or more disk drives.
Claim 19
Dependent Claim
34 words
The method of claim 10 further including the step of: concatenating, in response to a request for said data file from one of said associated data processing devices, said segments of said data file.
Claim 20
Dependent Claim
24 words
The method of claim 17 further including the step of: transmitting said concatenated segments of said data file to said requesting data processing device.
Claim 21
Dependent Claim
171 words
A disk memory system (100) for storing data files for associated data processing devices comprising a plurality of disk drives (130-0 to 130-M); means (140) for receiving one or more of said plurality of disk drives as backup disk drives, which backup disk drives are shared in common by said parity groups; means (140) for assigning a subset of said disk drives into two or more parity groups, each parity group consisting of two or more disk drives, the size of the parity group being one of at least two different parity group sizes in said two or more parity groups; means (101) responsive to the receipt of one of said data files from said associated data processing devices for selecting one of said parity groups to store said received data file thereon; means (161, 101, 111, 121, 141-*) responsive to said selecting means for writing said received data file and parity data associated with said received data file across said two or more disk drives in said selected parity group.
Claim 22
Dependent Claim
171 words
A disk memory system (100) for storing data files for associated data processing devices comprising a plurality of disk drives (130-0 to 130-M); means (140) for receiving one or more of said plurality of disk drives as backup disk drives, which backup disk drives are shared in common by said parity groups; means (140) for assigning a subset of said disk drives into two or more parity groups, each parity group consisting of two or more disk drives, the size of the parity group being one of at least two different parity group sizes in said two or more parity groups; means (101) responsive to the receipt of one of said data files from said associated data processing devices for selecting one of said parity groups to store said received data file thereon; means (161, 101, 111, 121, 141-*) responsive to said selecting means for writing said received data file and parity data associated with said received data file across said two or more disk drives in said selected parity group.
Claim 23
Dependent Claim
83 words
The system (100) of claim 19 further including: means (101, 140) for identifying one of said two or more disk drives in said parity group that fails to function; means (140, 145, 313, 314, 301, 307, 308, 121, 141-*) for switchably connecting one of said backup disk drives in place of said identified failed disk drive; means (301, 302, 111, 121, 141-*, 130-*) for reconstructing the segment of said data file written on said identified failed disk drive, using said associated parity data.
Claim 24
Dependent Claim
30 words
The system (100) of claim 20 further including: means (301, 302, 111, 121, 141-*) for writing said reconstructed segment of said data file on to said one backup disk drive.
Claim 25
Dependent Claim
42 words
The system (100) of claim 20 wherein said reconstructing means (301, 302, 111, 121, 141-*, 130-*) includes: means (301) for generating said segment written on said identified failed disk drive using said associated parity data and the remainder of said data file.
Claim 26
Dependent Claim
40 words
The system (100) of claim 21 wherein said writing means (161, 101, 111, 121, 141-*) includes: means (301) for dividing said data file into one or more segments; and means (301) for generating parity data for said segmented data file.
Claim 27
Dependent Claim
49 words
The system (100) of claim 23 wherein aid writing means (301, 302, 111, 121, 141-*) further includes: means (301-308, 111, 121, 141-*) for writing each of said segments and said parity data on to a different one of said two or more disk drives in said selected parity group.
Claim 28
Dependent Claim
40 words
The system (100) of claim 19 further including: means (401, 411-414, 421-424, 145, 101-104) for maintaining data indicative of the correspondence between said received data file and the identity said two or more disk drives in said selected parity group.
Claim 29
Dependent Claim
39 words
The system (100) of claim 19 further including means (161, 101, 111, 121, 141-*, 130-*) responsive to a request for said data file from one of said associated data processing devices for concatenating said segments of said data file.
Claim 30
Dependent Claim
31 words
The system (100) of claim 26 further including: means (261, 143) responsive to said concatenating means for transmitting said concatenated segments of said data file to said requesting data processing device.
Claim 31
Independent Claim
155 words
A method of storing data files on a disk memory system that includes a plurality of disk drives, for an associated data processing devices comprising the steps of: reserving one or more of said plurality of disk drives as backup disk drives, which backup disk drives are shared in common by said parity groups; assigning a subset of said disk drives into two or more parity groups, each said parity group consisting of two or more disk drives, the size of the parity group being one of at least two different parity group sizes in said two or more parity groups; selecting one of said parity groups in response to the receipt of a data file from said associated data processing devices for storing said received data file thereon; writing said received data file and parity data associated with said received data file across said two or more disk drives in said selected parity group.
Claim 32
Independent Claim
155 words
A method of storing data files on a disk memory system that includes a plurality of disk drives, for an associated data processing devices comprising the steps of: reserving one or more of said plurality of disk drives as backup disk drives, which backup disk drives are shared in common by said parity groups; assigning a subset of said disk drives into two or more parity groups, each said parity group consisting of two or more disk drives, the size of the parity group being one of at least two different parity group sizes in said two or more parity groups; selecting one of said parity groups in response to the receipt of a data file from said associated data processing devices for storing said received data file thereon; writing said received data file and parity data associated with said received data file across said two or more disk drives in said selected parity group.
Claim 33
Dependent Claim
61 words
The method of claim 28 further including the step of: identifying one of said disk drives in said selected parity group that fails to function; switchably connecting one of said backup disk drives in place of said identified failed disk drive reconstructing the segment of said received data file written on said identified failed disk drive, using said associated parity data.
Claim 34
Dependent Claim
25 words
The method of claim 29 further including the step of: writing said reconstructed segment of said data file on to said one backup disk drive.
Claim 35
Dependent Claim
41 words
The method of claim 28 wherein said step of reconstructing includes the steps of: identifying said failed disk drive; and generating said segment written on said failed disk drive using said associated parity data and the remainder of said data file.
Claim 36
Dependent Claim
32 words
The method of claim 28 wherein said step of writing includes the steps of: dividing said data file into two or more segments; and generating parity data for said segmented data file.
Claim 37
Dependent Claim
36 words
The method of claim 32 wherein said step of writing further includes the step of: writing each of said segments and said parity data on to a different one of said two or more disk drives.
Claim 38
Dependent Claim
29 words
The method of claim 28 further including the step of: maintaining data indicative of the correspondence between said data file and the identity said two or more disk drives.
Claim 39
Dependent Claim
34 words
The method of claim 28 further including the step of: concatenating, in response to a request for said data file from one of said associated data processing devices, said segments of said data file.
Claim 40
Dependent Claim
24 words
The method of claim 35 further including the step of: transmitting said concatenated segments of said data file to said requesting data processing device.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1994-01-28 | 1994-07-30 | 1995-01-29 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1998-01-28 | 1998-07-30 | 1999-01-29 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2002-01-28 | 2002-07-30 | 2003-01-29 | $7700.00 | Window Closed / Lapsed |