5 resultados para HotSpot JVM

em AMS Tesi di Laurea - Alm@DL - Università di Bologna


Relevância:

10.00% 10.00%

Publicador:

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.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

TuCSoN (Tuple Centres Spread over the Network) è un modello di coordinazione per processi distribuiti o agenti autonomi. Il modello di TuCSoN viene implementato come un middleware distribuito Java-based, distribuito Open Source sotto la licenza LGPL tramite Googlecode. Il fatto che lo stesso sia Open Source e Java-based ha reso possibile il suo porting su Android, rendendo il noto sistema operativo di Google un possibile agente partecipante ad un sistema TuCSoN. La tesi descrive il percorso che ha portato dallo studio dell'infrastruttura TuCSoN e del sistema Android alla realizzazione dell'applicazione Android, rendendo possibile a qualsiasi dispositivo Android di partecipare ad un sistema TuCSoN. Nel particolare l'obiettivo finale dell'applicazione Android, e di questa tesi, è rendere lo smartphone un nodo TuCSoN funzionante. La tesi non si pone l'obiettivo di analizzare ed esplorare le funzionalità e le possibilitàa delle due tecnologie principali trattate (Android e TuCSoN) nel loro singolo, quanto quello di esplorare le criticità che un porting di questo tipo comporta, quali ad esempio le differenze intrinseche fra la JVM e la DalvikVM e come aggirarle, o le funzionalità di Android e come utilizzarle allo scopo di realizzare un applicazione che funga da server ad una infra- struttura distribuita, oppure le differenze a livello di gestione della GUI fra Android e plain-java, e di analizzare le soluzioni trovate per risolvere (o dove non era possibile risolvere evitare) tali problemi al fine del raggiungimento dell'obiettivo che ci si era prefissati.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

L’obiettivo di questa tesi è quello di estendere l’interfaccia grafica di tuProlog nella versione per Android, il più diffuso sistema operativo per tablet e smartphone. TuProlog è un’ interprete Prolog interamente scritto in java, leggero e open–source. L’applicazione è disponibile sotto forma di archivio JAR eseguibile e può essere utilizzato tramite un’interfaccia a riga di comando, nella versione Java, o per mezzo di interfacce grafiche negli ambienti Java, .NET e Android. La versione per Android supporta pienamente Java e la maggior parte delle librerie dell’applicativo per JVM. Lo sviluppo di applicazioni per dispositivi mobile, però, limita lo sviluppatore in termini di complessità delle elaborazioni effettuabili dal programma e comprensibilità dell’interfaccia grafica; per questi e altri motivi, la struttura dell’applicativo in versione Android, fatta eccezione per il core Prolog, è diversa dalle versioni per altri ambienti. L’applicazione, giunta ora alla versione 2.7.2, manca della possibilità di input da console in tutte le versioni ad interfaccia grafica. Scopo di questa tesi è quindi integrare tale funzionalità, inserendola all’interno del contesto applicativo senza modificare il normale flusso delle operazioni, intervenendo in modo mirato, il meno invasivo possibile e garantendo l’espandibilità della modifica ad estensioni future.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

L'obiettivo di questa Tesi di laurea è di creare un applicativo che informi gli utenti sulle reti circostanti, in particolare sulla qualità del segnale, sulle zone in cui la rete mobile è carente e sui punti d'accesso aperti. Per l'implementazione del servizio, è stato adottato un modello di business, il Crowdsourcing, per raccogliere informazioni sui sistemi di connessione, affinché qualsiasi utente dotato di Smartphone possa aggiungere elementi al dataset.

Relevância:

10.00% 10.00%

Publicador:

Resumo:

In Java 8, ultimo aggiornamento ufficiale del linguaggio Java, sono state introdotte alcune nuove funzionalità che permettono l’integrazione di alcuni meccanismi legati ai linguaggi dinamici o funzionali, come le espressioni lambda, l’utilizzo degli stream e la dichiarazione di metodi statici all’interno di interfacce. Se si volesse installare un’applicazione scritta in Java 8 su Android, Dalvik VM, la JVM in esso presente, fallirà il processo di traduzione del bytecode. In questa tesi quindi esplorerò, sia ad alto livello che a basso livello, l’origine del problema e presenterò una soluzione di backporting per un’applicazione esistente.