Patent ID: 8291161

Claim:
A method for accessing data in a physical storage-device array comprising a plurality of storage devices, wherein the physical storage-device array has a plurality of sector levels, each sector level containing one sector on each storage device in the array at corresponding addresses across the storage devices, the accessing is a read or a write operation, and the method comprises: (a) receiving a request to access data in the physical storage-device array, the request including a logical storage device identifier corresponding to a first RAID level and a parity rotation index, wherein the first RAID level is RAID-5; (b) deriving, from the logical storage device identifier corresponding to the first RAID level and the parity rotation index, a logical storage device identifier corresponding to a second RAID level, wherein: the second RAID level is RAID-4; and deriving the logical storage identifier corresponding to the second RAID level comprises: (i) if the logical storage device identifier corresponding to the first RAID level is equal to the number of storage devices in the array minus the parity rotation index minus one, then setting the logical storage identifier corresponding to the second RAID level to be the number of storage devices in the array minus one; and (ii) if the logical storage device identifier corresponding to the first RAID level is less than the number of storage devices in the array minus the parity rotation index minus one, then setting the logical storage identifier corresponding to the second RAID level to be the same as the logical storage identifier corresponding to the first RAID level; (c) deriving, from the logical storage device identifier corresponding to the second RAID level, a physical storage device identifier; and (d) accessing the data in the storage device identified by the physical storage device identifier.