Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.

Slides:



Advertisements
Similar presentations
Virtualization Technology
Advertisements

Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.
Xen and the Art of Virtualization Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.
XEN AND THE ART OF VIRTUALIZATION Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, lan Pratt, Andrew Warfield.
VIRTUALIZATION Xen and the Art of Virtualization
Embedded System Lab. Yoon Jun Kee Xen and the Art of Virtualization.
Bart Miller. Outline Definition and goals Paravirtualization System Architecture The Virtual Machine Interface Memory Management CPU Device I/O Network,
CS-3013 & CS-502, Summer 2006 Virtual Machine Systems1 CS-502 Operating Systems Slides excerpted from Silbershatz, Ch. 2.
G Robert Grimm New York University Disco.
Xen and the Art of Virtualization A paper from the University of Cambridge, presented by Charlie Schluting For CS533 at Portland State University.
Xen and the art of the virtualization Tao Yang CS708 19/04/07.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Virtualization for Cloud Computing
Virtual Machine Monitors CSE451 Andrew Whitaker. Hardware Virtualization Running multiple operating systems on a single physical machine Examples:  VMWare,
LINUX Virtualization Running other code under LINUX.
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt & Andrew Warfield.
1 Xen and the Art of Virtualization By Paul Barham, Boris Dragovic, Stevan Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, and Andrew Warfield.
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
Xen and the Art of Virtualization. Introduction  Challenges to build virtual machines Performance isolation  Scheduling priority  Memory demand  Network.
Xen and the Art of Virtualization Paul Barham*, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauery, Ian Pratt, Andrew Wareld.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
CSE598C Virtual Machines and Their Applications Operating System Support for Virtual Machines Coauthored by Samuel T. King, George W. Dunlap and Peter.
Tanenbaum 8.3 See references
Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina.
Virtual Machines Xen and Terra Rajan Palanivel. Xen and Terra : Papers Xen and the art of virtualization. -Univ. of Cambridge Terra: A VM based platform.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Jonathan Walpole (based on a slide set from Vidhya Sivasankaran)
CS533 Concepts of Operating Systems Jonathan Walpole.
1 Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
Virtualization The XEN Approach. Virtualization 2 CS5204 – Operating Systems XEN: paravirtualization References and Sources Paul Barham, et.al., “Xen.
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
Benefits: Increased server utilization Reduced IT TCO Improved IT agility.
Xen Overview for Campus Grids Andrew Warfield University of Cambridge Computer Laboratory.
Xen I/O Overview. Xen is a popular open-source x86 virtual machine monitor – full-virtualization – para-virtualization para-virtualization as a more efficient.
Xen I/O Overview.
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt & Andrew Warfield.
Virtual Machine Monitors: Technology and Trends Jonathan Kaldor CS614 / F07.
Xen and The Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt & Andrew Warfield.
CS533 Concepts of Operating Systems Jonathan Walpole.
Nathanael Thompson and John Kelm
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
Outline for Today Announcements –1 st programming assignment coming soon. Objective of the lecture –OS and Virtual Machines.
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Vidhya Sivasankaran.
The xCloud and Design Alternatives Presented by Lavone Rodolph.
Introduction to virtualization
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Full and Para Virtualization
Lecture 26 Virtual Machine Monitors. Virtual Machines Goal: run an guest OS over an host OS Who has done this? Why might it be useful? Examples: Vmware,
Operating-System Structures
Xen and the Art of Virtualization
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
OS Structures - Xen. Xen Key points Goal: extensibility akin to SPIN and Exokernel goals Main difference: support running several commodity operating.
CSE 451: Operating Systems Winter 2015 Module 25 Virtual Machine Monitors Mark Zbikowski Allen Center 476 © 2013 Gribble, Lazowska,
Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine and Mendel Rosenblum Presentation by Mark Smith.
Advanced Operating Systems (CS 202) Virtualization March 7, 2016.
XEN – The Art of Virtualisation. So what is Virtualisation? ● Makes use of spare capacity ● Run multiple instances of OSes simultaneously ● Multitasking.
Xen and the Art of Virtualization
Virtualization for Cloud Computing
Virtual Machine Monitors
Virtualization Technology
Xen and the Art of Virtualization
Presented by Yoon-Soo Lee
Xen: The Art of Virtualization
Running other code under LINUX
OS Virtualization.
Xen and the Art of Virtualization
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
Virtualization Dr. S. R. Ahmed.
Xen and the Art of Virtualization
System Virtualization
Presentation transcript:

Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield University of Cambridge Computer Laboratory Presented by: Brandon Elting

Outline Why Virtualization? Overview of Xen Benchmark Results Xen Today Conclusion

Outline  Why Virtualization? Overview of Xen Benchmark Results Xen Today Conclusion

Why Virtualization? Problem Domain Virtualization Paravirtualization

Problem Domain Need to execute a diverse range of applications and services Need to support multiple OSes and configurations Solution: Run multiple processes on a single machine Unfortunate configuration interactions Solution: Run separate OSes on different machines Maintenance Issues Keep machines busy Support Legacy Software on Modern Hardware

Virtualization Present the illusion of many small Virtual Machines to run multiple instances of different Operating Systems concurrently Virtual Machine exactly like physical machine Pros Can run unmodified OSes in VM Cons Performance Uncooperative hardware Solution: binary rewriting Examples VM/370, VMware, Disco

Paravirtualization Present an idealized VM abstraction to guest OSes Differs from underlying hardware interface Pros Can deal with difficult to virtualize architectures Exposing both a virtual and real interface leads to potential performance enhancements Cons Must port existing OSes to run on paravirtualized host Example Denali

Outline Why Virtualization?  Overview of Xen Benchmark Results Xen Today Conclusion

Overview of Xen High-Performance, Paravirtualized Virtual Machine Monitor/Hypervisor Runs on 32-bit x86 Processors Provides an environment to execute up to 100 VM instances simultaneously Focus on Performance Isolation Attempts to minimize overhead associated with virtualization Supports Ported Guest Operating Systems XenoLinux - Port of Linux 2.4 XenoXP - Port of Windows XP (in development)

Machine Running Xen Hypervisor H/W (SMP x86, physical memory, enet, SCSI/IDE) Domain0 Control Interface Virtual Physical Memory Virtual x86 CPU Virtual Network Virtual BlockDev GuestOS (XenoLinux) Control Plane Software Xeno-Aware Device Drivers GuestOS (XenoXP) User Software Xeno-Aware Device Drivers GuestOS (XenoBSD) User Software Xeno-Aware Device Drivers GuestOS (XenoLinux) User Software Xeno-Aware Device Drivers

Virtual Machine Interface CPU Memory Device I/O Control Management

Virtualized CPU CPU Execution Non-Privileged Instructions can run directly on “bare hardware” Privileged operations must be marshaled by Xen Privilege Levels x86 has four privileged levels (rings) 0-3 (0=more … 3=less) Xen runs at ring0, Guest OS at ring1, apps at ring3 Exception Handling Guest provides virtual IDT Most ISRs same as on real x86 hardware, page-fault is special case Interrupts and Events Handled via “event channels,” Xen upcalls into guest Maskable, analogous to disabling interrupts ‘Fast’ exception handler for Guest OS system-calls

Memory Management 1 Page Tables Guests responsible for managing their own page tables Updates to page tables must go through Xen Guests have direct read access to page tables Updates to page tables can be batched Page frames contain reference count and type Translation Lookaside Buffer x86’s hardware managed TLB complicates virtualization Xen mapped to the top 64MB of each address space, saves TLB flushes Segmentation Handled in a similar manner as page tables

Memory Management 2 Physical Memory Most Operating Systems expect contiguous memory addresses Illusion of contiguous physical memory provided by physical- hardware map Exposing both hardware and physical memory addresses provides area for optimization Cache locality

Device I/O Xen exposes a set of clean and simple device abstractions I/O data transferred between guest and Xen via aync I/O Rings Network Device VFR - Virtual Firewall-Router VIF - Virtual Network Interface Disks VBD - Virtual Block Devices

Control Management Domain0 Created at Xen boot-time Has access to Xen’s control interface Hosts application-level management software Provides separation of policy and mechanism

Control Transfer Hypercalls Synchronous communication between Hypervisor and Guest Analogous to system calls Events Asynchronous notifications to domains Used to notify domains of device driver interrupts Lightweight notification of important events ie. Domain-termination requests

Data Transfer I/O Rings Mechanism to allow efficient moving of data vertically through system Based around two pairs of producer-consumer pointers Unique request ids allow reordering Allows producer to enqueue multiple requests and defer notifying consumer

Outline Why Virtualization? Overview of Xen  Benchmark Results Xen Today Conclusion

Benchmark Results Compare Linux to different Virtualization techniques XenoLinux compared against Linux, VMWare, User-Mode Linux Benchmarks SPEC: cpu intensive Linux build: 7% of time spent in kernel OSDB-IR/OLTP: OS intensive, many domain transitions Dbench: filesystem intensive SPEC WEB99: good overall measure

Performance LXVU SPEC INT2000 (score) LXVU Linux build time (s) LXVU OSDB-OLTP (tup/s) LXVU SPEC WEB99 (score) Benchmark suite running on Linux (L), Xen (X), VMware Workstation (V), and UML (U) Source: xen-lwe2005-short.ppt

Concurrent VM LX 2 LX 4 LX 8 LX Simultaneous SPEC WEB99 Instances on Linux (L) and Xen(X) Source: xen-lwe2005-short.ppt

Additional Results Performance Isolation Execute domains with “anti-social” processes OSDB-IR and SPEC WEB99 only slightly affected Scalability Run up to 100 VMs concurrently Only a loss of 7.5% throughput compared to Linux

Outline Why Virtualization? Overview of Xen Architecture Benchmark Results  Xen Today Conclusion

Xen Today Current Version: Xen 3.2 (Released Jan ‘08) Supports HW Virtualization Extensions (Intel IVT, AMD-V) Runs unmodified OSes Supports SMP Virtualized Guest OSes Supported OSes: Windows, Linux, Solaris, BSD, … Virtualizes Architectures: x86, x86/64, IA64, PowerPC, … Live VM Relocation Load balancing across a cluster Graphics Virtualization: Direct3D, OpenGL

Outline Why Virtualization? Overview of Xen Benchmark Results Xen Today  Conclusion

Conclusion Xen provides excellent platform for deploying a wide variety of differing applications Xen provides necessary protection and performance isolation Paravirtualization provides near native performance

Outline Why Virtualization? Overview of Xen Benchmark Results Xen Today Conclusion

References

Questions/Comments?