A virtual machine is a type of computer application used to create a virtual environment, which is referred to as "virtualization." Some types of virtualization let a user run multiple operating systems on one computer at the same time. A virtual machine can also function for a single program, allowing that one application to function in an isolated way. Users can setup multiple computers to function as one through virtualization, allowing the system to draw on greater resources than might otherwise be available.
Hardware Emulation
There are several different types of virtual machines. Commonly, the term is used to refer to hardware virtual machine software, also known as a "hypervisor" or "virtual machine monitor." This type of software makes it possible to perform multiple identical executions on one computer. In turn, each of these executions runs its own operating system. This allows multiple applications to be run on different operating systems, even those they were not originally intended for.
Through the use of the hardware virtual machine software, the user has a seemingly private machine with fully functional hardware that is separate from other users. Such software also makes it possible for users to boot and restart their machines quickly, since tasks such as hardware initialization are not necessary. The name for this type of virtualization can be confusing, but it is a software application, not a particular piece of hardware.
Software-Specific Applications
A "virtual machine" can also refer to software that focuses on one particular application. With this software, the application is isolated from the rest of the computer. Programmers often design such software for use on a number of computer platforms, rather than designing it to focus on only one type of computer or system. This makes it unnecessary to create separate versions of the same software for different operating systems and computers.
Systems that Use Hardware And Software
Virtual environments can also be created through a virtual machine system, which are also known as "virtual private servers." This type of environment is used for running programs at the user level. Therefore, it is used solely for applications and not for drivers or operating systems. The system itself functions like a server, even though only a single computer might be used.
Some users set up a virtual machine as a group of computers that work together to create a more powerful machine. In this type of setup, the software makes it possible for one environment to be formed through several computers. This makes it appear to the end user as if he or she uses only a single computer, while there are actually numerous machines at work. The memory and other resources of each of these systems work together to create a more powerful machine than just one computer.