DXGKARGCB_ALLOCATECONTIGUOUSMEMORY 结构 (d3dkmddi.h)

DXGKARGCB_ALLOCATECONTIGUOUSMEMORY 结构包含DXGKCB_ALLOCATECONTIGUOUSMEMORY回调函数中使用的参数,用于分配连续内存。

语法

typedef struct _DXGKARGCB_ALLOCATECONTIGUOUSMEMORY {
  [in]  SIZE_T                   NumberOfBytes;
  [in]  PHYSICAL_ADDRESS         LowestAcceptableAddress;
  [in]  PHYSICAL_ADDRESS         HighestAcceptableAddress;
  [in]  PHYSICAL_ADDRESS         BoundaryAddressMultiple;
  [in]  DXGK_MEMORY_CACHING_TYPE CacheType;
  [out] HANDLE                   hMemoryHandle;
  [out] PVOID                    pMemory;
} DXGKARGCB_ALLOCATECONTIGUOUSMEMORY;

成员

[in] NumberOfBytes

要分配的连续内存块的大小(以字节为单位)。

[in] LowestAcceptableAddress

调用方可以使用的最低有效物理地址。 例如,如果设备只能寻址处理器物理内存地址范围前 8 MB 以上的位置,则此设备的驱动程序应将 LowestAcceptableAddress 设置为 0x0000000000800000。

[in] HighestAcceptableAddress

调用方可以使用的最高有效物理地址。 例如,如果设备只能寻址处理器物理内存地址范围前 16 MB 中的位置,则此设备的驱动程序应将 HighestAcceptableAddress 设置为 0x0000000000FFFFFF。

[in] BoundaryAddressMultiple

分配的缓冲区不得交叉的物理地址倍数。 物理地址复数必须始终为 2 的幂。 此参数是可选的,可以指定为零,以指示设备没有特殊的内存边界限制。

[in] CacheType

一个DXGK_MEMORY_CACHING_TYPE值,该值指定要分配的页的缓存类型。

[out] hMemoryHandle

用于分配的 Dxgkrnl 跟踪句柄。 此值应传递给相应的 DGXKCB_FREECONTIGUOUSMEMORY 回调函数。

[out] pMemory

保证在 IOMMU 生存期内映射到 IOMMU 的连续区块的非分页物理内存。

注解

有关详细信息,请参阅 基于 IOMMU 的 GPU 隔离

要求

要求
最低受支持的客户端 Windows 10版本 1803 (WDDM 2.4)
标头 d3dkmddi.h

另请参阅

DXGKCB_ALLOCATECONTIGUOUSMEMORY