Patent ID: 7035974

Claim:
A RAID-5 configured storage system comprising: a RAID controller, a non-volatile random access memory (NVRAM) serving as a RAID cache memory, a plurality of physical disks; and at least one logical disk; wherein said storage system is operative to: (1) read data from said logical disk; (2) write data to said logical disk, wherein the writing process comprises (i) reading an old data block and an old parity block from said logical disk or said RAID cache; (ii) forming a new parity block and a new data block by computing an XOR with the new data and the old data block and the old parity block; (iii) updating the logical disk by placing the new data block and the new parity block in the RAID cache or the logical disk, wherein the step of updating the logical disk comprises: (a) finding a buffer of a physical disk number and a physical block number in the RAID cache memory by a search algorithm; (b) allocating in the RAID cache memory a buffer area in the case when the physical disk number and the physical block number cannot be found; and (c) writing data to the allocated buffer area and setting the allocated buffer area as a dirty buffer in the RAID cache memory; (3) flush data from said RAID cache memory to said logical disk at predetermined events; and (4) otherwise perform read/write operations under the control of the RAID controller to the RAID cache memory.