DMA - Direct memory access, i.e. operating input / output devices without processor supervision.
Perhaps for a start, let's imagine the situation, let's assume, that I need a processor 5 micro seconds to handle interrupts and they are coming every 10 Microseconds. You see, that there is not much time left to handle such an interrupt.
This is where direct access to PAO comes in handy. It is about bypassing the processor when transmitting various data that may be requested by the user program or the operating system.
The whole mechanism is quite complicated, but I will try to tell you something about it.
The operating system chooses the things it needs, sets the DMA driver accordingly,( np. destination), then the DMA generates the input / output operations. Upon completion, an interrupt is generated.
When the DMA is sending data, the CPU does other things to itself - it's true that we've lightened the CPU a bit?