Página 1 dos resultados de 252 itens digitais encontrados em 0.003 segundos

Análise de botnet utilizando plataforma de simulação com máquinas virtuais visando detecção e contenção.; Analysis of botnet using simulation platform with virtual machines for detection and containment.

Muzzi, Fernando Augusto Garcia
Fonte: Biblioteca Digitais de Teses e Dissertações da USP Publicador: Biblioteca Digitais de Teses e Dissertações da USP
Tipo: Tese de Doutorado Formato: application/pdf
Publicado em 09/12/2010 Português
Relevância na Pesquisa
46.16%
As redes de computadores e a internet são ambientes cada vez mais complexos e surgem a cada dia novos serviços, usuários e infraestruturas. A segurança e a privacidade da Informação tornam-se fundamentais para a evolução desses ambientes. O anonimato, a fragilidade da segurança e outros fatores muitas vezes estimulam indivíduos mal-intencionados a criarem ferramentas e técnicas de ataque a sistemas computacionais, resultando em prejuízos de diversas naturezas. A internet cresceu muito nos últimos anos e junto com esse crescimento surgiram novas ameaças, por exemplo, as botnets. Botnet é uma rede formada por bots (robôs), que tornam o computador da vítima infectado e monitorado por agente externo. O grande problema das botnets é que podem ser usadas por grupos mal-intencionados para promover ataques, com efeito prejudicial às pessoas, entidades, organizações e nações. Todavia, apesar de uma grande quantidade de estudos realizados pela comunidade de segurança nos últimos anos, há necessidade de mais estudos sobre o comportamento, propagação e contenção, até pelo fato de haver uma grande variação de métodos de infecção e propagação nesse tipo de ataque. Nesse contexto, esta tese analisa o comportamento da botnet Rxbot e implementa serviços de segurança...

Toward harnessing a Java high-level language virtual machine for supporting software testing; Utilizando uma máquina virtual Java como apoio à atividade de teste de software

Durelli, Vinicius Humberto Serapilha
Fonte: Biblioteca Digitais de Teses e Dissertações da USP Publicador: Biblioteca Digitais de Teses e Dissertações da USP
Tipo: Tese de Doutorado Formato: application/pdf
Publicado em 01/10/2013 Português
Relevância na Pesquisa
66.59%
High-level language virtual machines (HLL VMs) have been playing a key role as a mechanism for implementing programming languages. Languages that run on these execution environments have many advantages over languages that are compiled to native code. These advantages have led HLL VMs to gain broad acceptance in both academy and industry. However, much of the research in this area has been devoted to boosting the performance of these execution environments. Few eorts have attempted to introduce features that automate or facilitate some software engineering activities, including software testing. This research argues that HLL VMs provide a reasonable basis for building an integrated software testing environment. To this end, two software testing features that build on the characteristics of a Java virtual machine (JVM) were devised. The purpose of the rst feature is to automate weak mutation. Augmented with mutation support, the chosen JVM achieved speedups of as much as 95% in comparison to a strong mutation tool. To support the testing of concurrent programs, the second feature is concerned with enabling the deterministic re-execution of Java programs and exploration of new scheduling sequences; Máquinas virtuais de linguagens de programação têm desempenhado um papel importante como mecanismo para a implementação de linguagens de programação. Linguagens voltadas para esses ambientes de execução possuem várias vantagens em relação às linguagens compiladas. Essas vantagens fizeram com que tais ambientes de execução se tornassem amplamente utilizados pela indústria e academia. Entretanto...

Ambientes de execução para o modelo de atores em plataformas hierárquicas de memória compartilhada com processadores de múltiplos núcleos; Dealing with actor runtime environments on hierarchical shared memory multi-core platforms

Francesquini, Emilio de Camargo
Fonte: Biblioteca Digitais de Teses e Dissertações da USP Publicador: Biblioteca Digitais de Teses e Dissertações da USP
Tipo: Tese de Doutorado Formato: application/pdf
Publicado em 16/05/2014 Português
Relevância na Pesquisa
46.48%
O modelo de programação baseado em atores é frequentemente utilizado para o desenvolvimento de grandes aplicações e sistemas. Podemos citar como exemplo o serviço de bate-papo do Facebook ou ainda o WhatsApp. Estes sistemas dão suporte a milhares de usuários conectados simultaneamente levando em conta estritas restrições de desempenho e interatividade. Tais sistemas normalmente são amparados por infraestruturas de hardware com processadores de múltiplos núcleos. Normalmente, máquinas deste porte são baseadas em uma estrutura de memória compartilhada hierarquicamente (NUMA - Non-Uniform Memory Access). Nossa análise dos atuais ambientes de execução para atores e a pesquisa na literatura mostram que poucos estudos sobre a adequação deste ambientes a essas plataformas hierárquicas foram conduzidos. Estes ambientes de execução normalmente assumem que o espaço de memória é uniforme o que pode causar sérios problemas de desempenho. Nesta tese nós estudamos os desafios enfrentados por um ambiente de execução para atores quando da sua execução nestas plataformas. Estudamos particularmente os problemas de gerenciamento de memória, de escalonamento e de balanceamento de carga. Neste documento nós também analisamos e caracterizamos as aplicações baseadas no modelo de atores. Tal análise nos permitiu evidenciar o fato de que a execução de benchmarks e aplicações criam estruturas de comunicação peculiares entre os atores. Tais peculiaridades podem...

Execução distribuída de programas funcionais usando a máquina virtual java; Distributed execution of functional programs using the JVM

Du Bois, Andre Rauber
Fonte: Universidade Federal do Rio Grande do Sul Publicador: Universidade Federal do Rio Grande do Sul
Tipo: Dissertação Formato: application/pdf
Português
Relevância na Pesquisa
46.5%
o objetivo deste trabalho é apresentar a implementação em Java de uma máquina abstrata para execução distribuída de programas funcionais. Mostra-se como as facilidades da linguagem Java foram utilizadas para a implementação de uma linguagem funcional paralela que roda os programas funcionais de forma distribuída em uma rede de computadores. Linguagens Funcionais geralmente são implementadas usando uma máquina abstrata para a execução dos programas. Essas máquinas são usualmente máquinas de redução de grafos. Para se rodar os programas funcionais na máquina virtual Java implementou-se a máquina de redução de grafos G-Machine em Java. Nesta dissertação, apresenta-se inicialmente a implementação da G-Machine em Java, realizada como primeira etapa do trabalho e discute-se a abordagem utilizada para essa implementação. Mostra-se em seguida, como os programas funcionais podem ser compilados para rodar nessa G-Machine. Na segunda etapa do trabalho, modifica-se o sistema implementado para permitir a execução distribuída dos programas funcionais. Finalmente apresenta-se uma avaliação de desempenho e mostra-se possíveis trabalhos futuros.; The objective of this work is to present the implementation in the Java language of an abstract machine for distributed execution of functional programs. We show how the Java facilities were used to implement a parallel functional programming language with a distributed runtime system. Functional Languages are usually implemented using an abstract machine to execute programs. These abstract machines are usually graph reduction machines. To mn the functional programs on the Java Virtual Machine we have implemented the G-Machine graph reduction machine in Java. In this text...

Estudo de injeção de falhas para a máquina virtual do sistema Android

Gindri, Alexandre Felin
Fonte: Universidade Federal do Rio Grande do Sul Publicador: Universidade Federal do Rio Grande do Sul
Tipo: Trabalho de Conclusão de Curso Formato: application/pdf
Português
Relevância na Pesquisa
46.23%
O Android é um sistema de desenvolvimento para aparelhos móveis que vem mantendo a atenção tanto da comunidade tecnológica como dos consumidores em geral. Este sistema de desenvolvimento permite a fácil criação de aplicações que, assim como as aplicações nativas, utilizem toda a capacidade dos aparelhos. Com essa facilidade, surgem diversas aplicações, provenientes de diferentes desenvolvedores. Para se ter confiabilidade nesse cenário é desejável poder testar a tolerância dessas aplicações a falhas. Este trabalho explora a possibilidade de implementar injetores de falhas para o Android no nível da máquina virtual, onde rodam todas as aplicações de usuário, por meio da implementação de um injetor de falhas de comunicação UDP.

Efficient online embedding of secure virtual nteworks; Mapeamento eficiente e on-line de redes virtuais seguras

Bays, Leonardo Richter
Fonte: Universidade Federal do Rio Grande do Sul Publicador: Universidade Federal do Rio Grande do Sul
Tipo: Dissertação Formato: application/pdf
Português
Relevância na Pesquisa
46.24%
A virtualização de redes tem se tornado cada vez mais proeminente nos últimos anos. Tal técnica permite a criação de infraestruturas de rede que se adaptam a necessidades específicas de aplicações de rede distintas, além de dar suporte à instanciação de ambientes favoráveis para o desenvolvimento e avaliação de novas arquiteturas e protocolos. Apesar de esforços recentes (motivados principalmente pela busca de mecanismos para avaliar propostas relacionadas à Internet do Futuro) terem contribuído substancialmente para a materialização desse conceito, nenhum preocupou-se em conciliar alocação eficiente de recursos e satisfação de requisitos de segurança (e.g., confidencialidade). É importante ressaltar que, no contexto de redes virtuais, a proteção de infraestruturas de rede compartilhadas constitui condição fundamental para seu uso em larga escala. É de grande importância que o impacto negativo causado pelo aprovisionamento de segurança seja considerado no processo de mapeamento de redes virtuais, de forma a permitir o uso integral dos recursos físicos sem subestimar requisitos de capacidade. Portanto, nesta dissertação, são propostos um modelo ótimo e um al- goritmo heurístico para realizar o mapeamento de redes virtuais em substratos físicos que têm por objetivo otimizar a utilização de recursos físicos garantindo a satisfação de requisitos de segurança. Ambas as abordagens possuem uma modelagem precisa de custos adicionais associados a mecanismos de segurança usados para proteger re- des virtuais...

Uma implementação distribuida da Maquina Virtual JAVA visando o compartilhametno do compilador "just-In-Time"

Rodrigo Augusto Barbato Ferreira
Fonte: Biblioteca Digital da Unicamp Publicador: Biblioteca Digital da Unicamp
Tipo: Dissertação de Mestrado Formato: application/pdf
Publicado em 29/03/2001 Português
Relevância na Pesquisa
46.59%
A compilação Just-In- Time (JIT) é uma técnica amplamente utilizada no aperfeiçoamento do desempenho da Máquina Virtual Java (JVM, do inglês Java Virtual Machine). Con­tudo, o tempo gasto internamente pelo compilador JIT degrada, em muitos casos, o tempo de execução das aplicações. Algumas técnicas têm sido usadas com o objetivo de diminuir o impacto negativo do JIT sobre a execução, ainda sim preservando a sua eficácia. Entretanto, sempre haverá uma relação inversa entre o tempo gasto pelo compilador JIT e o tempo de execução do código objeto por ele produzido. Segundo nossa concepção, uma Máquina Virtual Java que visa usuários finais executa o mesmo código a maior parte do seu tempo. Os usuários sempre utilizam os mesmos aplicativos, os quais são tipicamente compostos pelo mesmo conjunto de classes. Por outro lado, em grandes companhias, dezenas ou até mesmo centenas de empregados compartilham a mesma aplicação ou pa­cote de aplicações. Usualmente, eles estão conectados a uma mesma Intranet, rápida e segura. Neste cenário, o esforço do JIT por usuário é repetitivo e bem maior que o estritamente necessário. O objetivo deste trabalho é o de desacoplar atividades de tempo de ligação da JVM para um servidor compartilhado...

O ambiente virtual : uma investigação sobre a relação entre tecnica e semiotica

Marcelo Araujo
Fonte: Biblioteca Digital da Unicamp Publicador: Biblioteca Digital da Unicamp
Tipo: Tese de Doutorado Formato: application/pdf
Publicado em 13/02/2003 Português
Relevância na Pesquisa
36.46%
o objetivo da tese foi investigar o surgimento e a concretização do ambiente virtual (AV). Este pode ser visto como a concretização de um novo tipo de ambiente advindo da fusão da técnica com a semiótica. O processo de virtualização nasce da articulação entre técnica e semiótica. O AV não é uma maquinaria puramente técnica. Nele a técnica se virtualiza e se atualiza como semiótica. Para defender esta tese, utilizamos conceitos estabelecidos por Gilles Deleuze e Felix Guattari, que consideramos os mais pertinentes para a análise proposta. Procuramos construir um plano de consistência conceitual para a problemática criada com o surgimento do AV. Este é mais que um conjunto de abstrações, ele estabelece novos espaços concretos, que abrem oportunidades para o campo educacional. Do AV emerge uma máquina abstrata que provoca desterritorializações e reterritorializações. E a partir dele podem surgir linhas de fuga criadoras mas também linhas de fuga que paralisam as oportunidades de transformação. A máquina abstrata ambiente virtual possui regimes semióticos que devemos mapear e programas que devemos conhecer, pois ela está sobrescrevendo outras máquinas abstratas, inclusive a educacional. É preciso saber distinguir o plano técnico do programa tecnocrático.; The main goal of this thesis was to investigate the appearance and consolidation of the virtual environment. The virtual environment can be seen as the consolidation of a new type of environment originating from the fusion of the technique with semiotics. The virtualization process is a result of the articulation between technique and semiotics. The virtual environment is not a purely tecnhical machine. In it the technique becomes virtual and updates itself into semiotics. To advocate this thesis...

Modelo de verificação de processos de negocios atraves de uma maquina virtual Pi-Calculos

Marcos Vanine Portilho de Nader
Fonte: Biblioteca Digital da Unicamp Publicador: Biblioteca Digital da Unicamp
Tipo: Dissertação de Mestrado Formato: application/pdf
Publicado em /12/2006 Português
Relevância na Pesquisa
56.35%
Duas áreas importantes estão em desenvolvimento: Gerência de Processos de Negócios (Business Process Management) e Orquestração de Web Services (Web Services Orchestration). Ambas têm um objetivo que é integrar aplicações ou outros processos que tenham interfaces web services, usando o paradigma de processos de negócios. Uma linguagem que vem sendo difundida para essas aplicações é a BPEL (Business Process Execution Language). Este trabalho apresenta um framework aplicável à análise e verificação de processos de negócios escritos em BPEL através do uso de Pi-Calculus. Pi-Calculus é uma álgebra de processos que possui mecanismos formais para criação e ativação de processos que se comunicam através da troca de mensagens em canais, usando o modelo de rendezvous síncrono. Nesse framework, o processo BPEL é traduzido para um programa Pi-Calculus. Uma Máquina Virtual Pi-Calculus (MVP) recebe o programa Pi-Calculus e produz todas as reações possíveis, ou seja, gera todos os caminhos de execução que o programa pode seguir. A partir desse resultado, efetua-se a verificação de propriedades como: atendimento às especificações de mais alto nível, ordenação de eventos e ocorrência ou não de deadlocks. Em termos práticos...

Melhoria de desempenho da máquina virtual Java na plataforma Cell B.E; Java virtual machine performance improvement in Cell B.E. architecture

Raoni Fassina Firmino
Fonte: Biblioteca Digital da Unicamp Publicador: Biblioteca Digital da Unicamp
Tipo: Dissertação de Mestrado Formato: application/pdf
Publicado em 29/06/2010 Português
Relevância na Pesquisa
46.35%
Esta dissertação concentra-se no atual momento de transição entre as atuais e as novas arquiteturas de processadores, oferecendo uma alternativa para minimizar o impacto desta mudança. Para tal utiliza-se a plataforma Java, que possibilita que o desenvolvimento de aplicações seja independente da arquitetura em que serão executadas. Considerando a arquitetura Cell B.E. como uma nova plataforma que promete desempenho elevado, este trabalho propõe melhorias na Máquina Virtual Java que propiciem um ganho de desempenho na execução de aplicações Java executadas sobre o processador Cell. O objetivo proposto é atingido por meio da utilização do ambiente disponível na própria plataforma Java, o Java Native Interface (JNI), para a implementação de interfaces entre bibliotecas nativas construídas para a arquitetura Cell - com a intenção de obter o máximo desempenho possível - e as aplicações Java. É proposto um modelo para porte e criação das interfaces para bibliotecas e mostra-se a viabilidade da abordagem proposta através de implementações de bibliotecas selecionadas, consolidando a metodologia utilizada. Duas bibliotecas foram portadas completamente como prova de conceito, uma multiplicação de matrizes grandes e o algoritmo RC5. A multiplicação de matrizes obteve um desempenho e escalablidade comparável ao código original em C e em escala muitas vezes superior ao código JNI para arquitetura x86 a ao código Java executando em arquiteturas x86 e Cell. O RC5 executou apenas aproximadamente 0...

Indirect branch emulation techniques in virtual machines; Técnicas para emulação de saltos indiretos em máquinas virtuais

Gabriel Ferreira Teles Gomes
Fonte: Biblioteca Digital da Unicamp Publicador: Biblioteca Digital da Unicamp
Tipo: Dissertação de Mestrado Formato: application/pdf
Publicado em 07/07/2014 Português
Relevância na Pesquisa
46.19%
Tradução dinâmica de binários é uma técnica de emulação comumente utilizada na implementação de máquinas virtuais. Neste contexto, a emulação de saltos indiretos é uma das principais fontes de perda de eficiência, o que atrapalha a aplicabilidade de tradutores dinâmicos de binários. Essa dissertação descreve diversas técnicas que tentam melhorar o desempenho e a eficiência da emulação de saltos indiretos em máquinas virtuais eficientes. O DynamoRIO é uma máquina virtual que se enquadra nessa categoria e que utiliza características de diversas dessas técnicas. Nessa dissertação, nós apresentamos a implementação atual do DynamoRIO, modificamos seu código para incluir duas novas técnicas de emulação de saltos indiretos (Inline Caching e IBTC) e as comparamos com outras técnicas descritas na literatura.; Dynamic binary translation is an emulation technique commonly employed in the implementation of virtual machines. One of the main sources of overhead that hinder the applicability of dynamic binary translators is that caused by the emulation of indirect branch instructions. This master thesis describes several techniques that try to improve the performance and efficiency of indirect branch emulation in efficient virtual machines. DynamoRIO is one of such machines and it implements features used by several of those techniques. In this master thesis...

Uma máquina virtual para uma linguagem concorrente intermédia

Silva, Roberto Rosa da
Fonte: Universidade de Lisboa Publicador: Universidade de Lisboa
Tipo: Dissertação de Mestrado
Publicado em //2013 Português
Relevância na Pesquisa
46.3%
Tese de mestrado em Engenharia Informática, apresentada à Universidade de Lisboa, através da Faculdade de Ciências, 2013; A necessidade de aumentar o poder de computação exigiu a produção de hardware com maior capacidade de processamento. Esta situação levou os fabricantes a abandonar o modelo tradicional de Von Neumann e a adotar sistemas com múltiplos processadores/ núcleos. Para que o software acompanhasse a evolução do hardware, as linguagens de programação concorrente ganharam protagonismo, mas com este regressaram os problemas bem conhecidos dos sistemas concorrentes e distribuídos, condições de corrida e impasses. O mecanismo mais popular que suporta programação concorrente é o uso de múltiplos fios de execução, que partilham variáveis. Neste contexto, propomos o desenvolvimento de uma máquina virtual para a linguagem MIL que imponha, estaticamente, que programas bem tipificados são livres de condições de corrida e não entrem em impasses. A primeira propriedade é conseguida através da imposição de uma disciplina no uso de trincos através de tipos singulares; a segunda é alcançada através de anotações polimórficas sobre a ordem pela qual os trincos são fechados. O sistema de tipos recusa programas cujos fios de execução dependam...

Linguagem intermédia tipificada para concorrência em memória partilhada

Lourenço, Luís Miguel Cardoso
Fonte: Faculdade de Ciências e Tecnologia Publicador: Faculdade de Ciências e Tecnologia
Tipo: Dissertação de Mestrado
Publicado em //2011 Português
Relevância na Pesquisa
46.23%
Dissertação para obtenção do Grau de Mestre em Engenharia Informática; O objectivo da dissertação consiste em implementar um compilador, e o sistema de suporte à execução, para uma linguagem de programação com mecanismos primitivos de controlo de concorrência em memória partilhada. A utilização de concorrência nos sistemas de software actuais é essencial, desde os servidores aplicacionais mais poderosos que disponibilizam serviços a múltiplos clientes simultaneamente, até aos “simples” interfaces gráficos de utilização comum. As linguagens ditas general purpose, as mais utilizadas para a implementação destes sistemas, como a linguagens Java e C#, suportam a utilização de vários fios de execução através de classes de biblioteca. O suporte específico da linguagem para controlar acessos concorrentes a zonas de memória partilhada restringe-se apenas à utilização dos objectos como monitores, o que torna difícil a implementação de mecanismos de verificação estática ao nível do sistema de tipos. Nesta dissertação pretende-se implementar uma linguagem de programação que integra mecanismos de concorrência de forma nativa, tornando possível a construção de programas concorrentes de forma mais estruturada e modular. É proposta uma linguagem concreta implementada a partir de uma linguagem core desenvolvida no grupo de investigação onde se insere este trabalho. Também é desenvolvido um compilador...

Análise de desempenho de sistemas distribuídos de grande porte na plataforma Java

Lima, Gleydson de Azevedo Ferreira
Fonte: Universidade Federal do Rio Grande do Norte; BR; UFRN; Programa de Pós-Graduação em Engenharia Elétrica; Automação e Sistemas; Engenharia de Computação; Telecomunicações Publicador: Universidade Federal do Rio Grande do Norte; BR; UFRN; Programa de Pós-Graduação em Engenharia Elétrica; Automação e Sistemas; Engenharia de Computação; Telecomunicações
Tipo: Dissertação Formato: application/pdf
Português
Relevância na Pesquisa
46.3%
The lava Platform is increasing1y being adopted in the development of distributed sys¬tems with higb user demando This kind of application is more complex because it needs beyond attending the functional requirements, to fulfil1 the pre-established performance parameters. This work makes a study on the Java Vutual Machine (JVM), approaching its intemal aspects and exploring the garbage collection strategies existing in the literature and used by the NM. It also presents a set of tools that helps in the job of optimizing applications and others that help in the monitoring of applications in the production envi¬ronment. Doe to the great amount of technologies that aim to solve problems which are common to the application layer, it becomes difficult to choose the one with best time response and less memory usage. This work presents a brief introduction to each one of tbe possible technologies and realize comparative tests through a statistical analysis of the response time and garbage collection activity random variables. The obtained results supply engineers and managers with a subside to decide which technologies to use in large applications through the knowledge of how they behave in their environments and the amount of resources that they consume. The relation between the productivity of the technology and its performance is also considered ao important factor in this choice; A plataforma Java vem sendo crescentemente adotada no desenvolvimento de siste¬mas distribuídos de alta demanda de usuários. Este tipo de aplicação é mais complexa pois necessita além de atender os requisitos funcionais cumprir os parâmetros de desem¬penho pré-estabelecidos. Este trabalho realiza um estudo da máquina virtual lava (NM) abordando seus aspectos internos e explorando as políticas de coleta de lixo existentes na literatura e as usadas pela JVM. Apresenta também um conjunto de ferramentas que auxiliam Da tarefa de otimizar aplicações e outras que auxiliam no monitoramento das aplicações em produção. Diante da grande quantidade de tecnologias que se apresentam para solucionar pro¬blemas inerentes às camadas das aplicações...

Implementación de arquitecturas de gestión de calidad de servicios sobre plataformas de máquina virtual

Fernández Rancaño, Víctor José
Fonte: Universidade Carlos III de Madrid Publicador: Universidade Carlos III de Madrid
Tipo: info:eu-repo/semantics/bachelorThesis; info:eu-repo/semantics/masterThesis Formato: application/pdf
Publicado em //2009; 2009 Português
Relevância na Pesquisa
46.23%
En este trabajo se realiza una implementación alternativa de una arquitectura de gestión de la calidad de servicio sobre plataformas software que poseen máquina virtual, concretamente sobre tecnologías Java de tiempo real y sobre la implementación RTSJ. El hecho de portar esta arquitectura a esta plataforma impone numerosos obstáculos que se han resuelto y que han permitido evaluar la idoneidad de esta plataforma para estos propósitos.

Máquina virtual Java em FPGA

Carvalho, Íris Daniela Gouveia Pereira Pinto
Fonte: Universidade de Trás-os-Montes e Alto Douro Publicador: Universidade de Trás-os-Montes e Alto Douro
Tipo: Dissertação de Mestrado
Português
Relevância na Pesquisa
66.71%
Dissertação de Mestrado em Engenharia Electrotécnica e de Computadores; A utilização de tecnologia Java, através da implementação e aplicação de máquinas virtuais, é muito vasta pois apresenta uma grande vantagem. Elimina a necessidade de programar individualmente dispositivos computacionais distintos, com especificações diferentes, tornando compatíveis e homogéneos sistemas que integram dispositivos diferentes como computadores, impressoras e telemóveis. Também as redes de sensores e atuadores sofisticadas, usadas em agricultura de precisão por exemplo, podem beneficiar da utilização de máquinas virtuais. Neste tipo de sistemas, a implementação de máquinas virtuais está restrita, por norma, ao uso de microcontroladores tradicionais com reduzidas capacidades de processamento e memória. A máquina virtual está, portanto, sujeita a uma arquitetura fixa. Uma alternativa a este tipo de implementação de redes de sensores consiste substituir o microcontrolador por um dispositivo semicondutor programável que permite desenvolver hardware, denominado por FPGA (Field Programmable Gate Array). Para além de possuir mais memória e uma maior capacidade de processamento, é mais versátil do que um microcontrolador. É de esperar que a FPGA...

Experimentos com codificação e compactação no gerenciamento de memoria da maquina virtual java

Sandro Rigo
Fonte: Biblioteca Digital da Unicamp Publicador: Biblioteca Digital da Unicamp
Tipo: Dissertação de Mestrado Formato: application/pdf
Publicado em 04/07/2000 Português
Relevância na Pesquisa
46.54%
Gerenciamento de memória é uma tarefa muito importante para o bom desempenho de uma aplicação. Existem duas alternativas para a execução desta tarefa: gerenciamento explícito por parte do programador, ou a existência de um sistema dinâmico automático. O objetivo desse trabalho foi realizar experimentos de codificação e compactação do heap no sistema automático de gerenciamento de memória da máquina virtual Java, usando como plataforma a implementação desta conhecida como Kaffe. Na primeira parte deste trabalho, foi estudado um mecanismo alternativo de codificação dos objetos vivos, baseado em Binary Decision Diagrams (BDD). Na segunda etapa, foi projetado um coletor de lixo, cujo objetivo era avaliar o impacto da compactação do heap no desempenho da JVM. A implementação de nosso coletor se baseou no algoritmo conhecido como Mark-Compact. Obtivemos uma implementação híbrida para o sistema de recuperação de memória da máquina virtual Kaffe, capaz de realizar coletas utilizando ou não compactação. Esse sistema nos permite configurar a freqüência com que compactações são realizadas, permitindo ajustá-lo para diminuir o impacto causado por estas no desempenho do programa. Finalmente, mostramos nossas conclusões sobre os experimentos realizados e apontamos algumas possíveis melhorias a serem implementadas na máquina virtual kaffe...

Auditing the quality of cryptographic material in virtual machines

Fernandes, Diogo Alexandre Baptista
Fonte: Universidade da Beira Interior Publicador: Universidade da Beira Interior
Tipo: Dissertação de Mestrado
Publicado em //2013 Português
Relevância na Pesquisa
46.21%
Cloud computing is, nowadays, a mainstream technology spiraling across the industry. Its clear advantages propelled this model to grow at a fast pace, attracting attentions from both the enterprise and academic worlds along the way. This computing model of oads on-premises Information Technologies (IT) and data to outsourced servers housed on data centers and hosted by some cloud or service provider. Those sets of servers form the cloud, and deliver, through the Internet, a broad vertical set of capabilities for end users and enterprise customers in the form of networking, processing or storage. Ultimately, the purpose of cloud computing is to provide anything-as-a-service in an interoperable, elastic and scalable, and on-demand manner, as a completely autonomous and self-provisioned pay-as-you-go measured service. In essence, cloud computing lowers the overall costs and speeds up the deployment of services, allowing costumers to be abstracted from the underlying details, but granting them the ability to focus on increasing business productivity. Cloud providers offer a large variety of services based on three main service delivery models: Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS). These are the result of the combination of innovative software and virtualization technologies with the well-known client-server paradigm. IaaS hands out platforms to develop cloud applications...

Arquitectura de la Máquina Virtual Java

Menchaca Méndez Rolando; García Carballeira Félix
Fonte: Coordinación de Publicaciones. Dirección General de Cómputo y de Tecnologías de Información y Comunicación-UNAM Publicador: Coordinación de Publicaciones. Dirección General de Cómputo y de Tecnologías de Información y Comunicación-UNAM
Formato: Text; Texto; text/html
Português
Relevância na Pesquisa
46.3%
En el presente artículo se describe la Arquitectura de la Máquina Virtual Java, que es parte medular de toda la tecnología Java. Se hace énfasis en sus componentes principales, como el procesador virtual Java, que se encarga de ejecutar los códigos de operación (bytecodes) generados por los compiladores Java, el verificador de código, que junto con el cargador de clases y el administrador de seguridad, se encargan de implementar los mecanismos empleados para proporcionar seguridad a los usuarios de Java. Además, a lo largo de la discusión, se hace un análisis de las principales características que han hecho posible el éxito de Java en nuestros días.

Suporte para execução de máquinas virtuais nativas; Support for development of native virtual machines

Alisson Linhares de Carvalho
Fonte: Biblioteca Digital da Unicamp Publicador: Biblioteca Digital da Unicamp
Tipo: Dissertação de Mestrado Formato: application/pdf
Publicado em 15/05/2015 Português
Relevância na Pesquisa
46.58%
Uma máquina virtual é um programa de computador que emula uma interface para execução de outros programas. Esta tecnologia está presente em diversos sistemas computacionais e é utilizada desde o suporte a linguagens de programação de alto nível, como na máquina virtual Java, até a implementação de processadores com projeto integrado de hardware e software, como é o caso do processador Efficeon da Transmeta. Na tentativa de elevar o desempenho, alguns tipos específicos de máquinas virtuais podem requerer um acesso privilegiado a recursos administrados pelo sistema operacional. Consequentemente, em virtude dessa necessidade de obter um maior privilégio de execução, alguns projetos de máquinas virtuais optam por soluções nativas, removendo completamente a dependência de um sistema operacional. Essa solução, apesar da complexidade, possibilita a redução de grande parte da pilha de software existente entre a máquina virtual e o hardware, eliminando diversas restrições de acesso a dispositivos e a concorrência pela utilização de recursos. Apesar da flexibilidade proporcionada pela adoção de uma arquitetura nativa, existe um preço a ser pago na escolha dessa abordagem. Desenvolver um programa que executa sem o auxílio das abstrações fornecidas por um sistema operacional é uma atividade complexa...