Mastering Windows Server 2016 Hyper-V

(Romina) #1

Prior to Windows Server 2012 Hyper-V, there was also a setting to enable running
older operating systems, such as NT 4, but this option has been removed from the
Hyper-V manager graphical user interface. The problem for older operating systems is
that modern processors return more information about the capabilities than can be
handled by the operating system, and it will blue screen (this was fixed in Windows
NT 4 SP6). This option can still be set, but it must be configured using PowerShell:


Set-VMProcessor -CompatibilityForOlderOperatingSystemsEnabled $true


A great way to understand these two settings is by leveraging the Coreinfo utility from
Sysinternals, which can list all features for a processor. You’ll find it at the following
location:


http://technet.microsoft.com/en-us/sysinternals/cc835722.aspx


When running Coreinfo on a processor without any compatibility enabled, I see all the
features available for the operating system. An enabled feature shows an * instead of a



  • . When I run Coreinfo on the same virtual machine but after setting
    CompatibilityForMigrationEnabled, all of the items in bold change from * to -, which
    means that they are now hidden, as shown in the following listing. In this example,
    SSSE3, SSE4.1, SSE4.2, and POPCNT were hidden. Running with
    CompatibilityForOlderOperatingSystemsEnabled removed the entire Logical
    Processor to Cache Map section from the returned data, which means that it was
    hidden from the operating system. It is important to use these features only when
    required, because you are removing capability from the processor, which you don’t
    want to do unless you absolutely have to.


S:\Tools>coreinfo


Coreinfo v3.2 - Dump information on system CPU and memory topology
Copyright (C) 2008-2012 Mark Russinovich
Sysinternals - www.sysinternals.com


Intel(R) Xeon(R) CPU E5530 @ 2.40GHz
Intel64 Family 6 Model 26 Stepping 5, GenuineIntel
HTT Hyperthreading enabled
HYPERVISOR
Hypervisor is present
VMX - Supports Intel hardware-assisted virtualization
SVM - Supports AMD hardware-assisted virtualization
EM64T * Supports 64-bit mode


SMX - Supports Intel trusted execution
SKINIT - Supports AMD SKINIT


NX Supports no-execute page protection
SMEP - Supports Supervisor Mode Execution Prevention
SMAP - Supports Supervisor Mode Access Prevention
PAGE1GB - Supports 1 GB large pages
PAE
Supports > 32-bit physical addresses
PAT Supports Page Attribute Table
PSE
Supports 4 MB pages

Free download pdf