Windows 驱动程序框架中的 DMA 简介

[仅适用于 KMDF]

在 Windows 7 及更早版本上,Kernel-Mode Driver Framework (KMDF) 仅支持 (DMA) 设备的总线-主直接内存访问。 此类设备包含其自己的 DMA 控制器。

在片上系统 (SoC) 上运行Windows 8及更高版本的平台上,该框架还支持系统模式 DMA,其中多个设备共享单个多通道 DMA 控制器。

框架的 DMA 支持包括:

  • 一组框架 DMA 对象和方法,驱动程序使用这些对象和方法将 I/O 请求转换为 DMA 操作。

  • 一组驱动程序提供的事件回调函数,这些函数在发生不同事件时配置设备的 DMA 行为。

框架支持单数据包和散点/收集 DMA 传输。 它还支持使用通用缓冲区。

在运行 Windows 8 及更高版本的基于 SoC 的平台上,框架支持单数据包系统模式 DMA 传输。 有关详细信息,请参阅 支持 System-Mode DMA

框架不支持基于电脑的平台上的系统模式 DMA 传输。

为设备驱动程序启用 DMA 重新映射