I am recently developing a hypervisor. The Intel SDM lists a lot of VMX related CPU features, like "use MSR bitmaps", "virtualize APIC accesses", etc. Though I want to use these features, I would like to make sure my hypervisor can run on reasonably old CPUs (e.g. CPUs produced after 2013, 10 years ago).
Is there a systematic way to check when Intel released a CPU feature? For example, I want to answer the following questions:
- What/when is the first CPU released by Intel that supports use MSR bitmaps (i.e.
CPUID.01H:ECX.[5] = 1 && IA32_VMX_PROCBASED_CTLS[60]
)? - What/when is the first CPU released by Intel that supports virtualize APIC accesses (i.e.
CPUID.01H:ECX.[5] = 1 && IA32_VMX_PROCBASED_CTLS2[32]
)? - ...