cache一致性
On machines or bus configurations inwhich the hardware does not ensure cache coherence for DMA operations—such ascertain Intel Itanium systems—the standard Windows DMA implementation does theprocess-specific work that is necessary to ensure such coherency when the driver calls WdfDmaTransactionExecute.
The framework flushes this cache when the driver callsWdfDmaTransactionDmaCompleted.
Map寄存器
在系统地址空间和物理地址空间 翻译地址。类似于页表项和页目录项用于物理地址和虚拟地址之间的转换一样。每个map寄存器可以转换高达4KB的地址。Map寄存器是一种共享资源。系统根据创建DMA enable 对象时的最大传输长度reserves map寄存器。
框架会在执行transaction事务前立即分配map registers,在transaction完成后释放。一旦DMA设备的驱动程序从或者向系统内存拷贝数据,框架会动态分配 以及编程map registers.
Number of Required Map Registers =(Transfer Size / PAGE_SIZE) + 1