Поделиться через


структура 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.

Замечания

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

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

Требования

Требование Ценность
минимальный поддерживаемый сервер Windows Server 2022 (WDDM 2.9)
заголовка d3dkmddi.h

См. также

DXGK_ACCESS_MODE

DXGKCB_MAPPHYSICALMEMORY