Patent US3250967A successfully refreshed from Google Patents.
US5309451A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Data and parity prefetching for redundant arrays of disk drives
Assignee: Hewlett Packard Development Co LP
•
Filing: 1992-08-12
•
Granted: 1994-05-03
•
Expires: 2012-08-12
Abstract
Abstract A method for prefetching the data and parity blocks for generating parity data of a stripe. The method uses a low and high thresholds marker indicative of a first and second level of fullness of the cache to determine whether or not to prefetch the data and parity blocks. If the cache is filled to a level exceeding the first level of fullness, the data and parity blocks are prefetched for any blocks to be written to the disk drive between the low and high threshold. The data and parity blocks are read from the disk drive at a lower processing priority in anticipation of the writing of the block.
Inventors
- 👤 Eric S. Noya
- 👤 Randy M. Arnott
- 👤 Mitchell N. Rosich
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-31 23:25
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0862; G06F12/0866; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1008; G06F11/1012; G06F2212/00; G06F2212/31; G06F2212/311
Claims Analysis
Total Claims: 12
Claim 1
Independent Claim
186 words
An apparatus for prefetching data from a plurality of disk drives, each of the plurality of disk drives organized into a plurality of disk blocks, the plurality of disk blocks further organized into a plurality of stripes, each of the plurality of stripes including at least one disk block from each of the plurality of disk drives, each of the plurality of stripes further including a parity disk block storing parity data generated from the data stored in the other disk blocks of the stripe, the apparatus comprising: memory means for storing data, said memory means partitioned into memory blocks compatible with the disk block organization of the plurality of disk drives; means for maintaining said memory blocks in a least recently used (LRU) order; means for generating a low threshold signal in response to a first predetermined number of said memory blocks being filled with data; and means, responsive to said low threshold signal, for starting a prefetch procedure to read disk blocks associated with a predetermined stripe, said predetermined stripe including at least one disk block to be overwritten by a LRU memory block.
Claim 2
Independent Claim
186 words
An apparatus for prefetching data from a plurality of disk drives, each of the plurality of disk drives organized into a plurality of disk blocks, the plurality of disk blocks further organized into a plurality of stripes, each of the plurality of stripes including at least one disk block from each of the plurality of disk drives, each of the plurality of stripes further including a parity disk block storing parity data generated from the data stored in the other disk blocks of the stripe, the apparatus comprising: memory means for storing data, said memory means partitioned into memory blocks compatible with the disk block organization of the plurality of disk drives; means for maintaining said memory blocks in a least recently used (LRU) order; means for generating a low threshold signal in response to a first predetermined number of said memory blocks being filled with data; and means, responsive to said low threshold signal, for starting a prefetch procedure to read disk blocks associated with a predetermined stripe, said predetermined stripe including at least one disk block to be overwritten by a LRU memory block.
Claim 3
Dependent Claim
39 words
The apparatus as in claim 1 wherein said disk blocks associated with said predetermined stripe include the parity disk block of said predetermined stripe and said at least one disk block to be overwritten by said LRU memory block.
Claim 4
Dependent Claim
18 words
The apparatus as in claim 1 further including means for marking said LRU memory block as being prefetched.
Claim 5
Dependent Claim
95 words
The apparatus as in claim 1 further including means for generating a high threshold signal in response to a second predetermined number of said memory blocks being filled with data, said second number being greater than said first number; and means for generating parity data from said LRU memory block, said at least one disk block to be overwritten, and the parity disk block; and means for storing said parity data in a parity memory block; and means for writing said LRU memory block and said parity memory block to said plurality of disk drives.
Claim 6
Dependent Claim
38 words
The apparatus as in claim 1 further including means for reading disk blocks associated with a second predetermined stripe, said second predetermined stripe including at least one disk block to be overwritten by a next LRU memory block.
Claim 7
Independent Claim
185 words
A method for prefetching data from a plurality of disk drives, each of the plurality of disk drives organized into a plurality of disk blocks, the plurality of disk blocks further organized into a plurality of stripes, each of the plurality of stripes including at least one disk block from each of the plurality of disk drives, each of the plurality of stripes further including a parity disk block storing parity data generated from the data stored in the other disk blocks of the stripe, the method comprising the steps of; storing data in a memory means, said memory means partitioned into memory blocks compatible with the disk block organization of the plurality of disk drives; maintaining said memory blocks in a least recently used (LRU) order; generating a low threshold signal in response to a first predetermined number of said memory blocks being filled with data; and starting, in response to said low threshold signal, a prefetch procedure to read disk blocks associated with a predetermined stripe, said predetermined stripe including at least one disk block to be overwritten by a LRU memory block.
Claim 8
Independent Claim
185 words
A method for prefetching data from a plurality of disk drives, each of the plurality of disk drives organized into a plurality of disk blocks, the plurality of disk blocks further organized into a plurality of stripes, each of the plurality of stripes including at least one disk block from each of the plurality of disk drives, each of the plurality of stripes further including a parity disk block storing parity data generated from the data stored in the other disk blocks of the stripe, the method comprising the steps of; storing data in a memory means, said memory means partitioned into memory blocks compatible with the disk block organization of the plurality of disk drives; maintaining said memory blocks in a least recently used (LRU) order; generating a low threshold signal in response to a first predetermined number of said memory blocks being filled with data; and starting, in response to said low threshold signal, a prefetch procedure to read disk blocks associated with a predetermined stripe, said predetermined stripe including at least one disk block to be overwritten by a LRU memory block.
Claim 9
Dependent Claim
36 words
The method as in claim 6 further including the steps of reading the parity disk block of said predetermined stripe, and reading said at least one disk block to be overwritten by said LRU memory block.
Claim 10
Dependent Claim
19 words
The method as in claim 6 further including the step of marking said LRU memory block as being prefetched.
Claim 11
Dependent Claim
90 words
The method as in claim 6 further including the step of generating a high threshold signal in response to a second predetermined number of said memory blocks being filled with data, said second number being greater than said first number; and generating parity data from said LRU memory block, said at least one disk block to be overwritten, and the parity disk block; and storing said parity data in a parity memory block; and writing said LRU memory block and said parity memory block to said plurality of disk drives.
Claim 12
Dependent Claim
36 words
The apparatus as in claim 6 further including reading disk blocks associated with a second predetermined stripe, said second predetermined stripe including at least one disk block to be overwritten by a next LRU memory block.
References Cited (Backward Citations)
US4437155A
Cited
US4489378A
Cited
US4636946A
Cited
US5109500A
Cited
US4972364A
Cited
US4972316A
Cited
US4882642A
Cited
US5109485A
Cited
US5163131A
Cited
US5124987A
Cited
US5263145A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1997-05-02 | 1997-11-01 | 1998-05-03 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2001-05-02 | 2001-11-01 | 2002-05-03 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2005-05-02 | 2005-11-01 | 2006-05-03 | $7700.00 | Window Closed / Lapsed |