Virtualization (II) SPD Course 17/03/2010 Massimo Coppola

Similar documents
Virtualization. Pradipta De

The Challenges of X86 Hardware Virtualization. GCC- Virtualization: Rajeev Wankar 36

The MPI Message-passing Standard Lab Time Hands-on. SPD Course 11/03/2014 Massimo Coppola

Chapter 5 C. Virtual machines

Module 1: Virtualization. Types of Interfaces

COMPUTER ARCHITECTURE. Virtualization and Memory Hierarchy

Spring 2017 :: CSE 506. Introduction to. Virtual Machines. Nima Honarmand

Virtualization and memory hierarchy

CS-580K/480K Advanced Topics in Cloud Computing. VM Virtualization II

Virtual Machines. Part 2: starting 19 years ago. Operating Systems In Depth IX 1 Copyright 2018 Thomas W. Doeppner. All rights reserved.

Background. IBM sold expensive mainframes to large organizations. Monitor sits between one or more OSes and HW

Distributed Systems COMP 212. Lecture 18 Othon Michail

Virtualization. Michael Tsai 2018/4/16

CSC 5930/9010 Cloud S & P: Virtualization

Virtualization. Starting Point: A Physical Machine. What is a Virtual Machine? Virtualization Properties. Types of Virtualization

Virtualization. ! Physical Hardware Processors, memory, chipset, I/O devices, etc. Resources often grossly underutilized

Virtualization. Virtualization

CSCI 8530 Advanced Operating Systems. Part 19 Virtualization

OPERATING SYSTEMS Chapter 13 Virtual Machines. CS3502 Spring 2017

Virtualization Introduction

CS 350 Winter 2011 Current Topics: Virtual Machines + Solid State Drives

The MPI Message-passing Standard Lab Time Hands-on. SPD Course Massimo Coppola

Chapter 5 B. Large and Fast: Exploiting Memory Hierarchy

Lecture 5: February 3

Multiprocessor Scheduling. Multiprocessor Scheduling

Xen and the Art of Virtualization

Björn Döbel. Microkernel-Based Operating Systems. Exercise 3: Virtualization

references Virtualization services Topics Virtualization

Intel Virtualization Technology Roadmap and VT-d Support in Xen

Lecture 7. Xen and the Art of Virtualization. Paul Braham, Boris Dragovic, Keir Fraser et al. 16 November, Advanced Operating Systems

Hypervisor security. Evgeny Yakovlev, DEFCON NN, 2017

Operating Systems 4/27/2015

NON SCHOLAE, SED VITAE

Virtual Machines. To do. q VM over time q Implementation methods q Hardware features supporting VM q Next time: Midterm?

Introduction to Virtual Machines. Michael Jantz

Introduction to Cloud Computing and Virtualization. Mayank Mishra Sujesha Sudevalayam PhD Students CSE, IIT Bombay

Lecture 5. KVM for ARM. Christoffer Dall and Jason Nieh. 5 November, Operating Systems Practical. OSP Lecture 5, KVM for ARM 1/42

Virtual Memory. Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University

Virtual Machine Security

CS370 Operating Systems

Learning Outcomes. Extended OS. Observations Operating systems provide well defined interfaces. Virtual Machines. Interface Levels

LINUX Virtualization. Running other code under LINUX

I/O and virtualization

Introduction to Virtualization

Virtual Machines. Part 1: 54 years ago. Operating Systems In Depth VIII 1 Copyright 2018 Thomas W. Doeppner. All rights reserved.

Virtualization. Operating Systems, 2016, Meni Adler, Danny Hendler & Amnon Meisels

Virtualization. Application Application Application. MCSN - N. Tonellotto - Distributed Enabling Platforms OPERATING SYSTEM OPERATING SYSTEM

Advanced Operating Systems (CS 202) Virtualization

SR-IOV support in Xen. Yaozu (Eddie) Dong Yunhong Jiang Kun (Kevin) Tian


CLOUD COMPUTING IT0530. G.JEYA BHARATHI Asst.Prof.(O.G) Department of IT SRM University

Xen and the Art of Virtualization. CSE-291 (Cloud Computing) Fall 2016

Nested Virtualization and Server Consolidation

OS Virtualization. Why Virtualize? Introduction. Virtualization Basics 12/10/2012. Motivation. Types of Virtualization.

What is KVM? KVM patch. Modern hypervisors must do many things that are already done by OSs Scheduler, Memory management, I/O stacks

CSE543 - Computer and Network Security Module: Virtualization

Introduction to SGX (Software Guard Extensions) and SGX Virtualization. Kai Huang, Jun Nakajima (Speaker) July 12, 2017

Virtualization. Darren Alton

LINUX KVM FRANCISCO JAVIER VARGAS GARCIA-DONAS CLOUD COMPUTING 2017

I/O virtualization. Jiang, Yunhong Yang, Xiaowei Software and Service Group 2009 虚拟化技术全国高校师资研讨班

Virtualization for Embedded Systems

Chapter 5 (Part II) Large and Fast: Exploiting Memory Hierarchy. Baback Izadi Division of Engineering Programs

Virtual machine architecture and KVM analysis D 陳彥霖 B 郭宗倫

Real-Time Cache Management for Multi-Core Virtualization

Intel s Virtualization Extensions (VT-x) So you want to build a hypervisor?

CSE 237B Fall 2009 Virtualization, Security and RTOS. Rajesh Gupta Computer Science and Engineering University of California, San Diego.

Virtualization, Xen and Denali

Virtual Machines. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

CSCE Introduction to Computer Systems Spring 2019

Virtual Leverage: Server Consolidation in Open Source Environments. Margaret Lewis Commercial Software Strategist AMD

Background. IBM sold expensive mainframes to large organiza<ons. Monitor sits between one or more OSes and HW

Background. IBM sold expensive mainframes to large organiza<ons. Monitor sits between one or more OSes and HW

CSE 120 Principles of Operating Systems

1 Virtualization Recap

The Architecture of Virtual Machines Lecture for the Embedded Systems Course CSD, University of Crete (April 29, 2014)

Fast access ===> use map to find object. HW == SW ===> map is in HW or SW or combo. Extend range ===> longer, hierarchical names

Virtualization and Performance

Introduction to Virtual Machines

Operating System Security

Cloud Computing Virtualization

Knut Omang Ifi/Oracle 20 Oct, Introduction to virtualization (Virtual machines) Aspects of network virtualization:

Chapter 33: Virtual Machines

CSE543 - Computer and Network Security Module: Virtualization

Fast access ===> use map to find object. HW == SW ===> map is in HW or SW or combo. Extend range ===> longer, hierarchical names

Virtualization. ...or how adding another layer of abstraction is changing the world. CIS 399: Unix Skills University of Pennsylvania.

A Survey on Virtualization Technologies

Knut Omang Ifi/Oracle 6 Nov, 2017

MultiNyx: A Multi-Level Abstraction Framework for Systematic Analysis of Hypervisors. Pedro Fonseca, Xi Wang, Arvind Krishnamurthy

DISCO and Virtualization

Virtualization. Guillaume Urvoy-Keller UNS/I3S

Virtualization and Security

Virtualization. Dr. Yingwu Zhu

COS 318: Operating Systems. Virtual Machine Monitors

ANR call for proposals number ANR-08-VERS-010 FINEP settlement number 1655/08. Horizon - A New Horizon for Internet

CIS Operating Systems CPU Mode. Professor Qiang Zeng Spring 2018

CrashOS: Hypervisor testing tool

Unit 2. VMMs and hypervisors 2966-Network and Services Virtualisation First semester Assistant professor: Katja Gilly Departament: Physics

COSC 6385 Computer Architecture. Virtualizing Compute Resources

Introduction to Virtual Machines. Carl Waldspurger (SB SM 89 PhD 95) VMware R&D

Zdeněk Kubala Senior QA

Transcription:

Virtualization (II) SPD Course 17/03/2010 Massimo Coppola

The players The Hypervisor (HV) implements the virtual machine emulation to run a Guest OS Provides resources and functionalities to the Guest OS Typical settings: the VM emulation stacks with the Host and the Guest OS System-level VM emulation = emulate each HW transition, including ISA, CPU and device user & privileged state Different ISA full emulation Guest ISA = Host ISA a subset of the ISA can be executed SPD - MPI Standard Use and Implementation 2

Different Kinds of Hypervisor In system virtualization, the Hypervisor is not necessarily run on top of a host O.S. Even with no Host O.S., the HV will still need a Control O.S. Create, monitor and manage other VMs SPD - MPI Standard Use and Implementation 3

Type 1 Hypervisor : bare-metal HV runs directly on the hardware Essential management functions: memory, CPU, system bus Control instance of the OS is special VM Privileged link to the HV to steer other VMs May provide device drivers to Guests Pros: complete knowledge of HW, can make HW-aware decisions Cons: manage full VM emulation, intercept all HW mechanisms SPD - MPI Standard Use and Implementation 4

Type 2 hypervisor : Hosted HV HV runs within the Host OS Resources controlled and managed by the Host Need mechanisms to separate host and guests if same ISA Pros: less intrusive on Host OS Cons: low-level resource management done by host, HV has limited access to HW SPD - MPI Standard Use and Implementation 5

Protection rings Current X86 architecture A generalization of the basic mechanism of the supervisor state Different classes of machine instructions (subsets of the ISA) are allowed in different levels Can be used as an OS containment mechanism In practice, most O.S. kernels use just one ring for OS (then it must be ring 0) and one for apps (ring 3) SPD - MPI Standard Use and Implementation 6

Paravirtualization Hypervisor needs to to run in ring 0 Host O.S. kernel is modified it runs in ring 0 on top of the hypervisor. Guest VM kernel is also modified SPD - MPI Standard Use and Implementation 7

Full virtualization, no HW assist The HOST O.S. kernel is modified to run in ring 1 Some host kernels are easily ported to ring 1 Guests may be modified, or run on SW emulation A subset of the ISA trapped and emulated by the HV SPD - MPI Standard Use and Implementation 8

Full virtualization with HW assist Hypervisor is run in a special ring -1 Intel and AMD provide HW support in recent CPUs Control O.S. kernel is run in ring 0 SPD - MPI Standard Use and Implementation 9

Process-level VMs for one (group of) processes OS like abstraction, inside container, no info about the outside Isolation and protection are the aim Special support into in the Host O.S. No HW virtualization need (same ISA!) May exploit system VM in order to build containers OpenVZ technology as used in XtreemOS Containers SPD - MPI Standard Use and Implementation 10

Hosted virtualization Common case You virtualize also device drivers to enhance VM interoperation Virtual disk drivers Virtual video drivers mapped in the host desktop Inter-VM cut & paste SPD - MPI Standard Use and Implementation 11

The MPI Message-passing Standard (V) Practical use SPD Course 17/03/2010 Massimo Coppola

Exercises Define a program with 2 processes they send back and fort a data buffer, the second process executes an operation on the data (e.g. sum 1). Verify after a given number N of iterations, that the expected result is achieved. Define a datatype for a square matrix, with parametric size. Define a datatype for its lower triagular matrix. Define one for its upper triangular. In the two-process program, initialize randomly a square matrix, send the lower triangular and receive it back as upper triangular in the same buffer. Is the result a symmetric matrix? Do you need to modify one of the two triangular datatypes? SPD - MPI Standard Use and Implementation 13