Cenni sulla virtualizzazione

Похожие документы
Architetture software. Virtualizzazione

Virtualizzazione e macchine virtuali. Presentata da Bernardo Lombardi

27/03/2013. Contenuti

Tecnologie di virtualizzazione

ANALISI DELLE TECNOLOGIE INTEL-VT E AMD-V A SUPPORTO DELLA VIRTUALIZZAZIONE DELL'HARDWARE

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

Sistemi Operativi. A.M. Fanelli Architettura dei Sistemi a. a Livello di Sistema Operativo. Livello di Linguaggi Applicativi

Analisi di prestazioni di applicazioni web in ambiente virtualizzato

Tecniche di virtualizzazione di processori Intel-AMD. Gianluca Guida

2. VIRTUALIZZAZIONE MEDIANTE PARTIZIONAMENTO

Introduzione alla Virtualizzazione

Tecnologie per la Virtualizzazione. Ernesto Damiani, Claudio A. Ardagna Lezione 3

Virtualizzazione con KVM. Reggio Emilia - Linux Day 2014 Stefano Strozzi KVM

Virtualizzazione. Orazio Battaglia

Dal sistema operativo all' hardware

I SISTEMI OPERATIVI. Insieme di programmi che implementano funzioni essenziali per l uso di un sistema elaboratore.

I sistemi operativi. Prof. Daniele Contarino

Architettura dei calcolatori e Software di sistema

Protezione del Kernel Tramite Macchine Virtuali

interoperabilità fra dispositivi forniti da diversi produttori; superare i problemi legati alla limitazione del numero di risorse.

GNUraghe. Desktop Virtualization +VirtualBox+...quando un solo pc non basta più... IL LUG DI ORISTANO. Virtualizzazione dei sistemi con VirtualBox

Indice generale. Introduzione...xiii. Perché la virtualizzazione...1. Virtualizzazione del desktop: VirtualBox e Player...27

UNIVERSITÀ DEGLI STUDI DI FIRENZE FACOLTÀ DI INGEGNERIA

Virtualizzazione. Ciò si ottiene introducendo un livello di indirezione tra la vista logica e quella fisica delle risorse.

Architettura di un sistema operativo

PROPOSTA DI UN ARCHITETTURA IMS INTEGRATA IN UN AMBIENTE VIRTUALIZZATO: ANALISI DI PRESTAZIONI Daniele Costarella

VIRTUAL INFRASTRUCTURE DATABASE

Virtualizzazione con Microsoft Tecnologie e Licensing

I Sistemi Operativi. Installazione Ubuntu Linux su Macchina Virtuale

Sistemi Operativi (modulo di Informatica II) Concetti base e architettura

Che cos e l Informatica. Informatica generale. Caratteristiche fondamentali degli algoritmi. Esempi di algoritmi. Introduzione

Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria

Virtualizzazione e Macchine Virtuali

Sistema operativo & file system 1

Sistema Operativo (Software di base)

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori

Strutture dei Sistemi Operativi. Componenti del sistema Servizi di un sistema operativo Struttura dei sistemi operativi

Sistemi per la Virtualizzazione

Processi nei Sistemi Distribuiti

Il Sistema Operativo

Virtualizzazione nel Mainframe SISTEMI CENTRALI 2011

Virtualizzazione. Tanenbaum, A.S. and Bos, H. Modern Operating Systems, fourth edition. Pearson, Chapter 7, Virtualization and the Cloud

Architettura di Von Neumann. Architettura di Von Neumann. Architettura di Von Neumann INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Lezione 2 Chiamate di procedura e risposta alle interruzioni

Sistemi Operativi. Modulo 2. C. Marrocco. Università degli Studi di Cassino

3. PRODOTTI PER LA VIRTUALIZZAZIONE

Il Sistema Operativo. Informatica Sistema Operativo 1

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014

VIRTUALIZZAZIONE LUG - CREMONA. Linux Day - 25 Ottobre 2008

Approccio stratificato

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Fondamenti di Informatica T. Il Software

Sistemi Operativi (modulo di Informatica II) Architettura

Sistemi Operativi. Libri di Testo

Le virtual machine e la memoria virtuale

Macchine Virtuali in pratica

Joomla! e la virtualizzazione in locale... pro e contro

I sistemi operativi (prima parte) Agostino Lorenzi I sistemi operativi - Atlas

Architetture software

Fisciano, 24 ottobre 2008

Parte I. Evoluzione dei Sistemi di Elaborazione (a.a )

Architettura di un sistema operativo

VDI4U. La virtualizzazione dei desktop applicata all Università. Marco Grilli III Borsisti Day, Roma,

Implementazione del File System

1. LA VIRTUALIZZAZIONE: CONCETTI DI BASE

Sistemi Operativi. Struttura astratta della memoria. Gerarchia dei dispositivi di. Memoria centrale. Memoria secondaria (di massa)

confinamento e virtualizzazione maurizio pizzonia sicurezza dei sistemi informatici e delle reti

Virtualizzazione ed Emulazione

Dr. Andrea Niri aka AndydnA ANDYDNA.NET S.r.l.

Virtualizzazione. Dott. Luca Tasquier.

Sistemi Operativi II Corso di Laurea in Ingegneria Informatica

Транскрипт:

Virtualizzazione Cenni sulla virtualizzazione Anno accademico 2016/17 Sistemi Concorrenti e Distribuiti Tullio Vardanega Realizzare una vista logica su una risorsa indipendentemente dalla sua vera natura La virtualizzazione rimpiazza il reale Esempio: il prerilascio virtualizza la modalità di esecuzione nell architettura di von Neumann Parola chiave: encapsulation Punto di forza La virtualizzazione usa l astrazione ma ne rafforza il valore impegnandosi a garantire sempre la vista logica esposta all utente Laurea Magistrale in Informatica, Università di Padova 1 /27 Laurea Magistrale in Informatica, Università di Padova 3 /27 Astrazione Esempio Nascondere dettagli dell implementazione per semplificare la vista logica offerta all utente Un tipo di dato astratto semplice viene sovrapposto alla complessità sottostante Esempio: in UNIX tutto è file Parola chiave: information hiding Punto debole Variazioni sotto l interfaccia di astrazione possono impedire la preservazione di quell interfaccia Astrazione File HD File FILE SYSTEM Usi e contenuti diversi nella stessa astrazione di file che nasconde la struttura fisica sottostante Virtualizzazione SMB File VIRTUALIZER HD Una specifica astrazione "file" è garantita indipendentemente dal supporto fisico sottostante Laurea Magistrale in Informatica, Università di Padova 2 /27 Laurea Magistrale in Informatica, Università di Padova 4 /27

Astrazione di Sistema Operativo Cenni storici /2 Boot block: procedura di inizializzazione Superblock: descrittore del resto della partizione I-nodes: lista di tutti i descrittori (i-node) Anni 80, passaggio ai minicomputer prima e ai PC poi Il problema della condivisione trasparente delle risorse di calcolo viene risolto in modo ricorrente («standardizzato») dai S/O multiprogrammati L interesse per lo sviluppo della virtualizzazione svanisce Laurea Magistrale in Informatica, Università di Padova 5 /27 Laurea Magistrale in Informatica, Università di Padova 7 /27 Cenni storici /1 Cenni storici /3 Anni 60, epoca mainframe HW scarsamente disponibile e molto costoso La virtualizzazione permette la condivisione trasparente delle poche risorse fisiche disponibili Il time sharing virtualizza l accesso alla CPU La memoria virtuale supera i limiti fisici La virtualizzazione diventa così uno dei principi fondanti dell informatica Primi anni 90: picco di attenzione per il calcolo a parallelismo massiccio per applicazioni specializzate Nasce il Transputer (transistor & computer), componente general-purpose antesignano dei massively parallel processors L interesse per la virtualizzazione rinasce per agevolare la preservazione di applicazioni destinate ad HW special-purpose Nasce VMware Inc. Laurea Magistrale in Informatica, Università di Padova 6 /27 Laurea Magistrale in Informatica, Università di Padova 8 /27

Cenni storici /4 Dove interviene l ABI: esempio Seconda metà anni 90, enorme diffusione dell IT a supporto delle attività aziendali Al diminuire del costo unitario aumenta l eterogeneità (classica legge della domanda) Con server dedicati si ha maggior costo di gestione, meno portabilità e sotto-utilizzo di HW e SW eterogenei Rinascita della virtualizzazione Condividere HW e risorse di calcolo inutilizzate aiuta a ridurre i costi ABI API Laurea Magistrale in Informatica, Università di Padova 9 /27 Laurea Magistrale in Informatica, Università di Padova 11 /27 Architettura e interfacce /1 Architettura e interfacce /2 API ABI ISA CPU and other programmable resources System interconnect (bus) I/O devices and networking O/S Application software Libraries Memory translation Main memory Application Programming Interface: convenzioni di chiamata all interno di uno stesso linguaggio SW Application Binary Interface: convenzioni per interagire tra eseguibili (chiamate, parametri, eccezioni) HW Tre punti di connessione per servizi a valore aggiunto API, ABI, ISA Le interfacce di astrazione sono alla base dell architettura classica dei sistemi di calcolo Ma ogni astrazione è fragile rispetto a variazioni nella natura e nel comportamento del livello sottostante Laurea Magistrale in Informatica, Università di Padova 10 /27 Laurea Magistrale in Informatica, Università di Padova 12 /27

Architettura e interfacce /3 Principio base di virtualizzazione /1 Cosa succede se cambia l HW? Se cambia l ISA sono costretto a cambiare S/O per la fragilità di quella astrazione Potrei essere anche costretto a cambiare in cascata ABI e API Per preservare il valore aggiunto dei livelli alti dobbiamo rafforzare l astrazione con la virtualizzazione Ma dobbiamo scegliere a che livello realizzarla Dalla fine degli anni 60 il «modo» di esecuzione è diviso in livelli di privilegio L ISA è accessibile al SW in sottoinsiemi («ring») concentrici più vicini al core al crescere del privilegio Ogni tentativo di accesso a istruzioni HW a livello di privilegio superiore di quello del chiamante solleva una eccezione (trap HW) L innalzamento di privilegio è ottenuto tramite una istruzione speciale (trap SW) Laurea Magistrale in Informatica, Università di Padova 13 /27 Laurea Magistrale in Informatica, Università di Padova 15 /27 Punto di arrivo Principio base di virtualizzazione /2 L attenzione si sposta sull isolamento Laurea Magistrale in Informatica, Università di Padova 14 /27 Laurea Magistrale in Informatica, Università di Padova 16 /27

Virtualizzazione: obiettivi Virtualizzazione: tassonomia /2 Laurea Magistrale in Informatica, Università di Padova 17 /27 Laurea Magistrale in Informatica, Università di Padova 19 /27 Virtualizzazione: tassonomia /1 Process Virtualization /1 In base al livello di interfaccia sotto al quale si realizza la virtualizzazione Process Virtualization System L hypervisor fornisce una specifica ABI per le applicazioni L unione tra l hypervisor e i programmi su di esso eseguiti viene detto Virtual Machine (VM) La VM a livello di processo più comune è il S/O stesso! API ABI Application SW Libraries Classic-System Hosted Process Hypervisor Paravirtualization Whole-System O/S Laurea Magistrale in Informatica, Università di Padova 18 /27 Laurea Magistrale in Informatica, Università di Padova 20 /27

Process Virtualization /2 Hosted Virtualization La process VM dispone di Memoria virtuale Strumenti di I/O astratti come file e socket Tempo di CPU Una «capsula SW» esegue l applicazione ospite istruzione per istruzione Per esempio tramite «instruction interpretation and translation» JVM (bytecode) Oppure per esecuzione diretta Wine (binario) L hypervisor è un processo come tutti gli altri Alloca le risorse di memoria e storage necessarie richiedendole al S/O ospitante Medesimo ISA (esecuzione diretta), diverso ISA (interpretazione) Comporta alto costo di esecuzione Process Process... Guest O/S ISA... Hosted Process Process Process Hypervisor Host O/S ISA Physical HW machine Laurea Magistrale in Informatica, Università di Padova 21 /27 Laurea Magistrale in Informatica, Università di Padova 23 /27 Classic-System Virtualization Whole-System Virtualization Nelle VM di tipo sistema la «macchina» esposta è una ISA con periferiche associate Storage, network, etc Questa virtualizzazione riproduce tutto quello che serve al S/O ospite esattamente come sarebbe l HW fisico «Guest OS de-privileging» Guest O/S ISA Classic-System Hypervisor HW machine Questa tecnica permette di virtualizzare architetture (ISA) diverse da quella ospitante Variante del tipo Hosted Nel caso «hosted» le istruzioni HW a basso privilegio emesse dall applicazione virtualizzata eseguono direttamente Perché l ISA virtualizzata è la stessa di quella fisica Nel caso «whole system» serve un emulatore di ISA all interno dell hypervisor Laurea Magistrale in Informatica, Università di Padova 22 /27 Laurea Magistrale in Informatica, Università di Padova 24 /27

Para-virtualization /1 Visione d insieme Negli anni 80 scema l interesse per la system virtualization Nelle architetture x86 vengono introdotte istruzioni macchina non virtualizzabili (!) La loro esecuzione non genera trap HW Conseguentemente l hypervisor non si può accorgere del loro utilizzo P.es.: VirtualBox Operating This is a full disk partition seen as a file P.es.: KVM, Xen This includes an OS process that executes the VM code and traps to the hypervisor Laurea Magistrale in Informatica, Università di Padova 25 /27 Laurea Magistrale in Informatica, Università di Padova 27 /27 Para-virtualization /2 Viene allora definita una nuova interfaccia (hypercall API) che richiede l adattamento del S/O guest Il beneficio è una bassa penalità di esecuzione (ca. 1%) Istruzioni non virtualizzabili ISA* Guest O/S System Hypervisor (Xen VMM) Physical HW machine Laurea Magistrale in Informatica, Università di Padova 26 /27