Home / Computer Interfacing / Difference between Programmed I/O vs Memory Mapped I/O

Difference between Programmed I/O vs Memory Mapped I/O

Difference between Programmed I/O vs Memory Mapped I/O

Programmed I/O Memory Mapped I/O
Processor has to check each I/O device in sequence and in effect ‘ask’ each one if it needs communication with the processor External asynchronous input is used to tell the processor that I/O device needs its services and hence processor does not have to check whether I/O device needs it services or not
During polling processor is busy and therefore have serious and decremented effect on system throughput The processor is allowed to execute its instruction in sequence and only stop to service I/O device when it is told to do so by the device itself, this increased system throughput
It is implemented without interrupt hardware support Implemented using interrupt hardware support
Does not depend on interrupt states Must be enabled to process interrupt driven I/O
Does not need initialization of stack It needs initialization of stack
System throughput decreases as number of I/O devices increases System throughput does not depend on number of I/O devices connected in the system