Virtualization Benchmarking

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Virtualization Benchmarking"

Transcript

1 Università degli Studi di Salerno Laurea Magistrale in Informatica Corso di Sistemi Operativi II Virtualization Benchmarking Professore Giuseppe Cattaneo Studenti Ada Mancuso Francesco Raia Carmine Spagnuolo Anno Accademico

2 Chapter 1 Abstract La tecnologia di virtualizzazione venne sviluppata per la prima volta negli anni 60 per partizionare l hardware dei mainframe di grandi dimensioni e ottimizzarne l utilizzo. Gli attuali computer basati sull architettura x86 ripropongono gli stessi problemi di rigidità e sottoutilizzo che caratterizzavano i mainframe negli anni 60. Per risolvere le innumerevoli problematiche associate alla piattaforma x86, tra cui il sottoutilizzo delle risorse, negli anni 90 VMware ha inventato la Full Virtualization, affrontando molti ostacoli e diventando leader mondiale nel campo della virtualizzazione Enterprise al fianco di Xen Hypervisor, che invece risolve differentemente i problemi legati alla virtualizzazione introducendo un nuovo approccio, la Paravirtualization. Dopo aver descritto in maniera coincisa ed esauriente le due tecniche e le differenze che intercorrono tra esse, il nostro lavoro mira a misurare e confrontare le performance dei due hypervisor sulla base di un lavoro precedentemente effettuato su Xen Hypervisor e VMware Workstation. Più precisamente i test saranno effettuati su una singola macchina configurata in tre differenti modi: VMware ESXi 3.5 che esegue CentOs 6.1 XEN 4.1 Hypervisor hosted su Ubuntu Server 12.4 che esegue CentOs 6.1 VMware Player hosted su Ubuntu Server 12.4 che esegue CentOs 6.1 i

3 CHAPTER 1. ABSTRACT ii Grazie a questi test verrà effettuato il confronto fra tre tecniche di virtualizzazione, rispettivamente Full Virtualization, Paravirtualization, e Hosted Full Virtualization. Nel seguito di questo lavoro verrano spiegate le tecniche e le problematiche legate ad ognuna di essa. La configurazione hardware scelta mira a valutare i sistemi di virtualizzazione in uno scenario quanto più reale possibile, come ad esempio la consolidazione di più server di una piccola azienda in un unico server per motivazioni legate al risparmio energetico. L omogeneità dell hardware ospitante e della macchina virtuale ospitata ci garantiscono che i risultati dei test dipendano unicamente dalle performance degli hypervisor, scopo del nostro lavoro.

4 Contents 1 Abstract i 2 Introduzione Inquadramento Storico Motivazioni Vantaggi e Svantaggi Vantaggi Svantaggi Tassonomia Terminologia Sfide della virtualizzazione Virtualizzazione della CPU Hardware-assisted Virtualization Problemi legati alla virtualizzazione software-only Intel Virtualization Technology (Intel VT) AMD Virtualization Technology (AMD-V) Full Virtualization e VMware Introduzione Full Virtualization Virtualizzazione della CPU Virtualizzazione della memoria Virtualizzazione dei dispositivi di I/O VMware vsphere ESX e ESXi VMware Player iii

5 CONTENTS 1 4 Para Virtualization e Xen Introduzione La Filosofia di Xen L architettura di Xen Domain 0(privileged) Domain U(nprivileged) Configurazioni dell hypervisor Comunicazione tra domini Gestione della Memoria Flusso di Gestione Split Driver Monitor: I/O RIngs Virtualizzazione della CPU Virtual Machine Scheduling Testing Hardware Installazione VMware ESXi Installazione Xen 4.1, Ubuntu hosted Installazione VMware Player,Ubuntu hosted Test Roy Longbottom s PC Benchmark Risultati Relative Performance Cuncurrent Performance Conclusioni 115 Bibliografia 119

6 Chapter 2 Introduzione In informatica il termine virtualizzazione si riferisce all astrazione di risorse computazionali. Lo scopo della virtualizzazione è migliorare l utilizzo delle risorse, fornendo una piattaforma integrata ed unificata per utenti e applicazioni caratterizzata dall aggregazione di risorse autonome ed eterogenee [1]. In sintesi gli obiettivi della virtualizzazione di risorse sono: Astrazione Semplificare le risorse virtualizzate rimuovendone i dettagli Replica Creare istanze multiple di una risorsa per semplificarne la gestione o l allocazione Isolamento Separare l utilizzo delle risorse da parte dei client La virtualizzazione al giorno d oggi è ovunque, basti pensare a software come la Java Virtual Machine (JVM), ai sistemi di storage di rete che offrono all utente uno spazio logico mappato su un insieme di dispositivi di memorizzazione eterogenei, o ai meccanismi di memoria virtuale che utilizzano tutti i sistemi operativi per avvalersi di uno spazio di memoria centrale maggiore di quello fisicamente disponibile utilizzando spazio di memoria secondario; tutte queste applicazioni hanno un fattore comune, semplificare l utilizzo delle risorse, creare astrazione, e migliorarne l utilizzo. Parlare di virtualizzazione in generale è troppo dispersivo, per cui nel seguito del capitolo verrà mostrata una tassonomia e verrano approfonditi i rami dell albero tassonomico che risultano utili alla comprensione del nostro lavoro. 2

7 CHAPTER 2. INTRODUZIONE Inquadramento Storico La virtualizzazione venne implementata per la prima volta da IBM con System/360 Model 67 (S/360-67) negli anni 60 come metodo per partizionare in maniera logica i computer mainframe in macchine virtuali separate; grazie a ciò i mainframe erano in grado di implementare il multitasking. Poiché i mainframe all epoca erano risorse costose, il loro partizionamento rappresentava un modo per valorizzare l investimento. Negli anni 70 notiamo il diffondersi di questa tecnologia; di particolare rilievo è CP/CMS (Control Program/Cambridge Monitor System), un sistema operativo time-sharing, allora sinonimo di virtualizzazione e Open- VMS (Open Virtual Memory System), un sistema operativo multiuser, multiprocessing, basato su virtual memory, progettato per l utilizzo in time-sharing, processi batch e transazioni real-time. La virtualizzazione venne accantonata negli anni 80 e 90 quando le applicazioni client-server e gli economici server e desktop x86 hanno dato vita all elaborazione distribuita. L ampia diffusione di Windows e la nascita di Linux come sistemi operativi server fecero sì che negli anni 90 i sistemi x86 si imponessero come standard di settore. L adozione sempre più vasta e articolata di server e desktop x86 ha comportato nuove sfide operative e infrastrutturali per i reparti IT, tra cui: Bassi livelli di utilizzo dell infrastruttura: secondo quanto riportato dalla società di indagini di mercato IDC (International Data Corporation) i server x86 sono utilizzati in media soltanto al 10-15% della loro capacità complessiva. Per evitare che eventuali problemi di sicurezza di un applicazione influiscano sulla disponibilità di un altra nello stesso server, le aziende di norma eseguono una sola applicazione per server. Aumento dei costi dell infrastruttura fisica: i costi operativi per il supporto di un infrastruttura fisica in continua crescita sono notevolmente aumentati. La maggioranza delle infrastrutture di elaborazione deve rimanere sempre operativa, pertanto i costi di alimentazione, di raffreddamento e di impianto non variano in rapporto ai livelli di utilizzo. Aumento dei costi di gestione IT: il grado di formazione ed esperienza specialistica del personale incaricato della gestione infrastrutturale e i costi ad esso associati sono aumentati progressivamente con l incremento

8 CHAPTER 2. INTRODUZIONE 4 della complessità degli ambienti informatici. Le organizzazioni impiegano una quantità sproporzionata di risorse e tempo per attività manuali correlate alla manutenzione dei server e pertanto necessitano di più personale per il completamento di queste attività. Failover e disaster recovery insufficienti: le organizzazioni sono sempre più penalizzate dai tempi di inattività delle applicazioni server missioncritical e dall inaccessibilità dei desktop importanti. La minaccia di attacchi alla sicurezza, disastri naturali, pandemie e terrorismo ha accresciuto l importanza di una corretta pianificazione della business continuity, sia per i server che per i desktop aziendali. Manutenzione impegnativa dei desktop degli utenti finali: la gestione e la protezione dei desktop aziendali presenta non pochi problemi. Il controllo di un ambiente desktop distribuito e l applicazione di criteri di gestione, accesso e sicurezza che non compromettano l efficienza operativa degli utenti sono attività complesse e costose. Per eliminare i rischi per la sicurezza, è necessario installare costantemente patch e upgrade negli ambienti desktop. Nel 1985 l AT&T 6300 annunncia Simultask e successivamente Merge, un monitor di macchina virtuale sviluppato da Computing Corporation Locus, che permettava l esecuzione di un sistema operativo Intel 8086 guest, sotto un host con sistema operativo Unix System V Release 2. Anche se il prodotto è stato commercializzato con Microsoft MS-DOS come sistema operativo ospitato, effettivamente la macchina virtuale poteva ospitare qualsiasi sistema operativo o software standalone scritto per architetture Successivamente Locus ha sviluppato una linea di prodotti del genere chiamata Merge. Nel 1997 è stata rilasciata la prima versione di Virtual PC per Macintosh, sviluppata da Connectix, mentre nel 2001 è stata rilasciata la prima release per sistemi Windows; i sistemi operativi ospitati erano Windows, OS/2, Red Hat Linux. Non appena è diventata chiara l importanza della virtualizzazione nel mercato enterprise, Microsoft acquistò Virtual PC e Virtual Server nel 2003: questi prodotti sono ora conosciuti come Windows Virtual PC. Nel 1999, VMware ha introdotto la virtualizzazione nei sistemi x86 allo scopo di risolvere efficacemente molte delle problematiche prima citate e trasformare i sistemi x86 in un infrastruttura hardware generica e condivisa che

9 CHAPTER 2. INTRODUZIONE 5 garantisse la mobilità, il completo isolamento e la libertà di scegliere il sistema operativo degli ambienti applicativi. Sfide e ostacoli della virtualizzazione dei sistemi x86 Diversamente dai mainframe, le macchine x86 non sono progettate per il supporto completo della virtualizzazione e VMware ha dovuto superare notevoli ostacoli per riuscire a creare macchine virtuali dai computer x86. La funzione fondamentale della maggior parte delle CPU nei mainframe e nei computer è costituita dall esecuzione di una sequenza di istruzioni memorizzate (ad esempio, un programma software). Nei processori x86, sono presenti 17 istruzioni specifiche che creano problemi nel momento in cui vengono virtualizzate provocando la visualizzazione di un avviso, la chiusura dell applicazione o addirittura l arresto del sistema. Di conseguenza, queste 17 istruzioni costituivano inizialmente un grosso ostacolo all implementazione della virtualizzazione nei computer x86. Per gestire le istruzioni problematiche nell architettura x86, VMware ha sviluppato una tecnica di virtualizzazione adattiva che blocca tali istruzioni nel momento in cui vengono generate e le converte in istruzioni virtualizzabili, senza intervenire sull esecuzione di tutte le altre istruzioni sicure. Come risultato, viene creata una macchina virtuale ad elevate prestazioni che corrisponde esattamente all hardware host e che mantiene la totale compatibilità software. Grazie all utilizzo pionieristico di questa tecnica, oggi VMware è il leader indiscusso nelle tecnologie di virtualizzazione. In concomitanza con VMware, negli anni 2000 FreeBSD 4.0 viene rilasciato, includendo l implementazione inziale di FreeBSD jails, e IBM annuncia z/vm per macchine virtuali a 64 bit con architettura z/architecture. E il 2001 quando VMware crea il primo software di virtualizzazione di server x86. Nel 2003 si ha la prima release del primo hypervisor open-source x86 XEN. Attualmente la comunità di XEN ha all attivo 250 contribuenti tra cui IBM, HP, Intel, VA Linux, AMD, Red Hat, Novell, Fujitsu, Bull, SGI,.... Nel 2005 VMware rilascia VMware Player free, allo scopo di consentire al mercato di massa di eseguire macchine virtuali preconfezionate, mentre la Sun rilascia il sistema operativo Solaris 10, includendo Solaris Zones, per virtualizzare sistemi x86/x64 e SPARC. Nel 2006, dopo l acquisizione da parte di EMC di VMware, viene rilasci-

10 CHAPTER 2. INTRODUZIONE 6 ato VMware Server, successore della linea di prodotti GSX Server. VMware Server può creare, editare ed eseguire macchine virtuali. E caratterizzato da un architettura client/server e consente di effettuare l accesso remoto alle macchine virtuali; inoltre può eseguire le macchine virtuali create da Microsoft Virtual PC. VMware distribuisce questo prodotto in licenza free per promuovere la transizione a VMware ESX Server. Nello stesso anno VMware è vincitore del Virtualization Appliance Contest e Microsoft Virtual PC 2006 è rilasciato in licenza free. Nel 2007 viene rilasciato VirtualBox Open Source Edition (OSE), il primo virtualizzatore professionale per PC sotto licenza GNU. Nel 2008 VMware rilascia VMware Workstation 6.5b, il primo hypervisor capace di abilitare le DirectX 9 su una macchina virtuale Windows XP. 2.2 Motivazioni Le motivazioni che hanno portato alla nascita della virtualizzazione vanno sicuramente ricercate nella storia. Principalmente vi era la necessità, da parte dei possessori di grandi centri di calcolo, allora mainframe, di utilizzare efficientemente le risorse a disposizione. Attualmente però esistono molteplici motivi che spingono ad utilizzare la virtualizzazione. Prima di elencare le motivazioni è necessario innanzitutto effettuare una distinzione fra virtualizzazone in ambiente desktop e virtualizzazione in ambiente enterprise o più semplicemente virtualizzazione di server. Desktop Virtualization La virtualizzazione di desktop è un implementazione software di una piattaforma, consistente di CPU, memoria, dispositivi di I/O virtualizzati, che viene eseguita al di sopra di un sistema operativo come un applicazione utente. Gli scopi di questa virtualizzazione sono certamente l altissima portabilità, poichè tali macchine virtuali (VM) sono dei file che possono essere eseguiti su qualsiasi macchina avvalendosi di un virtualizzatore, e la risoluzione di problemi di compatibilità: ad esempio se si ha la necessità di utilizzare un applicazione non compatibile con il sistema operativo usato si installa una VM compatibile con l applicazione e senza sforzi si esegue l applicazione contemporaneamente all esecuzione del sistema operativo. E chiaro quindi che lo scopo di tali software non è tanto garantire un efficiente utilizzo delle risorse quanto risolvere problemi di compatibilità.

11 CHAPTER 2. INTRODUZIONE 7 Server Virtualization La virtualizzazione dei server, come visto in precedenza, nasce fin dagli anni 60 dalla necessità di utilizzare efficacemente le risorse dei grossi calcolatori a disposizione nei centri di calcolo. Grazie a un layer software chiamato hypervisor che compete sulle risorse hardware del server, è possibile suddividere la macchina fisica in molteplici VMs, eseguirle concorrentemente ed utilizzarle per fornire servizi. 2.3 Vantaggi e Svantaggi Vantaggi Flessibilità: è possibile eseguire più di un sistema operativo contemporaneamente, migrare VMs da un computer ad un altro, interagire con l hypervisor tramite i comandi pause, play, resume, o modificare le specifiche hardware di una VM Disponibilità: nello scenario della virtualizzazione di server, è possibile spostare dinamicamente o a caldo VMs, in caso di problemi di manutenzione o allo scopo di bilanciare il carico, con un periodo di downitime minimo, generalmente pochi secondi, un tempo impercettibile all utente, e continuare a garantire il servizio Scalabilità: è semplice aggiungere nodi, rimuoverne e spostarne per bilanciare il carico Utilizzo dell hardware: l utilizzo delle risorse a disposizione aumenta visibilmente portando ad un risparmio economico ed energetico in quanto la richiesta di hardware diminuisce sensibilmente Sicurezza: ogni VM è eseguita dall hypervisor in una sandbox. Tale grado di isolamento favorisce l utilizzo delle VMs per il testing di applicazioni e l utilizzo delle stesse in ambito server come singoli workload, garantendo che eventuali falle di sicurezza in una VM non causino danni alle altre VMs Costi: si riducono i costi di hardware, poichè si consolidano i server in un unica infrastruttura governata dall hypervisor che assegna efficientemente le risorse alle VMs, i costi di personale, poichè da una singola postazione è possibile gestire centinaia di VMs, i costi di energia,

12 CHAPTER 2. INTRODUZIONE 8 poichè tali tecnologie di virtualizzazione hanno come principali scopi il risparmio energetico dovuto ad un efficiente utilizzo delle risorse, i costi di spazio,.... Adattabilità al Workload: i cambiamenti del workload possono essere gestiti in maniera adattiva dall infrastruttura grazie alla semplicità con cui si crea, si spegne, si migra una VM all interno dell infrastruttura Bilanciamento del carico: al variare del carico sulle VM si applicano politiche di bilanciamento, ad esempio spostando le macchine meno cariche su un singolo server e lasciando un unica macchina molto carica su un altro server o creando più macchine virtuali per gestire picchi di carico generati dalle richieste ad un servizio Applicazioni Legacy: compatibilità con applicazioni scritte per differenti piattaforme senza la necessità di installare nativamente nuovi sistemi operativi Svantaggi Overhead: è presente un certo overhead legato alla virtualizzazione della CPU, alle tecniche di virtualizzazione della memoria, alla gestione dei dispositivi di I/0 Costi dell infrastruttura: prima di virtualizzare un infrastruttura è necessario valutare bene i costi legati alle licenze dell infrastruttura (nel caso di virtualizzatori commerciali come VMware) e ai sistemi operativi delle macchine virtuali; per una piccola azienda non sempre la virtualizzazione è la scelta migliore, dal punto di vista economico Gestione: prima di virtualizzare è importante progettare l infrastruttura che ospiterà le macchine virtuali; gli hypervisor moderni hanno un numero di funzionalità impressionanti che utilizzate erroneamente possono minare la scalabilità, la sicurezza e anche le performance; anche se il personale si riduce quantitativamente è necessario che sia elevato qualitativamente per un ottimale gestione dell infrastruttura

13 CHAPTER 2. INTRODUZIONE Tassonomia Alla radice dell albero tassonomico che si intende tracciare vi è la virtualizzazione, che a sua volta si suddivide in System-Level e Process-Level. Per System-Level Virtualization si intende l implementazione software di una piattaforma, ossia della CPU, della memoria, dei dispositvi; per Process-Level Virtualization si intende un processo eseguito sul sistema operativo ospitante che astrae i dettagli hardware e implementativi della piattaforma e nasce all avvio del processo e termina quando il processo muore. I software analizzati in questo lavoro si occupano di System-Level Virtualization, più precisamente di Native Virtualization e Hosted Virtualization. Alla prima categoria appartengono i software di virtualizzazione che operano direttamente sull hardware della macchina, senza la presenza di un sistema operativo sottostante, sono dotati di un microkernel e gestiscono le risorse della macchina; alla seconda categoria appartengono i più comuni software di virtualizzazione eseguiti sul sistema operativo sottostante come applicazioni utente. E cruciale delineare la differenza fra due tipologie di software erratamente considerate affini: Emulazione Implementazione software di una macchina, con CPU, memoria, periferiche di I/O con un instruction set differente da quello della macchina ospitante; in sintesi quando si emula una piattaforma si effettuano tre operazioni: read-decode-execute, cioè lettura dell istruzione, decodifica nel set di istruzioni della macchina ospitante ed esecuzione. E un processo che genera molto overhead ma ciò nonostante è ampiamente utilizzato per motivi di compatibilità con vecchie piattaforme e a scopo di sviluppo. Virtualizzazione Implementazione software di una macchina, con CPU, memoria, periferiche di I/O avente un instruction set compatibile con quello della macchina ospitante; ciò non esclude il fatto che ci possa essere overhead legato alla traduzione di particolari istruzioni, e tale overhead è strettamente dipendente dal tipo di tecnica di virtualizzazione che si utilizza. 2.5 Terminologia A seguire vi è la terminologia utilizzata d ora in avanti.

14 CHAPTER 2. INTRODUZIONE 10 Macchina Virtuale (VM) Insieme di componenti hardware e periferiche implementate via software, che consente l esecuzione di un sistema operativo e più applicazioni eseguite su di esse Guest OS Sistema operativo in esecuzione sulla VM Host OS Sistema operativo che esegue la VM Virtual Machine Monitor (VMM) Software di virtualizzazione appartenente ad una VM che compete sulle risorse fisiche allocate al sistema ospitante Hypervisor Strato di virtualizzazione sul quale sono eseguite le VMs, che supervisiona i VMM. Può essere classificato ulteriormente in Hypervisor bare-metal o nativo quando è eseguito nativamente sull hardware e ne possiede il controllo diretto e privilegiato, e in Hypervisor hosted o ospitato quando è eseguito sull Host OS come un applicazione utente. 2.6 Sfide della virtualizzazione Tutti i comuni approcci alla virtualizzazione discendono da una serie di requisiti e linee guida tracciati da due scienziati Gerald J. Popek e Robert P. Goldberg nel paper Formal Requirements for Virtualizable Third Generation Architectures [10]. In questo lavoro dettano le condizioni sufficienti ad un architettura per supportare efficientemente la virtualizzazione: Equivalenza Il comportamento esibito dal Guest OS deve essere del tutto equivalente a quello dell Host OS; in poche parole il Guest OS è virtualizationunaware Controllo risorse Il VMM deve avere completo controllo di tutte le risorse hardware/software del nodo Host; questo lascia intendere che il VMM debba avere un accesso privilegiato alla macchina Host Efficienza Una percentuale significativa delle istruzioni del Guest OS deve essere eseguita senza intervento del VMM; un eccessivo controllo da parte del VMM sarebbe causa di intollerabile overhead

15 CHAPTER 2. INTRODUZIONE Virtualizzazione della CPU Il termine x86 si riferisce ad una famiglia di instruction set architectures, un insieme di istruzioni che descrive quegli aspetti dell architettura di una calcolatore che sono visibili al programmatore, tra cui i tipi di dati nativi, le istruzioni, i registri, le modalità di indirizzamento, l architettura della memoria, la gestione degli interrupt e delle eccezioni, e l eventuale I/O esterno, basata sul processore Intel L architettura x86, come si può osservare in figura 2.6.1, è suddivisa in Ring di privilegio: 1. Ring 0: il sistema operativo è eseguito in questo ring, il più privilegiato, poichè necessita dell accesso diretto alla memoria, alla CPU e in generale all hardware della macchina; 2. Ring 1, Ring 2: poco utilizzati, generalmente dai dispositivi 3. Ring 3: in tale ring vengono eseguite tutte le operazioni utente Figure 2.1: Ring di privilegio nell architettura x86 I processori basati sull 8086 hanno quindi due modalità operative fondamentali: user mode (ring 3) e kernel mode (ring 0). Il ring 3 è caratterizzato da

16 CHAPTER 2. INTRODUZIONE 12 uno spazio d indirizzamento di memoria segmentato in 20 bit e dalla mancanza di protezione della memoria e di multitasking a livello hardware. Le applicazioni vengono eseguite in questa modalità e possono usare l hardware attraverso le system call. Il ring 0 espande la memoria fisica indirizzabile, fornendo la protezione della memoria per evitare che i programmi si possano dannegiare tra loro. E possibile eseguire le istruzioni di CPU, incluse quelle privilegiate (interruzioni, gestione di memoria, I/O). Queste due modalità sono basate sull assunzione che la memoria è divisa in pagine prima che un istruzione privilegiata venga eseguita, la CPU controlla se la pagina da cui si origina l istruzione abbia il giusto codice a 2 bit ( 00 per il kernel mode e 11 per lo user mode). Virtualizzare un architettura x86 significa posizionare uno strato software sotto il sistema operativo, che si trova nel Ring 0, per creare e gestire le macchine virtuali che utilizzano le risorse dell Host OS. I problemi legati alla virtualizzazione della CPU sorgono dalla presenza di un sottoinsieme di istruzioni particolarmente ostiche: Istruzioni Privilegiate Istruzioni che necessitano dei privilegi del Ring 0 e se non eseguite con i dovuti privilegi scatenano un eccezione Istruzioni Sensibili Istruzioni che necessitano dei privilegi del Ring 0, tuttavia se non eseguite con tali privilegi non scatenano un eccezione ma modificano la semantica dell azione Il set di istruzioni dell architettura x86 contiene 17 istruzioni privilegiate. Le conseguenze legate all esecuzione, a livello utente, di tali istruzioni sono la possibile perdita del controllo della CPU o l interruzione fatale dell esecuzione del sistema operativo. La soluzione più semplice è trap-and-emulate : si catturano le istruzioni quando esse generano un eccezione a causa di mancanza di privilegio e si emulano; questo approccio non è purtroppo applicabile alle istruzioni x86 poichè in caso di istruzioni sensibili non è possibile individuare con il meccanismo delle eccezioni le istruzioni ostiche. La prima soluzione a questo problema è stata introdotta nel 1999 da VMware, è chiamata Binary Translation e si basa su un modulo software che traduce il codice binario che il kernel di un Guest OS vuole eseguire al momento. Anche se causa di un forte overhead, è una soluzione relativamente semplice e soprattutto garantisce la portabilità dell ambiente virtuale. Una soluzione di differente natura è quella adottata da Xen Hypervisor, chiamata Paravirtualization: in questa tecnica la traduzione del codice non avviene a runtime ma staticamente attraverso modifiche del sistema operativo. E evidente che le prestazioni, in

17 CHAPTER 2. INTRODUZIONE 13 termini di overhead legato alla traduzione, offerte da questa tecninca sono molto migliori di quelle offerte da VMware; tuttavia il prezzo da pagare è l assenza di portabilità e semplicità di installazione. Entrambe le tecniche verranno ampiamente descritte nel seguito di questo lavoro. 2.7 Hardware-assisted Virtualization Problemi legati alla virtualizzazione software-only Tra il 2005 e il 2006 i due principali produttori di processori, Intel e AMD, hanno lavorato indipendentemente per modificare l architettura dei processori, allo scopo di affrontare e risolvere alcuni problemi legati alla virtualizzazione software. Ring aliasing Si verifica quando un software viene eseguito ad un livello di privilegio diverso da quello per il quale è stato scritto. Address-space compression Il Guest OS si aspetta di avere accesso a tutto lo spazio indirizzabile virtuale del processore ma in realtà l hypervisor deve riservarsi una porzione dello spazio indirizzabile del Guest per memorizzare le strutture dati e le istruzioni e deve implementare meccanismi di sicurezza per evitare l accesso del Guest OS a tale porzione di memoria riservata. Non-faulting access to privileged state La protezione privilege-based evita che software senza alcun diritto di privilegio acceda alla CPU, generando un eccezione, che consente all hypervisor di emulare l istruzione richiesta; tuttavia è stato mostrato che esistono istruzioni sensibili che non generano eccezioni quando sono eseguite senza i privilegi sufficienti. Adverse impact on guest system calls L esecuzione di una system call da parte di un Guest OS crea un impatto negativo sulle prestazioni del sistema operativo, infatti la traduzione binaria di una system call può contenere un numero di istruzioni macchina fino a dieci volte maggiore quello di una system call nativa. Interrupt virtualization L architettura x86 fornisce meccanismi per il mascheramento delle interruzioni (interrupt masking) quando il sistema operativo non è pronto per gestirle: più precisamente utilizza l interrupt

18 CHAPTER 2. INTRODUZIONE 14 flag (IF) nel registro EFLAGS per controllare il mascheramento delle interruzioni. L hypervisor dovrebbe gestire le interruzioni e negare al software virtualizzato il controllo del mascheramento. Frequent access to privileged resources L hypervisor dovrebbe prevenire l accesso del Guest OS a risorse privilegiate generando fault ad ogni tentativo di accesso; se la frequenza dei fault è eccessiva le performance del sistema possono essere compromesse. Addressing Virtualization L hypervisor fornisce dei meccanismi d indirizzamento, come la shadow page table che introduce ulteriore overhead poichè si ha un doppio livello di memoria virtuale, quella virtuale del Guest OS virtualizzata mappata sulla memoria virtuale dell Host OS. In sintesi la virtualizzazione software-only richiede hypervisor molto complessi e difficili da progettare, e costosi computazionalmente parlando Intel Virtualization Technology (Intel VT) Intel introduce la tecnologia di virtualizzazione hardware-assisted nel 2005 in due modelli di Pentium 4, e prese il nome di Intel VT-x o Vanderpool. Questa tecnologia offre una nuova archiettura sulla quale il sistema operativo virtualizzato può essere eseguito con i privilegi adeguati, elimimando la necessità di binary translation e relativo overhead, semplificando la progettazione dell hypervisor. L Intel Virtualization Technology consiste di tre tipi di tecnologie: 1. VT-x: introduce all architettura due nuove forme di funzionamento della CPU: VMX root operation, destinata all uso da parte dell hypervisor, e VMX non root operation, corrispondente ad un ambiente x86 alternativo controllato dall hypervisor e progettato per supportare una macchina virtuale. Entrambe le modalità hanno tutti e quattro i livelli di privilegio, permettendo al software Guest di essere eseguito al ring 0. Le principali funzionalità offerte da questa tecnologia sono: x86 CPU virtualization, VT FlexMigration per facilitare la migrazione di macchine virtuali da un ambiente all altro, VT Extended Page Tables, grazie alla quale si introduce un nuovo indirizzamento della memoria, VT Virtual Processor ID per migliorare le prestazioni della macchina virtuale.

19 CHAPTER 2. INTRODUZIONE VT-d: assistenza hardware per le operazioni di I/O; poichè su un server possono coesistere molteplici VM (quindi molteplici Guest OS), il movimento di dati in ingresso e in uscita dal sistema (traffico di I/O) aumenta e diventa complesso da gestire: Intel VT-d ha l obiettivo di risolvere questo problema riducendo il coinvolgimento dell hypervisor, più precisamente consentendo all hypervisor di assegnare specifici dispositivi di I/O a specifici Guest OS. Ogni dispositivo ha quindi un area di memoria del sistema dedicata, che può essere acceduta dal dispositivo e dal Guest OS a cui il dispositivo è associato. 3. VT-c: supporto hardware che collega il singolo server alla rete del data center, all infrastruttura di memoria ed ad altri dispositivi esterni AMD Virtualization Technology (AMD-V) Quasi contemporaneamente ad Intel, AMD ha introdotto nel 2006 la propria tecnologie di virtualizzazione chiamata AMD-V o anche SVM - Secure Virtual Machine, o Pacifica nei processori Dual-Core della serie Opteron. Questa tecnologia ha lo scopo di migliorare le performance e la sicurezza della virtualizzazione attraverso estensioni hardware all architettura del sistema x86, proprio come Intel VT. Fra le principali funzionalità offerte abbiamo: l estensione al set di istruzioni x86 per consentire all hypervisor di creare più efficientemente le macchine virtuali, Taggled TLB per facilitare il context-switch da una macchina virtuale ad un altra, Nested Paging per l ottimizzazione della memoria virtualizzata, AMD-V Extended Migration, che consente all hypervisor di facilitare la migrazione in tempo reale di macchine virtuali tra processori AMD di diverse generazioni, AMD-Vi per fornire supporto ai problemi legati al traffico I/O.

20 Chapter 3 Full Virtualization e VMware 3.1 Introduzione VMware Inc. è una società per azioni sussidiaria della EMC Corporation con quartiere generale a Palo Alto, California, che si occupa di sviluppare software per la realizzazione di macchine virtuali per sistemi x86. La società fu fondata nel 1998 da Diane Greene (CEO fino al 2008), Mendel Rosenblum, Scott Devine, Edward Wang, Edouard Bugnion ed acquisita nel 2004 da EMC Corporation. Nel 2007 Intel entra nel capitale azionario di VMware Inc acquisendone il 2,5% con 218 milioni di dollari e nello stesso anno Cisco Systems ha annunciato l acquisto dell 1,6% delle azioni di VMware Inc. per 150 milioni di dollari e ha annunciato la nascita di accordi di collaborazione con VMware Inc. Nel 2008 VMware acquisisce Thinstall, società leader nella pacchetizzazione delle applicazioni. Il portfolio di virtualizzazione di VMware comprende programmi di virtualizzazione desktop e programmi di virtualizzazione enterprise, ulteriormente classificabili in commerciali e freeware. 1. Desktop Virtualization VMware Workstation E un software commerciale che consente di eseguire, creare, editare macchine virtuali; è disponibile per Windows, GNU/Linux e Mac OS X (VMware Fusion). Fra le caratteristiche salienti vi è il supporto per l accelerazione hardware 3D con Microsoft Direct3D API, il supporto per shader model e OpenGL 2.1, e dall ultima versione (VMware Workstation 8) il supporto per architettura x86-64 con Intel VT. 16

21 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 17 VMware Player E un software freeware, componente del software commerciale appena citato, rilasciato nel 2005 che esegue macchine virtuali e dall ultima versione (VMware Player 3) ne consente anche la creazione. 2. Enterprise Virtualization VMware Server E un software per la virtualizzazione di server, successore dei prodotti GSX Server della EMC Corporation che consente di creare, editare, macchine virtuali installate su una macchina server e implementa i meccanismi di comunicazione e gestione da remoto di queste tramite un architettura client/server. E stato reso freeware per promuovere il passaggio a ESX Server e nel 2010 VMware ha annunciato l interruzione del supporto a VMware Server. VMware vsphere E una vasta suite di prodotti per la virtualizzazione di server: più precisamente è composta da ESX e ESXi, software per la migrazione, software per la gestione centralizzata dell infrastruttura, software per la gestione delle repliche e tanto altro. ESX e ESXi sono hypervisor di tipo bare-metal e sono distribuiti in licenza freeware insieme a vsphere Client, il client per accedere alle macchine virtuali, mentre il resto della componentistica è commerciale. Lo scopo di questo lavoro è stato valutare le perfomance di due tecniche di virtualizzazione, Full Virtualization e Paravirtualization; per analizzare in maniera esaustiva la tecnica di Full Virtualization si è scelto di utilizzare VMware ESXi come esempio di hypervisor bare-metal e VMware Player come esempio di hypervisor hosted. 3.2 Full Virtualization Virtualizzazione della CPU La tecnica di Full Virtualization, adottata da VMware per i suoi prodotti di virtualizzazione, consiste nell implementazione dell intero hardware, cioè BIOS, CPU, RAM, dischi, schede di rete, presentato poi al Guest OS come risorse fisiche vere e proprie. VMware nel 1999 propone, come soluzione alle

22 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 18 Figure 3.1: Full Virtualization problematiche sorte dalla virtualizzazione della CPU, la tecnica di Binary Translation. Questa soluzione si basa su un traduttore Binary Translator (BT) che traduce il codice binario che il kernel di un Guest OS vuole eseguire in nuove sequenze di istruzioni che hanno lo stesso effetto sull hardware virtuale, e memorizza tali sequenze in una cache, Translator Cache (TC), per ottimizzarne l esecuzione in caso di utilizzi futuri. Le applicazioni utente non sono trattate dal BT poichè quest ultimo assume che il codice utente sia sicuro e quindi vengono eseguite direttamente sulla CPU virtuale. Il funzionamento di questa tecnica è illustrato in figura 3.1. Per illustrare più dettagliatamente il processo di traduzione si mostra il seguente esempio: si consideri una funzione isprime() che prende in input un intero e verifica se è un numero primo o meno. int isprime(int a) { for(int i=2; i<a; i++) if (a%i == 0) return 0; return 1; }

23 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 19 Quello che segue è il codice assembler della funzione per un architettura x64: isprime: mov %ecx, %edi ; %ecx = %edi (a) mov %esi, $2 ; i = 2 cmp %esi, %ecx ; is i >= a? jge prime ; jump if yes nexti: mov %eax, %ecx ; set %eax = a cdq ; sign-extend idiv %esi ; a % i test %edx, %edx ; is remainder zero? jz notprime ; jump if yes inc %esi ; i++ cmp %esi %ecx ; is i >= a? jl nexti ; jump if no prime: mov %eax, $1 ; return value in %eax ret notprime: xor %eax, %eax ; %eax = 0 ret Si invoca isprime(49) Si osservi che in realtà il codice in input al BT non è quello sovrastante ma la sua rappresentazione binaria. Il traduttore legge la memoria all indirizzo indicato dal Guest OS, classificando i byte come prefissi, codici operativi o operandi, per produrre gli intermediate representation objects (IR objects): ogni oggetto IR rappresenta un istruzione del Guest OS. Il BT accumula gli oggetti IR in un unità di traduzione Traslation Unit (TU), che corrisponde in genere ad un blocco base. Ad esempio: isprime: mov %ecx, %edi mov %esi, $2 cmp %esi, %ecx jge prime In fase di traduzione la maggior parte del codice resta invariato, ad esempio le prime tre istruzioni del TU mostrato, mentre la quarta istruzione deve essere modificata. isprime: mov %ecx, %edi mov %esi, $2 cmp %esi, %ecx

24 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 20 jge [takenaddr] ; JCC jmp [fallthraddr] Si noti che l istruzione jge è cambiata in due istruzioni translator-invoking, che producono un compiled code fragment (CCF) e l insieme dei CCF costituisce il codice tradotto; dal momento che 49 non è un numero primo, il TU che restituisce il valore 1 nella funzione non viene tradotto ma viene tradotto unicamente il TU che restituisce il valore 0. Di seguito è mostrato il codice presente nella TC: isprime : mov %ecx, %edi mov %esi, $2 cmp %esi, %ecx jge [takenaddr] nexti : mov %eax, %ecx cdq idiv %esi test %edx, %edx jz notprime inc %esi cmp %esi %ecx jl nexti jmp [fallthraddr3] notprime: xor %eax, %eax pop %r11 ; JCC ; fall-thru into next CCF ; JCC ; JCC ; RET mov %gs:0xff39eb8(%rip), %rex ; spill %rex movzx %ecx, %r11b jmp %gs:0xfc7dde0((*%rex) Sostituire il codice privilegiato con codice più sicuro è molto meno costoso dell approccio trap-and-emulate, tuttavia l overhead legato a questo tipo di virtualizzazione non è sempre basso e il BT non può catturare completamente molte funzioni, come le system call, gli interrupt, gli accessi all I/O e in generale la gestione alla memoria. E stato già osservato che il kernel ha l accesso privilegiato alle istruzioni della CPU che altri processi non hanno per cui quando un processo utente richiede al kernel di svolgere un operazione privilegiata causa un eccezione e il kernel subentra. Allo stesso tempo lo scheduler, un programma del kernel che ordina temporalmente le richieste

25 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 21 al kernel, utilizza l interruzione timer per assicurarsi che nessun processo tenti di avere il controllo della CPU per troppo tempo. Quando si esegue una system call l applicazione utente richiede il servizio al kernel attraverso le istruzioni SYSENTER e SYSEXIT. Quando un Guest OS invoca una system call si verifica il seguente problema: il Guest OS è posto in un ring di privilegio diverso sal ring 0, generalmente ring 1 o ring 3, e si invia una SYSENTER a una pagina con privilegio 0 dove ci si aspetta di trovare il sistema operativo ma vi è l hypervisor, che a sua volta deve emulare la system call, tradurre il codice e cedere il controllo al codice kernel che è eseguito nel ring 1 o ring 3. Lo stesso problema sorge una volta che il codice tradotto è stato eseguito dal Guest OS: si invia una SYSEXIT per ritornare all applicazione utente a una pagina con privilegio 0 ed è perciò necessario nuovamente l intervento dell hypervisor. Risulta evidente che una system call provoca un forte overhead, con un impatto fino a 10 volte maggiore di quello su una macchina fisica [2]. Grazie a questa tecnica VMware può virtualizzare ogni sistema operativo x86 utilizzando una combinazione di Binary Translation e tecniche di esecuzione diretta. Ogni VMM compete sulle risorse fisiche allocate a una macchina virtuale, incluso BIOS, dispositivi di I/O e gestione della memoria. Lo strato di virtualizzazione, composto da questa combinazione di traduzione binaria ed esecuzione diretta, astrae completamente il Guest OS dall hardware sottostante; il Guest OS non è consapevole di essere virtualizzato e non richiede alcuna modifica. La Full Virtualization è l unica tecnica che non richiede supporto hardware o del sistema operativo per virtualizzare istruzioni privilegiate, l hypervisor traduce tutte le istruzioni del sistema operativo on the fly e memorizza in cache i risultati per utilizzi futuri. La Full Virtualization offre il miglior livello di isolamento e sicurezza per le macchine virtuali, semplifica la migrazione e la portabilità poichè la stessa istanza del Guest OS può essere eseguita in modo virtualizzato o nativamente [9] Virtualizzazione della memoria La gestione della memoria assegnata alle macchine virtuali è un aspetto cruciale. Si ricorda che i moderni sistemi operativi utilizzano la tecnica di memoria virtuale, grazie alla quale è possibile simulare uno spazio di memoria centrale maggiore di quello fisicamente presente o disponibile, avvalendosi di dispositivi di memoria secondaria, generalmente le unità a disco. In un sistema dotato di memoria virtuale la CPU e i programmi si riferiscono alla memoria centrale con indirizzi logici o virtuali, tradotti successivamente in indirizzi

26 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 22 fisici reali da un unità apposita, la Memory Management Unit (MMU). La MMU svolge le seguenti funzioni: 1. Traduzione dell indirizzo logico in indirizzo fisico 2. Controllo della presenza in RAM dell indirizzo fisico tradotto 3. Se l indirizzo tradotto non è in RAM generazione di un page fault, eccezione che forza il sistema operativo a caricare la pagina di memoria dalla memoria secondaria alla RAM Quando si utilizza la memoria paginata la memoria viene divisa in pagine di stessa grandezza, i programmi non hanno necessità di conoscere l organizzazione della memoria poichè la gestione delle pagine è completamente gestita dalla MMU attraverso un complesso sistema di registri associativi. Se il numero delle pagine è elevato, nel caso in cui si utilizzano pagine di piccola dimensione o la memoria virtuale da emulare è vasta, il meccanismo di gestione delle pagine utilizzato dal MMU potrebbe diventare troppo complesso rallentando sensibilmente l accesso alla memoria. Il Guest OS non ha accesso alla tabella delle pagine reali, ma accede ad una tabella delle pagine che si trova su una MMU virtualizzata, chiamata shadow page table. Questa tabella da l illusione al Guest OS di poter tradurre i propri indirizzi virtuali in indirizzi fisici, ma in realtà è l hypervisor che in the shadow gestisce la reale traduzione di indirizzi logici virtuali virtualizzati in indirizzi fisici e quindi ha accesso alla MMU reale. Quando si utilizza questa tecnica detta shadow paging ogni volta che il Guest OS effettua una modifica ad una pagina è compito della MMU virtuale catturare la modifica e scrivere il cambiamento sulla shadow page table. In sintesi, come si può notare in figura 3.2 c è un livello aggiuntivo di address translation quando è in esecuzione il Guest OS: 1. guest page tables (gpt): versioni ombra delle tabelle delle pagine, sulle quali scrive il Guest OS 2. shadow page tables (spt): non visibili al Guest OS e utilizzate per effettuare la traduzione di indirizzi quando è attivo il Guest OS E compito dell hypervisor garantire la coerenza tra le spt e le gpt attraverso due tecniche: 1. write-protecting: ogni tentativo di modifica di una gpt da parte del Guest OS genera un eccezione di page fault, alla quale subentra l hypervisor che emula l operazione richiesta

27 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 23 Figure 3.2: Shadow Paging 2. Virtual TLB: il Guest OS modifica la gpt senza l intervento dell hypervisor fino a quando non prova ad accedere ad un indirizzo della gpt e avviene un page fault poichè la traduzione non è presente nella spt e a questo punto subentra l hypervisor che controlla la gpt per aggiungere la traduzione mancante nella spt ed eseguire l operazione richiesta Entrambe le tecniche sono causa di un grande numero di eccezioni di page fault di tipo guest-induced o hypervisor-induced con un conseguente impatto negativo sulle performance del sistema. Si consideri un sistema multiprocessore: la stessa istanza di una gpt può essere utilizzata per l address translation da più processori per cui o si condivide la gpt fra i processori generando overhead di controllo o si replica la gpt sui processori generando overhead legato alla memorizzazione. Il risultato è che nelle applicazioni in cui si utilizza frequentemente la memoria questo tipo di gestione della memoria è la causa principale di pessime performance dei sistemi virtualizzati. 3.3 Virtualizzazione dei dispositivi di I/O Ogni macchina virtuale ha a disposizione un insieme predefinito di base di periferiche virtuali emulate, come Floppy, DVDROM, tastiera, periferiche USB, controller IDE e SCSI, scheda video, scheda di rete Etherent, scheda audio, ecc.... La virtualizzazione di un dispositivo di I/O comporta la gestione del routing delle richieste di I/O tra i dispositivi virtuali e l hardware fisico condiviso. Quando un dispositivo comunica con il sistema operativo i dati vengono scritti in un area di memoria chiamata memory mapped I/O. Più precisamente quando il sistema operativo invia dati ad una periferica

28 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 24 trasferisce i dati dalla memoria della CPU alla memoria del dispostivo, in fase di ricezione invece il dispositivo invia i dati nell area di memoria dedicata all I/O e il sistema operativo li trasferisce nella memoria della CPU. In un ambiente virtualizzato il Guest OS ha l illusione di scrivere i dati da inviare al dispositivo nell area di memoria dedicata ma è necessario l intervento dell hypervisor che mappa l area di memory mapped I/O virtuale in quella fisica. La comunicazione tra una periferica fisica di rete e quella virtuale è composta dai seguenti passi: 1. La periferica fisica utilizza Direct Memory Access (DMA) per scrivere i pacchetti in un buffer gestito dall hypervisor 2. La periferica fisica avvisa l hypervisor attraverso un interrupt non appena terminata la copia dei dati 3. L hypervisor esamina i pacchetti in cerca della destinazione (la macchina virtuale), e copia i pacchetti nel buffer della macchina virtuale destinataria 4. La periferica virtuale avvisa il sistema operativo della macchina virtuale a cui appartiene che sono stati ricevuti i dati 3.4 VMware vsphere VMware vsphere o VMware Infrastructure è una suite di programmi e funzionalità fornite da VMware per la virtualizzazione di un infrastruttura. I principali prodotti offerti sono: 1. ESX e ESXi: hypervisor bare-metal, descritti nella prossima sezione 2. Virtual Simmetric Multi-Processing (vsmp): consente di utilizzare più processori fisici, sfrutta la tecnologia Intel Hyper-Threading per eseguire contemporaneamente due thread su una CPU 3. Virtual Machine File System (VMFS): gestisce lo storage dell architettura che può essere locale, cioè le macchine virtuali sono memorizzate sul disco del Server, o logicamente centralizzato tramite l utilizzo di Storage Area Network (SAN) o Network Attached Storage (NAS), che richiede l implementazione di un file system concorrente

29 CHAPTER 3. FULL VIRTUALIZATION E VMWARE vcenter: tool per la gestione centralizzata dell intera infrastruttura, obbligatorio per usufruire di altri prodotti come Fault Tolerance, DRS, vmotion, Storage vmotion 5. vmotion: consente la migrazione dinamica di macchine virtuali e ha come requisiti di utilizzo un architettura di storage centralizzata, una rete ad alte prestazioni e la medesima configurazione di rete su tutte le macchine 6. Distributed Resource Scheduler (DSR): ottimizza l utilizzo delle risorse tra i vari Server ESX seguendo delle regole definite dall amministratore 7. High Availability (HA): fornisce fault tolerance combinando meccanismi di bilanciamento del carico, migrazioni di macchine virtuali e monitoraggio delle risorse dei Server ESX anche se non garantisce l assenza di brevi periodi di disservizio 8. Fault Tolerance (FT): garantisce l assenza di periodi di disservizio grazie a meccanismi di replica dei Server ESX ESX e ESXi VMware ESX è una componente di vsphere disponibile in due versioni ESX e ESXi. Sono entrambi hypervisor bare-metal, eseguiti direttamente sull hardware del server senza la necessità di un sistema operativo sottostante, partizionano il server fisico in multiple macchine virtuali isolate e portabili. Ogni macchina virtuale comprende processori, memoria, interfaccia di rete, storage e BIOS. Version release history VMware ESX Server VMware ESX Server VMware ESX Server VMware ESX Server VMware Infrastructure 3.0 con VMware ESX VMware ESX 3.5 ESXi Edition

30 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 26 Figure 3.3: Architettura di VMware ESX VMware vsphere 4.0 con VMware ESXi VMware ESXi Architettura In contrasto con altri prodotti VMware, VMware ESX è eseguito direttamente sull hardware della macchina e non al di sopra di un sistema operativo, quindi include un proprio kernel. Prima della versione 5.0 veniva utilizzato un kernel Linux chiamato service console, che a runtime è considerato come la prima macchina virtuale in esecuzione. Il vmkernel è un microkernel che implementa le astrazioni necessarie per allocare l hardware disponibile a multipli workload (macchine virtuali) isolati l uno dall altro, come si può osservare in figura 3.3. Gli elementi chiave dell architettura sono: 1. Layer di virtualizzazione, che offre un ambiente virtuale al di sopra delle risorse fisiche che controlla 2. Manager delle risorse, che abilita il partizionamento e l allocazione di CPU, memoria, banda di rete e banda di disco a ogni macchina virtuale 3. Device Driver ESX implementa hardware virtualization; il Guest OS e le applicazioni da esso eseguite non possono direttamente determinare quale specifica risorsa

31 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 27 sottostante stanno usando, come la specifica CPU in un architettura multiprocessore, la locazione di memoria fisica su cui è mappata una certa pagina di memoria. La virtualizzazione della CPU alterna l esecuzione diretta di istruzioni non privilegiate alla tecnica di traduzione binaria. Il vmkernel controlla CPU e memoria in modo diretto utilizzando la tecnica scan-beforeexecution (SBE) per gestire le istruzioni privilegiate e utilizza la System Resource Allocation Table (SRAT) per tracciare la memoria allocata. Le macchine virtuali non possono comunicare fra loro e scambiare dati se non tramite i tradizionali protocolli di rete utilizzati per la comunicazione di macchine fisiche distinte. Questo isolamento consente a molti utenti di costruire firewall interni o altri ambienti di isolamento di rete, consentendo ad alcune macchine di uscire all esterno della rete, ed ad altre di rimanere connesse all interno di reti virtuali attraverso altre macchine virtuali. Le funzioni di gestione del sistema e le interfacce sono implementate nella service console. Queste includono HTTP, SNMP, funzioni per l autenticazione. La service console è installata come prima componente ed è usata per il bootstrap dell installazione di ESX Server e per la configurazione, per il boot del sistema e per avviare l esecuzione del layer di virtualizzazione e il gestore delle risorse. La service console è implementata utilizzando una distribuzione di Linux modificata. L accesso alle altre componenti hardware viene effettuato tramite l utilizzo dei moduli utilizzati nel kernel Linux. Il vmkernel utilizza i seguenti device drivers: 1. net/e net/e net/e1000e 4. net/bnx2 5. net/tg3 6. net/forcedeth 7. net/pcnet32 8. block/cciss 9. scsi/adp94xx

32 CHAPTER 3. FULL VIRTUALIZATION E VMWARE scsi/aic7xxx 11. scsi/aic79xx 12. scsi/ips 13. scsi/lpfcdd-v scsi/megaraid2 15. scsi/mptscsi 2xx 16. scsi/qla2200-v scsi/megaraid sas 18. scsi/qla scsi/qla scsi/vmkiscsi 21. scsi/aacraid esx scsi/lpfcdd-v7xx 23. scsi/qla2200-v7xx La service console fornisce un API che consente di controllare le macchine virtuali e l allocazione delle risorse. L amministratore può accedere alla console in locale o in remoto poichè nella service console è in esecuzione un Web Server. Con il passaggio a ESXi è stata eliminata la service console, migrando una serie di funzionalità eseguite tradizionalemnte in locale dalla linea di comando verso tool di gestione remota dell infrastruttura [11]. 3.5 VMware Player VMware Player è un software distribuito in licenza free per la desktop virtualization. VMware è un hypervisor di tipo Hosted, cioè eseguito al top di un Host OS come un applicazione utente. Le funzionalità offerte da questo prodotto sono:

33 CHAPTER 3. FULL VIRTUALIZATION E VMWARE Eseguire e creare macchine virtuali su un Host OS Windows o Linux 2. Eseguire macchine virtuali senza investire in software di virtualizzazione, in sicurezza, flessibilità e portabilità 3. Utilizzo di dispositivi della macchina Host, come CD e DVD Rilasciato per la prima volta nel 2001 in versione 1.0 ha subito negli anni dei forti cambiamenti tra i quali il supporto alle librerie DirectX, le shared folders tra Host OS e Guest OS, miglioramenti all interfaccia grafica e dall ultima versione, la 3.0 è possibile creare macchine virtuali. VMware Player si installa come una normale applicazione sul sistema operativo. Quando viene eseguito, la porzione di applicazione VMApp utilizza un driver caricato nell Host OS, VMDriver per eseguire il monitor VMM direttamente sull hardware. Da questo momento in poi il processore fisico sta eseguendo sia l ambiente dell Host OS sia l ambiente del Guest OS ed esegue continuamente contextswitch tra i due ambienti grazie al VMDriver. Si ricorda che la virtualizzazione della CPU è compito del VMM che combina esecuzione diretta di codice sicuro e traduzione binaria. L architettura hosted del sistema, mostrata in figura 3.4 è un potente modo per garantire compatibilità con la vasta gamma di hardware disponibile ai giorni nostri e creare un livello di astrazione fra l hardware fisico e l implementazione software di questo: per esempio un programma scritto per riprodurre CD-ROM audio funzionerà sia con dispositivi CD-ROM IDE che SCSI poichè i sistemi operativi offrono un interfaccia astratta del dispositivo CD-ROM. VMware Player, come VMware Workstation, si avvale di questa generalità offerta dai sistemi operativi per garantire la compatibilità con intere classi di hardware senza necessitare di speciali driver.

34 CHAPTER 3. FULL VIRTUALIZATION E VMWARE 30 Figure 3.4: Architettura Hosted di VMware Player e VMware Workstation

35 Chapter 4 Para Virtualization e Xen 4.1 Introduzione L hypervisor Xen [22], [21] è stato creato da Keir Fraser e Ian Pratt, come parte del progetto di ricerca XenoServer presso l università di Cambrige alla fine degli anni 90. Nel 2004 viene fondato XenSource Inc. che converte Xen Hypervisor da tool di ricerca a prodotto competitivo per l enterprise computing con l immediato rilascio di Xen 1.0 seguito da Xen 2.0. Nel 2005 Xen Hypervisor nella versione 2.0 è stato utilizzato da Red Hat, Novell e SUN. Nel 2006 Microsoft e VMware adottano anche loro il concetto di paravirtualizzazione introdotto finora solo dalla comunità di Xen. Nel 2007 XenServer è stato acquisito dalla Citrix Systems una società fondata da Ed Jacobucci un ex sviluppatore della IBM, acquisizione di cruciale importanza per il progetto Xen. Nel 2010 è nato Xen 4.0 e nel 2011 il kernel linux è stato il primo a permettere il boot di Xen come Dom 0 out-of-the-box. Nel kernel linux 3.x è stato aggiunto il totale supporto a Xen Dom 0 e Dom U consentendo alla maggior parte delle distribuzioni Linux di introdurre Xen. La comunity di Xen attualmente ha all attivo circa 250 contribuenti, come in figura 4.1 e tra i più attivi abbiamo IBM, HP, INTEL, VA LINUX, AMD, RED HAT, NOVELL, FUJITSU, BULL ed SGI. I vantaggi di avere una community così ampia rende i tempi di commercializzazione di nuovo hardware e di nuove feature molto rapidi e il supporto di una community open-source permette anche un rapido sviluppo, un minor numero di bug e aggiornamenti molto rapidi. L hypervisor Xen a differenza della soluzione di Vmware ESX adotta un 31

36 CHAPTER 4. PARA VIRTUALIZATION E XEN 32 Figure 4.1: Contribuenti di Xen approccio filosoficamente differente alla virtualizzazione. In Xen la tecnologia utilizzata per la virtualizzazione viene definita paravirtualizzazione. La paravirtualizzazione lavora introducendo una porzione di software molto piccola e compatta che viene eseguita direttamente sull hardware fornendo i vari servizi ai sistemi operativi virtualizzati. In essa la principale differenza con la Full Virtualization è la presenza di un sistema operativo che deve ospitare l hypervisor, infatti nella paravirtualizzazione Xen è un semplice core che utilizza tutte le risorse fornite dal sistema operativo ospitante al fine di eseguire e quindi suddividere l utilizzo delle risorse con altri sistemi operativi. 4.2 La Filosofia di Xen Il primo concetto che deve essere chiarito per approciare la paravirtualizzazione è quello delle istruzioni privilegiate, che sono di fondamentale importanza in essa. Esistono vari livelli di esecuzione di istruzioni e ora analizzeremo quelle per le piattaforme x86, in figura 4.2, e x86-64, in figura 4.3. Nelle piattaforme x86 esistono quattro livelli di esecuzione delle istruzioni, chiamati Ring e numerati da 0 a 3 (lato sinistro figura 4.2). Il primo è il ring

37 CHAPTER 4. PARA VIRTUALIZATION E XEN 33 Figure 4.2: Piattaforme x86 0 nel quale vengono eseguite istruzioni con massimo privilegio ossia quelle del kernel del sistema operativo, il secondo e il terzo non sono utilizzati, il quarto è il livello con il quale vengono eseguite le istruzioni delle applicazioni. Nelle piattaforme x86-64 il numero di ring è stato ridotto da 4 a 2 (lato sinistro figura 4.3), abbiamo quindi solo il ring 0 dove si posiziona il kernel e il ring 3 dove risiedono le applicazioni. In generale quando una applicazione in esecuzione sul ring 4 necessita di eseguire istruzioni privilegiate richiede al kernel del sistema operativo la loro esecuzione. Nella Full Virtualization il Guest-OS può eseguire le istruzioni privilegiate, invence con Xen e quindi con la paravirtualizzazione solo l hypervisor può eseguire tutte le istruzioni privilegiate, si trova sul ring 0, mentre il sistema operativo virtualizzato è collocato sul ring 1(lato destro figura 4.2). L hypervisor, che adesso si trova sul ring 0, è però in esecuzione sull Host- OS, anche esso in esecuzione sul ring 0, che provvede a fornirgli i driver per l hardware, il kernel e lo spazio utente. Avere un hypervisor incorporato nel sistema operativo rende possibile una sua implementazione quanto più piccola e semplice possibile, evitando di inserire nell hypervisor codice come quello dei driver. Nelle piattaforme x86-64 Xen viene modificato per posizionare il Kernel dei sistemi virtualizzati a ring 3 e il Guest-OS con l hypervisor a ring

38 CHAPTER 4. PARA VIRTUALIZATION E XEN 34 Figure 4.3: Piattaforme x In questa situazione Xen utilizza i meccanismi di protezione delle pagine per isolare i diversi sistemi operativi virtualizzati. Il secondo concetto di fondamentale importanza nella paravirtualizzazione riguarda il ruolo delle system call. L hypervisor espone un insieme di API, chiamate Hyper Call, che consentono a sistemi operativi virtualizzati di interfacciarsi con l hardware. In figura 4.4 possiamo vedere come nei sistemi operativi nativi (parte sinistra della figura) le applicazioni sul ring 3 possono eseguire istruzioni privilegiate utilizzando le normali system call che vengono eseguite a ring 0 dal kernel; in Xen le applicazioni chiedono l esecuzione di istruzioni privilegiate all hypervisor che si trova su ring 0 e questo eseguirà l istruzione sul kernel, ottenendo l eventuale risultato e restituendolo all applicazione (parte destra della figura). In figura 4.5 mostriamo il quadro generale delle differenze architetturali tra le due piattaforme di virtualizzazione in analisi. Nella figura la parte destra mostra l astrazione della virtualizzazione fornita dalla Full Virtualization in VMware ESX, mentre quella sinistra l astrazione di Xen. In Xen come possiamo vedere dalla figura il Dom 0 rappresenta il livello di astrazione nella paravirtualizzazione, mentre nella Full Virtualization abbiamo ESX.

39 CHAPTER 4. PARA VIRTUALIZATION E XEN 35 Figure 4.4: System Call e Hypercall

40 CHAPTER 4. PARA VIRTUALIZATION E XEN 36 Figure 4.5: Full Vs Para - Virtualization 4.3 L architettura di Xen Per definire meglio l architettura di Xen approfondiamo adesso il concetto di Dom0 e DomU per Xen Domain 0(privileged) Dato che Xen non include alcun driver di periferica nè un interfaccia utente, questi vengono tutti forniti dal sistema operativo e dallo spazio utente in esecuzione nel guest-dom0. Il sistema operativo in esecuzione sul Dom0 ha il compito di gestire i diversi dispositivi hardware e dato che la maggior parte dell hardware non ha il supporto nativo per i diversi sistemi operativi virtualizzati, sarà il sistema operativo in esecuzione sul Dom0 a fornire l accesso all hardware per i sistemi ospitati. Sul Dom0 vi sono diversi processi che hanno il compito sia di gestire che controllare le macchine virtuali in esecuzione (figura 4.6: xend: è un programma server scritto in Python che riceve i comandi di gestione delle macchine virtuali e ne restituisce l esito; le richieste sono

41 CHAPTER 4. PARA VIRTUALIZATION E XEN 37 Figure 4.6: Processi di gestione e controllo di Xen inviate dal processo client Xm attraverso un interfaccia XML RPC; xenstored: back-end storage, memorizza i sistemi in esecuzione su dom U e inoltre mantiene un registro degli eventi che intercorrono tra il Domain 0 e gli altri Domani U; xm: è il tool a riga di comando attraverso il quale si inviano i domandi a xend Per fare un esempio mostriamo come un pacchetto TCP inviato da una macchina virtuale, sfrutta l architettura del sistema di virtualizzazione. In figura 4.7 l applicazione in esecuzione, un sistema operativo a DomU, vuole inviare un pacchetto TCP e lo aggiunge allo stack TCP/IP. Lo Split Device Drive (che rappresenta l interfaccia di rete e sarà descritto in seguito) inserirà questo pacchetto su un segmento di memoria condivisa di Xen, il quale provvederà a trasferirlo allo Split Device Driver del sistema operativo in esecuzione a Dom0 che provvederà all instradamento sul reale driver e quindi all interfaccia di rete fisica. Analizziamo le caratteristiche delle tre componenti coinvolte nell esempio per l instradamento del pacchetto TCP: Split Driver: progettato per essere il più semplice possibile, rappresenta la controparte virtuale del real driver alle macchine virtuali in

42 CHAPTER 4. PARA VIRTUALIZATION E XEN 38 Figure 4.7: Esempio di pacchetto TCP in Xen

43 CHAPTER 4. PARA VIRTUALIZATION E XEN 39 esecuzione sul domu e ha il compito di spostare i dati dal DomU al Dom0 utilizzando di solito il buffer ad anello della memoria condivisa; Real Driver: sono presenti nel sistema operativo in esecuzione sul Dom0 e non sono considerati una vera e propria parte di Xen dato che questo è sprovvisto di driver; Multiplexer: nell esempio appena vista era lo stesso protocollo TCP ad effettuare l operazione di multiplexing dei pacchetti, in altri casi è Xen stesso a dover offrire il sistema di multiplexing per gestire i dati dei vari DomU Domain U(nprivileged) Ai sistemi operativi in esecuzione sul DomU non è permesso effettuare system call direttamente sull hardware, infatti implementa gli Split Device Driver che vanno a sotituire i Real Driver per ogni categoria di dispositivi. Tali argomentazioni chiariscono la principale differenza tra paravirtualizzazione e virtualizzazione piena, infatti paravirtualizzare un Guest-OS destinato all esecuzione sul DomU comporta modfiche al kernel, non solo per consentire l utilizzo delle hypercall ma anche per la codifica degli Split Device Driver. In Xen inoltre possiamo avere un numero arbitrario di sistemi operativi in esecuzione sul DomU; nel lavoro [21] sono stati eseguiti test per valutare il massimo supporto in termini di sistemi virtualizzabili conteporaneamente in Xen, ed i risultati hanno mostrato che esiste la possibilità di eseguire fino a 100 domini contemporaneamente. Xen fornisce la possibilità di migrare i vari sistemi operativi in esecuzione se essi utilizzano configurazioni di storage che consentono la migrazione (NFS, iscsi). Anche se Xen viene utilizzato solo come strumento per la valutazione delle differenze prestazionali tra para e full virtualization, esso offre la possibilità di virtualizzare sistemi proprietari, come Windows Xp, ovvero non modificabili, utilizzando l Hardware Virtual Machine (HVM). La differenza tra le due modalità di virtualizzazione in Xen è la fase di avvio di un Host, nella versione para la fase di boot avviene in modalità protetta con pagine di memoria condivise con l hypervisor, mentre nell HVM la fase di boot è reale e ottiene le informazioni da un bios emulato e non si utilizzano le hypercall ma i tradizionali meccanismi della Full Virtualization.

44 CHAPTER 4. PARA VIRTUALIZATION E XEN 40 Figure 4.8: Configurazione Configurazioni dell hypervisor Ci sono diverse modalità di configurazione di Xen e dei sistemi virtualizzati. La prima madalità, in figura 4.8, è chiaramente la più semplice: abbiamo un sistema operativo in esecuzione sul Dom0, il quale controlla tutto l hardware e offre le funzionalità necessarie all hypervisor il quale a sua volta gestisce e controlla i sistemi operativi in esecuzione a DomU. In questa configurazione se un driver in esecuzione sul Dom0 dovesse contere un bug potrebbe mandare in crash tutto il kernel del Dom0. La soluzione a questo problema è la seconda configurazione possibile, mostrata in figura 4.9: è possibile osservare come i driver siano stati isolati in un dominio a parte il quale esporta lo Split Device Driver; questo dominio deve essere un sistema in grado di gestire gli specifici driver. Sempre in questa configurazione viene presentato anche un esempio di un sistema operativo virtualizzato da Xen in HVM che non utilizza gli Split Device Driver ma l emulazione dei Device drivers da parte del Dom0. L ultima configurazione viene utilizzata sui cluster, come da figura I

45 CHAPTER 4. PARA VIRTUALIZATION E XEN 41 Figure 4.9: Configurazione 3

46 CHAPTER 4. PARA VIRTUALIZATION E XEN 42 Figure 4.10: Configurazione 3

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it

VIRTUALIZE IT. www.digibyte.it - digibyte@digibyte.it il server? virtualizzalo!! Se ti stai domandando: ma cosa stanno dicendo? ancora non sai che la virtualizzazione è una tecnologia software, oggi ormai consolidata, che sta progressivamente modificando

Dettagli

Sizing di un infrastruttura server con VMware

Sizing di un infrastruttura server con VMware Sizing di un infrastruttura server con VMware v1.1 Matteo Cappelli Vediamo una serie di best practices per progettare e dimensionare un infrastruttura di server virtuali con VMware vsphere 5.0. Innanzitutto

Dettagli

SISTEMI DI VIRTUALIZZAZIONE: STATO DELL ARTE, VALUTAZIONI, PROSPETTIVE

SISTEMI DI VIRTUALIZZAZIONE: STATO DELL ARTE, VALUTAZIONI, PROSPETTIVE UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea Triennale in Informatica Tesi di Laurea SISTEMI DI VIRTUALIZZAZIONE: STATO DELL ARTE, VALUTAZIONI, PROSPETTIVE

Dettagli

Active Solution & Systems illustra La virtualizzazione dei Server secondo il produttore di Storage Qsan

Active Solution & Systems illustra La virtualizzazione dei Server secondo il produttore di Storage Qsan Active Solution & Systems illustra La virtualizzazione dei secondo il produttore di Storage Qsan Milano, 9 Febbraio 2012 -Active Solution & Systems, società attiva sul mercato dal 1993, e da sempre alla

Dettagli

Cinque best practice per amministratori VMware: Microsoft Exchange su VMware

Cinque best practice per amministratori VMware: Microsoft Exchange su VMware Cinque best practice per amministratori VMware: Microsoft Exchange su VMware Scott Lowe Founder and Managing Consultant del 1610 Group Modern Data Protection Built for Virtualization Introduzione C è stato

Dettagli

DigitPA egovernment e Cloud computing

DigitPA egovernment e Cloud computing DigitPA egovernment e Cloud computing Esigenze ed esperienze dal punto di vista della domanda RELATORE: Francesco GERBINO 5 ottobre 2010 Agenda Presentazione della Società Le infrastrutture elaborative

Dettagli

Il Concetto di Processo

Il Concetto di Processo Processi e Thread Il Concetto di Processo Il processo è un programma in esecuzione. È l unità di esecuzione all interno del S.O. Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono

Dettagli

Per questa ragione il nostro sforzo si è concentrato sugli aspetti elencati qui di seguito:

Per questa ragione il nostro sforzo si è concentrato sugli aspetti elencati qui di seguito: Autore : Giulio Martino IT Security, Network and Voice Manager Technical Writer e Supporter di ISAServer.it www.isaserver.it www.ocsserver.it www.voipexperts.it - blogs.dotnethell.it/isacab giulio.martino@isaserver.it

Dettagli

Virtualizzazione con Microsoft Tecnologie e Licensing

Virtualizzazione con Microsoft Tecnologie e Licensing Microsoft Virtualizzazione con Microsoft Tecnologie e Licensing Profile Redirezione dei documenti Offline files Server Presentation Management Desktop Windows Vista Enterprise Centralized Desktop Application

Dettagli

Ottimizzazione della gestione del data center con Microsoft System Center

Ottimizzazione della gestione del data center con Microsoft System Center Ottimizzazione della gestione del data center con Microsoft System Center Declinazione di responsabilità e informazioni sul copyright Le informazioni contenute nel presente documento rappresentano le conoscenze

Dettagli

Agilent OpenLAB Chromatography Data System (CDS)

Agilent OpenLAB Chromatography Data System (CDS) Agilent OpenLAB Chromatography Data System (CDS) EZChrom Edition e ChemStation Edition Requisiti hardware e software Agilent Technologies Informazioni legali Agilent Technologies, Inc. 2013 Nessuna parte

Dettagli

FileMaker Server 12. Guida introduttiva

FileMaker Server 12. Guida introduttiva FileMaker Server 12 Guida introduttiva 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker,

Dettagli

Acronis Backup & Recovery 11. Affidabilità dei dati un requisito essenziale

Acronis Backup & Recovery 11. Affidabilità dei dati un requisito essenziale Protezio Protezione Protezione Protezione di tutti i dati in ogni momento Acronis Backup & Recovery 11 Affidabilità dei dati un requisito essenziale I dati sono molto più che una serie di uno e zero. Sono

Dettagli

Progetto VirtualCED Clustered

Progetto VirtualCED Clustered Progetto VirtualCED Clustered Un passo indietro Il progetto VirtualCED, descritto in un precedente articolo 1, è ormai stato implementato con successo. Riassumendo brevemente, si tratta di un progetto

Dettagli

SICUREZZA SENZA COMPROMESSI PER TUTTI GLI AMBIENTI VIRTUALI. Security for Virtual and Cloud Environments

SICUREZZA SENZA COMPROMESSI PER TUTTI GLI AMBIENTI VIRTUALI. Security for Virtual and Cloud Environments SICUREZZA SENZA COMPROMESSI PER TUTTI GLI AMBIENTI VIRTUALI Security for Virtual and Cloud Environments PROTEZIONE O PRESTAZIONI? Già nel 2009, il numero di macchine virtuali aveva superato quello dei

Dettagli

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP Protocolli di rete Sommario Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP Configurazione statica e dinamica

Dettagli

Manuale di installazione. Data Protector Express. Hewlett-Packard Company

Manuale di installazione. Data Protector Express. Hewlett-Packard Company Manuale di installazione Data Protector Express Hewlett-Packard Company ii Manuale di installazione di Data Protector Express. Copyright Marchi Copyright 2005 Hewlett-Packard Limited. Ottobre 2005 Numero

Dettagli

Virtualizzazione e installazione Linux

Virtualizzazione e installazione Linux Virtualizzazione e installazione Linux Federico De Meo, Davide Quaglia, Simone Bronuzzi Lo scopo di questa esercitazione è quello di introdurre il concetto di virtualizzazione, di creare un ambiente virtuale

Dettagli

Plesk Automation. Parallels. Domande tecniche più frequenti

Plesk Automation. Parallels. Domande tecniche più frequenti Parallels Plesk Automation Primo trimestre, 2013 Domande tecniche più frequenti Questo documento ha come scopo quello di rispondere alle domande tecniche che possono sorgere quando si installa e si utilizza

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

Modello OSI e architettura TCP/IP

Modello OSI e architettura TCP/IP Modello OSI e architettura TCP/IP Differenza tra modello e architettura - Modello: è puramente teorico, definisce relazioni e caratteristiche dei livelli ma non i protocolli effettivi - Architettura: è

Dettagli

Boot Camp Guida all installazione e alla configurazione

Boot Camp Guida all installazione e alla configurazione Boot Camp Guida all installazione e alla configurazione Indice 4 Introduzione 5 Cosa ti occorre 6 Panoramica dell installazione 6 Passo 1: verifica la presenza di aggiornamenti. 6 Passo 2: apri Assistente

Dettagli

Acronis Backup & Recovery 10 Advanced Server Virtual Edition. Guida introduttiva

Acronis Backup & Recovery 10 Advanced Server Virtual Edition. Guida introduttiva Acronis Backup & Recovery 10 Advanced Server Virtual Edition Guida introduttiva Questo documento descrive come installare e iniziare a utilizzare Acronis Backup & Recovery 10 Advanced Server Virtual Edition.

Dettagli

***** Il software IBM e semplice *****

***** Il software IBM e semplice ***** Il IBM e semplice ***** ***** Tutto quello che hai sempre voluto sapere sui prodotti IBM per qualificare i potenziali clienti, sensibilizzarli sulle nostre offerte e riuscire a convincerli. WebSphere IL

Dettagli

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

Rational Asset Manager, versione 7.1

Rational Asset Manager, versione 7.1 Rational Asset Manager, versione 7.1 Versione 7.1 Guida all installazione Rational Asset Manager, versione 7.1 Versione 7.1 Guida all installazione Note Prima di utilizzare queste informazioni e il prodotto

Dettagli

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software.

Firewall. Generalità. Un firewall può essere sia un apparato hardware sia un programma software. Generalità Definizione Un firewall è un sistema che protegge i computer connessi in rete da attacchi intenzionali mirati a compromettere il funzionamento del sistema, alterare i dati ivi memorizzati, accedere

Dettagli

A vele spiegate verso il futuro

A vele spiegate verso il futuro A vele spiegate verso il futuro Passione e Innovazione per il proprio lavoro La crescita di Atlantica, in oltre 25 anni di attività, è sempre stata guidata da due elementi: la passione per il proprio lavoro

Dettagli

Perché se ho 4 GiB di RAM ne vedo di meno?

Perché se ho 4 GiB di RAM ne vedo di meno? Perché se ho 4 GiB di ne vedo di meno? di Matteo Italia (matteo@mitalia.net) Abstract In questo articolo mi propongo di spiegare perché utilizzando un sistema operativo a 32 bit su una macchina x86 con

Dettagli

Guida alle offerte di finanziamento per le medie imprese

Guida alle offerte di finanziamento per le medie imprese IBM Global Financing Guida alle offerte di finanziamento per le medie imprese Realizzata da IBM Global Financing ibm.com/financing/it Guida alle offerte di finanziamento per le medie imprese La gestione

Dettagli

IBM Cloud Computing - un opportunità? - una moda? Andrea Reggio Myserverfarm. 2011 IBM Corporation

IBM Cloud Computing - un opportunità? - una moda? Andrea Reggio Myserverfarm. 2011 IBM Corporation IBM Cloud Computing - un opportunità? - una moda? Andrea Reggio Myserverfarm 2011 IBM Corporation Cosa si intende per Cloud Computing Cloud è un nuovo modo di utilizzare e di distribuire i servizi IT,

Dettagli

CLOUD SURVEY 2012: LO STATO DEL CLOUD COMPUTING IN ITALIA

CLOUD SURVEY 2012: LO STATO DEL CLOUD COMPUTING IN ITALIA CLOUD SURVEY 2012: LO STATO DEL CLOUD COMPUTING IN ITALIA 2ª PARTE NEL CAPITOLO PRECEDENTE NOTA METODOLOGICA LA PAROLA AI CIO I MIGLIORI HYPERVISOR AFFIDARSI AI VENDOR INVESTIRE PER IL CLOUD APPLICAZIONI

Dettagli

Informatica. Scopo della lezione

Informatica. Scopo della lezione 1 Informatica per laurea diarea non informatica LEZIONE 1 - Cos è l informatica 2 Scopo della lezione Introdurre le nozioni base della materia Definire le differenze tra hardware e software Individuare

Dettagli

IT-BOOK. Domini Hosting Web marketing E-mail e PEC

IT-BOOK. Domini Hosting Web marketing E-mail e PEC 5 giugno 09 IT-BOOK Configurazioni e cartatteristiche tecniche possono essere soggette a variazioni senza preavviso. Tutti i marchi citati sono registrati dai rispettivi proprietari. Non gettare per terra:

Dettagli

Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64

Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64 Le telecamere Installate verranno connesse ad Unità di elaborazione multiplexer per la gestione e la verifica di gruppi omogenei di 4-8-16-32-48-64 telecamere. I sistemi di acquisizione ed archiviazione

Dettagli

Mettere in sicurezza l infrastruttura dei desktop virtuali con Citrix NetScaler

Mettere in sicurezza l infrastruttura dei desktop virtuali con Citrix NetScaler Mettere in sicurezza l infrastruttura dei desktop virtuali con Citrix NetScaler 2 Le aziende attuali stanno adottando rapidamente la virtualizzazione desktop quale mezzo per ridurre i costi operativi,

Dettagli

Per Iniziare con Parallels Desktop 10

Per Iniziare con Parallels Desktop 10 Per Iniziare con Parallels Desktop 10 Copyright 1999-2014 Parallels IP Holdings GmbH e i suoi affiliati. Tutti i diritti riservati. Parallels IP Holdings GmbH Vordergasse 59 8200 Schaffhausen Svizzera

Dettagli

Corso di Amministrazione di Sistema Parte I ITIL 3

Corso di Amministrazione di Sistema Parte I ITIL 3 Corso di Amministrazione di Sistema Parte I ITIL 3 Francesco Clabot Responsabile erogazione servizi tecnici 1 francesco.clabot@netcom-srl.it Fondamenti di ITIL per la Gestione dei Servizi Informatici Il

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

La gestione integrata della sicurezza in Agenzia ANSA: dal firewalling all'utm Michelangelo Uberti, Sales Engineer Babel S.r.l.

La gestione integrata della sicurezza in Agenzia ANSA: dal firewalling all'utm Michelangelo Uberti, Sales Engineer Babel S.r.l. La gestione integrata della sicurezza in Agenzia ANSA: dal firewalling all'utm Michelangelo Uberti, Sales Engineer Babel S.r.l. Babel S.r.l. - P.zza S. Benedetto da Norcia 33, 00040 Pomezia (RM) www.babel.it

Dettagli

Guida Dell di base all'acquisto dei server

Guida Dell di base all'acquisto dei server Guida Dell di base all'acquisto dei server Per le piccole aziende che dispongono di più computer è opportuno investire in un server che aiuti a garantire la sicurezza e l'organizzazione dei dati, consentendo

Dettagli

CORPORATE OVERVIEW. www.akhela.com

CORPORATE OVERVIEW. www.akhela.com CORPORATE OVERVIEW www.akhela.com BRIDGE THE GAP CORPORATE OVERVIEW Bridge the gap Akhela è un azienda IT innovativa che offre al mercato servizi e soluzioni Cloud Based che aiutano le aziende a colmare

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011

Sistemi Web-Based - Terminologia. Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 Sistemi Web-Based - Terminologia Progetto di Sistemi Web-Based Prof. Luigi Laura, Univ. Tor Vergata, a.a. 2010/2011 CLIENT: il client è il programma che richiede un servizio a un computer collegato in

Dettagli

progettiamo e realizziamo architetture informatiche Company Profile

progettiamo e realizziamo architetture informatiche Company Profile Company Profile Chi siamo Kammatech Consulting S.r.l. nasce nel 2000 con l'obiettivo di operare nel settore I.C.T., fornendo servizi di progettazione, realizzazione e manutenzione di reti aziendali. Nel

Dettagli

Architetture CISC e RISC

Architetture CISC e RISC FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architetture CISC e RISC 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n.

Dettagli

PASSIONE PER L IT PROLAN. network solutions

PASSIONE PER L IT PROLAN. network solutions PASSIONE PER L IT PROLAN network solutions CHI SIAMO Aree di intervento PROFILO AZIENDALE Prolan Network Solutions nasce a Roma nel 2004 dall incontro di professionisti uniti da un valore comune: la passione

Dettagli

Profilo Aziendale ISO 9001: 2008. METISOFT spa - p.iva 00702470675 - www.metisoft.it - info@metisoft.it

Profilo Aziendale ISO 9001: 2008. METISOFT spa - p.iva 00702470675 - www.metisoft.it - info@metisoft.it ISO 9001: 2008 Profilo Aziendale METISOFT spa - p.iva 00702470675 - www.metisoft.it - info@metisoft.it Sede legale: * Viale Brodolini, 117-60044 - Fabriano (AN) - Tel. 0732.251856 Sede amministrativa:

Dettagli

CARATTERISTICHE DELLE CRYPTO BOX

CARATTERISTICHE DELLE CRYPTO BOX Secure Stream PANORAMICA Il sistema Secure Stream è costituito da due appliance (Crypto BOX) in grado di stabilire tra loro un collegamento sicuro. Le Crypto BOX sono dei veri e propri router in grado

Dettagli

Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci a settimana

Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci a settimana Storie di successo Microsoft per le Imprese Scenario: Software e Development Settore: Servizi In collaborazione con Neomobile incentra l infrastruttura IT su Microsoft ALM, arrivando a 40 nuovi rilasci

Dettagli

Progettazione di sistemi Embedded

Progettazione di sistemi Embedded Progettazione di sistemi Embedded Corso introduttivo di progettazione di sistemi embedded A.S. 2013/2014 proff. Nicola Masarone e Stefano Salvatori Eccetto dove diversamente specificato, i contenuti di

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello della Web Application 5 3 Struttura della web Application 6 4 Casi di utilizzo della Web

Dettagli

Software 2. Classificazione del software. Software di sistema

Software 2. Classificazione del software. Software di sistema Software 2 Insieme di istruzioni e programmi che consentono il funzionamento del computer Il software indica all hardware quali sono le operazioni da eseguire per svolgere determinati compiti Valore spesso

Dettagli

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN)

Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) Estensione di un servizo di messaggistica per telefonia mobile (per una società di agenti TuCSoN) System Overview di Mattia Bargellini 1 CAPITOLO 1 1.1 Introduzione Il seguente progetto intende estendere

Dettagli

> MULTI TASKING > MULTI PROCESS > MULTI CORE

> MULTI TASKING > MULTI PROCESS > MULTI CORE > MULTI TASKING > MULTI PROCESS > MULTI CORE WorkNC V21 multicore 64 bits : Benefici di WorkNC Aumento generale della produttività, grazie alle nuove tecnologie multi-core, 64 bit e Windows 7 Calcolo di

Dettagli

Installazione LINUX 10.0

Installazione LINUX 10.0 Installazione LINUX 10.0 1 Principali passi Prima di iniziare con l'installazione è necessario entrare nel menu di configurazione del PC (F2 durante lo start-up) e selezionare nel menu di set-up il boot

Dettagli

Introduzione alle applicazioni di rete

Introduzione alle applicazioni di rete Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza

Dettagli

Informatica Applicata

Informatica Applicata Ing. Irina Trubitsyna Concetti Introduttivi Programma del corso Obiettivi: Il corso di illustra i principi fondamentali della programmazione con riferimento al linguaggio C. In particolare privilegia gli

Dettagli

Le funzionalità di un DBMS

Le funzionalità di un DBMS Le funzionalità di un DBMS Sistemi Informativi L-A Home Page del corso: http://www-db.deis.unibo.it/courses/sil-a/ Versione elettronica: DBMS.pdf Sistemi Informativi L-A DBMS: principali funzionalità Le

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

DNS (Domain Name System) Gruppo Linux

DNS (Domain Name System) Gruppo Linux DNS (Domain Name System) Gruppo Linux Luca Sozio Matteo Giordano Vincenzo Sgaramella Enrico Palmerini DNS (Domain Name System) Ci sono due modi per identificare un host nella rete: - Attraverso un hostname

Dettagli

IT FINANCIAL MANAGEMENT

IT FINANCIAL MANAGEMENT IT FINANCIAL MANAGEMENT L IT Financial Management è una disciplina per la pianificazione e il controllo economico-finanziario, di carattere sia strategico sia operativo, basata su un ampio insieme di metodologie

Dettagli

Redatto da Product Manager info@e4company.com. Verificato da E4 Team Supporto supporto@e4company.com

Redatto da Product Manager info@e4company.com. Verificato da E4 Team Supporto supporto@e4company.com Redatto da Product Manager info@e4company.com Verificato da E4 Team Supporto supporto@e4company.com 2 SOMMARIO 1 INTRODUZIONE... 4 2 SOLUTION OVERVIEW... 5 3 SOLUTION ARCHITECTURE... 6 MICRO25... 6 MICRO50...

Dettagli

Architettura degli Elaboratori. Lez. 8 : Il Livello di Sistema Operativo

Architettura degli Elaboratori. Lez. 8 : Il Livello di Sistema Operativo Corso di Laurea Triennale in Informatica Università degli Studi di Bari Aldo Moro Anno Accademico 2012-2013 Lez. 8 : Il Livello di Sistema Operativo Sebastiano Pizzutilo Strutturazione del Sistema Operativo

Dettagli

Efficienza e performance. Soluzioni di storage NetApp

Efficienza e performance. Soluzioni di storage NetApp Efficienza e performance Soluzioni di storage NetApp Sommario 3 Introduzione n EFFICIENZA A LIVELLO DI STORAGE 4 Efficienza di storage: il 100% dei vostri dati nel 50% del volume di storage 6 Tutto in

Dettagli

Acronis Compute with Confidence, Acronis Startup Recovery Manager, Acronis Active Restore ed il logo Acronis sono marchi di proprietà di Acronis, Inc.

Acronis Compute with Confidence, Acronis Startup Recovery Manager, Acronis Active Restore ed il logo Acronis sono marchi di proprietà di Acronis, Inc. Copyright Acronis, Inc., 2000-2011.Tutti i diritti riservati. Acronis e Acronis Secure Zone sono marchi registrati di Acronis, Inc. Acronis Compute with Confidence, Acronis Startup Recovery Manager, Acronis

Dettagli

Symbolic. Ambiti Operativi. Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp.

Symbolic. Ambiti Operativi. Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp. Symbolic Presente sul mercato da circa 10 anni Specializzata in Network Security Partner e distributore italiano di F-Secure Corp. La nostra mission è di rendere disponibili soluzioni avanzate per la sicurezza

Dettagli

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP

MIB PER IL CONTROLLO DELLO STATO DI UN SERVER FTP Università degli Studi di Pisa Facoltà di Scienze Matematiche,Fisiche e Naturali Corso di Laurea in Informatica Michela Chiucini MIB PER IL CONTROLLO DELLO STATO DI UN SERVER

Dettagli

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi. 1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata

AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata AUL22: FactoryTalk View SE Scoprite i vantaggi chiave di una soluzione SCADA integrata Giampiero Carboni Davide Travaglia David Board Rev 5058-CO900C Interfaccia operatore a livello di sito FactoryTalk

Dettagli

Setup e installazione

Setup e installazione Setup e installazione 2 Prima di muovere i primi passi con Blender e avventurarci nel vasto mondo della computer grafica, dobbiamo assicurarci di disporre di due cose: un computer e Blender. 6 Capitolo

Dettagli

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci

Manuale di Remote Desktop Connection. Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci Manuale di Remote Desktop Connection Brad Hards Urs Wolfer Traduzione: Luciano Montanaro Traduzione: Daniele Micci 2 Indice 1 Introduzione 5 2 Il protocollo Remote Frame Buffer 6 3 Uso di Remote Desktop

Dettagli

CHIAVETTA INTERNET ONDA MT503HSA

CHIAVETTA INTERNET ONDA MT503HSA CHIAVETTA INTERNET ONDA MT503HSA Manuale Utente Linux Debian, Fedora, Ubuntu www.ondacommunication.com Chiavet ta Internet MT503HSA Guida rapida sistema operativo LINUX V 1.1 33080, Roveredo in Piano (PN)

Dettagli

Il portafoglio VidyoConferencing. Tutto ciò di cui avete bisogno per realizzare videoconferenze HD di qualità, accessibili e a costi vantaggiosi

Il portafoglio VidyoConferencing. Tutto ciò di cui avete bisogno per realizzare videoconferenze HD di qualità, accessibili e a costi vantaggiosi Il portafoglio VidyoConferencing Tutto ciò di cui avete bisogno per realizzare videoconferenze HD di qualità, accessibili e a costi vantaggiosi La qualità HD di Vidyo mi permette di vedere e ascoltare

Dettagli

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone

Mod. 4: L architettura TCP/ IP Classe 5 I ITIS G. Ferraris a.s. 2011 / 2012 Marcianise (CE) Prof. M. Simone Paragrafo 1 Prerequisiti Definizione di applicazione server Essa è un servizio che è in esecuzione su un server 1 al fine di essere disponibile per tutti gli host che lo richiedono. Esempi sono: il servizio

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option

Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Manuale dell'utente di Symantec Backup Exec System Recovery Granular Restore Option Il software descritto nel presente

Dettagli

Analisi dei requisiti e casi d uso

Analisi dei requisiti e casi d uso Analisi dei requisiti e casi d uso Indice 1 Introduzione 2 1.1 Terminologia........................... 2 2 Modello del sistema 4 2.1 Requisiti hardware........................ 4 2.2 Requisiti software.........................

Dettagli

Il Cloud Computing. Lo strumento per un disaster recovery flessibile. Giorgio Girelli. Direttore Generale Actalis 12/10/2012

Il Cloud Computing. Lo strumento per un disaster recovery flessibile. Giorgio Girelli. Direttore Generale Actalis 12/10/2012 Il Cloud Computing Lo strumento per un disaster recovery flessibile Giorgio Girelli Direttore Generale Actalis 12/10/2012 Agenda Il Gruppo Aruba Disaster Recovery: costo od opportunità? L esperienza Aruba

Dettagli

White Paper. Operational DashBoard. per una Business Intelligence. in real-time

White Paper. Operational DashBoard. per una Business Intelligence. in real-time White Paper Operational DashBoard per una Business Intelligence in real-time Settembre 2011 www.axiante.com A Paper Published by Axiante CAMBIARE LE TRADIZIONI C'è stato un tempo in cui la Business Intelligence

Dettagli

Web Conferencing Open Source

Web Conferencing Open Source Web Conferencing Open Source A cura di Giuseppe Maugeri g.maugeri@bembughi.org 1 Cos è BigBlueButton? Sistema di Web Conferencing Open Source Basato su più di quattordici componenti Open-Source. Fornisce

Dettagli

WAN 80.80.80.80 / 24. L obiettivo è quello di mappare due server web interni (porta 80) associandoli agli indirizzi IP Pubblici forniti dall ISP.

WAN 80.80.80.80 / 24. L obiettivo è quello di mappare due server web interni (porta 80) associandoli agli indirizzi IP Pubblici forniti dall ISP. Configurazione di indirizzi IP statici multipli Per mappare gli indirizzi IP pubblici, associandoli a Server interni, è possibile sfruttare due differenti metodi: 1. uso della funzione di Address Translation

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Esperienze e soluzioni realizzate nell ambito del Progetto S.I.MO.NE

Esperienze e soluzioni realizzate nell ambito del Progetto S.I.MO.NE Programma Enti Locali Innovazione di Sistema Esperienze e soluzioni realizzate nell ambito del Progetto S.I.MO.NE 1 Premessa Il presente documento ha lo scopo di facilitare la disseminazione e il riuso

Dettagli

Consulenza tecnologica globale

Consulenza tecnologica globale Orientamento al cliente Innovazione Spirito di squadra Flessibilità Un gruppo di professionisti dedicati alle imprese di ogni settore merceologico e dimensione, capaci di supportare il Cliente nella scelta

Dettagli

IBM Cognos 8 BI Midmarket Reporting Packages Per soddisfare tutte le vostre esigenze di reporting restando nel budget

IBM Cognos 8 BI Midmarket Reporting Packages Per soddisfare tutte le vostre esigenze di reporting restando nel budget Data Sheet IBM Cognos 8 BI Midmarket Reporting Packages Per soddisfare tutte le vostre esigenze di reporting restando nel budget Panoramica Le medie aziende devono migliorare nettamente le loro capacità

Dettagli

Prot. 1377. Cagliari, 13/03/2013. > Spett.le IT Euromedia Srl Via Galvani, 27/29 09047 SELARGIUS - CA. Fax: 070.7731009 e-mail: info@iteuromedia.

Prot. 1377. Cagliari, 13/03/2013. > Spett.le IT Euromedia Srl Via Galvani, 27/29 09047 SELARGIUS - CA. Fax: 070.7731009 e-mail: info@iteuromedia. Prot. 1377 Cagliari, 13/03/2013 > Spett.le IT Euromedia Srl Via Galvani, 27/29 09047 SELARGIUS - CA Fax: 070.7731009 e-mail: info@iteuromedia.eu ORDINE D ACQUISTO N. 39/2013 RIF. DET. A CONTRARRE N. 31

Dettagli

Boot Camp Guida di installazione e configurazione

Boot Camp Guida di installazione e configurazione Boot Camp Guida di installazione e configurazione Indice 3 Introduzione 4 Panoramica dell'installazione 4 Passo 1: Verificare la presenza di aggiornamenti 4 Passo 2: Per preparare il Mac per Windows 4

Dettagli

B.P.S. Business Process Server ALLEGATO C10

B.P.S. Business Process Server ALLEGATO C10 B.P.S. Business Process Server ALLEGATO C10 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel

Dettagli

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT

Copyright Università degli Studi di Torino, Progetto Atlante delle Professioni 2009 IT PROCESS EXPERT IT PROCESS EXPERT 1. CARTA D IDENTITÀ... 2 2. CHE COSA FA... 3 3. DOVE LAVORA... 4 4. CONDIZIONI DI LAVORO... 5 5. COMPETENZE... 6 Quali competenze sono necessarie... 6 Conoscenze... 8 Abilità... 9 Comportamenti

Dettagli

Business Process Management

Business Process Management Business Process Management Comprendere, gestire, organizzare e migliorare i processi di business Caso di studio a cura della dott. Danzi Francesca e della prof. Cecilia Rossignoli 1 Business process Un

Dettagli

Corso di Alfabetizzazione Informatica

Corso di Alfabetizzazione Informatica Corso di Alfabetizzazione Informatica Scopo di questo corso, vuole essere quello di fornire ad ognuno dei partecipanti, indipendentemente dalle loro precedenti conoscenze informatiche, l apprendimento

Dettagli

PROFILI ALLEGATO A. Profili professionali

PROFILI ALLEGATO A. Profili professionali ALLEGATO A Profili professionali Nei profili di seguito descritti vengono sintetizzate le caratteristiche di delle figure professionali che verranno coinvolte nell erogazione dei servizi oggetto della

Dettagli

Web Conferencing and Collaboration tool

Web Conferencing and Collaboration tool Web Conferencing and Collaboration tool La piattaforma Meetecho Piattaforma di Web Conferencing e Collaborazione on line in tempo reale Caratteristiche generali Soluzione client-server progettata per essere

Dettagli

Dalla Mappatura dei Processi al Business Process Management

Dalla Mappatura dei Processi al Business Process Management Dalla Mappatura dei Processi al Business Process Management Romano Stasi Responsabile Segreteria Tecnica ABI Lab Roma, 4 dicembre 2007 Agenda Il percorso metodologico Analizzare per conoscere: la mappatura

Dettagli

GUIDA ALLE BEST PRACTICE PER MOBILE DEVICE MANAGEMENT E MOBILE SECURITY

GUIDA ALLE BEST PRACTICE PER MOBILE DEVICE MANAGEMENT E MOBILE SECURITY GUIDA ALLE BEST PRACTICE PER MOBILE DEVICE MANAGEMENT E MOBILE SECURITY Con Kaspersky, adesso è possibile. www.kaspersky.it/business Be Ready for What's Next SOMMARIO Pagina 1. APERTI 24 ORE SU 24...2

Dettagli

Gestire le comunicazione aziendali con software Open Source

Gestire le comunicazione aziendali con software Open Source Gestire le comunicazione aziendali con software Open Source Data: Ottobre 2012 Firewall pfsense Mail Server Zimbra Centralino Telefonico Asterisk e FreePBX Fax Server centralizzato Hylafax ed Avantfax

Dettagli

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE

ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE ORACLE BUSINESS INTELLIGENCE STANDARD EDITION ONE A WORLD CLASS PERFORMANCE Oracle Business Intelligence Standard Edition One è una soluzione BI completa, integrata destinata alle piccole e medie imprese.oracle

Dettagli