965 resultados para Java Persistence API


Relevância:

20.00% 20.00%

Publicador:

Resumo:

Este trabalho relata as atividades de estudo, projeto e implementação de uma aplicação distribuída que explora mecanismos básicos empregados em comunicação de grupo. O estudo é focado no desenvolvimento e uso dos conceitos de sincronismo virtual e em resultados aplicáveis para tolerância a falhas. O objetivo deste trabalho é o de demonstrar as repercussões práticas das principais características do modelo de sincronismo virtual no suporte à tolerância a falhas. São preceitos básicos os conceitos e primitivas de sistemas distribuídos utilizando troca de mensagens, bem como as alternativas de programação embasadas no conceito de grupos. O resultado final corresponde a um sistema Cliente/Servidor, desenvolvido em Java RMI, para simular um sistema distribuído com visões de grupo atualizadas em função da ocorrência de eventos significativos na composição dos grupos (sincronismo virtual). O sistema apresenta tratamento a falhas para o colapso (crash) de processos, inclusive do servidor (coordenador do grupo), e permite a consulta a dados armazenados em diferentes servidores. Foi projetado e implementado em um ambiente Windows NT, com protocolo TCP/IP. O resultado final corresponde a um conjunto de classes que pode ser utilizado para o controle da composição de grupos (membership). O aplicativo desenvolvido neste trabalho disponibiliza seis serviços, que são: inclusão de novos membros no grupo, onde as visões de todos os membros são atualizadas já com a identificação do novo membro; envio de mensagens em multicast aos membros participantes do grupo; envio de mensagens em unicast para um membro específico do grupo; permite a saída voluntária de membros do grupo, fazendo a atualização da visão a todos os membros do grupo; monitoramento de defeitos; e visualização dos membros participantes do grupo. Um destaque deve ser dado ao tratamento da suspeita de defeito do coordenador do grupo: se o mesmo sofrer um colapso, o membro mais antigo ativo é designado como o novo coordenador, e todos os membros do grupo são atualizados sobre a situação atual quanto à coordenação do grupo.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

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.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

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.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Esse trabalho de dissertação está incluído no contexto das pesquisas realizadas no Grupo de Processamento Paralelo e Distribuído da UFRGS. Ele aborda as áreas da computação de alto desempenho, interfaces simples de programação e de sistemas de interconexão de redes velozes. A máquina paralela formada por agregados (clusters) tem se destacado por apresentar os recursos computacionais necessários às aplicações intensivas que necessitam de alto desempenho. Referente a interfaces de programação, Java tem se mostrado uma boa opção para a escrita de aplicações paralelas por oferecer os sistemas de RMI e de soquetes que realizam comunicação entre dois computadores, além de todas as facilidades da orientação a objetos. Na área a respeito de interconexão de rede velozes está emergindo como uma tentativa de padronização a nova tecnologia Infiniband. Ela proporciona uma baixa latência de comunicação e uma alta vazão de dados, além de uma série de vantagens implementadas diretamente no hardware. É neste contexto que se desenvolve o presente trabalho de dissertação de mestrado. O seu tema principal é o sistema Aldeia que reimplementa a interface bastante conhecida de soquetes Java para realizar comunicação assíncrona em agregados formados por redes de sistema. Em especial, o seu foco é redes configuradas com equipamentos Infiniband. O Aldeia objetiva assim preencher a lacuna de desempenho do sistema padrão de soquetes Java, que além de usar TCP/IP possui um caráter síncrono. Além de Infiniband, o Aldeia também procura usufruir dos avanços já realizados na biblioteca DECK, desenvolvida no GPPD da UFRGS. Com a sua adoção, é possível realizar comunicação com uma interface Java sobre redes Myrinet, SCI, além de TCP/IP. Somada a essa vantagem, a utilização do DECK também proporciona a propriedade de geração de rastros para a depuração de programas paralelos escritos com o Aldeia. Uma das grandes vantagens do Aldeia está na sua capacidade de transmitir dados assincronamente. Usando essa técnica, cálculos da aplicação podem ser realizados concorrentemente com as operações pela rede. Por fim, os canais de dados do Aldeia substituem perfeitamente aqueles utilizados para a serialização de objetos. Nesse mesmo caminho, o Aldeia pode ser integrado à sistemas que utilizem a implementação de soquetes Java, agora para operar sobre redes de alta velocidade. Palavras-chave: Arquitetura Infiniband, agregado de computadores, linguagem de programação Java, alto desempenho, interface de programação.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

The purpose of this thesis is to investigate the price-setting behavior in Brazil and, in particular, the effects on inflation and good-level real exchange rate persistence. This thesis is composed by three Chapters. In the first Chapter, we present the main stylized facts about the behavior of retail prices in Brazil using micro data from the CPI index computed by the Fundação Getulio Vargas. Moreover we construct time series of price-setting statistics and relate them to macroeconomic variables using regression analyses. In Chapter 2, we investigated the relevance of heterogeneity in countries price stickiness on good-level real exchange rate persistence, considering a newly constructed panel data set of relative prices of 115 common products between the U.S. and Brazil. Chapter 3 is devoted to the relation between sectoral price stickiness and inflation persistence.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Este trabalho tem por objetivo desenvolver um equipamento de ensaios para avaliar a vida de juntas soldadas, provenientes de tubulações para extração de petróleo, submetidas à corrosão-fadiga. Para atingir este objetivo foi estudado em que condições de corrosãofadiga uma tubulação esta exposta em alto mar sendo então definidos os parâmetros mais relevantes para serem reproduzidos em laboratório em corpos de prova menores. Nesta etapa foram definidos quais seriam os parâmetros de ensaio que o equipamento deveria atender. O equipamento foi construído para ensaiar uma junta soldada circunferencial por flexão a quatro pontos através de um sistema hidráulico com controle de carga com uma freqüência de 0,2 Hz e razão de carregamento, R=0,1. Para validar o equipamento foi usado um corpo de prova instrumentado com extensômetros resistivos para comparar o a carga calculada com a experimental e determinar se o nível de carregamento se mantêm constante ao longo dos ensaios. Foi levantada uma curva de fadiga com o equipamento desenvolvido e comparada com uma curva de fadiga feita ao ar do mesmo material em uma máquina servo hidráulica MTS.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

A crescente complexidade dos sistemas tempo-real embarcados demanda novas metodologias e ferramentas para gerenciar os problemas de projeto, análise, integração e validação de sistemas complexos. Este trabalho aborda o tema co-projeto de sistemas tempo-real embarcados, propondo estratégias para a integração das fases iniciais de modelagem de um sistema tempo-real embarcado com as fases subseqüentes do projeto, como a implementação do software e do hardware. É proposto um framework orientado a objetos que permite a criação de modelos orientados a objetos de sistemas tempo-real embarcados, utilizando conceitos temporais similares aos propostos em UML-RT (ou mais especificamente no UML Profile for Schedulability, Performance and Time). É proposta uma estratégia de mapeamento dos requisitos temporais dos diagramas UMLRT para uma interface de programação (API) baseada na “Especificação Tempo-Real para Java” (Real-Time Specification for Java ou RTSJ), a qual pode ser executada tanto em software – em programas RTSJ executando em máquinas virtuais Java (JVM) tempo-real – ou em hardware – em processadores Java Tempo-Real. Para permitir o mapeamento para hardware são propostas extensões tempo-real ao processador Java FemtoJava, desenvolvido no âmbito de dissertações de mestrado e projetos de pesquisa no PPGC, criando-se um novo processador tempo-real denominado de RT-FemtoJava. Dentre as extensões propostas ao processador FemtoJava destaca-se a inclusão de um relógio de tempo-real e o suporte a instruções para alocação e manipulação de objetos. Os conceitos propostos foram validados no âmbito de estudos de caso, sendo os resultados obtidos descritos na presente dissertação.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

We use the Ramsey model of g,Towth elaborated by Bliss [1995] and Ventlira [1997] to show how international integration results in long-nm persistellce Df GNPs distribution, while allowing, under certain conditions on parameters, for convergellce during the transition. First, we pi·ovide relationships which explicitly relate, in the neighborhood of the steady-state, the magnitude of conditional convergence or divergence to the fundamentaIs of the economies. Second, we present ali analysis of the Cobb Douglas case with a broad dass of utility functions and show that there is always transitional convergenee with this technology. Third, directions for testing the Illodel against the traditional dosed-ecollomy setting are proposed. These lead to adding specific and world-wide regTessors to traditional growth regressions.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

This paper introduces a residual based test where the null hypothesis of c:&InOvement between two processes with local persistenc~ can be tested, even under the presence of an endogenous regressor. It, therefore, fills in an existing lacuna in econometrics, in which longrun relationships can also be tested if the dependent and independent variables do not have a unit root, but do exhibit local persistence.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

The inability of rational expectation models with money supply rules to deliver inflation persistence following a transitory deviation of money growth from trend is due to the rapid adjustment of the price level to expected events. The observation of persistent inflation in macroeconomic data leads many economists to believe that prices adjust sluggishly and/or expectations must not be rational. Inflation persistence in U.S. data can be characterized by a vector autocorrelation function relating inflation and deviations of output from trend. In the vector autocorrelation function both inflation and output are highly persistent and there are significant positive dynamic cross-correlations relating inflation and output. This paper shows that a flexible-price general equilibrium business cycle model with money and a central bank using a Taylor rule can account for these patterns. There are no sticky prices and no liquidity effects. Agents decisions in a period are taken only after all shocks are observed. The monetary policy rule transforms output persistence into inflation persistence and creates positive cross-correlations between inflation and output.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

O professor apresenta a utilização de caracteres nas linguagens de programação Java e C++. Ilustra como utilizar e tratar conjuntos de caracteres nas linguagens de programação.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

O professor apresenta interfaces orientadas a objetos na linguagem de programação Java. Ilustra como e quando são utilizadas as interfaces orientadas a objetos em Java.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

Although formal methods can dramatically increase the quality of software systems, they have not widely been adopted in software industry. Many software companies have the perception that formal methods are not cost-effective cause they are plenty of mathematical symbols that are difficult for non-experts to assimilate. The Java Modelling Language (short for JML) Section 3.3 is an academic initiative towards the development of a common formal specification language for Java programs, and the implementation of tools to check program correctness. This master thesis work shows how JML based formal methods can be used to formally develop a privacy sensitive Java application. This is a smart card application for managing medical appointments. The application is named HealthCard. We follow the software development strategy introduced by João Pestana, presented in Section 3.4. Our work influenced the development of this strategy by providing hands-on insight on challenges related to development of a privacy sensitive application in Java. Pestana’s strategy is based on a three-step evolution strategy of software specifications, from informal ones, through semiformal ones, to JML formal specifications. We further prove that this strategy can be automated by implementing a tool that generates JML formal specifications from a welldefined subset of informal software specifications. Hence, our work proves that JML-based formal methods techniques are cost-effective, and that they can be made popular in software industry. Although formal methods are not popular in many software development companies, we endeavour to integrate formal methods to general software practices. We hope our work can contribute to a better acceptance of mathematical based formalisms and tools used by software engineers. The structure of this document is as follows. In Section 2, we describe the preliminaries of this thesis work. We make an introduction to the application for managing medical applications we have implemented. We also describe the technologies used in the development of the application. This section further illustrates the Java Card Remote Method Invocation communication model used in the medical application for the client and server applications. Section 3 introduces software correctness, including the design by contract and the concept of contract in JML. Section 4 presents the design structure of the application. Section 5 shows the implementation of the HealthCard. Section 6 describes how the HealthCard is verified and validated using JML formal methods tools. Section 7 includes some metrics of the HealthCard implementation and specification. Section 8 presents a short example of how a client-side of a smart card application can be implemented while respecting formal specifications. Section 9 describes a prototype tools to generate JML formal specifications from informal specifications automatically. Section 10 describes some challenges and main ideas came acrorss during the development of the HealthCard. The full formal specification and implementation of the HealthCard smart card application presented in this document can be reached at https://sourceforge.net/projects/healthcard/.

Relevância:

20.00% 20.00%

Publicador:

Resumo:

This thesis examines the concept of tie strength and investigates how it can be determined on the fly in the Facebook Social Network Service (SNS) by a system constructed using the standard developer API. We analyze and compare two different models: the first one is an adaptation of previous literature (Gilbert & Karahalios, 2009), the second model is built from scratch and based on a dataset obtained from an online survey. This survey took the form of a Facebook application that collected subjective ratings of the strength of 1642 ties (friendships) from 85 different participants. The new tie strength model was built based on this dataset by using a multiple regression method. We saw that the new model performed slightly better than the original adapted model, plus it had the advantage of being easier to implement. In conclusion, this thesis has shown that tie strength models capable of serving as useful friendship predictors are easily implementable in a Facebook application via standard API calls. In addition to a new tie strength model, the methodology adopted in this work permitted observation of the weights of each predictive variable used in the model, increasing the visibility of the factors that affects peoples’ relationships in online social networks.