Spelling suggestions: "subject:"java."" "subject:"lava.""
381 |
Injeção de falhas de comunicação em aplicações multiprotocolo / Communication fault injection in multi-protocol applicationsMenegotto, Cristina Ciprandi January 2009 (has links)
Aplicações de rede com altos requisitos de dependabilidade devem ser testadas cuidadosamente em condições de falhas de comunicação para aumentar a confiança no seu comportamento apropriado na ocorrência de falhas. Injeção de falhas de comunicação é a técnica mais adequada para o teste dos mecanismos de tolerância a falhas destas aplicações em presença de falhas de comunicação. Ela é útil tanto para auxiliar na remoção de falhas como na previsão de falhas. Dentre as aplicações de rede, algumas são baseadas em mais de um protocolo, como UDP, TCP e RMI. Elas são denominadas multiprotocolo no contexto desse trabalho, que foca naquelas escritas em Java e baseadas em protocolos que estão acima do nível de rede na arquitetura TCP/IP. Um injetor de falhas de comunicação adequado, que trate todos os protocolos utilizados, é necessário para o seu teste. Caso a emulação de uma falha que afete a troca de mensagens não leve em consideração todos os protocolos simultaneamente utilizados, o comportamento emulado durante um experimento poderá ser diferente daquele observado na ocorrência de uma falha real, de modo que podem ser obtidos resultados inconsistentes sobre o comportamento da aplicação alvo em presença da falha. Muitos injetores de falhas de comunicação encontrados na literatura não são capazes de testar aplicações Java multiprotocolo. Outros possuem potencial para o teste dessas aplicações, mas impõem grandes dificuldades aos engenheiros de testes. Por exemplo, contrariamente ao enfoque deste trabalho, algumas ferramentas são voltadas à injeção de falhas de comunicação para o teste de protocolos de comunicação, e não de aplicações. Tal orientação ao teste de protocolos costuma levar a grandes dificuldades no teste de caixa branca de aplicações. Entre outros exemplos de dificuldades proporcionadas por ferramentas encontradas na literatura estão a incapacidade de testar diretamente aplicações Java e a limitação quanto aos tipos de falhas que permitem emular. A análise de tais ferramentas motiva o desenvolvimento de uma solução voltada especificamente ao teste de aplicações multiprotocolo desenvolvidas em Java. Este trabalho apresenta uma solução para injeção de falhas de comunicação em aplicações Java multiprotocolo. A solução opera no nível da JVM, interceptando mensagens de protocolos, e, em alguns casos, opera também no nível do sistema operacional, usando regras de firewall para emulação de alguns tipos de falhas que não podem ser emulados somente no nível da JVM. A abordagem é útil para testes de caixa branca e preta e possui características importantes como a preservação do código fonte da aplicação alvo. A viabilidade da solução proposta é mostrada por meio do desenvolvimento de Comform, um protótipo para injeção de falhas de comunicação em aplicações Java multiprotocolo que atualmente pode ser aplicado para testar aplicações Java baseadas em qualquer combinação dos protocolos UDP, TCP e RMI (incluindo as baseadas em um único protocolo). / Networked applications with high dependability requirements must be carefully tested under communication faults to enhance confidence in their proper behavior. Communication fault injection is the most suitable technique for testing the fault tolerance mechanisms of these applications under communication faults. The technique is useful both for helping in fault removal and for fault forecasting. Some networked applications are based on more than one protocol, such as UDP, TCP and RMI. They are called multi-protocol in the context of this work, that targets on those written in Java and based on protocols above Internet layer in TCP/IP architecture. A suitable communication fault injector, that properly handles all used protocols, is required for their test. If the emulation of a fault that affects message exchanging does not take into account all simultaneously used protocols, the behavior emulated in an experiment can be different from that observed under real fault occurrence. Therefore, inconsistent results about the target application’s behavior under faults can be obtained from the experiments. Many communication fault injectors found in literature are not capable of testing multi-protocol Java applications. Others can potentially test these applications, but they impose several drawbacks for test engineers. For instance, contrarily to the focus of this work, some tools aim to communication protocol testing and not to application testing. This orientation to protocol testing usually leads to great difficulties in white box testing of applications. Other examples of difficulties related to using tools found in literature include inability to directly test Java applications and limitations in respect to types of emulated faults. The analysis of the fault injectors found in literature motivates the development of a solution specifically aimed at testing multi-protocol applications written in Java. This work presents a solution for communication fault injection in multi-protocol Java applications. The solution works at JVM level, intercepting protocol messages, and, in some cases, it also operates at the operating system level, using firewall rules for the emulation of faults that could not be emulated at JVM level. The approach is useful for both white box and black box testing and has advantages such as preserving the target application’s source code. The viability of the proposed solution is shown by the development of a prototype tool called Comform, that is aimed at multi-protocol Java application testing. Comform can be applied to test Java applications based on any combination of UDP, TCP, and RMI (including those based on a single protocol).
|
382 |
Conjunto de classes para aplicações gráficas 2D em sistemas embarcados baseados no femtojava / Class Library for Femtojava-Based Embedded 2D Graphics ApplicationsOliveira, Leandro Augusto de January 2006 (has links)
Com o crescimento do mercado de sistemas embarcados, em especial aqueles dispositivos portáteis como PDAs e celulares, observa-se o crescimento de mercados baseados nestas plataformas, como o mercado de entretenimento digital. Devido às características destes dispositivos, novas oportunidades e desafios acompanham estas mudanças. Com cada vez mais recursos incorporados, o projeto de software para estes dispositivos torna-se mais complexo, exigindo soluções que aumentem a produtividade do desenvolvedor. Este trabalho descreve o estudo de técnicas em software para reduzir o consumo de energia e aumentar o desempenho de sistemas embarcados com recursos gráficos, baseados no microprocessador Femtojava. Como subproduto deste trabalho, foi desenvolvida uma biblioteca gráfica para a plataforma Femtojava. Dois estudos de caso foram desenvolvidos para analisar a biblioteca desenvolvida, caracterizando o seu consumo de energia e desempenho. / With the growth of the embedded systems market, especially PDAs and mobile phones, other markets based on those platforms, like digital entertainment, have experienced growth as well. Due to its characteristics, embedded devices present new opportunities and challenges. With an ever growing number of features, software development for these devices becomes more complex, demanding more powerful tools for increasing developer productivity. This work presents the study of software techniques to save power and improve performance of graphics capable embedded devices, based on Femtojava microprocessor. As a sub product of this work, a graphical library has been developed for the Femtojava platform. Two case studies were developed in order to analyze the library, characterizing its power consumption and performance.
|
383 |
Inférence statique et par contraintes des relations de composition dans des programmes JavaHabti, Norddin January 2009 (has links)
No description available.
|
384 |
Execução distribuída de programas funcionais usando a máquina virtual java / Distributed execution of functional programs using the JVMDu Bois, Andre Rauber January 2001 (has links)
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, we first present the implementation of the G-Machine in J ava, and discuss its implementation. Then we show how this implementation was modified to allow distributed execution of functional programs. Finally some benchmarks, possible future works and conclusions are presented.
|
385 |
Treecore ReaderHöglund, Peter January 2016 (has links)
Detta projekt har genomförts på företaget Haglöf Sweden AB i Långsele. Företaget har länge haft ett förslag till ett projekt som går ut på att mäta borrprover med hjälp av en android-enhet och även andra funktioner inom skogsindustrin. Den applikation som togs fram till företaget genom det här projektet blev en applikation som kan utföra enklare skogsinventeringar med hjälp av analyser av borrprover via kameran, höjdmätning med hjälp av accelerometer samt gps positioner från enheten. Dessa funktioner har sedan utvärderats mot traditionella verktyg inom skogsindustrin och fastställts att funktionerna är tillräckligt exakta för att kunna användas. / This project has been carried out for Haglöf Sweden AB in Långsele. The company has for many years had this project waiting because they lacked the resources to do it. The goal of the project is to create an application for android that can analyse tree core samples and other forestry functions. The resulting application has an altimeter, tree core reader/analyser and gps positioning. All these functions has later been evaluated against traditionally used equipment and is found to be good enough to use.
|
386 |
Implementação de um gerenciador de redes overlay para o GridSim / Implementation of an overlay network manager for GridSimRicardo José Sabatine 11 November 2010 (has links)
Computação em grade tem se estabelecido como um importante paradigma de computação, por permitir lidar com grandes quantidades de cálculos e dados e a colaboração de participantes geograficamente distribuídos. Esses sistemas devem ser organizados de forma completamente distribuídas, com cada participante mantendo informações sobre outros participantes, e as informações necessárias ao funcionamento do sistema circulando pela rede de overlay resultante. Quando novas propostas de algoritmos, protocolos ou infraestruturas para a grade são apresentadas, sua avaliação efetiva implica considerar sua operação com uma grande quantidade de participantes, o que invariavelmente significa que simulações devem ser realizadas. Este trabalho apresenta um sub-sistema de simulação de redes de overlay integrado à plataforma de simulação de computação de grade GridSim, de forma a facilitar o estudo desse tipo de estruturas e o desenvolvimento de novas propostas de protocolos e algoritmos para seu uso em grades de computadores. A metodologia adotada resultou no desenvolvimento de um Java package no GridSim com classes e interfaces que representam os conceitos básicos de redes de overlay e da interface dos clientes com essas redes. A partir dele foi possível desenvolver protocolos para redes estruturadas e não estruturadas no simulador e simulá-los utilizando cenários de grade de dados. Com os resultados obtidos foi possível observar que, os protocolos implementados no simulador estão de acordo com o que é encontrado na literatura. / Grid Computing has been established as an important computing paradigm, since it allows dealing with a large quantity of computations and data and the collaboration of geographically distributed participants. Those systems must be organized in a completely distributed way, with each participant knowing about some other participants, and the needed information to the functioning system circulating through the resulting overlay network. When new algorithm proposals, protocols or infrastructures to the grid are presented, its evaluation implies to consider its operation with a large number of participants, which invariably means that simulations must be done. This work presents a subsystem of overlay network simulation integrated to the GridSim simulation platform, in order to facilitate the study of that type of structures and the development of new protocols and algorithms for use in grid computers. The adopted methodology led up to the development of a Java package with classes and interfaces that represent the basic concepts of overlay networks and of the clients interface with those networks. Using this package, it was possible for develop protocols to structured and non-structured networks in the simulator and simulate them using data grid scenarios. With the obtained results it was possible to observe that the implemented protocols in the simulator agree with what is found in the literature.
|
387 |
Proposta de uma linguagem Java para um ambiente paralelo-JAPAR / Design of the Java-like language for a parallel environment-JAPARAntônio Fernando Traina 10 March 2000 (has links)
Com o crescente número de usuários de computadores, novas ferramentas têm sido apresentadas com a finalidade de aumentar a eficiência dos computadores, meio para que seus usuários disponham de recursos automatizados. Mais recentemente, máquinas ligadas em rede de computadores e o fenômeno Internet tornaram necessárias ferramentas específicas para este tipo particular de uso. Entre as principais respostas a essas necessidades surgiu a linguagem Java, que tem ganhado adeptos tanto na comunidade científica como no mercado. Surge daí a necessidade de buscar formas alternativas para o uso de computadores em rede. Entre as soluções propostas encontra-se a de arquiteturas e linguagens paralelas. Estas ferramentas, ainda em fase experimental, apresentam soluções que podem a médio e longo prazo serem viáveis, desde que estudos e pesquisas mostrem sua viabilidade. Neste trabalho investiga-se a aplicação do conceito de paralelismo em linguagens para rede, mais especificamente a linguagem Java. A proposta é estudar as possíveis formas para se explorar o paradigma de linguagens paralelas em ambientes Java. Para isto, apresenta-se uma pesquisa relativa as principais linguagens paralelas disponíveis na literatura, de forma a conhecer as melhores soluções apresentadas por essas linguagens. O trabalho apresenta também um estudo realizado em um conjunto de ferramentas Java disponíveis no mercado. Finalmente, propõe-se um novo ambiente que possa disponibilizar ao usuário os melhores recursos da linguagem Java, explorando as melhores soluções encontradas na literatura. / With the increasing number of computer users, new tools have been presented to improve the computers efficiency and to make automated resources available for those users. Nowadays, the use of computers in a network and the Internet phenomenon requires specific tools. Among them, the Java language appears as an important tool, which has been attracting users in both the scientific and commercial communities. At the same time the computer networks are becoming more popular and some problems have emergent concerned to the networks assessment and connections. It is necessary to look for alternative ways of handling the network computer systems. The parallel architectures and languages appear among the proposed solutions. These tools are still in an experimental phase, studies and researches being necessary additional to confirm their feasibility. In this work we investigate the application of parallelism concepts in languages for networks, and particular we deal with the Java language. The aim is to study the possible approaches for exploring the parallel languages paradigm in Java environments. Research about the main parallel languages available in the literature is presented, in order to check the best solutions proposed by those languages. The work also presents an investigation about the Java tools available in the commercial market. Finally a new environment is proposed that makes some of the best resources of language Java available to the users by exploring the best solutions found in the literature.
|
388 |
Teste e verificação formal do comportamento excepcional de programas Java / Testing and formal verification of the exceptional behavior of Java programsAlexandre Locci Martins 09 June 2014 (has links)
Estruturas de tratamento de exceção são extremamente comuns em softwares desenvolvidos em linguagens modernas, como Java, e afetam de forma contundente o comportamento de um software quando exercitadas. Apesar destas duas características, as principais técnicas de verificação, teste de software e verificação formal, e as ferramentas a elas vinculadas, tendem a negligenciar o comportamento excepcional. Alguns dos fatores que levam a esta negligência são a não especificação do comportamento excepcional em termos de projeto e a consequente implementação das estruturas de tratamento com base no julgamento individual de cada programador. Isto resulta na não consideração de partes expressivas do código em termos de verificação e, consequentemente, a possibilidade de não serem detectados erros relativos tanto às próprias estruturas de tratamento quanto às estruturas de código vinculadas a estas. A fim de abordar este problema, propomos uma técnica, baseada em model checking, que automatiza o processo de exercício de caminhos excepcionais. Isto permite que seja observado o comportamento de um software quando da ocorrência de uma exceção. Pretendemos, com esta técnica, dar suporte para que seja aplicado aos caminhos que representam o comportamento excepcional de um software as mesmas técnicas de detecção de erros que são aplicadas aos caminhos que representam o comportamento normal e, com isso, agregar um aumento na qualidade do desenvolvimento de software. / Software developed in modern languages, such as Java, commonly present structures of exception handling. These structures, when exercised, may affect the software behavior. Despite these two characteristics, the main verification techniques, software testing and formal verification and the tools related to them, tend to neglect the exceptional behavior. The nonexistent specification of software exceptional behaviors at the design level, and, the subsequent implementation of exception handling based on the judgment of each programmer, are some factors that lead to this neglect. These factors result in the non-consideration of the expressive parts of the code in verification terms and, consequently, the impossibility of errors detection concerning either the exception treatment structures or the code structures linked to them. Taking this fact into consideration, we propose a technique based on the model checking process, which automates the process of exercising exceptional paths to address this problem. This allows the observation of the software behavior when an exception occurs. With this technique, we intend to support the application of the same error detection techniques for program normal behavior paths to the paths that represent the software exceptional behavior. Therefore, using the proposed technique, we aim to increase the software development quality.
|
389 |
Reconstrução tri-dimensional de imagens obstétricas de ultra-som utilizando linguagem computacional Java e OpenGL / Reconstruction three-dimensional of obstetritics images of ultrasound using computational language JAVA and OpenGLClaudio Eduardo Goes 15 June 2007 (has links)
Este projeto de pesquisa trata da elaboração de um sistema de reconstrução de imagens obstétricas de fetos, em aparelhos de ultra-som convencionais, para a visualização dessas imagens em três dimensões utilizando a internet como meio de utilização do sistema, com o principal objetivo de proporcionar aos médicos ginecologistas melhor visualização do formato e das estruturas internas, e em especial da face do feto, através do processo de reconstrução tridimensional feito a partir de um conjunto de imagens bidimensionais capturadas em aparelhos convencionais de ultra-som. O uso clínico deste projeto está previsto para o setor de obstetrícia do Hospital das Clínicas de Ribeirão Preto. / This project of research deals with the laboration of a reconstruction system of obstetrics images of embryos in devices of ultrasound will be conventional the visualization of these images in three dimensions using the internet half of uses of the system, with the main objective provides to the medical gynecologists a better visualization of the format and the internal structures and in special the face of the embryo through the made process of three-dimensional reconstruction from a dataset of captured bi-dimensional images in conventional devices of ultrasound. The clinical uses of this project is foreseen will be the sector of obstetrics of the Hospital of the Clinics of Ribeirão Preto.
|
390 |
Conjunto de classes para aplicações gráficas 2D em sistemas embarcados baseados no femtojava / Class Library for Femtojava-Based Embedded 2D Graphics ApplicationsOliveira, Leandro Augusto de January 2006 (has links)
Com o crescimento do mercado de sistemas embarcados, em especial aqueles dispositivos portáteis como PDAs e celulares, observa-se o crescimento de mercados baseados nestas plataformas, como o mercado de entretenimento digital. Devido às características destes dispositivos, novas oportunidades e desafios acompanham estas mudanças. Com cada vez mais recursos incorporados, o projeto de software para estes dispositivos torna-se mais complexo, exigindo soluções que aumentem a produtividade do desenvolvedor. Este trabalho descreve o estudo de técnicas em software para reduzir o consumo de energia e aumentar o desempenho de sistemas embarcados com recursos gráficos, baseados no microprocessador Femtojava. Como subproduto deste trabalho, foi desenvolvida uma biblioteca gráfica para a plataforma Femtojava. Dois estudos de caso foram desenvolvidos para analisar a biblioteca desenvolvida, caracterizando o seu consumo de energia e desempenho. / With the growth of the embedded systems market, especially PDAs and mobile phones, other markets based on those platforms, like digital entertainment, have experienced growth as well. Due to its characteristics, embedded devices present new opportunities and challenges. With an ever growing number of features, software development for these devices becomes more complex, demanding more powerful tools for increasing developer productivity. This work presents the study of software techniques to save power and improve performance of graphics capable embedded devices, based on Femtojava microprocessor. As a sub product of this work, a graphical library has been developed for the Femtojava platform. Two case studies were developed in order to analyze the library, characterizing its power consumption and performance.
|
Page generated in 0.0414 seconds