Multiple Platters
Cylinders
Disks Disk Hardware (1) Disk parameters for the original IBM PC floppy disk and a Western Digital WD 18300 hard disk
Disk Hardware (2) Physical geometry of a disk with two zones A possible virtual geometry for this disk
Disk Formatting (1) A disk sector
An illustration of cylinder skew Disk Formatting (2) An illustration of cylinder skew
Improving Disk Speed No interleaving Single interleaving Double interleaving
Disk Arm Scheduling Algorithms (1) Time required to read or write a disk block determined by 3 factors Seek time Rotational delay Actual transfer time Seek time dominates Error checking is done by controllers
Disk Arm Scheduling Algorithms (2) Initial position Pending requests Shortest Seek First (SSF) disk scheduling algorithm
Disk Arm Scheduling Algorithms (3) The elevator algorithm for scheduling disk requests
Timing of Disk I/O Transfer
RAID Redundant Array of Independent Disks Redundant Array of Inexpensive Disks 6 levels in common use Not a hierarchy Set of physical disks viewed as single logical drive by O/S Data distributed across physical drives Can use redundant capacity to store parity information
Data striped across all disks Round Robin striping Increase speed RAID 0 No redundancy Data striped across all disks Round Robin striping Increase speed Multiple data requests probably not on same disk Disks seek in parallel A set of data is likely to be striped across multiple disks
Data is striped across disks 2 copies of each stripe on separate disks RAID 1 Mirrored Disks Data is striped across disks 2 copies of each stripe on separate disks Read from either Write to both Recovery is simple Swap faulty disk & re-mirror No down time Expensive
Disks are synchronized Very small stripes RAID 2 Disks are synchronized Very small stripes Often single byte/word Error correction calculated across corresponding bits on disks Multiple parity disks store Hamming code error correction in corresponding positions Lots of redundancy Expensive Not used
RAID 3 Similar to RAID 2 Only one redundant disk, no matter how large the array Simple parity bit for each set of corresponding bits Data on failed drive can be reconstructed from surviving data and parity info Very high transfer rates
RAID 4 Each disk operates independently Good for high I/O request rate Large stripes Bit by bit parity calculated across stripes on each disk Parity stored on parity disk
RAID 5 Like RAID 4 Parity striped across all disks Round robin allocation for parity stripe Avoids RAID 4 bottleneck at parity disk Commonly used in network servers N.B. DOES NOT MEAN 5 DISKS!!!!!
Two parity calculations Stored in separate blocks on different disks RAID 6 Two parity calculations Stored in separate blocks on different disks User requirement of N disks needs N+2 High data availability Three disks need to fail for data loss Significant write penalty
RAID 0, 1, 2
RAID 3 & 4
RAID 5 & 6
Data Mapping For RAID 0
Computer Hardware Review Structure of a large Pentium system
Two categories of I/O devices Block devices 521bytes to 32,768 bytes Character devices
Principles of I/O Hardware Some typical device, network, and data base rates
Components of I/O devices I/O devices have components: mechanical component electronic component The electronic component is the device controller may be able to handle multiple devices Controller's tasks convert serial bit stream to block of bytes perform error correction as necessary Copy data available to main memory
Three I/O methods revisited Programmed I/O Interrupt Driven I/O DMA I/O
Steps in printing a string (Make the CPU do all the work) Programmed I/O (1) Steps in printing a string (Make the CPU do all the work)
Direct Memory Access (DMA) Operation of a DMA transfer