Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT.

Slides:



Advertisements
Similar presentations
An Overview Of Virtual Machine Architectures Ross Rosemark.
Advertisements

1 VIRTUAL MACHINES By: Sai Siddharth Kumar Dantu.
CS533 Concepts of Operating Systems Class 14 Virtualization and Exokernels.
Virtualization in HPC Minesh Joshi CSC 469 Dr. Box Feb 1, 2012.
CS-3013 & CS-502, Summer 2006 Virtual Machine Systems1 CS-502 Operating Systems Slides excerpted from Silbershatz, Ch. 2.
1/28/2004CSCI 315 Operating Systems Design1 Operating System Structures & Processes Notice: The slides for this lecture have been largely based on those.
Chapter 4 Structure of Operating Systems Copyright © 2008.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
ELEC6200, Fall 07, Oct 29 Westrom: Virtual Machines 1 Kenneth Westrom ELEC-6620.
November 1, 2004Introduction to Computer Security ©2004 Matt Bishop Slide #29-1 Chapter 33: Virtual Machines Virtual Machine Structure Virtual Machine.
Virtual Machines. Virtualization Virtualization deals with “extending or replacing an existing interface so as to mimic the behavior of another system”
Virtualization for Cloud Computing
Xen and the Art of Virtualization Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield.
Distributed Systems CS Virtualization- Overview Lecture 22, Dec 4, 2013 Mohammad Hammoud 1.
CSE598C Virtual Machines and Their Applications Operating System Support for Virtual Machines Coauthored by Samuel T. King, George W. Dunlap and Peter.
Introduction to Virtual Machines. Administration Presentation and class participation: 40% –Each student will present two and a half times this semester.
CS 149: Operating Systems April 21 Class Meeting
Microkernels, virtualization, exokernels Tutorial 1 – CSC469.
Introduction and Overview Questions answered in this lecture: What is an operating system? How have operating systems evolved? Why study operating systems?
Virtualization Concepts Presented by: Mariano Diaz.
Virtualization Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation is licensed.
Virtual Machine Security Systems Presented by Long Song 08/01/2013 Xin Zhao, Kevin Borders, Atul Prakash.
Virtualization: Not Just For Servers Hollis Blanchard PowerPC kernel hacker.
Introduction 1-1 Introduction to Virtual Machines From “Virtual Machines” Smith and Nair Chapter 1.
Virtual Machine and its Role in Distributed Systems.
Our work on virtualization Chen Haogang, Wang Xiaolin {hchen, Institute of Network and Information Systems School of Electrical Engineering.
CS533 Concepts of Operating Systems Jonathan Walpole.
High Performance Computing on Virtualized Environments Ganesh Thiagarajan Fall 2014 Instructor: Yuzhe(Richard) Tang Syracuse University.
System Virtualization 1 Learning Objective: –To understand the implementation choices and details of System Virtualization COMP
The IBM VM CS450/550 Section 2 Stephen Kam. IBM VM - Origins Originally an experimental OS called “CP-67” Designed to run on the IBM System/360 Model.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
Operating Systems Security
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,
Operating-System Structures
Protection of Processes Security and privacy of data is challenging currently. Protecting information – Not limited to hardware. – Depends on innovation.
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
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.
CS 695 Topics in Virtualization and Cloud Computing, Autumn 2012 CS 695 Topics in Virtualization and Cloud Computing More Introduction + Processor Virtualization.
Introduction to Virtualization
Virtualization.
Virtual Machine Monitors
Is Virtualization ready for End-to-End Application Performance?
Why VT-d Direct memory access (DMA) is a method that allows an input/output (I/O) device to send or receive data directly to or from the main memory, bypassing.
Virtualization Dr. Michael L. Collard
Operating System Structure
Operating Systems Design (CS 423)
Lecture 24 Virtual Machine Monitors
Operating System Structure
Virtual Servers.
1. 2 VIRTUAL MACHINES By: Satya Prasanna Mallick Reg.No
OS Virtualization.
Virtualization Layer Virtual Hardware Virtual Networking
Chapter 15, Exploring the Digital Domain
Virtualization Techniques
LAB 01 Installation of VIRTUAL MACHINE and LINUX
Chapter 33: Virtual Machines
Virtual machines benefits
Introduction to Virtual Machines
System calls….. C-program->POSIX call
Introduction to Virtual Machines
Virtualization Dr. S. R. Ahmed.
Xen and the Art of Virtualization
System Virtualization
Chapter 33: Virtual Machines
Hypervisor A hypervisor or virtual machine monitor (VMM) is computer software, firmware or hardware that creates and runs virtual machines. A computer.
Presentation transcript:

Virtualization Technology Prof D M Dhamdhere CSE Department IIT Bombay Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Some Benefits of Virtualization Server consolidation –Also called workload consolidation Better security and reliability for applications using same host Testing of software concurrently with production use of a host Disaster management Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

What is Virtualization? Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay To understand virtualization, let us begin with a virtual resource

Virtual Resources Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay Definition –Illusion of a resource, supported by an OS through use of a real resource Motivation –To have more number of resources available –To have more of a resource available, e.g., virtual memory Historical – The concept originated in 1960s!

Virtual Resources A virtual resource is an abstraction The OS implements the abstraction through use of real resources The implementation can be changed without affecting the application using the virtual resource An application can be migrated to any host offering the same abstraction—portability Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Virtual Resources Use of virtual resources started with I/O devices –Motivation: Have more I/O devices available –Each user could have own I/O device Then came virtual memory –Motivation: Have larger memory And then.. Virtual machines –Motivation? Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Virtual Machines Motivation: Provide a machine to each user so that a user could use an OS of own choice Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Virtual Machines A virtual machine could be used in other contexts as well … –Motivation? Since it is an abstraction, it can be made to have desirable properties, e.g., simplicity –Some programming languages have their own virtual machines, e.g., Pascal, Java If implemented on several hosts, it provides portability Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

What is Virtualization? Definition: Virtualization is the process of mapping the resources and interfaces of a virtual resource into the resources and interfaces of a host machine. Issues in virtualization Complexity Correctness—includes reliability, security … Performance! (overhead of the mapping) Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Overview of Virtualization Virtual device virtualization –Map an operation on a virtual resource into an operation of a real resource, e.g. virtual disks Could be achieved through minimal overhead OS may map several virtual devices into same real device Virtual memory virtualization –Virtual memory manager maps parts of the virtual memory into real memory Overhead: loading and removal of pages Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Overview of Virtualization Virtual machine virtualization –Application ‘running under’ a virtual machine executes an instruction of the virtual machine (we call it the guest machine) –The actual operation should be implemented through execution of instructions of the real machine (we call it the host machine) –It should incur minimal overhead Hence it should be achieved through minimal interpretation Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Overview of Virtualization Who performs virtualization of virtual machines? –A virtual machine operating system (VM OS) –A virtual machine monitor (VMM) Also called a hypervisor Not a full-fledged operating system Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Overview of Virtualization VM/370 –Provides virtual machines that have a subset of the capabilities of the real machine –Implements a virtual machine through virtualization Low overhead: Does not interpret each instruction Lets an application’s code execute on the real machine most of the time –Multiplexes various virtual machines Overlaps their operation so that each virtual machine receives a fair opportunity to operate Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Overview of Virtualization VM/370 –‘Schedules’ a virtual machine –Makes arrangement to regain control at critical times –Issue: Ensure non-interference between virtual machines Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Overview of Virtualization VM/370 –Ensures non-interference Does not allow a virtual machine’s OS (i.e, guest OS) to execute privileged instructions Runs the guest OS in ‘user mode’ of CPU –Drawback: loses the distinction between a guest OS and an application running under a guest OS Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Overview of Virtualization VM/370 –How does it control overhead? Allows a virtual machine to use instructions of the CPU directly during its operation –No overhead at such times –OS of the guest machine is in control Interrupts occurring during guest OS operation can be handled directly by the guest OS Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Performing Virtualization Full virtualization –Host machine and guest machine have identical capabilities Ad hoc arrangements may be need to ensure non- interference Paravirtualization –Some host machine instructions are not virtualized; their use is replaced by use of other instructions Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Performing Virtualization Paravirtualization (contd) –Achieved in two ways Port a guest OS to work under a VM OS or VMM –Replaces use of nonvirtualized instructions by other instructions while ‘installing’ a guest OS Perform dynamic binary translation –Perform substitutions of nonvirtualized instructions during operation –Allows a guest OS to be used readily Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Supporting Virtualization Hardware features –Provide more CPU modes Prevents interference by letting host OS, guest OS and application use different CPU modes –Provide easily virtualizable features Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Supporting Virtualization Software support –Ensure noninterference –Provide performance isolation –Reduce overhead Replace control transitions of the kind ‘application → host OS → guest OS’ by ‘application → host OS’ Replace data transfers ‘application → guest OS → host OS → device’ by ‘application →.. device’ Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

Benefits of Virtualization Revisited Workload consolidation –Create several virtual machines on a host Security and reliability of applications –Create a virtual machine for each application Test an application concurrently with production use of a host –Use separate virtual machines Disaster management –Port a virtual machine Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay

References These slides are based primarily on Chapter 4 of the book: Operating Systems—A Concept-Based Approach, D. M. Dhamdhere, McGraw-Hill, 2008 Moving towards Virtualization… Department of Computer Science and Engineering, IIT Bombay