Lessico IT › Hardware › Descrittore DMA

Descrittore DMA

Hardware Svenska → Aggiornato: 2026-11-04

Una piccola struttura in memoria che descrive un trasferimento (sorgente, destinazione, lunghezza e posizione del descrittore successivo), così che il controller DMA possa percorrere da solo un'intera catena.

Un semplice canale DMA si programma tramite registri: indirizzo, conteggio, via. Basta per un buffer. Per più buffer, o per dati sparsi in memoria, si dispongono in RAM dei descrittori e si fornisce al controller l'indirizzo del primo. Il controller lo legge, esegue il trasferimento, segue il puntatore al successivo e prosegue. È così che funziona in pratica lo scatter-gather, e un anello di descrittori dà l'effetto del DMA circolare con quanti buffer si desidera.

Le schede di rete hanno spinto l'idea più in là. I loro anelli di descrittori portano un bit di proprietà che indica se una voce appartiene al driver o all'hardware. Il bug classico sta nella cache: la CPU scrive un descrittore che resta in L1, il controller legge dalla RAM dati obsoleti e il risultato sembra un guasto hardware. Raramente lo è. È la gestione della cache.

← Torna al lessico