What is a virtual machine?
Imagine one piece of hardware, the computer, that has many isolated copies of the operating system running on it.

Each OS represents a virtual machine, which share the hardware resources but are completely separate in every other way.

Types of VM
VM's are either servers or PC's, although the predominant force over recent years has been server virtualisation.

Having said that, since 2008 VMware, Microsoft and Citrix have started to push desktop virtualisation very hard.

Server virtualisation
Virtualisation is perhaps the hottest topic in IT at the moment. The technology was already making strides with the promise to cut up to three-quarters of server-room hardware and energy costs, before Microsoft weighed in and the hype shot off the scale.

The technology is changing the way servers are sold and used. It takes the mass of processors, memory, storage and networks in the average server room and masks their complexity, so applications run on virtual machines. Each app appears to have a machine to itself, while the underlying resources are shared between the virtual machines.

This approach is a lot easier and more efficient than running separate machines. If you want a large processor, virtualisation can pull together resources on multiple servers. If you want lots of small ones — say, for remote desktops — you can run lots of virtual machines on one server. If you want to run multiple operating systems, each one gets its own virtual machine. -
Extract from an article ZDnet August 2008

Desktop virtualisation

Typically, desktop virtualisation means that PC's employees use are virtualised and hosted in a datacentre. 

The user can then access their virtual machine from a thin client (stripped down machine) which saves the money and complexity of deploying full PC's.

Where users have an older PC/laptop, it also allows for a new virtualised machine to be deployed without having to replace the hardware.

Virtualisation and licensing

With client machine virtualisation, i.e. clients accessing application sessions being run on a remote server, you should assume that exactly the same licensing is required for each virtual machine as would be required by any full installation on the local machine - see TS and Citrix for more detail.

With servers, it depends on the technology you are using (VMware, Microsoft etc) and when using Microsoft technology it depends on the edition of Microsoft Server that you purchase.

At the time of writing (October 2008):
  • Microsoft Windows Server 2008 Standard allows for one Windows virtual machine on a server
  • MS Windows Server 2008 Enterprise allows for four VM's
  • MS Windows Server 2008 Datacenter Edition allows for unlimited VM's

Of course Datacenter costs more than Enterprise which costs more than Standard.  So if your focus is on VM's, you have to weigh up the costs of purchasing many smaller machines with Standard, or fewer larger machines with Datacenter.

For more detail see Microsoft Virtual servers...

We now move onto Licence contract types...