CPUID Modifications for Intel Processors
The CPUID information presented in the following table reflects the hypervisor behavior of the CPUID instruction as documented in the publication, Intel Processor Identification and the CPUID Instruction, Application Note 485, document number 241618-030, dated January, 2006. All CPUID feature flags documented after that date will be returned cleared. In addition, all CPUID indexes not listed in the tables will return values that are all cleared.
CPUID modifications for Intel processors | |||
Index | Register | Name | Hypervisor value |
---|---|---|---|
0x00000000 |
EAX |
Highest value |
Minimum of the actual hardware value and 0x00000006. |
EBX ECX EDX |
Vendor ID |
Unmodified. | |
0x00000001 |
EAX |
Processor signature |
Unmodified for the root partition, set as the minimum otherwise (for more information about this signature, see Family, Model and Stepping Reported by CPUID). |
EBX |
Miscellaneous information |
Bits 0-7: Brand ID, unmodified. Bits 8-15: Chunks, unmodified. Bits 16-23: Count, unmodified if the DeprecatedExposeHyperthreads flag was specified at partition creation, one otherwise. [For the root partition, this field is always unmodified.] Bits 24-31: APIC ID modified to match low-order 8 bits of initial APIC ID of the virtual processor. [For the root partition, this field is unmodified.] | |
ECX |
Feature flags |
Bit 0: SSE3, unmodified. Bit 1: reserved, cleared. Bit 2: reserved, cleared. Bit 3: MONITOR, cleared. Bit 4: DS-CPL, cleared. Bit 5: VMX, cleared. Bit 6: reserved, cleared. Bit 7: EST, unmodified for the root partition and cleared for others. Indicates whether the underlying logical processor supports speed step technology. Bit 8: TM2, unmodified for the root partition and cleared for others. Indicates whether the underlying logical processor supports the Thermal Monitor 2 thermal control circuit (TCC). Bit 9: SSSE3, unmodified. Bit 10: CID, cleared. Bit 11: reserved, cleared. Bit 12: reserved, cleared. Bit 13: CX16, unmodified. Bit 14: xTPR, unmodified. Bit 15-30: reserved, cleared. Bit 31: if set, indicates that a hypervisor is present. | |
EDX |
Feature information |
Bit 0: FPU, unmodified. Bit 1: VME, unmodified. Bit 2: DE, unmodified. Bit 3: PSE, unmodified. Bit 4: TSC, unmodified. Bit 5: MSR, unmodified. Bit 6: PAE, unmodified. Bit 7: MCE, unmodified. Bit 8: CX8, unmodified. Bit 9: APIC, unmodified. Bit 10: reserved, cleared. Bit 11: SEP, unmodified. Bit 12: MTRR, set. Bit 13: PGE, unmodified. Bit 14: MCA, unmodified for root, cleared otherwise. Bit 15: CMOV, unmodified. Bit 16: PAT, unmodified. Bit 17: PSE-36, unmodified. Bit 18: PSN, cleared. Bit 19: CLFSH, unmodified. Bit 20: reserved, cleared. Bit 21: DS, cleared. Bit 22: ACPI, unmodified for the root partition, cleared otherwise. Bit 23: MMX, unmodified. Bit 24: FXSR, unmodified. Bit 25: SSE, unmodified. Bit 26: SSE2, unmodified. Bit 27: SS, cleared. Bit 28: HTT, unmodified if the DeprecatedExposeHyperthreads flag was specified at partition creation, cleared otherwise. Bit 29: TM, unmodified for the root partition, cleared otherwise. Bit 30: IA64, cleared. Bit 31: PBE, cleared. | |
0x00000002 |
All |
Cache and TLB descriptors |
Unmodified. |
0x00000003 |
All |
Processor serial number |
Cleared. |
0x00000004 |
All |
Deterministic cache parameters function |
Unmodified. |
0x00000005 |
All |
MONITOR/MWAIT |
Cleared. |
0x00000006 |
All |
Power management feature enumeration function |
Unmodified for the partition possessing the CPUManagement privilege (root), cleared otherwise. |
0x80000000 |
EAX |
Maximum input value for extended function CPUID information |
Minimum of the actual hardware value and 0x80000008. |
EBX ECX EDX |
Reserved |
Cleared. | |
0x80000001 |
EAX EBX |
Reserved |
Cleared. |
ECX |
Extended feature flags |
Bit 0: LAHF/SAHF, unmodified. Bits 1-31: reserved, cleared. | |
EDX |
Extended feature flags |
Bits 0-10: reserved, cleared. Bit 11: SYSCALL, unmodified. Bit 12-19: reserved, cleared. Bit 20: XD, unmodified. Bits 21-28: reserved, cleared. Bit 29: EM64T, unmodified. Bits 30-31: reserved, cleared. | |
0x80000002 through 0x80000004 |
All |
Processor brand string |
Unmodified. |
0x80000005 |
All |
Reserved |
Cleared. |
0x80000006 |
All |
Extended L2 cache features function |
Unmodified. |
0x80000007 |
All |
Reserved |
Cleared. |
0x80000008 |
EAX |
Extended address sizes function |
Bits 0-7: physical address size, modified to indicate the size of the GPA space that is supported (for the root partition this is unmodified). Bits 8-15: virtual address size, modified to indicate the size of the GVA space supported by the hypervisor (for the root partition this is unmodified). Bits 16-31: reserved, cleared. |
EDX |
Reserved |
Cleared. |
Send comments about this topic to Microsoft
Build date: 11/16/2013