Virtual operating system according to computer science is a software implementation of a computer that operates programs like a real machine.
A virtual machine was initially considered by Popek and Goldberg as a well-organized, secluded replacement of a real machine.
Current usability includes virtual machines which possess no direct correspondence to any real hardware.
Virtual machines are divided in two main categories, based on the usage and degree of correspondence to any real machine.
A system virtual machine offers total system podium which supports the implementation of a complete operating system.
A process virtual machine is created to run a single program.
One of the vital features of a virtual operating system is that the software operating inside is limited to the resources and abstractions facilitated by the virtual machine as it cannot getaway of its virtual globe.
System virtual machines which are often termed as hardware virtual machines permit multiplexing the essential corporeal machine between different virtual machines as each running its own system of operation.
The software coating offering the virtualization is known as virtual machine screen or hypervisor.
A hypervisor can work on exposed hardware or on top of an operating system.
Multiple Operating System surroundings can co-exist on the similar computer, in well-built separation from each other.
The virtual machine facilitates an instruction set architecture which is different from that of the real machine.
Multiple Virtual Machines each performing on their own operating system termed as guest operating system are often utilized in server consolidation.
The innovative motivation for virtual machines is to run multiple operating systems as it permits time-sharing to a single computer between several single-tasking operating systems.
Virtual machines possess other advantages for operating systems development that includes better clearing up access and quicker reboots.
Process Virtual machines is sometimes known as an application virtual machine, performs as a standard application inside an operating system and supports a single process.
It is produced when that process is started and damaged when it exits.
The function is to offer a podium independent programming environment that abstracts away particulars of the basic hardware or operating system, and permits a program to carry out in the similar method on any stage.
In some special case of process Virtual machines are systems that abstract over the communication mechanisms of a computer group.
They are created to relieve the task of programming parallel applications by allowing the programmer focus on algorithms provided by interconnect and the operating system.
Catalogs of hardware with virtual machine support
Boston Circuits gCore with 16 ARC 750D cores and Time-machine hardware virtualization module.
IBM System/370, System/390, and zSeries mainframes
Free scale PowerPC MPC8572 and MPC8641D
Sun Microsystems Logical Domains
Listings of virtual machine software
Glulx - Glulx, Z-code
Process virtual machine software
EiffelStudio for the Eiffel programming language
Inferno - Limbo
Common Language Runtime like C#, Visual Basic .NET, J#, Managed C++
Forth virtual machine - Forth
Erlang programming language
Hec - Hasm Assembler
Low Level Virtual Machine (LLVM) - currently C, C++, Stacker
Java virtual machine - Java, Nice, NetREXX
MMIX - MMIXAL
Macromedia Flash Player - SWF
Neko virtual machine - currently Neko and haXe
O-code machine - BCPL
Parrot - Perl 6
p-code machine - Pascal
Perl virtual machine - Perl
YARV - Ruby
ScummVM - Scumm
Portable.NET - C#, Visual Basic .NET, J#, Managed C++
SECD machine - ISWIM, Lispkit Lisp
Smalltalk virtual machine - Smalltalk
Z-machine - Z-Code
Sed the stream-editor can also be seen as a VM with 2 storage spaces.
SQLite virtual machine - SQLite opcodes
Squeak virtual machine - Squeak
TrueType virtual machine - TrueType
VX32 virtual machine - application-level virtualization for native code
Valgrind - checking of memory accesses and leaks in x86/x86-64 code under Linux
Waba - Virtual machine for small devices, similar to Java
Virtual Processor (VP) from Tao Group (UK)
Zend Engine - PHP
Warren Abstract Machine - Prolog, CSC GraphTalk
Operating System level virtualization software
System virtual machine software
vThere (From Sentillion, Inc. )
Bochs, portable open source x86 and AMD64 PCs emulator
ATL (A MTL Virtual Machine)
CoLinux Open Source Linux inside Windows
Integrity Workstation Green Hills Software
Denali, uses paravirtualization of x86 for running para-virtualized PC operating systems.
Microsoft Virtual PC and Microsoft Virtual Server
LilyVM is a lightweight virtual machineAn introduction
Parallels Workstation, provides virtualization of x86 for running unmodified PC operating systems
X or higher
Parallels Desktop for Mac, provides virtualization of x86 for running virtual machines on Mac OS QEMU, is a simulator based on a virtual machine.
TRANGO real-time embedded hypervisor
Virtual Iron (Virtual Iron 3.1)
VM from IBM
VMware (ESX Server, Fusion, Virtual Server, Workstation, Player and ACE)