OSTEP Chapter 36

ECE 3600, Fall 2022


Table of Contents


1. I/O Hardware and Software

     

2. PIO, Interrupts, DMA

Programmed I/O and Polling:

  While (STATUS == BUSY)
    ; // wait until device is not busy
  Write data to DATA register
  Write command to COMMAND register
    (starts the device and executes the command)
  While (STATUS == BUSY)
    ; // wait until device is done with your request

Interrupts:

CPU Copying Data:

Direct Memory Access (DMA):


3. IDE Device Driver Example