Helping people with computers... one answer at a time.
Because I use a VM to present in webinars, I figured that it'd be a good time to demonstrate what they are and why they're so cool.
Virtual machines are a way to run a computer-within-a-computer. It's a technology that I use frequently and specifically to set up clean machines for use in my webinars.
In this video excerpt from an Ask Leo! webinar, I'll talk a little about virtual machines, show you a few things about them, and generally go on about how cool I think they are.
Download the video: virtual-machines-640-web.mp4 (36M).
What you are looking at besides a Windows 7 desktop: there are a couple of menus up here that are probably unfamiliar for you. That's because what's really happening here is that I'm running a copy of Windows 7 in what's called a virtual machine. Now, it's difficult to define a virtual machine without saying that it's a machine that runs virtually but I'll try and put it into, put it in some clearer terms.
The short version is that a virtual machine in this context is really just a software simulation of a PC. So what that allows us to do is on one computer, inside of a window (the window that you happen to be looking at here) run what is effectively, a completely different computer.
So what I'm going to do is I'm going to show you a couple of things. First, I'd like to show the characteristics of the computer that you're actually, that I'm actually running on. This is Windows 7 Ultimate. It's an 8GB machine; I have a quad core processor on it. It's what I do my work on day-to-day.
To go back, the machine that we were looking at is a virtual machine. It is running in a window on my desktop machine. It's running a little slowly for a couple of reasons that we'll be clearing up here shortly. So what I've done is I've configured this virtual machine to behave as if it were a 2GB machine running a 32-bit version of Windows 7 and actually even though it lists the Quad CPU, it's actually only using two of the four processors. One of the very interesting things you can do with virtual machines is change these characteristics in software in the configuration for the virtual machine. Let's take a look at that.
What we're looking at here is a different view on a different machine. What you'll notice is that this particular virtual machine which is the one I'll be shutting down shortly to speed things up is actually running Windows Vista. So what I have on my desktop, of course, is in one window, the Windows 7, the one I'll be doing most of my demonstrations on, and yet in this other window, I have Windows Vista running. In fact, as you can see off to the left, I have a long list of virtual machines that I might have available to me. Everything from the webinar versions; Windows 7 copy that I've got running primarily; a backup copy that I'll be using to save some time a little later on; the Windows Vista that we're running right now (that I'm going to go ahead an shut down because I want things to be a little faster.
You'll notice I have several copies of Windows XP ready for me. As you can imagine, I end up answering questions about Windows XP, and of course, God knows that I don't know everything. So quite often I find myself having to fire up a copy of Windows XP. Rather than having the separate machine, I can simply run a virtual machine with a smaller copy of Windows XP, and in fact, I can even run Ubuntu Linux in a virtual machine. This is the most recent, I believe, 11.04 release of Ubuntu and it's just one of those things that I copy down; an opportunity for me to evaluate the software without actually needing to dedicate a machine to it.
So back to the Windows 7 that we're actually running for the webinar. As you can see, it's got configuration of having two CPU's; 2 GB of RAM; 32 GB HDD . One of the neat things you can do with a virtual machine, and in fact I did it to this very virtual machine when I was practicing yesterday - it only had 1 CPU - so I shut down the software, changed the configuration to add a CPU and fire it back up again. Similarly, if I wanted to, I could easily change the amount of memory that is allocated to this particular machine. I could change the hard disk space; all of these things, particularly the hard disk, as you can imagine, it's all simply saved as data files or configuration files on the real computer on top of which it's all running. So another way of making it a little bit more obvious just how virtual or how much of a simulation a virtual machine can be, I'm going to start up Windows XP here. And what you'll find as soon as it starts (it may change the window size on me which may end up impacting you just a little bit). You'll see that it immediately shows what looks to be a BIOS screen. They actually emulate a true BIOS so that when you boot whatever it is you are interested in booting, it thinks, it looks like it's running on a real PC, on a PC that has a BIOS and some pre-defined set of hardware, and of course Windows XP is going to take just a little while to boot up. I don't necessarily think we'll end up watching the whole show. I at least wanted it to show its logo to give you an idea of what level we are actually operating on when we're playing with virtual machines. This should look really familiar, it's the Windows XP boot-up sequence; the stuff that you see before Windows XP is even loaded. And there it comes. I am going to stop that one because we don't need to see Windows XP today and go back to our webinar.
So, in short, virtual machines are incredibly powerful technologies that I think are just incredibly cool. I end up using them for situations like this. For example, another example of how wonderful they really are - what I have for these webinars is a fully configured, Windows 7, with a couple of tools pre-loaded on it. I simply make a copy of that machine to start from that point when I do a webinar. Yesterday, when I did a dry run for this webinar, I created a (we'll be seeing this later) I created a separate virtual machine for Windows 7 - went through everything; you can see there are some changes here: Microsoft Security Essentials is installed; there's a toolbar down here; there are some things on the webinar agenda today already completed. But I wanted to start today from scratch, so I simply copied the virtual machine to make it start from that same pristine state. Now virtual machine technology that we're looking at here I happen to use Parallels Desktop there are other technologies, other companies that provide similar technology. VM Ware is another one - also very popular. Now what you'll find for VM ware is that there are often pre-configured virtual machines that you can download, sometimes for free, sometimes not. But for example, if you have the VM ware runtime environment, you could download a virtual machine, that for example, is already to go copy of Ubuntu, or already to go software firewall or all sorts of other random things.
Microsoft, of course, has its own virtual machine technology, Virtual PC and the reason that all of this comes to bear on Window 7 is that when you purchase Windows 7 Pro version or better, you are able to download, for free, something that's called Windows XP Mode. What Windows XP mode is, is nothing more than a virtual machine into which they've pre-loaded Windows XP. So you actually have the opportunity to run Windows XP, in a window on your Windows 7 machine. As you can imagine, that tends to be somewhat helpful for people that are experiencing compatibility issues with Windows 7 and older applications.