W9 - I/O Management and Disk Scheduling Flashcards

1
Q

External devices that engage in I/O with computer systems can be categorized into what three categories?

A

1) human readable
2) machine readable
3) communication

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What are the design objectives of I/O efficiency?

A
  • prevent bottleneck operations
  • increase speed to coincide with memory and process speed
  • give more attention to disk I/O
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the design objectives of I/O generality?

A
  • handle all devices in uniform manner

- NEG: diversity of devices make it difficult to achieve true generality

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is a device driver?

A

It is a computer program allowing high-level computer programs to interact with a hardware device
Typically communicates with the device through the computer bus

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How does interrupt-driven I/O work?

A

Processor issues I/O command on behalf of a process.
If non-blocking, processor continues to execute instructions from the process that issues the I/O command.
If blocking, the next instruction the processor executes is from the OS, which is the current process in a blocked state and schedule another process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What do drivers use kernel functions for in Driver-Kernel Interface?

A

1) device allocation
2) scheduling
3) buffering and caching
4) resource allocation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Name a few characteristics of I/O buffering as a block-oriented device?

A
  • stores information in blocks that are usually fixed sized
  • transfers made one block at a time
  • disks and USBs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Name a few characteristics of I/O buffering as a stream-oriented device?

A
  • transfers data in and out as a stream of bytes
  • no block structure
  • printers, communications ports
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Distinguish difference between block-oriented single buffer vs stream-oriented single buffer.

A

Block-oriented read ahead input. Generally provides a speedup compared to lack of system buffering.
For stream-oriented, appropriate for scroll-mode terminals. One line at a time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Name a main advantage to double buffer.

A

Transfer data to or from one buffer while OS empties or fills the other buffer

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Why would a circular buffer be used?

A

When I/O operation must keep up with process.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What do magnetic disks provide?

A

They provide bulk of secondary storage of modern computers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are some pros and cons to Nonvolatile Memory (NVM).

A
Pros: 
More reliable than HDD.
Faster
Less power
Cons:
Expensive
Lower capacity
Shorter lifespan
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Briefly explain the RAID strategy.

A

Stands for Redundant Array of Independent Disks.
Employs multiple disk drives and distributes data in such a way as to enable simultaneous access to data from multiple drives

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Name two advantages to RAID.

A

1) improves I/O performance

2) allows easier incremental increases in capacity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

UNIX Buffer Cache.

A

Data transfer between the buffer cache and user process space always occurs using DMA

17
Q

What three lists are maintained in UNIX buffer cache?

A

1) free list
2) device list
3) driver I/O queue

18
Q

What is unbuffered I/O?

A

DMA between device and process space.
Fastest method for a process to perform I/O.
Process locked in main memory and cannot be swapped out.

19
Q

Elevator Scheduler.

A

Maintains a single queue for disk read and write requests and performs both sorting and merging functions on the queue.
When a new request is added to the queue, 4 operations are considered in order:
1) If request is to the same on-disk sector or an immediately adjacent sector to a pending request in the queue, then the existing request and the new request are merged into one request
2) If a request in the queue is old, new request is inserted at the tail of the queue
3) If a suitable location found, new request is inserted in sorted order
4) If no suitable location, new request is placed at the tail of the queue

20
Q

What two problems occur from elevator scheme?

A

1) Distance request block can be delayed for a time because queue is dynamically updated.
2) Stream of write requests can block a read request for a time, and thus block a process

21
Q

What happens when a read request is dispatched in Anticipatory I/O Scheduler?

A

A delay is caused. In this scheduler, the application that issued the last read request will issue another read request