she swears <i>geek</i> is a term of endearment

VMWare Fusion - Vista or XP

I have been using VMWare Fusion on the mac for 8 months or so.  Overall, I am extremely happy with the performance and capabilities is gives me.  Obviously, running windows on a Mac while also using Mac native apps is a given.  However, I also value the isolation it provides to my Windows installation and the flexibility it provides for managing and maintaining my Windows (virtual) machine.  Each time I think I would be better off running Windows off the bare metal, all I have to do is peek my head around and watch my dev counterpart, Bill, and his Toshiba running Vista…  8 times out of 10, there’s a spinning blue disc where his mouse icon should be.  2 out of 10, he’s getting Vistaed.

VmWare Considerations

First things, first.  If you are planning to run VM, you need space.  Unlike a real computer that manages memory judiciously, virtual machines have to hoard it, keep in on one place, and use it in ways that physical machines do not.  In return, you get the ability to copy a computer from drive to drive.  You can archive an entire machine onto an external device for safe keeping.  You can modify it, roll it back, branch it, etc.  That’s coooooool.

Hard drive:  You need hard drive space.  Get as much as possible.  Most people recommend using an external harddrive for your VM image.  I only recently started doing this for reasons I’ll explain in a minute.   I found that my MacBook Pro with a 180G 5400rpm HD was more than fast enough to give me excellent performance with just the internal harddrive.  However, that is not very much space when you start adding entire computers to it. 

I recently purchased a 500G external portable from Costco.com.  It rocks.  I purchased that to replace my 160G of the same brand.  More on that shortly.

Get no less than 500G.  Seriously.  If you are going to use an external drive, don’t screw around.  I recommend a TB.  Here is a SimpleTEch, USB 2.0, bus powered, 1 Terabyte, 7200RPM drive for $150.  It’s the model I have but twice the size.  I needed mine in a hurry.  I wish I’d gotten that instead.

Memory: Max it.  Think of VMWare as a mafia henchmen who, when asked how much it cost to save your life, he replies, "how much you got?"

I have 4G in my macBook.  I am reading that people have gotten 6 to work.  I am probably going to upgrade soon.  While I can run one VM and all my necessary tools with 4, I get a little crippled when I fire Adobe Illustrator up while my VM Vista is running.  XCode?  fuh-get-about it.  Xcode is a pig.  I can run XCode and one other app.  That has nothing to do with VMWare.  If you are thinking of developing an iPhone app that connects to Asp.Net, you need all the ram you can slam into that board.

XP or Vista, man, get to the point

Here’s the deal.  Vista is prettier.  You can hack your XP theme to look a little like Vista.  The difference is subtle, but not negligible.  Vista with Visual Studio on it is going to require at least 40 Gig of space just for the guts.  The same thing using XP?  5 Gig.  There’s the single, biggest deal maker for you to worry about. 

If you are not hard drive constrained and you have a license for Vista, use Vista.  You get IIS 7, no BSOD, a supported OS, up to date driver and hardware support, etc. 

If you have limited hard drive space, or you rarely use the image, use XP.  You’ll have the challenges of IIS 6 and I have gotten the BSOD once for no apparent reason (although that Vista theme hack could have something to do with it). 

What you won’t get, as of this writing, is Vista Aero.  I have been wating for that gem to come down the pipe but it must not be a VMWare priority.  The only thing I really miss is that cool window rolodex thingy.  I could give a rats patooty about window bar transparency.

VM Maintenance

I don’t use snapshots.  At least not intentionally.  I preder to copy my VM Image to a safe place when I have just cleaned it up and made it archive ready. 

Here is a great post about how to shrink your VMWare  fusion disk image

NOTE: the catalyst for this post was that I messed up my Vista VM following that recipe.  While I ran SDelete, my disk ran out of space.

Running SDelete will require that you have free disk space larger than the disk image you are cleaning.  So, if you VMWare Vista image has creeped up to 60 Gigs, and it WILL, you need more than that free. 

After SDelete failed to complete and I had to force quit Fusion, I had to dig into the VMWare Image Package to delete the state file so I could launch the machine.  This, fortunately, recovered the VM but it left a bunch of orphaned snapshots in the package.  Now my 60G image was now 90G!   Argh!  I tried to deleted snapshots using the menu option in VMWare but this failed.  Same issue.  Deleting snapshots requires that you have enough space to double the image size.  VMWare will consolidate the images by writing 1 new image that includes the result of combingin all the snapshot images, discarding chane deltas.

Running Delete Snapshots will require that you have free disk space larger than the disk image package you are cleaning.

So…  all this being said.  If you plan to run Vista and use it like a rented mule, you need 200 Gig dedicated to that image.  Why 200?!  Because you might get lazy, like me, and let your VM become bloated and then wish to clean it up.  At that time, you  might, like me, be sitting on a 90G iamge that could be 35 fully optimized.  In order to get your space back, you need working space.

A little XP Nostalgia

While I labored though that space turmoil, I ran and enhanced my XP image.  I’d started playing with it a while back but continued using Vista as it was snappy and reliable.  During this whole fiasco, I couldn’t use my Vista VM so I fired up that XP image and worked with it.  I’ll say that it reminded me of going from an Acura TL to a Honda Accord.  They are both nice cars.  The latter is stripped down a little but much more fuel efficient and definitely less expensive.  The former is at the same time more powerful and less reliable (at least my TLs have been less reliable).  I intentionally did not install everything I usually use on XP so that my image would remain lean and portable. 

During this exercise, I discovered some things I could do to make my everyday development experience much more performant.  In light of getting back to productivity, I am going to end this post with the following:

Keep you image small, install what you need, make frequent backups and get as much memory and storage as you can afford.

One Response to “VMWare Fusion - Vista or XP”

  1. Hilarious. What are the odds that I randomly enter a search into Google about how while deleting VM snapshots my system has frozen, and I end up on the website of a co-worker.

    Man, you got SEO.

Leave a Reply