Upload
pollycorp
View
236
Download
0
Embed Size (px)
Citation preview
8/12/2019 Virtual Ization s
1/22
A Brief Introduction To VirtualizationTechnologies
Yin Yunqiao
2007-08-31
HP
mailto:[email protected]:[email protected]:[email protected]8/12/2019 Virtual Ization s
2/22
Virtualization
In computing, virtualization is a broad term thatrefers to the abstraction of computer resources.
Platform virtualization
Resource virtualization
8/12/2019 Virtual Ization s
3/22
Platform Virtualization
Emulation or simulation
Native virtualization and full virtualization
Hardware enabled virtualization
Partial virtualization
ParavirtualizationOperating system-level virtualization
Application Virtualization
8/12/2019 Virtual Ization s
4/22
Emulation or simulation
allowing an unmodified "guest" OS for acompletely different CPU to be run.
Examples: Bochs
PearPC
VirtualPC QEMU(without acceleration)
8/12/2019 Virtual Ization s
5/22
Native and Full Virtualization
the virtual machine simulates enough hardware toallow an unmodified "guest" OS (one designedfor the same CPU) to be run in isolation.
Examples:
VirtualBox
Virtual PC
Vmware QEMU
Win4Lin
XEN/Virtual Iron
8/12/2019 Virtual Ization s
6/22
Hardware enabled virtualization
the virtual machine has its own hardware andallows a guest OS to be run in isolation.
Intel VT (IVT)
AMD virtualization (AMD-V)
Examples:
VMware Fusion
Parallels Desktop for Mac
Parallels Workstation
8/12/2019 Virtual Ization s
7/22
Partial virtualization
the virtual machine simulates multiple instancesof much (but not all) of an underlying hardwareenvironment, particularly address spaces.
8/12/2019 Virtual Ization s
8/22
Paravirtualization
the virtual machine does not necessarily simulatehardware, but instead (or in addition) offers aspecial API that can only be used by modifying
the "guest" OS.
Terminologies
Hypervisor, hypercall
Enomalism
Examples:
XEN, KVM, Win4Lin 9x
8/12/2019 Virtual Ization s
9/22
Operating system-level virtualization
virtualizing a physical server at the operatingsystem level, enabling multiple isolated andsecure virtualized servers to run on a single
physical server.
Examples:
Parallels Workstation
Linux-VServer, Virtuozzo
OpenVZ, Solaris Containers
FreeBSD Jails
Chroot ?
8/12/2019 Virtual Ization s
10/22
Application Virtualization
typically for the purpose allowing applicationbinaries to be portably run on many differentcomputer architectures and operating systems.
http://en.wikipedia.org/wiki/Comparison_of_Application_Virtual_Machines
Examples:
.NET CLR
JVM
Script Languages:Python,Ruby,Javascript...
http://en.wikipedia.org/wiki/Comparison_of_Application_Virtual_Machineshttp://en.wikipedia.org/wiki/Comparison_of_Application_Virtual_Machineshttp://en.wikipedia.org/wiki/Comparison_of_Application_Virtual_Machineshttp://en.wikipedia.org/wiki/Comparison_of_Application_Virtual_Machineshttp://en.wikipedia.org/wiki/Comparison_of_Application_Virtual_Machines8/12/2019 Virtual Ization s
11/22
8/12/2019 Virtual Ization s
12/22
Virtualization Under Linux(1)
UML (User Mode Linux)
http://user-mode-linux.sourceforge.net/
KVM (Kernal-based Virtual Machine)
From Linux-2.6.20
http://kvm.qumranet.com/kvmwiki
XEN
http://xen.xensource.com/
8/12/2019 Virtual Ization s
13/22
Virtualization Under Linux(2)
QEMU
http://fabrice.bellard.free.fr/qemu/
QEMU Accelerators KQEMU
QVM86
VirtualBox (released in January 2007)
KVM with QEMU
http://fabrice.bellard.free.fr/qemu/http://fabrice.bellard.free.fr/qemu/http://fabrice.bellard.free.fr/qemu/8/12/2019 Virtual Ization s
14/22
Virtualization Under Linux(3)
Bochs (GPLed, very slow)
A portable x86 and AMD64 PCs emulator mostlywritten in C++ and distributed as free software underGPL.
http://bochs.sourceforge.net/
VirtualBox(commercial&open source, fast)
http://www.virtualbox.org/
VMWare (Workstation,Server,Player)
http://bochs.sourceforge.net/http://www.virtualbox.org/http://www.virtualbox.org/http://www.virtualbox.org/http://bochs.sourceforge.net/http://bochs.sourceforge.net/8/12/2019 Virtual Ization s
15/22
Virtualization Under Linux(4)
SWSOFT Virtualizations
http://www.swsoft.com
http://www.parallels.com/ http://openvz.org/
Linux-VServer
http://linux-vserver.org/ Compare with:
FreeBSD Jail
Solaris Containers (Zones)
http://www.swsoft.com/http://www.parallels.com/http://openvz.org/http://openvz.org/http://openvz.org/http://www.parallels.com/http://www.parallels.com/http://www.swsoft.com/http://www.swsoft.com/8/12/2019 Virtual Ization s
16/22
VMWare
Virtual PC
VirtualBox
Bochs
QEMU
Linux Virtualization in Windows(1)
8/12/2019 Virtual Ization s
17/22
Linux Virtualization in Windows(2)
CoLinux Cooperative Linuxhttp://www.colinux.org/
Topologilinuxhttp://www.topologilinux.com
http://www.colinux.org/http://www.topologilinux.com/http://www.topologilinux.com/http://www.topologilinux.com/http://www.colinux.org/http://www.colinux.org/8/12/2019 Virtual Ization s
18/22
Linux Virtualization in Windows(3)
MinGW Minimalist GNU for Windows
Cygwin
GNUWIN32 GNUWINII
UnxUtils
UWIN SFU
Microsoft Windows Services for UNIX,aka Interix
http://gnuwin32.sourceforge.net/http://gnuwin.epfl.ch/http://unxutils.sourceforge.net/UnxUtils.htmlhttp://www.research.att.com/sw/tools/uwinhttp://www.research.att.com/sw/tools/uwinhttp://www.research.att.com/sw/tools/uwinhttp://unxutils.sourceforge.net/UnxUtils.htmlhttp://unxutils.sourceforge.net/UnxUtils.htmlhttp://gnuwin.epfl.ch/http://gnuwin.epfl.ch/http://gnuwin32.sourceforge.net/http://gnuwin32.sourceforge.net/http://gnuwin32.sourceforge.net/8/12/2019 Virtual Ization s
19/22
Comparison of virtual machines
http://en.wikipedia.org/wiki/Comparison_of_virtual_machines
8/12/2019 Virtual Ization s
20/22
History of virtualization development 1965 IBM M44/44X paging system
1965 IBM System/360-67 virtual memory hardware
1967 IBM CP-40 (January) and CP-67 (April) time-sharing
1972 IBM VM/370 run VM under VM
1997 Connectix First version of Virtual PC
1998 VMWare U.S. Patent 6,397,242
1999 VMware Virtual Platform for the Intel IA-32
architecture
2000 IBM z/VM
2001 Connectix Virtual PC for Windows
2003 Microsoft acquired Connectix
2003 EMC acquired Vmware
2003 VERITAS acquired Ejascent
2005 HP Integrity Virtual Machines
2005 Intel VT
2006 AMD VT
2005 XEN
2006 VMWare Server
2006 Virtual PC 2006
2006 HP IVM Version 2.0
2006 Virtual Iron 3.1
2007 InnoTek VirtualBox
2007 KVM in Linux Kernel
2007 XEN in Linux Kernel
8/12/2019 Virtual Ization s
21/22
References
Wikipedia for any virtualization Terminologies
Virtual Linux:An overview of virtualization methods, architectures, and implementationshttp://www-128.ibm.com/developerworks/linux/library/l-linuxvirt/
8/12/2019 Virtual Ization s
22/22
Questions
Q&A