I/O: Input-Output By: Tommy Zeng
What is I/O? I/O – short for “Input – Output” How a computer interacts with its users Input – gets information from the outside world and puts it in the computer Output – gets information from the computer and puts it out into the world
Input Devices Keyboard Mouse
Output Devices Monitor Printer
Performing I/O Two ways to perform input-output Primitive I/O instructions Memory-mapped I/O
Primitive I/O Instructions Related to CPU architecture Hard-coded into the CPU “input from port #...” “output to port #...”
Memory-mapped I/O Related to system memory Input and output devices are “mapped” to certain memory addresses Read from a mapped address means to read from a specific input device Write to a mapped address means to output to a specific output device
I/O Overlap CPU cannot execute instructions while waiting for I/O request CPU goes into a wait state when I/O request is issued Must go into “I/O overlap”
I/O Overlap I/O transfers controlled by I/O subsystem instead of CPU Subsystems include Direct Memory Access (DMA) controller
DMA Controller DMA controller handles I/O operations Allows CPU to execute other instructions while I/O is being performed
Recap Get Input from input devices Displays output through output devices Memory-mapping allows more flexible I/O Operations DMA Controller allows CPU to continue processing while I/O operations are being performed