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


функция обратного вызова DXGKCB_OPENPHYSICALMEMORYOBJECT (d3dkmddi.h)

Драйвер мини-порта в режиме ядра вызывает DXGKCB_OPENPHYSICALMEMORYOBJECT , чтобы открыть объект физической памяти и связать его с адаптером.

Синтаксис

DXGKCB_OPENPHYSICALMEMORYOBJECT DxgkcbOpenphysicalmemoryobject;

NTSTATUS DxgkcbOpenphysicalmemoryobject(
  [in/out] IN_OUT_PDXGKARGCB_OPEN_PHYSICAL_MEMORY_OBJECT pArgs
)
{...}

Параметры

[in/out] pArgs

Указатель на структуру DXGKARGCB_OPEN_PHYSICAL_MEMORY_OBJECT , содержащую сведения о открываемом объекте физической памяти.

Возвращаемое значение

DXGKCB_OPENPHYSICALMEMORYOBJECT возвращает STATUS_SUCCESS, если операция выполнена успешно. В противном случае возвращает соответствующий код ошибки NTSTATUS.

Комментарии

Чтобы создать список дескрипторов адресов (ADL) из объекта физической памяти, его необходимо сначала связать с адаптером. Обычно это делается при создании объекта физической памяти путем указания параметра hAdapter в вызове DXGKCB_CREATEPHYSICALMEMORYOBJECT. Однако в некоторых случаях дескриптор адаптера недоступен на момент выделения памяти (например, в начале процесса загрузки). В этом случае драйвер должен вызвать DXGKCB_OPENPHYSICALMEMORYOBJECT , чтобы связать объект физической памяти с адаптером перед вызовом DXGKCB_ALLOCATEADL.

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

DXGKCB_XXX функции реализуются Dxgkrnl. Чтобы использовать эту функцию обратного вызова, задайте соответствующие члены DXGKARGCB_OPEN_PHYSICAL_MEMORY_OBJECT , а затем вызовите DxgkCbOpenPhysicalMemoryObject через DXGKRNL_INTERFACE.

Требования

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

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

DXGKARGCB_OPEN_PHYSICAL_MEMORY_OBJECT

DXGKCB_ALLOCATEADL

DXGKCB_CLOSEPHYSICALMEMORYOBJECT

DXGKCB_CREATEPHYSICALMEMORYOBJECT