Chapter 11

Ace your homework & exams now with Quizwiz!

N-step-SCAN (pg. 233)

segment request queue into subqueues of length N; processes one subqueue at a time. While subqueue is being processed new request must be added to another. Avoids favoring new requests. Large values of N performance approaches SCAN. N=1 is FIFO

disk scheduling policies (pg. 222)

the reason for the difference in performance can be traced to seek time. If sector access requests involve selection of tracks at random, then the performance of the disk I/O system will be as poor as possible. To improve matters, we need to reduce the average time spent on seeks.

organization of the I/O function (pg. 193)

three techniques for performing I/O: Programmed I/O, Interrupt-driven I/O, and Direct memory access (DMA)

direct memory access (pg. 193)

1. Use read and write command lines to tell DMA module to read or write 2. Transmit address of I/O device on data lines 3. Transmit address in memory on data lines (address stored in address register) 4. Transmit number of words to be transferred on data lines (count stored in count register) Thus, the processor is involved only at the beginning and end of the transfer

What is the typical disk sector size?

512 bytes

Why would you expect improved performance using a double buffer rather than a single buffer for I/O?

Because a process is now transferring data to (or from) one buffer while the OS empties (or fills) the other.

What is the difference between block-oriented devices and stream-oriented devices? Give a few examples of each.

Block-oriented devices stores information in blocks that are usually of fixed size, and transfers are made one block at a time. Generally, it is possible to reference data by its block number. Disks and tapes are examples of block-oriented devices. Stream-oriented devices transfer data in and out as a stream of bytes, with no block structure. Terminals, printers, communications ports, mouse and other pointing devices, and most other devices that are not secondary storage are stream oriented

disk cache (pg. 254)

Buffer in main memory for disk sectors; exploits principle of locality

data representation (pg. 192)

Character encoding, parity conventions, byte order, etc.

unit of transfer (pg. 192)

Data can be transferred as a stream of a block of data

logical I/O (pg. 205)

Deals with device as logical resource. Not concerned with the details of controlling device

file system (pg. 206)

Deals with the logical structure of files and user operations on those files (open, close, read, write). Access rights handled at this layer

RAID 1 (pg. 245)

Mirrored. Half the disks reserved for mirroring. Stripes distributed like RAID 0 (Can be implemented without striping, but less common). Reserved disks are copies of the first half of disks. Positive Aspects: 1. Can read from either of the two disks 2. Each write requires two write, but can be done in parallel 3. Can lose up to half the disks before data loss (easy recovery: just copy from duplicate disk)

SCAN (pg. 231)

Moves arm in one direction only. Scans track by track. services request as their track is reached. Continue until last track reached or last request in that direction has been serviced (LOOK policy). Once done, scan in reverse direction. Favors requests nearest to inner and outermost tracks. Favors the latest-arriving jobs

RAID 0 (pg. 242)

No redundancy. Stripes are distributed round robin across disks. No data recovery. Faster disk access; consecutive stripes can be accessed in parallel

priority (pg. 229)

Not intended to optimize disk utilization. Want to meet some OS criteria (e.g. give priority to interactive jobs)

RAID (pg. 234)

Redundant array of independent disks. Consists of 7 levels - zero through six. Level not hierarchical - designates different design architectures. All levels share these characteristics: - Set of physical disks viewed by the OS as a single disk - Data is distributed across the disks using striping - Redundancy used to store parity information - allows data recovery on disk failure (except RAID 0 and 1)

What delay elements are involved in a disk read or write?

Seek time is the time required to move disk arm to the required track. Rotational delay is the time required for the addressed area of the disk to rotate into a position where it is accessible by the read/write head. Seek time + rotational delay = access time. Transfer time is the time required for the data transfer.

access time (pg. 217)

Seek time plus rotational delay; How long it takes to access desired location on disk

random scheduling (pg. 222)

Select from queue at random. Worst performance. Gives a benchmark to evaluate other policies

shortest-service-time-first (SSTF) (pg. 230)

Select request that requires the least movement of arm (minimizes seek time). Does not guarantee average seek time is minimized. Usually performs better than FIFO. Random tie breaking can be used (arm can move in two directions)

first-in-first-out (FIFO) (pg. 227)

Simplest. Fair (Every request honored in order received). If there are few requests and requests are clustered then there will be good performance. In general performs like random scheduling

complexity of control (pg. 191)

Some devices require more complex control interfaces

RAID 2 (pg. 247)

Stripes small -usually a byte or word. Some disks are reserved as parity disks. Error correcting code is calculated across corresponding bits on each disk. Error correcting code stored on parity disks (in corresponding locations). Typically a hamming code is used (Can detect two bit errors and correct one bit errors - corresponds to a one disk failure).

machine readable (pg. 190)

Suitable for communicating with electronic equipment. Examples are disk drives, USB keys, sensors, controllers, and actuators

communication (pg. 190)

Suitable for communicating with remote devices. Examples are digital line drivers and modems

human readable (pg. 190)

Suitable for communicating with the computer user. Examples include printers and terminals, the latter consisting of video display, keyboard, and perhaps other devices such as a mouse

directory management (pg. 206)

Symbolic filenames are converted to identifiers. Concerned with user operations that affect the directory of files(add, delete, reorganize)

disk performance parameters (pg. 217)

The actual details of disk I/O operation depend on the computer system, the operating system, and the nature of the I/O channel and disk controller hardware

scheduling and control (pg. 206)

The actual queueing and scheduling of I/O operations; interrupts handled at this layer; software that actually interacts with I/O module

striping (pg. 235)

The disk is divided into logical units called a stripe. Each stripe can be a block, sector, or some other unit

error conditions (pg. 192)

The nature of errors, the way in which they are reported, their consequences, and the available range of responses differ widely from one device to another.

I/O buffering (pg. 208)

The solution to data being transferred from a device at a speed different than what it takes to process it; it is sometimes convenient to perform input transfers in advance of requests being made, and to perform output transfers some time after the request is made

rotational delay (pg. 217)

The time it takes for the desired position in the track to rotate to the head

seek time (pg. 217)

The time it takes to move the head to the right track

application (pg. 191)

The use of device influences the software and policies of the OS.

queueing delay (pg. 217)

Time it takes after request is make to when it is serviced

transfer time (pg. 217)

Time it takes to read/write sector under head as disk rotates

I/O devices (pg. 190)

external devices that engage in I/O with computer systems can be roughly grouped into three categories: 1. human readable 2. machine readable 3. communication Among the key differences are the following: data rate, application, complexity of control, unit of transfer, data representation, error conditions

efficiency (pg. 202)

I/O is often the bottle neck of a commuting system

data rate (pg. 190)

Rate for which data is transferred. There could be great differences between devices.

Briefly define the disk scheduling policies.

FIFO (First-in-first-out): The simplest form of scheduling is first-in-first-out (FIFO) scheduling, which processes items from the queue in sequential order. This strategy has the advantage of being fair, because every request is honored, and the requests are honored in the order received. SSTF (Shortest-service-time-first): The shortest-service-time-first (SSTF) policy is to select the disk I/O request that requires the least movement of the disk arm from its current position. Thus, we always choose to incur the minimum seek time. Of course, always choosing the minimum seek time does not guarantee the average seek time over a number of arm movements will be minimum. However, this should provide better performance than FIFO. Because the arm can move in two directions, a random tie-breaking algorithm may be used to resolve cases of equal distances. SCAN: With SCAN, the arm is required to move in one direction only, satisfying all outstanding requests en route, until it reaches the last track in that direction or until there are no more requests in that direction. This latter refinement is sometimes referred to as the LOOK policy. The service direction is then reversed and the scan proceeds in the opposite direction, again picking up all requests in order. C-SCAN: The C-SCAN (circular SCAN) policy restricts scanning to one direction only. Thus, when the last track has been visited in one direction, the arm is returned to the opposite end of the disk and the scan begins again. This reduces the maximum delay experienced by new requests. With SCAN, if the expected time for a scan from inner track to outer track is t, then the expected service interval for sectors at the periphery is 2t. With C-SCAN, the interval is on the order of t + smax, where smax is the maximum seek time.

last-in-first-out (LIFO) (pg. 229)

Giving device to most recent request should result in little to no arm movement. The idea: request close together are likely part of the same job and close together. Takes advantage of locality. Possibility of starvation.

generality (pg. 202)

Handle all devices in a uniform manner; promotes simplicity, and freedom from errors

RAID 6 (pg. 253)

In the RAID 6 scheme, two different parity calculations are carried out and stored in separate blocks on different disks. Thus, a RAID 6 array whose user data require N disks consists of disks.

C-SCAN (pg. 232)

Like SCAN, but instead of reversing at end, move arm back to the beginning; reduces maximum delay for new requests

What is the difference between logical I/O and device I/O?

Logical I/O: Deals with the device as a logical resource and is not concerned with the details of actually controlling the device. The logical I/O module is concerned with managing general I/O functions on behalf ofuser processes e.g. Open, close, read and write. Device I/O: The requested operations and data are converted into appropriate sequences of I/O instructions, channel commands and controller orders.

physical organization (pg. 207)

Logical references to files converted to physical secondary storage addresses

device I/O (pg. 205)

Operations and data are converted into I/O instructions, channel commands, and controller orders

List and briefly define three techniques for performing I/O.

Programmed I/O: The processor issues an I/O command, on behalf of a process to an I/O module; that process then busy-waits for the operation to be completed before proceeding. Interrupt-driven I/O: The processor issues an I/O command on behalf of a process, continues to execute subsequent instructions, and is interrupted by the I/O module when latter has completed its work. Direct memory access: controls exchange of data between main memory and I/O module.

Briefly define the seven RAID levels.

RAID 0 - Non-redundant. RAID 1 - Mirrored, every disk has a mirror disk containing the same data. RAID 2 - Redundant via Hamming code; an error-correcting code is calculated across corresponding bits on each data disk, and the bits of the code are stored in the corresponding bit positions on multiple parity disks. RAID 3 - Bit-interleaved parity RAID 4 - Block-interleaved parity RAID 5 - Block-interleaved distributed parity RAID 6 - Block-interleaved dual distributed parity

RAID 3 (pg. 248)

RAID 3 is organized in a similar fashion to RAID 2. The difference is RAID 3 requires only a single redundant disk, no matter how large the disk array.

RAID 5 (pg. 252)

RAID 5 is organized in a similar fashion to RAID 4. The difference is RAID 5 distributes the parity strips across all disks

design issues (pg. 202)

Two objectives are paramount in designing the I/O facility: efficiency and generality. Additional issues come from the logical structure of the I/O function

RAID 4 (pg. 251)

Uses independent access technique (Each disk operates independently can can service requests in parallel). Large stripes; bit-by-pit parity calculated across corresponding stripes and stored in corresponding parity stripe; parity constructed via XOR (like RAID 3). A penalty for small writes

FSCAN (pg. 233)

Uses two subqueues. While scanning with one subqueue new requests are added to the other. When current subqueue becomes empty, switch to other subqueue


Related study sets

Chapter 18 : Revenue recognition

View Set

The Internet and the World Wide Web

View Set

SIE: Retirement Plans (Retirement Plans)

View Set

Lifespan exam 3 powerpoint notes

View Set

Policies, Provisions, Options and Riders Exam Prep

View Set