virtual machine

(redirected from Virtual machines)
Also found in: Dictionary.

virtual machine

[′vər·chə·wəl mə′shēn]
(computer science)
A portion of a computer system or of a computer's time that is controlled by an operating system and functions as though it were a complete system, although in reality the computer is shared with other independent operating systems.

Virtual Machine

(operating system)
(VM) An IBM pseudo-operating system hypervisor running on IBM 370, ESA and IBM 390 architecture computers.

VM comprises CP (Control Program) and CMS (Conversational Monitor System) providing Hypervisor and personal computing environments respectively. VM became most used in the early 1980s as a Hypervisor for multiple DOS/VS and DOS/VSE systems and as IBM's internal operating system of choice. It declined rapidly following widespread adoption of the IBM PC and hardware partitioning in microcode on IBM mainframes after the IBM 3090.

VM has been known as VM/SP (System Product, the successor to CP/67), VM/XA, and currently as VM/ESA (Enterprise Systems Architecture). VM/ESA is still in used in 1999, featuring a web interface, Java, and DB2. It is still a major IBM operating system.

http://vmdev.gpl.ibm.com/.

["History of VM"(?), Melinda Varian, Princeton University].

virtual machine

(2)
An abstract machine for which an interpreter exists. Virtual machines are often used in the implementation of portable executors for high-level languages. The HLL is compiled into code for the virtual machine (an intermediate language) which is then executed by an interpreter written in assembly language or some other portable language like C.

Examples are Core War, Java Virtual Machine, OCODE, OS/2, POPLOG, Portable Scheme Interpreter, Portable Standard Lisp, Parallel Virtual Machine, Sequential Parlog Machine, SNOBOL Implementation Language, SODA, Smalltalk.

virtual machine

(3)
A software emulation of a physical computing environment.

The term gave rise to the name of IBM's VM operating system whose task is to provide one or more simultaneous execution environments in which operating systems or other programs may execute as though they were running "on the bare iron", that is, without an eveloping Control Program. A major use of VM is the running of both outdated and current versions of the same operating system on a single CPU complex for the purpose of system migration, thereby obviating the need for a second processor.

virtual machine

(1) The name given to various programming language interpreters. See Java Virtual Machine and Python.

(2) One instance of an operating system along with one or more applications running in an isolated partition within the computer. It enables different operating systems to run in the same computer at the same time.

Virtual machines (VMs) are also widely used to run multiple instances of the same operating system, each running the same set or a different set of applications. The separate VM instances prevent applications from interfering with each other. If one app crashes, it does not affect the programs in the other VMs. This approach differs from a dual-boot or multiboot environment, in which the user has to choose only one OS at startup (see dual-boot). All virtual machines in the same computer run simultaneously.

VMs Are Like Machines Within the Machine
Each virtual machine functions as if it owned the entire computer. The operating systems in each VM partition are called "guest operating systems," and they communicate with the hardware via the virtual machine monitor (VMM) control program. The VMM "virtualizes" the hardware for each VM (for details, see virtual machine monitor).

Although a hot topic in the IT world, virtual machine technology dates back to the 1960s (see VM). The terms "virtual machine" and "virtualization" are used synonymously; however, virtualization also refers to other techniques (see virtualization). See virtualization, application virtualization and OS virtualization.


Non-Virtual Versus Virtual
This shows three applications running in a regular computer versus a virtualized computer. In the VM example, the guest operating systems may be the same or different.







Paravirtualization and Hardware
Guest operating systems can run in a virtual machine with or without modification. If changes are made to the OS to recognize the VMM, it is said to be "paravirtualized." For example, Linux and various Unix versions have been paravirtualized to run in the Xen VM environment. However, if the CPU hardware supports virtualization, Xen can run guest operating systems unmodified. In 2004 and 2006, Intel and AMD added virtualization to their CPUs, which traps the calls to the x86 hardware, making it easier to develop VMMs that run ordinary non-paravirtualized guest operating systems (see hardware virtualization).

Advantages of Virtualization



#1 - Consolidation
Multiple operating systems can run in the same server, eliminating the need to dedicate a single machine to one application. Old and new applications can run simultaneously with their respective operating systems in multicore servers with many threads of execution, saving space and power consumption in the datacenter. New versions of an OS and new applications can be deployed without purchasing new hardware.

#2 - Stability and Security
Conflicts can arise between supposedly stable applications, and troubleshooting can be daunting. As a result, cautious system administrators often host each type of application in a separate server even if the server is grossly underutilized. Multiple virtual machines running bread and butter applications are kept safely separated from each other. In addition, since each VM is isolated from the rest, a security breach in one does not affect the others. The fault tolerance and security brought about by the isolation of each virtual machine is a major benefit of virtualization.

#3 - Development Flexibility
A virtualized computer can host numerous versions of an operating system, allowing developers to test their programs in different OS environments on the same machine. In addition, with each application running in its own virtual partition, crashing in one virtual machine will not bring down the system.

#4 - Migration and Cloning
Virtual machines, each with their own OS and applications, function like self-contained packages that are said to be "decoupled from the hardware." It is relatively easy to move a VM from one server to another to balance the workload, to migrate to faster hardware, as well as to recover from hardware failure. VMs can be quickly cloned and deployed.

#5 - Desktop Virtualization
An increasing trend is to store a user's desktop (OS and applications) in a separate virtual machine in the server and use the PC or a dedicated terminal as a "thin client" to the server. Each user is isolated from all other users due to the virtual machine technology, and the maintenance of the applications is shifted from each user's desktop to the datacenter (see thin client). See virtual machine monitor, virtualization, application virtualization and OS virtualization.
References in periodicals archive ?
Since virtual machines can run concurrently, there is no need to reboot the hardware to change between operating systems.
By adding Cascade to a server, clients can create and manage Bare Metal virtual machines or Canopy virtual machines from the same dedicated server, and from a single environment, which is the LEAP Platform (API & Webtop).
By integrating PowerTerm WebConnect with Microsoft's System Center Virtual Machine Manager, IT administrators will be able to centrally manage and deploy System Center managed virtual machines to users across the organization.
I need to keep multiple virtual machines with me at all times, and I usually carry special virtual machines configured for demonstrations and presentations," explains Andrew Connell, senior developer and trainer for Mindsharp.
Find an information gathering solution to track what machines are doing what, grouped by virtual machines and their physical hosts.
Virtualization software vendor VMware Inc has updated its VMware Workstation desktop virtual machine software by adding support for the latest versions of Windows and Linux.
With Control Center, enterprises can centrally manage and control all of their virtual machines and maximise utilisation of their entire server farm.
s Embedded Systems Developer Survey, fielded in July 2002, shows 36% of embedded developers already use or plan to implement Java Virtual Machines, up from a combined 26% in the previous survey six months ago.
Freespace quotas allow administrators to specify the amount of storage headroom required by different categories of virtual machines.
We were interested to try out Trend Micro Core Protection for Virtual Machines since most security solutions are focused on the operating system software and this was the first solution we found for addressing the unique aspects of virtual machines," said Terence Snijtsheuvel, a senior consultant at Compugen, one of Canada's largest privately owned and operated IT services providers and PC systems integrators.
Basically, "virtualization" is a term that can be applied to any methodology that abstracts out a system's resources into multiple, virtual execution environments, or abstracts the resources of many systems into fewer (usually one) virtual machines, as in grid computing.
IBM will offer worldwide support for VMware ESX Server software and Microsoft Windows and Linux operating systems running within VWware ESX Server virtual machines.

Full browser ?