376 resultados para Linux Linux
Resumo:
La necessità di sincronizzare i propri dati si presenta in una moltitudine di situazioni, infatti il numero di dispositivi informatici a nostra disposizione è in continua crescita e, all' aumentare del loro numero, cresce l' esigenza di mantenere aggiornate le multiple copie dei dati in essi memorizzati. Vi sono diversi fattori che complicano tale situazione, tra questi la varietà sempre maggiore dei sistemi operativi utilizzati nei diversi dispositivi, si parla di Microsoft Windows, delle tante distribuzioni Linux, di Mac OS X, di Solaris o di altri sistemi operativi UNIX, senza contare i sistemi operativi più orientati al settore mobile come Android. Ogni sistema operativo ha inoltre un modo particolare di gestire i dati, si pensi alla differente gestione dei permessi dei file o alla sensibilità alle maiuscole. Bisogna anche considerare che se gli aggiornamenti dei dati avvenissero soltanto su di uno di questi dispositivi sarebbe richiesta una semplice copia dei dati aggiornati sugli altri dispositivi, ma che non è sempre possibile utilizzare tale approccio. Infatti i dati vengono spesso aggiornati in maniera indipendente in più di un dispositivo, magari nello stesso momento, è pertanto necessario che le applicazioni che si occupano di sincronizzare tali dati riconoscano le situazioni di conflitto, nelle quali gli stessi dati sono stati aggiornati in più di una copia ed in maniera differente, e permettano di risolverle, uniformando lo stato delle repliche. Considerando l' importanza e il valore che possono avere i dati, sia a livello lavorativo che personale, è necessario che tali applicazioni possano garantirne la sicurezza, evitando in ogni caso un loro danneggiamento, perchè sempre più spesso il valore di un dispositivo dipende più dai dati in esso contenuti che dal costo dello hardware. In questa tesi verranno illustrate alcune idee alternative su come possa aver luogo la condivisione e la sincronizzazione di dati tra sistemi operativi diversi, sia nel caso in cui siano installati nello stesso dispositivo che tra dispositivi differenti. La prima parte della tesi descriverà nel dettaglio l' applicativo Unison. Tale applicazione, consente di mantenere sincronizzate tra di loro repliche dei dati, memorizzate in diversi dispositivi che possono anche eseguire sistemi operativi differenti. Unison funziona a livello utente, analizzando separatamente lo stato delle repliche al momento dell' esecuzione, senza cioè mantenere traccia delle operazioni che sono state effettuate sui dati per modificarli dal loro stato precedente a quello attuale. Unison permette la sincronizzazione anche quando i dati siano stati modificati in maniera indipendente su più di un dispositivo, occupandosi di risolvere gli eventuali conflitti che possono verificarsi rispettando la volontà dell' utente. Verranno messe in evidenza le strategie utilizzate dai suoi ideatori per garantire la sicurezza dei dati ad esso affidati e come queste abbiano effetto nelle più diverse condizioni. Verrà poi fornita un' analisi dettagiata di come possa essere utilizzata l' applicazione, fornendo una descrizione accurata delle funzionalità e vari esempi per renderne più chiaro il funzionamento. Nella seconda parte della tesi si descriverà invece come condividere file system tra sistemi operativi diversi all' interno della stessa macchina, si tratta di un approccio diametralmente opposto al precedente, in cui al posto di avere una singola copia dei dati, si manteneva una replica per ogni dispositivo coinvolto. Concentrando l' attenzione sui sistemi operativi Linux e Microsoft Windows verranno descritti approfonditamente gli strumenti utilizzati e illustrate le caratteristiche tecniche sottostanti.
Resumo:
Il Progetto XCModel, che da dieci anni si sviluppa e si perfeziona col contributo di varie persone, consente la progettazione di scene 3D e la resa fotorealistica. Esso si appoggia sulle funzionalita' grafiche di X-Window in Linux: si tratta di un ambiente in costante evoluzione, dovuta sia alle continue innovazioni hardware che ai cambiamenti degli standard. XCModel e' composto da vari pacchetti, ognuno dei quali specializzato nel trattare un particolare aspetto della modellazione o della resa (curve, superfici, textures, luci, ...) e che si presentano come applicazioni dotate di una sofisticata interfaccia grafica. Tutte attingono alle funzioni della Libreria XTools, che fornisce numerose primitive grafiche facenti uso delle potenzialita' di X-Window. I recenti cambiamenti nelle specifiche di X-Org, ed in particolare la de- standardizzazione del backing-store, ha obbligato il team di XCModel ad una consistente riprogettazione di XTools e di tutti i pacchetti che su di esso s'appoggiano. S'e' colta l'occasione per un massiccio debugging e per modificare i pacchetti in base alle impressioni emerse nel corso degli anni da parte degli utilizzatori, primi tra tutti gli studenti del corso di Grafica tenuto dal Prof. Giulio Casciola, project-manager di XCModel: questa e' un'ulteriore testimonianza del continuo adattamento e dell'aggiornabilita' del Progetto! Nella fattispecie, ci si occupera' delle modifiche effettuate in particolare al pacchetto XCSurf, finalizzato alla creazione ed alla modifica di curve e superfici 3D da utilizzarsi successivamente per la creazione delle scene: tale pacchetto e' di fatto risultato il pie' avulso dalle specifiche di XTools, il che ha costretto ad un massiccio intervento al codice del programma, ma d'altro canto ha consentito una standardizzazione del pacchetto in linea con gli altri, in particolare ridisegnandone l'interfaccia. Nel primo capitolo si effettuera' una veloce panoramica dell'ambiente XCModel e delle problematiche emerse dai cambiamenti degli standard di X-Window. Il secondo capitolo affrontera' un'ampia analisi dell'hardware, del software e dei paradigmi che caratterizzano la grafica interattiva, e gli ambienti necessari per interagire con essa ed esaminando i vari obiettivi raggiungibili. Infine, il terzo capitolo analizzera' nel dettaglio le modifiche effettuate ai pacchetti di XCModel ed in particolare ad XCSurf per l'adattamento ai nuovi standard, nel rispetto delle politiche e delle linee guida dettate dalla grafica interattiva.
Resumo:
Skype is one of the well-known applications that has guided the evolution of real-time video streaming and has become one of the most used software in everyday life. It provides VoIP audio/video calls as well as messaging chat and file transfer. Many versions are available covering all the principal operating systems like Windows, Macintosh and Linux but also mobile systems. Voice quality decreed Skype success since its birth in 2003 and peer-to-peer architecture has allowed worldwide diffusion. After video call introduction in 2006 Skype became a complete solution to communicate between two or more people. As a primarily video conferencing application, Skype assumes certain characteristics of the delivered video to optimize its perceived quality. However in the last years, and with the recent release of SkypeKit1, many new Skype video-enabled devices came out especially in the mobile world. This forced a change to the traditional recording, streaming and receiving settings allowing for a wide range of network and content dynamics. Video calls are not anymore based on static ‘chatting’ but mobile devices have opened new possibilities and can be used in several scenarios. For instance, lecture streaming or one-to-one mobile video conferences exhibit more dynamics as both caller and callee might be on move. Most of these cases are different from “head&shoulder” only content. Therefore, Skype needs to optimize its video streaming engine to cover more video types. Heterogeneous connections require different behaviors and solutions and Skype must face with this variety to maintain a certain quality independently from connection used. Part of the present work will be focused on analyzing Skype behavior depending on video content. Since Skype protocol is proprietary most of the studies so far have tried to characterize its traffic and to reverse engineer its protocol. However, questions related to the behavior of Skype, especially on quality as perceived by users, remain unanswered. We will study Skype video codecs capabilities and video quality assessment. Another motivation of our work is the design of a mechanism that estimates the perceived cost of network conditions on Skype video delivery. To this extent we will try to assess in an objective way the impact of network impairments on the perceived quality of a Skype video call. Traditional video streaming schemes lack the necessary flexibility and adaptivity that Skype tries to achieve at the edge of a network. Our contribution will lye on a testbed and consequent objective video quality analysis that we will carry out on input videos. We will stream raw video files with Skype via an impaired channel and then we will record it at the receiver side to analyze with objective quality of experience metrics.
Resumo:
Synthetic Biology is a relatively new discipline, born at the beginning of the New Millennium, that brings the typical engineering approach (abstraction, modularity and standardization) to biotechnology. These principles aim to tame the extreme complexity of the various components and aid the construction of artificial biological systems with specific functions, usually by means of synthetic genetic circuits implemented in bacteria or simple eukaryotes like yeast. The cell becomes a programmable machine and its low-level programming language is made of strings of DNA. This work was performed in collaboration with researchers of the Department of Electrical Engineering of the University of Washington in Seattle and also with a student of the Corso di Laurea Magistrale in Ingegneria Biomedica at the University of Bologna: Marilisa Cortesi. During the collaboration I contributed to a Synthetic Biology project already started in the Klavins Laboratory. In particular, I modeled and subsequently simulated a synthetic genetic circuit that was ideated for the implementation of a multicelled behavior in a growing bacterial microcolony. In the first chapter the foundations of molecular biology are introduced: structure of the nucleic acids, transcription, translation and methods to regulate gene expression. An introduction to Synthetic Biology completes the section. In the second chapter is described the synthetic genetic circuit that was conceived to make spontaneously emerge, from an isogenic microcolony of bacteria, two different groups of cells, termed leaders and followers. The circuit exploits the intrinsic stochasticity of gene expression and intercellular communication via small molecules to break the symmetry in the phenotype of the microcolony. The four modules of the circuit (coin flipper, sender, receiver and follower) and their interactions are then illustrated. In the third chapter is derived the mathematical representation of the various components of the circuit and the several simplifying assumptions are made explicit. Transcription and translation are modeled as a single step and gene expression is function of the intracellular concentration of the various transcription factors that act on the different promoters of the circuit. A list of the various parameters and a justification for their value closes the chapter. In the fourth chapter are described the main characteristics of the gro simulation environment, developed by the Self Organizing Systems Laboratory of the University of Washington. Then, a sensitivity analysis performed to pinpoint the desirable characteristics of the various genetic components is detailed. The sensitivity analysis makes use of a cost function that is based on the fraction of cells in each one of the different possible states at the end of the simulation and the wanted outcome. Thanks to a particular kind of scatter plot, the parameters are ranked. Starting from an initial condition in which all the parameters assume their nominal value, the ranking suggest which parameter to tune in order to reach the goal. Obtaining a microcolony in which almost all the cells are in the follower state and only a few in the leader state seems to be the most difficult task. A small number of leader cells struggle to produce enough signal to turn the rest of the microcolony in the follower state. It is possible to obtain a microcolony in which the majority of cells are followers by increasing as much as possible the production of signal. Reaching the goal of a microcolony that is split in half between leaders and followers is comparatively easy. The best strategy seems to be increasing slightly the production of the enzyme. To end up with a majority of leaders, instead, it is advisable to increase the basal expression of the coin flipper module. At the end of the chapter, a possible future application of the leader election circuit, the spontaneous formation of spatial patterns in a microcolony, is modeled with the finite state machine formalism. The gro simulations provide insights into the genetic components that are needed to implement the behavior. In particular, since both the examples of pattern formation rely on a local version of Leader Election, a short-range communication system is essential. Moreover, new synthetic components that allow to reliably downregulate the growth rate in specific cells without side effects need to be developed. In the appendix are listed the gro code utilized to simulate the model of the circuit, a script in the Python programming language that was used to split the simulations on a Linux cluster and the Matlab code developed to analyze the data.
Resumo:
The technology of partial virtualization is a revolutionary approach to the world of virtualization. It lies directly in-between full system virtual machines (like QEMU or XEN) and application-related virtual machines (like the JVM or the CLR). The ViewOS project is the flagship of such technique, developed by the Virtual Square laboratory, created to provide an abstract view of the underlying system resources on a per-process basis and work against the principle of the Global View Assumption. Virtual Square provides several different methods to achieve partial virtualization within the ViewOS system, both at user and kernel levels. Each of these approaches have their own advantages and shortcomings. This paper provides an analysis of the different virtualization methods and problems related to both the generic and partial virtualization worlds. This paper is the result of an in-depth study and research for a new technology to be employed to provide partial virtualization based on ELF dynamic binaries. It starts with a mild analysis of currently available virtualization alternatives and then goes on describing the ViewOS system, highlighting its current shortcomings. The vloader project is then proposed as a possible solution to some of these inconveniences with a working proof of concept and examples to outline the potential of such new virtualization technique. By injecting specific code and libraries in the middle of the binary loading mechanism provided by the ELF standard, the vloader project can promote a streamlined and simplified approach to trace system calls. With the advantages outlined in the following paper, this method presents better performance and portability compared to the currently available ViewOS implementations. Furthermore, some of itsdisadvantages are also discussed, along with their possible solutions.
Resumo:
Il lavoro svolto in questa tesi consiste nell'effettuare il porting del Monitor di rete da Linux ad Android,facente parte di un sistema più complesso conosciuto come ABPS. Il ruolo del monitor è quello di configurare dinamicamente tutte le interfacce di rete disponibili sul dispositivo sul quale lavora,in modo da essere connessi sempre alla miglior rete conosciuta,ad esempio al miglior Access Point nel caso del interfaccia wireless.
Resumo:
In questo elaborato vengono descritte le principali modalità di migrazione di processi con riferimento al Sistema Operativo GNU Linux. Sono presentate : caratteristiche di migrazione, varianti implementative, tecniche di checkpoint restart, DMTCP ed il progetto ULPM. Il corso di riferimento è Progetto di Sistemi Virtuali. Il relatore è il professor Renzo Davoli.
Analisi e progettazione di un'architettura per il monitoraggio a basso costo di catastrofi naturali.
Resumo:
Il monitoraggio ravvicinato di scenari protagonisti di fenomeni ambientali catastrofici, come improvvisi terremoti o violente eruzioni vulcaniche, è reso complicato dalla pericolosità intrinseca di tali ambienti per l'incolumità di operatori e attrezzature. L'obiettivo di questa tesi è di capire se è possibile realizzare un'alternativa alle attuali stazioni monitoranti, caratterizzata da una facile installazione e da un costo contenuto. Sarà fondamentale che la stazione possa trasmettere a distanza tutto ciò che i suoi sensori registrano, finché non sarà resa non operativa da un guasto meccanico causato dall'ambiente circostante.
Resumo:
L'obbiettivo di questa tesi è la produzione del prototipo di un sistema che sia in grado di ottenere dati da un insieme di sensori per poterli poi trasmettere all’utente, in modo che esso sia maggiormente cosciente del mondo che lo circonda. Affronteremo la sfida in uno scenario medico / di soccorso, dove un operatore si avvicinerà ad un gruppo di pazienti con l’intenzione di ottenere i parametri vitali di uno di essi. All'interno del documento saranno descritte le tecnologie sfruttate per la realizzazione del prototipo: Bluetooth e Bluetooth Smart, il sistema operativo Linux in esecuzione su un Raspberry Pi dotato di sensori, il sistema operativo Android in esecuzione su smartphone o tablet e iBeacon. Verranno poi analizzati i requisiti del sistema da realizzare. Infine verrà descritta l'implementazione utilizzata nel prototipo e analizzato il suo comportamento.
Resumo:
I problemi di sicurezza nel software sono in crescita e gli strumenti di analisi adottati nei sistemi GNU/Linux non permettono di evidenziare le finestre di vulnerabilità a cui un pacchetto è stato soggetto. L'obiettivo di questa tesi è quello di sviluppare uno strumento di computer forensics in grado di ricostruire, incrociando informazioni ottenute dal package manager con security advisory ufficiali, i problemi di sicurezza che potrebbero aver causato una compromissione del sistema in esame.
Resumo:
Il lavoro descrive la progettazione, implementazione e test sperimentale di un meccanismo, integrato nel kernel linux 4.0, dedicato al riconoscimento delle perdite dei frame Wi-Fi.
Resumo:
Tesi mirata allo studio dei protocolli di routing IP utilizzati per l'inoltro dei pacchetti in una topologia non banale. Sono state utilizzate macchine Linux Raspberry Pi per il loro costo e ingombro per costruire la rete. In particolare, è stata implementata una rete caratterizzata da sette router divisi in tre aree distinte, ai quali sono state connesse sette LAN. Si è installato e utilizzato il software quagga per attivare il protocollo OSPF (Open Shortest Path First). Per limitare i dispositivi fisici si è utilizzato il software Mininet per virtualizzare switch e LAN. Infine, sono stati trattati elementi teorici del routing su Internet, applicati alla rete creata per verificarne il funzionamento.
Resumo:
In questo elaborato sono state messe a confronto differenti procedure per la creazione di file in formato STL a partire da dati tomografici. Questo tipo di formato di dati è attualmente molto richiesto in quanto è adottato dalle stampanti 3D. I tre software presi in analisi, nello specifico, sono: DEVIDE, un programma open source, compatibile sia con Windows che con Linux, sviluppato presso la Delft University of Technology, nei Paesi Bassi; Imagej, un programma informatico di elaborazione digitale delle immagini, accessibile a tutti, basato su Sun-Java e sviluppato dal National Institutes of Health negli Stati Uniti; e infine VGStudioMax, un software sviluppato in Germania dalla VolumeGraphics GmbH. Un confronto diretto di questi software ha portato ad evidenziare i pregi ed i difetti d’ognuno di questi programmi, prendendo come criteri svariati fattori, tra cui la possibilità di scelta di uno o più soglie per i livelli di grigio, la velocità di esecuzione, il fatto che sia open-source o meno, ecc. I risultati ottenuti tramite l’utilizzo di slice filtrate riguardanti una Cera Anatomica e un Feticcio Africano, sono stati molto soddisfacenti, in quanto hanno permesso la realizzazione di modelli virtuali 3D di entrambi i reperti nel formato richiesto.
Resumo:
I distributori automatici sono attualmente molto diffusi perché permettono di automatizzare l'erogazione di un prodotto o servizio senza la necessità di avere una persona addetta a quello scopo. Questa tesi si pone l'obiettivo di progettare e sviluppare un’applicazione per sistemi embedded Linux che consenta agli utenti di richiedere, in modo autonomo, il pagamento tramite Bitcoin con la successiva erogazione di bevande alla spina.
Resumo:
In campo medico ha un ruolo fondamentale il monitoraggio dei parametri vitali, importanti indicatori dello stato di salute del paziente, essenziali nella diagnosi e nella cura dellle patologie. La frequenza cardiaca occupa un ruolo fondamentale nella clinica, primo indice dell'attività cardio circolatoria del paziente. Il trattato analizza una metodica di monitoraggio del battito cardiaco per mezzo delle videocamere digitali, la ripresa diretta in video del volto del paziente e la presenza di un'adeguata illuminazione ambientale: la pulsazione cardiaca esercita variazioni di pressione a livello periferico generando un cambiamento del colore della pelle sulle zone più esposte, quali il viso. Analizzando l'andamento temporale del segnale RGB registra, per mezzo di algoritmi di elaborazione delle immagini, è possibile stimare accuratamente il battito cardiaco dell'utente. Nell'elaborato viene affrontata la metodica degl algoritmi di image-prcessing presentando un applicativo scritto in linguaggio Python, funzionante e testato su di un sistema Linux (Ubuntu 14.04). Tale metodo si basa sui concetti della fotopletismografia applicata in remoto denotando il non-contact-mode.