Alcune periferiche sono in grado di trasferire direttamente dati verso la memoria senza passare dalla CPU. Per questo ci sono appositi canali, chiamati "DMA channel". I diversi canali sono riservati alle diverse periferiche. Come per gli IRQ possono verificarsi conflitti se i canali DMA non sono assegnati correttamente. Ma problemi si verificano di rado nei PC moderni; nei vecchi PC c'erano solo 4 canali DMA, numerati da 0 a 3 e gestiti da un "DMA controller", quando il bus fu portato a 16 bit fu aggiunto un secondo controller per avere piu' canali.
| numero del canale | uso |
|---|---|
| 0 | memory refresh |
| 1 | scheda audio |
| 2 | floppy |
| 3 | schede SCSI, ed altre |
| 4 | serve a collegare i 2 DMA controllers |
| 5 | schede SCSI, rete |
| 6 | varie periferiche |
| 7 | varie periferiche |
Una evoluzione del concetto di DMA e' il "bus mastering" , in cui la periferica assume in controllo del bus per effettuare il trasferimento dei dati.