• The two major styles of I/O are polled and interrupt driven.
• Interrupts may be vectorized and prioritized.
• Supervisor mode helps protect the computer from program errors and provides a mechanism for controlling multiple programs.
• An exception is an internal error; a trap or software interrupt is explicitly generated by an instruction. Both are handled similarly to interrupts.
• A cache provides fast storage for a small number of main memory locations. Caches may be direct mapped or set associative.
• A memory management unit translates addresses from logical to physical addresses.
• Co-processors provide a way to optionally implement certain instructions in hardware.
• Program performance can be influenced by pipelining, superscalar execution, and the cache. Of these, the cache introduces the most variability into instruction execution time.
• CPUs may provide static (independent of program behavior) or dynamic (influenced by currently executing instructions) methods for managing power consumption.