vm-ucsd - Virtual Machine Monitors Lecture 17: Virtual...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
Lecture 17: Virtual Machines CSE 120: Principles of Operating Systems Alex C. Snoeren HW 4 Due NOW Virtual Machine Monitors ! Virtual Machine Monitors (VMMs) are everywhere u Industry commitment » Software: VMware, Xen, Microsoft Virtual PC » Hardware: Intel VT, AMD-V " If Intel and AMD add it to their chips, you know it’s serious… u Academia: lots of VMM-based projects and papers ! An old idea, actually: developed by IBM in 60s and 70s ! Today u What is it, what problems have to be solved, how to solve them u Survey some virtualization systems u Briefly outline cool things you can do with virtualization CSE 120 – Lecture 17: Virtual Machines 2 What is a VMM? ! We have seen that an OS already virtualizes u Syscalls, processes, virtual memory, file system, sockets, etc. u Applications program to this interface ! A VMM virtualizes an entire physical machine u Interface supported is the hardware » OS defines a higher-level interface u VMM provides the illusion that software has full control over the hardware (of course, VMM is in control) u VMM “applications” run in virtual machines (c.f., OS processes) ! Implications u You can boot an operating system in a virtual machine u Run multiple instances of an OS on same physical machine u Run different OSes simultaneously on the same machine » Linux on Windows, Windows on Mac, etc. CSE 120 – Lecture 17: Virtual Machines 3 Why? ! Resource utilization u Machines today are powerful, want to multiplex their hardware » e.g., ISP hosting can divvy up a physical machine to customers u Can migrate VMs from one machine to another without shutdown ! Software use and development u Can run multiple OSes simultaneously » No need to dual boot u Can do system (e.g., OS) development at user-level ! Many other cool applications u Debugging, emulation, security, speculation, fault tolerance… ! Common theme is manipulating applications/services at the granularity of a machine u Specific version of OS, libraries, applications, etc., as package CSE 120 – Lecture 17: Virtual Machines 4
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
! Fidelity u OSes and applications work the same without modification » (although we may modify the OS a bit) ! Isolation u VMM protects resources and VMs from each other ! Performance u VMM is another layer of software…and therefore overhead » As with OS, want to minimize this overhead u VMware: » CPU-intensive apps: 2-10% overhead » I/O-intensive apps: 25-60% overhead CSE 120 – Lecture 17: Virtual Machines 5 Rough VMM Model ! VMM runs with privilege u OS in VM runs at “lesser” privilege (think user-level) u VMM multiplexes resources among VMs ! Want to run OS code in a VM directly on CPU u Think in terms of making the OS a user-level process u What OS code can run directly, what will cause problems? ! Ideally, want privileged instructions to trap
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 7

vm-ucsd - Virtual Machine Monitors Lecture 17: Virtual...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online