This article builds upon the topic in the TechNet Library at: http://technet.microsoft.com/en-us/library/dd581879(WS.10).aspx
Applies To: Windows Server 2008
The virtual machine could not be started because the hypervisor is not running. Check your BIOS settings and BCD store, then restart the physical computer.
NOTE: You might also have seen the following error message when attempting to start the virtual machine.
Hyper-V requires hardware support, including: an x64 CPU; VT (Intel) or AMD-V (AMD) hardware extensions; No eXecute (NX)/eXecute Disable (XD) and full BIOS support for hardware virtualization. Check your physical computer's BIOS settings to ensure that virtualization features are enabled, and then turn off the power to your physical computer. Restart the physical machine. NOTE: Restarting the physical computer is not sufficient.
To check if the computer meets the hardware requirements, use the appropriate utlity for your CPU manufacturer:
If the computer meets the requirements for Microsoft virtualization software, see the video titled Hypervisor is not running error: How to fix, which demonstrates how to change the system BIOS on a computer to enable support for virtualization (http://go.microsoft.com/fwlink/?LinkId=163578).
Also, check that Boot Configuration Data (BCD) store is set to start the hypervisor, and then restart your physical computer.
The BCD store contains boot configuration parameters and controls how the operating system is started in Windows Vista and Windows Server 2008 operating systems. These parameters were previously in the Boot.ini file (in BIOS-based operating systems) or in the nonvolatile RAM (NVRAM) entries (in Extensible Firmware Interface-based operating systems).
You can use the Bcdedit.exe command-line tool to update BCD store with the correct launch options as referenced in the error, and then restart the server. Bcdedit.exe is located in the \Windows\System32 directory by default.
NOTE: Administrator privileges are required to use bcdedit to modify the BCD store. Unless otherwise specified, bcdedit operates on the system store by default.
On PC/AT BIOS systems, the BCD store resides in the active partition's \boot folder. On EFI systems, the file is located on the EFI system partition (ESP) under \EFI\Microsoft\Boot.
Caution: The BCD data store is a registry hive, but that hive should not be accessed with the registry API. Interaction with the underlying firmware occurs in the supported BCD interfaces. For this reason, BCD stores should be accessed only through the associated tools or WMI API. Incorrectly editing the registry might severely damage your system. Before making changes to the registry, you should back up any valued data.
For more information about the BCD Store, see How the Boot Configuration Data Store Works at http://technet.microsoft.com/en-us/library/cc770770(WS.10).aspx
For more information about using Bcdedit.exe, see http://go.microsoft.com/fwlink/?LinkID=147513
If your server contains an AMD "Bulldozer" based CPU, you may also need to apply the Advanced Vector Extensions (AVX) hotfix supplied by Microsoft in addition to performing the steps above. If your configuration matches the scenarios listed in the the "Symptoms" section of the page, request that the hotfix be sent to you by clicking the "View and request hotfix downloads" link underneath the title of the article.
Start the virtual machine again.
Thanks for sharing
This is a FLAT-OUT *BUG*! Bottom line: MICROSOFT SHOULD *NOT* ALLOW Hyper-V to even be INSTALLED, if hardware virtualization is NOT enabled!
Great post, tonysoper!
Good point. I totally agree.
RE: what to do with BCDEDIT to make the hypervisor start:
The article above says that we should use BCDEDIT to update the "correct launch options as referenced in the error." However, I expanded the error message Details, and they don't provide info about what to do with BCDEDIT. (I'm running Server 2008, R2). I did, however, stumble across it elsewhere on the interent, and I believe it's:
BCDEDIT /set hypervisorlaunchtype auto
See, for example, this thread: