Virtualization
Users of Windows 7 Professional, Enterprise, and Ultimate could also download a free feature called XP Mode, which was essentially a copy of Windows XP that could only be used inside of Windows Virtual PC.
In Windows 7, Microsoft provided a virtualization solution called Windows Virtual PC that allowed users to run virtualized instances of Windows XP, Vista, and 7, and even individual applications within those environments, side by side with native Windows 7 applications. And it did so without forcing users to manage the complexity of dealing with two desktops, one virtualized and one native.
Windows Virtual PC offered decent functionality but middling performance because it was based on an older form of virtualization technology purchased long ago from Connectix Corporation. So in Windows 8, Microsoft has dramatically expanded the virtualization capabilities of its desktop OS. And let’s just say that performance is no longer going to be an issue.
Thanks to the integration of its previously server-only hypervisor technology, Hyper-V, Windows 8 offers the same core virtualization features as does Windows Server 2012, albeit aimed at a few core scenarios. And it doesn’t stop there: Windows 8 also includes some interesting and useful virtualization integration features that really put this version over the top.
Client Hyper-V
Client Hyper-V, as Microsoft calls the Windows 8 version of Hyper-V, has been added to the OS for two primary reasons. One is for software developers who need to test applications and web apps on a variety of operating system and browser combinations. The other reason is for IT pros who are managing virtualized environments using Microsoft’s enterprise virtualization tools—Hyper-V on Windows Server 2012, but also Application Virtualization (App-V) and Microsoft Enterprise Desktop Virtualization (MED-V)—and want to work with virtual machines (VMs) and their Virtual Hard Disks (VHDs) locally on a PC before deploying them elsewhere in their workplace.
These reasons bear little resemblance to the stated mission of Windows Virtual PC/XP Mode, which existed for a completely different reason: to provide users with a fairly seamless way to access Windows XP-based applications that, for one reason or another, simply wouldn’t run natively on Windows 7. And while that may be confusing for some, if you need the XP Mode functionality from Virtual PC, you’re still welcome to use it in Windows 8 Pro. Client Hyper-V is a completely different animal.
Generally speaking, it’s more capable and powerful than Virtual PC. It offers much better performance and you can run multiple virtual machines simultaneously. It runs both 32-bit and 64-bit operating systems, and not just 32-bit like Virtual PC. And it comes with an amazing management interface, just like the version from Windows Server. (In fact, they’re identical.) This means that your experience using Client Hyper-V in Windows 8 will be directly applicable to Windows Server 2012 as well.
Of course, with this power comes some responsibility. And Client Hyper-V comes with some important system requirements that can’t be circumvented. These include the following:
• 64-bit PCs only: Client Hyper-V only runs on 64-bit PCs that are running the 64-bit version of Windows 8 Pro (or Enterprise).
• Chipset requirements: Hyper-V requires modern Intel and AMD microprocessors that include Second Level Address Translation (SLAT). This is a feature of all current generation microprocessors (for example, Intel “Sandy Bridge” and newer) at the time of this writing.
• RAM: Your PC must be configured with at least 4 GB of RAM. But with virtualization, more is always better, and if you wish to run multiple virtualized OSes, you’re going to need a lot of RAM.
Assuming you meet these requirements, you’re free to install and use Hyper-V. Because this is a feature of Windows, you install Hyper-V in the Windows Features control panel. This can be hard to find, but the easiest way is Start Search: Type windows features, then select Settings, and then choose the option titled Turn Windows features on or off. The Windows Features window is shown in Figure 14-8.
Figure 14-8: You can add Hyper-V to your PC using Windows Features.
Expand the Hyper-V entry in the list of Windows features, and you’ll see two entries: Hyper-V Managements Tools and Hyper-V Platform. Any Windows 8 PC can install the management tools, so that option should always be available. But if Hyper-V Platform is grayed out, it can mean only one of two things: Either you don’t meet the system requirements or the CPU’s virtualization features are disabled in the PC firmware or BIOS.
If it’s the latter case, you’ll need to examine the firmware and enable the correct features. How you do so, of course, will vary from PC to PC, so there’s no way to provide general instructions here. Consult your PC’s documentation for the details.
Once you’ve selected all of the Hyper-V features (and do select them all if you’ll be using Hyper-V on that PC), click OK to install Hyper-V. The PC will need to be restarted. Once it does so, you can use the various Hyper-V tools to create and work with virtual machines. There are two primary interfaces: Hyper-V Manager and Hyper-V Virtual Machine Connection (VMC).
Hyper-V Manager is the Hyper-V management console and the exact same utility that is provided with Windows Server 2012 and the Remote Server Administration Tools (RSAT) for Windows Server 2012. As you can see in Figure 14-9, Hyper-V Manager is a modern and full-featured tool, and all you need to create, manage, and run virtual environments on your PC.
Figure 14-9: Hyper-V Manager
Hyper-V Manager is such a feature rich application that describing all of its features would require a book in its own right. But here are the top things you can do with this utility:
• Connect to other PCs or servers: While you can of course work solely on your PC, you can also connect to other Hyper-V installs on other PCs or servers in your environment. In fact, you can connect to multiple Hyper-Vs, which is useful for copying virtual machines from machine to machine, within Hyper-V Manager, using drag and drop.
• Create a virtual machine: The primary function of Client Hyper-V, of course, concerns the creation and configuration of virtual machines, or VMs. To create a new virtual machine, click New and then Virtual Machine in the Actions pane and then step through the wizard to complete the action. Each virtual machine can be configured with a name, (dynamic) RAM allotment, a network, one or more virtual hard disks (VHDs), and an attached installation media (which can be a physical disc, an ISO, or other source).
Don’t have Hyper-V Manager? You can also create VHDs from Disk Management. From that application, choose Action, Create VHD.
• Create and manage a virtual hard disk: Separate from your virtualized environments, you can create and then edit virtual disks that can be used by any of these environments (or accessed as physical disks from the host OS—your PC—using a new VHD shell integration feature we’ll describe shortly). To create a new VHD, click New and then Virtual Hard Disk in the Actions pane and then step through the wizard. Note that Client Hyper-V now supports the newer VHDX format, which provides support for virtual disks up to 64 TB. But VHDX is not supported in OSes earlier than Windows 8 and Windows Server 2012. Also, VHDs can (and should be) configured to be dynamically sized. That way, a 2 TB virtual disk—which appears as a single file to the host system—won’t take up much too much disk space unless you later fill it up with content. To edit a virtual disk, select Edit Disk from the Actions pane.