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
Understanding Operating Systems

Paper Storage Media

Magnetic Tape Storage

Magnetic Disk Storage

Optical Disc Storage

1

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.

Understanding Operating Systems

2

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.
Understanding Operating Systems 3

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.
Understanding Operating Systems 4

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.
Understanding Operating Systems 5

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. – E.Virtual Devices • Combination of dedicated devices that have been transformed into shared devices. – Because disks are sharable devices.g. this technique can convert one printer into several ―virtual‖ printers. Understanding Operating Systems 6 . thus improving both its performance and use.

• Each record can be identified by its position on the tape. • Each record can be of any length. Understanding Operating Systems 7 . – Length is usually determined by the application program. one after other. • To access a single record.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. tape is mounted & ―fastforwarded‖ from its beginning until locate desired position.

Magnetic Tapes • Data is recorded on 8 parallel tracks that run length of tape.. Characters Parity • • • • • • • • • • • • 8 Understanding Operating Systems . • Ninth track holds parity bit used for routine error checking.g. 1600 or 6250 bpi). • Number of characters that can be recorded per inch is determined by density of tape (e.

then entire block is preceded by a space and followed by a space.Storing Records on Magnetic Tapes • Can store records individually or grouped into blocks. Understanding Operating Systems 9 . • Interblock gap (IBG) the gap between blocks of records. 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. still 1/2 inch long. – If individually. each record is separated by a space to indicate its starting and ending places. – If blocks.

deblocking. Understanding Operating Systems 10 . • Less tape is wasted because size of physical record exceeds size of gap.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. • Overhead and software routines are needed for blocking. • Buffer space may be wasted if you need only one logical record but must read an entire block to get it. and record keeping.

a total of 320. Understanding Operating Systems 11 .000 bytes can be transferred in one second. • Transfer rate -. – Buffer must be equivalent. at 1600 bpi.000 bytes. – Theoretically optimal size of a block is 320.density of the tape.Transfer Rates & Speeds • Block size set to take advantage of transfer rate. multiplied by the tape transport speed (speed of the tape) transfer rate = density * transport speed • If transport speed is 200 inches per second.

Understanding Operating Systems 12 .5 minutes 1.Magnetic Tape Access Times Vary Widely Benchmarks Maximum access Average access Sequential access Access time 2.25 minutes 3 milliseconds • Variability makes magnetic tape a poor medium for routine secondary storage except for files with very high sequential activity.

• Two major categories: • DASD with fixed read/write heads • DASD with movable read/write heads.any devices that can directly read or write to a specific place on a disk.Direct Access Storage Devices (Random Access Storage Devices) • Direct access storage devices (DASDs)-. location of specific record still has a direct effect on amount of time required to access it. • Although variance in DASD access times isn’t as wide as with magnetic tape. Understanding Operating Systems 13 .

Fixed-Head Drums • Magnetically recordable drums. • Fixed-head drums were very fast but also very expensive. Understanding Operating Systems 14 . • 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. and they did not hold as much data as other DASDs.

• One head for each track. Rotation Understanding Operating Systems 15 . • Covered with magnetic film that has been formatted.each disk looks like a phonograph album. Data is recorded serially on each track by the fixed read/write head positioned over it. into concentric circles. • Each circle is a track. usually on both sides.Fixed Head Disks • Fixed-head disks -.

Understanding Operating Systems 16 . • Reduced storage space compared to a moveable-head disk – because tracks must be positioned farther apart to accommodate width of the read/write heads.Pros & Cons of Fixed Head Disks • Very fast—faster than movable-head disks. • High cost.

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. • One read/write head that floats over the surface of the disk. Understanding Operating Systems 17 . – Least expensive device has only 1 read/write head for entire drum – More conventional design has several read/write heads that move together. • Disks can be individual units (used with many PCs) or part of a disk pack (a stack of disks).

so read/write head know when to begin reading or writing. – Surface number. • To access any given record. so arm can move read/write heads to it. – Are as many cylinders as there are tracks. – Cylinders are as tall as the disk pack. – Record number. so proper read/write head is activated. got virtual cylinder of data. • If fill Track 0 of all surfaces. system needs: – Cylinder number. 18 .Cylinders • It’s slower to fill a disk pack surface-by-surface than to fill it up track-by-track.

• Optical disc drives work in a manner similar to a magnetic disk drive.Optical Disc Storage (CD-ROM) • Optical disc drives uses a laser beam to read and write to multi-layered discs. • Uses a high-intensity laser beam to burn pits (indentations) and lands (flat areas) in disc to represent ones and zeros. Understanding Operating Systems 19 . – Head on an arm that moves forward and backward across the disc. respectively.

outside sectors are much larger than sectors located near center of disk.Concentric Tracks vs. Understanding Operating Systems 20 . – Because sectors at outside of disk spin faster past read/write head than inner sectors. • An optical disc consists of a single spiraling track of samesized 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. Spiraling Tracks • Magnetic disk consists of concentric tracks of sectors and it spins at a constant speed (constant angular velocity).

• Cache size -. – Crucial for applications requiring sequential access.hardware cache acts as a buffer by transferring blocks of data from the disc – Anticipates user may want to reread some recently retrieved info. looking for next block of info on disc. – Expressed in milliseconds (ms). – Act as read-ahead buffer. Understanding Operating Systems 21 . – Measured in bytes per second (such as Mbps).average time required to move head to a specific place on disc. • Average access time -.Measures of Performance for Optical Disc Drives • Sustained data-transfer rate -.speed at which massive amounts of data can be read from disc.

complex games. • CD-ROM jukeboxes (autochangers or libraries) are capable of handling multiple discs and networked to distribute multimedia and reference works to distant user. system documentation. reference works.first commonly used optical storage DASD. • Stores very large databases.CD-ROM Technology • CD-ROM -. large software packages. Understanding Operating Systems 22 . and user training material.

• It has an extremely long shelf life. Understanding Operating Systems 23 . once data is written. it can’t be erased or modified.CD-Recordable Technology (CD-R) • CD-R drives record data on optical discs using a writeonce technique. • WORM (write once. • Only a finite amount of data can be recorded on each disc and. read many).

heating media just enough to erase pits that store data and restoring recordable media to its original state. • CD-RW discs can be written and rewritten many times by focusing a low-energy laser beam on surface. graphics. CD-R and CD-RW discs. and multimedia applications.CD-Rewritable Technology (CD-RW) • CD-RW drives can read a standard CD-ROM. Understanding Operating Systems 24 . • Useful for storing large quantities of data and for sound.

and multimedia applications.Digital Video Disc (DVD) Techonolgy • DVD uses infrared laser to read disc (holds equivalent of 13 CD-ROM discs). modify. • By using compression technologies. DVDs are used to store music.7 GB – Double-layered disc can hold 8. – Single layered DVDs can hold 4. • DVD-RAM is a writable technology that uses a red laser to read. movies. 25 .5 GB on each side of the disc. and write data to DVD discs. has more than enough space to hold a 2-hour of movie with enhanced audio.

Understanding Operating Systems 26 . • Transfer time -.) – Slowest of the three factors • Search time (rotational delay) -. (Doesn’t apply to devices with fixed read/write heads. – Fastest.time it takes to rotate DASD until requested record is under read/write head.Three Factors Contribute To Time Required To Access a File • Seek time -.when data is actually transferred from secondary storage to main memory.time required to position the read/write head on the proper track.

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 Understanding Operating Systems 27 .

but a typical value is 0. so average rotational delay is 8.4 ms.094 ms (almost 0. • For example.8 ms. Understanding Operating Systems 28 .00094 ms per byte – size of record dictates this value. one complete revolution takes 16. • Data transfer time varies from device to device.1 ms) to transfer a record with 100 bytes.Example of Access Time For Fixed-Head Devices • How long will it take to access a record? • Typically. it takes 0.

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. 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).

Components of the I/O Subsystem Control Unit 1 Channel 1 Control Unit 2 Disk 1 Disk 2 Disk 3 Tape 1 CPU Control Unit 3 Channel 2 Control Unit 4 Tape 2 Tape 3 Tape 4 Disk 4 Disk 5 Understanding Operating Systems 30 .

• Use channel programs that specifies action to be performed by devices & controls transmission of data between main memory & control units. – Programmable units placed between CPU and control unit. – Make it possible to overlap I/O operations with processor operations so the CPU and I/O can process concurrently.keeps up with I/O requests from CPU and pass them down the line to appropriate control unit. – Synchronize fast speed of CPU with slow speed of the I/O device. • Entire path must be available when an I/O command is initiated. 31 .I/O Subsystem : I/O Channel • I/O Channel -.

REWIND. info passed from CPU to channel: – I/O command (READ. • At start of I/O command. etc.I/O Subsystem : I/O Control Unit • I/O control unit interprets signal sent by channel. WRITE. – One signal for each function.) – 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 Understanding Operating Systems 32 .

• Accommodate disparity of speeds between CPU and I/O devices. Solved by structuring interaction between units • Be able to accommodate requests that come in during heavy I/O traffic. Handled by ―buffering‖ records & queueing requests Understanding Operating Systems 33 .Device Manager Must • Know which components are busy and which are free.

which allows for concurrent processing and I/O. • CPU is free to process data while I/O is being performed. • 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.Communication Among Devices • Each unit in I/O subsystem can finish its operation independently from others. Understanding Operating Systems 34 .

• Each bit is changed from zero to one to indicate that unit has changed from free to busy. • Resides in the Channel Status Word (CSW) – In a predefined location in main memory and contains info indicating status of channel. and device. – One each for channel. control unit. – Each bit represents a component of I/O subsystem. Understanding Operating Systems 35 .Hardware Flag Used To Communicate When A Device Has Completed An Operation • Composed made up of three bits.

channel could sit idle for long periods of time. – If polling is done too frequently. Understanding Operating Systems 36 . – If polling is done too seldom. • Major disadvantage with this scheme is determining how often the flag should be polled. – CPU periodically tests the channel status bit (in CSW).Testing the Flag : Polling or Interrupts • Polling uses a special machine instruction to test flag. CPU wastes time testing flag just to find out that channel is still busy.

• Hardware mechanism does test as part of every machine instruction executed by CPU.Interrupts • Use of interrupts is a more efficient way to test flag. • If channel is busy flag is set so that execution of current sequence of instructions is automatically interrupted. • Control is transferred to interrupt handler. Understanding Operating Systems 37 . • Some sophisticated systems are equipped with hardware that can distinguish between several types of interrupts. which resides in a predefined location in memory.

• This mode of data transfer is used for high-speed devices such as disks. remainder of data can be transferred to and from memory without CPU intervention.Direct Memory Access (DMA) • I/O technique that allows a control unit to access main memory directly. Understanding Operating Systems 38 . • Once reading or writing begins. • 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.

– While one record is being processed by CPU another can be read or written by channel Understanding Operating Systems 39 . • Double buffering --2 buffers are present in main memory. channels.Buffers • Buffers are temporary storage areas residing in convenient locations throughout system: main memory. and control units. channels. • Used extensively to better synchronize movement of data between relatively slow I/O devices & very fast CPU. and control units.

• I/O device handler performs actual transfer of data and processes the device interrupts. devices. • I/O scheduler implements policies that determine allocation of. and channels. control units. • I/O traffic controller watches status of all devices. Understanding Operating Systems 40 .Management of I/O Requests • Device Manager divides task into 3 parts. and channels. and access to. control units. with each handled by specific software component of I/O subsystem.

it must determine which to select.I/O Traffic Controller • Monitors status of every device. grouped into Channel Control Blocks. Understanding Operating Systems 41 . and channel. control unit. and (3) if paths are all busy. (2) if there’s more than 1 path available. • Maintains a database containing status and connections for each unit in I/O subsystem. • Three main tasks: (1) it must determine if there’s at least 1 path available. it must determine when one will become available. and Device Control Blocks. – Becomes more complex as number of units in I/O subsystem increases and as number of paths between these units increases. Control Unit Control Blocks.

Traffic Controller Maintains Database For Each Unit In I/O Subsystem Channel Control Block    Channel identification status List of control units connected to it List of processes waiting for it Control Unit Control Block  Control Unit Identification status  List of channels connected to it  List of devices connected to it  List of processes waiting for it Device Control Block    Device identification status List of control units connected to it List of processes waiting for it Understanding Operating Systems 42 .

when # requests > # available paths. and channels.I/O Scheduler • I/O scheduler performs same job as Process Scheduler-. • Under heavy loads.it allocates the devices. – Feasible because programs are relatively short (50 to 100 ms). control units. Understanding Operating Systems 43 . • 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. I/O scheduler must decide which request satisfied first.

• I/O scheduler must synchronize its work with traffic controller to make sure that a path is available to satisfy selected I/O requests.2 • Some systems allow I/O scheduler to give preferential treatment to I/O requests from ―high-priority‖ programs.I/O Scheduler . Understanding Operating Systems 44 . – 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.

• Each type of I/O device has own device handler algorithm.I/O Device Handler • I/O device handler processes the I/O interrupts. N-Step SCAN. and C-LOOK) • Every scheduling algorithm should : – Minimize arm movement – Minimize mean response time – Minimize variance in response time Understanding Operating Systems 45 . C-SCAN. handles error conditions. – first come first served (FCFS) – shortest seek time first (SSTF) – SCAN (including LOOK. and provides detailed scheduling algorithms. which are extremely device dependent.

• On average. • Remember. it doesn’t meet any of the three goals of a seek strategy. seek time is most time-consuming of functions performed here. Understanding Operating Systems 46 .First Come First Served (FCFS) Device Scheduling Algorithm • Simplest device-scheduling algorithm: • Easy to program and essentially fair to users. so any algorithm that can minimize it is preferable to FCFS.

Understanding Operating Systems 47 . • Favors easy-to-reach requests and postpones traveling to those that are out of way. one with shortest distance to travel) is next to be satisfied. • Minimizes overall seek time.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.

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. again servicing every request in its path. Understanding Operating Systems 48 . • When it reaches innermost track it reverses direction and moves toward outer tracks. • Algorithm moves arm methodically from outer to inner track servicing every request in its path.

• Eliminates possibility of indefinite postponement of requests in out-of-the-way places—at either edge of disk. 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. • As requests arrive each is incorporated in its proper place in queue and serviced when the arm reaches that track. • ―Looks‖ ahead for a request before going to service it.

– When innermost track has been reached returns to outermost track and starts servicing requests that arrived during last inward sweep.Other Variations of SCAN • N-Step SCAN -. so arm doesn’t move all the way to last track unless it’s required to do so.arm picks up requests on its path during inward sweep. • C-SCAN (Circular SCAN) -.holds all requests until arm starts on way back. – Provides a more uniform wait time. 50 . • C-LOOK (optimization of C-SCAN) --sweep inward stops at last high-numbered track request. it returns only to the lowest-numbered track that’s requested. New requests are grouped together for next sweep. – Arm doesn’t necessarily return to the lowest-numbered track.

but as soon as load grows.Which Device Scheduling Algorithm? • FCFS works well with light loads. It works well with moderate loads but has problem of localization under heavy loads. 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. • SCAN works well with light to moderate loads and eliminates problem of indefinite postponement. service time becomes unacceptably long. • SSTF is quite popular and intuitively appealing. Understanding Operating Systems 51 .

• Amount of time wasted due to rotational delay can be reduced.optimizes search times by ordering requests once read/write heads have been positioned. Understanding Operating Systems 52 . rotational delay is minimized. – If requests are ordered within each track so that first sector requested on second track is next number higher than one just served.Search Strategies: Rotational Ordering • Rotational ordering -. – Nothing can be done to improve time spent moving read/write head because it’s dependent on hardware.

by distributing data among several smaller disks. • System shows improved I/O performance and improved data recovery in event of disk failure. • RAID assumes several smaller-capacity disk drives preferable to few large-capacity disk drives because. Understanding Operating Systems 53 . system can simultaneously access requested data from multiple drives.Redundant Array of Inexpensive Disks (RAID) • RAID is a set of physical disk drives that is viewed as a single logical unit by OS.

• Also requires more disk drives which increase hardware costs.RAID -2 • RAID introduces much-needed concept of redundancy to help systems recover from hardware failure. Understanding Operating Systems 54 .

Six standard levels of RAID fall into 4 categories. Each offers a unique combination of advantages. Level Category Description I/O Request Rate Excellent Good/Fair Poor Poor Excellent/ Fair Excellent/ Fair 0 1 2 3 4 5 Data Striping Mirroring Parallel Access Parallel Access Independent Access Independent Access Nonredundant Mirrored Redundant Bit-interleaved parity Block-interleaved parity Block-interleaved distributed parity Data Transfer Rate Excellent Fair/Fair Excellent Excellent Fair/Poor Fair/Poor Understanding Operating Systems 55 .

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 56 Understanding Operating Systems .

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 Understanding Operating Systems 57 .Terminology .

Sign up to vote on this title
UsefulNot useful