A two-dimensional parity method and system that provides five-disk fault
tolerance in an array of disks, such as a RAID system. In an N.times.M
logical representation of data in an array of disks, the method includes
arranging strips containing data into two groups of stepped parity sets,
the first group organized in a stepped configuration proceeding in one
generally diagonal direction, the second group organized in a stepped
configuration proceeding in another generally diagonal direction. Parites
for respective parity sets in each group are calculated and stored in
respective disks and stripes of the array. The method also includes
arranging strips into horizontal and diagonal parity sets. In the event
of up to five simultaneous disk failures, lost data can be reconstructed
by using the corresponding stored horizontal, diagonal, and stepped
parity information and the data stored on the remaining intact disks.