回傳虛擬處理器在特定葉節點與子葉節點下觀察到的 CPUID 結果。
注意
這個功能只適用於 x64 分割區。
語法
typedef struct WHV_CPUID_OUTPUT
{
UINT32 Eax;
UINT32 Ebx;
UINT32 Ecx;
UINT32 Edx;
} WHV_CPUID_OUTPUT;
HRESULT
WINAPI
WHvGetVirtualProcessorCpuidOutput(
_In_ WHV_PARTITION_HANDLE Partition,
_In_ UINT32 VpIndex,
_In_ UINT32 Eax,
_In_ UINT32 Ecx,
_Out_ WHV_CPUID_OUTPUT* CpuidOutput
);
Parameters
Partition
handle 轉到 partition 物件。
VpIndex
指定被查詢 CPUID 結果的虛擬處理器的索引。
Eax
指定 CPUID 葉節點(指令執行時的 EAX 值)。
Ecx
指定 CPUID 子葉(指令發出時的 ECX 值)。
CpuidOutput
接收EAX虛擬處理器會觀察到的 、 EBXECXEDX 、 及值。
傳回值
如果函式成功,則傳回值為 S_OK。
若 CpuidOutput , NULL則返回值為 E_POINTER。
Remarks
該WHvGetVirtualProcessorCpuidOutput函式計算指定的虛擬處理器若執行CPUID該EaxEcx指令時,會觀察到的 CPUID 結果。 結果反映虛擬處理器目前的擴展狀態設定,任何 CPUID 結果都會覆蓋該分割 WHvPartitionPropertyCodeCpuidResultList區註冊的值,因此代表訪客實際會看到的值,而非原始的主機 CPUID 值。
Requirements
| 需求 | 價值 |
|---|---|
| 最低支援的 Windows | Windows 10,版本 20H2 |
| Header | WinHvPlatform.h |
| 圖書館 | WinHvPlatform.lib |
| DLL | WinHvPlatform.dll |
| Architecture | x64 |