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


BOOLEAN HviIsHypervisorMicrosoftCompatible (VOID);

Return Value

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


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

Documentation Status

The HviIsHypervisorMicrosoftCompatible function is not documented.


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.