120 likes | 245 Views
Virtual Machines (part 2). CPS210 Spring 2006. Papers. Xen and the Art of Virtualization Paul Barham ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay George Dunlap. X. Virtualization in the enterprise.
E N D
Virtual Machines (part 2) CPS210 Spring 2006
Papers • Xen and the Art of Virtualization • Paul Barham • ReVirt: Enabling Intrusion Analysis through Virtual Machine Logging and Replay • George Dunlap
X Virtualization in the enterprise • Consolidate under-utilized servers to reduce CapEx and OpEx X • Avoid downtime with VM Relocation • Dynamically re-balance workload to guarantee application SLAs X • Enforce security policy
VMware architecture Host World VMM World Target App Target App Host App VM App Target OS Host OS Virtual Machine Monitor VM Driver Host Machine
SimOS architecture Target App Target App Target OS SimOS Host App Host App Host OS Host Machine
SimOS memory SimOS SimOS VMemory SimOS code, data Target OS TargOS code, data Target App TargApp code, data Target App Virtual MMU SimDisk Host OS SimDisk File Mem File Host Machine
SimOS page fault SimOS SimOS Fault handler SimOS VMemory TargOS Fault handler Target OS Unmapped addr Target App Target App Virtual MMU SimDisk Host OS SimDisk File Mem File Host Machine
Generic TLB • Cache of recently used PTEs • Small – usually about 64 entries • Huge impact on performance TLB Physical Address or TLB Miss or Access fault Virtual Address
x86_32 Address space 4GB S Xen Kernel S 3GB ring 0 ring 1 ring 3 User U 0GB
VMware Guest Page Tables Virtual → Machine Update PTE Guest OS Shadow page table VMM Hardware MMU
Para-Virtualizing the MMU • Guest OSes allocate and manage own PTs • “Hypercall” to change PT base • Xen must validate PT updates before use • Validation rules applied to each PTE: 1. Guest may only map phys. pages it owns 2. PT pages may only be mapped RO
Xen guest page tables Virtual → Machine Update PTE Guest OS 1) Validation check 2) Perform update VMM Hardware MMU