Intel 64 and IA-32 Architectures Software Developers Manual Volume 1, Basic Architecture

13-8 Vol. 1
INPUT/OUTPUT
When the I/O address space is used instead of memory-mapped I/O, the situation is
different in two respects:
The processor never buffers I/O writes. Therefore, strict ordering of I/O
operations is enforced by the processor. (As with memory-mapped I/O, it is
possible for a chip set to post writes in certain I/O ranges.)
The processor synchronizes I/O instruction execution with external bus activity
(see Table 13-1).
Table 13-1. I/O Instruction Serialization
Instruction Being
Executed
Processor Delays Execution of Until Completion of
Current
Instruction?
Next
Instruction? Pending Stores? Current Store?
IN Yes Yes
INS Yes Yes
REP INS Yes Yes
OUT Yes Yes Yes
OUTS Yes Yes Yes
REP OUTS Yes Yes Yes