Upload
eleanor-young
View
232
Download
0
Tags:
Embed Size (px)
Citation preview
Operating System Virtualization
Adam Nofsinger
2
OS Virtualization
• What is it?• Brief History• Why use it?• Virtualization
Software• Shortcomings• Future Tech
3
Virtualization
• Definition:– Broadly describes the (beneficial) separation
of a resource or service from the typical physical means of providing it.
• Examples: – Virtual Memory– Virtual Private Networks– Java Virtual Machine
4
Virtualization
• OS Virtualization (Virtual Machines)– Separate OS from Physical Hardware – Host OS Guest OS
Host OS
Guest OS
Virtual Layer
Guest OS Guest OS
Hardware
5
Virtualization Techniques
• How does Guest OS get to Hardware?
Host OS
Guest OS
Virtual Layer
Hardware
Processor – Memory – NIC – Disk
6
Virtualization Techniques
• Virtual Monitor• Qemu, Vmware Player, Microsoft Virtual PC• Sometimes called Emulation, e.g. x86 Emulation
Host OS
Guest OS
Virtual Monitor
Guest OS Guest OS
Hardware
7
Virtualization Techniques
• Hypervisor• Vmware ESX Server, Parallels*
OS
Hypervisor Software
OS OS
Hardware
8
Virtualization Techniques
• Para-Virtualization• Xen, Vmware Tools*
Host OS
Guest OS(Modified)
Virtual Monitor
Guest OS(Modified)
Guest OS(Modified)
Hardware
9
One Slide History
• 1960s• IBM’s Mainframe Computers (e.g. IBM S/360)
– Compatible Time Sharing System (CTSS)
• 1980s• Desktop PC Virtualization on Backburner
• 1990s - Present• IA-32 Server Hardware High Profit Market• Virtualization Increased Hardware value.• Vmware Introduces Workstation
10
Why OS Virtualization?
• Multi-Platform Testing– Only need one set of Hardware
• Resource saver on purchases (time/money)• Can cut setup time
• Emulated Hardware– Same Hardware on All Test Environments– Hardware Simulation– Limited Resource Environments
11
Why OS Virtualization?
• Isolation– Virtual Machine from Host OS / Other VMs– Safe for “untrusted” applications.– Partitioning of Services
• Server Environment more stable.• Some Applications don’t play w/ Others
• Encapsulation– One VM One File/Folder on Disk– Typically easy to migrate.
12
Why OS Virtualization?
• OS Debugging– Crash on Developing OS do not (typically)
affect Host OS.– Debug
• Memory dumps• CPU Registers• Serial / Parallel Port dumps
• Multiple OS Instances Simultaneously– Infrastructure Testing
• Win 98 Linux OpenBSD Win 2K
13
Why OS Virtualization?
• Legacy Applications
• Server Application Virtualization Testing– Some application commonly on VMs
• Portability Requirements Lessen– Down with Host OS!
• Virtualization is Fun!– Gain Experience with new OS.– Help a business transition to Open-Source.
14
Virtualization Software
• Vmware• Server• Player• Workstation• ESX Server
• Qemu
• Xen
• Microsoft Virtual PC/Server • Connectix
15
Vmware Server
• Currently Free! (But Geared toward Server)• Unique Features vs. Workstation
– Remote Administration• Consoles• Web Interface
– VMs can Run as Service
• Slow to Administrate– Especially GUI style (e.g. X, Windows)
• Can make VMs for Vmware Player
http://www.vmware.com/products/server 16
http://www.vmware.com/products/server 17
http://www.vmware.com/products/server 18
http://www.vmware.com/products/server 19
http://www.vmware.com/products/server 20
http://www.vmware.com/products/server 21
http://www.vmware.com/products/server 22
23
Vmware Player
• Demo Time!
24
Vmware WorkStation
• Geared more toward Software Developers
• Features vs. Vmware Server– Multiple Snapshots– Cloning– Movie Recording– Teams & VPNs
• $200/licensehttp://www.vmware.com/img/ws5_large4.png
25http://www.vmware.com/img/ws5_large3.png
26
Vmware ESX Server
• Intended for Enterprise-Level Servers– Partitioning
• Hypervisor– Runs on “Bare Metal” (Hardware Layer)
• Live Migration
27
QEMU
• Demo Time!
28
Xen
• Open-Source, Linux
• Para-Virtualization– Very Fast– Have to use Modified Guest OS
• Kernel Modifications• Windows?
• Live Migration
29
Microsoft Virtual PC / Server
• The VM Software Formerly Known as Connectix Virtual PC
• Runs on x86 or Power PC Architecture
• PC: $130
• Server: $100 - $200 (#of processor)
30
Other Offerings
• Bochs IA-32 Emulator
– http://bochs.sourceforge.net/
• Linux-VServer
– http://linux-vserver.org/
• Virtuozzo => Server Virtualization, $200 - $4000+
– http://www.swsoft.com/en/products/virtuozzo/
• OpenVZ => Open Source Virtuozzo
– http://openvz.org/
• Parallels Workstation 2.0 => Hypervisor-Powered, $49 / license
– http://www.parallels.com/
• TRANGO – RTOS Hypervisor, ARM, MIPS, PowerPC, etc.
– http://www.trango-systems.com/
31
General Shortcomings
• Virtual Machine cannot represent real scenario 100% accurately. – Especially true with Para-Virtualization.– Most situations close enough.
• Guest OS Hardware Requirements.– Host needs more RAM, HD Space, etc.
• Sometimes just to operate
32
General Shortcomings
• Intel IA-32 Virtualization Problems– More on this in a bit (Vanderpool)
• Some Hardware not supported– USB (Sometimes)– 3D Graphics Cards– Etc.
33
Future Tech
• Intel VT (aka “Vanderpool”)– Virtual Machine Extensions (VMX)
• 10 new virtualization specific instructions• VMXON, VMXOFF• VMLAUNCH, VMRESUME
– BIOS / VMM application in the works
OS
Virtual Layer
OS OS
Virtual CPU Virtual CPU Virtual CPU
34
Future Tech
• AMD VT (aka “Pacifica”)– Similar to Intel
• Additions to x86 Architecture to better support VMs
http://enterprise.amd.com/Downloads/Pacifica_en.pdf
35
References
• Amit Sing, An Introduction to Virtualization
– http://www.kernelthread.com/publications/virtualization/
• Vmware, Virtualization Overview
– http://www.vmware.com/virtualization/
• Vmware, Virtualization White Paper
– http://www.vmware.com/pdf/virtualization.pdf [pdf]
• Cambridge University Systems Research Group, Xen Website
– http://www.cl.cam.ac.uk/Research/SRG/netos/xen/
• Microsoft, Virtual PC Website
– http://www.microsoft.com/windows/virtualpc/default.mspx
• Bochs Website
– http://bochs.sourceforge.net/
• Gabriel Torres, Intel Virtualization Technology (VT) Explained
– http://www.hardwaresecrets.com/printpage/263
• AMD, “Pacifica” Virtualization Technology
– http://enterprise.amd.com/Downloads/Pacifica_en.pdf [pdf]