This preview shows page 1. Sign up to view the full content.
Unformatted text preview: s can be written out in
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
Interrupt-driven I/O: The processor issues an I/O command
on behalf of a process. There are then two possibilities. If
the I/O instruction from the process is nonblocking, then
the processor continues to execute instructions from the
process that issued the I/O command. If the I/O instructions is blocking, hen the next instruction that the processor
executes is from the OS, which will put the current process
in a blocked state and schedule a another process.
Direct memory access (DMA): A DMA module controls the
exchange of data between main memory and an I/O module.
The processor sends a request for the transfer of a block of
data to the DMA module and is interrupted only after the
entire block has been transferred.
What is the difference between block-oriented devices and
stream-oriented devices? Give a few examples of each?
A block-oriented device 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 USB keys are examples of
A stream-oriented device transfers data in and out as 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
View Full Document