Some people need to be able to run multiple operating systems on their computer. Sometimes they need to do this because the work that they are doing requires that they have more than one operating system available (for example I need multiple operating systems in order to be able to write about each of them). Others may want more than one installed because they are considering switching from one to another and want to keep the old operating system until they are sure that they can do everything they need to on the new one (and if they end up preferring the new one but still can't do everything they need to using it they may want to keep the old one just to run specific applications.
Back in the early days of computers the only way to be able to run multiple operating systems on a computer was to set them up so that you'd choose which one to run at the start and it would then run on the computer ignoring that the other operating system was even there. The original version of OS/2 that Microsoft produced to run on the IBM AT computer (and 286 equivalents) had to reboot itself whenever you wanted to switch between running OS/2 programs and running DOS programs. Subsequent versions of Microsoft OS/2 (or Windows NT 3.1 as Microsoft called the second version) provided a separate virtual environment specifically for running all the DOS (and Windows 3.1) programs alongside Windows NT programs running at the same time.
As computers have become more powerful it has become possible to produce more generic virtual machines than the DOS specific one built into all of Microsoft's OS/2 based operating systems (such as Windows 7). Instead of having to place each operating system in a separate partition on the hard drive and then use a boot manager to decide which partition to boot from, you can now install a virtual environment on top of your main operating system and then install other operating systems inside that. This allows you to run multiple operating systems on one computer at the same time with the only restriction being the actual computing power of the overall system.
There are at least two such virtual machines available for free download that you can run on a windows system in order to install other operating systems that you can then run simultaneously with windows.
One of these comes from Microsoft and is called Virtual PC. As well as being available to download and install into Windows XP this VM is actually available as a part of the Windows 7 operating system. Microsoft make operating system images available that you can install into Virtual PC to provide you with the ability to test web pages in older versions of Internet Explorer. Unlike other browsers where you can have multiple versions installed for testing, you can only have one version of IE installed on a single operating system and so to be able to test in older versions of IE you need to have additional copies of windows running in Virtual PC in order to be able to run the additional browser versions. Virtual PC can also run other operating systems such as IBM's version of OS/2 (which they now call eComStation) and various versions of Linux provided that you have the appropriate install disk (or an ISO image of the install disk) to install it from. Virtual PC does have a few limitations though such as only handling some virtual screen resolutions and not providing that information to the installing operating system meaning that for example Ubuntu Linux which attempts to dynamically determine the screen resolution by default will not be able to display anything properly on the screen unless you override the default to specify a fixed screen resolution. Also Virtual PC restricts your use of the mouse to being either inside or outside the virtual PC with a mouse click inside the virtual screen being needed to swap the mouse in and a key press on the keyboard being required to switch it out. When initially installing a new operating system into Virtual PC there are default settings available for various versions of Microsoft and IBM operating systems but you have to enter all the values yourself for any Linux install.
Another virtual machine that comes from Oracle is also available as a free download. This one is called Virtual Box and with the exception of the images provided from Microsoft for testing old versions of Internet Explorer, it is a far friendlier environment both for installing additional operating systems and for using them once installed. The install options have settings not only for various versions of Windows and IBM OS/2 but also for a variety of Linux versions so there is no need to manually enter CPU and disk size settings. Virtual Box is also more flexible with screen resolution allowing you to resize your VM screen the same way you can resize other windows. It also doesn't need to have the default install options overridden in order to install operating systems that test for screen resolution dynamically. Finally, it doesn't restrict the mouse and you can easily move the mouse on and off of the VM screen interacting with it as if it were an ordinary window. Another advantage to Virtual Box is that there are versions available to run on Linux and Mac as well as Windows so that you can have any of those as your main operating system and then run the others inside the VM whereas Virtual PC is only available to run on Windows.
There are also a number of Virtual Machine applications that you can buy. Perhaps the two best known of these are Parallels (which can be run on Windows, Linux or Mac) and vMware which can be run on Windows or Linux. In return for paying for the VM you get one that can interact more directly with the hardware and which therefore behaves a bit more as if it were running as the only operating system on the actual hardware rather than having to go through the main operating system to access the hardware.
Note that if you are paying for web hosting and get what is called VPS hosting then you effectively are running your web site inside a VM alongside a small number of other VMs running on the same actual hardware. In this instance unlike what you would normally want when running a VM on your local machine, you would not have anything outside of your VM set up to be shared with your VM and so it would look no different to an operating system running directly on the computer itself.
This article written by Stephen Chapman, Felgall Pty Ltd.