Skip to content

Summary

This chapter covered how CPUs interact with peripherals:

  • MMIO maps device registers into the address space so loads/stores can access devices.
  • Polling is simple but wastes CPU time.
  • Interrupts improve CPU utilization by servicing events on demand, typically via a PLIC.
  • DMA offloads bulk data movement to hardware for high-throughput I/O.

The core trade-off is between hardware complexity and CPU efficiency/throughput.