IT-lexicon › Hardware › DMA-descriptor

DMA-descriptor

Hardware Svenska → Bijgewerkt: 2026-11-04

Een kleine structuur in het geheugen die één transfer beschrijft — bron, bestemming, lengte en waar de volgende descriptor staat — zodat de DMA-controller zelfstandig een hele keten kan afwerken.

Een eenvoudig DMA-kanaal wordt via registers geprogrammeerd: adres, aantal, start. Dat volstaat voor één buffer. Voor meerdere buffers, of voor data die verspreid over het geheugen ligt, zet men descriptors in het RAM en geeft de controller het adres van de eerste. Die leest hem, voert de transfer uit, volgt de pointer naar de volgende en gaat door. Zo werkt scatter-gather in de praktijk, en een ring van descriptors geeft het effect van circulaire DMA met zoveel buffers als gewenst.

Netwerkkaarten dreven het idee het verst door. Hun descriptorringen bevatten een eigenaarsbit die aangeeft of een item van de driver of van de hardware is. De klassieke bug zit in de cache: de processor schrijft een descriptor die in L1 blijft hangen, de controller leest verouderd RAM, en het lijkt een hardwaredefect. Dat is het zelden. Het is cache maintenance.

← Terug naar het lexicon