• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Exchange to from I/O and vice-versa

life24

Senior member
Hello,
Please view the below photo.
How is it done? CPU directly exchange data with I/O devices,
Because I/O devices is very slow versus CPU.
Could you explain it?
Thanks
8ioqrrl94n95.jpg
 
Thanks but my question is I/O to Processor and Processor to I/O. nope DMA

I'm not sure I fully/properly understand your question.

But if you were designing a computer system from scratch.

Then consider the keyboard.

Which only generates a few characters/bytes per second.

So how that would work, is that the cpu would just carry on, processing software and stuff. Ignoring the keyboard.

When someone presses a key. The keyboard accepts the pressed character. "Interrupts" the cpu (via an interrupt request signal).

The cpu now in a fraction of a microsecond (potentially), reads what the user entered character was. Then puts it into the keyboard buffer and/or processes the keystroke straight away.

Alternatively there can be a regular timing signal (timer interrupt), at say 38 times per second. The cpu during this timer interrupt. Can check to see if the keyboard has sent another character and/or the mouse has moved/changed. Process that information (perhaps into buffers), then end the interrupt and carry on with whatever it was doing, before the interrupt.

As mentioned by another poster in this thread. DMA can be used, to transfer multi bytes of information, between I/O and the cpus memory areas. With little/no cpu processing overhead.

E.g. Hard disk drive transfers.
 
Last edited:
Back
Top