LA VIRTUALIZZAZIONE E I SUOI ASPETTI DI SICUREZZA

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "LA VIRTUALIZZAZIONE E I SUOI ASPETTI DI SICUREZZA"

Transcript

1 LA VIRTUALIZZAZIONE E I SUOI ASPETTI DI SICUREZZA

2 Il testo è stato redatto da: Sergio Sagliocco SECURELAB CSP Innovazione nelle ICT Diego Feruglio CSI-Piemonte Gianluca Ramunno Politecnico di Torino Si ringraziano per la revisione finale del testo e per i preziosi suggerimenti forniti: Roberto Moriondo Regione Piemonte Nicola Franzese Laboratorio ICT Regione Piemonte Mario Ancilli Consiglio Regionale del Piemonte Laura Gonella CSP Innovazione nelle ICT Francesco Meschia CSI-Piemonte Daniele Mazzocchi Istituto Boella Sergio Duretti CSP Innovazione nelle ICT Si ringraziano i rappresentanti del Consiglio Direttivo di Assosecurity per il contributo fornito nell ideazione della pubblicazione. I contenuti sono soggetti a licenza Creative Commons, Attribuzione Non Commerciale Non opere derivate 2.5 Italia, il cui contenuto integrale è riportato all indirizzo: BY: 2 La virtualizzazione e i suoi aspetti di sicurezza

3 SOMMARIO Prefazione 7 Introduzione 8 1 La virtualizzazione: concetti di base Che cosa si intende per virtualizzazione Cenni storici Vantaggi e svantaggi della virtualizzazione Tecniche di virtualizzazione dei server 13 2 Virtualizzazione mediante partizionamento Soluzioni tecnologiche Hardware Partitioning Hypervisor Virtual Machine Monitor OS virtualization Approcci implementativi Virtualizzazione completa Paravirtualizzazione Supporti hardware 20 3 Prodotti per la virtualizzazione Sun Solaris Containers/Zones VMware Hyper-V Xen KVM Libvirt 29 3

4 4 Aspetti per il dimensionamento di una struttura Networking Storage Server 32 5 La sicurezza negli ambienti virtualizzati Virus basati sulla virtualizzazione User Space e Kernel space rootkit HVM rootkits SubVirt Blue Pill Vitriol Xen Subvertion Virtual machine detection Ricerca di artefatti specifici dell hypervisor Analisi dei tempi di esecuzione Utilizzo di hardware embedded Analisi remota dello stack di rete Progetti Red Pill Scoopy Doo VMDetect Live Migration VM Escape & Denial Of Service VMware Xen/QEMU 46 4 La virtualizzazione e i suoi aspetti di sicurezza

5 5.5 VM Integrity Cifratura dei dischi virtuali gestita dal VMM Cifratura dei dischi in VMware ACE Cifratura dei dischi virtuali gestita dai sistemi guest Cifratura dei dischi virtuali gestita dal sistema host Network Isolation VirtualServer VMware ESX Xen Cisco Nexus 1000V Virtual Switch 53 6 Nuovi orizzonti per la virtualizzazione Cenni sulla tecnologia Trusted Computing Uso combinato di virtualizzazione e Trusted Computing 57 Acronimi 61 Bibliografia 63 5

6

7 Prefazione È con grande piacere che introduco il presente testo, frutto della collaborazione tra i soci di Assosecurity, collaborazione scientifica e redazionale ormai divenuta nel corso degli anni un appuntamento fisso ed un occasione di confronto e rinnovamento in cui le finalità di divulgazione scientifica e culturale dell Associazione trovano concreta attuazione. La pubblicazione di quest anno mira a diffondere conoscenze specifiche nel campo della sicurezza dei sistemi virtualizzati, un settore sempre più rilevante nel mondo delle ICT. Grazie al lavoro di analisi e approfondimento avviato dal CSP e sviluppato in collaborazione con il Laboratorio ICT della Regione Piemonte, il CSI Piemonte e il Politecnico di Torino, presentiamo con questo volume lo stato dell arte nel settore della Virtualization Security, ovviamente senza alcuna pretesa di esaustività ma con l obiettivo documentato dalla nutrita presenza di casi di studio di fornire a tutti i lettori un quadro di riferimento il più possibile ampio e documentato sul tema. Commenti ed osservazioni sono graditi e possono essere inviati a: info@assosecurity.it Buona lettura! Prof. Antonio Lioy Presidente Assosecurity 7

8 INTRODUZIONE Il concetto di virtualizzazione di un sistema di elaborazione non è recente: uno dei primi esempi, introdotto dalla IBM, risale agli anni 60. Tuttavia, negli ultimi dieci anni, si è assistito ad un forte incremento dell uso di questa tecnica, che permette di contenere i costi di gestione e di sfruttare al meglio le risorse dei centri di elaborazione dati. Si può stimare che in media la potenza di calcolo di ogni singolo elaboratore sia sfruttata solo in minima parte. Questo dato - unito a quelli relativi ai costi di manutenzione, energia elettrica ed impianti di condizionamento - rende particolarmente conveniente per i responsabili dei CED, adottare la virtualizzazione dei server, una tecnica che permette l esecuzione di più macchine virtuali su un solo server fisico. L uso e il numero dei server installati viene razionalizzato, mantenendo inalterate le capacità funzionali del sistema. Oggi la virtualizzazione è una tecnologia matura che sta diventando ampiamente utilizzata a livello enterprise: numerose e particolarmente delicate sono le problematiche di sicurezza legate all uso di questa soluzione. La presente pubblicazione ha quindi l obiettivo di apportare un contributo a quanti abbiano adottato o intendano adottare tecniche di virtualizzazione e si trovino ad affrontare le relative problematiche di sicurezza. La prima parte del volume, che va dal primo al quarto capitolo, si focalizza sulle tecniche implementative, le soluzioni e i prodotti per la virtualizzazione, mentre il quinto capitolo affronta gli aspetti legati alla sicurezza. Il primo capitolo si sofferma sull evoluzione storica della virtualizzazione ed esamina una classificazione delle diverse tecniche. Il secondo capitolo prende in considerazione le soluzioni tecnologiche e gli approcci implementativi più diffusi, mentre il terzo descrive alcuni dei prodotti commerciali e dei progetti open source più noti. Il quarto capitolo tratta i diversi aspetti che devono essere presi in considerazione quando si realizza un infrastruttura di virtualizzazione complessa facendo riferimento ai componenti di base: networking, storage e server. Il quinto capitolo, che rappresenta una parte molto consistente dell elaborato, affronta gli aspetti di sicurezza di una specifica tecnica di virtualizzazione dei server, la Partitionig Virtualization, e in particolar modo dei sistemi di Hypervisor e di VMM (Virtual Machine Monitor). Vengono affrontati gli aspetti di sicurezza più critici legati al mondo della virtualizzazione, in particolare: Virus basati sulla virtualizzazione Rilevamento di un sistema virtualizzato Riallocazione dinamica delle immagini virtuali Isolamento delle macchine virtuali e denial-of-service Integrità delle macchine virtuali Isolamento del traffico di rete Il sesto e ultimo capitolo, esamina un nuovo paradigma di sicurezza che sfrutta la virtualizzazione in modo sinergico con una tecnologia sempre più emergente chiamata Trusted Computing. 8 La virtualizzazione e i suoi aspetti di sicurezza

9 1 La virtualizzazione: concetti di base Il concetto di virtualizzazione è molto ampio e per questo motivo spesso genera confusione e imprecisioni. È necessario quindi, prima di analizzare le problematiche inerenti questa tecnologia, soffermarsi sull evoluzione storica della virtualizzazione ed effettuare una classificazione delle diverse tecniche. 1.1 Che cosa si intende per virtualizzazione In generale si può definire virtualizzazione qualunque processo in grado di astrarre i dettagli fisici di una risorsa reale al fine di permettere ai suoi utenti un accesso più semplice, efficiente o sicuro. Utente Risorsa Logica Livello di astrazione Risorsa Fisica Figura 1: Concetto generale di virtualizzazione Per spiegare questo concetto (di per sé molto astratto) possono essere utili degli esempi: Un comune disco rigido di un personal computer è composto da uno o più piatti i quali a loro volta sono suddivisi in cilindri e settori 1. L utente finale, ovviamente, non deve conoscerne la geometria fisica in quanto vi è il sistema operativo che, attraverso un opportuno modulo, denominato file system, mostra all utente un generico spazio 1 Si parla di geometria del disco. 9

10 di memorizzazione organizzato in cartelle (directory) e documenti (file) 2. Facendo riferimento alla Figura 1 questo esempio può essere così schematizzato: Utente Cartelle e documenti File System del S.O. Geometria Fisica del disco Figura 2: Esempio: astrazione di un disco Un altro esempio è quello della memoria virtuale, ovvero quella tecnica mediante la quale il sistema operativo mostra alle applicazioni una memoria (RAM) ben più ampia di quello che è, mediante l uso di ulteriori supporti di memorizzazione. Applicazione Memoria Virtuale Gestore della memoria del S.O. RAM DISCO Figura 3: Esempio: memoria virtuale 2 I file system più noti sono FAT, NTFS e EXT. 10 La virtualizzazione e i suoi aspetti di sicurezza

11 La virtualizzazione dei server è una tecnica che permette l esecuzione di più macchine virtuali su un solo server fisico ed è usata allo scopo di ottimizzare le risorse disponibili. Come verrà illustrato nei prossimi paragrafi, con la virtualizzazione vengono creati diversi livelli di astrazione che fanno sì che il sistema operativo non veda l hardware fisico ma l hardware virtuale. Utente Server Virtuale 1 Server Virtuale N Gestore dei server virtuali Server Fisico Figura 4: Virtualizzazione dei server 1.2 Cenni storici Come accennato nell introduzione, uno dei primi esempi di virtualizzazione di un sistema di elaborazione risale agli anni 60 ed è stato introdotto coi sistemi chiamati CP/CMS progettati ed implementati dall IBM; la componente CP (Control Program) di fatto rappresentava il livello di astrazione il cui compito era quello di fare vedere ai livelli superiori (il sistema operativo) diverse macchine logiche al posto dell hardware fisico; il CMS (Conversational Monitor System) era il sistema operativo (monoutente) che girava sopra ogni macchina virtuale; il vantaggio di questa architettura era enorme se si considera che in quel periodo storico non esistevano ancora sistemi operativi multitasking interattivi. In seguito, l avvento dei nuovi sistemi operativi ha fatto sì che questa architettura venisse abbandonata con la conseguente progressiva dismissione dei mainframe e l aumento spropositato del numero di PC/server presso i CED delle aziende. Negli ultimi anni ci si è resi conto che la potenza di calcolo di ogni singolo elaboratore è mediamente utilizzata solo al 20%; questa considerazione unita ai dati relativi ai costi in termini di manutenzione, energia elettrica ed impianti di condizionamento ha fatto sì che si intraprendesse nuovamente la strada della virtualizzazione. 11

12 1.3 Vantaggi e svantaggi della virtualizzazione Come si è detto la virtualizzazione dei server permette di ottimizzare le risorse fisiche disponibili e di facilitare la gestione e l uso dei server. Più nel dettaglio, i vantaggi di questa tecnica di virtualizzazione sono i seguenti: la riduzione dei server fisici: le soluzioni hardware/software per la virtualizzazione permettono l esecuzione di diverse macchine virtuali su un solo server fisico con il vantaggio di ridurre i consumi energetici, il calore generato (sono necessari impianti di condizionamento meno potenti), i guasti hardware, i tempi tecnici per il montaggio e il cablaggio, il numero di armadi rack, lo spazio dedicato in sala macchine e il relativo cablaggio; il consolidamento dei server: si stima che mediamente un moderno server venga sfruttato solo al 15-20%. È quindi ragionevole che possano essere eseguite 3 o 4 macchine virtuali sullo stesso hardware fisico; l indipendenza hardware: il software, ed in particolar modo il sistema operativo, è strettamente legato all hardware sottostante. Se quindi per qualche motivo un installazione di un server deve essere spostata o clonata su un altra macchina, si dovranno tenere in conto diversi problemi di incompatibilità hardware (ad esempio si dovranno installare tutti i driver mancanti del nuovo hardware). Come verrà illustrato nei prossimi capitoli, una delle caratteristiche della virtualizzazione è quella di creare livelli di astrazione tali per cui il sistema operativo non vede l hardware fisico bensì un hardware virtuale. In questo modo l amministratore può spostare o clonare un sistema su altre macchine che eseguono lo stesso ambiente di virtualizzazione senza preoccuparsi dei dettagli fisici (modello delle schede di rete, schede grafiche, chipset e così via); l adattabilità: spesso in un azienda cambiano le priorità e le esigenze, per cui un servizio può diventare più importante di un altro e necessitare di risorse maggiori. La virtualizzazione permette di allocare le risorse hardware virtuali in modo decisamente più veloce e flessibile. Se necessario, la macchina virtuale può, inoltre, essere spostata su un hardware più efficiente in modo totalmente trasparente; il supporto alle applicazioni legacy: non è raro trovare nelle sale macchine delle aziende vecchi server con vecchi sistemi operativi (ad esempio il DOS) che non possono essere spostati su macchine nuove in quanto non sarebbero supportati. Gli ambienti di virtualizzazione permettono l esecuzione anche di sistemi legacy permettendo ai responsabili IT di liberarsi del vecchio hardware non più supportato e più soggetto a guasti; la standardizzazione delle installazioni: grazie all astrazione dell hardware è possibile preparare una sola volta le immagini di ambienti omogenei (come ad esempio quello delle postazioni di lavoro o server di sviluppo) comprensivi di sistema operativo, applicazioni e configurazioni particolari (ad esempio dominio, posta elettronica, LDAP, policy di sicurezza, ecc.); la creazione di ambienti di test: capita frequentemente che su un sistema in produzione si debbano apportare delle modifiche senza sapere quali siano le conseguenze: ad esempio l installazione di un aggiornamento del sistema operativo o soprattutto di una service pack non è un operazione priva di rischi. La virtualizzazione permette la replica immediata di una macchina virtuale per poter effettuare tutti i test di stabilità richiesti. 12 La virtualizzazione e i suoi aspetti di sicurezza

13 Ovviamente, come ogni altra tecnologia, l uso della virtualizzazione porta inevitabilmente a degli inconvenienti che variano a seconda dello scenario applicativo e devono essere valutati prima di avviare la virtualizzazione. Gli aspetti che devono essere tenuti in considerazione sono i seguenti: l overhead: ogni soluzione di virtualizzazione fa decrescere le performance globali, come ad esempio i tempi di accesso ai dischi, accesso alla memoria e cosi via. Alcune applicazioni particolarmente critiche potrebbero risentire dell overhead introdotto dall ambiente di virtualizzazione; l hardware non virtualizzabile: a seconda dei prodotti utilizzati, alcune periferiche potrebbero non essere usate dalle macchine virtuali, come ad esempio porte seriali/parallele, dispositivi USB, interfacce bluetooth, accelerazioni grafiche hardware e così via. 1.4 Tecniche di virtualizzazione dei server La virtualizzazione dei server può essere divisa in diverse tipologie a seconda della tecnica utilizzata. La seguente figura mostra una possibile classificazione. Server Virtualization Aggregation Virtualization Partitioning Virtualization Instruction-Set Virtualization Hardware Partitioning Hypervision Virtual Machine Monitor OS Virtualizzato n Hypervisor Hosted VMM OS Hosted VMM Figura 5: Classificazione delle tecniche di virtualizzazione 3 3 La figura è tratta (e qui riadattata) da Phelp J.R., Dawson P. (luglio 2007). 13

14 Come si può notare si possono identificare tre macro tecniche di virtualizzazione: 1. Mediante partizionamento (Partitioning Virtualization): in questa categoria rientrano quei sistemi che permettono di configurare l hardware fisico in più macchine logiche in grado di ospitare ognuna un suo sistema operativo. Questi sistemi possono essere ancora classificati in: Hardware Partitioning Hypervisor Virtual Machine Monitor (VMM) OS Virtualization. 2. Mediante emulazione (Instruction-Set Virtualization): questi sistemi permettono di emulare un diverso sistema hardware/software allo scopo di eseguire applicazioni scritte per diverse piattaforme; per questa ragione sono comunemente chiamati emulatori. Esempi molto noti sono: gli ambienti di sviluppo per dispositivi mobili, in cui è possibile eseguire gli applicativi (ad esempio Symbian) su PC in modo tale da agevolare le fasi di debugging; MAME 4 (Multiple Arcade Machine Emulator), il quale permette l esecuzione su PC dei vecchi videogiochi da bar degli anni 80 (senza modificare il codice originale). Gli esempi precedenti fanno riferimento a emulatori software; esistono anche emulatori hardware come ad esempio il processore Crusoe della Transmeta 5 ; si tratta di CPU che, pur non essendo in modo nativo compatibili con l architettura x86 6, tramite il livello di astrazione Code Morphing Software (CMS), possono essere usate come normali CPU x86 grazie alla traduzione delle istruzioni x86 in istruzioni VLIW. In questa categoria si può far rientrare anche la nota JAVA Virtual Machine (JVM) 7 in quanto effettua una traduzione al volo del byte code java in istruzioni eseguibili sul sistema nativo. 3. Mediante aggregazione (Aggregation Virtualization): a differenza delle altre due tecniche, in questo caso più macchine virtuali vengono aggregate fra di loro per fare eseguire un unica applicazione. Un caso tipico è l uso del GRID Computing o più in generale delle tecniche di calcolo distribuito; esse sono basate sulla possibilità di poter suddividere il compito principale in task più semplici e indipendenti fra di loro: ogni task è assegnato ai diversi nodi dell infrastruttura di calcolo ed alla fine i risultati vengono assemblati da nodi dedicati. La presente pubblicazione è focalizzata sugli aspetti di sicurezza della virtualizzazione basata su partizionamento (ed in particolar modo sugli Hypervisor e il Virtual Machine Monitor) che costituisce il sistema più diffuso nelle aziende e tra gli utenti privati Queste CPU appartengono all architettura Very Long Instruction Word (VLIW) La virtualizzazione e i suoi aspetti di sicurezza

15 2 Virtualizzazione mediante partizionamento In questo capitolo verranno prese in considerazione le soluzioni tecnologiche e gli approcci implementativi della virtualizzazione basata su partizionamento (Figura 5). In particolare, nel primo paragrafo si descriveranno le soluzioni tecnologiche più utilizzate, mentre nel secondo verranno discussi i due approcci implementativi più diffusi, ovvero quello della virtualizzazione completa e quello della paravirtualizzazione. Si tenga presente che la classificazione adottata ha lo scopo di mettere in evidenza i diversi approcci implementativi che stanno alla base dei progetti e dei prodotti descritti, ma che non è perfettamente applicabile nel caso di soluzioni ibride. Per concludere (paragrafo 2.3), questo capitolo affronterà la discussione dei supporti hardware per la virtualizzazione delle due maggiori case costruttrici di processori (Intel e AMD). 2.1 Soluzioni tecnologiche Hardware Partitioning Questi sistemi permettono la suddivisione di un sistema di elaborazione in diverse macchine tramite una definizione delle risorse a livello hardware; si associano quindi ad ogni macchina una o più board del sistema ognuna con i propri processori e la propria memoria. Questa tecnica si utilizza per superare il limite dei processori (socket) presenti su una singola board. Queste tecniche non permettono la condivisione delle risorse e la riallocazione ottimale; d altra parte hanno il vantaggio di non avere overhead per la gestione della virtualizzazione in quanto i confini di ogni macchina sono definiti a livello hardware. Alcuni esempi di prodotti sono npartition 8 della HP e Dynamic System Domains 9 della SUN Hypervisor Col termine hypervisor si intende quello strato di software che permette solamente l astrazione dell hardware fisico. Generalmente viene caricato all avvio del sistema di elaborazione e non integra nessuna funzionalità di gestione di macchine virtuali

16 Figura 6: Sistema virtualizzato tramite hypervisor La Figura 6 mostra come l hypervisor permetta la condivisione dell hardware fisico tra diverse macchine virtuali 10. Ovviamente, l hardware rilevato da ogni macchina virtuale differisce sia dal punto di vista qualitativo che da quello quantitativo rispetto a quello fisico: ad esempio, se il server fisico possiede una scheda video ATI, l hypervisor potrebbe presentarla come una VGA standard. Come descritto meglio nel prossimo paragrafo, per avere una gestione completa delle macchine virtuali (gestione del ciclo di vita, gestione delle priorità, ) è necessario disporre di una componente aggiuntiva che a seconda delle architetture può essere o non essere incorporata all interno dell hypervisor Virtual Machine Monitor Il VMM è il software vero e proprio che gestisce la condivisone delle risorse hardware e il ciclo di vita di ogni macchina virtuale; in particolare i compiti di un moderno VMM sono: esporre alle macchine virtuali le opportune interfacce hardware; gestire l interazione tra le diverse macchine virtuali; garantire l isolamento tra le macchine virtuali; garantire la stabilità del sistema, impedendo alle macchine virtuali di poter eseguire istruzioni privilegiate in modo non controllato. A seconda che sia ospitato da un sistema operativo nativo o da un hypervisor, il VMM viene chiamato OS-hosted VMM oppure Hypervisor-Hosted VMM. 10 Queste macchine vengono chiamate anche macchine guest o VM (Virtual Machine). 16 La virtualizzazione e i suoi aspetti di sicurezza

17 Alcuni esempi della prima tipologia sono: Microsoft Virtual Server 11, Microsoft Hyper-V 12 (stand alone edition), VMware server 13, Virtual Box 14, Parallels Server 15. Alcuni esempi della seconda tipologia sono: Microsoft Hyper-V, Xen 16 e relativi prodotti derivati da esso (OracleVM 17, VirtualIron 18, SUN xvm 19 ), VMware ESX server 20, Parallels Server Bare Metal 21, Linux KVM 22. Come si può notare, alcune aziende sviluppatrici di prodotti per la virtualizzazione (per esempio VMware e Microsoft), rilasciano sia la versione Hypervisor-Hosted sia la versione OS-hosted. I sistemi VMM Hypervisor-Hosted solitamente sono più complessi in quanto devono essere dotati di tutti i driver necessari a supportare l hardware virtualizzato. Per tale ragione solitamente essi sono certificati solo per determinati sistemi di elaborazione. I VMM OS-hosted invece sono più semplici (in quanto sono a tutti gli effetti delle applicazioni) a scapito però di una minore efficienza rispetto ai VMM Hypervisor-Hosted. Figura 7: Differenza fra Hosted VMM e UnHosted VMM

18 2.1.4 OS virtualization Questa tecnica, a differenza delle altre, inserisce lo strato di virtualizzazione fra sistema operativo e applicazioni, come schematizzato nella figura seguente: Figura 8: OS Virtualization 23 La virtualizzazione in questo caso prevede la creazione di una zona o copia del sistema operativo di base e di uno specifico albero di processi isolato. I processi contenuti in esso non possono afferire a processi esterni ovvero ai processi di altre zone. Si ottiene un ambiente simile ad una macchina virtuale ma con minore overhead. Esempi di questo tipo sono SUN Solaris Containers/Zones 24, FreeBSD Jails 25, Virtuozzo 26 e OpenVZ Approcci implementativi Nell ambito dei diversi VMM, possono essere adottati diversi approcci implementativi che possono essere ricondotti a due grandi famiglie: la virtualizzazione completa e la paravirtualizzazione Virtualizzazione completa La tecnica della virtualizzazione completa prevede che il VMM mostri alla macchina virtuale tutto l hardware necessario all esecuzione di un sistema operativo tradizionale; il VMM, quindi, tramite un BIOS virtuale, espone la/le CPU, le memorie, i dispositivi di memorizzazione e così via. 23 La figura è tratta dal sito web della società Parallels, La virtualizzazione e i suoi aspetti di sicurezza

19 Il vantaggio principale di questo paradigma riguarda la possibilità di eseguire sulle macchine virtuali tutti i tradizionali sistemi operativi senza che questi debbano essere modificati in quanto l hardware emulato risulta completamente trasparente. D altra parte, le complicazioni derivanti dall utilizzo di un VMM di questo genere sono una maggiore complessità ed una maggiore dipendenza dal tipo di CPU: quest ultima, come si capirà meglio proseguendo la lettura, condiziona in modo decisivo sia la stabilità che la complessità del VMM. Per capire come funziona un VMM di questo tipo è necessario innanzitutto ricordare che una moderna CPU funziona su almeno due livelli di privilegio (ring): uno denominato supervisore (o anche ring 0) e l altro (o gli altri) denominato utente; normalmente all interno del primo anello viene eseguito il sistema operativo (kernel e moduli/driver), mentre nel secondo vengono eseguiti gli applicativi; all interno del livello supervisore è ammessa l esecuzione di tutte le istruzioni della CPU (privilegiate e non) mentre a livello utente è possibile la sola esecuzione delle istruzioni non privilegiate. Nel caso in cui un applicazione utente tenti di eseguire un istruzione privilegiata la CPU (a seconda dei tipi) può comportarsi in due modi: ignorare la richiesta di esecuzione; avvisare il sistema operativo tramite una trap: il sistema operativo valuta la richiesta e intraprende le opportune azioni. Nel caso in cui una CPU sia in grado di intercettare tutte le istruzioni privilegiate viene definita naturalmente virtualizzabile. Si intuisce facilmente che una CPU di questo tipo ha un duplice vantaggio sui VMM: maggiore efficienza: le macchine virtuali possono eseguire direttamente il codice sulla CPU fisica senza alcun overhead da parte del VMM; maggiore stabilità: nel caso in cui una macchina virtuale esegua un istruzione privilegiata e quindi potenzialmente dannosa per l intero sistema, la CPU la interrompe e ne dà notifica al VMM 28 che esegue le opportune azioni. Purtroppo esistono alcune CPU che non sono naturalmente virtualizzabili: in questi casi il VMM deve prevedere una fase di parsing delle istruzioni da eseguire in modo da poter intercettare quelle che la CPU nativamente non fa: ad esempio VMware implementa una tecnica chiamata fast binary translation che consente la traduzione al volo di un codice potenzialmente pericoloso permettendone la notifica al VMM (a scapito di un maggiore overhead). 28 In questa discussione, per semplicità, si è assunto che i livelli di protezione della CPU siano solo due e che quindi il VMM sia una componente del sistema operativo. Le CPU normalmente hanno più di due livelli di protezione ed è quindi pensabile che Sistema Operativo, VMM e Macchina virtuale siano eseguiti in tre livelli gerarchicamente differenti. 19

20 2.2.2 Paravirtualizzazione I VMM paravirtualizzati, a differenza di quelli descritti in precedenza, non emulano l hardware della macchina fisica, ma definiscono e implementano un interfaccia applicativa tra VMM e sistema operativo della macchina virtuale (anche nota come Virtual Hardware API). La conseguenza primaria di un approccio di questo tipo è che il sistema operativo guest deve essere consapevole di essere in esecuzione in un ambiente virtuale; ne consegue che un sistema operativo per essere eseguito in un ambiente paravirtualizzato deve essere opportunamente modificato rispetto alla sua versione originale. Questo paradigma ha quindi lo svantaggio di dover sviluppare il porting di ogni sistema operativo, ma ha tutta una serie di vantaggi: i VMM sono molto snelli e semplici da realizzare; i VMM sono svincolati da CPU che non siano naturalmente virtualizzabili; l ambiente paravirtualizzato permette una maggiore interattività tra VMM e sistema operativo guest consentendo una maggior efficienza nella gestione delle risorse condivise (ad esempio nel caso della gestione della paginazione, il VMM può chiedere ai sistemi operativi guest quali sono le pagine di memoria usate di meno). Attualmente uno dei progetti più noti orientati alla paravirtualizzazione è XEN 29, il prodotto sviluppato dall Università di Cambridge e rilasciato con licenza opensource: su di esso l unico sistema operativo di cui è stato fatto il porting completo è Linux (XenoLinux); altri porting (più che altro sperimentali) sono in corso (ad esempio XenoXP Windows e XenoBSD). 2.3 Supporti hardware Come descritto nei paragrafi precedenti l implementazione di un VMM risulta più semplice (e quindi di conseguenza meno costosa e meno soggetta a bachi) se la piattaforma hardware sottostante (ed in particolare le CPU) prevede in modo nativo una serie di funzioni in grado di agevolare l esecuzione del VMM e delle relative macchine virtuali. Nel corso degli ultimi anni, i due produttori di CPU più noti (Intel e AMD) hanno realizzato un supporto alla virtualizzazione in termini di estensione dell Instruction Set e di strutture dati dedicate. Intel ha sviluppato due supporti hardware chiamati VT-x e VT-i utilizzati rispettivamente nelle architetture a 32 bit (IA-32) e a 64-bit (IPF Itanium Processor Family). In particolare VT-x definisce due nuove modalità della CPU dedicate alla virtualizzazione 30 : VMX root operations, dedicata all esecuzione del VMM; VMX non-root operations, dedicata all esecuzione delle macchine virtuali Virtual Machine Extensions (VMX). 20 La virtualizzazione e i suoi aspetti di sicurezza

2. VIRTUALIZZAZIONE MEDIANTE PARTIZIONAMENTO

2. VIRTUALIZZAZIONE MEDIANTE PARTIZIONAMENTO 2. VIRTUALIZZAZIONE MEDIANTE PARTIZIONAMENTO In questo capitolo verranno prese in considerazione le soluzioni tecnologiche e gli approcci implementativi della virtualizzazione basata su partizionamento

Dettagli

3. PRODOTTI PER LA VIRTUALIZZAZIONE

3. PRODOTTI PER LA VIRTUALIZZAZIONE 3. PRODOTTI PER LA VIRTUALIZZAZIONE In questo capitolo verranno descritti alcuni dei prodotti commerciali e dei progetti opensource più noti; in particolare verrà presa in considerazione la soluzione SUN

Dettagli

La virtualizzazione ed i suoi aspetti di sicurezza. Sergio Sagliocco Responsabile SecureLAB Direzione R&D CSP

La virtualizzazione ed i suoi aspetti di sicurezza. Sergio Sagliocco Responsabile SecureLAB Direzione R&D CSP La virtualizzazione ed i suoi aspetti di sicurezza Sergio Sagliocco Responsabile SecureLAB Direzione R&D CSP Presentazione della Monografia - CAP 1: La virtualizzazione: concetti di base - CAP 2: La virtualizzazione

Dettagli

Introduzione alla Virtualizzazione

Introduzione alla Virtualizzazione Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Architetture software. Virtualizzazione

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

Dettagli

LA VIRTUALIZZAZIONE E I SUOI ASPETTI DI SICUREZZA

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

Dettagli

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

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

Dettagli

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

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

Dettagli

L Informatica al Vostro Servizio

L Informatica al Vostro Servizio L Informatica al Vostro Servizio Faticoni S.p.A. è Certificata UNI ENI ISO 9001:2008 N. CERT-02228-97-AQ-MILSINCERT per Progettazione, Realizzazione, Manutenzione di soluzioni Hardware e Software Soluzioni

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

Il Sistema Operativo (1)

Il Sistema Operativo (1) E il software fondamentale del computer, gestisce tutto il suo funzionamento e crea un interfaccia con l utente. Le sue funzioni principali sono: Il Sistema Operativo (1) La gestione dell unità centrale

Dettagli

Virtualizzazione e Macchine Virtuali

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

Dettagli

Protezione del Kernel Tramite Macchine Virtuali

Protezione del Kernel Tramite Macchine Virtuali Protezione del Kernel Tramite Macchine Virtuali Fabio Campisi Daniele Sgandurra Università di Pisa 27 Novembre 2007 1/44 Protezione del Kernel Tramite Macchine Virtuali Università di Pisa Sommario della

Dettagli

The Onion PC. Virtualizzazione strato dopo strato

The Onion PC. Virtualizzazione strato dopo strato The Onion PC Virtualizzazione strato dopo strato Cos'è un livello di astrazione? Cos'è un livello di astrazione? Nell'esecuzione di un programma un livello di astrazione rappresenta i gradi di libertà

Dettagli

VMware. Gestione dello shutdown con UPS MetaSystem

VMware. Gestione dello shutdown con UPS MetaSystem VMware Gestione dello shutdown con UPS MetaSystem La struttura informatica di una azienda Se ad esempio consideriamo la struttura di una rete aziendale, i servizi offerti agli utenti possono essere numerosi:

Dettagli

Architettura di un sistema operativo

Architettura di un sistema operativo Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi

Dettagli

In estrema sintesi, NEMO VirtualFarm vuol dire:

In estrema sintesi, NEMO VirtualFarm vuol dire: VIRTUAL FARM La server consolidation è un processo che rappresenta ormai il trend principale nel design e re-styling di un sistema ICT. L ottimizzazione delle risorse macchina, degli spazi, il risparmio

Dettagli

Creare una Rete Locale Lezione n. 1

Creare una Rete Locale Lezione n. 1 Le Reti Locali Introduzione Le Reti Locali indicate anche come LAN (Local Area Network), sono il punto d appoggio su cui si fonda la collaborazione nel lavoro in qualunque realtà, sia essa un azienda,

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1) La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema

Dettagli

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

PROPOSTA DI UN ARCHITETTURA IMS INTEGRATA IN UN AMBIENTE VIRTUALIZZATO: ANALISI DI PRESTAZIONI Daniele Costarella UNIVERSITÀ DEGLI STUDI DI SALERNO FACOLTÀ DI INGEGNERIA Tesi di Laurea in INGEGNERIA ELETTRONICA PROPOSTA DI UN ARCHITETTURA IMS INTEGRATA IN UN AMBIENTE VIRTUALIZZATO: ANALISI DI PRESTAZIONI Daniele Costarella

Dettagli

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

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

Dettagli

Gestione della memoria centrale

Gestione della memoria centrale Gestione della memoria centrale Un programma per essere eseguito deve risiedere in memoria principale e lo stesso vale per i dati su cui esso opera In un sistema multitasking molti processi vengono eseguiti

Dettagli

VIRTUALIZZAZIONE LUG - CREMONA. Linux Day - 25 Ottobre 2008

VIRTUALIZZAZIONE LUG - CREMONA. Linux Day - 25 Ottobre 2008 VIRTUALIZZAZIONE LUG - CREMONA Linux Day - 25 Ottobre 2008 VIRTUALIZZAZIONE In informatica la virtualizzazione consiste nella creazione di una versione virtuale di una risorsa normalmente fornita fisicamente

Dettagli

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione Lezione 4 La Struttura dei Sistemi Operativi Introduzione Funzionamento di un SO La Struttura di un SO Sistemi Operativi con Struttura Monolitica Progettazione a Livelli di un SO 4.2 1 Introduzione (cont.)

Dettagli

Progettaz. e sviluppo Data Base

Progettaz. e sviluppo Data Base Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Network Monitoring. Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale

Network Monitoring. Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale Network Monitoring & Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale Nicholas Pocher Poker SpA - Settimo Torinese, Novembre 2013 1 Indice Il Network Monitoring:

Dettagli

Hardware delle reti LAN

Hardware delle reti LAN Hardware delle reti LAN Le reti LAN utilizzano una struttura basata su cavi e concentratori che permette il trasferimento di informazioni. In un ottica di questo tipo, i computer che prendono parte allo

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

PARTE 4 La Macchina Software

PARTE 4 La Macchina Software PARTE 4 La Macchina Software 94 Macchina Hardware e Macchina Software applicativi sistema operativo macchina hardware Agli albori dell'informatica, si programmava in binario, cioe` in linguaggio macchina,

Dettagli

Il Sistema Operativo

Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al meglio le risorse del Sistema

Dettagli

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo Sistema Operativo Fondamenti di Informatica 1 Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al

Dettagli

lem logic enterprise manager

lem logic enterprise manager logic enterprise manager lem lem Logic Enterprise Manager Grazie all esperienza decennale in sistemi gestionali, Logic offre una soluzione modulare altamente configurabile pensata per la gestione delle

Dettagli

Linux Virtuale Linux Virtuale

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

Dettagli

n. prog. QUESITO RISPOSTA In riferimento al Capitolato Tecnico, si richiedono le seguenti specifiche:

n. prog. QUESITO RISPOSTA In riferimento al Capitolato Tecnico, si richiedono le seguenti specifiche: In riferimento al Capitolato Tecnico, si richiedono le seguenti specifiche: 1. Per quanto concerne la descrizione di pagina 27 cap. 4.2.7 Storage Area Network Si legge che L infrastruttura SAN deve essere

Dettagli

Fisciano, 24 ottobre 2008

Fisciano, 24 ottobre 2008 Virtualizzazione applicazioni per la sicurezza Luigi Catuogno Fisciano, 24 ottobre 2008 Sommario Virtualizzazione e para-virtualizzazione Sicurezza Separazione delle applicazioni Virtual data center Trusted

Dettagli

VIRTUAL INFRASTRUCTURE DATABASE

VIRTUAL INFRASTRUCTURE DATABASE ALLEGATO B5.3 VIRTUAL INFRASTRUCTURE DATABASE Situazione alla data 30.6.2011 Pag. 1 di 6 AIX Logical Partitions Database L infrastruttura dell ambiente RISC/AIX viene utilizzata come Data Layer; fornisce

Dettagli

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi Il Software Il software impiegato su un computer si distingue in: Software di sistema Sistema Operativo Compilatori per produrre programmi Software applicativo Elaborazione testi Fogli elettronici Basi

Dettagli

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Scheduling della CPU Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux Sistemi multiprocessori Fin qui si sono trattati i problemi di scheduling su singola

Dettagli

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle

Dettagli

Introduzione al Cloud Computing

Introduzione al Cloud Computing Risparmiare ed innovare attraverso le nuove soluzioni ICT e Cloud Introduzione al Cloud Computing Leopoldo Onorato Onorato Informatica Srl Mantova, 15/05/2014 1 Sommario degli argomenti Definizione di

Dettagli

Potenza Elaborativa, Sistemi Operativi e Virtualizzazione

Potenza Elaborativa, Sistemi Operativi e Virtualizzazione Potenza Elaborativa, Sistemi Operativi e Virtualizzazione Roma, Febbraio 2011 Operating Systems & Middleware Operations Potenza Elaborativa e Sistemi Operativi La virtualizzazione Operating Systems & Middleware

Dettagli

Procedura per la configurazione in rete di DMS.

Procedura per la configurazione in rete di DMS. Procedura per la configurazione in rete di DMS. Sommario PREMESSA... 2 Alcuni suggerimenti... 2 Utilizzo di NAS con funzione di server di rete - SCONSIGLIATO:... 2 Reti wireless... 2 Come DMS riconosce

Dettagli

Virtualizzazione VirtualBox 4.1.2 su Host Windows

Virtualizzazione VirtualBox 4.1.2 su Host Windows Virtualizzazione VirtualBox 4.1.2 su Host Windows La virtualizzazione, quando riferita all informatica, consiste nella creazione di una versione virtuale di una risorsa normalmente fornita fisicamente.

Dettagli

Software per Helpdesk

Software per Helpdesk Software per Helpdesk Padova - maggio 2010 Antonio Dalvit - www.antoniodalvit.com Cosa è un helpdesk? Un help desk è un servizio che fornisce informazioni e assistenza ad utenti che hanno problemi nella

Dettagli

Virtualization. Strutturare per semplificare la gestione. ICT Information & Communication Technology

Virtualization. Strutturare per semplificare la gestione. ICT Information & Communication Technology Virtualization Strutturare per semplificare la gestione Communication Technology Ottimizzare e consolidare Le organizzazioni tipicamente si sviluppano in maniera non strutturata e ciò può comportare la

Dettagli

Allegato. Servizio Hosting Virtual DataCenter di Regione Lombardia. per l ENTE UCL Asta del Serio

Allegato. Servizio Hosting Virtual DataCenter di Regione Lombardia. per l ENTE UCL Asta del Serio Allegato Servizio Hosting Virtual DataCenter di Regione Lombardia per l ENTE UCL Asta del Serio Contesto Il percorso condotto da Regione Lombardia (RL) per la razionalizzazione dei CED degli ENTI si inserisce

Dettagli

Base di dati e sistemi informativi

Base di dati e sistemi informativi Base di dati e sistemi informativi Una base di dati è un insieme organizzato di dati opportunamente strutturato per lo svolgimento di determinate attività La base di dati è un elemento fondamentale per

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Progetto Virtualizzazione

Progetto Virtualizzazione Progetto Virtualizzazione Dipartimento e Facoltà di Scienze Statistiche Orazio Battaglia 25/11/2011 Dipartimento di Scienze Statiche «Paolo Fortunati», Università di Bologna, via Belle Arti 41 1 La nascita

Dettagli

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi Software relazione Hardware Software di base Software applicativo Bios Sistema operativo Programmi applicativi Software di base Sistema operativo Bios Utility di sistema software Software applicativo Programmi

Dettagli

Sistema operativo: Gestione della memoria

Sistema operativo: Gestione della memoria Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Sistema operativo: Gestione della memoria La presente dispensa e

Dettagli

Installazione e caratteristiche generali 1

Installazione e caratteristiche generali 1 Installazione e caratteristiche generali 1 Introduzione SIGLA Ultimate e SIGLA Start Edition possono essere utilizzati solo se sono soddisfatti i seguenti prerequisiti: Microsoft.Net Framework 3.5 (consigliato

Dettagli

SDD System design document

SDD System design document UNIVERSITA DEGLI STUDI DI PALERMO FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA TESINA DI INGEGNERIA DEL SOFTWARE Progetto DocS (Documents Sharing) http://www.magsoft.it/progettodocs

Dettagli

Il modello di ottimizzazione SAM

Il modello di ottimizzazione SAM Il modello di ottimizzazione control, optimize, grow Il modello di ottimizzazione Il modello di ottimizzazione è allineato con il modello di ottimizzazione dell infrastruttura e fornisce un framework per

Dettagli

Premessa Le indicazioni seguenti sono parzialmente tratte da Wikipedia (www.wikipedia.com) e da un tutorial di Pierlauro Sciarelli su comefare.

Premessa Le indicazioni seguenti sono parzialmente tratte da Wikipedia (www.wikipedia.com) e da un tutorial di Pierlauro Sciarelli su comefare. Macchine virtuali Premessa Le indicazioni seguenti sono parzialmente tratte da Wikipedia (www.wikipedia.com) e da un tutorial di Pierlauro Sciarelli su comefare.com 1. Cosa sono In informatica il termine

Dettagli

1. BASI DI DATI: GENERALITÀ

1. BASI DI DATI: GENERALITÀ 1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico

Dettagli

Architetture Informatiche. Dal Mainframe al Personal Computer

Architetture Informatiche. Dal Mainframe al Personal Computer Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico

Dettagli

Un sistema operativo è un insieme di programmi che consentono ad un utente di

Un sistema operativo è un insieme di programmi che consentono ad un utente di INTRODUZIONE AI SISTEMI OPERATIVI 1 Alcune definizioni 1 Sistema dedicato: 1 Sistema batch o a lotti: 2 Sistemi time sharing: 2 Sistema multiprogrammato: 3 Processo e programma 3 Risorse: 3 Spazio degli

Dettagli

Capire i benefici di una rete informatica nella propria attività. I componenti di una rete. I dispositivi utilizzati.

Capire i benefici di una rete informatica nella propria attività. I componenti di una rete. I dispositivi utilizzati. LA RETE INFORMATICA NELL AZIENDA Capire i benefici di una rete informatica nella propria attività. I componenti di una rete I dispositivi utilizzati I servizi offerti LA RETE INFORMATICA NELL AZIENDA Copyright

Dettagli

LE RETI: STRUMENTO AZIENDALE

LE RETI: STRUMENTO AZIENDALE LE RETI: STRUMENTO AZIENDALE INDICE -Introduzione -La rete e i principali tipi di rete -La rete delle reti: Internet -Evoluzione tecnologica di internet: cloud computing -Vantaggi della cloud all interno

Dettagli

Il servizio di registrazione contabile. che consente di azzerare i tempi di registrazione delle fatture e dei relativi movimenti contabili

Il servizio di registrazione contabile. che consente di azzerare i tempi di registrazione delle fatture e dei relativi movimenti contabili Il servizio di registrazione contabile che consente di azzerare i tempi di registrazione delle fatture e dei relativi movimenti contabili Chi siamo Imprese giovani e dinamiche ITCluster nasce a Torino

Dettagli

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia L informatica È la disciplina scientifica che studia INTRODUZIONE I calcolatori, nati in risposta all esigenza di eseguire meccanicamente operazioni ripetitive Gli algoritmi, nati in risposta all esigenza

Dettagli

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?

Dettagli

Sistemi informativi secondo prospettive combinate

Sistemi informativi secondo prospettive combinate Sistemi informativi secondo prospettive combinate direz acquisti direz produz. direz vendite processo acquisti produzione vendite INTEGRAZIONE TRA PROSPETTIVE Informazioni e attività sono condivise da

Dettagli

Riferimento rapido per l'installazione SUSE Linux Enterprise Server 11

Riferimento rapido per l'installazione SUSE Linux Enterprise Server 11 Riferimento rapido per l'installazione SUSE Linux Enterprise Server 11 NOVELL SCHEDA INTRODUTTIVA Seguire le procedure riportate di seguito per installare una nuova versione di SUSE Linux Enterprise 11.

Dettagli

STRUTTURE DEI SISTEMI DI CALCOLO

STRUTTURE DEI SISTEMI DI CALCOLO STRUTTURE DEI SISTEMI DI CALCOLO 2.1 Strutture dei sistemi di calcolo Funzionamento Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione Hardware Architettura di un generico sistema

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1 IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Le fattispecie di riuso

Le fattispecie di riuso Le fattispecie di riuso Indice 1. PREMESSA...3 2. RIUSO IN CESSIONE SEMPLICE...4 3. RIUSO CON GESTIONE A CARICO DEL CEDENTE...5 4. RIUSO IN FACILITY MANAGEMENT...6 5. RIUSO IN ASP...7 1. Premessa Poiché

Dettagli

Desktop Cloud: modelli, vantaggi, criticità

Desktop Cloud: modelli, vantaggi, criticità Dipartimento di Elettronica e Informazione Desktop Cloud: modelli, vantaggi, criticità Eugenio Capra eugenio.capra@polimi.it Evento ZeroUno, Milano, 24 marzo 2011 Le esigenze degli IT manager Le principali

Dettagli

Scenario di Progettazione

Scenario di Progettazione Appunti del 3 Ottobre 2008 Prof. Mario Bochicchio SCENARIO DI PROGETTAZIONE Scenario di Progettazione Il Committente mette a disposizione delle risorse e propone dei documenti che solitamente rappresentano

Dettagli

Il Software. Il software del PC. Il BIOS

Il Software. Il software del PC. Il BIOS Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Dettagli

IL SOFTWARE TIPI DI SOFTWARE. MACCHINE VIRTUALI Vengono definite così perché sono SIMULATE DAL SOFTWARE, UNIFORMANO L ACCESSO SISTEMA OPERATIVO

IL SOFTWARE TIPI DI SOFTWARE. MACCHINE VIRTUALI Vengono definite così perché sono SIMULATE DAL SOFTWARE, UNIFORMANO L ACCESSO SISTEMA OPERATIVO IL SOFTWARE L HARDWARE da solo non è sufficiente a far funzionare un computer Servono dei PROGRAMMI (SOFTWARE) per: o Far interagire, mettere in comunicazione, le varie componenti hardware tra loro o Sfruttare

Dettagli

Il web server Apache Lezione n. 3. Introduzione

Il web server Apache Lezione n. 3. Introduzione Procurarsi ed installare il web server Apache Introduzione In questa lezione cominciamo a fare un po di pratica facendo una serie di operazioni preliminari, necessarie per iniziare a lavorare. In particolar

Dettagli

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO

SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO SOFTWARE PER LA RILEVAZIONE DEI TEMPI PER CENTRI DI COSTO Descrizione Nell ambito della rilevazione dei costi, Solari con l ambiente Start propone Time&Cost, una applicazione che contribuisce a fornire

Dettagli

FileMaker Pro 13. Utilizzo di una Connessione Desktop Remota con FileMaker Pro13

FileMaker Pro 13. Utilizzo di una Connessione Desktop Remota con FileMaker Pro13 FileMaker Pro 13 Utilizzo di una Connessione Desktop Remota con FileMaker Pro13 2007-2013 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 1 Sistema software 1 Prerequisiti Utilizzo elementare di un computer Significato elementare di programma e dati Sistema operativo 2 1 Introduzione In questa Unità studiamo

Dettagli

INFORMATICA. Il Sistema Operativo. di Roberta Molinari

INFORMATICA. Il Sistema Operativo. di Roberta Molinari INFORMATICA Il Sistema Operativo di Roberta Molinari Il Sistema Operativo un po di definizioni Elaborazione: trattamento di di informazioni acquisite dall esterno per per restituire un un risultato Processore:

Dettagli

Il computer: primi elementi

Il computer: primi elementi Il computer: primi elementi Tommaso Motta T. Motta Il computer: primi elementi 1 Informazioni Computer = mezzo per memorizzare, elaborare, comunicare e trasmettere le informazioni Tutte le informazioni

Dettagli

Il sistema operativo. Sistema operativo. Multiprogrammazione. Il sistema operativo. Gestione della CPU

Il sistema operativo. Sistema operativo. Multiprogrammazione. Il sistema operativo. Gestione della CPU Il sistema operativo Sistema operativo Gestione della CPU Primi elaboratori: Monoprogrammati: un solo programma in memoria centrale Privi di sistema operativo Gestione dell hardware da parte degli utenti

Dettagli

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer.

Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. I Sistemi Operativi Il Software di Base Il software di base comprende l insieme dei programmi predisposti per un uso efficace ed efficiente del computer. Il sistema operativo è il gestore di tutte le risorse

Dettagli

Le Infrastrutture Software ed il Sistema Operativo

Le Infrastrutture Software ed il Sistema Operativo Le Infrastrutture Software ed il Sistema Operativo Corso di Informatica CdL: Chimica Claudia d'amato claudia.damato@di.uniba.it Il Sistema Operativo (S0) (Inf.) E' l'insieme dei programmi che consentono

Dettagli

Allegato Tecnico Server Virtuale

Allegato Tecnico Server Virtuale Allegato Tecnico Server Virtuale Nota di lettura 1 Descrizione del servizio 1.1 Definizioni e acronimi 1.2 SERVER VIRTUALE Conversione tra diversi sistemi hypervisor 1.3 Attivazione del servizio Configurazione

Dettagli

I sistemi virtuali nella PA. Il caso della Biblioteca del Consiglio Regionale della Puglia

I sistemi virtuali nella PA. Il caso della Biblioteca del Consiglio Regionale della Puglia I sistemi virtuali nella PA Il caso della Biblioteca del Consiglio Regionale della Puglia Indice I sistemi virtuali Definizione di Cloud Computing Le tecnologie che li caratterizzano La virtualizzazione

Dettagli

Approfondimenti. Contenuti

Approfondimenti. Contenuti Approfondimenti dott. Stefano D. Fratepietro steve@stevelab.net C I R S F I D Università degli studi di Bologna stevelab.net Creative Commons license Stefano Fratepietro - www.stevelab.net 1 Contenuti

Dettagli

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX Parte 2 Struttura interna del sistema LINUX 76 4. ASPETTI GENERALI DEL SISTEMA OPERATIVO LINUX La funzione generale svolta da un Sistema Operativo può essere definita come la gestione dell Hardware orientata

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 4 - parte II La memoria 1 La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso,

Dettagli

FoLUG Forlì Linux User Group. Partizionamento

FoLUG Forlì Linux User Group. Partizionamento FoLUG Forlì Linux User Group con la partecipazione della Circoscrizione n 3 di Forlì Partizionamento Quello che occorre sapere sul disco fisso per installare UBUNTU 10.10 o altri sistemi operativi. FoLUG

Dettagli

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

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

Dettagli

Turismo Virtual Turismo Virtual Turismo Virtual

Turismo Virtual Turismo Virtual Turismo Virtual Da una collaborazione nata all inizio del 2011 tra le società Annoluce di Torino e Ideavity di Porto (PT), giovani e dinamiche realtà ICT, grazie al supporto della Camera di Commercio di Torino, nasce

Dettagli

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA

MANUALE DELLA QUALITA Revisione: Sezione 4 SISTEMA DI GESTIONE PER LA QUALITA Pagina: 1 di 5 SISTEMA DI GESTIONE PER LA QUALITA 4.0 SCOPO DELLA SEZIONE Illustrare la struttura del Sistema di Gestione Qualità SGQ dell Istituto. Per gli aspetti di dettaglio, la Procedura di riferimento

Dettagli

Progetto Vserver- HighAvailability

Progetto Vserver- HighAvailability Progetto Vserver- HighAvailability 16.12.2003 Alberto Cammozzo - Dipartimento di Scienze Statistiche - Università di Padova mmzz@stat.unipd.it Nell'ambito dell'aggiornamento dei servizi in corso si propone

Dettagli

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

Soluzioni per archiviazione sicura di log di accesso server Windows. PrivacyLOG

Soluzioni per archiviazione sicura di log di accesso server Windows. PrivacyLOG Soluzioni per archiviazione sicura di log di accesso server Windows PrivacyLOG Perché mi devo occupare di questo problema? Il provvedimento del Garante Privacy - 27 novembre 2008 ("Misure e accorgimenti

Dettagli