Operating Systems: Three Easy Pieces Ch. 37
Hard Disk Drives
- the main form of persistent data storage
- The interface
- Consist of a large number of sectors (512 - bytes block)
- Multi-sector operation
- Updating the disk is atomic
- it will either complete in its entirety or it won’t complete at all
- torn write
- Basic Geometry
- Platter
- Circular hard surface
- Each Platter has 2 surfaces
- Spindle
- Connected to motor
- RPM (rotations per minute)
- 7200 ~ 15000 RPM
- Data is encoded on each surface in concrete circle
- Track
- Reading and writing is accomplished by the disk head
- Disk head is attached to disk arm
- Platter
- Latency
- Single-track Latency
- Rotational Delay
- it must just wait for the desired sector to rotate under the disk head
- Rotational Delay
- Multiple Tracks
- Seek Time
- Seek: Move disk arm to correct track
- Acceleration → disk arm gets moving
- Coasting → arm moving as full speed
- Deceleration → arm moves slow down
- Settling → head is carefully positioned
- settling time is significant
- Transfer
- where data is either read from or written to the surface
- Seek Time
- Single-track Latency
- Track Skew
- make sure that sequential reads can be properly serviced even when crossing track boundaries
- When the disk needs time to reposition head
- If there is now skew, the head need to wait for next block which requries whole rotation
- Outer track has more sectors than inner tracks
- More room geometrically
- Multi-zoned disk drives
- Each zone has same number of sectors
- Track buffer
- Cache
- Just small amount of the memory
- Drive has a choice
- acknowledge
- After put the data in its memory
- Write back caching
- write has actually been written to disk
- Write through caching
- After put the data in its memory
- acknowledge
- Dimensional analysis
- RPM
- Cache
- I/O time
- Workload
- Random
- Sequential
- Capcity and performance
- High performance for searching
- Low capacity
- Low performance on searching
- High capacity
- Workload
- Disk Scheduling
- Due to the high cost of I/O
- SSTF: Shortest Seek Time First
- order the queue of I/O request by track
- drive geometry is not available to the host OS
- Nearest-block-first
- drive geometry is not available to the host OS
- Starvation
- order the queue of I/O request by track
- SCAN
- simply moves back and forth across the disk servicing requests in order across the track
- Sweep
- F-SCAN
- freezes the queue to be serviced when it is doing a sweep
- C-SCAN
- Circular SCAN
- sweeps from outer-to-inner, and then resets at the outer track to begin again
- Elevator algorithm → going up and down
- simply moves back and forth across the disk servicing requests in order across the track
- Rotation Cost
- shortest positioning time first, SPTF, SATF is the solution
- I/O merging
- Merge the request, reordering is performed upon the merged request
- Work-conversing
- How long should the system wait before issuing an I/O to disk?
- immediately issue the request to the drive
- anticipatory disk scheduling
- non-work-conserving
- waiting for a new and better request results better performance in average
- How long should the system wait before issuing an I/O to disk?