DXGKDDI_MITIGABLE_DEVICE_INTERFACE 구조체(dispmprt.h)

이 디바이스 인터페이스는 가로채고 완화해야 하는 디바이스 기본 주소 레지스터의 부분을 지정합니다.

이러한 범위는 보호되는 하드웨어의 섹션이거나, 노출된 경우 게스트 가상 머신에서 충돌 또는 악용이 발생할 수 있습니다. 심층 방어 방법의 일환으로 이러한 중요한 하드웨어 영역은 사용자 모드 디바이스 에뮬레이터가 아니라 더 신뢰할 수 있는 커널 모드 디바이스 드라이버에 의해 노출되고 보호됩니다.

구문

typedef struct _DXGKDDI_MITIGABLE_DEVICE_INTERFACE {
  IN USHORT                             Size;
  IN USHORT                             Version;
  OUT PVOID                             Context;
  OUT PINTERFACE_REFERENCE              InterfaceReference;
  OUT PINTERFACE_DEREFERENCE            InterfaceDereference;
  OUT PDXGKDDI_QUERYMITIGATEDRANGECOUNT DxgkDdiQueryMitigatedRangeCount;
  OUT PDXGKDDI_QUERYMITIGATEDRANGES     DxgkDdiQueryMitigatedRanges;
} DXGKDDI_MITIGABLE_DEVICE_INTERFACE, *PDXGKDDI_MITIGABLE_DEVICE_INTERFACE;

멤버

Size

크기

Version

DXGKDDI_MITIGABLE_DEVICE_INTERFACE_VERSION 나타냅니다.

Context

디바이스 컨텍스트.

InterfaceReference

참조.

InterfaceDereference

역참조.

DxgkDdiQueryMitigatedRangeCount

완화된 범위 수를 쿼리하기 위해 호출됩니다.

DxgkDdiQueryMitigatedRanges

완화된 범위를 쿼리하기 위해 호출됩니다.

설명

이 인터페이스는 선택 사항이지만 가상 함수에 VM에 직접 노출하는 것이 안전하지 않은 하드웨어 리소스가 있는 모든 GPU에 대해 구현되어야 합니다. 드라이버가 완화를 사용하는 경우 완화를 구현하는 사용자 모드 에뮬레이션 DLL도 제공해야 합니다. KMD는 완화된 범위를 다시 매핑해야 하고 Dxgkkrnl에 알리기 위해 DxgkCbMitigatedRangeUpdate 콜백이 제공되도록 결정할 수 있습니다. Dxgkrnl은 완화된 범위를 비동기적으로 다시 열거합니다.

요구 사항

요구 사항
헤더 dispmprt.h