Skip to content

Latest commit

 

History

History
43 lines (23 loc) · 1.46 KB

dma-transactions-and-dma-transfers.md

File metadata and controls

43 lines (23 loc) · 1.46 KB
title description keywords ms.date
DMA Transactions and DMA Transfers
DMA Transactions and DMA Transfers
DMA transactions WDK KMDF
DMA operations WDK KMDF , transactions
bus-master DMA WDK KMDF , transactions
DMA operations WDK KMDF , transfers
bus-master DMA WDK KMDF , transfers
DMA transfers WDK KMDF
DMA transactions WDK KMDF , about DMA transactions
DMA transfers WDK KMDF , about DMA transfers
04/20/2017

DMA Transactions and DMA Transfers

[Applies to KMDF only]

To understand how the framework handles bus-master and system-mode DMA operations, you must know the following two terms:

DMA transaction
A DMA transaction is a complete I/O operation, such as a single read or write request from an application.

DMA transfer
A DMA transfer is a single hardware operation that transfers data from computer memory to a device or from the device to computer memory.

A single DMA transaction always consists of at least one DMA transfer, but a transaction can consist of many transfers.

When a framework-based driver receives an I/O request, the driver typically creates a single DMA transaction object to represent the request. When the framework begins servicing the transaction, it determines if the device can handle the entire transaction in a single transfer. If the transaction is too large, the framework breaks the transaction into multiple transfers.