Skip to main content

Cos'è l'accesso alla memoria diretta?

L'accesso diretto alla memoria, a volte chiamato DMA, è un metodo per trasferimento di dati dalla memoria di accesso casuale a un'altra parte di un computer senza occupare l'unità di elaborazione centrale.Questa capacità è integrata nei sistemi informatici più moderni.Permette al computer di eseguire più attività contemporaneamente, rendendo alla fine il computer più veloce.Un computer deve elaborare tutta l'input o l'output del computer.Prima dell'accesso a memoria diretta, il download o il caricamento dei dati hanno assunto tutta l'attenzione dei processori centrali.Potrebbe fare solo un compito alla volta.

Un computer con accesso a memoria diretta abilitata è come un piccolo imprenditore con un paio di assistenti.Invece di gestire direttamente tutte le informazioni, l'unità di elaborazione centrale è in grado di delegare l'attività al controller di accesso alla memoria diretta.Questo è un dispositivo integrato nella scheda madre che supervisiona le operazioni di accesso alla memoria diretta.L'unità di elaborazione centrale è quindi libera di eseguire altre attività mentre si svolge il caricamento o il download.Quando l'attività delegata è completa, il controller DMA dice all'unità di elaborazione centrale.

Ogni porta su un computer ha almeno un canale di accesso alla memoria diretta che può essere assegnato ai dispositivi collegati tramite quella porta.Per funzionare correttamente, a ciascun dispositivo deve essere assegnato un canale diverso.La maggior parte delle schede che possono essere installate in un computer, come audio, rete o schede video, può utilizzare l'accesso a memoria diretta per eseguire le loro attività.

Anche i processori multi-core sono in grado di utilizzare l'accesso diretto alla memoria.Generalmente hanno un tipo di memoria temporanea chiamata memoria locale o scratchpad.Quando l'azione su cui stanno lavorando è completata, possono trasferire i dati dalla memoria locale alla memoria principale utilizzando un canale di memoria di accesso diretto.

Lo svantaggio a seconda del DMA è che può causare quella che viene chiamata perdita di coerenza della cache.Fondamentalmente ciò significa che i dati si muovono continuamente e possono essere archiviati in più posizioni temporanee.Il problema è che quando al computer viene chiesto di accedere alle informazioni, potrebbe non accedere alle informazioni più recenti.I produttori di computer possono gestire questo utilizzando hardware speciale o programmando il sistema operativo per proteggersi dalla perdita di coerenza della cache.