• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 166
  • 6
  • 1
  • 1
  • 1
  • 1
  • 1
  • Tagged with
  • 172
  • 172
  • 172
  • 86
  • 52
  • 42
  • 38
  • 37
  • 33
  • 23
  • 22
  • 20
  • 18
  • 17
  • 16
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
101

Mapeamento da linguagem Nautilus para Java

Fuzitaki, Claudio Naoto January 2004 (has links)
Este trabalho apresenta um mapeamento centrado nas construções não usuais da linguagem Nautilus, para a linguagem convencional, no caso Java, mantendo propriedades com atomicidade que são requisitos da semântica formal da linguagem. Nautilus é originalmente uma linguagem de especificação baseada em objetos, textual que suporta objetos concorrentes e não deterministas. Desde então a linguagem foi modificada aom extensões como classes e uma notação diagramática, além de se investigar seu uso como linguagem de programação. Suas construções incomuns (reificação, agregação, etc.) são baseados em seu domínio semântico: Automâtos Não Sequenciais. Este domíno satisfaz composição diagonal, i.e refinamentos se compõem (verticalmente) refletindo uma descrição gradual de sistemas, envolvendo múltiplos níveis de abstração, e distribui-se através de combinadores (horizontalmente), o que significa que o refinamento de um sistema composto é a combinação de do refinamento de suas partes.O trabalho inclui um mapeamento inicial de um subconjunto da linguagem(objeto base, reificação, agregação e visão), uma versão ampliada para abranger mais construções( interação e classes), e uma versão refinada mais concorrente e sugestões de modificação na linguagem.
102

Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala

Jacques-Silva, Gabriela January 2005 (has links)
Uma etapa fundamental no desenvolvimento de sistemas tolerantes a falhas é a fase de validação, onde é verificado se o sistema está reagindo de maneira correta à ocorrência de falhas. Uma das técnicas usadas para validar experimentalmente um sistema é injeção de falhas. O recente uso de sistemas largamente distribuídos para execução dos mais diversos tipos de aplicações, faz com que novas técnicas para validação de mecanismos de tolerância a falhas sejam desenvolvidas considerando este novo cenário. Injeção de falhas no sistema de comunicação do nodo é uma técnica tradicional para a validação de aplicações distribuídas, para forçar a ativação dos mecanismos de detecção e recuperação de erros relacionados à troca de mensagens. A condução de experimentos com injetores de comunicação tradicionais é feita pelo uso do injetor em uma máquina do sistema distribuído. Se o cenário desejado é de múltiplas falhas, o injetor deve ser instanciado independentemente nas n máquinas que as falhas serão injetadas. O controle de cada injetor é individual, o que dificulta a realização do experimento. Esta dificuldade aumenta significativamente se o cenário for um sistema distribuído de larga escala. Outro problema a considerar é a ausência de ferramentas apropriadas para a emulação de determinados cenários de falhas. Em aplicações distribuídas de larga escala, um tipo comum de falha é o particionamento de rede. Não há ferramentas que permitam diretamente a validação ou a verificação do processo de defeito de aplicações distribuídas quando ocorre um particionamento de rede Este trabalho apresenta o estudo de uma abordagem para injeção de falhas que permita o teste de atributos de dependabilidade de aplicações distribuídas de pequena e larga escala implementadas em Java. A abordagem considera a não obrigatoriedade da alteração do código da aplicação sob teste; a emulação de um cenário de falhas múltiplas que ocorrem em diferentes nodos, permitindo o controle centralizado do experimento; a validação de aplicações que executem em sistemas distribuídos de larga escala e consideram um modelo de falhas realista deste tipo de ambiente, incluindo particionamentos de rede. A viabilidade da abordagem proposta é mostrada através do desenvolvimento do protótipo chamado FIONA (Fault Injector Oriented to Network Applications), o qual atualmente injeta falhas em aplicações desenvolvidas sob o protocolo UDP.
103

Gerência dinâmica de memória em aplicações Java embarcadas

Neves, Bruno Silveira January 2005 (has links)
Esta dissertação apresenta duas implementações de algoritmos para gerência dinâmica de memória em software, as quais foram desenvolvidas utilizando como alvo uma plataforma embarcada Java. Uma vez que a plataforma utilizada pertence a uma metodologia para geração semi-automática de hardware e software para sistemas embarcados, os dois algoritmos implementados foram projetados para serem integrados ao contexto desta mesma metodologia. Como forma de estabelecer comparações detalhadas entre as duas implementações desenvolvidas, foram realizadas diversas estimativas em desempenho, uso de memória, potência e energia para cada implementação, utilizando para isto duas versões existentes da plataforma adotada. Através da análise dos resultados obtidos, observou-se que um dos algoritmos desenvolvidos obteve um desempenho melhor para realização da gerência dinâmica da memória. Em contrapartida, o outro algoritmo possui características de projeto que possibilitam sua utilização com aplicações de tempo-real. De um modo geral, os custos adicionais resultantes da utilização do algoritmo de tempo-real, em relação ao outro algoritmo também implementado, são de aproximadamente 2% para a potência média dissipada, 16% para o número de ciclos executados, 18% para a energia consumida e 10% sobre a quantidade de total memória utilizada. Isto mostra que o custo extra necessário para utilização do algoritmo de tempo real é razoavelmente baixo se comparado aos benefícios proporcionados pela sua utilização. Como impactos finais produzidos por este trabalho, obteve-se um acréscimo de 35% sobre o número total de instruções suportadas pela arquitetura utilizada. Adicionalmente, 12% das instruções que já existiam no conjunto desta arquitetura foram modificadas para se adaptarem aos novos mecanismos implementados. Com isto, o conjunto atual da arquitetura passa a corresponder a 44% do total de instruções existentes na arquitetura da máquina virtual Java. Por último, além das estimativas desenvolvidas, foram também realizadas algumas sugestões para melhoria global dos algoritmos implementados. Em síntese, alguns pontos cobertos por estas sugestões incluem: a migração de elementos do processamento do escopo dinâmico para o estático, o desenvolvimento de mecanismos escaláveis para compactação de memória em tempo-real, a integração de escalonadores ao processo de gerência de memória e a extensão do processo de geração semi-automática de software e hardware para sistemas embarcados.
104

Conjunto de classes para aplicações gráficas 2D em sistemas embarcados baseados no femtojava / Class Library for Femtojava-Based Embedded 2D Graphics Applications

Oliveira, 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.
105

Transformações de programa para suportar a evolução da linguagem Java

Dantas, Reno Medeiros 29 September 2017 (has links)
Dissertação (mestrado)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2017. / Submitted by Fabiana Santos (fabianacamargo@bce.unb.br) on 2018-08-27T17:10:11Z No. of bitstreams: 1 2018_RenoMedeirosDantas.pdf: 663898 bytes, checksum: 03e53bfdabfd3c16abc402c5b44b7443 (MD5) / Approved for entry into archive by Raquel Viana (raquelviana@bce.unb.br) on 2018-08-27T17:39:24Z (GMT) No. of bitstreams: 1 2018_RenoMedeirosDantas.pdf: 663898 bytes, checksum: 03e53bfdabfd3c16abc402c5b44b7443 (MD5) / Made available in DSpace on 2018-08-27T17:39:24Z (GMT). No. of bitstreams: 1 2018_RenoMedeirosDantas.pdf: 663898 bytes, checksum: 03e53bfdabfd3c16abc402c5b44b7443 (MD5) Previous issue date: 2018-08-27 / Considerando a literatura de Engenharia de Software, tem sido reportado que os custos mais altos de desenvolvimento estão relacionados com as atividades de manutenção de software. De forma frequente, os sistemas precisam se adaptar às inovações negociais e tecnológicas. Similarmente, as linguagens de programação passam por um processo de evolução contínua – conforme os recursos (e limitações) de uma linguagem são melhor compreendidas, novas construções de linguagem são introduzidas. Todavia, quando um novo recurso estende ou modifica uma construção de linguagem, com o intuito de melhorar a facilidade de entendimento, manutenabilidade ou eficiência, recursos linguísticos anteriores passam a ser considerados obsoletos. Nesse sentido, a coexistência de construções novas e legadas em uma linguagem tende a aumentar a complexidade de manutenção dos sistemas existentes, bem como dificultar o aprendizado por parte dos desenvolvedores, que precisam conhecer estratégias diferentes de implementação para uma mesma situação. Esta dissertação tem como objetivo explorar o uso de suporte ferramental para apoiar técnicas de transformação de programas, na intenção de adaptar sistemas legados para usar construções mais recentes da linguagem de programação Java, que vem passando por um processo relativamente contínuo de melhoria. No total, foram implementadas seis transformações, que permitem, por exemplo, introduzir a construção multi-catch e expressões lambda em sistemas Java legados. Para compreender a aceitação dessas transformações por parte da comunidade de de desenvolvimento de software, foram aplicadas 2.371 transformações de programas em 40 projetos de código aberto. Foi identificado que transformações mais simples (como a introdução do operador diamante) possuem uma aceitação maior do que as transformações que apresentam um maior impacto no código fonte (como as transformações que convertem enhanced for loops em expressões lambda). / Considering the Software Engineering literature, it has been reported that most resources are spent during the activites of software maintenance. Often, software systems have to be adapted according either to the changes of the business needs or technology innovation. In a similar way, programming languages also have to evolve continually—as soon as the language resources (and limitations) are better understood, new programming languages constructs and features should be introduced. However, whenever a new feature is introduced in a programming language, some of the old constructs and idioms become obsolete. Accordingly, the coexistence of new and old constructs and idioms makes the programs hard to evolve and understand. In this master dissertation, we explore the use of program transformations that evolve Java legacy systems towards the use of new programming language constructs. We have implemented six transformations that allow, for instance, the automatic introduction of mult-catch and lambda expressions constructs in Java legacy systems. In order to understand the acceptance of this kind of transformation, we performed 2,371 transformation in 40 open-source projects. We realized that simple transformations (such as the introduction of the diamond operator) are more likely to be accepted than transformations that substantially change the code (such as the transformations that replace enhanced for loops by lambda expressions).
106

Desenvolvimento de um aplicativo para processamento de dados e criação de um simulador computacional de uma transmissão para veículos /

Campos, Fernando Henrique, 1985- January 2013 (has links)
Orientador: Kleber Pereira Lanças / Coorientador: Saulo Philipe Sebastião Guerra / Banca: Paulo Roberto Arbex Silva / Banca: Leonardo de Almeida Monteiro / Banca: Carlos Roberto Pereira Padovani / Resumo: Na busca contínua da otimização do desempenho dos tratores no campo, um aspecto mecânico importante a ser pesquisado e objeto de inovações é a transmissão, cuja responsabilidade é transmitir energia e potência provenientes do motor a combustão interna para o conjunto de eixos que movimenta as rodas dos tratores. A função do sistema de transmissão é a utilização da máquina de forma variada, devido às diversas atividades desenvolvidas pelo trator no campo, proporcionando sempre a rotação e potência que melhor se adapte a necessidade da atividade desenvolvida pelo trator. Como consequência, deverá ser transmitida somente a potência necessária para cada atividade específica obtendo um desempenho energético mais eficiente do trator, menor emissão de poluentes e a segurança e conforto do operador durante a atividade agrícola. Nesse contexto o objetivo deste trabalho foi desenvolver um aplicativo para simular o desempenho cinemático e dinâmico de quatro configurações de transmissões continuamente variáveis (CVT) com divisão de potência e como objetivo secundário, armazenar e processar os dados obtidos através de ensaios de bancada realizados através de um equipamento de laboratório denominado Maqueta Docente Transmisión Continua (MDTC) localizada na Escuela Técnica Superior de Ingenieros Agrónomos (ETSIA), da Universidad Politécnica de Madrid, Espanha, utilizada para simular mecanicamente o comportamento de diferentes configurações de transmissões CVT.Para o desenvolvimento do aplicativo foi utilizada a linguagem de programação Java através do Ambiente Integrado de Desenvolvimento (IDE) NetBeans 6.9.1, e como base de dados foi utilizado o banco de dados MySQL Server 5.5. O aplicativo denominado ―MDTC - Folha de Cálculos‖ realizou a simulação virtual dos quatro tipos de configurações de... (Resumo completo, clicar acesso eletrônico abaixo) / Abstract: In the continuous search of agricultural machinery performance improvement in field an important mechanical aspect to be researched and subject to innovations is the transmission, whose the responsibility is to transmit energy and power from the internal combustion engine to the set of axes that moves the tractor wheels. The function of the transmission system is the use of the machine in different ways due to different activities undertaken by the tractor in the field, always providing the rotation and power of the wheels that best suits the need of the activity developed. As result should be transmitted only the required power for each specific activity improving the machinery energy performance, lower emissions, and the operator safety and comfort during agricultural activity. In this context, the aim of this research was to develop a software in order to simulate the kinematic and dynamic performance of four types of continuously variable transmissions (CVT) with power-split system and as a secondary objective, store and process the data obtained from bench tests performed by a laboratory equipment called Maqueta Docente Transmisión (MTDC) located at Escuela Técnica Superior de Ingenieros Agrónomos (ETSIA), of Universidad Politécnica de Madrid (UPM), located in Madrid, Spain, used to mechanically simulate the performance of different configurations of CVT transmissions. For the software development were used the programming language Java through the Integrated Development Environment (IDE) NetBeans 6.9.1, and as database... (Complete abstract click electronic access below) / Doutor
107

Aplicação de computação móvel na operação e manutenção de sistemas de distribuição de energia elétrica

Rocha, Luciano Beiestorf January 2007 (has links)
Made available in DSpace on 2013-08-07T18:53:23Z (GMT). No. of bitstreams: 1 000389988-Texto+Completo-0.pdf: 1628766 bytes, checksum: 0481e3102065480e2e27ff32c794541a (MD5) Previous issue date: 2007 / In this dissertation a study on the application of mobile computation for support of operation and maintenance of electric energy distribution systems is carried out. Aspects that are used to support mobile computation, such as operational systems, programming languages, database and connections are tackled. Special attention is given to the Java Language due to its portability and integration aspects among J2ME (Java Micro Edition), PHP (PHP: Hypertext Preprocessor) and Webservices. Two models of PDA (Personal Digital Assistent) are used to carry out comparative tests of connection, evaluating aspects of singular and concurrent connection with Bluetooth, Wi-Fi (Wireless Fidelity) and USB (Universal Serial Bus) cable, as well as tests of static and dynamic logical connection. Graphical performance and arithmetical operations with integer and real number routines are evaluated. Cases of network equipment description, asset management, support to information management and support to operation and maintenance are presented, describing the advantages of its use. To illustrate the use of mobile computing four applications were developed, which involve the topics of real time, forms, network editor and maintenance. Finally, the conclusions of the dissertation and subjects for future works are presented. / Nesta dissertação é realizado um estudo sobre a aplicação de computação móvel para suporte a ações de operação e manutenção de sistemas elétricos. São abordados aspectos relacionados a sistemas operacionais, linguagens de programação, banco de dados e conexões que são utilizados para suportar a computação móvel. Um maior enfoque é dado para à Linguagem Java, devido a sua característica de portabilidade e aos aspectos de integração entre o J2ME (Java Micro Edition), PHP (PHP: Hypertext Preprocessor) e Web Server (Servidores Web). São realizados testes comparativos de conexão utilizando dois modelos de PDA (Personal Digital Assistent), avaliando aspectos de conexão singular e concorrente com Bluetooth, Wi-Fi (Wireless Fidelity) e cabo USB (Universal Serial Bus), bem como testes de conexão lógica estática e dinâmica. São também avaliados o desempenho gráfico e o desempenho com operações aritméticas através de rotinas de cálculo com número inteiros e reais. São apresentados casos de uso de cadastramento de redes, gestão de ativos, apoio ao gerenciamento de informações e tomada de decisão e suporte à operação e manutenção, descrevendo as vantagens da sua utilização. Para ilustrar a utilização foram desenvolvidas quatro aplicações que envolvem os tópicos de tempo real, formulários, editor de redes e manutenção. Finalmente, são apresentadas as conclusões da dissertação e temas para futuros trabalhos.
108

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 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.
109

Mapeamento da linguagem Nautilus para Java

Fuzitaki, Claudio Naoto January 2004 (has links)
Este trabalho apresenta um mapeamento centrado nas construções não usuais da linguagem Nautilus, para a linguagem convencional, no caso Java, mantendo propriedades com atomicidade que são requisitos da semântica formal da linguagem. Nautilus é originalmente uma linguagem de especificação baseada em objetos, textual que suporta objetos concorrentes e não deterministas. Desde então a linguagem foi modificada aom extensões como classes e uma notação diagramática, além de se investigar seu uso como linguagem de programação. Suas construções incomuns (reificação, agregação, etc.) são baseados em seu domínio semântico: Automâtos Não Sequenciais. Este domíno satisfaz composição diagonal, i.e refinamentos se compõem (verticalmente) refletindo uma descrição gradual de sistemas, envolvendo múltiplos níveis de abstração, e distribui-se através de combinadores (horizontalmente), o que significa que o refinamento de um sistema composto é a combinação de do refinamento de suas partes.O trabalho inclui um mapeamento inicial de um subconjunto da linguagem(objeto base, reificação, agregação e visão), uma versão ampliada para abranger mais construções( interação e classes), e uma versão refinada mais concorrente e sugestões de modificação na linguagem.
110

Injeção distribuída de falhas para validação de dependabilidade de sistemas distribuídos de larga escala

Jacques-Silva, Gabriela January 2005 (has links)
Uma etapa fundamental no desenvolvimento de sistemas tolerantes a falhas é a fase de validação, onde é verificado se o sistema está reagindo de maneira correta à ocorrência de falhas. Uma das técnicas usadas para validar experimentalmente um sistema é injeção de falhas. O recente uso de sistemas largamente distribuídos para execução dos mais diversos tipos de aplicações, faz com que novas técnicas para validação de mecanismos de tolerância a falhas sejam desenvolvidas considerando este novo cenário. Injeção de falhas no sistema de comunicação do nodo é uma técnica tradicional para a validação de aplicações distribuídas, para forçar a ativação dos mecanismos de detecção e recuperação de erros relacionados à troca de mensagens. A condução de experimentos com injetores de comunicação tradicionais é feita pelo uso do injetor em uma máquina do sistema distribuído. Se o cenário desejado é de múltiplas falhas, o injetor deve ser instanciado independentemente nas n máquinas que as falhas serão injetadas. O controle de cada injetor é individual, o que dificulta a realização do experimento. Esta dificuldade aumenta significativamente se o cenário for um sistema distribuído de larga escala. Outro problema a considerar é a ausência de ferramentas apropriadas para a emulação de determinados cenários de falhas. Em aplicações distribuídas de larga escala, um tipo comum de falha é o particionamento de rede. Não há ferramentas que permitam diretamente a validação ou a verificação do processo de defeito de aplicações distribuídas quando ocorre um particionamento de rede Este trabalho apresenta o estudo de uma abordagem para injeção de falhas que permita o teste de atributos de dependabilidade de aplicações distribuídas de pequena e larga escala implementadas em Java. A abordagem considera a não obrigatoriedade da alteração do código da aplicação sob teste; a emulação de um cenário de falhas múltiplas que ocorrem em diferentes nodos, permitindo o controle centralizado do experimento; a validação de aplicações que executem em sistemas distribuídos de larga escala e consideram um modelo de falhas realista deste tipo de ambiente, incluindo particionamentos de rede. A viabilidade da abordagem proposta é mostrada através do desenvolvimento do protótipo chamado FIONA (Fault Injector Oriented to Network Applications), o qual atualmente injeta falhas em aplicações desenvolvidas sob o protocolo UDP.

Page generated in 0.1204 seconds