Disk control system and method
First Claim
1. A disk control system that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data to a data stripe as a write area composed of a plurality of disk apparatuses, the system comprising:
- means, in response to said write request, for sequentially writing data blocks on empty areas of an assigned target data stripe of data areas provided on said plurality of disks, in such a manner that at least one data block is written at a time;
means, in response to said write request, for writing said logical addresses from said upper file system on data managing areas provided on the plurality of disks, as logical-address log information; and
means for notifying, in response to the write request from said upper file system, the upper file system that the write has been completed, after said data and said logical-address log information have been completely written.
1 Assignment
0 Petitions
Accused Products
Abstract
In a disk control system having a RAID controller for continuously writing data on a data stripe composed of a plurality disk apparatus, in response to a write request, data blocks are sequentially written on empty areas of a write target data stripe on the plurality of disks in such a manner that at least one data block is written at a time. Further, in response to the write request, logical addresses having address values prior to address translation are written on logical address log areas on the plurality of disks, as logical-address log information. An upper file system is notified that the write has been completed after the data and the logical-address log information have been completely written.
-
Citations
29 Claims
-
1. A disk control system that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data to a data stripe as a write area composed of a plurality of disk apparatuses, the system comprising:
-
means, in response to said write request, for sequentially writing data blocks on empty areas of an assigned target data stripe of data areas provided on said plurality of disks, in such a manner that at least one data block is written at a time;
means, in response to said write request, for writing said logical addresses from said upper file system on data managing areas provided on the plurality of disks, as logical-address log information; and
means for notifying, in response to the write request from said upper file system, the upper file system that the write has been completed, after said data and said logical-address log information have been completely written. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A disk control system that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data on a data stripe as a write area composed of a plurality of disk apparatuses, the system comprising:
-
means for writing a plurality of block data corresponding to a plurality of write requests, to a write buffer provided in a main memory;
data write means for responding to said plurality of write requests to simultaneously write all the plurality of data blocks stored in said write buffer on empty areas of an assigned target data stripe of data areas provided on said plurality of disks;
log write means for simultaneously writing said logical addresses from said upper file system corresponding to said plurality of block data, on data areas provided on said plurality of disks, as logical-address log information; and
means for notifying, with respect to the write requests from said upper file system, the upper file system that the writes have been completed, after said data and said logical-address log information have been completely written. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A disk control system that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data on a data stripe as a write area composed of a plurality of disk apparatuses, the system comprising:
-
means, in response to said write request for sequentially writing data blocks to empty areas of an assigned target data stripe of data areas provided on said plurality of disks, in such a manner that at least one data block is written at a time;
means, in response to said write request for writing said logical addresses from said upper file system, write data sizes, and checksums of write data to logical-address areas provided on said plurality of disks, as logical-address log information; and
means for notifying, in response to the write request from said upper file system, the upper file system that the write has been completed, after said data and said logical-address log information have been completely written. - View Dependent Claims (21)
-
-
22. A disk control system that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data on a data stripe as a write area composed of a plurality of disk apparatuses, the system comprising:
-
means, in response to said write request, for writing said logical addresses from the upper file system, write data sizes, and checksums of data written to a logical-address log area provided on said plurality of disks, as logical-address log information;
means, in response to said write request, for sequentially writing data blocks on empty areas of an assigned target data stripe of data areas provided on the plurality of disks, in such a manner that at least one data block is written at a time; and
means for notifying, in response to the write request from said upper file system, the upper file system that the write has been completed, after said logical-address log information has been completely written in the logical-address log area. - View Dependent Claims (23, 25)
-
-
24. A disk control system that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data on a data stripe as a write area composed of a plurality of disk apparatuses, the system comprising:
-
means, in response to said write request, for recording flags indicative of validity or invalidity, stripe ID numbers, and write time stamps for final data in header sections of logical address log areas provided on the plurality of disks, and write time stamps for at least one block data processed by the write request, at least one logical address, and at least one checksum, to entry sections of said logical-address log areas as logical-address log information;
means, in response to said write request, for sequentially writing data blocks on empty areas of an assigned target data stripe of data areas provided on said plurality of disks, in such a manner that at least one data block is written at a time; and
means, if the system fails during a write, for checking whether or not a checksum value being written on said logical-address log area of a stripe being subjected to the write process and for which a valid flag has been set equals a checksum value determined from the data written on said data area, and for treating the data as valid if these checksum values are equal, while determining that the write has not been completed and discarding the data if these checksum values are unequal.
-
-
26. A disk control method that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data to a data stripe as a write area composed of a plurality of disk apparatuses, the method comprising:
-
responding to said write request to sequentially write data blocks on empty areas of an assigned target data stripe of data areas provided on said plurality of disks, in such a manner that at least one data block is written at a time;
responding to said write request to write said logical addresses from said upper file system on data managing areas provided on the plurality of disks, as logical-address log information; and
notifying, in response to the write request from said upper file system, the upper file system that the write has been completed, after said data and said logical-address log information have been completely written.
-
-
27. A disk control method that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data on a data stripe as a write area composed of a plurality of disk apparatuses, the method comprising:
-
writing a plurality of block data corresponding to a plurality of write requests, in a write buffer provided in a main memory;
responding to said plurality of write requests to simultaneously write all the plurality of data blocks stored in said write buffer on empty areas of an assigned target data stripe of data areas provided on said plurality of disks;
simultaneously writing all said logical addresses from said upper file system corresponding to said plurality of block data, on data managing areas provided on said plurality of disks, as logical-address log information; and
notifying, with respect to the write requests from said upper file system, the upper file system that the writes have been completed, after said data and said logical-address log information have been completely written.
-
-
28. A disk control method that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data on a data stripe as a write area composed of a plurality of disk apparatuses, the method comprising:
-
responding to said write request to sequentially write data blocks on empty areas of an assigned target data stripe of data areas provided on said plurality of disks, in such a manner that at least one data block is written at a time;
responding to said write request to write said logical addresses from said upper file system, write data sizes, and checksums of write data on a logical-address log area provided on said plurality of disks, as logical-address log information; and
notifying, in response to the write request from said upper file system, the upper file system that the write has been completed, after said data and said logical-address log information have been completely written.
-
-
29. A disk control method that responds to a write request from an upper file system to translate logical addresses into physical ones and then continuously write write-requested data on a data stripe as a write area composed of a plurality of disk apparatuses, the method comprising:
-
responding to said write request to record flags indicative of validity or invalidity, stripe ID numbers, and write time stamps for final data in header sections of logical address log areas provided on the plurality of disks, and write time stamps for at least one block data processed by the write request, at least one logical address, and at least one checksum, on entry sections of said logical-address log areas as logical-address log information;
responding to said write request to sequentially write data blocks on an empty area of an assigned target data stripe of data areas provided on said plurality of disks, in such a manner that at least one data block is written at a time; and
if the system fails during a write, checking whether or not a checksum value being written on said logical-address log area of a stripe being subjected to the write process and for which a valid flag has been set is equal to a checksum value determined from the data written on said data area, and treating the data as valid if these checksum values are equal, while determining that the write has not been completed and discarding the data if these checksum values are unequal.
-
Specification