HviIsHypervisorMicrosoftCompatible

The HviIsHypervisorMicrosoftCompatible function tells whether
the cpuid instruction is implemented by a
hypervisor that has Microsoft’s interface.

Declaration

BOOLEAN HviIsHypervisorMicrosoftCompatible (VOID);

Return Value

The function returns TRUE or
FALSE according to whether a hypervisor is present
and implements Microsoft’s interface.

Availability

The HviIsHypervisorMicrosoftCompatible function is exported
by name from the kernel in version 10.0 and higher.

Documentation Status

The HviIsHypervisorMicrosoftCompatible function is not documented.

Behaviour

If a hypervisor is present, the function executes
cpuid leaf 0x40000001—see
HviGetHypervisorInterface—whose output in eax
is the 4-byte signature of the hypervisor’s interface. The function returns
TRUE
if and only if this signature is 0x31237648, i.e., “Hv#1” when the bytes are
read as text from least significant to most.