Kernel-Based Virtual Machine

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Kernel-Based Virtual Machine"

Transcript

1 Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato finale in Sistemi Operativi Kernel-Based Virtual Machine Anno Accademico 2013/2014 Candidato: Luigi Gallo matr. N

2

3 Indice Indice... III Introduzione... 4 Capitolo 1: Introduzione alla Virtualizzazione Tecniche di Virtualizzazione Estensioni di Virtualizzazione per architetture x Capitolo 2: Kernel-Based Virtual Machine Architettura Generale KVM: gestione della memoria Richiami di gestione della memoria Virtualizzazione della memoria in KVM Traduzione da indirizzo guest ad indirizzo host Extended Page Tables e Rapid Virtualization Indexing MMU Notifiers KVM: gestione dell Input/Output Richiami di gestione dell Input/Output Input/Output Para-virtualizzato Input/Output con hardware assistance Altre funzionalità di KVM Capitolo 3: Virt-IO VirtIO: cenni implementativi Conclusioni Bibliografia... 32

4 Introduzione Grazie alla diffusione di hardware sempre più potente, in grado di far eseguire più sistemi operativi in maniera concorrente, si diffondono di conseguenza le tecnologie software in grado di sfruttarlo a pieno. Tra queste vi è la Virtualizzazione. In questo elaborato di tesi verrà presentato uno dei progetti liberi più diffusi nel campo della virtualizzazione: Kernel-Based Virtual Machine (KVM). In un breve capitolo introduttivo saranno discussi prima i concetti di base della virtualizzazione, soffermandoci sulle differenze tra le varie tecniche esistenti e su ciò che ha permesso lo sviluppo di KVM; successivamente passeremo alla trattazione specifica di KVM: i principi basilari, la sua architettura generale, come si propone di gestire la memoria delle macchine virtuali, come si propone di gestire le operazioni Input/Output, ed alcune delle funzionalità secondarie. La trattazione si chiude con la presentazione di VirtIO: sistema supportato da KVM per l I/O Virtualization, 4

5 Capitolo 1: Introduzione alla Virtualizzazione Utilizzare un sistema informatico per emularne un altro similare, è l idea che è alla base della Virtualizzazione. La Virtualizzazione ha origini ben radicate, ed esiste quasi da quando esistono i computer: si è capito da subito che in questo modo si sarebbe potuto svolgere in maniera più sicura, o migliore, molte operazioni che eseguono i computer generalmente. Questo ci è testimoniato dal documento scientifico "Survey of Virtual Machine Research" di Goldberg del 1974 [1], il quale già allora esprimeva le potenzialità di questa tecnica e prevedeva alcuni sviluppi che negli anni a venire effettivamente sono stati realizzati. Tecnicamente, per Virtualizzazione si intende l astrazione delle risorse hardware di un calcolatore costruendo in questo modo una Macchina Virtuale sulla quale è possibile istallare ed eseguire Sistemi Operativi ed altro software. Come prima peculiarità di questo tipo di tecnologie vi è la possibilità di utilizzare più macchine virtuali sulla stessa macchina fisica. Ognuna di esse avrà il suo ambiente operativo separato dagli altri, agendo così in totale sicurezza. L hardware effettivamente necessario è dunque utilizzato a pieno: si riducono costi di acquisto e di alimentazione. Figura 1: virtualizzazione delle risorse 5

6 I vantaggi apportati dall utilizzo di questo tipo di tecnologie sono innumerevoli, sia per architetture desktop, e ancor di più per architetture Server: di solito, per ragioni di sicurezza, si riteneva opportuno eseguire una singola applicazione su una singola macchina fisica. La trasformazione Physical-to-Virtual (P2V) ha stravolto queste credenze, abbattendo il sovradimensionando dei server e portando a grosse riduzioni di costi. La Virtualizzazione è ritenuta vantaggiosa anche in fase di sviluppo e debugging: ispezionare, controllare e configurare una macchina virtuale è molto più semplice in confronto alle macchine fisiche. Anche in fase di testing vi è maggiore comodità, in quanto eventuali errori riscontrati non inficiano sull integrità delle altre macchine virtuali e del sistema ospitante. La portabilità e la duplicazione di macchine virtuali, infine, ci permettono di migrarle su un altra macchina ospitante o di possederne una copia di backup in un certo stato. Il componente centrale di un sistema basato sulla virtualizzazione è l Hypervisor. L Hypervisor, o Virtual Machine Monitor (VMM), ha il compito di gestire la coesistenza di una o più macchine virtuali sulla stessa macchina fisica; il suo operato deve essere trasparente alle macchine virtuali e soprattutto non deve aggiungere eccessivo overhead alle operazioni, in modo da non pesare sulle prestazioni dell intero sistema. 1.1 Tecniche di Virtualizzazione La virtualizzazione può essere implementata utilizzando una delle seguenti tre tecniche: Full-Virtualization, Para-Virtualization, Hardware-Assisted Virtualization. [2] Esse differiscono profondamente tra loro, e in linea di principio non si può dire quale sia la migliore in quanto le prestazioni dipendono fortemente dal tipo di carico di lavoro e quindi dalla particolare applicazione in cui vengono utilizzate. La Full-Virtualization è la tecnica di virtualizzazione attualmente più diffusa, compatibile 6

7 con tutti i sistemi operativi. Esegue il codice utente direttamente sulla CPU fisica, ed effettua una traduzione binaria di quelle istruzioni non virtualizzabili del kernel con altre che hanno l effetto desiderato sull Hardware virtuale. Il Virtual Machine Monitor provvede a fornire ad ogni macchina virtuale tutti i servizi di un sistema fisico, quali BIOS virtuale, dispositivi virtuali, gestione della memoria virtuale. Questa tecnica consente di disaccoppiare completamente il sistema operativo Guest dall Hardware fisico, in modo da tenerlo completamente allo scuro della virtualizzazione sottostante. Non è richiesta, per questo motivo, alcuna modifica ai sistemi operativi Guest. La Para-Virtualization invece risolve le criticità della virtualizzazione modificando il Kernel del sistema operativo. Sostituisce le istruzioni non virtualizzabili del Kernel, con Hypercall che comunicano con l Hypervisor. Vi sono apposite API che risolvono i problemi di gestione della memoria, gestione dell I/O e gestione delle interrupt. Questa tecnica è meno diffusa rispetto alla Full-virtualization perché produce un guadagno in prestazioni solo in alcuni ambiti e per alcuni carichi di lavoro; inoltre soffre di una scarsa compatibilità con alcuni sistemi operativi. La Hardware-Assisted Virtualization, infine, è la più moderna delle tre ed è quella che approfondiremo maggiormente poiché è strettamente correlata a KVM. Questa tecnica già da adesso tiene testa alla più collaudata Full-Virtualization, ma si pensa che per il futuro possa sostituirla completamente. 1.2 Estensioni di Virtualizzazione per architetture x86 Ciò che ha permesso lo sviluppo di KVM è stato, da parte dei fornitori dei processori con architetture x86 (e.g., Intel, AMD), l aggiunta delle estensioni di virtualizzazione all instruction set. Senza di esse è noto come fosse difficile la virtualizzazione con hardware x86, e proprio per l importanza che essa sta acquisendo negli ultimi anni, Intel e AMD hanno lavorato in questo senso. Tali estensioni prendono il nome di Intel VT-x e AMD-V, e sono in dotazione a tutti i 7

8 processori di ultima generazione. Questo nuovo instruction set ha di fatto aggiunto alle già esistenti Kernel Mode e User Mode, la Guest Mode: una modalità operativa del processore con tutti i normali privilegi. Codice proveniente da macchine virtuali, che sia codice di applicazioni o codice privilegiato, esegue in questa particolare modalità. La particolarità è che il software di sistema può richiedere di bloccare selettivamente delle istruzioni o l accesso a particolari registri. Quando vi è uno switch verso la Guest Mode, o di ritorno dalla Guest Mode, avviene un cambio nei registri di controllo, tra cui l instruction pointer. Inoltre quando per mezzo di uno switch si esce dalla Guest Mode, l hardware tramite un report segnala il motivo di questo switch. A raccogliere questa segnalazione vi è l Hypervisor, che esegue in Kernel Mode, e può intraprendere le azioni necessarie per permettere l eventuale ripresa della Guest Mode. In questo modo non c è necessità di tradurre codice, e si risolvono a livello Hardware alcune problematiche della Virtualizzazione, semplificando dunque i Virtual Machine Monitor. Ne consegue un guadagno in prestazioni. Il supporto Hardware fornito da queste estensioni, come vedremo nel prossimo capitolo, è di estrema utilità per i Virtual Machine Monitor anche per la gestione della memoria e la gestione dell I/O. KVM dunque esegue una virtualizzazione completa, servendosi fortemente dell assistenza dell Hardware. 8

9 Capitolo 2: Kernel-Based Virtual Machine Kernel-based Virtual Machine (KVM) è una soluzione oper source alla virtualizzazione, che aggiunge un Hypervisor perfettamente integrato nel kernel Linux. Permette la creazione e l esecuzione di una o più macchine virtuali che si integrano perfettamente con il resto del sistema, e vengono viste come normali processi Linux. L idea di base è di far eseguire codice proveniente da macchine virtuali direttamente sulla CPU fisica. KVM necessita inoltre di un emulatore QEMU (Quick EMUlator), in versione modificata, il quale si preoccupa dell effettiva costruzione della macchina virtuale. 2.1 Architettura Generale KVM si compone di un modulo kernel di base kvm.ko, che fornisce l infrastruttura principale alla virtualizzazione; inoltre, è dotato di altri due moduli specifici, kvm-intel.ko in riferimento all estensioni di virtualizzazione fornite da Intel, e kvm-amd.ko per quelle di AMD. [3] KVM gode di un ampia compatibilità con l hardware, e di una grossa robustezza, derivante proprio dal fatto che utilizza a pieno i moduli di un sistema ben collaudato quale è il kernel Linux. Nell sviluppo di KVM, ci si è concentrati molto più sulle criticità dell hypervisor, delegando al sistema operativo Linux e all Hardware il lavoro sporco (e.g. scheduling, I/O). Questo tipo di approccio si crede possa essere la forza di questo prodotto open source che 9

10 rischia di affermarsi anche a dispetto di piattaforme proprietarie. KVM è strutturato come un tipico device a caratteri in Linux: il suo device node è /dev/kvm, e viene utilizzato per creare ed eseguire macchine virtuali tramite l utilizzo di system call di input/output control, ioctl(). Le operazioni messe a disposizione sono: creazione di una macchina virtuale; allocazione di memoria per una macchina virtuale; lettura e scrittura di registri di CPU virtuale; iniezione di una interrupt in una CPU virtuale; esecuzione di una CPU virtuale. L esecuzione di una CPU virtuale richiede di fatto l utilizzo della Guest Mode. Figura 2: ciclo Guest mode [3] 10

11 Come mostrato in figura, l esecuzione Guest avviene in un ciclo passando per le tre modalità User, Kernel e poi Guest: al livello più esterno vi è la chiamata di una system call affinchè si possa eseguire codice Guest. L esecuzione si arresterà solo a causa di eventuali istruzioni di I/O, o per altri eventi esterni quali l arrivo di pacchetti di rete o altri tipi di interrupt. A livello Kernel invece si forza il processore ad entrare in Guest Mode, con la quale si esegue codice proveniente da macchine virtuali. In seguito, all uscita dalla Guest Mode, si eseguono le operazione necessarie alla ripresa dell esecuzione; queste dipendono ovviamente dalla motivazione per cui si è usciti dalla Guest Mode. 2.2 KVM: gestione della memoria La memoria centrale è uno dei componenti più importanti di un calcolatore, e pertanto il suo grado di ottimizzazione pesa molto sulle prestazione di tutto il sistema. Considerazioni analoghe, se non ancora più forti, si possono fare per le macchine virtuali. Per comprendere a pieno come KVM virtualizza la memoria richiamiamo velocemente concetti di gestione della memoria in ambito non virtualizzato Richiami di gestione della memoria Nei moderni sistemi operativi, i programmi utente lavorano con indirizzi logici (virtuali) di memoria, che saranno poi tradotti in indirizzi fisici di memoria con il supporto hardware del Memory Managment Unit (MMU). Il lavoro dell MMU è affiancato dal Translation Lookaside Buffer (TLB), che è una memoria associativa che effettua attività di caching. Linux ha una gestione della memoria paginata, non segmentata, con livelli di paginazione e diverse dimensioni delle pagine, per permettere la portabilità. Il processo è ingabbiato nel suo spazio di indirizzamento: non vede dati/istruzioni di altri processi, dati/istruzioni del sistema operativo e gli intervalli di indirizzi di I/O 11

12 memory-mapped dei dispositivi. L unico modo che hanno per interagire con l esterno è tramite il sistema operativo (e.g. System call, risorse condivise). In questo modo si realizza la protezione delle risorse. I processi possono richiedere l allocazione di spazi di memoria con una system call, e la memoria allocata viene aggiunta nella tabella delle pagine. Quando il processo accede ad uno spazio di memoria, la pagina viene mappata sulla memoria fisica. Il Kernel, per sua necessità, può rimuovere il mapping pagina-mem.fisica in qualunque momento; quando il processo vi farà di nuovo accesso, si scatenerà un errore di Page Fault e bisognerà mappare di nuovo la pagina Virtualizzazione della memoria in KVM Le macchine virtuali di KVM sono viste come normali processi Linux, e dunque per allocare memoria ad una di essa verrà effettuata una classica system call Malloc(). Se per esempio vogliamo che la macchina virtuale abbia una memoria fisica di 1GB, KVM con una Malloc() le allocherà 1GB di spazio in memoria virtuale (intesa come spazio di indirizzi logici). Questo spazio di memoria non verrà mappato in memoria fisica al momento della Malloc(), ma soltanto quando il processo, e cioè la macchina virtuale, vi farà effettivamente accesso. Mostrando le macchine virtuali, al sistema ospitante Linux, come normali processi, si ottiene automaticamente il risultato di disaccoppiare efficacemente gli ambienti operativi delle macchine virtuali. Una macchina virtuale non può accedere a dati/istruzioni delle altre macchine virtuali né del sistema ospitante. La visione della memoria che ha una macchina virtuale è contigua ed esclusiva, come fosse la sua memoria fisica. 12

13 Figura 3: Memory Virtualization [3] Sulle macchine virtuali eseguiranno i sistemi operativi guest, che attueranno le loro attività di gestione della memoria; avranno le loro tabelle delle pagine guest ed i loro indirizzi di memoria guest. Bisogna in qualche modo sincronizzare le attività guest e le attività host, in modo che non si invalidino tra loro Traduzione da indirizzo guest ad indirizzo host In un sistema basato su virtualizzazione, in aggiunta alla traduzione da indirizzo virtuale a indirizzo fisico, deve essere eseguita la traduzione da indirizzo guest ad indirizzo host. Se volessimo concatenare semplicemente queste due traduzioni, eseguendole in sequenza ad 13

14 ogni accesso in memoria, riscontreremmo grossi cali di prestazioni. Inoltre, in questo modo il sistema operativo guest dovrebbe poter accedere alla tabella delle pagine acceduta dall Hardware fisico, violando così il principio per cui le macchine virtuali sono totalmente disaccoppiate da esso. La tecnica di base utilizzata da KVM è quella tipica dei più comuni sistemi basati su virtualizzazione: la Shadow Page Tables. La tabella delle pagine utilizzata dall hardware è separata da quelle utilizzate dalle macchie virtuali. Quando un guest KVM effettua un cambiamento nella sua tabella delle pagine, l host dovrà prontamente accorgersi di ciò, e a sua volta replicare il cambiamento nella reale tabella delle pagine acceduta dall hardware. KVM è in grado di bloccare l esecuzione della guest mode, quando il guest prova a settare il registro CR3 che punta alla tabella delle pagine, grazie alle estensioni hardware messe a disposizione dal processore. Ogni modifica di una entry nella guest page table, o l inserimento di una nuova entry, viene intercettata da KVM che replica la modifica nella reale tabella delle pagine. In linea di principio questo meccanismo funziona bene perché si evita di eseguire la duplice traduzione, e può coesistere perfettamente con tutte le operazioni di gestione della memoria eseguite dal sistema guest (per esempio i page fault). [4] Figura 4: Shadow Page Tables [5] 14

15 Nasce, però, l esigenza di tenere sincronizzate le tabelle delle pagine guest e la shadow page table: ogni modifica nella guest page table richiede più accessi in memoria, oltre che ulteriore overhead introdotto dalla necessità di bloccare l esecuzione guest ogni volta. Ovviamente il problema si aggrava ulteriormente se pensiamo alla situazione in cui coesistono più macchine virtuali, ognuna con le proprie CPU virtuali. Il mantenimento di questa sincronizzazione costa un calo di prestazioni non trascurabile. Per questo motivo lo sviluppo di KVM è andato avanti, per aggiungere la compatibilità con le nuove estensioni Hardware per una gestione della memoria più efficiente Extended Page Tables e Rapid Virtualization Indexing Per sovvertire a questo grosso calo di prestazioni Intel e AMD hanno proposto le proprie soluzioni, entrambe basate sull idea di effettuare la traduzione da guest physical address a host physical address senza passare attraverso l host page table. Queste estensioni prendono il nome di Extended Page Tables (EPT)(Intel) e Rapid Virtualization Indexing (RVI) (AMD, anche conosciute come Nested Page Tables, NPT). Si permette al sistema operativo guest di gestire gli indirizzi guest, e di effettuare la traduzione da indirizzo guest logico ad indirizzo guest fisico; non vi è alcuna sincronizzazione con la tabella delle pagine host. EPT/RVI entra in gioco quando poi bisogna ottenere l indirizzo host fisico (definito anche machine address). Figura 5: traduzione con EPT [10] 15

16 Non entriamo nel dettaglio di come EPT/RVI effettuano questa traduzione essendo un meccanismo esterno a KVM, ma ci interessa il principio di funzionamento di base e quanto possa migliorare le prestazioni. Per eseguire velocemente questa traduzione è stato definito un insieme di strutture riconosciute dall hardware: ci si affida ad un TLB più grande per tenere traccia anche delle traduzioni richieste direttamente dalle macchine virtuali. Potranno tranquillamente coesistere in questo super TLB voci provenienti da macchine virtuali diverse, identificate con dei tag specifici della macchina virtuale. Figura 6: EPT/NPT Questo meccanismo soffre molto i TLB miss, i quali per essere risolti richiedono un numero considerevole di accessi in memoria, e per questo è necessario un TLB abbastanza grande per ridurli al minimo. Con questa tecnica, KVM è esonerato dal compito di tradurre gli indirizzi guest: secondo Intel le prestazioni possono migliorare addirittura del 48% [5]. 16

17 2.2.5 MMU Notifiers Sia che trattasi di Shadow Page Tables o di EPT/RVI, abbiamo in qualche modo visto come KVM può sincronizzare la gestione della memoria del sistema ospitante a valle di una modifica nella memoria virtuale del sistema Guest. Cosa accade invece se la modifica nativa avviene nell host page table, e cioè nella reale memoria acceduta dall Hardware? Sappiamo che i sistemi operativi, ed in particolare Linux, attuano diverse attività di gestione della memoria, a prescindere delle macchine virtuali (e.g. swapping, condivisione di pagine, rilocazione). Queste attività possono invalidare le tabelle delle pagine guest (oppure EPT/RVI), causando malfunzionamenti. Si potrebbe, in linea di principio, pensare di evitare il problema settando come pinned le pagine di memoria delle macchine virtuali sulla memoria fisica; cioè impedire, bloccare, le operazioni di swapping su queste pagine. In questo modo staremmo in pratica impedendo a tutta la gestione della memoria di usufruire dei grossi vantaggi della paginazione. Una forzatura decisamente eccessiva. MMU_Notifiers è la soluzione adottata da KVM per questo problema: ogni volta che attività specifiche di gestione della memoria centrale riguardano spostamenti di pagine di macchine virtuali, il kernel con una chiamata a mmu_notifier invalidate_page() invaliderà la particolare entry nella guest page table (o struttura EPT/RVI). Sarebbe come notificare la macchina virtuale dell operazione. Successivamente, quando il Guest tenterà l accesso a queste aree di memoria, si bloccherà in un page fault, che sarà risolto nelle normali modalità. Esistono altre funzioni mmu notifier, ognuna per ogni particolare esigenza di gestione della memoria; per esempio nel momento dell allocazione di una nuova pagina di memoria a vantaggio di una macchina virtuale, vi è la chiamata a mmu_notifier change_pte() che provvede ad inserire la nuova entry nella guest page table (o struttura EPT/RVI). 17

18 2.3 KVM: gestione dell Input/Output La gestione delle operazioni di Input/Output di un sistema virtualizzato è il punto più debole della virtualizzazione e in particolare di KVM. Per mezzo della grossa eterogeneità delle periferiche, e della lentezza delle stesse in confronto alla velocità di esecuzione degli altri componenti (e.g. CPU, memoria), l I/O è causa di cali di prestazioni anche in sistemi non virtualizzati. Con l overhead aggiunto dalla virtualizzazione, per macchine che eseguono molte operazione di I/O (per esempio le macchine server), questo problema può risultare un collo di bottiglia abbastanza critico. Esistono diversi sistemi che virtualizzano l I/O in modo efficiente, ognuno di essi riconducibile ad uno dei seguenti tipi: Emulation of devices (Software) Para-virtualization (Software) Hardware Assistance Richiami di gestione dell Input/Output La maggiore parte dei dispositivi di I/O sono estremamente lenti se comparati alla memoria centrale. E necessario dunque mettere a punto tecniche che impediscono alle operazioni di I/O di inficiare le prestazioni del sistema. Rendere efficiente l I/O significa rendere efficiente anche le altre componenti del sistema. Le tecniche di riferimento sono: I/O programmato: il processo attende il completamento dell operazione di I/O; I/O Interrupt-driven: il processo invoca un comando di I/O e si sospende, in modo da liberare la CPU. Quando l operazione è terminata il modulo di I/O invia un interrupt. Direct Memory Access (DMA): il sistema operativo invia al DMA la richiesta di 18

19 I/O, con l indirizzo del dispositivo e altre informazioni necessarie. Completato il trasferimento, il DMA invia un interrupt alla CPU. Ogni periferica necessita di essere configurata prima dell utilizzo; tutto il codice che dipende dal dispositivo viene gestito dal driver del dispositivo. Il compito di un driver è di accettare le richieste provenienti dal device-indipendent software e di controllare che queste siano eseguite Schema di base di KVM Figura 7: KVM, schema di I/O virtualization Le richieste di Input/Output possono avere diversa natura (e.g. Programmed I/O, Memory- Mapped I/O), ognuna di esse con la propria complessità nell essere virtualizzate. 19

20 Il compito di KVM quando trattasi di gestione dell Input/Output è quello di intercettare le richieste di I/O da parte del Guest OS, risolverle, ed emulare il comportamento dei dispositivi. Trattasi infatti di Emulation of devices I/O Virtualization. Dal lato Host, deve permettere l iniezione di interruzioni nel sistema Guest. KVM, per la risoluzione delle richieste di I/O necessita di uscire dalla guest mode. Tutte le richieste di Input/Output vengono inoltrate allo userspace, ed eventualmente si innesca una reale operazione di Input/Output (per esempio il trasferimento di un pacchetto di rete). Al completamento dell operazione vi sono meccanismi per iniettare l interruzione nel sistema guest. Esistono particolari flag che segnalano quando il guest è pronto a ricevere l interruzione. Non è molto diffuso nel dettaglio come KVM risolva queste problematiche poiché spesso si affiancano a KVM sistemi dedicati esclusivamente all I/O, più sofisticati e nettamente più efficienti (e.g. Virtio, capitolo 3) Input/Output Para-virtualizzato Un altro approccio che può essere utilizzato per le operazioni di Input/Output può essere quello della Para-virtualizzazione. Le richieste di I/O da parte delle applicazioni che eseguono nel sistema guest arrivano come di consueto ai driver guest; essi saranno delle versioni modificate che invocheranno a loro volta, con le Hypercall, l intervento dell Hypervisor. Utilizzando questo approccio, il Virtual Machine Monitor non si deve preoccupare di intercettare le richieste di I/O, e di emulare il comportamento dell hardware, ma esse giungeranno autonomamente con la cooperazione dei driver. 20

21 Figura 8: I/O Para-virtualization Questo non è un banale risultato ottenuto, poiché alcune operazione di I/O, per esempio il Memory-Mapped I/O, utilizza le stesse istruzioni di un normale accesso in memoria. C era quindi prima la difficoltà di riconoscere queste richieste e poi di virtualizzarle; il problema non era di facile risoluzione. La gestione delle richieste di I/O è uno degli ambiti in cui la Paravirtualizzazione può funzionare meglio della Full-Virtualization. Questa combinazione di Full-Virtualization con I/O Paravirtualizzato a volte viene definita Hybrid Virtualization Input/Output con hardware assistance Per quanto riguarda l Hardware assisted I/O virtualization facciamo riferimento ad architetture Intel. 21

22 Intel Virtualization Technology for Directed I / O (VT-d) è una ulteriore estensione delle tecnologie di virtualizzazione (VT-x) fornite da Intel, e riguarda prettamente la virtualizzazione dell I/O. Intel VT-d migliora la sicurezza, l affidabilità e le prestazioni dei dispositivi di I/O in ambiente virtualizzato, spingendo ancora oltre la virtualizzazione nella sua missione di riduzione di costi e velocità produttiva[n]. Questa nuova tecnologia è implementata in Hardware, e consiste nell aggiunta di un DMA-remapping che si trova tra il DMA delle periferiche e la memoria fisica. Questo nuovo componente ha il compito di far comunicare i dispositivi di I/O direttamente con le macchine virtuali, in modo che il VMM non viene invocato ad ogni richiesta di I/O. Intel VT-d consente al software di sistema di creare domini di protezione in memoria fisica, che possono rappresentare memoria allocata ad una macchina virtuale oppure allocata da un driver del sistema guest. I dispositivi di I/O vengono assegnati a particolari domini di protezione, e ciò fornisce l isolamento necessario a garantire la protezione delle risorse di ogni macchina virtuale. Quando un dispositivo tenta di accedere ad una particolare locazione di memoria, il DMAremapping verifica se il dispositivo è autorizzato ad accedere al particolare dominio protetto; se non è autorizzato viene segnalato un errore al software di sistema. Figura 9: DMA-remapping [8] In questo modello i dispositivi di I/O sono assegnati direttamente alle macchine virtuali, e 22

23 perciò possono comunicarci in maniera diretta. Quando vi è una richiesta di I/O da parte di un driver del sistema guest non vi è l invocazione del VMM. Il VMM esegue solo attività di controllo al momento dell assegnazione del dispositivo alla particolare macchina virtuale. E il driver del sistema guest a controllare il dispositivo. Sappiamo però che il sistema operativo guest lavora con indirizzi guest, che saranno poi tradotti in indirizzi host. Nasce dunque l esigenza di eseguire questa conversione, ed è il principale compito del DMAremapping (da cui il nome rimappatura ). Il DMA-remapping è programmato dal VMM, che conosce le corrispondenze GPA-HPA (indirizzo guest indirizzo host), in modo che i dati vengano trasferiti direttamente sul buffer appropriato del guest. Non vi è alcuna attività di emulazione da parte del VMM né alcuna modifica nei driver del sistema guest.[8] Figura 10: assegnazione diretta del dispositivo [8] 2.4 Altre funzionalità di KVM KVM supporta molte funzionalità desiderabili nell ambito della virtualizzazione. 23

24 Uno dei motivi per cui la virtualizzazione ha preso piede nell informatica moderna è la possibilità di migrare le macchine virtuali su un altro sistema host: Live Migration. KVM supporta la Live Migration senza interrompere l esecuzione della macchina virtuale durante il trasporto; può essere considerata funzionante e connessa in rete sempre, dato che risulta inattiva solo per poche decine di millisecondi. Gli utenti che la utilizzano in maniera remota, non si accorgeranno della rilocazione su un diverso host fisico. La Live Migration funziona copiando Figura 11: Live migration [6] la memoria del guest sull host d arrivo della migrazione, in parallelo con l esecuzione del guest ancora sull host di partenza; se una pagina di memoria viene modificata dopo la sua copia sull host d arrivo, essa dovrà essere ricopiata. A questo proposito, KVM fornisce un dirty page log per tener traccia delle pagine di memoria da ricopiare. La Live Migration è utilizzata anche per copiare le macchine virtuali in un certo stato, per possederne copie di buckup su un altro host fisico. KVM supporta anche il Kernel SamePage Merging (KSM): un sistema che permette la condivisione di pagine di memoria tra macchine virtuali. Spesso in memoria vi sono pagine ridondanti per mezzo che ogni copia è riferita ad una singola macchina virtuale. Con KSM si fa uno scanning della memoria delle macchine virtuali, e qualora si trovino pagine identiche ne si fa l unione in una singola pagina condivisa tra due o più macchine virtuali. Se successivamente uno dei guest tenta di modificare una pagina condivisa, otterrà la sua copia privata. KSM è una funzionalità che KVM supporta in quanto facente parte del kernel Linux. VirtIO mette a disposizione di KVM un driver specifico per il supporto al ballooning, e cioè i guest KVM possono dinamicamente ridurre o incrementare la dimensione della propria memoria. Questa funzionalità è utile a sostenere l host KVM in caso di 24

25 over-committing della memoria. Supponiamo di avere una macchina virtuale con una memoria di 2GB; se per esempio sta utilizzando soltanto 1GB di memoria, potrebbe essere utile cedere il GB restante all host, in modo che possa assegnarlo ad un altra macchina virtuale oppure farne in ogni caso un utilizzo migliore. Le operazioni principali implementate dal balloon driver sono quindi: Inflate: memoria viene ceduta dal guest all host; Deflate: memoria viene ceduta dall host al guest; Figura 12: ballooning [9] Non è sempre prevedibile come si distribuiscono sulle macchine virtuali i carichi di lavoro, quindi avere la possibilità di concedere memoria aggiuntiva ad una macchina virtuale sotto pressione, a svantaggio di un altra al momento più libera, può aumentare la produttività dell intero sistema. Inizialmente c era il problema che questa gestione dinamica dell assegnazione di memoria doveva essere fatta del tutto manualmente; doveva esserci qualcuno a monitorare la situazione e decidere in che modo effettuare il ballooning. Dato che questa funzionalità deve essere automatica per essere davvero utile, nelle ultime versioni di KVM è stata aggiunta la automatic ballooning: i guest e l host cooperano in 25

26 modo che, se è possibile, nessuno vada sotto pressione con la memoria. Sono definiti tre livelli di pressione della memoria, per ognuno dei quali i guest ritornano all host un certo numero di MB di memoria, in dipendenza al proprio livello di pressione di memoria. [9] Sia per la definizione dei livelli di pressione che per il numero di MB restituiti, ci sono parametri da settare, modificabili anche a run-time. Il tuning di questi parametri è importante per un corretto funzionamento dell automatic ballooning, e dipende fortemente dalla distribuzione dei carichi di lavoro sulle macchine virtuali. La virtualizzazione sta aprendosi strada anche in ambito embedded. I benefici che esso apporta, quali per esempio il semplice speed-up oppure la grossa comodità in fase di sviluppo, debugging e testing, ha aperto il mercato degli hypervisor anche al mondo embedded. Le peculiarità di KVM si incastrano perfettamente con le necessità di questi ambiti: vasta compatibilità con l hardware, possibilità di emulazione di hardware fuori produzione, compatibilità con tutti i sistemi operativi (anche Real Time OS), customizability, semplicità. [11] 26

27 Capitolo 3: Virt-IO VirIO è uno standard di I/O virtualization per dispositivi (e.g. dischi, dispositivi di rete). E la principale piattaforma di I/O Virtualization scelta da KVM per migliorare le prestazioni di rete e le operazioni su disco delle macchine virtuali. VirtIO si basa sul principio della Para-virtualizzazione, e cioè mette a disposizione un insieme di API che permettono la collaborazione dell Hypervisor con i driver modificati del guest, per risolvere in modo efficiente le richieste di I/O delle macchine virtuali. La sua implementazione si colloca in un modulo kernel nel guest, che rappresenta il frontend driver, e in un device di QEMU, che rappresenta il back-end driver. Figura 13: VirtIO, comunicazione guest-host [7] 27

28 Il front-end driver ha il compito di raccogliere le richieste di I/O che arrivano dai processi, e di inviarle al back-end driver. Il back-end driver accetta le richieste provenienti dal front-end driver ed esegue le operazioni di I/O sull hardware fisico. L effettiva comunicazione tra i due driver avviene tramite dei buffer di memoria condivisi tra i guest e QEMU, che VirtIO chiama virtqueue. Ogni operazione di I/O richiede una o più virtqueue per lo scambio dei comandi e per l effettivo trasferimento dei dati. Si crea, in questo modo, un canale di comunicazione diretto tra il guest e l host. [7] Figura 14: schema di I/O virtualization con VirtIO Se confrontiamo lo schema di VirtIO (in figura) e lo schema di base di KVM, notiamo che il flusso di dati giunge all hardware, o dall hardware, in maniera più diretta e veloce. Si 28

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

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

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

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

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

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

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

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

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

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

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

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

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

1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame.

1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame. 1. Si consideri uno spazio di indirizzamento logico di otto pagine di 1024 parole ognuna, mappate su una memoria fisica di 32 frame. (a) Da quanti bit è costituito l indirizzo logico? (b) Da quanti bit

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

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

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

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

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

CMN4i (Vers. 1.1.0 del 27/02/2014)

CMN4i (Vers. 1.1.0 del 27/02/2014) CMN4i (Vers. 1.1.0 del 27/02/2014) Il monitoring che permette di avere la segnalazione in tempo reale dei problemi sul vostro sistema IBM System i Sommario Caratterisitche... Errore. Il segnalibro non

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

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

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

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

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

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

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

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

MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A

MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A MANUALE UTENTE DEL SOFTWARE DI GESTIONE DEGLI ART. SDVR040A/SDVR080A/SDVR160A Leggere attentamente questo manuale prima dell utilizzo e conservarlo per consultazioni future Via Don Arrigoni, 5 24020 Rovetta

Dettagli

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese

Inter Process Communication. Laboratorio Software 2008-2009 C. Brandolese Inter Process Communication Laboratorio Software 2008-2009 C. Brandolese Introduzione Più processi o thread Concorrono alla relaizzazione di una funzione applicativa Devono poter realizzare Sincronizzazione

Dettagli

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1

Configuration Managment Configurare EC2 su AWS. Tutorial. Configuration Managment. Configurare il servizio EC2 su AWS. Pagina 1 Tutorial Configuration Managment Configurare il servizio EC2 su AWS Pagina 1 Sommario 1. INTRODUZIONE... 3 2. PROGRAMMI NECESSARI... 4 3. PANNELLO DI CONTROLLO... 5 4. CONFIGURARE E LANCIARE UN ISTANZA...

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

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

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE

END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE DEL CLIENTE END-TO-END SERVICE QUALITY. LA CULTURA DELLA QUALITÀ DAL CONTROLLO DELLE RISORSE ALLA SODDISFAZIONE In un mercato delle Telecomunicazioni sempre più orientato alla riduzione delle tariffe e dei costi di

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

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina

Sistemi di supporto alle decisioni Ing. Valerio Lacagnina Cosa è il DSS L elevato sviluppo dei personal computer, delle reti di calcolatori, dei sistemi database di grandi dimensioni, e la forte espansione di modelli basati sui calcolatori rappresentano gli sviluppi

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

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

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

www.queen.it info@mbox.queen.it Gruppo Queen.it Listino Utente Finale Gennaio 2001

www.queen.it info@mbox.queen.it Gruppo Queen.it Listino Utente Finale Gennaio 2001 Listino Gennaio 2001 pag. 1 Gruppo Queen.it Listino Utente Finale Gennaio 2001 Profilo aziendale Chi è il Gruppo Queen.it Pag. 2 Listino connettività Listino Connettività RTC Pag. 3 Listino Connettività

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

La suite Dental Trey che semplifica il tuo mondo.

La suite Dental Trey che semplifica il tuo mondo. La suite Dental Trey che semplifica il tuo mondo. impostazioni di sistema postazione clinica studio privato sterilizzazione magazzino segreteria amministrazione sala di attesa caratteristiche UNO tiene

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

È nata una nuova specie di avvocati. Liberi.

È nata una nuova specie di avvocati. Liberi. È nata una nuova specie di avvocati. Liberi. LIBERI DI NON PENSARCI Basta preoccupazioni per il back-up e la sicurezza dei tuoi dati. Con la tecnologia Cloud Computing l archiviazione e la protezione dei

Dettagli

Analisi della situazione iniziale

Analisi della situazione iniziale Linux in azienda Solitamente quando si ha un ufficio e si pensa all'acquisto dei computer la cosa che si guarda come priorità è la velocità della macchina, la potenza del comparto grafico, lo spazio di

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

***** 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

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

I Valori del Manifesto Agile sono direttamente applicabili a Scrum:!

I Valori del Manifesto Agile sono direttamente applicabili a Scrum:! Scrum descrizione I Principi di Scrum I Valori dal Manifesto Agile Scrum è il framework Agile più noto. E la sorgente di molte delle idee che si trovano oggi nei Principi e nei Valori del Manifesto Agile,

Dettagli

Meetecho s.r.l. Web Conferencing and Collaboration tools. Guida all installazione e all uso di Meetecho beta

Meetecho s.r.l. Web Conferencing and Collaboration tools. Guida all installazione e all uso di Meetecho beta Web Conferencing and Collaboration tools Passo 1: registrazione presso il sito Accedere al sito www.meetecho.com e registrarsi tramite l apposito form presente nella sezione Reserved Area. In fase di registrazione

Dettagli

Samsung Data Migration v2.6 Introduzione e Guida all'installazione

Samsung Data Migration v2.6 Introduzione e Guida all'installazione Samsung Data Migration v2.6 Introduzione e Guida all'installazione 2013. 12 (Revisione 2.6.) Esclusione di responsabilità legale SAMSUNG ELECTRONICS SI RISERVA IL DIRITTO DI MODIFICARE I PRODOTTI, LE INFORMAZIONI

Dettagli

GARR WS9. OpenSource per l erogazione di servizi in alta disponibilità. Roma 17 giugno 2009

GARR WS9. OpenSource per l erogazione di servizi in alta disponibilità. Roma 17 giugno 2009 GARR WS9 OpenSource per l erogazione di servizi in alta disponibilità Roma 17 giugno 2009 Mario Di Ture Università degli Studi di Cassino Centro di Ateneo per i Servizi Informatici Programma Cluster Linux

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

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

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

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

2014 Electronics For Imaging. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione è regolato da quanto

2014 Electronics For Imaging. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione è regolato da quanto 2014 Electronics For Imaging. Per questo prodotto, il trattamento delle informazioni contenute nella presente pubblicazione è regolato da quanto previsto in Avvisi legali. 23 giugno 2014 Indice 3 Indice...5

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

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

white paper La Process Intelligence migliora le prestazioni operative del settore assicurativo

white paper La Process Intelligence migliora le prestazioni operative del settore assicurativo white paper La Process Intelligence migliora le prestazioni operative del settore assicurativo White paper La Process Intelligence migliora le prestazioni operative del settore assicurativo Pagina 2 Sintesi

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

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

Zeroshell su vmware ESXi 4.1

Zeroshell su vmware ESXi 4.1 Zeroshell su vmware ESXi 4.1 Introduzione Vediamo come installare Zeroshell su Vmware ESXi 4.1 usando come immagine quella per IDE,SATA e USB da 1GB. Cosa ci serve prima di iniziare: Una distro Live io

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

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

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete.

Dal punto di vista organizzativo sono possibili due soluzioni per il sistema di rete. Premessa. La traccia di questo anno integra richieste che possono essere ricondotte a due tipi di prove, informatica sistemi, senza lasciare spazio ad opzioni facoltative. Alcuni quesiti vanno oltre le

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

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

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

L evoluzione del software per l azienda moderna. Gestirsi / Capirsi / Migliorarsi

L evoluzione del software per l azienda moderna. Gestirsi / Capirsi / Migliorarsi IL GESTIONALE DEL FUTURO L evoluzione del software per l azienda moderna Gestirsi / Capirsi / Migliorarsi IL MERCATO ITALIANO L Italia è rappresentata da un numero elevato di piccole e medie aziende che

Dettagli

IL PRESUPPOSTO DEL SUCCESSO DI OGNI AZIENDA È IL LIVELLO DI SICUREZZA DEL

IL PRESUPPOSTO DEL SUCCESSO DI OGNI AZIENDA È IL LIVELLO DI SICUREZZA DEL IL PRESUPPOSTO DEL SUCCESSO DI OGNI AZIENDA È IL LIVELLO DI SICUREZZA DEL PROPRIO PATRIMONIO INFORMATIVO E DEL PROPRIO KNOW-HOW IMPRENDITORIALE. SERVIZI CREIAMO ECCELLENZA Uno dei presupposti fondamentali

Dettagli

Architettura di un sistema informatico 1 CONCETTI GENERALI

Architettura di un sistema informatico 1 CONCETTI GENERALI Architettura di un sistema informatico Realizzata dal Dott. Dino Feragalli 1 CONCETTI GENERALI 1.1 Obiettivi Il seguente progetto vuole descrivere l amministrazione dell ITC (Information Tecnology end

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

Livello di applicazione. Reti di Calcolatori. Corso di Laurea in Ingegneria Informatica. Livello di applicazione DNS A.A.

Livello di applicazione. Reti di Calcolatori. Corso di Laurea in Ingegneria Informatica. Livello di applicazione DNS A.A. Corso di Laurea in Ingegneria Informatica Reti di Calcolatori Livello di applicazione DNS A.A. 2013/2014 1 Livello di applicazione Web e HTTP FTP Posta elettronica SMTP, POP3, IMAP DNS Applicazioni P2P

Dettagli

Intrusion Detection System

Intrusion Detection System Capitolo 12 Intrusion Detection System I meccanismi per la gestione degli attacchi si dividono fra: meccanismi di prevenzione; meccanismi di rilevazione; meccanismi di tolleranza (recovery). In questo

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

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

dei processi di customer service

dei processi di customer service WHITE PAPER APRILE 2013 Il Business Process Orchestrator dei processi di customer service Fonte Dati: Forrester Research Inc I marchi registrati citati nel presente documento sono di proprietà esclusiva

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

Il Business Process Management: nuova via verso la competitività aziendale

Il Business Process Management: nuova via verso la competitività aziendale Il Business Process Management: nuova via verso la competitività Renata Bortolin Che cosa significa Business Process Management? In che cosa si distingue dal Business Process Reingeneering? Cosa ha a che

Dettagli

Caratteristiche raccomandate del Network in un progetto di Home Automation

Caratteristiche raccomandate del Network in un progetto di Home Automation Caratteristiche raccomandate del Network in un progetto di Home Automation Uno degli aspetti progettuali più importanti di un sistema Control4 è la rete. Una rete mal progettata, in molti casi, si tradurrà

Dettagli

SIMATIC WinCC Runtime Professional ARCHITETTURE. Versione 1.0 03/2014

SIMATIC WinCC Runtime Professional ARCHITETTURE. Versione 1.0 03/2014 SIMATIC WinCC Runtime Professional V13 ARCHITETTURE Ronald Lange (Inventor 2011) TIA Portal: Automation Software that Fits Together As Perfectly As Lego Blocks Versione 1.0 03/2014 - Architetture Novità

Dettagli

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO

SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO CLSMS SOFTWARE GESTIONE SMS DA INTERFACCE CL MANUALE D INSTALLAZIONE ED USO Sommario e introduzione CLSMS SOMMARIO INSTALLAZIONE E CONFIGURAZIONE... 3 Parametri di configurazione... 4 Attivazione Software...

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

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

> 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

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

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

Problem Management. Obiettivi. Definizioni. Responsabilità. Attività. Input

Problem Management. Obiettivi. Definizioni. Responsabilità. Attività. Input Problem Management Obiettivi Obiettivo del Problem Management e di minimizzare l effetto negativo sull organizzazione degli Incidenti e dei Problemi causati da errori nell infrastruttura e prevenire gli

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

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

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

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

Profilo Commerciale Collabor@

Profilo Commerciale Collabor@ Profilo Commerciale Collabor@ 1. DESCRIZIONE DEL SERVIZIO E REQUISITI Collabor@ è un servizio di web conferenza basato sulla piattaforma Cisco WebEx, che consente di organizzare e svolgere riunioni web,

Dettagli

Cos è l Ingegneria del Software?

Cos è l Ingegneria del Software? Cos è l Ingegneria del Software? Corpus di metodologie e tecniche per la produzione di sistemi software. L ingegneria del software è la disciplina tecnologica e gestionale che riguarda la produzione sistematica

Dettagli

PROGETTO VIRTUALIZZAZIONE DELLA SERVER FARM DI TURISMO TORINO E PROVINCIA E SERVIZI CONNESSI CAPITOLATO TECNICO. Pagina 1 di 10

PROGETTO VIRTUALIZZAZIONE DELLA SERVER FARM DI TURISMO TORINO E PROVINCIA E SERVIZI CONNESSI CAPITOLATO TECNICO. Pagina 1 di 10 PROGETTO VIRTUALIZZAZIONE DELLA SERVER FARM DI TURISMO TORINO E PROVINCIA E SERVIZI CONNESSI CAPITOLATO TECNICO Pagina 1 di 10 INDICE: DESCRIZIONE NR. PAGINA 1. PREMESSA 3 2. OGGETTO DELL APPALTO 3 3.

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