SlideShare una empresa de Scribd logo
1 de 51
Descargar para leer sin conexión
Xen and the Art of Virtualization

Nikola Gvozdiev
Georgian Mihaila
Outline
Xen and the Art of Virtualization – Ian Pratt et al.
I.
II.
III.
IV.

The Art of Virtualization
Xen, goals and design
Xen evaluation
The future looks bright
Typical system components
Process
1

Process
2

Process
3

Process
4

Operating System

Hardware
3
Basic idea

Linux

Mac OS X

Windows XP

Virtualization layer
Hardware
4
Some definitions
• Host/guest: machine or software
• Domain: running VM + guest OS executes
• Hypervisor or Virtual Machine Monitor (VMM):
software or firmware that creates a virtual
machine on the host hardware

5
Why virtualize?
• More resources, subdivide for better use
• 1+ app(s)/OS/server:
# servers
sys admin complexity & time
• Scarce resources & unwilling cooperation:
resource containers & accountability

6
Some applications
• Resource optimization
• Infrastructure as a Service (IaaS)
• Application mobility/migration
• Containers/virus/worm (sandboxing)

7
Types of hardware virtualization
(software, memory, storage, data, network)

• Full virtualization (VMware)
– run OS/software unmodified
• Partial virtualization
– software may need modification to run
• Paravirtualization (Xen)
– software unmodified runs in modified OS as
separate system
8
Outline
Xen and the Art of Virtualization – Ian Pratt et al.
I.
II.
III.
IV.

The Art of Virtualization
Xen, goals and design
Xen evaluation
The future looks bright
Virtualization, at what cost?
•
•
•
•

Specialized hardware $
No commodity OS ♥
100% binary compatibility, speed
Speed
=> security ☠
or functionality

• Resource isolation/performance guarantees?
• So far, best effort provisioning => risk DoS
10
Xen goals
•
•
•
•
•

x86 architecture => $+=0
Commodity OS (Linux, BSD, XP) => ♥++
Share resources safely & in a managed fashion => ☠-- ♥++
No performance/functionality sacrifice => ♥++
Up to 100 VM instances on the same server => ?++

• (Free -GNU/GPL- => $--)

11
The Xen paper
Focus on the VMM design
• How to multiplex physical resources at the
granularity of an entire OS and provide
performance isolation between guest OSes?
Prototype
• Full Linux, partial Win XP, ongoing NetBSD port

12
The Virtual Machine Interface (VMI)

13
Typical System call
User
Program
Program
executing

OS Kernel

call read()

Program
blocked
Program
executing

Kernel
performing read
read() returns

14
Virtualizing CPU
OS is most privileged hypervisor
Ring 3

Ring 2
Ring 1

Ring 0

Applications

guest OS
Hypervisor

x86
15
Control transfer
Domain (guest OS)
- Hypercall interface (synchronous software trap)
Event
Hypercall

Xen (VMM)
- Event mechanism (asynchronous)

16
High level view
User
program

Return - resume

Sys call (set instructions)

User mode (low privilege)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Kernel mode (high privilege)

Kernel

Kernel
Translate sys call to procedure
call (set instructions)

Put data from registers
to where it is needed

CPU/Driver

Driver
*Loaded at boot time

Write device registers
to initiate I/O

17
High level view
User
program

Return - resume

Sys call (set instructions)

User mode (low privilege)
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Kernel mode (high privilege)

Code
Kernel executing in Ring 0 silently fails
Kernel

Translate sys call to procedure
call (set instructions)

Put data from registers
to where it is needed

CPU/Driver

Driver
*Loaded at boot time

Write device registers
to initiate I/O

18
Exceptions
• Typical exceptions
– System calls: register ‘fast’ exception handler
(in Exception Vector Table) which is accessed
directly by the processor, without indirecting
via ring 0
– Page faults: code executing in ring 0 only can
read the faulting address from register CR2,
therefore faults are delivered via Xen

19
Virtualizing CPU cont’d
• CPU scheduling
– Borrowed Virtual Time (BVT) scheduling
algorithm

Work-conserving
Low-latency wake-up (dispatch)
Timers : real, virtual, wall-clock
20
Memory mapping (relocation) cont’d
0xFFFF FFFF

Shared Kernel Memory

1GB

0xC000 0000
0xBFFF FFFF

Process 1

Process 2

Process 3

Virtual Memory
Addresses

3GB

0x0000 0000

21
Virtualizing memory management
(cont’d)
• x86 architecture
– No software managed TLB (walk the page table structure
in hardware to recover misses) and no tags (flush TLB for
address space switch)
• Guest OSes are responsible for allocating and managing the
hardware page tables, minimizing Xen involvement
• Xen exists in a 64MB section at the top of every address
space, avoiding a TLB flush when entering and leaving the
hypervisor

22
Xen

I need a new
page table

Guest OS

Pool of
reserved
memory

23
Xen
Guest OS
I’ll get it
myself

Pool of
reserved
memory

24
Xen
Guest OS

Register

Pool of
reserved
memory

Xen

25
Xen
Guest OS

Read

Pool of
reserved
memory

Update

Xen

Write (batch, up to 8 MB)

26
Xen
Guest OS

Memory page flipped

Pool of
reserved
memory

Xen

• Reduce memory footprint
• Avoid copies

27
Virtualizing Device I/O
(disk, network interface)

• Xen exposes device abstractions
• I/O data is transferred to and from each domain via
Xen, using shared memory, asynchronous buffer
descriptor rings

28
Data Transfer : I/O Rings

29
Xen design

30
Outline
Xen and the Art of Virtualization – Ian Pratt et al.
I.
II.
III.
IV.

The Art of Virtualization
Xen, goals and design
Xen evaluation
The future looks bright
Cost of porting an OS

In both OSes, the architecture-specific sections
are effectively a port of the x86 code to their
paravirtualized architecture.

32
Evaluation
• Based on Linux 2.4.21 (neither XP nor NetBSD
fully functional)
• Thoroughly compared to 2 other systems
– VMware Workstation (binary translation)
– UML (run Linux as a Linux process)

• Performs better than solutions with restrictive
licenses (ESX Server)

33
Relative Performance
CPU-bound tasks
• Relatively easy for all VMMs
• Little interaction with the OS

Legend
L – Linux
X – XenoLinux
V – VMware
U – User-mode Linux
34
Relative Performance
Tasks with more I/O
• About 7% of the time spent
in OS doing I/O and memory
management
• This portion of time gets
expanded for each VMM
but to a different extent

35
Relative Performance

36
Microbenchmarks

• As expected fork, exec and sh require large number
of page updates which slow things down
• On the up side these can be batched (up to 8MB of
address space constructed per hypercall)
37
Microbenchmarks

• Hmmm …. no calls into XEN yet …

38
Microbenchmarks

• Overhead due to a hypercall when switching context
in a guest OS (in order to change base of page table)
• The larger the working set the smaller the relative
overhead
39
Microbenchmarks

• 2 transitions into XEN
– One for the page fault handler
– One to actually get the page
40
Microbenchmarks

• Page flipping really pays off – no unnecessary data
copying
• More overhead for smaller packets – we still need to
deal with every header
41
Concurrent VMs
• Unexpectedly low
SMP performance
for 1 instance of
Apache
• As expected
adding another
domain leads to a
sharp jump in
performance
under XEN
• More domains –
more overhead
42
Concurrent VMs
• Performance
differentiation
works as expected
with IR
• But fails with OLTP
• Probably due to
inefficiencies with
the disk
scheduling
algorithm
• Bands matter !!!

43
Isolation
SPEC
WEB99

OSDB-IR

Guest
OS

Guest
OS

Guest
OS

Hypervisor (XEN)

Hardware

Guest
OS

• Run uncooperative
user applications, see
if they bring down the
system
• 2 “bad” domains vs 2
“good” ones
• XEN delivers good
performance even in
this case
• What about an
uncooperative OS ?

44
Scalability

• Very low footprint per domain (4 - 6MB memory, 20KB
state)
• Benchmark is compute-bound and Linux assigns long time
slices, XEN needs some tweaking
• Even without it does pretty well (but no absolute values)
45
Criticism
• No comparison between fundamentally similar
techniques (e.g. the big IBM mainframe)
• Memory footprint almost not mentioned
• Most tests performed with limited number of
domains, while the paper’s main goal is to
demonstrate performance with 100 domains
• Benchmarks used relevant today ?

46
Outline
Xen and the Art of Virtualization – Ian Pratt et al.
I.
II.
III.
IV.

The Art of Virtualization
Xen, goals and design
Xen evaluation
The future looks bright
Related work
• Started by IBM in the 70s
• Resurgence lately (at time of publication) as
hardware got fast enough to run multiple OS
• Unlike in other solutions isolation/security is
“implicitly” enforced by the hypervisor
• One of the first attempts at paravirtualization the
other two are:
– IBM zSeries mainframes (Linux)
– Denali (quite a bit different)

48
Xen vs. Denali ?
Feature

Xen

Denali

# VM

100

1000

Target existing ABI

Yes

No (does not fully support x86
segmentation, used in Net BSD,
Linux, Windows XP)

Supports application multiplexing

Yes

No (1 app/OS)

Supports multiple address spaces

Yes

No (prototype virtual MMU
developed, helping Denali) => no
evaluation

Memory management support at the
virtualization layer

Yes

No (VMM performs all paging to
and from disk)

Performance isolation

Yes, each guest OS performs
own paging using guaranteed
memory reservation and disk
allocation

No, malicious VM can encourage
thrashing behavior

Virtualizes namespaces of all machine
resources

No (Secure access control
within hypervisor only)

Yes (resource isolation through
impossible naming)
49
Future work and impact
• Huge impact of the paper, sparked a lot of
interest, the project is still very much alive
• They did actually complete the XP port, but due
to licensing restrictions it never got published
• Currently only supports Windows as guest if the
hardware supports virtualization
• More recent versions of the project try to push
complexity away from the hypervisor
• However, paravirtualization nowadays is only
used if the hardware does not support
virtualization natively
50
Any questions?

Más contenido relacionado

La actualidad más candente

Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...The Linux Foundation
 
ALSS14: Xen Project Automotive Hypervisor (Demo)
ALSS14: Xen Project Automotive Hypervisor (Demo)ALSS14: Xen Project Automotive Hypervisor (Demo)
ALSS14: Xen Project Automotive Hypervisor (Demo)The Linux Foundation
 
Reliability, Availability and Serviceability on Linux
Reliability, Availability and Serviceability on LinuxReliability, Availability and Serviceability on Linux
Reliability, Availability and Serviceability on LinuxSamsung Open Source Group
 
Five common customer use cases for Virtual SAN - VMworld US / 2015
Five common customer use cases for Virtual SAN - VMworld US / 2015Five common customer use cases for Virtual SAN - VMworld US / 2015
Five common customer use cases for Virtual SAN - VMworld US / 2015Duncan Epping
 
Integrating icinga2 and the HashiCorp suite
Integrating icinga2 and the HashiCorp suiteIntegrating icinga2 and the HashiCorp suite
Integrating icinga2 and the HashiCorp suiteBram Vogelaar
 
vmware_cloud_foundation_on_vxrail_technical_customer_presentation.pptx
vmware_cloud_foundation_on_vxrail_technical_customer_presentation.pptxvmware_cloud_foundation_on_vxrail_technical_customer_presentation.pptx
vmware_cloud_foundation_on_vxrail_technical_customer_presentation.pptxVitNguyn252054
 
VMware vSAN - Novosco, June 2017
VMware vSAN - Novosco, June 2017VMware vSAN - Novosco, June 2017
VMware vSAN - Novosco, June 2017Novosco
 
Anatomy of a Texture Fetch
Anatomy of a Texture FetchAnatomy of a Texture Fetch
Anatomy of a Texture FetchMark Kilgard
 
Virtual SAN 6.2, hyper-converged infrastructure software
Virtual SAN 6.2, hyper-converged infrastructure softwareVirtual SAN 6.2, hyper-converged infrastructure software
Virtual SAN 6.2, hyper-converged infrastructure softwareDuncan Epping
 
OpenStack networking
OpenStack networkingOpenStack networking
OpenStack networkingSim Janghoon
 
Quick and Easy Device Drivers for Embedded Linux Using UIO
Quick and Easy Device Drivers for Embedded Linux Using UIOQuick and Easy Device Drivers for Embedded Linux Using UIO
Quick and Easy Device Drivers for Embedded Linux Using UIOChris Simmonds
 
Xen and the art of virtualization
Xen and the art of virtualizationXen and the art of virtualization
Xen and the art of virtualizationAbdul417101
 
Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Stefano Stabellini
 
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14AMD Developer Central
 
Xen & the Art of Virtualization
Xen & the Art of VirtualizationXen & the Art of Virtualization
Xen & the Art of VirtualizationTareque Hossain
 
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...The Linux Foundation
 
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022Stefano Stabellini
 
Linux Performance Analysis and Tools
Linux Performance Analysis and ToolsLinux Performance Analysis and Tools
Linux Performance Analysis and ToolsBrendan Gregg
 

La actualidad más candente (20)

Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
Rootlinux17: Hypervisors on ARM - Overview and Design Choices by Julien Grall...
 
ALSS14: Xen Project Automotive Hypervisor (Demo)
ALSS14: Xen Project Automotive Hypervisor (Demo)ALSS14: Xen Project Automotive Hypervisor (Demo)
ALSS14: Xen Project Automotive Hypervisor (Demo)
 
Reliability, Availability and Serviceability on Linux
Reliability, Availability and Serviceability on LinuxReliability, Availability and Serviceability on Linux
Reliability, Availability and Serviceability on Linux
 
Five common customer use cases for Virtual SAN - VMworld US / 2015
Five common customer use cases for Virtual SAN - VMworld US / 2015Five common customer use cases for Virtual SAN - VMworld US / 2015
Five common customer use cases for Virtual SAN - VMworld US / 2015
 
Integrating icinga2 and the HashiCorp suite
Integrating icinga2 and the HashiCorp suiteIntegrating icinga2 and the HashiCorp suite
Integrating icinga2 and the HashiCorp suite
 
Xen Memory Management
Xen Memory ManagementXen Memory Management
Xen Memory Management
 
vmware_cloud_foundation_on_vxrail_technical_customer_presentation.pptx
vmware_cloud_foundation_on_vxrail_technical_customer_presentation.pptxvmware_cloud_foundation_on_vxrail_technical_customer_presentation.pptx
vmware_cloud_foundation_on_vxrail_technical_customer_presentation.pptx
 
VMware vSAN - Novosco, June 2017
VMware vSAN - Novosco, June 2017VMware vSAN - Novosco, June 2017
VMware vSAN - Novosco, June 2017
 
Anatomy of a Texture Fetch
Anatomy of a Texture FetchAnatomy of a Texture Fetch
Anatomy of a Texture Fetch
 
Virtual SAN 6.2, hyper-converged infrastructure software
Virtual SAN 6.2, hyper-converged infrastructure softwareVirtual SAN 6.2, hyper-converged infrastructure software
Virtual SAN 6.2, hyper-converged infrastructure software
 
OpenStack networking
OpenStack networkingOpenStack networking
OpenStack networking
 
Quick and Easy Device Drivers for Embedded Linux Using UIO
Quick and Easy Device Drivers for Embedded Linux Using UIOQuick and Easy Device Drivers for Embedded Linux Using UIO
Quick and Easy Device Drivers for Embedded Linux Using UIO
 
Xen and the art of virtualization
Xen and the art of virtualizationXen and the art of virtualization
Xen and the art of virtualization
 
Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022Xen in Safety-Critical Systems - Critical Summit 2022
Xen in Safety-Critical Systems - Critical Summit 2022
 
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
Vertex Shader Tricks by Bill Bilodeau - AMD at GDC14
 
SR-IOV Introduce
SR-IOV IntroduceSR-IOV Introduce
SR-IOV Introduce
 
Xen & the Art of Virtualization
Xen & the Art of VirtualizationXen & the Art of Virtualization
Xen & the Art of Virtualization
 
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
XPDS13: Xen in OSS based In–Vehicle Infotainment Systems - Artem Mygaiev, Glo...
 
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022System Device Tree and Lopper: Concrete Examples - ELC NA 2022
System Device Tree and Lopper: Concrete Examples - ELC NA 2022
 
Linux Performance Analysis and Tools
Linux Performance Analysis and ToolsLinux Performance Analysis and Tools
Linux Performance Analysis and Tools
 

Similar a Xen and the Art of Virtualization

Xen Euro Par07
Xen Euro Par07Xen Euro Par07
Xen Euro Par07congvc
 
RHEL5 XEN HandOnTraining_v0.4.pdf
RHEL5 XEN HandOnTraining_v0.4.pdfRHEL5 XEN HandOnTraining_v0.4.pdf
RHEL5 XEN HandOnTraining_v0.4.pdfPaul Yang
 
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCPOscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCPThe Linux Foundation
 
ClickOS_EE80777777777777777777777777777.pptx
ClickOS_EE80777777777777777777777777777.pptxClickOS_EE80777777777777777777777777777.pptx
ClickOS_EE80777777777777777777777777777.pptxBiHongPhc
 
OSSEU18: NVDIMM and Virtualization - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization  - George Dunlap, CitrixOSSEU18: NVDIMM and Virtualization  - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization - George Dunlap, CitrixThe Linux Foundation
 
Bridging the Semantic Gap in Virtualized Environment
Bridging the Semantic Gap in Virtualized EnvironmentBridging the Semantic Gap in Virtualized Environment
Bridging the Semantic Gap in Virtualized EnvironmentAndy Lee
 
XPDDS18: NVDIMM Overview - George Dunlap, Citrix
XPDDS18: NVDIMM Overview - George Dunlap, Citrix XPDDS18: NVDIMM Overview - George Dunlap, Citrix
XPDDS18: NVDIMM Overview - George Dunlap, Citrix The Linux Foundation
 
Advanced performance troubleshooting using esxtop
Advanced performance troubleshooting using esxtopAdvanced performance troubleshooting using esxtop
Advanced performance troubleshooting using esxtopAlan Renouf
 
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)Suresh Kumar
 
Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02Suresh Kumar
 
5. IO virtualization
5. IO virtualization5. IO virtualization
5. IO virtualizationHwanju Kim
 
Clusters (Distributed computing)
Clusters (Distributed computing)Clusters (Distributed computing)
Clusters (Distributed computing)Sri Prasanna
 
Noah - Robust and Flexible Operating System Compatibility Architecture - Cont...
Noah - Robust and Flexible Operating System Compatibility Architecture - Cont...Noah - Robust and Flexible Operating System Compatibility Architecture - Cont...
Noah - Robust and Flexible Operating System Compatibility Architecture - Cont...Takaya Saeki
 
Current and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on LinuxCurrent and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on Linuxmountpoint.io
 

Similar a Xen and the Art of Virtualization (20)

17-virtualization.pptx
17-virtualization.pptx17-virtualization.pptx
17-virtualization.pptx
 
Xen Euro Par07
Xen Euro Par07Xen Euro Par07
Xen Euro Par07
 
RHEL5 XEN HandOnTraining_v0.4.pdf
RHEL5 XEN HandOnTraining_v0.4.pdfRHEL5 XEN HandOnTraining_v0.4.pdf
RHEL5 XEN HandOnTraining_v0.4.pdf
 
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCPOscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
Oscon 2012 : From Datacenter to the Cloud - Featuring Xen and XCP
 
Xen revisited
Xen revisitedXen revisited
Xen revisited
 
ClickOS_EE80777777777777777777777777777.pptx
ClickOS_EE80777777777777777777777777777.pptxClickOS_EE80777777777777777777777777777.pptx
ClickOS_EE80777777777777777777777777777.pptx
 
OSSEU18: NVDIMM and Virtualization - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization  - George Dunlap, CitrixOSSEU18: NVDIMM and Virtualization  - George Dunlap, Citrix
OSSEU18: NVDIMM and Virtualization - George Dunlap, Citrix
 
A Xen Case Study
A Xen Case StudyA Xen Case Study
A Xen Case Study
 
Bridging the Semantic Gap in Virtualized Environment
Bridging the Semantic Gap in Virtualized EnvironmentBridging the Semantic Gap in Virtualized Environment
Bridging the Semantic Gap in Virtualized Environment
 
Windows ce
Windows ceWindows ce
Windows ce
 
XPDDS18: NVDIMM Overview - George Dunlap, Citrix
XPDDS18: NVDIMM Overview - George Dunlap, Citrix XPDDS18: NVDIMM Overview - George Dunlap, Citrix
XPDDS18: NVDIMM Overview - George Dunlap, Citrix
 
Advanced performance troubleshooting using esxtop
Advanced performance troubleshooting using esxtopAdvanced performance troubleshooting using esxtop
Advanced performance troubleshooting using esxtop
 
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
Vmwareperformancetroubleshooting 100224104321-phpapp02 (1)
 
Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02Vmwareperformancetroubleshooting 100224104321-phpapp02
Vmwareperformancetroubleshooting 100224104321-phpapp02
 
Thread
ThreadThread
Thread
 
5. IO virtualization
5. IO virtualization5. IO virtualization
5. IO virtualization
 
Clusters (Distributed computing)
Clusters (Distributed computing)Clusters (Distributed computing)
Clusters (Distributed computing)
 
Noah - Robust and Flexible Operating System Compatibility Architecture - Cont...
Noah - Robust and Flexible Operating System Compatibility Architecture - Cont...Noah - Robust and Flexible Operating System Compatibility Architecture - Cont...
Noah - Robust and Flexible Operating System Compatibility Architecture - Cont...
 
Io sy.stemppt
Io sy.stempptIo sy.stemppt
Io sy.stemppt
 
Current and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on LinuxCurrent and Future of Non-Volatile Memory on Linux
Current and Future of Non-Volatile Memory on Linux
 

Más de Susheel Thakur

A Study on Energy Efficient Server Consolidation Heuristics for Virtualized C...
A Study on Energy Efficient Server Consolidation Heuristics for Virtualized C...A Study on Energy Efficient Server Consolidation Heuristics for Virtualized C...
A Study on Energy Efficient Server Consolidation Heuristics for Virtualized C...Susheel Thakur
 
Server Consolidation Algorithms for Virtualized Cloud Environment: A Performa...
Server Consolidation Algorithms for Virtualized Cloud Environment: A Performa...Server Consolidation Algorithms for Virtualized Cloud Environment: A Performa...
Server Consolidation Algorithms for Virtualized Cloud Environment: A Performa...Susheel Thakur
 
Performance Evaluation of Server Consolidation Algorithms in Virtualized Clo...
Performance Evaluation of Server Consolidation Algorithms  in Virtualized Clo...Performance Evaluation of Server Consolidation Algorithms  in Virtualized Clo...
Performance Evaluation of Server Consolidation Algorithms in Virtualized Clo...Susheel Thakur
 
Performance Analysis of Server Consolidation Algorithms in Virtualized Cloud...
Performance Analysis of Server Consolidation Algorithms in  Virtualized Cloud...Performance Analysis of Server Consolidation Algorithms in  Virtualized Cloud...
Performance Analysis of Server Consolidation Algorithms in Virtualized Cloud...Susheel Thakur
 
Xen Cloud Platform Installation Guide
Xen Cloud Platform Installation GuideXen Cloud Platform Installation Guide
Xen Cloud Platform Installation GuideSusheel Thakur
 
Srs for virtual eucation
Srs for virtual eucationSrs for virtual eucation
Srs for virtual eucationSusheel Thakur
 
SERVER COSOLIDATION ALGORITHMS FOR CLOUD COMPUTING: A REVIEW
SERVER COSOLIDATION ALGORITHMS FOR CLOUD COMPUTING: A REVIEWSERVER COSOLIDATION ALGORITHMS FOR CLOUD COMPUTING: A REVIEW
SERVER COSOLIDATION ALGORITHMS FOR CLOUD COMPUTING: A REVIEWSusheel Thakur
 
Line drawing algorithms
Line drawing algorithmsLine drawing algorithms
Line drawing algorithmsSusheel Thakur
 

Más de Susheel Thakur (10)

A Study on Energy Efficient Server Consolidation Heuristics for Virtualized C...
A Study on Energy Efficient Server Consolidation Heuristics for Virtualized C...A Study on Energy Efficient Server Consolidation Heuristics for Virtualized C...
A Study on Energy Efficient Server Consolidation Heuristics for Virtualized C...
 
Server Consolidation Algorithms for Virtualized Cloud Environment: A Performa...
Server Consolidation Algorithms for Virtualized Cloud Environment: A Performa...Server Consolidation Algorithms for Virtualized Cloud Environment: A Performa...
Server Consolidation Algorithms for Virtualized Cloud Environment: A Performa...
 
Performance Evaluation of Server Consolidation Algorithms in Virtualized Clo...
Performance Evaluation of Server Consolidation Algorithms  in Virtualized Clo...Performance Evaluation of Server Consolidation Algorithms  in Virtualized Clo...
Performance Evaluation of Server Consolidation Algorithms in Virtualized Clo...
 
Performance Analysis of Server Consolidation Algorithms in Virtualized Cloud...
Performance Analysis of Server Consolidation Algorithms in  Virtualized Cloud...Performance Analysis of Server Consolidation Algorithms in  Virtualized Cloud...
Performance Analysis of Server Consolidation Algorithms in Virtualized Cloud...
 
Xen & virtualization
Xen & virtualizationXen & virtualization
Xen & virtualization
 
Xen Cloud Platform Installation Guide
Xen Cloud Platform Installation GuideXen Cloud Platform Installation Guide
Xen Cloud Platform Installation Guide
 
Srs for virtual eucation
Srs for virtual eucationSrs for virtual eucation
Srs for virtual eucation
 
Trees
TreesTrees
Trees
 
SERVER COSOLIDATION ALGORITHMS FOR CLOUD COMPUTING: A REVIEW
SERVER COSOLIDATION ALGORITHMS FOR CLOUD COMPUTING: A REVIEWSERVER COSOLIDATION ALGORITHMS FOR CLOUD COMPUTING: A REVIEW
SERVER COSOLIDATION ALGORITHMS FOR CLOUD COMPUTING: A REVIEW
 
Line drawing algorithms
Line drawing algorithmsLine drawing algorithms
Line drawing algorithms
 

Último

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 

Último (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 

Xen and the Art of Virtualization

  • 1. Xen and the Art of Virtualization Nikola Gvozdiev Georgian Mihaila
  • 2. Outline Xen and the Art of Virtualization – Ian Pratt et al. I. II. III. IV. The Art of Virtualization Xen, goals and design Xen evaluation The future looks bright
  • 4. Basic idea Linux Mac OS X Windows XP Virtualization layer Hardware 4
  • 5. Some definitions • Host/guest: machine or software • Domain: running VM + guest OS executes • Hypervisor or Virtual Machine Monitor (VMM): software or firmware that creates a virtual machine on the host hardware 5
  • 6. Why virtualize? • More resources, subdivide for better use • 1+ app(s)/OS/server: # servers sys admin complexity & time • Scarce resources & unwilling cooperation: resource containers & accountability 6
  • 7. Some applications • Resource optimization • Infrastructure as a Service (IaaS) • Application mobility/migration • Containers/virus/worm (sandboxing) 7
  • 8. Types of hardware virtualization (software, memory, storage, data, network) • Full virtualization (VMware) – run OS/software unmodified • Partial virtualization – software may need modification to run • Paravirtualization (Xen) – software unmodified runs in modified OS as separate system 8
  • 9. Outline Xen and the Art of Virtualization – Ian Pratt et al. I. II. III. IV. The Art of Virtualization Xen, goals and design Xen evaluation The future looks bright
  • 10. Virtualization, at what cost? • • • • Specialized hardware $ No commodity OS ♥ 100% binary compatibility, speed Speed => security ☠ or functionality • Resource isolation/performance guarantees? • So far, best effort provisioning => risk DoS 10
  • 11. Xen goals • • • • • x86 architecture => $+=0 Commodity OS (Linux, BSD, XP) => ♥++ Share resources safely & in a managed fashion => ☠-- ♥++ No performance/functionality sacrifice => ♥++ Up to 100 VM instances on the same server => ?++ • (Free -GNU/GPL- => $--) 11
  • 12. The Xen paper Focus on the VMM design • How to multiplex physical resources at the granularity of an entire OS and provide performance isolation between guest OSes? Prototype • Full Linux, partial Win XP, ongoing NetBSD port 12
  • 13. The Virtual Machine Interface (VMI) 13
  • 14. Typical System call User Program Program executing OS Kernel call read() Program blocked Program executing Kernel performing read read() returns 14
  • 15. Virtualizing CPU OS is most privileged hypervisor Ring 3 Ring 2 Ring 1 Ring 0 Applications guest OS Hypervisor x86 15
  • 16. Control transfer Domain (guest OS) - Hypercall interface (synchronous software trap) Event Hypercall Xen (VMM) - Event mechanism (asynchronous) 16
  • 17. High level view User program Return - resume Sys call (set instructions) User mode (low privilege) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Kernel mode (high privilege) Kernel Kernel Translate sys call to procedure call (set instructions) Put data from registers to where it is needed CPU/Driver Driver *Loaded at boot time Write device registers to initiate I/O 17
  • 18. High level view User program Return - resume Sys call (set instructions) User mode (low privilege) ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Kernel mode (high privilege) Code Kernel executing in Ring 0 silently fails Kernel Translate sys call to procedure call (set instructions) Put data from registers to where it is needed CPU/Driver Driver *Loaded at boot time Write device registers to initiate I/O 18
  • 19. Exceptions • Typical exceptions – System calls: register ‘fast’ exception handler (in Exception Vector Table) which is accessed directly by the processor, without indirecting via ring 0 – Page faults: code executing in ring 0 only can read the faulting address from register CR2, therefore faults are delivered via Xen 19
  • 20. Virtualizing CPU cont’d • CPU scheduling – Borrowed Virtual Time (BVT) scheduling algorithm Work-conserving Low-latency wake-up (dispatch) Timers : real, virtual, wall-clock 20
  • 21. Memory mapping (relocation) cont’d 0xFFFF FFFF Shared Kernel Memory 1GB 0xC000 0000 0xBFFF FFFF Process 1 Process 2 Process 3 Virtual Memory Addresses 3GB 0x0000 0000 21
  • 22. Virtualizing memory management (cont’d) • x86 architecture – No software managed TLB (walk the page table structure in hardware to recover misses) and no tags (flush TLB for address space switch) • Guest OSes are responsible for allocating and managing the hardware page tables, minimizing Xen involvement • Xen exists in a 64MB section at the top of every address space, avoiding a TLB flush when entering and leaving the hypervisor 22
  • 23. Xen I need a new page table Guest OS Pool of reserved memory 23
  • 24. Xen Guest OS I’ll get it myself Pool of reserved memory 24
  • 27. Xen Guest OS Memory page flipped Pool of reserved memory Xen • Reduce memory footprint • Avoid copies 27
  • 28. Virtualizing Device I/O (disk, network interface) • Xen exposes device abstractions • I/O data is transferred to and from each domain via Xen, using shared memory, asynchronous buffer descriptor rings 28
  • 29. Data Transfer : I/O Rings 29
  • 31. Outline Xen and the Art of Virtualization – Ian Pratt et al. I. II. III. IV. The Art of Virtualization Xen, goals and design Xen evaluation The future looks bright
  • 32. Cost of porting an OS In both OSes, the architecture-specific sections are effectively a port of the x86 code to their paravirtualized architecture. 32
  • 33. Evaluation • Based on Linux 2.4.21 (neither XP nor NetBSD fully functional) • Thoroughly compared to 2 other systems – VMware Workstation (binary translation) – UML (run Linux as a Linux process) • Performs better than solutions with restrictive licenses (ESX Server) 33
  • 34. Relative Performance CPU-bound tasks • Relatively easy for all VMMs • Little interaction with the OS Legend L – Linux X – XenoLinux V – VMware U – User-mode Linux 34
  • 35. Relative Performance Tasks with more I/O • About 7% of the time spent in OS doing I/O and memory management • This portion of time gets expanded for each VMM but to a different extent 35
  • 37. Microbenchmarks • As expected fork, exec and sh require large number of page updates which slow things down • On the up side these can be batched (up to 8MB of address space constructed per hypercall) 37
  • 38. Microbenchmarks • Hmmm …. no calls into XEN yet … 38
  • 39. Microbenchmarks • Overhead due to a hypercall when switching context in a guest OS (in order to change base of page table) • The larger the working set the smaller the relative overhead 39
  • 40. Microbenchmarks • 2 transitions into XEN – One for the page fault handler – One to actually get the page 40
  • 41. Microbenchmarks • Page flipping really pays off – no unnecessary data copying • More overhead for smaller packets – we still need to deal with every header 41
  • 42. Concurrent VMs • Unexpectedly low SMP performance for 1 instance of Apache • As expected adding another domain leads to a sharp jump in performance under XEN • More domains – more overhead 42
  • 43. Concurrent VMs • Performance differentiation works as expected with IR • But fails with OLTP • Probably due to inefficiencies with the disk scheduling algorithm • Bands matter !!! 43
  • 44. Isolation SPEC WEB99 OSDB-IR Guest OS Guest OS Guest OS Hypervisor (XEN) Hardware Guest OS • Run uncooperative user applications, see if they bring down the system • 2 “bad” domains vs 2 “good” ones • XEN delivers good performance even in this case • What about an uncooperative OS ? 44
  • 45. Scalability • Very low footprint per domain (4 - 6MB memory, 20KB state) • Benchmark is compute-bound and Linux assigns long time slices, XEN needs some tweaking • Even without it does pretty well (but no absolute values) 45
  • 46. Criticism • No comparison between fundamentally similar techniques (e.g. the big IBM mainframe) • Memory footprint almost not mentioned • Most tests performed with limited number of domains, while the paper’s main goal is to demonstrate performance with 100 domains • Benchmarks used relevant today ? 46
  • 47. Outline Xen and the Art of Virtualization – Ian Pratt et al. I. II. III. IV. The Art of Virtualization Xen, goals and design Xen evaluation The future looks bright
  • 48. Related work • Started by IBM in the 70s • Resurgence lately (at time of publication) as hardware got fast enough to run multiple OS • Unlike in other solutions isolation/security is “implicitly” enforced by the hypervisor • One of the first attempts at paravirtualization the other two are: – IBM zSeries mainframes (Linux) – Denali (quite a bit different) 48
  • 49. Xen vs. Denali ? Feature Xen Denali # VM 100 1000 Target existing ABI Yes No (does not fully support x86 segmentation, used in Net BSD, Linux, Windows XP) Supports application multiplexing Yes No (1 app/OS) Supports multiple address spaces Yes No (prototype virtual MMU developed, helping Denali) => no evaluation Memory management support at the virtualization layer Yes No (VMM performs all paging to and from disk) Performance isolation Yes, each guest OS performs own paging using guaranteed memory reservation and disk allocation No, malicious VM can encourage thrashing behavior Virtualizes namespaces of all machine resources No (Secure access control within hypervisor only) Yes (resource isolation through impossible naming) 49
  • 50. Future work and impact • Huge impact of the paper, sparked a lot of interest, the project is still very much alive • They did actually complete the XP port, but due to licensing restrictions it never got published • Currently only supports Windows as guest if the hardware supports virtualization • More recent versions of the project try to push complexity away from the hypervisor • However, paravirtualization nowadays is only used if the hardware does not support virtualization natively 50