Patent ID: 6904498

Claim:
A method of updating data stored in a disk storage array coupled to a host bus using only a single buffer, the method comprising the steps of: initializing a buffer memory for temporary data storage; initializing a write mask for storing indicia of updated blocks of a current stripe of data; writing a block of updated data from the host bus into the buffer memory; storing in the write mask an indication of which block of updated data was written from the host bus into the buffer memory; repeating said writing and storing steps at least zero times; reading the current stripe of data from the disk storage array; writing to the buffer memory only such blocks of the current stripe that are not indicated in the write mask as having been updated by the said writing updated data from the host bus to the buffer memory, thereby forming a complete, updated stripe of data in the buffer memory; and then writing the complete, updated stripe of data of the buffer memory into the disk storage array; and further comprising initializing at least a second buffer memory without deleting the updated stripe of data stored in the first buffer memory, thereby forming a data cache to enable subsequent access to the updated data without requiring a disk storage array access; and still further comprising forming a cache control table for managing a plurality of buffer memories, each maintaining one stripe of updated data so as to enable subsequent access to the updated data without requiring a disk storage array access, and wherein the cache control table implements the write mask for each stripe buffer.