A Few Things From Chapter 5

Jut a few selected interesting things of from Chapter 5.

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