44 resultados para Open Source Software
Resumo:
Questa tesi si pone l’obiettivo di effettuare un’analisi aggiornata sulla recente evoluzione del Cloud Computing e dei nuovi modelli architetturali a sostegno della continua crescita di richiesta di risorse di computazione, di storage e di rete all'interno dei data center, per poi dedicarsi ad una fase sperimentale di migrazioni live singole e concorrenti di macchine virtuali, studiandone le prestazioni a livello di risorse applicative e di rete all’interno della piattaforma open source di virtualizzazione QEMU-KVM, oggi alla base di sistemi cloud-based come Openstack. Nel primo capitolo, viene effettuato uno studio dello stato dell’arte del Cloud Computing, dei suoi attuali limiti e delle prospettive offerte da un modello di Cloud Federation nel futuro immediato. Nel secondo capitolo vengono discusse nel dettaglio le tecniche di live migration, di recente riferimento per la comunità scientifica internazionale e le possibili ottimizzazioni in scenari inter e intra data center, con l’intento di definire la base teorica per lo studio approfondito dell’implementazione effettiva del processo di migrazione su piattaforma QEMU-KVM, che viene affrontato nel terzo capitolo. In particolare, in quest’ultimo sono descritti i principi architetturali e di funzionamento dell'hypervisor e viene definito il modello di progettazione e l’algoritmo alla base del processo di migrazione. Nel quarto capitolo, infine, si presenta il lavoro svolto, le scelte configurative e progettuali per la creazione di un ambiente di testbed adatto allo studio di sessioni di live migration concorrenti e vengono discussi i risultati delle misure di performance e del comportamento del sistema, tramite le sperimentazioni effettuate.
Resumo:
Il Cloud computing è probabilmente l'argomento attualmente più dibattuto nel mondo dell'Information and Communication Technology (ICT). La diffusione di questo nuovo modo di concepire l'erogazione di servizi IT, è l'evoluzione di una serie di tecnologie che stanno rivoluzionando le modalit à in cui le organizzazioni costruiscono le proprie infrastrutture informatiche. I vantaggi che derivano dall'utilizzo di infrastrutture di Cloud Computing sono ad esempio un maggiore controllo sui servizi, sulla struttura dei costi e sugli asset impiegati. I costi sono proporzionati all'eettivo uso dei servizi (pay-per-use), evitando dunque gli sprechi e rendendo più efficiente il sistema di sourcing. Diverse aziende hanno già cominciato a provare alcuni servizi cloud e molte altre stanno valutando l'inizio di un simile percorso. La prima organizzazione a fornire una piattaforma di cloud computing fu Amazon, grazie al suo Elastic Computer Cloud (EC2). Nel luglio del 2010 nasce OpenStack, un progetto open-source creato dalla fusione dei codici realizzati dall'agenzia governativa della Nasa[10] e dell'azienda statunitense di hosting Rackspace. Il software realizzato svolge le stesse funzioni di quello di Amazon, a differenza di questo, però, è stato rilasciato con licenza Apache, quindi nessuna restrizione di utilizzo e di implementazione. Oggi il progetto Openstack vanta di numerose aziende partner come Dell, HP, IBM, Cisco, e Microsoft. L'obiettivo del presente elaborato è quello di comprendere ed analizzare il funzionamento del software OpenStack. Il fine principale è quello di familiarizzare con i diversi componenti di cui è costituito e di concepire come essi interagiscono fra loro, per poter costruire infrastrutture cloud del tipo Infrastructure as a service (IaaS). Il lettore si troverà di fronte all'esposizione degli argomenti organizzati nei seguenti capitoli. Nel primo capitolo si introduce la definizione di cloud computing, trattandone le principali caratteristiche, si descrivono poi, i diversi modelli di servizio e di distribuzione, delineando vantaggi e svantaggi che ne derivano. Nel secondo capitolo due si parla di una delle tecnologie impiegate per la realizzazione di infrastrutture di cloud computing, la virtualizzazione. Vengono trattate le varie forme e tipologie di virtualizzazione. Nel terzo capitolo si analizza e descrive in dettaglio il funzionamento del progetto OpenStack. Per ogni componente del software, viene illustrata l'architettura, corredata di schemi, ed il relativo meccanismo. Il quarto capitolo rappresenta la parte relativa all'installazione del software e alla configurazione dello stesso. Inoltre si espongono alcuni test effettuati sulla macchina in cui è stato installato il software. Infine nel quinto capitolo si trattano le conclusioni con le considerazioni sugli obiettivi raggiunti e sulle caratteristiche del software preso in esame.
Resumo:
Studio degli strumenti Open Source usati per lo sviluppo cooperativo del software, delle loro possibili interazioni e di come esse facilitino lo sviluppo cooperativo.
Resumo:
La tesi fornisce una panoramica delle principali metodologie di analisi dei dati utilizzando il software open source R e l’ambiente di sviluppo integrato (IDE) RStudio. Viene effettuata un’analisi descrittiva e quantitativa dei dati GICS, tassonomia industriale che cataloga le principali aziende per il processo di gestione e ricerca degli asset di investimento. Sono stati studiati i principali settori del mercato USA considerando il fatturato, le spese per il lobbying e tre indici che misurano il grado di collegamento fra industrie. Su questi dati si sono svolte delle analisi quantitative e si sono tentati alcuni modelli nell’ambito della regressione lineare semplice e multipla. Tale studio ha il compito di verificare eventuali interazioni fra le variabili o pattern di comportamento strategico societario durante il periodo 2007 - 2012, anni di rinnovo e miglioramento delle regolamentazioni in materia di lobbying negli Stati Uniti. Più nello specifico vengono presi in esame tre settori: IT, Health Care e Industrial dove viene studiato l’andamento del reddito medio e la spesa media in attività di lobbying dei settori. I risultati ottenuti mostrano l’utilità dei pacchetti di R per l’analisi dei dati: vengono individuati alcuni andamenti che, se confermati da ulteriori e necessarie analisi, potrebbero essere interessanti per capire non solo i meccanismi impliciti nell’attività di lobbying ma anche comportamenti anomali legati a questa attività.
Resumo:
Le reti devono essere in grado di gestire i modelli di traffico generati dalle nuove applicazioni, per questo si sta concentrando un interesse senza precedenti nella storia di Internet parlando di Software Defined Networking (SDN), un nuovo modo di concepire le reti. SDN è un paradigma che permette di dividere il piano di controllo dal piano dati consentendo il controllo della rete da un dispositivo unico centralizzato,il controller. In questa tesi abbiamo voluto esaminare due specifici casi di studio, affinché si dimostri come SDN possa fornire il miglior supporto per risolvere il problema delle architetture tradizionali, e uno strumento utile per progettare SDN. Per primo viene analizzato Procera, utilizzato nelle reti domestiche e nelle reti campus per dimostrare che, grazie ad esso, è possibile ridurre la complessità di un’intera rete. Poi è stato visto AgNos, un’architettura basata su azioni svolte da agenti rappresentando così un ottimo strumento di lavoro sia perché gli agenti sono implementati nei controller di rete e sia perché AgNos ha la peculiarità di fornire all’utente (o al sistema) un livello stabile di concretezza. Inoltre sono stati analizzati due problemi comuni su Internet: 1.la mitigazione degli attacchi Ddos, dove i domini SDN collaborano per filtrare i pacchetti dalla fonte per evitare l’esaurimento delle risorse 2.l’attuazione di un meccanismo di prevenzione per risolvere il problema dell’attacco Dos nella fase iniziale rendendo l’aggressione più facile da gestire. L’ultimo argomento trattato è il sistema Mininet, ottimo strumento di lavoro in quanto permette di emulare topologie di rete in cui fanno parte host, switch e controller, creati utilizzando il software. Rappresenta un ottimo strumento per implementare reti SDN ed è molto utile per lo sviluppo, l'insegnamento e la ricerca grazie alla sua peculiarità di essere open source.
Resumo:
Analisi in chiave economica e sociale dell'evoluzione di Internet, delle tecnologie legate al Web 2.0, dei fenomeni della pirateria, del software libero ed open source, del copyleft, dei contenuti aperti e della produzione tra pari. Introduzione dei concetti di economia del gratis ("freeconomics") e di coda lunga. Consigli manageriali pratici per i nuovi mercati digitali e per la competizione nella rete Internet.
Resumo:
Fra le varie ragioni della crescente pervasività di Internet in molteplici settori di mercato del tutto estranei all’ICT, va senza dubbio evidenziata la possibilità di creare canali di comunicazione attraverso i quali poter comandare un sistema e ricevere da esso informazioni di qualsiasi genere, qualunque distanza separi controllato e controllore. Nel caso specifico, il contesto applicativo è l’automotive: in collaborazione col Dipartimento di Ingegneria Elettrica dell’Università di Bologna, ci si è occupati del problema di rendere disponibile a distanza la grande quantità di dati che i vari sotto-sistemi componenti una automobile elettrica si scambiano fra loro, sia legati al tipo di propulsione, elettrico appunto, come i livelli di carica delle batterie o la temperatura dell’inverter, sia di natura meccanica, come i giri motore. L’obiettivo è quello di permettere all’utente (sia esso il progettista, il tecnico riparatore o semplicemente il proprietario) il monitoraggio e la supervisione dello stato del mezzo da remoto nelle sue varie fasi di vita: dai test eseguiti su prototipo in laboratorio, alla messa in strada, alla manutenzione ordinaria e straordinaria. L’approccio individuato è stato quello di collezionare e memorizzare in un archivio centralizzato, raggiungibile via Internet, tutti i dati necessari. Il sistema di elaborazione a bordo richiede di essere facilmente integrabile, quindi di piccole dimensioni, e a basso costo, dovendo prevedere la produzione di molti veicoli; ha inoltre compiti ben definiti e noti a priori. Data la situazione, si è quindi scelto di usare un sistema embedded, cioè un sistema elettronico di elaborazione progettato per svolgere un limitato numero di funzionalità specifiche sottoposte a vincoli temporali e/o economici. Apparati di questo tipo sono denominati “special purpose”, in opposizione ai sistemi di utilità generica detti “general purpose” quali, ad esempio, i personal computer, proprio per la loro capacità di eseguire ripetutamente un’azione a costo contenuto, tramite un giusto compromesso fra hardware dedicato e software, chiamato in questo caso “firmware”. I sistemi embedded hanno subito nel corso del tempo una profonda evoluzione tecnologica, che li ha portati da semplici microcontrollori in grado di svolgere limitate operazioni di calcolo a strutture complesse in grado di interfacciarsi a un gran numero di sensori e attuatori esterni oltre che a molte tecnologie di comunicazione. Nel caso in esame, si è scelto di affidarsi alla piattaforma open-source Arduino; essa è composta da un circuito stampato che integra un microcontrollore Atmel da programmare attraverso interfaccia seriale, chiamata Arduino board, ed offre nativamente numerose funzionalità, quali ingressi e uscite digitali e analogici, supporto per SPI, I2C ed altro; inoltre, per aumentare le possibilità d’utilizzo, può essere posta in comunicazione con schede elettroniche esterne, dette shield, progettate per le più disparate applicazioni, quali controllo di motori elettrici, gps, interfacciamento con bus di campo quale ad esempio CAN, tecnologie di rete come Ethernet, Bluetooth, ZigBee, etc. L’hardware è open-source, ovvero gli schemi elettrici sono liberamente disponibili e utilizzabili così come gran parte del software e della documentazione; questo ha permesso una grande diffusione di questo frame work, portando a numerosi vantaggi: abbassamento del costo, ambienti di sviluppo multi-piattaforma, notevole quantità di documentazione e, soprattutto, continua evoluzione ed aggiornamento hardware e software. È stato quindi possibile interfacciarsi alla centralina del veicolo prelevando i messaggi necessari dal bus CAN e collezionare tutti i valori che dovevano essere archiviati. Data la notevole mole di dati da elaborare, si è scelto di dividere il sistema in due parti separate: un primo nodo, denominato Master, è incaricato di prelevare dall’autovettura i parametri, di associarvi i dati GPS (velocità, tempo e posizione) prelevati al momento della lettura e di inviare il tutto a un secondo nodo, denominato Slave, che si occupa di creare un canale di comunicazione attraverso la rete Internet per raggiungere il database. La denominazione scelta di Master e Slave riflette la scelta fatta per il protocollo di comunicazione fra i due nodi Arduino, ovvero l’I2C, che consente la comunicazione seriale fra dispositivi attraverso la designazione di un “master” e di un arbitrario numero di “slave”. La suddivisione dei compiti fra due nodi permette di distribuire il carico di lavoro con evidenti vantaggi in termini di affidabilità e prestazioni. Del progetto si sono occupate due Tesi di Laurea Magistrale; la presente si occupa del dispositivo Slave e del database. Avendo l’obiettivo di accedere al database da ovunque, si è scelto di appoggiarsi alla rete Internet, alla quale si ha oggi facile accesso da gran parte del mondo. Questo ha fatto sì che la scelta della tecnologia da usare per il database ricadesse su un web server che da un lato raccoglie i dati provenienti dall’autovettura e dall’altro ne permette un’agevole consultazione. Anch’esso è stato implementato con software open-source: si tratta, infatti, di una web application in linguaggio php che riceve, sotto forma di richieste HTTP di tipo GET oppure POST, i dati dal dispositivo Slave e provvede a salvarli, opportunamente formattati, in un database MySQL. Questo impone però che, per dialogare con il web server, il nodo Slave debba implementare tutti i livelli dello stack protocollare di Internet. Due differenti shield realizzano quindi il livello di collegamento, disponibile sia via cavo sia wireless, rispettivamente attraverso l’implementazione in un caso del protocollo Ethernet, nell’altro della connessione GPRS. A questo si appoggiano i protocolli TCP/IP che provvedono a trasportare al database i dati ricevuti dal dispositivo Master sotto forma di messaggi HTTP. Sono descritti approfonditamente il sistema veicolare da controllare e il sistema controllore; i firmware utilizzati per realizzare le funzioni dello Slave con tecnologia Ethernet e con tecnologia GPRS; la web application e il database; infine, sono presentati i risultati delle simulazioni e dei test svolti sul campo nel laboratorio DIE.
Resumo:
Il presente lavoro è stato svolto presso la struttura di Fisica Medica dell'Azienda Ospedaliera IRCCS "Arcispedale S. Maria Nuova" di Reggio Emilia e consiste nello sviluppo di un sistema per l'ottimizzazione della dose in Radioterapia tramite dose-painting basato sui voxel. Il dose painting è una tecnica di pianificazione del trattamento di radioterapia che si basa sull'assegnazione o ridistribuzione della dose secondo le informazioni biologiche e metaboliche che i moderni sistemi di imaging sono in grado di fornire. La realizzazione del modulo di calcolo BioOPT è stata possibile grazie all'utilizzo dei due software open-source Plastimatch e CERR, specifici per l'elaborazione e la registrazione di immagini mediche di diversi tipi e formati e per la gestione, la modifica e il salvataggio di piani di trattamento di radioterapia creati con la maggior parte dei software commerciali ed accademici. Il sistema sviluppato è in grado di registrare le immagini relative ad un paziente, in generale ottenute da diverse tipologie di imaging e acquisite in tempi diversi ed estrarre le informazioni biologiche relative ad una certa struttura. Tali informazioni verranno poi utilizzate per calcolare le distribuzioni di dose "ottimale" che massimizzano il valore delle funzioni radiobiologiche utilizzate per guidare il processo di redistribuzione della dose a livello dei voxel (dose-painting). In questo lavoro il modulo è stato utilizzato principalmente per l'ottimizzazione della dose in pazienti affetti da Glioblastoma, un tumore cerebrale maligno tra i più diffusi e mortali. L'ottimizzatore voxel-based, infatti, è stato sviluppato per essere utilizzabile all'interno di un progetto di ricerca finanziato dal Ministero della Salute per la valutazione di un programma di terapia che include l'uso di un innovativo acceleratore lineare ad alto rateo di dose per la cura di tumori cerebrali in fase avanzata. Al fine di migliorare il trattamento radiante, inoltre, lo studio include la somministrazione della dose tramite dose-painting con lo scopo di verificarne l'efficacia. I risultati ottenuti mostrano che tramite il modulo sviluppato è possibile ottenere distribuzioni di dose eterogenee che tengono conto delle caratteristiche biologiche intratumore stimate a partire dalle immagini multimodali. Inoltre il sistema sviluppato, grazie alla sua natura 'open', è altamente personalizzabile a scopi di ricerca e consente di simulare distribuzioni di dose basate sui voxel e di confrontarle con quelle ottenute con i sistemi commerciali ad uso clinico, che non consentono questo tipo di ottimizzazioni.
Resumo:
L’approccio performance-based nell’Ingegneria sismica è una metodologia di progetto che tiene esplicitamente in conto la performance dell’edificio tra i criteri progettuali. Nell’ambito dei metodi PBEE (Performance-Based Earthquake Engineering) di seconda generazione, quello proposto dal PEER (Pacific Earthquake Engineering Research Center) risulta essere il più diffuso. In esso la performance dell’edificio oggetto di studio viene valutata in termini quantitativi secondo le 3D’s (dollars, deaths, downtime – soldi, decessi, inutilizzo), quantità di notevole interesse per l’utente finale. Il metodo si compone di quattro step, indipendenti tra loro fino alla sintesi finale. Essi sono: l’analisi di pericolosità, l’analisi strutturale, l’analisi di danno, l’analisi delle perdite o di loss. Il risultato finale è la curva di loss, che assegna ad ogni possibile perdita economica conseguente all’evento sismico una probabilità di superamento nell’arco temporale di riferimento. Dopo la presentazione del metodo PEER, si è provveduto ad una sua applicazione su di un caso di studio, nella fattispecie un telaio piano di quattro campate, multipiano, in calcestruzzo armato, costruito secondo le norme del ’92. Per l’analisi di pericolosità si è fatto ricorso alle mappe di pericolosità disponibili sul sito INGV, mentre per l’analisi strutturale si è utilizzato il software open-source OpenSees. Le funzioni di fragilità e quelle di loss sono state sviluppate facendo riferimento alla letteratura scientifica, in particolare il bollettino Fib numero 68 “Probabilistic performance-based seismic design”. In questa sede ci si è concentrati unicamente sulla stima delle perdite economiche, tralasciando le altre due variabili decisionali. Al termine del procedimento si è svolta un’analisi di sensitività per indagare quali parametri influenzino maggiormente la curva di loss. Data la curva di pericolosità, il legame EDP(IM) e la deformazione ultima a collasso risultano essere i più rilevanti sul risultato dell’analisi.
Resumo:
L’obiettivo che si pone questa tesi è quello di analizzare alcune soluzioni esistenti riguardo i problemi riguardanti privacy e sicurezza informatica. Nello specifico sarà illustrato il programma Tor, un sistema di comunicazione grazie al quale si garantisce l’anonimato in Internet. Sponsorizzato inizialmente dall’US Naval Research Laboratory, all’origine veniva utilizzato per poter effettuare comunicazioni militari criptate; è stato successivamente un progetto della Electronic Frontier Foundation ed ora è gestito da The Tor Project, un’associazione senza scopo di lucro che si occupa del relativo sviluppo. Le ricerche e gli sviluppi riguardanti questa tecnologia vengono tuttavia resi difficili da problemi di scalabilità e dalla difficoltà di riprodurre risultati affidabili. Nel corso della tesi saranno illustrati gli studi riguardanti il simulatore Shadow, un progetto Open Source gestito da The Tor Project, che permette la simulazione del protocollo Tor. I risultati ottenuti dai test effettuati sul simulatore, possono essere riapplicati in seguito alla rete reale Tor, poiché grazie a Shadow è possibile testare ed ottenere risultati attendibili circa il comportamento e la corretta esecuzione del software Tor.
Resumo:
In questo elaborato di tesi viene presentata la comparazione tra due codici CFD, rispettivamente Fluent e OpenFOAM, mediante simulazioni che sono alla base di uno studio numerico di flusso attorno ad un pantografo per treno ad alta velocità. Si è apprezzato quindi la facilità d’uso di un software venduto tramite licenza e la difficoltà di un software open source come OpenFOAM, il quale però ha vantaggi in termini di adattamento ai casi più specifici. Sono stati quindi studiati due casi, scambio termico in regime laminare attorno ad un cilindro bidimensionale e flusso turbolento completamente sviluppato in un canale. Tutte le simulazioni numeriche hanno raggiunto convergenza e sono state validate positivamente mediante confronto con dati sperimentali. Il primo caso prevede un cilindro investito da un flusso a temperatura minore rispetto alla temperatura della superficie del cilindro; per avere più riscontri, sono state condotte diverse prove a valori differenti del numero di Prandtl, e per ogni simulazione è stato ricavato il corrispettivo numero di Nusselt, successivamente comparato con i dati sperimentali per la validazione delle prove. A partire dalla creazione della griglia di calcolo, è stato effettuato uno studio del fenomeno in questione, creando così una griglia di calcolo sviluppata a valle del cilindro avente maggior densità di celle a ridosso della parte del cilindro. In aggiunta, svolgendo le prove con schemi numerici sia del primo che del secondo ordine, si è constatata la miglior sensibilità degli schemi numerici del secondo ordine rispetto a quelli del primo ordine. La seconda tipologia di simulazioni consiste in un flusso turbolento completamente sviluppato all’interno di un canale; sono state svolte simulazioni senza e con l’uso delle wall functions, e quindi usate griglie di calcolo differenti per i due tipi di simulazioni, già disponibili per entrambi i software. I dati ottenuti mostrano uno sforzo computazionale maggiore per le simulazioni che non prevedono l’uso delle wall functions, e quindi una maggiore praticità per le simulazioni con le wall functions. Inoltre, le simulazioni di questo secondo caso sono state svolte con diversi modelli di turbolenza; in Fluent sono stati utilizzati i modelli k-ε e RSM mentre in OpenFOAM è stato utilizzato solo il modello k-ε in quanto il modello RSM non è presente. La validazione dei risultati è affidata alla comparazione con i dati sperimentali ricavati da Moser et all mediante simulazioni DNS, mettendo in risalto la minor accuratezza delle equazioni RANS.
Resumo:
Bitcoin è una moneta digitale decentralizzata e parzialmente anonima. Viene scambiata tramite un software open source che utilizza la crittografia per garantire l'integrità e l'autenticità delle transazioni. Permette di inviare denaro digitale in maniera rapida, sicura ed economica attraverso Internet. La tesi si propone di analizzarne il fenomeno, partendo dalla sua storia fino alle possibili evoluzioni future. Vengono introdotte le basi di crittografia per comprenderne i concetti ed i meccanismi di funzionamento. In seguito viene analizzata l'implementazione del software e vengono discussi i principali vantaggi e criticità. La tesi esplora le possibili conseguenze di una sua adozione dal punto di vista economico e politico, e le innovazioni che potrebbe portare al sistema finanziario. Vengono infine mostrati alcuni esempi di software ispirati a Bitcoin che ne estendono ed ampliano le funzionalità nell'ambito dei sistemi distribuiti.