chapter 7 device management
TRANSCRIPT
![Page 1: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/1.jpg)
Understanding Operating Systems 1
Chapter Seven : Device Management
• System Devices• Sequential Access Storage
Media• Direct Access Storage
Devices• Components of I/O
Subsystem
• Communication Among Devices
• Management of I/O Requests
Paper Storage Media
Magnetic Tape Storage
Magnetic Disk Storage
Optical Disc Storage
![Page 2: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/2.jpg)
Understanding Operating Systems 2
Device Management Functions
• Track status of each device (such as tape drives, disk drives, printers, plotters, and terminals).
• Use preset policies to determine which process will get a device and for how long.
• Allocate the devices.• Deallocate the devices at 2 levels:
– At process level when I/O command has been executed & device is temporarily released
– At job level when job is finished & device is permanently released.
![Page 3: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/3.jpg)
Understanding Operating Systems 3
System Devices
• Differences among system’s peripheral devices are a function of characteristics of devices, and how well they’re managed by the Device Manager.
• Most important differences among devices– Speeds – Degree of sharability.
• By minimizing variances among devices, a system’s overall efficiency can be dramatically improved.
![Page 4: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/4.jpg)
Understanding Operating Systems 4
Dedicated Devices
• Assigned to only one job at a time and serve that job for entire time it’s active. – E.g., tape drives, printers, and plotters, demand this
kind of allocation scheme, because it would be awkward to share.
• Disadvantage -- must be allocated to a single user for duration of a job’s execution.– Can be quite inefficient, especially when device isn’t
used 100 % of time.
![Page 5: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/5.jpg)
Understanding Operating Systems 5
Shared Devices
• Assigned to several processes. – E.g., disk pack (or other direct access storage device)
can be shared by several processes at same time by interleaving their requests.
• Interleaving must be carefully controlled by Device Manager.
• All conflicts must be resolved based on predetermined policies to decide which request will be handled first.
![Page 6: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/6.jpg)
Understanding Operating Systems 6
Virtual Devices
• Combination of dedicated devices that have been transformed into shared devices. – E.g, printers are converted into sharable devices
through a spooling program that reroutes all print requests to a disk.
– Output sent to printer for printing only when all of a job’s output is complete and printer is ready to print out entire document.
– Because disks are sharable devices, this technique can convert one printer into several “virtual” printers, thus improving both its performance and use.
![Page 7: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/7.jpg)
Understanding Operating Systems 7
Sequential Access Storage Media
• Magnetic tape used for secondary storage on early computer systems; now used for routine archiving & storing back-up data.
• Records on magnetic tapes are stored serially, one after other.
• Each record can be of any length. – Length is usually determined by the application program.
• Each record can be identified by its position on the tape.
• To access a single record, tape is mounted & “fast-forwarded” from its beginning until locate desired position.
![Page 8: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/8.jpg)
Understanding Operating Systems 8
Magnetic Tapes
• Data is recorded on 8 parallel tracks that run length of tape.
• Ninth track holds parity bit used for routine error checking.
• Number of characters that can be recorded per inch is determined by density of tape (e.g., 1600 or 6250 bpi).
Parity
••••
• ••
• ••••
Characters
![Page 9: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/9.jpg)
Understanding Operating Systems 9
Storing Records on Magnetic Tapes
• Can store records individually or grouped into blocks. – If individually, each record is separated by a space to indicate its
starting and ending places.
– If blocks, then entire block is preceded by a space and followed by a space, but individual records are stored sequentially within block.
• Interrecord gap (IRG) is gap between records about 1/2 inch long regardless of the sizes of the records it separates.
• Interblock gap (IBG) the gap between blocks of records; still 1/2 inch long.
![Page 10: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/10.jpg)
Understanding Operating Systems 10
Pros & Cons of Blocking
• Fewer I/O operations are needed because a single READ command can move an entire block (physical record that includes several logical records) into main memory.
• Less tape is wasted because size of physical record exceeds size of gap.
• Overhead and software routines are needed for blocking, deblocking, and record keeping.
• Buffer space may be wasted if you need only one logical record but must read an entire block to get it.
![Page 11: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/11.jpg)
Understanding Operating Systems 11
Transfer Rates & Speeds
• Block size set to take advantage of transfer rate.
• Transfer rate -- density of the tape, multiplied by the tape transport speed (speed of the tape)
transfer rate = density * transport speed
• If transport speed is 200 inches per second, at 1600 bpi, a total of 320,000 bytes can be transferred in one second, – Theoretically optimal size of a block is 320,000 bytes.
– Buffer must be equivalent.
![Page 12: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/12.jpg)
Understanding Operating Systems 12
Magnetic Tape Access Times Vary Widely
Benchmarks Access time
Maximum access 2.5 minutes
Average access 1.25 minutes
Sequential access 3 milliseconds
• Variability makes magnetic tape a poor medium for routine secondary storage except for files with very high sequential activity.
![Page 13: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/13.jpg)
Understanding Operating Systems 13
Direct Access Storage Devices (Random Access Storage Devices)
• Direct access storage devices (DASDs)-- any devices that can directly read or write to a specific place on a disk.
• Two major categories: • DASD with fixed read/write heads
• DASD with movable read/write heads.
• Although variance in DASD access times isn’t as wide as with magnetic tape, location of specific record still has a direct effect on amount of time required to access it.
![Page 14: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/14.jpg)
Understanding Operating Systems 14
Fixed-Head Drums
• Magnetically recordable drums.
• Resembles a giant coffee can covered with magnetic film and formatted so the tracks run around it.
• Data is recorded serially on each track by the read/write head positioned over it.
• Fixed-head drums were very fast but also very expensive, and they did not hold as much data as other DASDs.
![Page 15: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/15.jpg)
Understanding Operating Systems 15
Fixed Head Disks
• Fixed-head disks -- each disk looks like a phonograph album.
• Covered with magnetic film that has been formatted, usually on both sides, into concentric circles.
• Each circle is a track. Data is recorded serially on each track by the fixed read/write head positioned over it.
• One head for each track.
Rotation
![Page 16: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/16.jpg)
Understanding Operating Systems 16
Pros & Cons of Fixed Head Disks
• Very fast—faster than movable-head disks.
• High cost.
• Reduced storage space compared to a moveable-head disk– because tracks must be positioned farther apart to accommodate
width of the read/write heads.
![Page 17: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/17.jpg)
Understanding Operating Systems 17
Movable-Head Drums and Disks
• Movable-head drums have only a few read/write heads that move from track to track to cover entire surface of drum. – Least expensive device has only 1 read/write head for entire drum
– More conventional design has several read/write heads that move together.
• One read/write head that floats over the surface of the disk.
• Disks can be individual units (used with many PCs) or part of a disk pack (a stack of disks).
![Page 18: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/18.jpg)
Understanding Operating Systems 18
Cylinders
• It’s slower to fill a disk pack surface-by-surface than to fill it up track-by-track.
• If fill Track 0 of all surfaces, got virtual cylinder of data.– Are as many cylinders as there are tracks.
– Cylinders are as tall as the disk pack.
• To access any given record, system needs:– Cylinder number, so arm can move read/write heads to it.
– Surface number, so proper read/write head is activated.
– Record number, so read/write head know when to begin reading or writing.
![Page 19: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/19.jpg)
Understanding Operating Systems 19
Optical Disc Storage (CD-ROM)
• Optical disc drives uses a laser beam to read and write to multi-layered discs.
• Optical disc drives work in a manner similar to a magnetic disk drive.– Head on an arm that moves forward and backward across the disc.
• Uses a high-intensity laser beam to burn pits (indentations) and lands (flat areas) in disc to represent ones and zeros, respectively.
![Page 20: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/20.jpg)
Understanding Operating Systems 20
Concentric Tracks vs. Spiraling Tracks
• Magnetic disk consists of concentric tracks of sectors and it spins at a constant speed (constant angular velocity). – Because sectors at outside of disk spin faster past read/
write head than inner sectors, outside sectors are much larger than sectors located near center of disk.
• An optical disc consists of a single spiraling track of same-sized sectors running from center to rim of disc. – Allows many more sectors & much more data to fit on
optical disc compared to magnetic disk of same size.
![Page 21: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/21.jpg)
Understanding Operating Systems 21
Measures of Performance for Optical Disc Drives
• Sustained data-transfer rate -- speed at which massive amounts of data can be read from disc.– Measured in bytes per second (such as Mbps).
– Crucial for applications requiring sequential access.
• Average access time -- average time required to move head to a specific place on disc.– Expressed in milliseconds (ms).
• Cache size -- hardware cache acts as a buffer by transferring blocks of data from the disc– Anticipates user may want to reread some recently retrieved info.
– Act as read-ahead buffer, looking for next block of info on disc.
![Page 22: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/22.jpg)
Understanding Operating Systems 22
CD-ROM Technology
• CD-ROM -- first commonly used optical storage DASD.
• Stores very large databases, reference works, complex games, large software packages, system documentation, and user training material.
• CD-ROM jukeboxes (autochangers or libraries) are capable of handling multiple discs and networked to distribute multimedia and reference works to distant user.
![Page 23: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/23.jpg)
Understanding Operating Systems 23
CD-Recordable Technology (CD-R)
• CD-R drives record data on optical discs using a write-once technique.
• WORM (write once, read many).
• Only a finite amount of data can be recorded on each disc and, once data is written, it can’t be erased or modified.
• It has an extremely long shelf life.
![Page 24: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/24.jpg)
Understanding Operating Systems 24
CD-Rewritable Technology (CD-RW)
• CD-RW drives can read a standard CD-ROM, CD-R and CD-RW discs.
• CD-RW discs can be written and rewritten many times by focusing a low-energy laser beam on surface, heating media just enough to erase pits that store data and restoring recordable media to its original state.
• Useful for storing large quantities of data and for sound, graphics, and multimedia applications.
![Page 25: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/25.jpg)
Understanding Operating Systems 25
Digital Video Disc (DVD) Techonolgy
• DVD uses infrared laser to read disc (holds equivalent of 13 CD-ROM discs).
• By using compression technologies, has more than enough space to hold a 2-hour of movie with enhanced audio.
– Single layered DVDs can hold 4.7 GB
– Double-layered disc can hold 8.5 GB on each side of the disc. DVDs are used to store music, movies, and multimedia applications.
• DVD-RAM is a writable technology that uses a red laser to read, modify, and write data to DVD discs.
![Page 26: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/26.jpg)
Understanding Operating Systems 26
Three Factors Contribute To Time Required To Access a File
• Seek time -- time required to position the read/write head on the proper track. (Doesn’t apply to devices with fixed read/write heads.)– Slowest of the three factors
• Search time (rotational delay) -- time it takes to rotate DASD until requested record is under read/write head.
• Transfer time -- when data is actually transferred from secondary storage to main memory.– Fastest.
![Page 27: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/27.jpg)
Understanding Operating Systems 27
Access Time For Fixed-Head Devices
• Fixed-head devices can access a record by knowing its track number and record number.
• Total amount of time required to access data depends on:– Rotational speed is constant within each device (although it varies
from device to device)
– Position of record relative to position of the read/write head.
search time (rotational delay)
+ transfer time (data transfer)
access time
![Page 28: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/28.jpg)
Understanding Operating Systems 28
Example of Access Time For Fixed-Head Devices
• How long will it take to access a record?
• Typically, one complete revolution takes 16.8 ms, so average rotational delay is 8.4 ms.
• Data transfer time varies from device to device, but a typical value is 0.00094 ms per byte– size of record dictates this value.
• For example, it takes 0.094 ms (almost 0.1 ms) to transfer a record with 100 bytes.
![Page 29: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/29.jpg)
Understanding Operating Systems 29
Access Time For Movable-Head Devices
• Movable-head DASDs adds time required to move arm into position over the proper track (seek time).
seek time (arm movement)
search time (rotational delay)
+ transfer time (data transfer)
access time
• Seek time is the longest and several strategies have been developed to minimize it.
![Page 30: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/30.jpg)
Understanding Operating Systems 30
Components of the I/O Subsystem
CPU
Channel 1
Control Unit 1
Channel 2
Control Unit 2
Control Unit 3
Control Unit 4
Disk 1
Disk 2
Disk 3
Tape 1
Tape 2
Tape 3
Tape 4
Disk 4
Disk 5
![Page 31: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/31.jpg)
Understanding Operating Systems 31
I/O Subsystem : I/O Channel
• I/O Channel -- keeps up with I/O requests from CPU and pass them down the line to appropriate control unit. – Programmable units placed between CPU and control unit.
– Synchronize fast speed of CPU with slow speed of the I/O device.
– Make it possible to overlap I/O operations with processor operations so the CPU and I/O can process concurrently.
• Use channel programs that specifies action to be performed by devices & controls transmission of data between main memory & control units.
• Entire path must be available when an I/O command is initiated.
![Page 32: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/32.jpg)
Understanding Operating Systems 32
I/O Subsystem : I/O Control Unit
• I/O control unit interprets signal sent by channel.– One signal for each function.
• At start of I/O command, info passed from CPU to channel:– I/O command (READ, WRITE, REWIND, etc.)
– Channel number
– Address of physical record to be transferred (from or to secondary storage)
– Starting address of a memory buffer from which or into which record is to be transferred
![Page 33: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/33.jpg)
Understanding Operating Systems 33
Device Manager Must
• Know which components are busy and which are free.
• Be able to accommodate requests that come in during heavy I/O traffic.
• Accommodate disparity of speeds between CPU and I/O devices.Handled by “buffering”
records & queueing requests
Solved by structuring interaction between
units
![Page 34: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/34.jpg)
Understanding Operating Systems 34
Communication Among Devices
• Each unit in I/O subsystem can finish its operation independently from others.
• CPU is free to process data while I/O is being performed, which allows for concurrent processing and I/O.
• Success of operation depends on system’s ability to know when device has completed operation. – Uses a hardware flag that must be tested by CPU.
![Page 35: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/35.jpg)
Understanding Operating Systems 35
Hardware Flag Used To Communicate When A Device Has Completed An Operation
• Composed made up of three bits.– Each bit represents a component of I/O subsystem.– One each for channel, control unit, and device.
• Resides in the Channel Status Word (CSW)– In a predefined location in main memory and contains
info indicating status of channel.
• Each bit is changed from zero to one to indicate that unit has changed from free to busy.
![Page 36: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/36.jpg)
Understanding Operating Systems 36
Testing the Flag : Polling or Interrupts
• Polling uses a special machine instruction to test flag.– CPU periodically tests the channel status bit (in CSW).
• Major disadvantage with this scheme is determining how often the flag should be polled. – If polling is done too frequently, CPU wastes time
testing flag just to find out that channel is still busy.
– If polling is done too seldom, channel could sit idle for long periods of time.
![Page 37: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/37.jpg)
Understanding Operating Systems 37
Interrupts
• Use of interrupts is a more efficient way to test flag. • Hardware mechanism does test as part of every machine
instruction executed by CPU. • If channel is busy flag is set so that execution of current
sequence of instructions is automatically interrupted.• Control is transferred to interrupt handler, which resides
in a predefined location in memory.
• Some sophisticated systems are equipped with hardware that can distinguish between several types of interrupts.
![Page 38: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/38.jpg)
Understanding Operating Systems 38
Direct Memory Access (DMA)
• I/O technique that allows a control unit to access main memory directly.
• Once reading or writing begins, remainder of data can be transferred to and from memory without CPU intervention.
• To activate this process CPU sends enough info to control unit to initiate transfer of data
• Then CPU goes to another task while control unit completes transfer independently.
• This mode of data transfer is used for high-speed devices such as disks.
![Page 39: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/39.jpg)
Understanding Operating Systems 39
Buffers
• Buffers are temporary storage areas residing in convenient locations throughout system: main memory, channels, and control units.
• Used extensively to better synchronize movement of data between relatively slow I/O devices & very fast CPU.
• Double buffering --2 buffers are present in main memory, channels, and control units. – While one record is being processed by CPU another can be read
or written by channel
![Page 40: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/40.jpg)
Understanding Operating Systems 40
Management of I/O Requests
• Device Manager divides task into 3 parts, with each handled by specific software component of I/O subsystem.
• I/O traffic controller watches status of all devices,
control units, and channels. • I/O scheduler implements policies that determine
allocation of, and access to, devices, control units, and channels.
• I/O device handler performs actual transfer of data and processes the device interrupts.
![Page 41: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/41.jpg)
Understanding Operating Systems 41
I/O Traffic Controller
• Monitors status of every device, control unit, and channel. – Becomes more complex as number of units in I/O subsystem
increases and as number of paths between these units increases.
• Three main tasks: (1) it must determine if there’s at least 1 path available; (2) if there’s more than 1 path available, it must determine which to select; and (3) if paths are all busy, it must determine when one will become available.
• Maintains a database containing status and connections for each unit in I/O subsystem, grouped into Channel Control Blocks, Control Unit Control Blocks, and Device Control Blocks.
![Page 42: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/42.jpg)
Understanding Operating Systems 42
Traffic Controller Maintains Database For Each Unit In I/O Subsystem
Channel Control Block Control Unit ControlBlock
Device Control Block
• Channel identificationstatus
• Control UnitIdentification status
• Device identificationstatus
• List of control unitsconnected to it
• List of channelsconnected to it
• List of control unitsconnected to it
• List of processeswaiting for it
• List of devicesconnected to it
• List of processeswaiting for it
• List of processeswaiting for it
![Page 43: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/43.jpg)
Understanding Operating Systems 43
I/O Scheduler
• I/O scheduler performs same job as Process Scheduler-- it allocates the devices, control units, and channels.
• Under heavy loads, when # requests > # available paths, I/O scheduler must decide which request satisfied first.
• I/O requests are not preempted: once channel program has started, it’s allowed to continue to completion even though I/O requests with higher priorities may have entered queue. – Feasible because programs are relatively short (50 to 100 ms).
![Page 44: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/44.jpg)
Understanding Operating Systems 44
I/O Scheduler - 2
• Some systems allow I/O scheduler to give preferential treatment to I/O requests from “high-priority” programs. – If a process has high priority then its I/O requests also
has high priority and is satisfied before other I/O requests with lower priorities.
• I/O scheduler must synchronize its work with traffic controller to make sure that a path is available to satisfy selected I/O requests.
![Page 45: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/45.jpg)
Understanding Operating Systems 45
I/O Device Handler
• I/O device handler processes the I/O interrupts, handles error conditions, and provides detailed scheduling algorithms, which are extremely device dependent.
• Each type of I/O device has own device handler algorithm.– first come first served (FCFS)
– shortest seek time first (SSTF)
– SCAN (including LOOK, N-Step SCAN, C-SCAN, and C-LOOK)
• Every scheduling algorithm should :– Minimize arm movement
– Minimize mean response time
– Minimize variance in response time
![Page 46: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/46.jpg)
Understanding Operating Systems 46
First Come First Served (FCFS) Device Scheduling Algorithm
• Simplest device-scheduling algorithm:
• Easy to program and essentially fair to users.
• On average, it doesn’t meet any of the three goals of a seek strategy.
• Remember, seek time is most time-consuming of functions performed here, so any algorithm that can minimize it is preferable to FCFS.
![Page 47: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/47.jpg)
Understanding Operating Systems 47
Shortest Seek Time First (SSTF) Device Scheduling Algorithm
• Uses same underlying philosophy as shortest job next where shortest jobs are processed first & longer jobs wait.
• Request with track closest to one being served (that is, one with shortest distance to travel) is next to be satisfied.
• Minimizes overall seek time.
• Favors easy-to-reach requests and postpones traveling to those that are out of way.
![Page 48: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/48.jpg)
Understanding Operating Systems 48
SCAN Device Scheduling Algorithm
• SCAN uses a directional bit to indicate whether the arm is moving toward the center of the disk or away from it.
• Algorithm moves arm methodically from outer to inner track servicing every request in its path.
• When it reaches innermost track it reverses direction and moves toward outer tracks, again servicing every request in its path.
![Page 49: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/49.jpg)
Understanding Operating Systems 49
LOOK (Elevator Algorithm) : A Variation of SCAN
• Arm doesn’t necessarily go all the way to either edge unless there are requests there.
• “Looks” ahead for a request before going to service it.
• Eliminates possibility of indefinite postponement of requests in out-of-the-way places—at either edge of disk.
• As requests arrive each is incorporated in its proper place in queue and serviced when the arm reaches that track.
![Page 50: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/50.jpg)
Understanding Operating Systems 50
Other Variations of SCAN
• N-Step SCAN -- holds all requests until arm starts on way back. New requests are grouped together for next sweep.
• C-SCAN (Circular SCAN) -- arm picks up requests on its path during inward sweep. – When innermost track has been reached returns to outermost track
and starts servicing requests that arrived during last inward sweep.
– Provides a more uniform wait time.
• C-LOOK (optimization of C-SCAN) --sweep inward stops at last high-numbered track request, so arm doesn’t move all the way to last track unless it’s required to do so. – Arm doesn’t necessarily return to the lowest-numbered track; it
returns only to the lowest-numbered track that’s requested.
![Page 51: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/51.jpg)
Understanding Operating Systems 51
Which Device Scheduling Algorithm?
• FCFS works well with light loads, but as soon as load grows, service time becomes unacceptably long.
• SSTF is quite popular and intuitively appealing. It works well with moderate loads but has problem of localization under heavy loads.
• SCAN works well with light to moderate loads and eliminates problem of indefinite postponement. SCAN is similar to SSTF in throughput and mean service times.
• C-SCAN works well with moderate to heavy loads and has a very small variance in service times.
![Page 52: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/52.jpg)
Understanding Operating Systems 52
Search Strategies: Rotational Ordering
• Rotational ordering -- optimizes search times by ordering requests once read/write heads have been positioned. – Nothing can be done to improve time spent moving
read/write head because it’s dependent on hardware.
• Amount of time wasted due to rotational delay can be reduced. – If requests are ordered within each track so that first
sector requested on second track is next number higher than one just served, rotational delay is minimized.
![Page 53: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/53.jpg)
Understanding Operating Systems 53
Redundant Array of Inexpensive Disks (RAID)
• RAID is a set of physical disk drives that is viewed as a single logical unit by OS.
• RAID assumes several smaller-capacity disk drives preferable to few large-capacity disk drives because, by distributing data among several smaller disks, system can simultaneously access requested data from multiple drives.
• System shows improved I/O performance and improved data recovery in event of disk failure.
![Page 54: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/54.jpg)
Understanding Operating Systems 54
RAID -2
• RAID introduces much-needed concept of redundancy to help systems recover from hardware failure.
• Also requires more disk drives which increase hardware costs.
![Page 55: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/55.jpg)
Understanding Operating Systems 55
Six standard levels of RAID fall into 4 categories. Each offers a unique combination of advantages.
Level Category Description I/O RequestRate
DataTransferRate
0 Data Striping Nonredundant Excellent Excellent1 Mirroring Mirrored Good/Fair Fair/Fair2 Parallel Access Redundant Poor Excellent3 Parallel Access Bit-interleaved parity Poor Excellent4 Independent
AccessBlock-interleaved parity Excellent/ Fair Fair/Poor
5 IndependentAccess
Block-interleaveddistributed parity
Excellent/ Fair Fair/Poor
![Page 56: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/56.jpg)
Understanding Operating Systems 56
Terminology
• access time
• blocking
• buffers
• Channel Status Word (CSW)
• cylinder
• dedicated device
• direct access storage devices (DASDs)
• direct memory access (DMA)
• first come first served (FCFS)
• I/O channel
• I/O control unit
• I/O device handler
• I/O scheduler
• I/O subsystem
• I/O traffic controller
• interblock gap (IBG)
• interrecord gap (IRG)
• interrupts
• LOOK
• magnetic tape
• optical disc drive
• polling
• RAID
![Page 57: Chapter 7 device management](https://reader033.vdocument.in/reader033/viewer/2022042514/559b77461a28ab6f4f8b485f/html5/thumbnails/57.jpg)
Understanding Operating Systems 57
Terminology - 2
• rotational ordering
• SCAN
• search strategy
• search time
• seek strategy
• seek time
• sequential access media
• shared device
• shortest seek time first (SSTF)
• transfer rate
• transfer time
• transport speed
• virtual device