Friday, April 30, 2010

Wicked Cool VMWare Fusion

Wicked Cool VMWare Fusion

Some of you may have picked up on my geekiness on the Mac.  I am running OS X Snow Leopard on a MacBook Pro.  Also, if you know my history, I have been a PC expert for 20 years, so I know a lot of things PC and Windows, but very little (relatively) Mac.  So, in the course of business, home, and play, I occasionally have things that need to be done on a PC (especially since I don't have the money to replace all my home PCs with Macs yet).

In the computer industry, the thing that has taken it by storm over the past decade is something called Virtual Machines.  This allows you to "simulate" running a computer - within a computer.  What? Did that confuse you?  Basically, within a window, you can create an environment that is isolated from, but hooked into, the main physical computer.

About Virtual Machines

What does this do for you?  First of all, within the Virtual Machine (or just VM), you can install and run whatever software you want - including other operating systems.  Say you have Windows XP on your laptop, but you need to install and run Windows Server (without messing up your laptop), install a bunch of software, and try it out.  You can do this inside a VM.

Say you have this massive, beefy server that has all kinds of gigabytes, gigahertz, giga-whatever, and what you run only uses a fraction of its capabilities.  You can create several VM's, and run them as if you had multiple machines - even though the electricity, space, and hardware are those of only one box.  Oh, did I mention now you don't have to buy more physical machines to run more machines?  Now you see the cost savings.

If you are an old mainframe hack, you may say, "That sounds like the time slicing multiuser stuff we did on the mainframes."  But remember, a) this is on a PC, and b) this is not your daddy's time slicing - it is fully graphical, hardware abstracting, and integrated with all the devices for full virtualization.

Now, imagine that all this was free.  What?  Yes, free!  Well, other than licensing.  You have to own licenses for the operating systems - Windows, Linux, Ubuntu, what have you, and applications that you have installed within the VM.  The VM is abstracted from the hardware on the physical host machine, that is say you have a 3Com network card, a NVidia graphics controller, and 2 GB of RAM.  What happens if you move the VM to another machine with different hardware?  No problem, within the VM it makes generic hardware, and maps them to the physical hardware, so that it just works.

Who makes this software?  VMWare is the leader, but Microsoft, Virtual Iron, and many others have software that perform at least the basic functionality described above.

What else can you do?  Well, the more advanced features allow you to instantly swap your VM from one box to another if the hardware goes down (a product called VMotion in VMWare).  What about if you want to try something, like installing a new software or hardware, and if it screws everything up, you want to jump back to the way it was?  VMWare offers a feature called Snapshots, where you click a button, wait about 30 seconds, and your entire system state is backed up.  If you restore the snapshot, it takes about a minute or so, and voila - you are back to where you were.

As you can see, a whole new world of possibilities has opened up.


VMWare, an EMC company, has been in the business pretty much from the beginning of the modern usage of VMs, about 10 years ago.  I say they lead the market, mostly because a) they have the largest market share, and b) their software offers the most features and reliability.  However, as far as wicked way cool factor, there is no one else who even comes close!

Personally, for work and home I have been using VMWare for about 8 years now.  To run my network at home, I have my server on a VM.  So, when I get a new machine, and want to transfer the server from one box to another, it is simply a matter of copying the (large) files that VMWare needs for the VM, and then booting it up on the new box.  20 minutes, and I have everything transferred and running on the new machine.  Very convenient.

VMWare offers several products, some free, some for money.  Let's talk about them:

  • VMWare Server - free.  This is what I use at home for my server.  It allows you to run as many VM's as you have hardware for, and for each VM you can take 1 snapshot.  You can also create
    VM's.  Good enough!
  • VMWare Workstation - $189, for Windows.  This allows you to run machines in a non-Production mode, meaning you are allowed to use  it for testing and development purposes, but not to set up a bunch of servers and run an Internet store.  This was my introduction to VMWare 8 years ago.  You can take as many snapshots as you want
    (as you have hard drive space for!).  You can also create VM's.
  • VMWare Player - free.  This allows you to boot and run a VM  on Windows.
  • VMWare Fusion for Mac - $79.  All the stuff you can do on the PC, on the Mac.  Load your VM files, boot them, and voila - you are up and running.
  • There are other VMWare products, aimed at high-end servers for businesses.  These are ESX, GSX, VMotion, etc.
  • All flavors of VMWare allow you to install virtually any operating system - from any version of Windows back to 3.1 and forward to the new Beta versions, to Unix, Linux, Ubuntu, Netware, and more.  Cool!
What else does VMWare allow you to do?  They have something truly ingenious (as if the above isn't ingenious enough!).  This is called Unity Mode.  So, running a VM is a lot like remote controlling another computer's screen - you can see all the applications running in windows, the start menu, system tray, etc.  But, in Unity Mode, the applictions running INSIDE the VM are shown in the HOST machine as separate icons on your task bar.  That is, you can press ALT-TAB, and you get a list of applications running both on the Host and VM as if they were unified in one!  That's cool.

VMWare Fusion

So, now to the Mac.  OK, you know how much I LOVE the Mac?  Well, I've had a Mac now for some 7 months, and I never want to use a PC again!  Well, that is how much better Fusion is to VMware Player or Workstation!

First, Fusion is totally redesigned using the Cocoa framework on the Mac.  That is, it is a natively designed application, not a port from another computer environment.  It works, and it works well.

Second, you know how Windows and Mac are slightly different look and feel?  Well, Fusion does a fantastic job of exposing Windows to the Mac interface.  For example, when you run a VM, you get your normal look and feel, but with the Mac wrapped around it.

You also get a menu in the top task bar, that gives you access to the VM's in your library.  This lets you start, stop, and alter the view of the VM, but it also does something way way too sweet.  You can access the Start menu inside of Windows in the VM!

Now, what about Unity?  Yes!  When you switch your VM to
Unity, the VM window disappears, and all the applications running inside of the VM appear as if they are running on your Mac!  Command-Tab, and you get a list of all apps, including the ones in the VM.  Hit the menu bar menu, and you get the Run command, Control Panel, My Documents, the Start menu, everything right from within OS X!  That's right, you are not just booting your Mac into either Windows or OS X - you are
booting both!  (Oh, and any other OS you want to install).  Seamless hardware integration - network cards, sound, graphics, USB, CD/DVD drives, and more - make you no longer worry will my software work with my hardware.  It just works, like magic.

Now, if that ain't enough, and if you are a savvy Windows user you might ask, what about those tray icons?  The Windows task bar disappears in Unity mode.  Look!  See at the top of the screen?  Those tray icons appear in the Mac menu bar!  They thought of everything.

So, do you agree with me now - the VMWare guys are sheer genius?  This is true magic if I ever saw it in the guise of software.  And, it is rock solid.  The only thing that ever crashes is Windows.  I even ran multiple VMs at once, no problem on a 4GB RAM 64-bit laptop.  Some of my VMs are on an external USB drive, and then I may notice some slowdown occasionally - but I am really pushing the system to its limits.

Genius!  Bravo.  This is simply the best software I have ever seen on any machine.  For $99 I got Fusion and 1 year of support.  Although, I am not sure if I will ever need the support - it just works.  So far.  I've only been using Fusion for 2 months now (heavily).

Now, my major dilemma here is what words do I use to describe the coolness factor?  Wicked way, is way too lame.  I think we have to devise some new words in the English language (slanguage?).

1 comment:

  1. Here's a follow-up comment. I did use my support option to ask if I could just copy the VM files to a Windows machine and open it up in VMWare there. The answer? Yes. Of course, otherwise it would only be average Genius.