Run Visual Studio 11 ALM VMs on a 32-bit operating system

Like most Microsoft ALM geeks, I downloaded the Visual Studio 11 ALM VM the day Brian Keller posted it. One of the first things I realized is that the VM is for 64-bit operating systems only. This is because Team Foundation Server 11 only runs on a 64-bit server OS. This is no problem for me, because I have Hyper-V running here at my desk and I can run 64-bit VMs just fine. But, if you are one of the unfortunate many who do not have a W2K8 64-bit environment sitting around, then this blog post is for you (maybe).

VirtualBox to the rescue

VirtualBox is Oracleโ€™s virtualization product. Itโ€™s freely available as Open Source Software under the terms of the GNU GPL. Personally, I’m a Hyper-V guy myself having the occasional fling with Virtual PC; but, VirtualBox has one feature that really seals the deal for me โ€“ and itโ€™s very handy in this specific situation: it supports 64-bit guest operating systems, running on 32-bit host operating systems! Yes, you read that correctly. Itโ€™s magic.

Important: You need to make sure that the PC you are running the 32-bit host hardware is x64 capable and supports hardware virtualization. You will need to verify that your system supports this and possibly enable it in the BIOS. Microsoft even has a tool you can use to help verify.

Steps to follow

  1. Verify that your 32-bit computer supports hardware virtualization.
  2. Download and install the latest version of VirtualBox (for Windows hosts).
  3. Download and expand the Visual Studio 11 VM to a safe location.
  4. Launch VirtualBox and create a new VM, giving it a friendly name and selecting Windows 2008 (64 bit) as the OS.

    image

  5. Give the VM adequate memory (mine seems to run fine with 2560mb and that leaves a ~1.5gb available for the host on 4gb machines)

    image

  6. Uncheck the Start-up Disk option (weโ€™ll come back to this in a bit).

    image

  7. Finish creating the VM.
  8. In the VM Manager, select the new VM and click Settings.
  9. In the Storage section, right-click on the SATA Controller and select Remove Controller.

    image

  10. Right-click on the IDE Controller and select Add Hard Disk. Why did we do these last two steps?

    image

  11. Select Choose existing disk and navigate to the .VHD file you expanded in step 3.
  12. Save your settings and then start, login, use, and love the VM!

Making it better

There are some other steps you may want to do in order to make using the VM a more enjoyable experience. Personally, I would โ€ฆ

  • Enable additional processors (if running on a multi-processor machine)
  • Disable Audio (unless you really need it)
  • Modify Network settings to ensure Internet connectivity
  • Activate Windows
  • Install VirtualBox Guest Additions
  • Stop and Disable the various Hyper-V services (Data Exchange, Guest Shutdown, Heartbeat, Time Synchronization, and Volume Shadow Copy Requestor)
  • Reboot and create a snapshot

For more information, check out the article Converting Hyper-V guest systems to VirtualBox as well as How to use VirtualBox for Hyper-V Preconfigured VM Images.