Next: About this document
Up: No Title
Previous: Implementing file sharing
Servicing requests to read/write data from/to disk. Intention is to order
pending requests with respect to present position on disk, to minimise
seek and/or latency times (see scheduling in processes/CPU).
- No re-ordering of requests : FIFO (First In first out) or
first come first serve.
Implies random seek patterns (Ok for lightly loaded disks, but poor performance for heavy loads).
Fair
- Order according to seek time : SSTF (Shortest Seek time first)
Order requests based on shortest distance from current head position
Discrimination against innermost and outermost tracks (hence, unpredictable and unfair
performance)
- Scan Scheduling : Choose requests which result in shortest seek time in
preferred direction.
Change direction only when reached outermost (innermost) cylinder (or when no further
requests can be serviced in preferred direction)
Most common scheduling algorithm
Long delays for requests at outer locations
- N-Step Scan : As for scan scheduling, but services only requests waiting when a
sweep began. Requests arriving during a sweep are serviced on return sweep.
- C Scan : Service requests in 1 direction ONLY. When reached innermost request,
jump to outermost request
- Rotational Optimisation : Once head reaches a track, service requests for that track
in rotational order
![figure250](img12.gif)
Figure 11: Disk Scans
For Scans : Request queue : 98, 183, 37,122,14,124,65,67 (FIFO)
When handling request 14, new requests arrive for 50, 70, 100 (long delay before
183 is serviced) (SSTF)
Head starts at 53 ; direction towards 0 (Scan)
Requests 80, 140 arrive when head moving outwards (N-Step Scan)
Head starts at 53; direction outwards (C Scan)
![figure257](img13.gif)
Figure: Disk Scans
Omer F Rana
Sat Feb 15 19:06:41 GMT 1997