Direct Memory Access: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
LjL (discussione | contributi)
Nessun oggetto della modifica
LjL (discussione | contributi)
Completata traduzione
Riga 5:
Il DMA è una componente essenziale di tutti i computer moderni, in quanto permette a periferiche che lavorano a velocità diverse di comunicare senza assoggettare la CPU a un enorme carico di [[interrupt]].
 
Essenzialmente, in un trasferimento DMA un blocco di memoria viene copiato da una periferica a un'altra. La CPU si limita a dare avvio al trasferimento, mentre il trasferimento vero e proprio è svolto dal '''controller DMA'''. Un caso tipico è lo spostamento di un blocco di memoria da unità di memoria esterna alla memoria principale. Se questa operazione, come avviene grazie al DMA, non blocca il processore, esso può continuare a svolgere altre operazioni. '''''DMA transfers are essential to high performance [[embedded system|embedded]] algorithms and skillfully created applications can outperform [[cache]].'''''
 
La tecnica del DMA "scatter-gather" permette il trasferimento di dati verso più regioni di memoria nel corso di una singola transazione DMA. Il risultato è equivalente a quello che si avrebbe con una catena di normali richieste DMA, ma in questo modo si alleggerisce ulteriormente la CPU da interrupt e operazioni di copia di dati.
"Scatter-gather" DMA allows the transfer of data to multiple memory areas in a single DMA transaction. It is equivalent to the chaining together of multiple simple DMA requests. Again, the motivation is to off-load multiple [[I/O]] interrupt and data copy tasks from the CPU.
 
La sigla '''DRQ''' standssta forper ''DMA requestRequest'' (richiesta di DMA); la duale '''DACK''' forsta per ''DMA acknowledge'' (accettazione di DMA).
 
== SeeVedere alsoanche ==
* [[I/O]]
* [[Remote Direct Memory Access]]
 
== ExternalCollegamenti linksesterni ==
* [http://www.xml.com/ldd/chapter/book/ch13.html mmap() and DMA], fromda ''Linux Device Drivers, 2nd Edition'', Alessandro Rubini & Jonathan Corbet
* [http://www.eventhelix.com/RealtimeMantra/FaultHandling/dma_interrupt_handling.htm DMA and Interrupt Handling]
 
Riga 23 ⟶ 24:
 
[[de:Direct Memory Access]]
[[en:Direct Memory Access]]
[[fr:Accès direct mémoire]]
[[gl:Acceso directo á memoria]]