I/O Design

Two main concerns:

  1. Efficiency
    • Most I/O devices are extremely slow compared to main memory
    • Use of multiprogramming allows interleaving of I/O and processing
    • Even in the future: I/O will not keep up with processor throughputs
    • Swapping is used to bring in additional Ready processes; swapping is an I/O operation
  2. Generality
    • Desirable to handle all I/O devices in a uniform manner
    • Hide most of the details of device I/O in lower-level routines