2.5 System Resources
2.5.3 Direct Memory Access (DMA)
Direct Memory Access (DMA) channels allow devices to bypass the processor and directly access the computer memory. Devices with a DMA channel assignment, as a result, gain the advantage of faster data transfers. DMA channels are typically used by high-speed communication devices for transferring large amounts of data at high speeds. Examples of such devices include sound cards, some network cards, some SCSI cards, some disk drives, and some tape backup drives.

When a device signals its intention to use the DMA channel, the DMA controller takes control of the data bus and address bus from the microprocessor or CPU (data and address buses are communication lines that bring information to the computer memory). The CPU is effectively put in a "floating state". Therefore, it is temporarily disconnected from the buses. After the transfer is complete, the DMA controller releases the data bus and address bus back to the CPU, which can continue with its normal functions. One drawback of DMA use, especially with older systems, is that the CPU may be put on hold while the DMA device is working, slowing everything else down until the DMA transfer is complete.

As with IRQs, devices that want to make a DMA transfer are assigned a priority level. If a device's DMA has a low number, it has higher priority than a device that has a higher number. It is important to understand the DMA assignments summarized in the table.