Changes

Jump to: navigation, search

Introduction to virtualization

1,105 bytes removed, 16:45, 11 August 2006
m
Reverted edit of Mmestnik, changed back to last version by Kir
=== Virtual machines (VMs) ===
'''Virtual machines''' emulate some real or fictional hardware, which in turn requires real resources from the ''host'' (the machine running the VMs). This approach, used by most ''system emulators'', allows the emulator to run an arbitrary ''guest operating system'' without modifications because guest OS is not aware that it is not running on real hardware. :( The main issue with this approach is that some CPU instructions require additional privileges and may not be executed in user space thus requiring a ''virtual machines monitor'' (VMM) to analyze executed code and make it safe on-the-fly. Hardware emulation approach is used by [http://www.vmware.com/ VMware] products, [http://parallels.com/ Parallels] and [http://www.microsoft.com/windowsserversystem/virtualserver/default.mspx Microsoft Virtual Server]. :( <nowiki>:)</nowiki> You changed topics in mid-paragraph. These emulators are used to create virtual machines, [http://dosbox.sourceforge.net/ DosBOX]and [http://bochs.sourceforge.net/ Bochs]. Virtual Machine Emulators are able to run x86 code and OSs on a wide variaty of computer hardware, I.E. ppc/sparc/alpha. :I should also mention [http://fabrice.bellard.free.fr/qemu/ Qemu] in here some where, but it will only run programs compiled for other CPUs under the same OS I.E. x86 [http://www.winehq.org Wine] on ppc used to run x86 windows propgrams under OSx or Linux. The others you mention use cpu virtualization, Rather, guest code is executed as-is in a safe VM environment managed by a VM monitor. Guest kernel code is executed at a less priviliged level, causing privileged operations to generate exceptions which are managed by the VM monitor. Like the abovementioned VMware and [http://plex86.sourceforge.net/ Plex86]. Unlike bochs and dosbox, instructions are not translated(emulation) into native code. This means that vmware and plex can only run x86 OSs on x86 hardware. :)
=== Paravirtualization ===

Navigation menu