1. Field of the Invention
The present invention relates to the use of a software-controlled redundant array of independent disks (software RAID), and more specifically relates to dealing with a disk failure in a software RAID system.
2. Background of the Related Art
A redundant array of independent disks (typically referred to by the acronym RAID) refers generally to a group of computer data storage schemes that can divide and replicate data among multiple data storage devices, such as hard disk drives. An implementation of RAID may take the form of hardware RAID or software RAID. Hardware RAID uses dedicated hardware to control the array of disks. This hardware component may be referred to as a dedicated RAID controller. In software RAID, by contrast, the functions required to implement the RAID array are preformed by the system processor using special software routines. Since management of the array is a low-level activity that must be performed in support of other software that runs on processor, software RAID is usually implemented by the installed operating system and drivers which emulate a dedicated hardware RAID controller.
One disadvantage of a software RAID implementation is that a hardware failure occurring in the boot portion of the source disk will prevent the operating system from even loading. Accordingly, the system will become unusable until a system administrator manually restores the system by either replacing the damaged disk or revising the code in the Basic Input/Output System (BIOS). Either approach to restoring the system results in significant downtime and expense.