共用方式為


D3DKMTMapGpuVirtualAddress 函式 (d3dkmthk.h)

D3DKMTMapGpuVirtualAddress 會將 GPU 虛擬位址範圍對應至特定配置範圍,或將它放入 InvalidZero 狀態。

語法

NTSTATUS D3DKMTMapGpuVirtualAddress(
  D3DDDI_MAPGPUVIRTUALADDRESS *unnamedParam1
);

參數

unnamedParam1

[in/out] pData描述作業之D3DDDI_MAPGPUVIRTUALADDRESS 結構的指標。

傳回值

傳回碼 Description
STATUS_SUCCESS 已成功建立裝置內容。
STATUS_INVALID_PARAMETER 已驗證參數,並判斷為不正確。

此函式也可能傳回其他 NTSTATUS 值。

備註

驅動程式可以在 VA) (指定基底 GPU 虛擬位址,或讓視訊記憶體管理員自動挑選一個。 指定非 NULL BaseAddress 值時,從 BaseAddress 到 BaseAddress+Size 的整個範圍都必須處於釋放狀態,或屬於呼叫 D3DKMTMapGpuVirtualAddressDxgkCbReserveGpuVirtualAddressRange 取得的 VA 範圍。 指定 Protection.ZeroProtection.NoAccess 時,VA 範圍不能屬於呼叫 MapGpuVirtualAddressCb 取得的範圍

驅動程式可以指定對應是否應該允許寫入和執行許可權,以及預設一律存在的讀取許可權。

在鏈接的顯示配接器 (LDA) 組態中,分頁佇列會定義一個實體 GPU,其頁面數據表已修改,如果不是 NULL,則配置句柄 () 定義分頁表專案所指向的位置。 配置可以駐留在任何實體 GPU 記憶體區段中。

當 GPU VA (GPU VA 對應至) 損毀時,就會釋放 API 所配置的 GPU VA 範圍。 VA 範圍也可以藉由呼叫 D3DKMTFreeGpuVirtualAddress 來釋放,但如有必要,這必須與配置解構進行同步處理。

規格需求

需求
最低支援的用戶端 Windows 10
最低支援的伺服器 Windows Server 2016
目標平台 Universal
標頭 d3dkmthk.h (包含 D3dkmthk.h)
程式庫 Gdi32.lib
Dll Gdi32.dll

另請參閱

DxgkCbReserveGpuVirtualAddressRange