zen and the art of virtualization paul barham, et al. university of cambridge, microsoft research...

15
Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina Swenson CS533 – March 5, 2007

Upload: kory-richards

Post on 26-Dec-2015

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Zen and the Art of VirtualizationPaul Barham, et al.

University of Cambridge, Microsoft Research Cambridge

Published by ACMSOSP’03

Presented by Tina Swenson CS533 – March 5, 2007

Page 2: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Brief History of Virtualization

1960s IBM System/360 Model 67 Mainframe Term Hypervisor born out of Supervisor.

Full Virtualization (Disco) Unmodified OS/application code Performance hit because hypervisor mediation.

x86 architecture problems.Paravirtualization (Xen)

OS cooperates with hypervisor. OS code must be modified for this cooperation.

Page 3: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

About Xen

A high-performance, resource-managed x86 virtual machine monitor (VMM).

100 guest OS instances running industry standard apps and services.

The hypervisor (VMM) sitting just above the hardware at a higher privilege mode than the OSes.

Page 4: 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 Machine Interface

Memory Management Guest OSes are responsible for the hardware

page tables. Xen exists in the top section of every address

space. Avoids a TLB flush when entering and leaving the

hypervisor. Disco maintains shadow page tables to handle

TLB misses and remain invisible.

Page 5: 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 Machine Interface

CPU The OS is no longer at the most privileged

level of the system. Hypervisor in Ring 0. OS in Ring 1. App code in

Ring 3. Privileged instructions must be validated and

executed within Xen. Disco vs Xen

x86 exceptions map to Xen exception handling tables.

Page 6: 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 Machine Interface

Device IO Device abstractions provided. IO data moves between domains via shared

memory and asynchronous buffer-descriptor rings.

Page 7: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Control Transfer

Hypercall Synchronous trap by domain into hypervisor

to perform a privileged op.Events

Asynchronous events, replaces device interrupts.

Page 8: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

IO Data Transfer

Circular queue of descriptors Allocated by a domain, accessible by Xen. Producer-Consumer

Page 9: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Subsystem Virtualization CPU Scheduling

Domains scheduled via Borrowed Virtual Time. Virtual Address Translation

Xen registers guest OS page tables with the MMU and allows the Guest OS read-only access. Xen performs page table updates.

No shadow page tables, as with Disco. Physical Memory

Statically partitioned between domains. Mapping physical to hardware addresses is up to Guest OS. Balloon driver – Pages passed between Xen and XenoLinux.

Other Time and Timers Network Disk

Page 10: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Performance

Linux L VMware Workstation V XenoLinux X User-Mode Linux U

Page 11: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Performance

Linux L VMware Workstation V XenoLinux X User-Mode Linux U

Page 12: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Performance

Linux L VMware Workstation V XenoLinux X User-Mode Linux U

Page 13: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Concurrent VM

Linux vs XenoLinux

Page 14: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

More Evaluation

Performance Isolation 4 VMs. 2 normal, 2 nasty

Scalability Can Xen run 100 domains?

Page 15: Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina

Xen Today

Active Project University of Cambridge SourceForge

In Industry IBM, HP, Intel, Red Hat, AMD and Novell XenSource