Virtualization Software


VMware_workstation.gif

Introduction...



Virtualization software basically lets you run software in a virtual environment on your computer. For example, one can run multiple operating systems on a single computer at the same time. The OS' run on virtual hardware instead of trying to use the same physical resources as the main OS. The virtual hardware has the same functionallity as the physical hardware so you can do just about anything in the virtual environment that you can do by using the phyiscal environment. (Techsoup).

How It Works



Virualization software such as VMWare and Microsoft Virtual PC allows multiple "guest" operating systems to run on a single PC at the same time by "virtually" recreating the PC's hardware through the use of an abstraction layer (basically a layer of communication between the operating system and the hardware). This allows each virtual operating system running to have its own set of hardware independent from any other operating systems on the machine, creating a virtual environment.

The virtual or guest operating systems are store on the host PC within a single file that can easily be moved and any changes made to the guest OS do not effect the host OS. You are not required to repartition your hard drive and files from a virtual OS can't effect files on a host OS.

The requirements to run a virtual OS is that of the host OS plus that of the virtual OS. For example if the requirements for running the local OS are 256MB of RAM and 2GB of hard disk space, and the requirements for running the guest OS are 512MB of RAM and 4GB of space then the PC running the virtual PC should have at least 768MB of RAM and 6GB of hard disk space.



Pros


Isolation
Running everything on one machine would be great if it all worked, but many times it results in undesirable interactions or even outright conflicts. The cause often is software problems or business requirements, such as the need for isolated security. Virtual machines allow you to isolate each application (or group of applications) in its own sandbox environment.

Standardization.
The hardware that is presented to the guest operating system is uniform for the most part, usually with the CPU being the only component that is "pass-through" in the sense that the guest sees what is on the host. A standardized hardware platform reduces support costs and increases the share of IT resources that you can devote to accomplishing goals that give your business a competitive advantage. .

Consolidation.
Consolidation of servers results in easier management and decreased hardware costs. The drawback of consolidation is increased susceptibility to hardware failures and increased impact from those failures.

Mobility
Virtual machines are easy to move between physical machines. Most of the virtual machine software on the market today stores a whole disk in the guest environment as a single file in the host environment. Snapshot and rollback capabilities are implemented by storing the change in state in a separate file in the host information.


Cons



Performance
Virtual machine technology imposes a performance penalty from running an additional abstraction layer above the physical hardware but beneath the guest operating system.

Hardware Support
Another drawback of virtual machine technology is that it supports only the hardware that both the host machine and the guest operating system support. Even if the guest operating system supports the physical hardware, it sees only the virtual hardware presented by the virtual machine.

Licensing
The last challenge of virtual machine technology is the complication of software licensing inside guest operating systems. If you load and run Windows Server 2003 in eight virtual machines on four physical machines, how many licenses would you be obligated to pay for? What about database software like Oracle or SQL Server, which are usually licensed based on the number of processors? All of these things are put into prospective when wanting to implement virtualization software.


Applications



Testing:
Software developers could use virtual machines to test software in early development stages on my different OS' without using multiple PCs. Network administrators could use virtual machines to test newly released OS' (ie Vista) without reformatting or physically changing a machine.

Virtual Appliances
Lets say you want to run an application that isn't supported by your current operating system. Well for some software packages you can install what is know as a virtual appliance , which is a virtual machine consisting of ansupported OS as well as the application you want to use. For example, Zenoss is a open source SNMP software package that runs on Unix/Linux based systems. However, they offer a virtual appliance so customers can run the software on a Windows PC. Virtual appliances allow software companies to expand their customer base while limiting the amount of resources they spend on developing for multiple platforms.

Price



Original Price:
Dual-Processor server started at $2,500
Four-Processor server started at $5,000
Eight-Processor server started at $10,000

Now:
Dual-Processor server starts at $1,400
For systems with as many as 32 processors starts at $2,800

Links...

TechSoup
http://en.wikipedia.org/wiki/Virtual_pc
Microsoft Virtual PC
VMWare
Virtual Appliance
Zenoss
http://news.com.com/VMware+cuts+virtualization+software+price/2110-1012_3-5447612.html