Virtual Machines

I've been having difficulties ever since I've made the switch to Vista, but I'm not here to bash Microsoft. I blame the rest of the computing world. All software companies knew Vista was coming, had adequate time to prepare, and yet a FULL YEAR later STILL haven't done much to fix compatibility issues. Guilty parties include our own internal help desk team as well as companies like IBM and Cisco who are supposed to provide "enterprise-ready" solutions. Instead, since they've buried their heads in the sand, I've had to spend too much time finding work-arounds for my computing issues. To wit:

  • Wireless – At one point I had Wi-Fi in our office working correctly on my T61. One day for whatever reason all wireless passwords were reset and my wireless access went kaput. I know what I'm SUPPOSED to do to get it working again, but buried somewhere deep in my registry a "1" is really a "0" and it just won't work. I've just given up and when I need wireless on our Lenovo campus, I just use WWAN cellular access.
  • Printing – Our centralized print management solution from Lexmark only prints from some applications. For example, I use Foxit reader to open Acrobat files because Adobe's Reader is just too darn slow. On Vista, I've had to install Acrobat Reader as well for when I want to print from a .pdf file. When I try to print from Foxit, it seems to print okay, but then the print job just goes into a black hole ne'er to return. Others with Vista systems are experiencing similar problems.
  • Expenses – I've had to keep a Lenovo 3000 C100 with XP running just to do my work expenses. Our IBM-developed and managed expense tool just won't work with Vista.
  • VPN support – We currently use the AT&T VPN client, which works fine with Vista. We're moving to a Cisco web VPN sometime next year. No Vista support there either.

A few weeks ago I was talking shop with one of our field technical specialists, Henry. I mentioned my Vista issues in hopes that he had some ideas. He had an intriguing solution – installing and running a virtual machine (VM) on his PC. He is using a Vista machine with our basic factory preload but then launches and runs XP once Vista has loaded. Virtual machines have been around for years, usually in the back end server room to consolidate and increase server utilization. It makes perfect sense that you would want all of this expensive server hardware to work as much of the time as possible. On the client side though, there really hasn't been much of a push until earlier this year when several factors have converged to make it a viable solution. One, the proliferation of more operating system choices. Windows + Linux, Mac + Windows, etc. Two, built in virtualization support in the latest Intel processors which is supposed to help with the performance penalty associated with running two operating systems on top of each other. Three, the boiling over of frustration with Microsoft. Running in a VM has all of the benefits of migrating to the latest hardware, but has none of the incompatibility hassles. Plus, since a VM creates virtual hard disk drives inside two large container files, migrating from an older system to a newer system is as simple as copying these two files from one machine to another. A full migration of all installed programs, settings, and documents doesn't get any easier than that. I download and installed the freely available Microsoft Virtual PC 2007. Installation was easy, but then finding an installable copy of XP was not. I have a legal product key and certificate for XP, but no install disk. Yeah, I could have ordered a set of our recovery CDs, but I didn't want to wait for them to arrive, so off to Bit Torrent land I went. A few minutes later I had downloaded a copy with SP2 already slipstreamed into the install. However, it seems that all XP CDs aren't the same and the version I downloaded was an "enterprise install" CD of XP and not the "retail" install CD. It didn't want to take my product key and deemed my installation to be less than genuine. It begs the question – am I legal or not? Some would say "no." I contend that Microsoft got paid, so where's the harm? Even after I finished installing, I was a bit confused. Ordinarily I would make sure to update all of my system drivers, but it is less clear if that is needed when there is a host operating system underneath. Since everything seemed to be working okay, I left it alone for now. Virtual PC 2007 did recommend that I download and install Microsoft's VM extensions that were supposed to "improve performance." I'm all for improved performance, but from reading the help files, it seems that adding these extensions obviated the benefit of using VT enabled processors. If adding some software makes the hardware obsolete, then why have the hardware extensions on the processor to begin with? I'm sure there is a value proposition I'm missing here. Networking is also a bit puzzling. By having the virtualized XP share an IP address with Vista, I was able to connect to the Internet. Supposedly there is a way for both the host and guest operating systems to get their own IP address, but I have not been able to get it to work yet. I want to do this so that my XP install can connect to our wireless network again. Too bad there isn't a way to reverse share so that the virtual Windows XP will pass an IP address back to the host version of Vista. I also decided that this was an ideal time to install Ubuntu and give it a whirl. From reading, the latest version seems to be Gutsy Gibbon (as opposed to Hairy Horse or Incontinent Iguana). Downloading it was easy, but then I ran into a known problem that there was no mouse support in a virtualized version of Ubuntu running on Windows. Fortunately, the Linux community is filled with helpful people and I quickly was able to find Robert Cain's blog that gave excellent step by step instructions on how to fix it. So now I've got Ubuntu installed. What do I do with it?