Virtualization concerns creating a system within a system in order to share resources. Virtualization software is what makes this happen. It is designed to create an environment which fools other programs into thinking they are working on a dedicated machine, purely for its own use.
Operating systems don't like sharing, so it's often necessary to fool them into thinking they aren't. Virtualization software does the fooling by creating "instances," which are separate partitions on a machine. Each instance thinks it is the only one, and therefore anything installed on it thinks so too. This creates a kind of sealed box, where whatever happens inside it cannot affect what is outside. The virtualization software then juggles the machine resources so each instance has what it needs to run effectively.
Virtualization is useful in many ways. It means computer users can try multiple operating systems on a system without having to rebuild it each time. It allows different platforms to share resources, especially if they don't require many. It can also create a mini laboratory on a computer, allowing experimentation without risking the whole machine.
The best example of virtualization is web hosting. A website is hosted on a server connected to the internet backbone. This server runs virtualization software, which divides the server resources between several "virtual" servers. Each virtual server thinks it's the only server on the machine and works quite happily.
Someone who pays for web hosting pays for a segment of this server and its own instance. The software on each instance then serves the website and everything works as if the site was on a server of its own. This lowers the cost significantly for both the web host and the customer. The host can have many more customers sharing machines at a much lower cost. The customers have all the characteristics of their own servers, without the expense of dedicated servers.
Businesses are also waking up to the idea of virtualization. It is currently estimated that most business servers are at the most 40% utilized, even at their busiest times. Virtualization software allows businesses to host several software platforms on each server, making more use of the resources available. This means fewer servers are needed, which can result in a significant cost saving. The cost savings don't only come through not having to buy additional servers, but also the expense of powering them, keep them working, and maintaining them.
Virtualization software can also be used at home. Computer running the Windows® operating system, for example, can run Linux in a virtual server, where normally it would be difficult to run both without a lot of work. This allows the user to use both systems without either interfering with the other.