Solving a Blue Screen Crash in Virtual PC on Windows 7

Whenever we get close to releasing another version of ComicBase, a big part of the testing is to make sure it runs under all our supported platforms. For ComicBase, this means 32 and 64 bit versions of a dozen or so variants of Windows XP, Windows Vista (yeah, “boo, hiss”), and of course, Windows 7.

A decade ago, we used to abuse the computer rentals at Kinko’s, trying each attempt at an installer out on a machine before moving on to the next one (and, I confess, leaving the poor Kinko’s staff to deal with any crud we may have left behind when the installers went awry).When an installer was really problematic, we’d have to move to another location. In this way, I learned the locations of most of the Kinko’s locations in the San Jose area.

In these more enlightened times, we use “virtual machines” — basically, Windows running on simulated hardware using pre-set disk images which we keep up to date with all the various flavors we need to test against. It’s basically a computer within a computer, complete with its own boot-up and shut-down–all within a little window on your regular PC. As a bonus, we can try the install, then just “wipe” the virtual PC back to its virgin state for future testing.  As you can imagine, these virtual PCs have become crucial to our testing process.

Unfortunately, something weird has begun happening using the new version of Virtual PC built into Windows 7 Ultimate Edition: after running installers that we know to be good, the virtual box began crashing with the dreaded Blue Screen of Death (BSOD). (If you think running a computer within a computer is weird, having your simulated computer blue-screen on you is downright bizarre).

After trying seemingly everything (different virtual machines, using it with or without Windows XP mode, etc.) it seems the problem is triggered by the new Hardware Virtualization support in Virtual PC and the particular hardware of our development machines. (Typically i7-based, Gigabyte P55 boards with a variety of NVidia graphic cards and overly complicated graphic setups). By going into the BIOS on the Gigabyte boards, selecting M.I.T., and disabling the Hardware Virtualization support, our virtual PC once again ran normally (if somewhat slowly).

Naturally, as luck would have it, there’s still a wrinkle in that the very first thing ComicBase does when launching is try to locate its Picture disks and (you guessed it!) turning off the hardware virtualization support seems to interfere with the virtual box’s ability to scan drives, making the initial drive check take several minutes instead of a second or two.

Unless we can find a better solution, it looks like we’ll either have to test on different basic hardware, or find a different virtualization software like Virtual Box to test against. The latter, of course, would force us to spend a week or more re-creating our test environment on the new (incompatible) disk images used by Virtual Box.

Any virtualization gurus out there got suggestions for a better way to go?

About these ads

3 responses to “Solving a Blue Screen Crash in Virtual PC on Windows 7

  1. Mike Gallenstein

    I would try a different hypervisor. I highly recommend VirtualBox. Very powerful, runs on multiple platforms and best of all, it’s free!! http://www.virtualbox.org/

  2. Mike Gallenstein

    Just to be sure, I’m pretty sure you can use Vbox to migrate your disk image. In the vbox install folder there should be an exe called vboxmanage.exe. By running something like:
    vboxmanage clonehd virtualpcHD.vhd vboximageHD.vdi –format VDI
    It should convert the disk image to very friendly vbox disk image. You don’t have to do this though. Virtualbox will run the VHD file straight out-of-the-box.

  3. You can use VHD’s with VirtualBox — I do so that my VMs work on both Hyper-V and VirtualBox (Note that Hyper-V does not support SATA controllers, your VM has to use IDE for this to work).

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s