Skip to content

Input/Output System

Four-level structure of I/O system

  • Typical structure: including host, channel, device controller, input/output device.

Classification and performance of I/O devices

  • Classification by transmission rate:

  • Low-speed devices: such as keyboards and mice, with low transmission rates (several bytes to hundreds of bytes per second).

  • Medium-speed devices: such as printers, with medium transmission rates (thousands to tens of thousands of bytes per second).
  • High-speed devices: such as disks and optical disks, with high transmission rates (hundreds of thousands to tens of megabytes per second).

  • Classification by information exchange unit:

  • Block devices: exchange information in blocks (such as disks), characterized by high transmission rate, addressable, and commonly used DMA methods.

  • Character devices: exchange information in characters (such as keyboards and printers), characterized by low transmission rate, unaddressable, and commonly used interrupt-driven methods.

  • Classification by sharing attributes:

  • Exclusive devices: such as printers, require static allocation.

  • Shared devices: such as disks, can be used alternately by multiple jobs.
  • Virtual device: simulate exclusive devices through virtual technology.

Device controller

  • Interface line: includes data line, control line and status line.

  • Function:

  • Accept and identify commands.

  • Data exchange.

  • Report device status.

  • Address recognition.

  • Data buffer.

  • Error control.

  • Interface with CPU and device: communicate through data line, address line and control line.

Channel (I/O processor)

  • Function: execute I/O instructions, control I/O operations, support parallel processing and improve system efficiency.

  • Type:

  • Byte multiplex channel: process in bytes and connect a large number of low-speed devices.

  • Array selection channel: process in blocks and high-speed devices occupy the channel exclusively.

  • Array multiplex channel: multi-programming to improve channel utilization and transmission rate.

  • Bottleneck problem and solution: Improve channel efficiency and system reliability by adding multiple cross-connections.

Bus system

  • Function: Connect CPU, memory and I/O devices to realize information transmission.
  • Bus type:

  • ISA bus: Early PC bus, 8-bit/16-bit structure.

  • EISA bus: Extended ISA bus, double-layer socket design, compatible with ISA.
  • VESA bus: Local bus, 32-bit/64-bit data line, high-speed transmission.
  • PCI bus: Support 32-bit/64-bit, burst read and write operations, high transmission rate.
  • PCI-Express: Replace PCI bus, support higher bandwidth and scalability.