Jut a few selected interesting things of from Chapter 5.
- RAID
- Redundant Array of Independent Disks.
- Data is arranged across the several drives to allow for parallel
operation.
- Past level 0, there is also redundant storage to improve reliability.
- Data is broken into strips, groups of which are stripes.
- There are seven different arrangements,
called levels.
- Level 0: Strips are placed on each drive in rotation.
- Allows parallel operation when a multi-strip block is read
or written.
- No redundant storage.
- Not actually part of original RAID paper, which started at 1.
- Level 1: Simply make two copies of everything.
- Parallel operation for reading and writing.
- Multiple writes need not slow things down; also in parallel.
- Good data reliability, at much space cost.
- Level 2: Words split up, one bit per drive.
- Disk read head position is synchronized.
- Words are stored with Hamming codes.
- Uses extra space, but allows correction of bit errors.
- Level 3: Similar to 1, but with a single parity bit.
- Failure of a disk destroys one bit in the word.
- Assumes controller can identify which disk failed.
- Parity system will tell the correct value of that bit.
- Less space than 1, probably not so robust.
- Level 4: Each stripe has a parity strip.
- Somewhat like level 2, but with stripes instead of words.
- Parity stripe is simply the xor of the data strips.
- Failure of a disk destroys one strip, but its value is
the xor of the others.
- Level 5: Same as 4, but distributes the parity strip.
Prevents parity disk becoming a bottleneck.
- Level 6: Same as 5, but each stripe has two parity strips using
different methods.
- Low-level formatting.
- A hard drive must be given a low-level format, which marks out
each sector.
- Preamble includes a recognizable pattern, and also the sector number.
- As the disk rotates, the driver knows where the head is when
it sees the preamble and reads the sector number.
- Once upon a time, users would do a low-level format on a new device;
now it is only done at the factory.
When an OS offers to format, it usually means to write an empty
file system, sometimes called a high-level format.
- The ECC is an "Error-Correcting Code" is set when the sector is written.
It allows some error correction on read.
- There is a difference between unformatted and formatted sizes,
possibly creating confusion.
- Cylinder Skew.
When the head finishes one track, it can move to the next before
reaching its first segment.
- Disk Scheduling.