OS-Disk Scheduling

In multiprogrammed computing systems, many processes may be generating requests for reading and writing disk records. Because these processes sometimes make requests faster than they can be serviced by the moving-head disks, waiting lines or queues build up for each device. Some computing systems simply service these requests on a first-come-first-served (FCFS) basis. Whichever request for service arrives first is serviced first. FCFS is a fair method of allocating service, but when the request rate becomes heavy, FCFS can result in very long waiting times.

FCFS exhibits a random seek pattern in which successive requests can cause time consuming seeks from the innermost to the outermost cylinders. To minimize time spent seeking records, it seems reasonable to order the request queue in some manner other than FCFS. This process is called disk scheduling.



Disk scheduling involves a careful examination of pending requests to determine the most efficient way to service the requests.A disk scheduler examines the positional relationships among waiting requests. The request queue is then reordered so that the requests will be serviced with minimum mechanical motion. 
The two most common types of scheduling are seek optimization and rotation (or latency) optimization.



DESIRABLE CHARACTERISTICS OF DISK SCHEDULING POLICIES:

Several other criteria for categorizing scheduling policies are
  1.  throughput
  2.  mean response time
  3.  variance of response times (ie., predictability)
A scheduling policy should attempt to maximize throughput the number of requests serviced per unit time. A scheduling policy should attempt to minimize the mean response time (or average waiting time plus average service time). Variance is a mathematical measure of how far individual items tend to deviate from the average of the items. Variance to indicate predictability- the smaller the variance, the greater the predictability. We desire a scheduling policy that minimizes variance.
Share this article :
 
Copyright © 2012. Best Online Tutorials | Source codes | Programming Languages - All Rights Reserved