Why can't RAID 0 utilise all disk space on two different sized disks?

The reason for size being limited to the size of the smallest disk has to do with the fact that stripes are written "alternately" and must be the same size.

In a two disk system, all odd stripes are on one disk, the even ones on the other. Writes alternate between disks, odd/even/odd/even/...

Since stripes must be the same size, and paired (for two disks), you are limited to a maximum usable space of 2 * (size of smallest disk).


You can use the remaining space. You can create a volume using the remaining space, or even use it as part of another RAID. However, using this extra space will degrade the performance that RAID 0 gives you, since two different processes might be trying to access the same physical controller and disk.

Why cant you add this extra space to the original RAID? Well, without going into to much detail, its because of the algorithms RAIDs use. RAID 0 writes to the first disk in the RAID then the next. This increases performance, as it doesnt have to wait for the previous disk to finish reading or writing. If the 250 GB in your post was used, the majority of the write would be to the first disk, pretty much eliminating any performance gain.

RAID might not be the solution you are looking for, if you want to use all the space of the drives you should be spanning volumes. Spanning lets you take many volumes and concatenate them together in one big volume. Spanning offers no performance increase or redundancy.