Direct memory access (DMA) is a feature of computer systems that allows certain hardware subsystems to access main system memory (random-access memory) independently of the central processing unit (CPU). ... DMA can also be used for "memory to memory" copying or moving of data within memory.
Direct Memory Access (DMA) is a data transfer strategy that bypasses the CPU, instead using a dedicated DMA controller to transfer data between memory and a device. Drivers can use the DMA controller to transfer data directly.
Devices perform one of the following three types of DMA:
Bus-Master DMA.
Third-party DMA.
First-party DMA.
Advantages. DMA speedups the memory operations by bypassing the involvement of the CPU. The work overload on the CPU decreases. For each transfer, only a few numbers of clock cycles are required
How DMA Operations are Performed? ... The DMA controller sends Hold request (HRQ) to the CPU and waits for the CPU to assert the HLDA. Then the microprocessor tri-states all the data bus, address bus, and control bus. The CPU leaves the control over bus and acknowledges the HOLD request through HLDA signal.