Outline for Today Announcements –1 st programming assignment coming soon. Objective of the lecture –OS and Virtual Machines.

Slides:



Advertisements
Similar presentations
Virtualization Technology
Advertisements

Status Report Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.
Xen and the Art of Virtualization Ian Pratt University of Cambridge and Founder of XenSource Inc. Computer Laboratory.
XEN AND THE ART OF VIRTUALIZATION Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, lan Pratt, Andrew Warfield.
Bart Miller. Outline Definition and goals Paravirtualization System Architecture The Virtual Machine Interface Memory Management CPU Device I/O Network,
Copyright © Clifford Neuman - UNIVERSITY OF SOUTHERN CALIFORNIA - INFORMATION SCIENCES INSTITUTE USC CSci599 Trusted Computing Lecture Four –
Xen and the Art of Virtualization A paper from the University of Cambridge, presented by Charlie Schluting For CS533 at Portland State University.
Network Implementation for Xen and KVM Class project for E : Network System Design and Implantation 12 Apr 2010 Kangkook Jee (kj2181)
Disco Running Commodity Operating Systems on Scalable Multiprocessors.
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
1 Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine, and Mendel Rosenblum, Stanford University, 1997.
Virtualizzazione: Xen. Tipi di virtualizzazione Singola immagine di SO (Virtuozo,…) –Usa container di risorse –Poco isolamento Virtualizzazione piena:VirtualBox,
KVM/ARM: The Design and Implementation of the Linux ARM Hypervisor Fall 2014 Presented By: Probir Roy.
Operating System Support for Virtual Machines Samuel King, George Dunlap, Peter Chen Univ of Michigan Ashish Gupta.
Virtual Machine Monitors CSE451 Andrew Whitaker. Hardware Virtualization Running multiple operating systems on a single physical machine Examples:  VMWare,
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
Xen and the Art of Virtualization. Introduction  Challenges to build virtual machines Performance isolation  Scheduling priority  Memory demand  Network.
Distributed Systems CS Virtualization- Overview Lecture 22, Dec 4, 2013 Mohammad Hammoud 1.
E Virtual Machines Lecture 4 Device Virtualization
Tanenbaum 8.3 See references
Zen and the Art of Virtualization Paul Barham, et al. University of Cambridge, Microsoft Research Cambridge Published by ACM SOSP’03 Presented by Tina.
CSC 660: Advanced Operating SystemsSlide #1 CSC 660: Advanced OS Virtual Machines.
Virtual Machines Xen and Terra Rajan Palanivel. Xen and Terra : Papers Xen and the art of virtualization. -Univ. of Cambridge Terra: A VM based platform.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
Chapter 5. Outline (2nd part)
CS533 Concepts of Operating Systems Jonathan Walpole.
Virtualization The XEN Approach. Virtualization 2 CS5204 – Operating Systems XEN: paravirtualization References and Sources Paul Barham, et.al., “Xen.
Operating System Support for Virtual Machines Samuel T. King, George W. Dunlap,Peter M.Chen Presented By, Rajesh 1 References [1] Virtual Machines: Supporting.
Virtualization Concepts Presented by: Mariano Diaz.
Benefits: Increased server utilization Reduced IT TCO Improved IT agility.
Xen Overview for Campus Grids Andrew Warfield University of Cambridge Computer Laboratory.
1 Outline for Today Objective –More power aware memory –Virtual Machines Announcements –These slides will be up after class (sometime). –Midterm rules:
Xen I/O Overview. Xen is a popular open-source x86 virtual machine monitor – full-virtualization – para-virtualization para-virtualization as a more efficient.
Virtualization Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation is licensed.
Virtual Machine Monitors: Technology and Trends Jonathan Kaldor CS614 / F07.
Xen and The Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt & Andrew Warfield.
Operating Systems ECE344 Ashvin Goel ECE University of Toronto OS-Related Hardware.
CS533 Concepts of Operating Systems Jonathan Walpole.
Nathanael Thompson and John Kelm
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
Cloud Operating System Unit 09 Cloud OS Core Technology M. C. Chiang Department of Computer Science and Engineering National Sun Yat-sen University Kaohsiung,
Introduction to virtualization
Full and Para Virtualization
CSC 660: Advanced Operating SystemsSlide #1 CSC 660: Advanced OS Virtual Machines.
Lecture 26 Virtual Machine Monitors. Virtual Machines Goal: run an guest OS over an host OS Who has done this? Why might it be useful? Examples: Vmware,
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
CSE 451: Operating Systems Winter 2015 Module 25 Virtual Machine Monitors Mark Zbikowski Allen Center 476 © 2013 Gribble, Lazowska,
E Virtual Machines Lecture 1 What is Virtualization? Scott Devine VMware, Inc.
Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine and Mendel Rosenblum Presentation by Mark Smith.
Virtual Machines (part 2) CPS210 Spring Papers  Xen and the Art of Virtualization  Paul Barham  ReVirt: Enabling Intrusion Analysis through Virtual.
CS 695 Topics in Virtualization and Cloud Computing, Autumn 2012 CS 695 Topics in Virtualization and Cloud Computing More Introduction + Processor Virtualization.
Open Source Virtualisation and Consolidation. Whoami ● Linux and Open Source Consultant ● „Infrastructure Architect“ ● Linux since 0.98 ● IANAKH ● Senior.
Introduction to Virtualization
Virtualization.
Virtual Machine Monitors
Virtualization Technology
Xen and the Art of Virtualization
Presented by Yoon-Soo Lee
Virtualization Dr. Michael L. Collard
Xen: The Art of Virtualization
Disco: Running Commodity Operating Systems on Scalable Multiprocessors
OS Virtualization.
A Survey on Virtualization Technologies
Xen and the Art of Virtualization
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
Xen and the Art of Virtualization
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
System Virtualization
CS295: Modern Systems Virtualization
Outline for today Objective: Administrative: Background on deadlock
Presentation transcript:

Outline for Today Announcements –1 st programming assignment coming soon. Objective of the lecture –OS and Virtual Machines

Shells?

Producer/Consumer Pipes output input char inbuffer[1024]; char outbuffer[1024]; while (inbytes != 0) { inbytes = read(stdin, inbuffer, 1024); outbytes = process data from inbuffer to outbuffer; write(stdout, outbuffer, outbytes); } Pipes support a simple form of parallelism with built-in flow control. e.g.: sort <grades | grep Dan | mail justin

Shell = Command Line Interpreter Not GUI Application-level program (not part of OS) Loops –Prompting for input –Reads and parses input on command line –Invokes program specified with arguments supplied –Waits (or not – “&”) for completion Allows hooking up of multiple programs via pipes (“|”) and redirection of stdin and stdout (“ ”). Reads shell scripts.

Introduction to Virtual Machine Monitors

Traditional Multiprogrammed OS Multiple applications running with the abstraction of dedicated machine provided by OS Pass through of non- privileged instructions ISA – instruction set architecture ABI – application binary interface HW OS Application(s) ISA ABI Syscalls instr

Traditional Multiprogrammed OS HW OS Application(s) Multiple applications running with the abstraction of dedicated machine provided by OS Pass through of non- privileged instructions ISA – instruction set architecture ABI – application binary interface ISA ABI Syscalls instr

© James Smith, U.Wisc

Virtualization Layer © James Smith, U.Wisc

Variations on the Theme © James Smith, U.Wisc

Virtual Machines History: invented by IBM in 1960’s Fully protected and isolated copy of the physical machine providing the abstraction of a dedicated machine Layer: Virtual Machine Monitor (VMM) Replicating machine for multiple OSs Security Isolation © James Smith, U.Wisc

Virtual Machine Monitor © J. Sugarman, USENIX01

Issues Hardware must be fully virtualizable – all sensitive (privileged) instructions must trap to VMM –X86 is not fully virtualizable In traditional model, all devices need drivers in VMM –PCs have lots of possible devices – leverage the host OS for its drivers => hosted model

VMware Hosted Model © J. Sugarman, USENIX01

Hosting Implications World switch – heavier weight than normal context switch VMM runs with full privileges (e.g., kernel mode) I/O operations involve –Interception by VMM –Switch to host world via Vmdriver –Issuing I/O operation to host OS via Vmapp Interrupts handled by host OS –VMM yields control to host OS –Reasserts interrupts to Guest OS Host OS does scheduling and can also pageout memory of a virtual machine

VMware Hosted Model

Xen 2.0 Features Secure isolation between VMs Resource control and QoS Only guest kernel needs to be ported –All user-level apps and libraries run unmodified –Linux 2.4/2.6, NetBSD, FreeBSD, Plan9 Execution performance is close to native Supports the same hardware as Linux x86 Live Relocation of VMs between Xen nodes

Xen 2.0 Architecture Event Channel Virtual MMUVirtual CPU Control IF Hardware (SMP, MMU, physical memory, Ethernet, SCSI/IDE) Native Device Driver GuestOS (XenLinux) Device Manager & Control s/w VM0 Native Device Driver GuestOS (XenLinux) Unmodified User Software VM1 Front-End Device Drivers GuestOS (XenLinux) Unmodified User Software VM2 Front-End Device Drivers GuestOS (XenBSD) Unmodified User Software VM3 Safe HW IF Xen Virtual Machine Monitor Back-End

Para-Virtualization in Xen Arch xen_x86 : like x86, but Xen hypercalls required for privileged operations –Avoids binary rewriting –Minimize number of privilege transitions into Xen –Modifications relatively simple and self-contained Modify kernel to understand virtualised env. –Wall-clock time vs. virtual processor time Xen provides both types of alarm timer –Expose real resource availability Enables OS to optimise behaviour

x86 CPU virtualization Xen runs in ring 0 (most privileged) Ring 1/2 for guest OS, 3 for user-space –GPF if guest attempts to use privileged instr Xen lives in top 64MB of linear addr space –Segmentation used to protect Xen as switching page tables too slow on standard x86 Hypercalls jump to Xen in ring 0 Guest OS may install ‘fast trap’ handler –Direct user-space to guest OS system calls MMU virtualisation: shadow vs. direct-mode

Para-Virtualizing the MMU Guest OSes allocate and manage own PTs –Hypercall to change PT base Xen must validate PT updates before use –Allows incremental updates, avoids revalidation Validation rules applied to each PTE: 1. Guest may only map pages it owns* 2. Pagetable pages may only be mapped RO Xen traps PTE updates and emulates, or ‘unhooks’ PTE page for bulk updates

I/O Architecture Xen IO-Spaces delegate guest OSes protected access to specified h/w devices –Virtual PCI configuration space –Virtual interrupts Devices are virtualised and exported to other VMs via Device Channels –Safe asynchronous shared memory transport –‘Backend’ drivers export to ‘frontend’ drivers –Net: use normal bridging, routing, iptables –Block: export any blk dev e.g. sda4,loop0,vg3