Can I mount IMG files in Hyper-V?

The vast majority of the software I use on a regular basis is packaged as either standalone executables, MSIs, or ISO images. However, the Team Foundation Server client for Visual Studio 2005 (yes, I still have to use 2K5 regularly) is in an IMG file. With VMWare Workstation, this wasn’t a problem; IMG images could be mounted just as easily as ISO images. Hyper-V (and R2), unfortunately, is limited to mounting ISOs. So how do I get the VSTF client installed on my Hyper-V guest?

Given the rarity of IMG files nowadays, I decided to settle for a one-off workaround, and convert my IMG to an ISO that would be broadly compatible with any image mounting software, including Hyper-V.  Several options are available for this; I used MagicISO to do the conversion.  The entire process, from download to new ISO, took only a few minutes, and I was able to successfully mount what had originally been an IMG image.


Which virtualization platform is right for me?

As a developer working primarily with Microsoft technologies, I would love for Microsoft to provide a proper desktop virtualization solution, i.e. a virtualization platform that can be used directly on a desktop computer.  I started with various versions of Virtual PC and Virtual Server, but they have all had significant shortcomings.  Even the latest Virtual PC is still essentially useless for developers, as it still doesn’t support 64-bit guests, much less several other desirable features such as multiple CPUs per guest.  Thus, I’ve been using VMWare Workstation for my primary virtualization solution for a while now.  It supports 64-bit and multiple cpus per guest, and sports a reasonably slick interface.  I don’t really have any complaints about it other than the two-CPU-max-per-guest limitation.

However, a lot of my recent work has involved writing code that scales well to 4 or 8 threads.  That’s hard to test properly in an environment that supports only 2 threads.  Plus, I work around mostly Microsofties, so I would like some reason to get off a VMWare platform, or at least be able to explain why the Microsoft solutions were all inferior.  So, now that Windows 7 and Server 2008 R2 are RTM, it’s time to try using Hyper-V for my desktop virtualization platform.  I’ve already run into (and solved) several problems; I’ll detail those and any future problems that pop up here.

Posted in Uncategorized. Tags: , , . Comments Off on Which virtualization platform is right for me?

Hyper-V and slow graphics?

When I first switched to Hyper-V for desktop VM use, I discovered horrible graphics performance.  The reason boils down to how the new WDDM driver model used in Vista and later interacts with the hypervisor.  Apparently, many people have reported this problem, and some have complained that this hasn’t been fixed in Hyper-V R2.  However, that’s not exactly true.

Windows Server 2008 R2 has added support for Second Level Address Translation (SLAT); Intel calls this feature Extended Page Tables (EPT), while AMD calls it Nested Page Tables (NPT) or Rapid Virtualization Indexing (RVI).  On hardware that supports this, and with Server 2008 R2 Hyper-V for your VM solution, modern graphics cards (and their associated WDDM 1.0/1.1 drivers) work fine.  The catch is that you need an Intel i7 (Nehalem) processor or a recent AMD processor to have that support — Intel Core 2 Duos and Quads don’t support EPT.  This prompted me to switch from my C2D E8400 to an i7 920 for my desktop VM machine while keeping the same nVidia 9600GT for video; with 2008 R2, Hyper-V no longer suffers from the horrible slowdown despite using the latest 190.62 drivers. Hooray!