Wanting to write about something is one thing. Wanting to write about something that will be read is another. Getting too techie is a sure fire sign that you're writing something that is "TL/DR" - too long/ Didn't read.
But on the other hand, I was asked "What is a virtual machine anyway?" by someone in a social setting. It was phrased a bit differently than that but here we go. Hopefully it won't be TL/DR.
The idea is that you are looking at this on a browser running on a computer. Statistics say it's probably Windows since this is where I get about 2/3 of my readers. That means it is most likely a PC.
PCs are wonderful things that run something called Software. Software can make your PC do things like play Solitaire, Surf the Web, listen to music, and make pretty pictures.
What if a piece of software simply "looked like" a computer?
Now you have a computer inside a computer.
Add an operating system to that computer inside of a computer and now you have a computer running inside a computer that you can actually DO things with.
That's it. That simple.
Why would you want to do that? At home you may have one computer in the house. This is less likely now, but back in the last 20 years that was the way it was. A desktop PC sat in a corner with a monitor and it was shared. What if that desktop PC had a virtual computer for each person on it? Now your stuff and my stuff would not get mixed up. If you got a virus, I wouldn't. That's what you get when you surf "Those" websites.
Keeping things simple, there are other ways to use this thing in a home environment.
By now we all have an "Old Computer". I know people who are paranoid and don't want to give those machines away so they end up having a closet full of computers that date back into the 80s.
Since the days of Windows XP, oh so many weeks ago, you could clear that closet up by running a piece of software that would create a virtual computer out of the old computer. Basically now you have copy of that old computer running in a window on your newer computer.
That is how I get rid of my old machines - make a virtual computer so I don't lose the software. Why pay for that software again when you can't find the install CD and it already works well on that creaky old computer? After all it's only 20 GB right?
Companies do this sort of thing all the time. They create a server that is intended to house all these machines in a closet and "host" them all. It saves space and a lot of power.
The down sides are that if that computer is damaged (power spikes will murder a PC), you lose every one of those machines if they weren't backed up. Also, you have to have a legal license to that computer. You can't just make virtual computers with Windows or Mac OSX for free. Linux isn't a problem and I make virtual computers with Linux all the time.
The way I am currently using virtual machines is like this.
My laptop is running Windows 7. I have a copy of something called "VMWare Player". That will let me create and run virtual machines. I installed a copy of Ubuntu Linux into it. I then installed all sorts of things like Database (MySQL), a Web Server (Apache), and a programming language (PHP). When I could serve websites with it to my home network, I then installed a copy of a Contact Management Software called SugarCE. It all works like a champ, it's all free, and fits really well on my lap.
Like I said, it's a very basic answer to a basic question that can be quite complex. Probably more involved than a basic answer, but that's a start...