Virtualizzazione di sistema

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Virtualizzazione di sistema"

Transcript

1 Luca Cabibbo Architettura dei Sistemi Software dispensa asw630 marzo 2018 This book is about Xen. It s not about Zen. But if all goes well, this book will make you happy. C. Takemura and L.S. Crawford 1 - Fonti Tanenbaum, A.S. and Bos, H. Modern Operating Systems, fourth edition. Pearson, Chapter 7, Virtualization and the Cloud Smith, J.E. and Nair, R. Virtual Machines: Versatile Platforms for Systems and Processes. Morgan Kaufmann, Coulouris, G, Dollimore, J., Kindberg, T., and Blair, G. Distributed Systems: Concepts and Design, fifth edition. Pearson, Chapter 7, Operating System Support [SAP] Chapter 26, Architecture in the Cloud Bass, L., Weber, I., and Zhu, L. DevOps: A Software Architect s Perspective. Addison-Wesley, Chapter 2, The Cloud as a Platform Siti web di diversi sistemi di virtualizzazione 2

2 - Obiettivi e argomenti Obiettivi introdurre la virtualizzazione di sistema e le macchine virtuali descrivere alcune tecniche e opzioni di virtualizzazione presentare alcuni sistemi di virtualizzazione Argomenti virtualizzazione di sistema tecniche di virtualizzazione sistemi di virtualizzazione benefici della virtualizzazione discussione 3 * La virtualizzazione di sistema (talvolta chiamata anche solo virtualizzazione) consente a un singolo computer reale di ospitare più computer virtuali chiamati macchine virtuali ciascuna macchina virtuale è un computer virtuale in cui è possibile eseguire un proprio sistema operativo e dei propri servizi e applicazioni operating system a real machine operating system a virtual machine un computer reale con il suo OS e le sue applicazioni un computer virtuale con il suo OS e le sue applicazioni 4

3 La virtualizzazione di sistema è una tecnologia importante soprattutto nei sistemi distribuiti e nel cloud è una tecnologia abilitante per la gestione flessibile di ambienti di esecuzione (virtuali) consente di eseguire in modo flessibile più servizi e applicazioni in più macchine virtuali, ciascuna con il proprio sistema operativo in uno stesso computer ancor di più, è una tecnologia abilitante fondamentale del cloud computing che è un modello di computazione basato su risorse di calcolo virtuali inoltre, la virtualizzazione di sistema può essere utilizzata per sostenere diverse qualità importanti tra cui scalabilità e disponibilità 5 Virtualizzazione Più in generale, la virtualizzazione ha lo scopo di fornire l accesso a un insieme di risorse computazionali virtuali a partire da un insieme di risorse computazionali reali è possibile virtualizzare risorse diverse come reti e storage ad es., la virtualizzazione effettuata da un file system, oppure una Virtual Private Network la virtualizzazione delle risorse di solito è basata sull introduzione di uno strato software di virtualizzazione che realizza un indirezione tra le risorse reali e l utente/consumatore delle risorse virtuali 6

4 In particolare, la virtualizzazione ha l impatto maggiore quando viene applicata ad un intera piattaforma hardware (ovvero, ad un sistema ) la virtualizzazione di sistema (system virtualization) chiamata anche virtualizzazione dell hardware (hardware virtualization) ha lo scopo è fornire (l illusione di) una o più macchine virtuali mediante la virtualizzazione di una macchina fisica reale il software che realizza la virtualizzazione di sistema è chiamato hypervisor oppure virtual machine monitor (VMM) in questa dispensa ci concentriamo soprattutto sulla virtualizzazione di sistema a cui ci riferiremo spesso chiamandola semplicemente virtualizzazione 7 Macchine virtuali Una macchina virtuale (virtual machine, VM) è l emulazione di una macchina reale nella virtualizzazione di sistema, per macchina si intende un computer più precisamente, l hardware di un computer che è ciò che viene appunto fornito come entità virtuale una macchina virtuale espone ai suoi utenti la stessa interfaccia di una macchina reale ovvero, un insieme di risorse (virtuali) come uno o più processori (e dunque la capacità di eseguire istruzioni in un proprio linguaggio macchina), una memoria, dei dispositivi (di storage e di rete), una macchina virtuale fornisce un ambiente hardware virtuale completo in cui è possibile installare ed eseguire un sistema operativo (operating system o OS) e un insieme di servizi e applicazioni 8

5 Virtualizzazione Un esempio di computer non virtualizzato un computer reale ( fisico ) viene utilizzato installandoci sopra un sistema operativo e un insieme di applicazioni e servizi le applicazioni e i servizi sono specifici per la particolare piattaforma hardware-software operating system computer reale hardware (physical machine) 9 Virtualizzazione Un esempio di computer virtualizzato il computer reale (hardware + OS) è detto host (ospitante) il software di virtualizzazione è un hypervisor o virtual machine monitor (VMM) la macchina virtuale (insieme al suo OS e ai suoi processi) è detta (ospitata) operating system vmm virtual machine (vm) virtualizing software host host operating system hardware (physical machine) 10

6 Virtualizzazione Un altro esempio, in cui una macchina host ospita più VM ciascuna VM esegue un proprio OS che può anche essere diverso da VM a VM (ma anche lo stesso) e delle proprie applicazioni l OS eseguito da una VM può anche essere diverso da quello eseguito dal computer host (ma anche lo stesso) operating system virtual machine operating system virtual machine virtualizing software host operating system hardware (physical machine) 11 Hypervisor di tipo 1 e 2 Ci sono due tipi principali di hypervisor type 1 (native VMM): l hypervisor è eseguito direttamente dall hardware host (su cui non è installato un OS) VMware vsphere, Xen, più efficiente ma più complesso operating system virtual machine operating system virtual machine type 1 hypervisor hardware (physical machine) 12

7 Hypervisor di tipo 1 e 2 Ci sono due tipi principali di hypervisor type 2 (hosted VMM/hosted hypervisor): l hypervisor è eseguito dall OS host VMware Workstation, Oracle VM Virtualbox, più semplice, ma in genere orientato al solo uso personale operating system virtual machine operating system virtual machine type 2 hypervisor host operating system hardware (physical machine) 13 Virtualizzazione di processo La virtualizzazione di sistema non è l unica forma di virtualizzazione un altra forma è la virtualizzazione di processo (process virtualization), in cui ogni macchina virtuale ospita solo un processo individuale anziché un intero sistema operativo un caso comune è quello della Java Virtual Machine (JVM) native java JVM operating system java JVM non ci occuperemo ulteriormente di virtualizzazione di processo hardware 14

8 Virtualizzazione basata su contenitori Un ulteriore forma è la virtualizzazione basata su contenitori (container-based virtualization o OS-level virtualization) lo strato di virtualizzazione gestisce un insieme di contenitori (container) ogni contenitore è un computer dotato di un kernel di OS virtuale (il kernel dell OS host) in un contenitore è poi possibile installare un OS (compatibile con quel kernel) ed eseguire applicazioni e servizi app app OS libs OS libs container container virtualizing software ci occuperemo di virtualizzazione basata su contenitori in una successiva dispensa 15 host operating system hardware VM e istanze di VM Prima di andare avanti, e facendo riferimento alla virtualizzazione di sistema, è utile una precisazione sul termine macchina virtuale di per sé, una macchina virtuale (VM) è l emulazione dell hardware di un computer reale ovvero, è solo l astrazione fornita da un sistema di virtualizzazione e come tale non comprende né OS né applicazioni invece, per istanza di macchina virtuale (VM instance) di solito si intende una VM insieme al suo OS e alle sue applicazioni VM operating system vm VM instance app OS app attenzione: il termine macchina virtuale viene (e verrà) talvolta utilizzato anche per indicare un istanza di macchina virtuale 16

9 - Applicazioni della virtualizzazione La virtualizzazione (virtualizzazione di sistema) ha numerose applicazioni (che verranno discusse meglio alla fine di questa dispensa) tra cui server consolidation consolidation desktop (client) virtualization sandboxing ambienti di esecuzione multipli supporto al testing e alla QA in queste applicazioni, l obiettivo della virtualizzazione è in genere consentire l esecuzione di molte macchine virtuali in un singolo computer fisico in cui ciascuna macchina virtuale ospita un proprio OS e un insieme di servizi e applicazioni 17 * Tecniche di virtualizzazione Un computer è composto da diverse risorse (CPU, memoria, I/O, reti, storage) anche ciascuna macchina virtuale è dotata di un proprio insieme di risorse virtuali l hypervisor deve gestire queste risorse virtuali in termini delle sottostanti risorse fisiche per ogni tipo di risorsa, ci sono più tecniche di virtualizzazione un hypervisor può offrire, in genere, più opzioni di virtualizzazione per ciascuna risorsa questa sezione descrive alcune tecniche e opzioni di virtualizzazione tra quelle realizzate dai diversi hypervisor virtualizzazione del processore, della memoria, dell I/O (in particolare dello storage e della rete) immagini/virtual appliance, snapshot/checkpoint e migrazione di VM 18

10 - Requisiti generali per la virtualizzazione 19 Requisiti per la virtualizzazione un hypervisor deve fornire l illusione che ogni VM agisca come un computer reale deve essere possibile fare il boot di una VM, e poi installare un OS arbitrario nonché delle applicazioni e/o servizi come in un computer reale inoltre, un hypervisor dovrebbe fornire questa illusione in modo efficace ed efficiente, con queste caratteristiche fedeltà il comportamento di un programma su una VM dovrebbe essere identico a quello su un computer reale sicurezza l hypervisor dovrebbe avere controllo completo delle risorse virtualizzate efficienza la maggior parte del codice della VM dovrebbe essere eseguito direttamente dal computer host, senza intervento dell hypervisor poiché anche le prestazioni sono importanti - Virtualizzazione del processore Un processore è caratterizzato dalla sua ISA (Instruction Set Architecture) l ISA definisce le istruzioni del processore e uno stato (registri e memoria) l esecuzione delle istruzioni ha effetto anche su questo stato esistono due approcci principali per la virtualizzazione dei processori emulazione del processore per fare in modo che il processore virtuale sia di un tipo diverso dal processore reale virtualizzazione del processore il processore virtuale e quello reale sono entrambi dello stesso tipo (ad es., x86) molte istruzioni del software in esecuzione in una VM possono essere eseguite direttamente dal processore dell host tuttavia, ci possono essere delle istruzioni problematiche, che vanno gestite in modo opportuno 20

11 Emulazione del processore L emulazione del processore avviene mediante la tecnica di virtualizzazione dell ISA (emulazione della CPU) si basa sulla traduzione binaria ciascuna istruzione della VM viene eseguita prima traducendo l istruzione nell ISA del processore dell host e poi eseguendo la sua traduzione è una tecnica poco efficiente tuttavia, si può recuperare un po di efficienza traducendo blocchi opportuni di istruzioni e facendo il caching delle istruzioni tradotte oggi è una tecnica poco importante, grazie all ampia diffusione dei processori x86 (ma ora ci sono anche gli ARM) non prendiamo ulteriormente in considerazione l emulazione del processore ci focalizziamo invece sulle tecniche di virtualizzazione dei processori x86 21 Virtualizzazione del processore Nel caso in cui il processore reale e quello virtuale sono dello stesso tipo (ad es., sono entrambi dei processori x86), allora molte istruzioni del software in esecuzione in una VM possono essere eseguite direttamente dal processore dell host tuttavia, alcune istruzioni del software della VM sono invece problematiche e pertanto non vanno eseguite direttamente dal processore host in particolare, le istruzioni problematiche sono alcune istruzioni del kernel dell OS nota: un processore può operare in almeno due modi il kernel mode è pensato per il kernel dell OS e consente l esecuzione di tutte le istruzioni dell ISA lo user mode è pensato per le applicazioni (ma è usato anche dal resto dell OS) e non consente l esecuzione di alcune istruzioni ad es., quelle che riguardano l I/O, la protezione della memoria e disabilitare le interruzioni 22

12 Virtualizzazione del processore Esempi di istruzioni problematiche (ovvero, non virtualizzabili mediante un esecuzione diretta) istruzioni per abilitare e disabilitare le interruzioni se l OS di una VM esegue un istruzione per disabilitare le interruzioni, allora non vanno disabilitate le interruzioni del processore (fisico) dell host fisico, ma piuttosto vanno disabilitate (in modo virtuale) le interruzioni solo nel processore (virtuale) di quella VM che sono rappresentate da un registro nella struttura dati per il processore virtuale gestita dall hypervisor, e non da un flag in un registro del processore fisico istruzioni per la gestione della MMU (Memory Management Unit) l OS non deve poter modificare in modo arbitrario la MMU dell host, altrimenti potrebbe accedere a qualunque area della memoria fisica 23 Virtualizzazione assistita dall hardware Oggi, nell ambito dei processori x86, la tecnica principale per la virtualizzazione del processore (per consentire anche la gestione delle istruzioni problematiche ) è la virtualizzazione assistita dall hardware (trap-and-emulate) tutte le istruzioni della VM vengono eseguite dal processore reale dell host che normalmente le esegue direttamente tuttavia, il processore reale dell host cattura le istruzioni non virtualizzabili della VM (trap) e le gestisce come chiamate all hypervisor (emulate) questa tecnica è basata sull uso di tecnologie hardware di virtualizzazione dei processori x86 (Intel VT-x e AMD SVM, dal 2005) 24

13 Virtualizzazione assistita dall hardware La figura illustra la virtualizzazione del processore assistita dall hardware con un hypervisor di tipo 1 host app OS type 1 hypervisor app hardware virtual user mode virtual kernel mode trap on privileged instructions user mode kernel mode 25 Virtualizzazione assistita dall hardware Nel caso di un hypervisor di tipo 2, le cose sono un po diverse bisogna anche capire la relazione tra l hypervisor e l OS host ad es., nel caso di VMware Workstation, l hypervisor funziona in parte in user mode e in parte in kernel mode dunque come pari dell OS host quando l hypervisor è in esecuzione in kernel mode, si impadronisce del contesto del processore (registri privilegiati, gestori delle eccezioni, spazio di indirizzamento, ) salvo poi restituirlo all OS host (world switch) quando opportuno ad es., quando termina il tempo dedicato all hypervisor oppure quando l hypervisor ha bisogno di aiuto dall OS host (ad es., per chiedere l esecuzione di un operazione di I/O a un driver dell OS host) 26

14 Virtualizzazione del processore Ci sono anche altre tecniche di virtualizzazione dei processori (per la gestione delle istruzioni problematiche ) virtualizzazione full combina l esecuzione diretta (della maggior parte delle istruzioni della VM nel processore host) con la traduzione binaria (delle istruzioni problematiche ) paravirtualizzazione l OS viene modificato per eliminare tutte le istruzioni problematiche del suo kernel, sostituendole con chiamate all hypervisor le istruzioni della VM vengono poi eseguite direttamente dal processore host questa tecniche sono state usate soprattutto prima dell introduzione delle tecnologie hardware di virtualizzazione dei processori (la virtualizzazione dei processori x86 è iniziata alla fine degli anni novanta) 27 Virtualizzazione di più processori La virtualizzazione dei processori è particolarmente efficace quando applicata a processori multi-core oppure a computer multiprocessore i diversi processori fisici (con i loro core) presenti nel sistema host vengono virtualizzati in CPU virtuali (virtual CPU o vcpu) e assegnati alle VM ogni vcpu ha un solo core ad ogni VM possono essere assegnate una o più vcpu nell assegnazione di una vcpu ad una VM si può anche specificare la quota percentuale (minima e massima) nell uso della vcpu in questo modo, un sistema multi-processore viene virtualizzato in un sistema multi-computer 28

15 - Virtualizzazione della memoria Molti sistemi operativi moderni supportano la memoria virtuale il mapping di pagine nello spazio di memoria virtuale nelle pagine della memoria fisica nella virtualizzazione di sistema, bisogna gestire un doppio livello di virtualizzazione della memoria fisica perché ogni VM ha una propria memoria virtuale oggi i processori forniscono un supporto hardware a questa virtualizzazione annidata della memoria con le tecnologie Intel EPT e AMD NPT (dal 2008) gli hypervisor utilizzano anche delle ulteriori tecniche per una gestione efficiente della memoria deduplicazione delle pagine in caso di pagine identiche in VM diverse ballooning l hypervisor forza un OS a prendere decisioni sulla gestione della memoria virtuale 29 - Virtualizzazione dell I/O L hypervisor mostra nelle sue macchine virtuali la disponibilità di un certo numero di dispositivi ad es., dischi e schede di rete di solito l hypervisor non assegna alle VM i dispositivi hardware presenti fisicamente nell host, poiché questo è problematico piuttosto, l hypervisor assegna a ciascuna VM un insieme di dispositivi virtuali, che possono essere anche diversi da quelli presenti fisicamente sull host (ad es., un disco SATA viene mostrato come un disco IDE) e che sono configurabili separatamente per ciascuna VM inoltre, l hypervisor può assegnare alle VM anche dei dispositivi virtuali per cui non esiste una controparte fisica equivalente (ad es., uno switch virtuale, oppure mostrare un immagine ISO come un lettore CD/DVD) l OS accede a questi dispositivi virtuali mediante i propri driver, come se fossero dispositivi reali 30

16 Virtualizzazione dell I/O Le operazioni di I/O per questi dispositivi virtuali vengono poi catturate dall hypervisor, che le deve gestire in modo opportuno hypervisor di tipo 2 l hypervisor gestisce le operazioni di I/O chiedendo aiuto all OS host, su cui sono installati i driver per i dispositivi fisici effettivamente presenti dunque l hypervisor non deve avere i propri driver per questi dispositivi hypervisor di tipo 1 in questo caso, la soluzione comune consiste nell utilizzare una VM speciale e sempre in esecuzione (ad es., il cosiddetto dominio 0 di Xen) su cui sono installati i driver dei dispositivi fisici questa VM speciale supporta l hypervisor per diverse finalità, tra cui appunto l I/O 31 - Virtualizzazione dello storage Le tecniche di virtualizzazione dello storage (unità disco) differiscono nel modo in cui i dischi virtuali di una VM sono implementati nel sistema host un disco virtuale può corrispondere direttamente a un disco fisico oppure a una sua partizione le prestazioni sono migliori è però poco flessibile, perché un disco fisico può avere solo un numero limitato di partizioni in alternativa, un disco virtuale può essere implementato come un insieme di file chiamati file immagine (disk image files) nell OS host la flessibilità è maggiore ad es., un file immagine può essere allocata in modo dinamico, consentendo un risparmio iniziale nell occupazione di spazio sul disco fisico le prestazioni sono invece peggiori 32

17 Virtualizzazione dello storage La virtualizzazione dello storage può essere applicata a unità direttamente collegate al computer host (DAS, Direct Attached Storage), oppure a unità collegate in rete (NAS, Network Attached Storage) ad es., con il protocollo iscsi (Internet SCSI) la virtualizzazione di unità NAS aumenta significativamente la flessibilità delle soluzioni di virtualizzazione 33 Virtualizzazione dello storage Cartelle condivise un altra funzionalità dei sistemi di virtualizzazione (soprattutto degli hypervisor di tipo 2, per uso personale) sono le cartelle condivise (shared folder) che consente la condivisione di una o più cartelle tra l OS host e una o più VM le cartelle condivise risiedono fisicamente nel file system del computer host, e possono essere condivise con le VM in lettura-scrittura oppure anche in sola lettura 34

18 - Virtualizzazione della rete Una rete fisica è basata su un insieme di host fisici, ciascuno dei quali può essere dotato di una o più schede di rete (NIC) fisiche switch fisici, per connettere più segmenti di rete fisici In prima approssimazione, una rete virtuale è basata su un insieme di VM, ciascuna delle quali può essere dotata di una o più schede di rete virtuali (vnic) uno o più switch virtuali (vswitch), per connettere tra loro schede di rete virtuali (vnic) e schede di rete fisiche (pnic) in modo che le diverse VM siano collegate tra loro e con la rete vista dal sistema host, in modo opportuno 35 Virtualizzazione della rete Una rete fisica Una rete virtuale (con un hypervisor di tipo 1) host fisico app OS host fisico vm1 app OS vnic vm2 app OS vnic pnic vswitch pswitch pnic pnic pswitch pswitch 36

19 Virtualizzazione della rete In pratica, ogni VM può essere dotata di una o più schede di rete virtuali ciascuna scheda di rete virtuale può emulare una certa scheda di rete reale comune oppure può essere un adattatore di rete paravirtualizzato (ad es., virtio-net è uno standard supportato da diversi sistemi operativi) che evita la complessità dell emulazione e ottimizza le prestazioni ciascuna scheda di rete virtuale può operare in una modalità di virtualizzazione diversa (descritte dopo) l indirizzo IP associato a una scheda di rete virtuale può essere configurato in modo statico oppure in modo dinamico tramite un servizio DHCP (che potrebbe essere fornito dell hypervisor) è possibile creare e configurare delle configurazioni di rete complesse tra le diverse VM e il computer host e la rete esterna che viene vista tramite le schede di rete fisiche del computer host 37 Modalità di virtualizzazione della rete Le principali modalità in cui può operare una vnic ogni vnic può operare in modalità differenti dalle altre NAT (Network Address Translation) la VM vede la rete esterna (ad es., Internet) tramite la vnic la VM non è visibile né dall host, né dalle altre VM, né dalla rete esterna Bridged Networking la vnic è collegata a una pnic, e scambia pacchetti con rete esterna (ad es., Internet) direttamente tramite di essa utile, ad es., se la VM deve offrire servizi come server 38

20 Modalità di virtualizzazione della rete Le principali modalità in cui può operare una vnic ogni vnic può operare in modalità differenti dalle altre Internal Networking per collegare un gruppo di VM tra di loro e creare una rete di VM né l host né la rete esterna possono interagire con questa rete interna Host-only Networking per definire una rete che contiene l host e un insieme di VM senza usare la pnic dell host, ma usando un interfaccia di rete creata nell host (che è simile a un interfaccia di loopback) 39 Virtualizzazione della rete Port forwarding il port forwarding mette in corrispondenza una porta di una VM con una porta del computer host ad es., la porta 80 (HTTP) del con la porta 8080 dell host in modo che il servizio HTTP (porta 80) del possa essere poi acceduto alla porta 8080 dell host la porta 8080 deve essere inizialmente libera sull host questo è un altro modo per rendere accessibili i servizi in esecuzione in una VM all host oppure alla rete esterna 40

21 - Immagini e istanze di macchine virtuali 41 L immagine di una VM (VM image) è, intuitivamente, formata dal contenuto dei volumi/dischi della VM, insieme ai metadati della VM l immagine di una VM comprende tutto il necessario per avviare un istanza di VM (VM instance) a partire da quell immagine VM e istanza di VM sono spesso usati come sinonimi se i dischi virtuali della VM sono implementati nell OS host come uno o più file (disk image), allora l insieme di questi file rappresenta il contenuto dei volumi/dischi della VM inoltre, i metadati di una VM descrivono la configurazione della VM ad es., numero di processori, quantità di memoria, storage, schede di rete di solito anche questi metadati sono memorizzati in un file dell OS host dopo aver creato e inizializzato una VM (ovvero, dopo aver installato l OS e tutti i servizi e le applicazioni di interesse) è possibile salvare l immagine di questa VM, con diverse finalità (discusse dopo) - Clonazione di VM La clonazione di una VM è la creazione di una nuova istanza di VM a partire da un immagine di VM la clonazione consente di evitare di installare da zero l OS e i servizi e le applicazioni di interesse in una VM la clonazione non è una semplice copia dell immagine di una VM infatti, la clonazione di una VM deve di solito modificare alcuni metadati della VM ad es., il MAC address associato ad ogni vnic della VM, oppure l id della VM da una singola immagine di VM è possibile creare (mediante clonazione) molte istanze di VM 42

22 Clonazione di VM La clonazione di una VM è la creazione di una nuova istanza di VM a partire da un immagine di VM inoltre, la clonazione di una VM può essere completa (full) vengono clonati tutti i file immagine necessari per la nuova istanza oppure collegata (linked) più istanze di VM sono collegate all immagine iniziale della VM iniziale (che è condivisa e immutabile) inoltre, ciascuna istanza possiede dei propri file immagine differenza, che rappresentano e memorizzano tutti i cambiamenti rispetto all immagine iniziale 43 Virtual appliance Una virtual appliance è un immagine di VM pre-configurata (in genere da terzi) da cui è possibile creare istanze di VM con quella configurazione la disponibilità di virtual appliance può ridurre in modo significativo i tempi di creazione delle VM installare un applicazione, un server o una piattaforma complessa è semplice come scaricare una canzone sul proprio ipod (o un app sul proprio iphone) 44

23 - Snapshot/checkpoint Una VM può essere avviata e arrestata ma anche messa in pausa e riavviata lo stato istantaneo di una VM arrestata o in pausa può essere salvato su disco (snapshot o checkpoint) per un uso futuro lo snapshot per una VM in esecuzione (ad es., in pausa) comprende sia lo stato del disco che lo stato della memoria ad es., è possibile avviare una VM a partire da uno snapshot anziché iniziare dal boot questo può ridurre i tempi di avviamento di una VM 45 - Migrazione di VM La migrazione ha lo scopo di spostare un istanza di VM in esecuzione da un host ad un altro host ad es., per motivi di scalabilità o di disponibilità, oppure perché si vuole fare un intervento di manutenzione sul primo host la soluzione in cui si spegne la VM nel primo host e la si riavvia nel secondo host può essere inaccettabile per l interruzione dei servizi in esecuzione nella VM un altra soluzione consiste nel mettere in pausa la VM, prenderne uno snapshot, copiarlo sul secondo host e riavviare la VM sul secondo host a partire da quello stato la copia può essere evitata se lo snapshot viene salvato su un unità NAS condivisa dai due host in pratica, se i file immagine della VM sono gestiti in un unità NAS condivisa tra i due host, lo snapshot della VM può limitarsi al solo stato della memoria, e dunque la migrazione può essere estremamente veloce (live migration) 46

24 * Sistemi di virtualizzazione Vengono ora descritti brevemente alcuni sistemi di virtualizzazione per la piattaforma x86 Xen KVM la famiglia di prodotti VMware Oracle VM VirtualBox 47 -Xen Xen è un hypervisor di tipo 1 open source per sistemi x86 supporto per più OS, soprattutto Linux (e altri OS Unix) ma anche Windows supporta sia la paravirtualizzazione (PV) che la virtualizzazione assistita dall hardware (HVM) un progetto di ricerca alla fine degli anni novanta, poi diventato un progetto open source nel 2002 dal 2013, un collaborative project della Linux Foundation i membri comprendono Amazon, Google, Oracle, Intel e AMD secondo Wikipedia, è usato come hypervisor primario in molti sistemi tra cui Amazon EC2 48

25 Xen Xen è un hypervisor di tipo 1 open source per sistemi x86 49 Xen Architettura di Xen basata su un hypervisor sottile questo sostiene robustezza e sicurezza ogni VM è chiamata un o dominio il dominio 0 (o dominio di controllo) è un dominio speciale (con privilegi speciali) contiene i driver per l hardware fisico, e supporta l hypervisor nell accesso all hardware contiene uno stack software di controllo (toolstack) per gestire la creazione, configurazione e distruzione delle altre VM che può essere acceduto dalla linea di comando, da un interfaccia grafica o da altri stack per l orchestrazione di VM XenServer è una piattaforma di virtualizzazione per il cloud basata sull hypervisor Xen 50

26 -KVM KVM (Kernel Virtual Machine) è una soluzione di virtualizzazione open source per sistemi x86 (con estensioni per la virtualizzazione) integrata nei kernel Linux può essere considerato un hypervisor di tipo 1 supporto per OS Linux e Windows non modificati 51 KVM Architettura di KVM basata su un modulo del kernel Linux (kvm.ko) che fornisce il nucleo dell infrastruttura di virtualizzazione inoltre QEMU che è un hosted hypervisor per la virtualizzazione dell hardware (da non confondere con la virtualizzazione assistita dall hardware) basato su traduzione binaria viene usato come ambiente per l esecuzione dei KVM ove possibile, il codice viene eseguito direttamente dall host ogni vcpu delle VM è gestita come un thread dell OS host è possibile interagire con le capacità di virtualizzazione di KVM mediante libvirt una API comune per Linux per gestire e controllare VM in modo sicuro e anche remoto 52

27 - VMware VMware è una società (sussidiaria di EMC) con una ricca offerta di tecnologie per la virtualizzazione per piccole, medie e grandi aziende, che comprende prodotti per la virtualizzazione di singoli computer come gli hypervisor di tipo 2 VMware Workstation e Fusion (Pro e Player) prodotti per la virtualizzazione dei data center e di gestione del cloud come vsphere (un hypervisor di tipo 1) e vcloud Suite (comprende funzioni per la disponibilità, l automazione e la gestione di VM, per fornire un cloud privato) prodotti per la virtualizzazione del desktop come Horizon la prima versione di VMware Workstation è stata rilasciata nel 1999, la prima versione di ESX server nel VMware Workstation L architettura di VMware Workstation è basata su tre componenti principali (la figura mostra a sinistra il contesto dell OS host e a destra il contesto dell hypervisor) VMM (virtual machine monitor) è l hosted hypervisor VMX è l interfaccia utente nel sistema host il VMM driver viene installato come driver nell OS host ma in realtà guida il VMM e lo nasconde all OS host 54

28 - VirtualBox Oracle VM VirtualBox è un prodotto di virtualizzazione per sistemi x86 per uso enterprise oppure personale (dal 2007) un hypervisor di tipo 2, per OS host Windows, Linux e Macintosh, e per OS Windows e Linux un progetto open source controllato dalla Oracle supporta numerose tecniche e opzioni di virtualizzazione le VM possono essere create mediante una GUI oppure mediante una interfaccia dalla linea di comando (VBoxManage) le VM possono essere accedute localmente o remotamente un uso comune è quello delle VM pre-costruite per sviluppatori è possibile sperimentare stack software complessi installando solo VirtualBox e scaricando una singola virtual appliance pre-definita 55 * Benefici della virtualizzazione Questa sezione discute brevemente le applicazioni, le funzioni e i benefici della virtualizzazione in particolare, della virtualizzazione di sistema 56

29 - Applicazioni della virtualizzazione La virtualizzazione di sistema ha numerose applicazioni, tra cui server consolidation consolidation desktop (client) virtualization sandboxing ambienti di esecuzione multipli supporto al testing e alla QA 57 Applicazioni della virtualizzazione Un applicazione comune della virtualizzazione è la server consolidation si consideri un organizzazione con un sistema distribuito composto da, ad es., un server web, un server di basi di dati, un server per la posta elettronica, ecc. ciascun server è in esecuzione su un computer (di solito fisico) diverso ci sono buoni motivi per questo ad es., per distribuire il carico, per l affidabilità e la sicurezza ma anche per poter usare un OS o uno stack software differente per ciascun server tuttavia, questa soluzione è costosa e difficile da gestire 58

30 Applicazioni della virtualizzazione Un applicazione comune della virtualizzazione è la server consolidation in alternativa, i server possono essere eseguiti in un singolo computer, fisico ma virtualizzato (server consolidation) ciascun server in una VM diversa i server fisici separati (spesso sottoutilizzati) sono convertiti in VM in un infrastruttura dinamica basata su un pool di risorse computazionali condivise l hypervisor garantisce l isolamento tra le diverse VM l affidabilità dell hardware peggiora ma in ogni caso l esperienza dice che la maggior parte delle interruzioni di servizio sono dovute a guasti software e non hardware questa soluzione porta a un utilizzo maggiore delle risorse, maggiore flessibilità e responsività nonché a risparmi significativi (di equipaggiamento, energia, spazio, di costi di gestione, ) 59 Applicazioni della virtualizzazione Altre applicazioni comuni della virtualizzazione fornire un ambiente di esecuzione a un applicazione legacy ( consolidation) ad es., a seguito della migrazione a una nuova piattaforma hardware/software creare ambienti di esecuzione multipli, ciascuno con il proprio OS e un proprio stack software nonché con una specifica quantità di risorse assegnate per supportare lo sviluppo di sistemi software distribuiti lo sviluppatore può eseguire più VM nel suo PC per supportare il testing e la QA (quality assurance), in ambienti multipli e separati eseguire applicazioni non sicure (sandboxing) compreso il software che si sta sviluppando nel contesto dell hosting di servizi web più in generale, nel contesto del cloud computing 60

31 - Funzioni e benefici della virtualizzazione Esaminiamo ora, astraendo, le diverse modalità principali di virtualizzazione delle risorse, con i relativi benefici con l osservazione che non tutte le tipologie di risorse possono essere virtualizzate nello stesso modo 61 Funzioni e benefici della virtualizzazione Condivisione di risorse virtual resources sharing resources esempi: macchine virtuali, dischi virtuali, partizionamento delle risorse (LPAR), VLAN, benefici: gestione del carico, migliorare l utilizzo delle risorse, flessibilità, isolamento 62

32 Funzioni e benefici della virtualizzazione Aggregazione virtual resources aggregation resources esempi: dischi virtuali, benefici: scalabilità, semplificazione della gestione, protezione dell investimento 63 Emulazione Funzioni e benefici della virtualizzazione virtual resources emulation resources esempi: emulazione del processore o del sistema operativo benefici: compatibilità, interoperabilità, flessibilità, protezione dell investimento 64

33 Funzioni e benefici della virtualizzazione Isolamento (insulation) virtual resources isolation add, replace, or change resources esempi: sostituzione di CPU di riserva, SAN-VC, benefici: disponibilità, flessibilità 65 - Benefici Per concludere, i principali benefici offerti dalla virtualizzazione riduzione dei costi miglioramento delle qualità delle applicazioni disponibilità e tolleranza ai guasti efficienza, agilità, produttività e flessibilità dell IT isolamento e sicurezza estendere la vita delle applicazioni semplificazione della gestione dei datacenter provisioning di risorse e VM semplificato e velocizzato supporto alla scalabilità e all elasticità gestione centralizzata datacenter definito tramite software supporto allo sviluppo, al testing e alla QA ridurre il vendor lock-in e favorire la migrazione al cloud 66

34 * Discussione La virtualizzazione (virtualizzazione di sistema) consente a un singolo computer reale di ospitare più computer (macchine) virtuali ciascuna VM può essere usata per eseguire un proprio sistema operativo e dei propri servizi e applicazioni la virtualizzazione è basata su diverse tecniche, che hanno lo scopo di fornire l accesso a un insieme di risorse computazionali virtuali a partire da un insieme di risorse computazionali fisiche/reali la virtualizzazione di sistema ha numerose applicazioni, e consente diversi benefici in particolare, la virtualizzazione supporta la definizione e la gestione di ambienti di esecuzione virtuali on premise e nel cloud con l obiettivo di ottimizzare l utilizzazione delle risorse hardware, di fornire flessibilità operativa, nonché di isolare tra loro le applicazioni e gli ambienti 67

Virtualizzazione di sistema

Virtualizzazione di sistema Luca Cabibbo Architettura dei Sistemi Software dispensa asw630 marzo 2019 This book is about Xen. It s not about Zen. But if all goes well, this book will make you happy. C. Takemura and L.S. Crawford

Dettagli

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

Virtualizzazione. Tanenbaum, A.S. and Bos, H. Modern Operating Systems, fourth edition. Pearson, Chapter 7, Virtualization and the Cloud Luca Cabibbo Architettura dei Sistemi Software dispensa asw620 marzo 2017 This book is about Xen. It s not about Zen. But if all goes well, this book will make you happy. C. Takemura and L.S. Crawford

Dettagli

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

Virtualizzazione. Tanenbaum, A.S. and Bos, H. Modern Operating Systems, fourth edition. Pearson, Chapter 7, Virtualization and the Cloud Luca Cabibbo Architettura dei Sistemi Software dispensa asw620 marzo 2016 This book is about Xen. It s not about Zen. But if all goes well, this book will make you happy. C. Takemura and L.S. Crawford

Dettagli

LA VIRTUALIZZAZIONE CASE STUDY CAMPUS DI CESENA

LA VIRTUALIZZAZIONE CASE STUDY CAMPUS DI CESENA LA VIRTUALIZZAZIONE CASE STUDY CAMPUS DI CESENA Macchine virtuali Virtualizzazione: Perché Virtualizzazione: Cos è Forme di virtualizzazione Il Polo scientifico-didattico di Cesena Esigenze Scelte Architettura

Dettagli

Tecnologie di virtualizzazione

Tecnologie di virtualizzazione Tecnologie di virtualizzazione Obiettivo: disaccoppiare il comportamento delle risorse hardware e software di un sistema di elaborazione, così come viste dall utente, dalla loro realizzazione fisica. Disaccoppiamento

Dettagli

Contenitori. Subhraveti, D. Containers Beyond the Hype. AppOrbit, 2015.

Contenitori. Subhraveti, D. Containers Beyond the Hype. AppOrbit, 2015. Luca Cabibbo Architettura dei Sistemi Software dispensa asw640 marzo 2017 Containers are much faster to provision than full-fat virtual machines. Sam Newman 1 - Fonti Subhraveti, D. Containers Beyond the

Dettagli

Francesco V. Buccoli Microsoft Student Evangelist

Francesco V. Buccoli Microsoft Student Evangelist Francesco V. Buccoli Microsoft Student Evangelist f.buccoli@academicclub buccoli@academicclub.orgorg Academic Club Metodologie di virtualizzazione Desktop Virtualization Application Virtualization Server

Dettagli

Virtualizzazione e macchine virtuali. Presentata da Bernardo Lombardi

Virtualizzazione e macchine virtuali. Presentata da Bernardo Lombardi Virtualizzazione e macchine virtuali Presentata da Bernardo Lombardi La virtualizzazione Per virtualizzazione, in ambiti informatici, si intende la creazione di una versione virtuale di una risorsa normalmente

Dettagli

Virtualizzazione basata su contenitori

Virtualizzazione basata su contenitori Luca Cabibbo Architettura dei Sistemi Software Virtualizzazione basata su contenitori dispensa asw650 marzo 2018 Containers are much faster to provision than full-fat virtual machines. Sam Newman 1 - Fonti

Dettagli

Linux Virtuale. Virtualizzazione, ovvero?

Linux Virtuale. Virtualizzazione, ovvero? Come si può virtualizzare sotto Linux Micky Del Favero micky@linux.it BLUG - Belluno Linux User Group Linux Day 2007 - Belluno 27 ottobre 2007 p. 1 Virtualizzazione, ovvero? Per virtualizzazione si intende

Dettagli

IBM Corporation

IBM Corporation 1 Che cosa è la virtualizzazione? Risorse virtuali Sostituti per le risorse reali: stesse interfacce /funzioni, differenti attributi. Parte di una risorsa fisica o più risorse fisiche multiple. izzazione

Dettagli

Finalmente un po di PRATICA

Finalmente un po di PRATICA Finalmente un po di PRATICA Cosa andremo a fare (se avremo tempo ): Configuriamo un primo Windows Server 2012 come DC creando la foresta e il Forest Root Domain Configuriamo un secondo Windows Server 2012,

Dettagli

Struttura dei Sistemi Operativi

Struttura dei Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione

Dettagli

Cenni sulla virtualizzazione

Cenni sulla virtualizzazione Cenni sulla virtualizzazione Anno accademico 2015/16 Sistemi Concorrenti e Distribuiti Tullio Vardanega Virtualizzazione Realizzare una vista logica su una risorsa indipendentemente dalla sua vera natura

Dettagli

Cenni sulla virtualizzazione

Cenni sulla virtualizzazione Virtualizzazione Cenni sulla virtualizzazione Anno accademico 2013/14 Sistemi Concorrenti e Distribuiti Tullio Vardanega Realizzare una vista logica su una risorsa indipendentemente dalla sua vera natura

Dettagli

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

Indice generale. Introduzione...xiii. Perché la virtualizzazione...1. Virtualizzazione del desktop: VirtualBox e Player...27 Indice generale Introduzione...xiii A chi è destinato questo libro... xiii Struttura del libro...xiv Capitolo 1 Capitolo 2 Perché la virtualizzazione...1 Il sistema operativo... 1 Caratteristiche generali

Dettagli

Cenni sulla virtualizzazione

Cenni sulla virtualizzazione Astrazione Cenni sulla virtualizzazione Anno accademico 2012/13 Sistemi Concorrenti e Distribuiti Tullio Vardanega Nascondere dettagli dell implementazione per semplificare la vista logica dell utente

Dettagli

Allegato Tecnico BaaS/CBaaS

Allegato Tecnico BaaS/CBaaS Allegato Tecnico BaaS/CBaaS Nota di lettura 1 Descrizione del servizio 1.1 Definizioni e acronimi 1.2 Blade as a Service e Computing Blade as a Service 1.3 Attivazione del servizio Configurazione Network

Dettagli

Provare e installare Linux

Provare e installare Linux Corso di Sistemi Operativi I/II Introduzione a Linux Provare e installare Linux Ruggero Donida Labati Dipartimento di Informatica via Bramante 65, 26013 Crema (CR), Italy http://homes.di.unimi.it/donida

Dettagli

Power Your Business with Windows Server + Intel Technologies

Power Your Business with Windows Server + Intel Technologies Power Your Business with Windows Server + Intel Technologies Il contesto attuale Trend di mercato Transizione verso il Cloud Mobility e BYOD Crescita elevata e sempre più rapida della quantità di dati

Dettagli

2. Cenni di sistemi operativi

2. Cenni di sistemi operativi 2. Cenni di sistemi operativi Andrea Marongiu (andrea.marongiu@unimore.it) Paolo Valente Contiene slides dal corso «Sistemi Operativi» dei prof. Gherardi/Scandurra dell Università degli studi di Bergamo

Dettagli

BACKUP MULTIPIATTAFORMA ON PREMISE, RIMOVIBILE, DECENTRALIZZATO E CLOUD IBRIDIO

BACKUP MULTIPIATTAFORMA ON PREMISE, RIMOVIBILE, DECENTRALIZZATO E CLOUD IBRIDIO STORAGE EVOLUTION BACKUP MULTIPIATTAFORMA ON PREMISE, RIMOVIBILE, DECENTRALIZZATO E CLOUD IBRIDIO Tutti i sistemi sono forniti di una serie di modalità di Backup che permettono di soddisfare ogni esigenza.

Dettagli

Server LDAP. File Server. Domain Controller. Installazione di una piattaforma Linux Alessandro Brusò 24/05/2012

Server LDAP. File Server. Domain Controller. Installazione di una piattaforma Linux Alessandro Brusò 24/05/2012 791522 Alessandro Brusò Installazione di una piattaforma Linux Server LDAP File Server Domain Controller 2 1 1 2 3 Analisi Creazione del server virtuale Installazione e configurazione dei servizi 3 Analisi

Dettagli

Architetture software. Virtualizzazione

Architetture software. Virtualizzazione Sistemi Distribuiti Architetture software 1 Virtualizzazione 2 1 Virtualizzazione (motivazioni) Sullo stesso elaboratore possono essere eseguiti indipendentemente d t e simultaneamente t sistemi i operativi

Dettagli

Introduzione ai thread

Introduzione ai thread Introduzione ai thread Processi leggeri. Immagine di un processo (codice, variabili locali e globali, stack, descrittore). Risorse possedute: : (file aperti, processi figli, dispositivi di I/O..),. L immagine

Dettagli

Perché scegliere la licenza ROK?

Perché scegliere la licenza ROK? Perché scegliere la licenza ROK? $ La licenza più semplice ed economica per molte piccole e medie imprese Il Sistema Operativo e i driver sono testati e ottimizzati per il suo hardware e supportati dall

Dettagli

Piattaforma Computazionale Openstack Cloud

Piattaforma Computazionale Openstack Cloud Piattaforma Computazionale Openstack Cloud computing.cpt@ateneo.univr.it 1 Indice Virtualizzazione Hardware Accesso al servizio Esempi d'uso computing.cpt@ateneo.univr.it Virtualizzazione computing.cpt@ateneo.univr.it

Dettagli

SOFTWARE. Programmi e dati che indicano al computer come svolgere un determinato compito

SOFTWARE. Programmi e dati che indicano al computer come svolgere un determinato compito SOFTWARE MODULO 3 SOFTWARE Programmi e dati che indicano al computer come svolgere un determinato compito Programma: sequenza di istruzioni, scritte in un determinato linguaggio, con le quali si fa eseguire

Dettagli

Mezz ora in amicizia. Ross

Mezz ora in amicizia.   Ross Mezz ora in amicizia www.linuxvar.it Ross Cosa si usa Quando si parla di virtualizzazione in ambito server viene immediato pensare a VMware vsphere, a Hyper-V di Microsoft o a Citrix XenServer, piuttosto

Dettagli

Sistema Operativo (Software di base)

Sistema Operativo (Software di base) Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Dettagli

Sistema operativo. Avere un architettura multi-core è un vantaggio

Sistema operativo. Avere un architettura multi-core è un vantaggio Sistema operativo Software responsabile del controllo e della gestione dei componenti hardware di un computer mediante interfaccia (driver), e della gestione dei vari programmi del computer. I programmi

Dettagli

Il Sistema Operativo

Il Sistema Operativo Il Sistema Operativo Il sistema operativo Con il termine sistema operativo si intende l insieme di programmi e librerie che opera direttamente sulla macchina fisica mascherandone le caratteristiche specifiche

Dettagli

Cenni sulla virtualizzazione

Cenni sulla virtualizzazione 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

Dettagli

Telephony Appliance BNTA 2.0 Guida Rapida per l installazione

Telephony Appliance BNTA 2.0 Guida Rapida per l installazione Telephony Appliance BNTA 2.0 Guida Rapida per l installazione beronet GmbH info@beronet.com +49 30 25 93 89 0 1 Indice Introduzione... 3 1) beronet Hypervisor... 3 A. Come accedere l Hypervisor... 3 B.

Dettagli

Prestazioni e affidabilità dei dischi

Prestazioni e affidabilità dei dischi Prestazioni e affidabilità dei dischi le prestazioni (velocità) di un singolo disco sono limitate dalla tecnologia usata, - per aumentare le prestazioni si può pensare di far operare in parallelo più dischi:

Dettagli

Il Sistema Operativo

Il Sistema Operativo Corso di Alfabetizzazione Informatica 2003/2004 Il Sistema Operativo Modello di von Neumann Bus di sistema CPU Memoria Centrale Memoria di Massa Interfaccia Periferica 1 Interfaccia Periferica 2 Il computer

Dettagli

Sistema operativo & file system 1

Sistema operativo & file system 1 Il software (sw) Software di sistema e file system Lezione 1b L esecuzione di programmi è lo scopo di un elaboratore I programmi sono algoritmi codificati in un particolare linguaggio di programmazione

Dettagli

Allegato Tecnico BaaS/CBaaS

Allegato Tecnico BaaS/CBaaS Allegato Tecnico BaaS/CBaaS Nota di lettura 1 Descrizione del servizio 1.1 Definizioni e acronimi 1.2 Blade as a Service e Computing Blade as a Service 1.3 Attivazione del servizio Configurazione Network

Dettagli

Laboratorio virtuale

Laboratorio virtuale Laboratorio virtuale Mattia Lambertini Dipartimento di Scienze dell Informazione Università di Bologna mattia.lambertini2@unibo.it 22 maggio 2012 Mattia Lambertini (UNIBO) Laboratorio virtuale 22 maggio

Dettagli

Cenni sulla virtualizzazione

Cenni sulla virtualizzazione Cenni sulla virtualizzazione Anno accademico 2018/19 Sistemi Concorrenti e Distribuiti Tullio Vardanega Virtualizzazione Garantire una vista logica su una risorsa indipendentemente dalla sua reale natura

Dettagli

Virtualizzazione. Orazio Battaglia

Virtualizzazione. Orazio Battaglia Virtualizzazione Orazio Battaglia Definizione di virtualizzazione In informatica il termine virtualizzazione si riferisce alla possibilità di astrarre le componenti hardware, cioè fisiche, degli elaboratori

Dettagli

Sistema Operativo. (hardware e software) della della macchina

Sistema Operativo. (hardware e software) della della macchina Sistema Operativo Senza Sistema Operativo (SO) un computer è solo un macchinario inutile... Il SO rende possibile la gestione, elaborazione e immagazinamento dell informazione. Il Il SO SO è il il software

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T5 B1-Programmazione multithreading 1 Prerequisiti Schedulazione Attesa indefinita Lo stallo Tecnica round-robin 2 1 Introduzione La programmazione concorrente consente di chiedere

Dettagli

Sistemi operativi. Fondamenti di Informatica

Sistemi operativi. Fondamenti di Informatica Sistemi operativi Fondamenti di Informatica Scratch https://scratch.mit.edu/studios/3840177/ Software ed Hardware Software Hardware Kernel Software Kernel Hardware Sistema operativo Processi: un programma

Dettagli

Elenco sezioni libro di testo Ed. 5 Tra parentesi le corrispondenze per l'ed. 7.

Elenco sezioni libro di testo Ed. 5 Tra parentesi le corrispondenze per l'ed. 7. Elenco sezioni libro di testo Ed. 5 Tra parentesi le corrispondenze per l'ed. 7. Modulo 1 - Architettura del calcolatore Unità 1 - Architettura e funzionamento dei sistemi di elaborazione Lezione 1 - Macchina

Dettagli

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

ANALISI DELLE TECNOLOGIE INTEL-VT E AMD-V A SUPPORTO DELLA VIRTUALIZZAZIONE DELL'HARDWARE Tesi di laurea ANALISI DELLE TECNOLOGIE INTEL-VT E AMD-V A SUPPORTO DELLA VIRTUALIZZAZIONE DELL'HARDWARE Anno Accademico 2010/2011 Relatore Ch.mo prof. Marcello Cinque Candidato Guido Borriello Matr. 528/1336

Dettagli

Capire Networking virtuale in VMware Workstation 9. Introduzione alle reti virtuali in VMware Workstation

Capire Networking virtuale in VMware Workstation 9. Introduzione alle reti virtuali in VMware Workstation Capire Networking virtuale in VMware Workstation 9 In questo articolo vedremo come funziona la rete virtuale in VMware Workstation e novità relative al networking virtuale in Workstation versione 9. Introduzione

Dettagli

Tecniche di virtualizzazione di processori Intel-AMD. Gianluca Guida

Tecniche di virtualizzazione di processori Intel-AMD. Gianluca Guida Tecniche di virtualizzazione di processori Intel-AMD Gianluca Guida Copyright (c) 2006 Gianluca Guida Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free

Dettagli

Le reti rete La telematica telematica tele matica Aspetti evolutivi delle reti Modello con mainframe terminali Definizione di rete di computer rete

Le reti rete La telematica telematica tele matica Aspetti evolutivi delle reti Modello con mainframe terminali Definizione di rete di computer rete Reti e comunicazione Le reti Con il termine rete si fa riferimento, in generale ai servizi che si ottengono dall integrazione tra tecnologie delle telecomunicazioni e le tecnologie dell informatica. La

Dettagli

La rinomata azienda di caratura mondiale QNAP è molto lieta di poter annunciare la disponibilità dei nuovi modelli

La rinomata azienda di caratura mondiale QNAP è molto lieta di poter annunciare la disponibilità dei nuovi modelli La rinomata azienda di caratura mondiale QNAP è molto lieta di poter annunciare la disponibilità dei nuovi modelli Turbo NAS serie TS-x53 Pro in formato tower (da 2,4, 6 e 8 dischi) e SS-x53 Pro con supporto

Dettagli

Setup dell ambiente virtuale

Setup dell ambiente virtuale Setup dell ambiente virtuale 1.1 L immagine per le macchine virtuali Il file sicureti.iso è l immagine ISO di una distribuzione live di Linux (basata Debian Stretch, ottenuta con live-build, http://live.debian.net).

Dettagli

Il Sistema Operativo. Informatica Sistema Operativo 1

Il Sistema Operativo. Informatica Sistema Operativo 1 Il Sistema Operativo Informatica Sistema Operativo 1 O.S.:.: un intermediario SW Applicativo Sistema Operativo HW Informatica Sistema Operativo 2 O.S. vs applicativi Applicativi accesso a un insieme ridotto

Dettagli

Laboratorio di Informatica. Il Sistema Operativo. Il Sistema Operativo 1

Laboratorio di Informatica. Il Sistema Operativo. Il Sistema Operativo 1 Corso di Laboratorio di Informatica 1 Contenuti L architettura a strati di un calcolatore I compiti del sistema operativo L esecuzione delle applicazioni Cos è il Sistema Operativo? Un programma che gestisce

Dettagli

SISTEMI OPERATIVI THREAD. Giorgio Giacinto Sistemi Operativi

SISTEMI OPERATIVI THREAD. Giorgio Giacinto Sistemi Operativi SISTEMI OPERATIVI THREAD 2 Motivazioni» Un programma complesso può eseguire in modo concorrente più funzioni attraverso la creazione e gestione di processi figli attraverso il meccanismo dei thread» La

Dettagli

IL SOFTWARE DI SISTEMA

IL SOFTWARE DI SISTEMA Software (sw) L esecuzione di programmi è lo scopo di un elaboratore L insieme dei programmi che un elaboratore può eseguire rappresenta il software in dotazione all elaboratore IL SOFTWARE DI SISTEMA

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T1 2-I moduli del SO 1 Prerequisiti Uso pratico elementare di un sistema operativo Concetto di macchina virtuale 2 1 Introduzione Un SO è composto da vari moduli e varie macchine

Dettagli

Macchine Virtuali. Docente: Fabio Tordini Email: tordini@di.unito.it

Macchine Virtuali. Docente: Fabio Tordini Email: tordini@di.unito.it Macchine Virtuali Docente: Fabio Tordini Email: tordini@di.unito.it Macchine Virtuali macchine virtuali e virtualizzazione introduzione architettura utilizzi VirtualBox installazione e panoramica (interattivo)

Dettagli

Gestione dei Processi

Gestione dei Processi Gestione dei Processi Informatica B Che cosa è un processo per il SO? Processo programma! Rappresenta un istanza di un programma composta da: codice eseguibile (il programma stesso) dati del programma

Dettagli

Creazione macchina virtuale con WMware Player

Creazione macchina virtuale con WMware Player Creazione macchina virtuale con WMware Player Con il motore di virtualizzazione VMware Player sono supportati tutti i modelli di chiavi USB di abilitazione dei nostri programmi: Eutron Smartkey USB Eutron

Dettagli

Una metodologia per la specifica di software a componenti

Una metodologia per la specifica di software a componenti Luca Cabibbo Architettura dei Sistemi Software Una metodologia per la specifica di software a componenti dispensa asw475 marzo 2019 How best to read this book. Start at page 1 and keep going. When you

Dettagli

Il cloud server, affidabile senza rinunciare a flessibilità e velocità

Il cloud server, affidabile senza rinunciare a flessibilità e velocità Il cloud server, affidabile senza rinunciare a flessibilità e velocità Attraverso l'offerta strutturata Stellar Server Cloud, CoreTech mette a disposizione di system integrator, software house e web agency

Dettagli

Sistemi Di Elaborazione Dell informazione

Sistemi Di Elaborazione Dell informazione Sistemi Di Elaborazione Dell informazione Dott. Antonio Calanducci Lezione II: Software Corso di Laurea in Scienze della Comunicazione Anno accademico 2009/2010 Tipi di software Software di sistema (o

Dettagli

memoria virtuale protezione

memoria virtuale protezione Memoria Virtuale Le memorie cache forniscono un accesso veloce ai blocchi di memoria usati più di recente La memoria virtuale fornisce un accesso veloce ai dati sulle memorie di massa usati più di recente.

Dettagli

WP5. 9 Settembre Paolo Veronesi (INFN CNAF)

WP5. 9 Settembre Paolo Veronesi (INFN CNAF) WP5 9 Settembre 2014 Paolo Veronesi (INFN CNAF) Sommario OpenStack e AAI INFN, l esperienza di Padova Come creare immagini per OpenStack (e non solo) Pianificare incontro con sviluppatori 2 OpenStack e

Dettagli

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

Virtualizzazione con KVM. Reggio Emilia - Linux Day 2014 Stefano Strozzi KVM Virtualizzazione con KVM Considerazioni Legge di Gordon Moore (co-fondatore di Intel): «Le prestazioni dei processori, e il numero di transistor ad esso relativo, raddoppiano ogni 18 mesi.» http://it.wikipedia.org/wiki/legge_di_moore

Dettagli

Securshop Real Time DNS

Securshop Real Time DNS Manuale di configurazione del singolo host per la notifica di cambio indirizzo IP.Varianti per la configurazione di DVR, Router o sistemi Windows. Securshop Real Time DNS Dynamic DNS: Manuale di configurazione

Dettagli

Sistema operativo (SO)

Sistema operativo (SO) Diagramma a cipolla Sistema operativo (SO) Il calcolatore elabora informazioni codificate in sequenza di bit I dispositivi si interfacciano con il calcolatore tramite complessi protocolli di comunicazione

Dettagli

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

Sistemi Operativi. A.M. Fanelli Architettura dei Sistemi a. a Livello di Sistema Operativo. Livello di Linguaggi Applicativi Sistemi Operativi A.M. Fanelli Architettura dei Sistemi a. a. 2008-09 1 Livello di Sistema Operativo Livello di Linguaggi Applicativi Livello di Linguaggio Assembly Livello di Sistema Operativo Livello

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 4 Giovedì 20-10-2016 Struttura e organizzazione software dei sistemi

Dettagli

Virtualizzazione con OpenVZ

Virtualizzazione con OpenVZ Workshop CCR Dicembre 2008 Stefano Stalio Laboratori Nazionali del Gran Sasso stefano.stalio@lngs.infn.it Da wikipedia: OpenVZ is an operating system level virtualization technology based on the Linux

Dettagli

Introduzione ai. Sistemi Distribuiti

Introduzione ai. Sistemi Distribuiti Introduzione ai Sistemi Distribuiti Definizione di Sistema Distribuito (1) Un sistema distribuito è: Una collezione di computer indipendenti che appaiono agli utente come un sistema singolo coerente. 1

Dettagli

Introduzione ai. Sistemi Distribuiti

Introduzione ai. Sistemi Distribuiti Introduzione ai Sistemi Distribuiti Definizione di Sistema Distribuito (1) Un sistema distribuito è: Una collezione di computer indipendenti che appaiono agli utenti come un sistema singolo coerente. Definizione

Dettagli

Virtualizzazione. Inaf ICT Workshop Trieste, 15 novembre Spring Firm srl Via Parini 17 Trieste

Virtualizzazione. Inaf ICT Workshop Trieste, 15 novembre Spring Firm srl Via Parini 17 Trieste Virtualizzazione Spring Firm srl Via Parini 17 Trieste www.springfirm.it SymtechIT srl Via Nazionale 39 Trieste www.symtech.it Inaf ICT Workshop Trieste, 15 novembre 2016 Virtualizzazione Parte I ore 9.00

Dettagli

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

Dr. Andrea Niri aka AndydnA ANDYDNA.NET S.r.l. Virtual Machines Virtual BOX, Xen, KVM & C. Dr. Andrea Niri aka AndydnA ANDYDNA.NET S.r.l. 1 Che cosa è la virtualizzazione? In informatica la virtualizzazione x86 consiste nella creazione di una versione

Dettagli

LA VIRTUALIZZAZIONE E I SUOI ASPETTI DI SICUREZZA

LA VIRTUALIZZAZIONE E I SUOI ASPETTI DI SICUREZZA LA VIRTUALIZZAZIONE E I SUOI ASPETTI DI SICUREZZA Il testo è stato redatto da: Sergio Sagliocco SECURELAB CSP Innovazione nelle ICT Diego Feruglio CSI-Piemonte Gianluca Ramunno Politecnico di Torino Si

Dettagli

MySQL Server e Workbench.

MySQL Server e Workbench. MySQL Server e Workbench foglia@iet.unipi.it MySQL MySQL o Oracle MySQL è un Relational database management system (RDBMS) Multisessione Multiutente MySQL viene sviluppato e gestito come software open-source,

Dettagli

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

Dettagli

Il software: Istruzioni per il computer

Il software: Istruzioni per il computer Il software: Istruzioni per il computer Software applicativo aiuta a svolgere operazioni utili in vari campi programmi di videoscrittura, fogli elettronici, videogiochi Software di sistema permette l utilizzo

Dettagli

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

AXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli

Dettagli

Sistemi Operativi: Concetti Introduttivi

Sistemi Operativi: Concetti Introduttivi Sistemi Operativi: Concetti Introduttivi 1.1 Principali funzioni di un Sistema Operativo 1.2 Cenni Storici 1.3 Classificazione dei Sistemi Operativi 1.4 Struttura dei Sistemi Operativi 1.5 Processi e gestione

Dettagli

Il software: Istruzioni per il computer

Il software: Istruzioni per il computer Il software: Istruzioni per il computer Software applicativo aiuta a svolgere operazioni utili in vari campi programmi di videoscrittura, fogli elettronici, videogiochi Software di sistema permette l utilizzo

Dettagli

VM Explorer 6.3: backup per VM con vsphere e Hyper-V

VM Explorer 6.3: backup per VM con vsphere e Hyper-V VM Explorer 6.3: backup per VM con vsphere e Hyper-V VM Explorer è un prodotto di backup in ambienti virtuali sviluppato da Trilead, software house svizzera recentemente acquistata dal colosso del settore

Dettagli

Piattaforme software distribuite I

Piattaforme software distribuite I Piattaforme software distribuite I Introduzione a Java 2 Platform Enterprise Edition (J2EE) Davide Lamanna lamanna@dis.uniroma1.it Programma Architetture per le applicazioni web Carrellata di ripasso Valutazione

Dettagli

Il Sistema Operativo Ripasso

Il Sistema Operativo Ripasso ISTITUTO TECNICO SECONDO BIENNIO GIORGIO PORCU www.thegiorgio.it Sommario Concetti di base Sistema Operativo Risorse Funzioni e Struttura Bootstrap, Kernel, Shell Gestione dei Processi Processo e PCB Algoritmi

Dettagli

Macchine Virtuali in pratica

Macchine Virtuali in pratica Macchine Virtuali in pratica L o Autore Leonardo Paschino 1 Eseguire software non nativo Simulazione riscrittura, in tutto o in parte, delle routine del programma da simulare, in modo da renderlo comprensibile

Dettagli

Virtualizzazione e Macchine Virtuali

Virtualizzazione e Macchine Virtuali Virtualizzazione e Macchine Virtuali Gabriele D Angelo, Ludovico Gardenghi {gda, garden}@cs.unibo.it http://www.cs.unibo.it/~gdangelo/ http://www.cs.unibo.it/~gardengl/ Università di Bologna Corso di Laurea

Dettagli

Laboratorio di Informatica (Chimica)

Laboratorio di Informatica (Chimica) Laboratorio di Informatica (Chimica) Lezione 01: Architettura del Computer. Walter Cazzola Dipartimento di Informatica e Comunicazione Università à degli Studi di Milano. e-mail: cazzola@dico.unimi.it

Dettagli

OpenStack. Gestione Immagini Virtuali. Marco Caberletti. Formazione MCloud WP1 Ancona Marzo 2013

OpenStack. Gestione Immagini Virtuali. Marco Caberletti. Formazione MCloud WP1 Ancona Marzo 2013 OpenStack Gestione Immagini Virtuali Marco Caberletti Formazione MCloud WP1 Ancona 18-19 Marzo 2013 Indice Concetti Generali Creazione Immagine Linux Creazione Immagine Windows Porting immagine da WMware

Dettagli

TRATTATIVA PRIVATA PER LA FORNITURA DI UNA PIATTAFORMA IT MODULARE DI VIRTUALIZZAZIONE A SERVIZIO DEI LABORATORI PROM FACILITY CODICE CIG

TRATTATIVA PRIVATA PER LA FORNITURA DI UNA PIATTAFORMA IT MODULARE DI VIRTUALIZZAZIONE A SERVIZIO DEI LABORATORI PROM FACILITY CODICE CIG TRATTATIVA PRIVATA PER LA FORNITURA DI UNA PIATTAFORMA IT MODULARE DI VIRTUALIZZAZIONE A SERVIZIO DEI LABORATORI PROM FACILITY CODICE CIG 7316772742 CAPITOLATO TECNICO CAPITOLATO TECNICO 1 Art. 1. Premessa

Dettagli

ICG Holding presenta: PI Ufficio del futuro. 01/04/2011 PI Human Resources

ICG Holding presenta: PI Ufficio del futuro. 01/04/2011 PI Human Resources ICG Holding presenta: PI Ufficio del futuro 01/04/2011 PI Human Resources 2010 1 Caratteristiche tecniche Sistemi server supportati: Windows XP, Windows 2003, Windows 2008 Database SQL servers: Microsoft

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica Il software (sw) Software di sistema e file system Lezione 3 L esecuzione di programmi è lo scopo di un elaboratore I programmi sono algoritmi codificati in un particolare linguaggio di programmazione

Dettagli

Manuale Utente Impostazione router Tele-assistenza

Manuale Utente Impostazione router Tele-assistenza Manuale Utente Impostazione router Tele-assistenza Sommario Indice Tabelle... 3 Indice Figure... 4 1. Rappresentazione struttura base LAN... 5 2. Accesso al PLC da remoto... 5 2.1 Configurazione Modem/Router

Dettagli

Marco Tarini - Università dell'insubria A.A. 2016/17. Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate

Marco Tarini - Università dell'insubria A.A. 2016/17. Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Astrazione e Macchine Virtuali parte 2: in un tipico calcolatore I livelli nei moderni calcolatori 6. Livello delle applicazioni

Dettagli

Colla MGC Guida all installazione

Colla MGC Guida all installazione Colla MGC Guida all installazione C o l l a M G C V i a B a r i, 1 8 1 7 0 0 2 2 A l t a m u r a ( B A ) Guida all installazione di un MySQL Galera Cluster su nodi hardware o macchine virtuali utilizzando

Dettagli