Disc Scheduling - PowerPoint PPT Presentation

1 / 65
About This Presentation
Title:

Disc Scheduling

Description:

Western Digital Caviar AC2850. Western Digital Caviar ... Western Digital Caviar 1200BB. IBM Deskstar 120GP. Characteristic. Introduction to Disc Management ... – PowerPoint PPT presentation

Number of Views:605
Avg rating:3.0/5.0
Slides: 66
Provided by: SAND310
Category:

less

Transcript and Presenter's Notes

Title: Disc Scheduling


1
Lecture 7
  • Disc Scheduling

2
Lecture Highlights
  • Introduction to Disc Management
  • Need for disc scheduling
  • Disc Structure
  • Details of disc speed
  • Disc Scheduling Algorithms
  • Parameters Involved
  • Parameter-Performance Relationships
  • Some Sample Results

3
Introduction to Disc Management
  • Disk systems are the major secondary-storage I/O
    device on most computers.
  • One of the functions of the memory manager is to
    manage swapping between main memory and disk when
    main memory is not big enough to hold all the
    processes.
  • The disk, i.e. the secondary storage device, at
    the same time needs effective management in terms
    of disc structure and capacity, the disc writing
    mechanism and the scheduling algorithm choice.

4
Introduction to Disc ManagementNeed for disc
scheduling
  • Requests for disk I/O are generated both by the
    file system and by virtual-memory systems.
  • Since most jobs depend heavily on the disc for
    program loading and input and output files, it is
    important that disk service be as fast as
    possible.
  • The operating system can improve on the average
    disk service time by scheduling the requests for
    disc access.

5
Introduction to Disc ManagementDisc Structure
  • A disc can be viewed as a set of platters on top
    of each other.
  • Each platter has two surfaces.
  • Each surface is divided into tracks which are
    concentric.
  • Each track is further divided into a number of
    sectors.
  • A sector is the smallest unit of information that
    can be read from or written to the disc. In other
    words, a sector is the smallest addressable
    portion of the disc.

Hard Disc Structure
tracks
platters
sectors
spindle
read-write heads
6
Introduction to Disc ManagementDisc Structure
  • To access a sector surface, track and sector
    need to be specified i.e. information on the disc
    is referenced by a multipart address, which
    includes the drive number, the surface, the
    track, and the sector.
  • All the tracks on one drive that can be accessed
    without the heads being moved (the equivalent
    tracks on the different surfaces) constitute a
    cylinder.
  • Each track has equal capacity which means that
    inner tracks are more densely coated. This allows
    the read-write head to have the same velocity
    over each track.

7
Introduction to Disc ManagementDisc Structure
  • Sectors vary from 32 bytes to 4096 bytes
    usually, they are 512 bytes in size.
  • There are 20 to 1500 tracks per disc surface.
  • I/O transfers between memory and disc are
    performed in units of one or more sectors, called
    blocks, to improve I/O efficiency.

8
Introduction to Disc ManagementDetails of disc
speed
  • The disk movement is composed of three parts.
  • The three distinct physical operations, each with
    its own cost, are
  • seek time
  • rotational delay/latency time
  • transfer time.
  • After looking into the three operations in some
    more details, specifications of three disc drives
    from past and present are included to give you a
    realistic idea of the concerned parameters and
    how the technology has been advancing.

9
Details of disc speedSeek Time
  • To access a block on the disk the system must
    first move the head to the appropriate track or
    cylinder.
  • This head movement is called a seek, and the time
    to complete it is seek time.
  • The amount of time spent seeking during a disc
    access depends on how far the arm has to move
    (more explanation follows on the next slide).

10
Details of disc speedSeek Time
  • If we are accessing a file sequentially and the
    file is packed into several consecutive
    cylinders, seeking needs to be done only after
    all the tracks on a cylinder have been processed,
    and then the read/write head needs to move the
    width of only one track (minimum seek time/
    track-to-track seek time).
  • At the other extreme, if we are alternately
    accessing sectors from two files that are stored
    at opposite extremes on a disk, seeking is very
    expensive (could be full stroke/ max seek time).
  • Consequently, if we were to write to an empty
    disc, it is more efficient to do the writing
    cylinder wise as it reduces seek time.

11
Details of disc speedSeek Time
  • Seeking is likely to be more costly in a
    multi-user environment, where several processes
    are contending for use of the disk at one time,
    than in a single-user environment, where disk
    usage is dedicated to one process. This is so
    because in a multi-user environment the different
    users might be seeking files at different
    locations.
  • Since seeking can be very costly, system
    designers often go to great extremes to minimize
    seeking. In an application that merges three
    files, for example, it is not unusual to see the
    three input files stored on three different
    drives and the output file stored on a fourth
    drive, so no seeking need be done as I/O
    operations jump from file to file.

12
Details of disc speedSeek Time
  • Since it is usually impossible to know exactly
    how many tracks will be traversed in a seek, we
    usually try to determine the average seek time
    required for a particular operation.
  • If the starting and ending positions for each
    access is random, it turns out that the average
    seek traverses one-third of the total number of
    cylinders that the read/write head ranges over.
  • Most hard discs available today have average seek
    times of less than 10ms and high performance
    discs have average seek times as low as 7.5ms.

13
Details of disc speedLatency Time / Rotational
Delay
  • Once the head is at the right track, it must wait
    until the desired block rotates under the
    read-write head. This delay is the latency time.
  • Hard discs usually rotate at about 5000 rpm,
    which is one revolution per 12ms.
  • On average, the rotational delay is half a
    revolution, or about 6ms.
  • As in the case of seeking, these averages apply
    only when the read/write head moves from some
    random place on the disc surface to the target
    track. In many circumstances, rotational delay
    can be much less than the average.

14
Details of disc speedTransfer Time
  • Once the data we want is under the read/write
    head, it can be transferred . The transfer time
    is given by the formula
  • Transfer time number of bytes transferred X
    rotation time
  • number of bytes on a track
  • If a disc is sectored, the transfer time for one
    sector depends on the number of sectors on a
    track. For example, if there are 63 sectors per
    track, the time required to transfer one sector
    would be 1/63 of a revolution.

15
Details of disc speedSample specifications of
discs (from past)
16
Details of disc speedSample specifications of
discs (at present)
17
Introduction to Disc ManagementSummary of disc
speed
  • The total time to service a disk request is the
    sum of the seek time, latency time, and transfer
    time.
  • For most disks the seek time dominates, so
    reducing the mean seek time can improve the
    system performance substantially.
  • Thus, the primary concern of disc scheduling
    algorithms is to minimize seek and latency times.

18
Disc Scheduling AlgorithmsFirst Come First Serve
(FCFS)
  • FCFS is the simplest form of disc scheduling
  • This algorithm is easy to program and is
    intrinsically fair.
  • However, it may not provide the best service.
  • The example on the next page illustrates FCFS
    scheduling.

19
Disc Scheduling AlgorithmsFirst Come First Serve
(FCFS)
  • Suppose an ordered disc queue with requests
    involving tracks
  • 98, 183, 37, 122, 14, 124, 65, 67
  • If the read-write head is initially at track 53,
    it will first move to 98, then to 183, 37, 122,
    14, 124, 65 and finally to 67 (as depicted by the
    figure on the next slide).
  • In this case, total head movement 640 tracks.

20
Disc Scheduling AlgorithmsFirst Come First Serve
(FCFS)
21
Disc Scheduling AlgorithmsShortest Seek Time
First (SSTF)
  • The SSTF algorithm selects the request with the
    minimum seek time from the current head position.
  • Since seek time is generally proportional to the
    track difference between the requests, this
    approach is implemented by moving the head to the
    closest track in the request queue.
  • Well use the same sequence of requests as used
    in the FIFO example to illustrate SSTF
    scheduling.

22
Disc Scheduling AlgorithmsShortest Seek Time
First (SSTF)
  • Suppose an ordered disc queue with requests
    involving tracks
  • 98, 183, 37, 122, 14, 124, 65, 67
  • If the read-write head is initially at track 53,
    it will first move to 65, then to 67, 37, 14, 98,
    122, 124, and finally to 183 (as depicted by the
    figure on the next slide).
  • In this case, total head movement 236 tracks.
  • SSTF results in a substantial improvement in
    average disk service but suffers from the
    potential of starvation (specially in case of
    dynamic requests).

23
Disc Scheduling AlgorithmsShortest Seek Time
First (SSTF)
24
Disc Scheduling AlgorithmsSCAN Scheduling
  • The read-write head starts at one end of the
    disc, and moves toward the other end, servicing
    requests as it reaches each track, until it gets
    to the other end of the disc. At the other end,
    the direction of head movement is reversed and
    servicing continues.
  • The head continuously scans the disc from end to
    end.
  • SCAN algorithm is also called the elevator
    algorithm.
  • Lets apply this algorithm to the same example.

25
Disc Scheduling AlgorithmsSCAN Scheduling
  • Well use the same request sequence
  • 98, 183, 37, 122, 14, 124, 65, 67
  • If the read-write head is initially at track 53
    moving towards 0, it will first service 37 and
    14, change directions and service 65, 67, 98,
    122, 124, and finally 183 (as depicted by the
    figure on the next slide).
  • Moreover, if a request arrives in the queue just
    in front of the head, it will be serviced almost
    immediately.
  • However, if a request arrives in the queue just
    behind the head it will have to wait for almost
    two full cycles.

26
Disc Scheduling AlgorithmsSCAN Scheduling
27
Disc Scheduling AlgorithmsC-SCAN Scheduling
  • A variant of SCAN scheduling that is designed to
    provide a more uniform wait time is C-SCAN
    (circular SCAN) scheduling.
  • As does SCAN scheduling C-SCAN scheduling moves
    the head from one end of the disc to the other,
    servicing requests as it goes.
  • When it reaches the other end, however, it
    immediately returns to the beginning of the disc,
    without servicing any requests on the return
    trip.
  • The C-SCAN algorithm essentially treats the disc
    as though it were circular, with the last track
    adjacent to the first one.

28
Disc Scheduling AlgorithmsC-SCAN Scheduling
  • Lets take a look at the processing of our
    request queue 98, 183, 37, 122, 14, 124, 65, 67
    in this case.
  • The order of processing starting at 53 would be
    65, 67, 98, 122, 124, 183, 14 and 37 (as depicted
    by the figure on the next slide).

29
Disc Scheduling AlgorithmsC-SCAN Scheduling
30
Disc Scheduling AlgorithmsLOOK and C-LOOK
Scheduling
  • Both SCAN and C-SCAN scheduling always move the
    head from one end of the disk to the other.
  • In practice, neither algorithm is implemented in
    this way.
  • More commonly, the head is only moved as far as
    the last request in each direction. As soon as
    there are no requests in the current direction,
    the head movement is reversed.
  • These versions of SCAN and C-SCAN scheduling are
    called LOOK and C-LOOK scheduling (see figure on
    next slide).

31
Disc Scheduling AlgorithmsC-LOOK Scheduling
32
Disc Scheduling AlgorithmsSelecting a disc
scheduling algorithm
  • With any scheduling algorithm, performance
    depends heavily on the number and types of
    requests.
  • If the queue seldom has more than one outstanding
    request, then all scheduling algorithms are
    effectively equivalent and FIFO would be a
    reasonable choice.
  • The SCAN and C-SCAN algorithms are more
    appropriate for systems that place a heavy load
    on the disc.

33
Parameter Involved
  • Disc access time (seek time, latency time and
    transfer time)
  • Disc configuration
  • Disc scheduling algorithm
  • Disc writing mechanism (where to rewrite
    processes after processing them in RAM)
  • Disc capacity

34
Parameter InvolvedEffect of Disc Access Time
  • The lower is the value of this parameter, the
    better is the system performance.
  • As explained earlier in the lecture, seek time,
    latency time and transfer time together give the
    disc access time.
  • Since seek is the most expensive of the three
    operations, lowering seek time is crucial to
    system efficiency.

35
Parameter InvolvedEffect of Disc Configuration
  • Disk configuration relates to the structural
    organization of the disc into tracks and sectors.
    Disc surfaces and tracks are determined by
    hardware specifications.
  • However, some operating systems allow the user to
    choose the sector size that influences the number
    of sectors per track. It is an entire sector that
    is read or written when transfer occurs.
  • The number of tracks equals the number of
    cylinders. Reading and writing on one cylinder
    reduces the seek time considerably.
  • This property determines efficiency of many
    computing algorithms and determines inter-record
    and intra-record fragmentation in terms of
    database operations
  • It also affects system performance in operations
    like disc defragmentation ( a rewriting
    mechanism).

36
Parameter InvolvedEffect of Disc Scheduling
Algorithm
  • This is the parameter that primarily determines
    the possible minimization of seek and latency
    times.
  • While FCFS algorithm is easy to program and is
    intrinsically fair, however, it may not provide
    the best service.
  • SSTF scheduling substantially improves the
    average service time but suffers from the
    inherent problem of starvation of certain
    processes in case of continuing/dynamic flow of
    requests.

37
Parameter InvolvedEffect of Disc Scheduling
Algorithm
  • The SCAN, C-SCAN, LOOK and C-LOOK belong to the
    more efficient genre of disk scheduling
    algorithms. These are however, complicated in
    their respective implementations and are more
    appropriate for systems that place a heavy load
    on the disk. With any scheduling algorithm,
    however, performance depends heavily on the
    number and types of requests.
  • In particular, if the queue seldom has more than
    one outstanding request, then all scheduling
    algorithms are effectively equivalent. In this
    case, FCFS scheduling is also a reasonable
    algorithm.

38
Parameter InvolvedEffect of Disk Writing
Mechanism
  • In terms of disk writing mechanism, there is a
    choice between writing back to where the process
    was initially read from and writing back to the
    closest cylinder to the disk head where there is
    an empty sector.
  • While the former is straightforward to implement
    in no way does it attempt an optimization of seek
    time.
  • The latter choice, however, results in increased
    overhead in terms of updating the location of the
    process every time it is written back to the
    disk.

39
Performance Measures
  • Average Waiting Time
  • Average Turnaround Time
  • CPU utilization
  • CPU throughput
  • Percentage seek time
  • This is a new performance measure and it
    quantifies latency cost
  • Calculated as a percentage of total time
  • Percentage latency time
  • This is a new performance measure and it
    quantifies latency cost
  • Calculated as a percentage of total time

40
Disc SchedulingImplementation
  • As part of Assignment 5, youll implement a
    memory manager system including a Disc simulator
    within an operating system satisfying the given
    requirements. (For complete details refer to
    Assignment 5)
  • Well see a brief explanation of the assignment
    in the following slides.

41
Disc SchedulingImplementation Details
  • Following are some specifications of the system
    youll implement
  • Youll use the memory and job mix description in
    Assignment 3
  • Disc access time Seek Latency (job size(in
    bytes) /
  • 500000) ms (Transfer time)
  • ( youll recall that in Assignment 3 we had used
    a constant value of 1ms instead of seek and
    latency times but here the same shall be a
    variable and you could study the effect of it on
    system performance)
  • Disc has eight surfaces, 300 tracks/surface
  • Use your own latency and seek time rates (should
    be a program variable)
  • Make the Disc Scheduling mechanism a variable
    (SSTF/ FIFO / ..etc.)

42
Disc SchedulingImplementation Details
  • After completing the implementation and doing a
    few sample runs, start thinking of this problem
    from an algorithmic design point of view. The
    algorithm/hardware implementation of the memory
    manager/Disc manager involves many parameters,
    some of them include
  • Memory Size
  • Disc access time (transfer time, latency and
    seek)
  • Time slot for RR
  • Compaction thresholds (percentage and hole size)
  • RAM access time
  • (Continued on the next slide)

43
Disc SchedulingImplementation Details
  • Some of the involved parameters (continued from
    the last slide)
  • Fitting algorithm
  • Disc Scheduling algorithm choice (FIFO, SSTF,
    SCAN, LOOK, etc.)
  • Disc structure and capacity (surfaces, tracks,
    etc.)
  • Disc writing mechanism (where to write back
    processed pages)

44
Disc SchedulingImplementation Details
  • The eventual goal would be to optimize several
    (or some) performance measures (criteria) such
    as
  • Average waiting time
  • Average turnaround time
  • Maximum waiting time
  • Maximum turnaround time
  • CPU utilization
  • CPU throughput
  • Memory fragmentation over time
  • Disc fragmentation over time

45
Disc SchedulingImplementation Details
  • After you are done with the assignment, you
    have the opportunity to attempt the following two
    bonus questions
  • Bonus Question 1 Implement the above using a
    paging mechanism (1-level) (I.e. divide each jobs
    to a number of pages, given a fixed page size).
    Implement a page replacement algorithm (or more)
    to decide which pages to replace and to
    anticipate page usage throughout the simulation.
    You have to implement a randomizer to simulate
    page access patterns for different processes. Try
    different dynamic algorithms for deciding on the
    number of memory pages to be assigned to a
    process through the life of a process in the
    system (dynamically).

46
Disc SchedulingImplementation Details
  • Bonus Question 2 Study and analyze the behavior
    of the combined memory system and Disc (the
    performance measures) based on parameter changes
    as above and incorporate the following
    parameters
  • Page Size
  • Page replacement and paging anticipation
    algorithm choice
  • Disc writing algorithm choice (how and where to
    write jobs back to disc)

47
Disc SchedulingSample Screenshots of Simulation
Setting variable parameters
48
Disc SchedulingSample Screenshots of Simulation
Setting variable parameters (contd.)
49
Disc SchedulingSample Screenshots of Simulation
Initial Hard Disc Configuration
50
Disc SchedulingSample Screenshots of Simulation
Initial RAM Configuration
51
Disc SchedulingSample Screenshots of Simulation
Memory manage with disc scheduler in execution
52
Disc SchedulingSample Screenshots of Simulation
Final Performance Measures for the run
53
Disc SchedulingSample tabulated data from
simulation
Algorithm combinations vs. Performance
Measures Fixed Parameters RR Time Slot
2ms Average Seek Time 8ms Simulation Time
3000ms Sector Size 1KB Average Latency Time 4ms
54
Disc SchedulingCorresponding graph for table on
previous slide
55
Disc SchedulingSample tabulated data from
simulation
Average Seek Time vs. Performance Measures (using
FIFO-first fit algorithm combination) Fixed
Parameters RR Time Slot 2ms Simulation Time
3000ms Sector Size 1KB Average Latency Time
4ms
56
Disc SchedulingCorresponding graph for table on
previous slide
57
Disc SchedulingSample tabulated data from
simulation
Average Seek Time vs. Performance Measures (using
SSTF-first fit algorithm combination) Fixed
Parameters RR Time Slot 2ms Simulation Time
3000ms Sector Size 1KB Average Latency Time
4ms
58
Disc SchedulingCorresponding graph for table on
previous slide
59
Disc SchedulingSample tabulated data from
simulation
Average Latency Time vs. Performance Measures(for
FIFO-first fit) Fixed Parameters RR Time Slot
2ms Simulation Time 3000ms Sector Size
1KB Average Seek Time 8ms
60
Disc SchedulingCorresponding graph for table on
previous slide
61
Disc SchedulingSample tabulated data from
simulation
Average Latency Time vs. Performance Measures(for
SSTF-first fit) Fixed Parameters RR Time Slot
2ms Simulation Time 3000ms Sector Size
1KB Average Seek Time 8ms
62
Disc SchedulingCorresponding graph for table on
previous slide
63
Disc SchedulingConclusions from the sample
simulation
  • The average seek time and average latency time
    tend to inversely effect the CPU utilization
    with little effect on other measures.
  • Sector size tends to show no visible effect due
    to non-involvement in any of the deriving factors
    of the system.
  • Increasing the time slot markedly increases the
    CPU utilization and throughput, and decreases the
    average turnaround and average waiting time. All
    these are indicative of the FIFO behavior. Though
    performance measures tend to make increased time
    slot look like a very lucrative proposal,
    associated disadvantages of possible starvation
    of processes apply. As the context switch
    decreases with increasing time quantum, so does
    the percentage seek and latency times. All this
    collectively increases the CPU utilization.

64
Lecture Summary
  • Introduction to Disc Management
  • Need for disc scheduling
  • Disc Structure
  • Details of disc speed
  • Disc Scheduling Algorithms
  • Parameters Involved
  • Parameter-Performance Relationships
  • Some Sample Results

65
Preview of next lecture
  • The following lecture is also the last lecture.
    It will include concluding remarks with a summary
    of the main concepts studied and a parametric
    evaluation.
Write a Comment
User Comments (0)
About PowerShow.com