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