Computers use two similar schemes to identify I/O devices.
The first scheme treats I/O devices as another type of memory. The addresses assigned to the devices are indistinguishable from memory addresses and the commands used to transfer data are the same as the commands used to transfer data to and from memory. This scheme is called memory mapped I/O.
The second scheme uses dedicated I/O commands to transfer data. When I/O instructions are issued the control bus will signal that the transfer is to I/O and not memory. This is called dedicated I/O.
The I/O interface contains the hardware necessary to allow communication with the I/O devices. In order to function, I/O interfaces require at least the following elements:
- Buffer space to allow the data being transferred to be stored until the hardware is ready to process it.
- A control bit to start and stop transfers.
- A flag to signal when transfers are complete.
Next: Device Drivers