estructura D3DDDI_RESERVEGPUVIRTUALADDRESS (d3dukmdt.h)
El controlador gráfico en modo de usuario pasa D3DDDI_RESERVEGPUVIRTUALADDRESS al pfnReserveGpuVirtualAddress Cb de D3D para reservar un intervalo de direcciones en el espacio de direcciones virtuales de GPU del proceso actual.
Sintaxis
typedef struct D3DDDI_RESERVEGPUVIRTUALADDRESS {
union {
D3DKMT_HANDLE hPagingQueue;
D3DKMT_HANDLE hAdapter;
};
D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS BaseAddress;
D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS MinimumAddress;
D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS MaximumAddress;
D3DKMT_ALIGN64 D3DGPU_SIZE_T Size;
union {
D3DDDIGPUVIRTUALADDRESS_RESERVATION_TYPE ReservationType;
UINT Reserved0;
};
union {
D3DKMT_ALIGN64 UINT64 DriverProtection;
D3DKMT_ALIGN64 UINT64 Reserved1;
};
D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS VirtualAddress;
union {
D3DKMT_ALIGN64 UINT64 PagingFenceValue;
D3DKMT_ALIGN64 UINT64 Reserved2;
};
} D3DDDI_RESERVEGPUVIRTUALADDRESS;
Miembros
hPagingQueue
Este miembro está obsoleto. No lo uses.
hAdapter
[in] Controlador de adaptador de gráficos DirectX o cero (0). Si UMD establece hAdapter establecido en 0, el tiempo de ejecución D3D establecerá hAdapter en el D3DKMT_HANDLE del kernel antes de llamar a la interfaz del kernel D3DKMTReserveGpuVirtualAddress.
BaseAddress
[in/optional] Número de bytes que se van a reservar en el espacio de direcciones virtuales de GPU. BaseAddress debe alinearse con un límite de 64 KB.
Si baseAddress no es NULL, el administrador de memoria de vídeo intenta usar esta dirección como dirección base para el intervalo reservado. Si el intervalo de BaseAddress a BaseAddress+Size no es gratuito, se produce un error en la llamada. Cuando BaseAddress no es NULL, se omite MinimumAddress y MaximumAddress.
Si se especifica NULL, el administrador de memoria de vídeo elige la dirección base de la asignación dentro del MinimumAddress y MaximumAddress.
MinimumAddress
[in/optional] La dirección virtual de GPU mínima que se debe tener en cuenta para el intervalo reservado. minimumAddress está en bytes y debe alinearse con el límite de 64 KB. Se omite cuando BaseAddress no es NULL.
MaximumAddress
[in/optional] La dirección virtual de GPU máxima que se debe tener en cuenta para el intervalo reservado. El administrador de memoria de vídeo garantiza que BaseAddress+Size<= MaximumAddress. Si MaximumAddress está establecido en NULL, el administrador de memoria de vídeo no aplicará ningún límite.
MaximumAddress está en bytes y debe alinearse con el límite de 64 KB. Se omite cuando BaseAddress no es NULL.
Size
[in] Tamaño del intervalo que se va a reservar, en bytes. Debe ser un múltiplo de 64 KB.
ReservationType
Este miembro está obsoleto. No lo uses.
Reserved0
Este miembro está reservado y debe establecerse en cero.
DriverProtection
Este miembro está obsoleto. No lo uses.
Reserved1
Este miembro está reservado y debe establecerse en cero.
VirtualAddress
[out] Dirección virtual reservada.
PagingFenceValue
Este miembro está obsoleto. No lo uses.
Reserved2
Este miembro está reservado y debe establecerse en cero.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 10 |
servidor mínimo admitido | Windows Server 2016 |
encabezado de |
d3dukmdt.h (incluya D3dumddi.h, D3dkmddi.h) |