6,534
edits
Changes
minor corrections
=== Paravirtualization ===
This technique also requires a VMM, but most of its work is performed in the ''guest OS'' code, which in turn is ''modified'' to support this VMM and avoid unnecessary use of privileged instructions. The paravirtualization technique also enables running different OSs on a single server, but requires them to be ported, i.e. they should "know" «know» they are running under the hypervisor. The paravirtualization approach is used by products such as [http://www.xensource.com/xen/ Xen] and [http://user-mode-linux.sourceforge.net/ UML].
=== Virtualization on the OS level , a.k.a. containers virtualization ===
Most applications running on a server can easily share a machine with others, if they could be isolated and secured. Further, in most situations, different operating systems are not required on the same server, merely multiple instances of a single ''operating system''. OS-level virtualization systems have been designed to provide the required isolation and security to run multiple applications or copies of the same OS (but different distributions of the OS) on the same server. [http://openvz.org/ OpenVZ], [http://www.swsoft.com/products/virtuozzo Virtuozzo], [http://linux-vserver.org/ Linux-VServer], [http://www.sun.com/bigadmin/content/zones/ Solaris Zones] and [http://www.freebsd.org/doc/en_US.ISO8859-1/books/arch-handbook/jail.html FreeBSD Jails] are examples of OS-level virtualization.