 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.

Slides:



Advertisements
Similar presentations
Virtualization Dr. Michael L. Collard
Advertisements

Virtualization Technology
CS-3013 & CS-502, Summer 2006 Virtual Machine Systems1 CS-502 Operating Systems Slides excerpted from Silbershatz, Ch. 2.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Bugnion et al. Presented by: Ahmed Wafa.
Disco Running Commodity Operating Systems on Scalable Multiprocessors.
1 Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine, and Mendel Rosenblum, Stanford University, 1997.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
ELEC6200, Fall 07, Oct 29 Westrom: Virtual Machines 1 Kenneth Westrom ELEC-6620.
Virtualization for Cloud Computing
Virtual Machine Monitors CSE451 Andrew Whitaker. Hardware Virtualization Running multiple operating systems on a single physical machine Examples:  VMWare,
CSE598C Virtual Machines and Their Applications Operating System Support for Virtual Machines Coauthored by Samuel T. King, George W. Dunlap and Peter.
E Virtual Machines Lecture 4 Device Virtualization
Virtual Machine Monitors. Bibliography 1.“Virtual Machine Monitors: Current Technology And Future Trends”, Mendel Rosenblum and Tal Garfinkel, IEEE Computer,
Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT.
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.
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
A Survey on Virtualization Technologies. Virtualization is “HOT” Microsoft acquires Connectix Corp. EMC acquires VMware Veritas acquires Ejascent IBM,
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Jonathan Walpole (based on a slide set from Vidhya Sivasankaran)
CS533 Concepts of Operating Systems Jonathan Walpole.
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.
Virtualization Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation is licensed.
VirtualBox What you need to know to build a Virtual Machine.
Introduction 1-1 Introduction to Virtual Machines From “Virtual Machines” Smith and Nair Chapter 1.
High Performance Computing on Virtualized Environments Ganesh Thiagarajan Fall 2014 Instructor: Yuzhe(Richard) Tang Syracuse University.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine, and Mendel Rosenblum Summary By A. Vincent Rayappa.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Edouard et al. Madhura S Rama.
Disco : Running commodity operating system on scalable multiprocessor Edouard et al. Presented by Vidhya Sivasankaran.
Chapter 2 Introduction to OS Chien-Chung Shen CIS, UD
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
Full and Para Virtualization
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,
Introduction Why are virtual machines interesting?
Operating-System Structures
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
Disco: Running Commodity Operating Systems on Scalable Multiprocessors Presented by: Pierre LaBorde, Jordan Deveroux, Imran Ali, Yazen Ghannam, Tzu-Wei.
CSE 451: Operating Systems Winter 2015 Module 25 Virtual Machine Monitors Mark Zbikowski Allen Center 476 © 2013 Gribble, Lazowska,
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
Virtual Machines Mr. Monil Adhikari. Agenda Introduction Classes of Virtual Machines System Virtual Machines Process Virtual Machines.
Running Commodity Operating Systems on Scalable Multiprocessors Edouard Bugnion, Scott Devine and Mendel Rosenblum Presentation by Mark Smith.
Unit 2 VIRTUALISATION. Unit 2 - Syllabus Basics of Virtualization Types of Virtualization Implementation Levels of Virtualization Virtualization Structures.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Virtualization Neependra Khare
1 Virtualization "Virtualization software makes it possible to run multiple operating systems and multiple applications on the same server at the same.
Lecture 13: Virtual Machines
Introduction to Operating Systems Concepts
Introduction to Virtualization
Virtualization.
Virtual Machine Monitors
Virtualization D. J. Foreman 2009.
Kernel Design & Implementation
Presented by Mike Marty
Virtualization Dr. Michael L. Collard
CS352H: Computer Systems Architecture
Operating System Structure
Virtualization overview
Disco: Running Commodity Operating Systems on Scalable Multiprocessors
Running other code under LINUX
OS Virtualization.
Virtualization Layer Virtual Hardware Virtual Networking
Virtualization Techniques
A Survey on Virtualization Technologies
Virtual machines benefits
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
Introduction to Virtual Machines
Introduction to Virtual Machines
Xen and the Art of Virtualization
CSE 451: Operating Systems Autumn Module 24 Virtual Machine Monitors
Presentation transcript:

 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor (VMM): the simulator software.  Pure software simulator is too slow; Direct hardware execution is necessary  Complicated when OS involved; especially with multiple OS; build separate VMM layer Virtual Machine - Introduction CDA6159fa07 peir

 Principal characteristics of the original (IBM 360) architectures for which virtual machine systems were developed was the dual-state hardware organization with a privileged and non-privileged mode.  Privileged software nucleus (kernel)  Extended machine: set of non-privileged instructions together with the supervisory calls.  VMM runs on privileged mode, while guest OS runs on non-privileged mode Virtual Machine - Introduction CDA6159fa07 peir

Survey of Virtual Machine Research IEEE Computer, 1974

Conventional and Virtual Machine Organizations

Flexible Virtual Machine Model

The Renaissance of Virtualization - X86 Prospective from VMware CDA6159fa07 peir  1970s: Virtual machines first used  1990s: x86 becomes prominent server platform, not design for virtualization No vertical integration in x86 Lack of enterprise features in commodity OSs  1999: VMWare first product to virtualize x86  2006: AMD and Intel offer hardware support

 Extra resources needed: main memory, processor cycles.  Sources of overhead: Maintaining the status of the virtual processor. Maintaining the status of the virtual processor. Support of privileged instructions. Support of privileged instructions. Support of paging within virtual machines. Support of paging within virtual machines. Console functions. Console functions.  A problem: resource allocation algorithms in operating system (these are meant for managing real resources, but the virtual resources may not correspond precisely to real resources). Virtual Machine - Performance CDA6159fa07 peir

 Privileged software development, test and diagnostic functions, multiple operating system execution concurrently with production uses of the system.  Retrofit old operating systems with new features.  Improved testing of privileged software.  Testing of computer network software on a single physical machine.  Debugging and performance monitoring tools.  Software reliability through isolation.  Data security. Virtual Machine - Applications CDA6159fa07 peir

Basic Computer Systems

Hardware / Software Interface 3: “system” ISA: I/O, memory mgmt, CPU intercept & emulate 4: “user” ISA: ALU, branch, load/store direct execution

Basic VM Architecture CDA6159fa07 peir  Classic VMs are enabled by “Virtual Machine Monitor” (VMM) software – VMM may be in total control of the underline physical machine No O/S below the VMM – Or, VMM may share the physical machine with a “host” operating system VMM runs on top of host O/S (with user-level processes, as well as with kernel code, e.g. modules)

Classic VMM

VMM Integrated with Host OS  Advantages: Simple to install VMM, hosted OS accommodate rich I/O devices, take advantage hosted OS’ resource management  Disadvantages: Performance overhead, no performance isolation

 Present a “replica” of the interfaces to Hardware  provided by physical machine to each VM – Interface to processor (i.e. instruction set) – Interface to memory (i.e. use physical memory addresses) – Interface to I/O devices (e.g. memory mapped I/O, interruptions) * Different views of physical I/O device possible; e.g. a SCSI physical disk may be viewed as many virtual IDE disks Fundamental task of VM monitor CDA6159fa07 peir

 Analogy with operating systems: – Most application instructions execute directly on processor (O/S does not see them) – Those that require access to shared resources are handled indirectly by calling the O/S via system calls  VMM: – Most application instructions execute directly on processor (VMM does not see them) – Those that require privileged processor access are handled indirectly – they are trapped and emulated by the VMM VMM – Processor Virtualization CDA6159fa07 peir

Challenges and Techniques  X86 architecture is not designed for virtualization POPF (pop CPU flags from stack) set / clear interrupt- disable flag; does not trap in user mode in guest OS  Paravirtualization Replace nonvirtualizable instructions with virtualized equivalent OS must be ported in order to run in a virtual machine Disco (for MIPS) changes MIPS interrupt flag from a privileged register to a special memory location

 Aided by processor’s ability to support virtual memory  One more level of indirection is implemented – O/S: application loads/stores virtual address; map to physical addresses of physical machine – Classic VM: application loads/stores virtual address; map to physical address of the VM; then map to physical address of physical machine VMM - Memory Virtualization CDA6159fa07 peir

Page Replication and Page Sharing in Disco

VMM - I/O Virtualization  Hosted versus non-hosted – Non-hosted: VMM must implement drivers for each device Since it interfaces directly with hardware; must go through VMM, incur overhead – Hosted: VMM may build on top of existing device drivers of host O/S E.g. VMware: low-level I/O accesses to virtual disk are mapped into accesses to a regular file of the host via system calls Host O/S drivers, in turn, maps to I/O accesses to physical disk