Download PPT

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Copland (operating system) wikipedia , lookup

Burroughs MCP wikipedia , lookup

Mobile operating system wikipedia , lookup

Plan 9 from Bell Labs wikipedia , lookup

Distributed operating system wikipedia , lookup

VS/9 wikipedia , lookup

Spring (operating system) wikipedia , lookup

CP/M wikipedia , lookup

Security-focused operating system wikipedia , lookup

Unix security wikipedia , lookup

Paging wikipedia , lookup

Memory management unit wikipedia , lookup

Transcript
Virtualization
The XEN Approach
Virtualization
XEN: paravirtualization
Computer Laboratory
References and Sources


Paul Barham, et.al., “Xen and the Art of Virtualization,” Symposium on Operating Systems Principles 2003 (SOSP’03),
October 19-22, 2003, Bolton Landing, New York.
Presentation by Ian Pratt available at http://www.cl.cam.ac.uk/netos/papers/2005-xen-may.ppt
CS5204 – Operating Systems
2
Virtualization
Xen - Structure

Employs paravirtualization
strategy




“Domain 0”



Deals with machine
architectures that cannot be
virtualized
Requires modifications to
guest OS
Allows optimizations
has special access to control
interface for platform
management
Has back-end device drivers
Xen VMM


entirely event driven
no internal threads
Xen 3.0 Architecture
CS5204 – Operating Systems
3
Virtualization
MMU Virtualizion : Shadow-Mode
guest reads
Virtual → physical
guest writes
Accessed &
dirty bits
Guest OS
Updates
Virtual → Machine
VMM
MMU
CS5204 – Operating Systems
Hardware
4
Virtualization
MMU Virtualization : Direct-Mode
guest reads
Virtual → Machine
guest writes
Guest OS
Xen VMM
MMU
CS5204 – Operating Systems
Hardware
5
Virtualization
Writeable Page Tables : 1 – write fault
guest reads
Virtual → Machine
first guest
write
Guest OS
page fault
Xen VMM
MMU
CS5204 – Operating Systems
Hardware
7
Virtualization
Writeable Page Tables : 2 - Unhook
guest reads
guest writes
X
Virtual → Machine
Guest OS
Xen VMM
MMU
CS5204 – Operating Systems
Hardware
8
Virtualization
Writeable Page Tables : 3 - First Use
guest reads
guest writes
X
Virtual → Machine
Guest OS
page fault
Xen VMM
MMU
CS5204 – Operating Systems
Hardware
9
Virtualization
Writeable Page Tables : 4 – Re-hook
guest reads
Virtual → Machine
guest writes
Guest OS
validate
Xen VMM
MMU
CS5204 – Operating Systems
Hardware
10
Virtualization
I/O

Safe hardware interfaces


I/O Spaces

Restricts access to I/O registers

Driver isolated from VMM in its own “domain” (i.e., VM)
Communication between domains via device channels
Isolated Device Drive


Unified interfaces


Common interface for group of similar devices
Exposes raw device interface (e.g., for specialized devices like sound/video)

Separate request/response from event notification

I/O descriptor rings





Used to communicate I/O requests and
responses
For bulk data transfer devices (DMA,
network), buffer space allocated out of
band by GuestOS
Descriptor contains unique identifier
to allow out of order processing
Multiple requests can be added before
hypercall made to begin processing
Event notification can be masked by
GuestOS for its convenience
CS5204 – Operating Systems
11
Virtualization
Device Channels





Connects “front end” device drivers in
GuestOS with “native” device driver
Is an I/O descriptor ring
Buffer page(s) allocated by GuestOS and
“granted” to Xen
Buffer page(s) is/are pinned to prevent
page-out during I/O operation
Pinning allows zero-copy data transfer
CS5204 – Operating Systems
12
Virtualization
System Performance
1.1
1.0
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0.0
L
X
V
U
L
X
V
U
SPEC INT2000 (score) Linux build time (s)
L
X
V
U
OSDB-OLTP (tup/s)
L
X
V
U
SPEC WEB99 (score)
Benchmark suite running on Linux (L), Xen (X), VMware Workstation (V), and UML (U)

Benchmark suites





Spec INT200: compute intensive workload
Linux build time: extensive file I/O, scheduling, memory management
OSBD-OLTP: transaction processing workload, extensive synchronous disk I/O
Spec WEB99: web-like workload (file and network traffic)
Fair comparison?
CS5204 – Operating Systems
13
Virtualization
I/O Performance

Systems




L: Linux
IO-S: Xen using IO-Space access
IDD: Xen using isolated device driver
Benchmarks





Linux build time: file I/O, scheduling, memory management
PM: file system benchmark
OSDB-OLTP: transaction processing workload, extensive synchronous disk I/O
httperf: static document retrieval
SpecWeb99: web-like workload (file and network traffic)
CS5204 – Operating Systems
14