Direct Memory Access (DMA) è una funzionalità fornita da alcune architetture di bus di computer che consente di inviare i dati direttamente da un dispositivo collegato (come un'unità disco) alla memoria sulla scheda madre del computer. Il microprocessore viene liberato dal coinvolgimento con il trasferimento dei dati, accelerando così il funzionamento generale del computer.
Di solito una specifica porzione di memoria viene designata come area da utilizzare per l'accesso diretto alla memoria. Nello standard del bus ISA, è possibile indirizzare fino a 16 megabyte di memoria per DMA. Gli standard EISA e Micro Channel Architecture consentono l'accesso all'intera gamma di indirizzi di memoria (supponendo che siano indirizzabili con 32 bit). Peripheral Component Interconnect esegue DMA utilizzando un bus master (con il microprocessore che "delega" il controllo I / O al controller PCI).
Un'alternativa al DMA è l'interfaccia PIO (Programmed Input / Output) in cui tutti i dati trasmessi tra i dispositivi passano attraverso il processore. Un protocollo più recente per l'interfaccia ATA / IDE è Ultra DMA, che fornisce una velocità di trasferimento dati fino a 33 MB (megabyte) al secondo. I dischi rigidi forniti con Ultra DMA / 33 supportano anche le modalità PIO 1, 3 e 4 e la modalità DMA multiword 2 (a 16.6 megabyte al secondo).