The paper describes how Microsoft Windows drivers support Direct Memory Access (DMA) devices, using the Windows Driver Foundation (WDF) kernel-mode driver framework. Because understanding Windows DMA architecture is the key to properly implementing DMA drivers on Windows, this paper also describes the Windows DMA architecture and the Windows DMA abstraction.
Related white papers
Intel 915G Express Chipset
Learn how the Intel Express Chipset can integrate several advancements to address the demands of evolving software, including next-generation memory capabilities.
Performance Comparison: Intel® Itanium® 2-Based Servers Running SAS 9
The Cornell Institute for Social and Economic Research (CISER) set out to increase the performance of some of its processing- and memory-intensive SAS applications. CISER had to acquire the...
Memory Technology Evolution
The purpose of this paper is to discuss the evolution of main and graphics memory technologies in relation to Compaq products. This paper should help alleviate some of the confusion surrounding the...
The Price of Safety: Evaluating IOMMU Performance
IOMMUs, IO Memory Management Units, are hardware devices that translate device DMA addresses to machine addresses. An isolation capable IOMMU restricts a device so that it can only access parts...
New DDR2 Memory Offers Advantages for Dual-Processor Servers
Technology innovation across platform subsystems is necessary to keep computing platforms in balance. DDR2 is the next logical progression for memory standards and speeds, and is considered one of most...
Understanding the Effects of Wrong-Path Memory References on Processor Performance
High-performance out-of-order processors spend a significant portion of their execution time on the incorrect program path even though they employ aggressive branch pre-diction algorithms. Although memory references generated on the...
Cache Filtering Techniques to Reduce the Negative Impact of Useless Speculative Memory References on Processor Performance
High-performance processors employ aggressive speculation and prefetching techniques to increase performance. Speculative memory references caused by these techniques sometimes bring data into the caches that are not needed by correct...

