DMA (Direct Memory Access)
DMA (Direct memory access) is an alternative method of communication to I/O ports that permits the device to transfer data directly, without the CPU’s attention. The system can request that the data be fetched into a particular memory region and continue with other tasks until the data is ready. This may result in lower CPU requirements for the I/O activity, which can improve system performance.
To support DMA, the x86 architecture implements several DMA channels. To find out what DMA channels your system uses, you can use the cat /proc/dma command:
As you can see from the output above, the DMA channels 2 and 4 are in use.
DMA addresses should not be shared in order to avoid conflicts.