Patent US5388108A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5388108A Expired / Lapsed US ⏱️ 0.0 years remaining

Delayed initiation of read-modify-write parity operations in a raid level 5 disk array

Assignee: Taiwan Semiconductor Manufacturing Co TSMC Ltd
•
Filing: 1992-10-23
•
Granted: 1995-02-07
•
Expires: 2012-10-23
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An improved method for updating data and parity information in a RAID level 4 or 5 disk array employing a read-modify-write (RMW) process for updating data and parity information. During normal RMW operations, the old data and old parity information to be updated are read from disk, new parity is generated, and the new parity information and new data written to disk. The improved RMW method separates the execution of data read and write operations from the execution of parity read, generation and write operations to permit greater efficiency in the utilization of the drives within the array. The method identifies the disk drives containing the data and parity to be updated and places the proper read and write requests into the I/O queues for the identified data and parity drives, scheduling parity operations; i.e. reading old parity information from the parity drive, generating new parity information and writing the new parity information to the parity drive; for execution when best accommodated in the I/O queue for the parity drive, following the read of old data from the data drive.

Inventors

  • 👤 Robert A. DeMoss
  • 👤 Keith B. DuLac

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 23:11
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1076; G06F11/1008

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 124 words
A method for updating data and associated parity information stored upon first and second disk drives, respectively, within a disk array upon the receipt of new data from a host system, said method comprising the steps of: (A) reading old data from said first drive and saving said old data to a first storage buffer; (B) writing said new data to a second storage buffer; (C) replacing said old data residing on said first drive with said new data; (D) issuing a write complete status signal indicating completion of said host write operation to said host system; (E) generating new parity information after the conclusion of step B; (F) replacing said old parity information residing on said second drive with said new parity information.
Claim 2
Independent Claim 124 words
A method for updating data and associated parity information stored upon first and second disk drives, respectively, within a disk array upon the receipt of new data from a host system, said method comprising the steps of: (A) reading old data from said first drive and saving said old data to a first storage buffer; (B) writing said new data to a second storage buffer; (C) replacing said old data residing on said first drive with said new data; (D) issuing a write complete status signal indicating completion of said host write operation to said host system; (E) generating new parity information after the conclusion of step B; (F) replacing said old parity information residing on said second drive with said new parity information.
Claim 3
Dependent Claim 72 words
The method according to claim 1, wherein said step of generating new parity information (step E) includes the step of: reading old parity information from said second drive: and combining said old parity information with said old data and said new data stored within said first and second storage buffers, respectively, to generate new parity information, said new parity information being the product: old data XOR new data XOR old parity information.
Claim 4
Dependent Claim 17 words
The method according to claim 1, wherein said disk array comprises a RAID level 5 disk array.
Claim 5
Independent Claim 183 words
A method for updating data and associated parity information stored upon first and second disk drives, respectively, within a disk array, said method comprising the steps of: (A) reading old data from said first drive and saving said old data to a first storage buffer; (B) writing new data to a second storage buffer; (C) replacing said old data residing on said first drive with said new data; (D) reading old parity information from said second drive after the conclusion of said step of replacing said old data residing on said first drive with said new data (step A) and saving said old parity information to a third storage buffer; (E) reading said old data, said new data and said old parity information from said first, second and third storage buffers, respectively, and combining said old data, said new data and said old parity information to generate new parity information, said new parity information being the product: old data XOR new data XOR old parity information; and (F) replacing said old parity information residing on said second drive with said new parity information.
Claim 6
Independent Claim 183 words
A method for updating data and associated parity information stored upon first and second disk drives, respectively, within a disk array, said method comprising the steps of: (A) reading old data from said first drive and saving said old data to a first storage buffer; (B) writing new data to a second storage buffer; (C) replacing said old data residing on said first drive with said new data; (D) reading old parity information from said second drive after the conclusion of said step of replacing said old data residing on said first drive with said new data (step A) and saving said old parity information to a third storage buffer; (E) reading said old data, said new data and said old parity information from said first, second and third storage buffers, respectively, and combining said old data, said new data and said old parity information to generate new parity information, said new parity information being the product: old data XOR new data XOR old parity information; and (F) replacing said old parity information residing on said second drive with said new parity information.
Claim 7
Dependent Claim 50 words
The method according to claim 4, further including the step of: issuing a write complete status signal indicating completion of said host write operation to said host system upon the conclusion of said step of replacing said old data residing on said first drive with said new data (step C).
Claim 8
Dependent Claim 204 words
In a disk array employing a read-modify-write method for updating data and parity information stored upon first and second disk drives, respectively, wherein (a) old data and old parity information are read from said first and second disk drives, respectively, (b) new parity information is generated, and (c) new data and said new parity information are written to said first and second disk drives, respectively, the improvement comprising: placing a first I/O request to read said old data from said first disk drive, and a second I/O request to write said new data to said first disk drive, into a first queue associated with said first disk drive, said first queue defining the order of execution of I/O requests for said first disk drive; and placing a third I/O request to read said old parity information from said second disk drive, and a fourth I/O request to write said new parity information to said second disk drive, into a second queue associated with said second disk drive, said second queue defining the order of execution of I/O requests for said second disk drive, said third and fourth I/0 requests being scheduled in said second queue for execution after completion of said first I/O request.
Claim 9
Dependent Claim 204 words
In a disk array employing a read-modify-write method for updating data and parity information stored upon first and second disk drives, respectively, wherein (a) old data and old parity information are read from said first and second disk drives, respectively, (b) new parity information is generated, and (c) new data and said new parity information are written to said first and second disk drives, respectively, the improvement comprising: placing a first I/O request to read said old data from said first disk drive, and a second I/O request to write said new data to said first disk drive, into a first queue associated with said first disk drive, said first queue defining the order of execution of I/O requests for said first disk drive; and placing a third I/O request to read said old parity information from said second disk drive, and a fourth I/O request to write said new parity information to said second disk drive, into a second queue associated with said second disk drive, said second queue defining the order of execution of I/O requests for said second disk drive, said third and fourth I/0 requests being scheduled in said second queue for execution after completion of said first I/O request.
Claim 10
Dependent Claim 88 words
In a disk array employing a read-modify-write method for updating data and parity information stored upon first and second disk drives, respectively, wherein (a) old data and old parity information are read from said first and second disk drives, respectively, (b) new parity information is generated, and (c) new data and said new parity information are written to said first and second disk drives, respectively, the improvement comprising: delaying old parity read, new parity generation, and new parity write procedures until the conclusion of old data read procedures.
Claim 11
Dependent Claim 88 words
In a disk array employing a read-modify-write method for updating data and parity information stored upon first and second disk drives, respectively, wherein (a) old data and old parity information are read from said first and second disk drives, respectively, (b) new parity information is generated, and (c) new data and said new parity information are written to said first and second disk drives, respectively, the improvement comprising: delaying old parity read, new parity generation, and new parity write procedures until the conclusion of old data read procedures.

References Cited (Backward Citations)

US4884271A Cited
US4914656A Cited
US5265098A Cited
US5257362A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-02-06 1998-08-08 1999-02-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-02-06 2002-08-08 2003-02-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-02-06 2006-08-08 2007-02-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag