структура DXGKARGCB_MAP_PHYSICAL_MEMORY (d3dkmddi.h)

Структура DXGKARGCB_MAP_PHYSICAL_MEMORY содержит сведения, используемые функцией обратного вызова DXGKCB_MAPPHYSICALMEMORY для сопоставления видимого ЦП виртуального адреса с базовой физической памятью.

Синтаксис

typedef struct _DXGKARGCB_MAP_PHYSICAL_MEMORY {
  [in]     HANDLE           hPhysicalMemoryObject;
  [in]     DXGK_ACCESS_MODE AccessMode;
  [in/out] SIZE_T           Offset;
  [in]     SIZE_T           Size;
  [out]    void             *pMappedAddress;
} DXGKARGCB_MAP_PHYSICAL_MEMORY;

Члены

[in] hPhysicalMemoryObject

Объект физической памяти, описывающий базовые физические страницы, которые необходимо сопоставить. Этот объект был создан при вызове DXGKCB_CREATEPHYSICALMEMORYOBJECT.

[in] AccessMode

Значение перечисления DXGK_ACCESS_MODE , описывающее режим доступа (пользовательский режим или режим ядра), для которого должно быть выполнено сопоставление.

[in/out] Offset

В качестве входных данных задает смещение от начала объекта физической памяти в байтах. В качестве выходных данных указывает смещение от начала сопоставленного базового адреса, где находятся запрошенные данные, в байтах. Дополнительные сведения см. в разделе "Примечания".

[in] Size

В качестве входных данных указывает запрошенный размер сопоставленной области в байтах. В качестве выходных данных указывает фактический сопоставленный размер в байтах. Дополнительные сведения см. в разделе "Примечания".

[out] pMappedAddress

При успешном вызове DXGKCB_MAPPHYSICALMEMORY это указатель на базовое сопоставление физической памяти. Начало сопоставленного диапазона памяти может не совпадать со смещением, запрошенным драйвером, если требовалось округление или выравнивание. В результате выходное значение Offset означает смещение от базового адреса к данным, запрошенным драйвером. То есть ActualAddress = BaseAddress + Offset.

Комментарии

Offset и Size являются входными и выходными параметрами. В качестве входных данных они описывают область физической памяти, запрашиваемой вызывающим элементом. В выходных данных они описывают фактическое сопоставленного представления. Это связано с тем, что адрес, сопоставленный с соответствующей физической памятью, может не совпадать с запрошенным смещением. Фактические данные, запрашиваемые вызывающим элементом, будут равнысмещениюpMappedAddress + . Размер сопоставленного диапазона виртуальных адресов будет выходным значением Size, которое может быть больше запрошенного размера.

Дополнительные сведения см. в статье Переназначение DMA IOMMU .

Требования

Требование Значение
Минимальная версия сервера Windows Server 2022 (WDDM 2.9)
Верхняя часть d3dkmddi.h

См. также раздел

DXGK_ACCESS_MODE

DXGKCB_MAPPHYSICALMEMORY