Programmed Input/Output (PIO)

Basically, PIO means that the processor is responsible to write a byte/word at a time to one I/O address at a time to communicate a block of data. Note that for x86, I/O space means something different than most other arch's as x86 has seperate I/O and memory spaces -- addressed by different instructions out/in vs store/load (okay, it's mov in x86 parlance, but if you know that, you already should know what I'm talking about). Think of PIO as writing to or reading from one end of a FIFO while the target reads/writes to the other end.