Mike's face
Sunday, May 20th, 2012








About virtualization

Virtualization has been around for a while, but many people are only just now getting confronted with it.  There are a lot of potential benefits from leveraging this technology.

In a nutshell, virtualization makes it appear as if multiple computers are running on a single computer.  This should not be confused with multi-core cpu's, hyperthreading, multithreading, or multi-boots.  What it does is it allows you to run multiple instances of an operating system or multiple operating systems at the same time.  Why would one want to do that?

Did you ever want to:

  • Browse the internet using a dedicated computer, for safety reasons.
  • Use a separate computer other than your other hacked computer, just to do online banking.
  • Keep Junior, his Kazaa, and whatever else he/she does on his/her computer away from your computer.
  • Try out different operating systems without having to reboot every time.
  • Run a home network
  • Improve server utilization by giving it more tasks you would not normally all run on a single server simultaneously.
The last one is more of a data-center type thing.  A Datacenter has many computers in a server room.  Virtualization is a very cost effective alternative that allows them to do more on less hardware.

There are a number of other abilities that are available as part of virtualization as well:

  • Stop and/or reboot a partition (operating system) without having to stop or reboot the computer.
  • Pause a partition.
  • Backup and restore a partition (great for experimenting).
  • Move a partition to another computer (you could even put your own virtual computer on a USB key).
When I say partition here, it is not to be confused with a harddrive partition, like the C: or D: drive.  I'm talking about a virtualized segment, a virtualized computer within the actual computer.

To the home user, there is one immediate benefit: security!
A major British magazine had claimed that 40% of computers in the average household has been infected with viruses and/or backdoors.  That's stunning.  Not to start a flame or anything, but in my opinion two fingers should be pointed.  First to Internet Explorer and second to people activating email attachments.  Some people think that as long as they don't click on file attachments in emails that nothing will happen to them.  WRONG!  There is another, much more elusive danger: browsing the internet using Internet Explorer.  IE is a browser that had and likely still has such serious security holes, it'd make you head spin.  Microsoft clearly can't keep up with all the exploits that hackers find.  Just browsing a malicious website allows a hacker to install a backdoor on your computer.  This backdoor can then later be exploited by the hacker.  Other malicious hacks include installing key-loggers that log every key you press including the password of your online bank account.  And don't think your zone alarm, anti virus, and router is going to keep you safe.  Think about it this way: if your browser is able to download webpages, then hackers can find a way to shoe-horn their malicious computer hacks as well!

So how does this relate to virtualization?  Think of virtualization as dividing up your computer into multiple computers, with the ability to run multiple instances at once, and with the ability to only permit certain specific features for each "virtual machine".  If junior had his own "computer" and taints his computer by downloading all kinds of infected games and crap on his own computer, your other "computer" wouldn't be affected at all.  But instead of having to buy separate computers, you can split your one computer into multiple computers.

There are other ways to isolate different computing sessions as well:

  • Have a separate login account for each user.
  • Use dual or multi boot, booting different OS's from separate harddrive partitions.
But these methods require reboots or having to log out.  Logging in as a different person isn't safe at all.  Files of the other user and operating system files can easily be modified.  The safety features of the operating system are limited at best.  Even on a Unix like operating systems, which in my opinion is far more secure than MS Windows, I still wouldn't really want have a hacker (eg. Junior) have access to my computer, even with just normal-user access.  But with virtualization, the different computer segments are very well isolated from each other.  When a hacker gains access to one of the VM's, the hacker will not likely be able to gain access to the other VM's, so long as the VM technology is good.

Then there is the use in the professional field.  Especially the data-center field. 

<datacenters-for-dummies>
For people that don't know what a data-center is, datacenters are facilities which have large quantities of server-computers, which really are just computers without monitors or keyboards hooked up, and often look like flat pizza-like boxes which get inserted into racks like a stack of kitchen drawers.  Datacenters have 100's, 1,000's, or some even 10's of thousands of servers.  Although it's possible to hook up a keyboard and monitor to the one you wish to work on, the normal way to administer a server is by connecting to it over the network from a workstation, which can be an ordinary PC sitting on someone's desk.
</datacenter-for-dummies>

To utilize servers better, virtualization can be used to split a server up into many servers.  Each server segment is protected from other segments, provided the virtualization mechanism doesn't break.
One of the really cool things that they can do, is move VM's around between different physical server computers, simply by dragging and dropping through special management software.

Here are some interesting VM technology links:


(C) Copyright 2004-2007 Mike Pot