PFND3DDDI_MAPGPUVIRTUALADDRESSCB 콜백 함수(d3dumddi.h)

pfnMapGpuVirtualAddressCb 는 GPU(그래픽 처리 장치) 가상 주소 범위를 특정 할당 범위에 매핑하거나 잘못되었 거나 0 상태로 설정합니다. 사용자 모드 드라이버는 매핑할 특정 기본 GPU 가상 주소를 지정하거나 비디오 메모리 관리자가 자동으로 하나를 선택하도록 할 수 있습니다. NULL이 아닌 BaseAddress 값을 지정할 때 BaseAddress에서 BaseAddressSize+까지의 전체 범위는 해제된 상태이거나 pfnMapGpuVirtualAddressCb 또는 pfnReserveGpuVirtualAddressCb를 호출하여 얻은 가상 주소 범위에 속해야 합니다. Protection.Zero 또는 Protection.NoAccess를 지정하면 가상 주소 범위는 pfnMapGpuVirtualAddressCb를 호출하여 얻은 범위에 속할 수 없습니다. 사용자 모드 드라이버는 기본적으로 항상 존재하는 읽기 권한 외에도 매핑에서 쓰기 & 실행 권한을 허용할지 지정할 수 있습니다. LDA 구성에서 페이징 큐는 페이지 테이블이 수정되는 실제 GPU를 정의하고 할당 핸들(NULL이 아닌 경우)은 페이지 테이블 항목이 가리키는 위치를 정의합니다. 할당은 실제 GPU 메모리 세그먼트에 상주할 수 있습니다.

구문

PFND3DDDI_MAPGPUVIRTUALADDRESSCB Pfnd3dddiMapgpuvirtualaddresscb;

HRESULT Pfnd3dddiMapgpuvirtualaddresscb(
  HANDLE hDevice,
  D3DDDI_MAPGPUVIRTUALADDRESS *unnamedParam2
)
{...}

매개 변수

hDevice

디스플레이 디바이스에 대한 핸들입니다.

unnamedParam2

pData [in, out]

수행할 작업을 설명하는 D3DDDI_MAPGPUVIRTUALADDRESS 구조체에 대한 포인터입니다.

반환 값

pfnMapGpuVirtualAddressCb 는 다음 값 중 하나를 반환합니다.

반환 코드 설명
S_OK 작업이 성공적으로 완료되었습니다.
E_PENDING 호출에 성공했지만 작업이 완료되지 않았습니다. 호출자는 할당에 액세스하기 전에 반환된 펜스 값을 기다려야 합니다.

이 함수는 다른 값을 반환할 수도 있습니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 10
지원되는 최소 서버 Windows Server 2016
대상 플랫폼 데스크톱
헤더 d3dumddi.h(D3dumddi.h 포함)

참고 항목

D3DDDI_MAPGPUVIRTUALADDRESS

pfnReserveGpuVirtualAddressCb