DXGKARGCB_MAPFRAMEBUFFERPOINTER结构(d3dkmddi.h)
DXGKARGCB_MAPFRAMEBUFFERPOINTER 结构包含 DXGKCB_MAPFRAMEBUFFERPOINTER 回调函数用于映射帧缓冲区指针的参数。
语法
typedef struct _DXGKARGCB_MAPFRAMEBUFFERPOINTER {
[in] UINT PhysicalAdapterIndex;
[in] SIZE_T Size;
[in/out] SIZE_T Offset;
[out] PVOID pBaseAddress;
} DXGKARGCB_MAPFRAMEBUFFERPOINTER;
成员
[in] PhysicalAdapterIndex
物理适配器的索引。
[in] Size
节对象的映射子区域的大小(以字节为单位)。 大小 必须是PAGE_SIZE的倍数。
[in/out] Offset
在输入时,这是节对象的映射子区域偏移量(以字节为单位)。 偏移量必须是PAGE_SIZE的倍数。 在输出中,这是驱动程序应将数据复制到的输出基址的偏移量。
[out] pBaseAddress
指向节对象的映射子区域的 CPU 可访问基址指针。 驱动程序必须将输出 Offset 值添加到基址以获取任何复制作的目标地址(pDestinationAddress = pBaseAddress + Offset)。
言论
如果固定整个帧缓冲区的节对象失败,驱动程序必须尝试通过在较小的片段中执行传输来确保向前进度。 这是通过在初始化期间分配小型 MDL 或内存块来实现的,该内存可用于从硬件传输内容,然后调用 DXGKCB_MAPFRAMEBUFFERPOINTER 以获取指向节对象的子区域指针。
驱动程序负责将数据从预先分配的缓冲区复制到映射的子区域。 还原帧缓冲区内容时,反向也是事实。
有关详细信息,请参阅 基于 IOMMU 的 GPU 隔离。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 10 版本 1803 (WDDM 2.4) |
标头 | d3dkmddi.h |