111 |
Primitivas para suporte à distribuição de objetos direcionados à pervasive computingSilva, Luciano Cavalheiro da January 2003 (has links)
Renovados são os desa os trazidos à computação distribuída pelos recentes desenvolvimentos nas tecnologias de computação móvel. Tais avanços inspiram uma perspectiva na qual a computação tornar-se-á uma entidade ubíqua em um futuro próximo, estando presente nas mais simples atividades do dia-a-dia. Esta perspectiva é motivadora das pesquisas conduzidas no escopo do projeto ISAM, as quais investigam as questões relativas ao uso da computação em ambientes móveis de larga escala. Neste trabalho é apresentado o sistema PRIMOS (PRIMitives for Object Scheduling), o qual busca, pela complementação da plataforma Java, satisfazer as emergentes necessidades do ISAM. Especi camente, o PRIMOS constitui um conjunto de primitivas para instanciação remota e migração de objetos, comunicação e monitoração, direcionadas a um ambiente de computação distribuída de larga escala de características pervasivas. A primitiva de instanciação remota disponibilizada pelo PRIMOS aumenta a plataforma Java padrão com a possibilidade de criar e ativar objetos em nodos remotos do sistema. Por sua vez, a primitiva de migração faculta a relocação de objetos. A consecu- ção de tais semânticas tem como sub-produto a de nição de semânticas para ativação e desativação de objetos, assim como para captura e restauração de contexto de execução. Sob a perspectiva da comunicação, o PRIMOS de ne um esquema de endereçamento independente de protocolo de transporte, assim como uma interface neutra para acesso às facilidades de comunicação. A integração destas funcionalidades ao mecanismo de invocações remotas da plataforma Java, o RMI, permite a desvinculação deste da pilha TCP/IP. Por conseguinte, habilita a adoção de transportes otimizados ao hardware de comunicação disponibilizado pelo sistema. No que se refere à monitoração, o PRIMOS de ne um esquema exível e extensível baseado em sensores. A exibilidade vem principalmente da possibilidade dos sensores terem seus parâmetros de operação recon gurados a qualquer momento em resposta a novas necessidades do sistema. Por outro lado, o sistema é extensível pois o conjunto de sensores básicos, ditos nativos, pode ser aumentado por sensores providos pela aplicação. Com intuito de validar as idéias postuladas, um protótipo foi construído para o sistema. Sobre este, baterias de testes foram realizadas para cada uma das primitivas constituintes do PRIMOS.
|
112 |
Adaptação dinâmica do timeout de detectores de defeitos através do uso de séries temporaisNunes, Raul Ceretta January 2003 (has links)
Uma aplicação distribuída freqüentemente tem que ser especificada e implementada para executar sobre uma rede de longa distância (wide-área network-WAN), tipicamente a Internet. Neste ambiente, tais aplicações são sujeitas a defeitos do tipo colapso(falha geral num dado nó), teporização (flutuações na latência de comunicação) e omissão (perdas de mensagens). Para evitar que este defeitos gerem comseqüências indesejáveis e irreparáveis na aplicação, explora-se técnicas para tolerá-los. A abstração de detectores de defeitos não confiáveis auxilia a especificação e trato de algoritmos distribuídos utilizados em sistemas tolerantes a falhas, pois permite uma modelagem baseada na noção de estado (suspeito ou não suspeito) dos componentes (objetos, processo ou processadores) da aplicação. Para garantir terminação, os algoritmos de detecção de defeitos costumam utilizar a noção de limites de tempo de espera (timeout). Adicionalmente, para minimizar seu erro (falasas suspeitas) e não comprometer seu desempenho (tempo para detecção de um defeito), alguns detectores de defeitos ajustam dinamicamente o timeout com base em previsões do atraso de comunicação. Esta tese explora o ajuste dinâmico do timeout realizado de acordo com métodos de previsão baseados na teoria de séries temporais. Tais métodos supõem uma amostragem periódica e fornececm estimativas relativamente confiáveis do comportamento futuro da variável aleatória. Neste trabalho é especificado uma interface para transformar uma amostragem aperiódica do atraso de ida e volta de uma mensagem (rtt) numa amostragem periódica, é analisado comportamento de séries reais do rtt e a precisão dee sete preditores distintos (três baseados em séries temporais e quatrro não), e é avaliado a influência destes preditores na qualidade de serviço de um detector de defeitos do estilopull. Uma arquitetura orientada a objetos que possibilita a escolha/troca de algoritmos de previsão e de margem de segurança é também proposta. Como resultado, esta tese mostra: (i) que embora a amostragem do rtt seja aperiódica, pode-se modelá-la como sendo uma série temporal (uma amostragem periódica) aplciando uma interface de transformação; (ii) que a série temporal rtt é não estacionária na maioria dos casos de teste, contradizendo a maioria das hipóteses comumente consideradas em detectores de defeitos; (iii) que dentre sete modelos de predição, o modelo ARIMA (autoregressive integrated moving-average model) é o que oferece a melhor precisão na predição de atrasos de comunicação, em termos do erro quadrático médio: (iv) que o impacto de preditores baseados em séries temporais na qualidade de serviço do detector de defeitos não significativo em relação a modelos bem mais simples, mas varia dependendo da margem de segurança adotada; e (v) que um serviço de detecção de defeitos pode possibilitar a fácil escolha de algoritmos de previsão e de margens de segurança, pois o preditor pode ser modelado como sendo um módulo dissociado do detector.
|
113 |
Réplicas para alta disponibilidade em arquiteturas orientadas a componentes com suporte de comunicação de grupoPasin, Marcia January 2003 (has links)
Alta disponibilidade é uma das propriedades mais desejáveis em sistemas computacionais, principalmente em aplicações comerciais que, tipicamente, envolvem acesso a banco de dados e usam transações. Essas aplicações compreendem sistemas bancários e de comércio eletrônico, onde a indisponibilidade de um serviço pode representar substanciais perdas financeiras. Alta disponibilidade pode ser alcançada através de replicação. Se uma das réplicas não está operacional, outra possibilita que determinado serviço seja oferecido. No entanto, réplicas requerem protocolos que assegurem consistência de estado. Comunicação de grupo é uma abstração que tem sido aplicada com eficiência a sistemas distribuídos para implementar protocolos de replicação. Sua aplicação a sistemas práticos com transações e com banco de dados não é comum. Tipicamente, sistemas transacionais usam soluções ad hoc e sincronizam réplicas com protocolos centralizados, que são bloqueantes e, por isso, não asseguram alta disponibilidade. A tecnologia baseada em componentes Enterprise JavaBeans (EJB) é um exemplo de sistema prático que integra distribuição, transações e bancos de dados. Em uma aplicação EJB, o desenvolvedor codifica o serviço funcional que é dependente da aplicação, e os serviços não–funcionais são inseridos automaticamente. A especificação EJB descreve serviços não–funcionais de segurança, de transações e de persistência para bancos de dados, mas não descreve serviços que garantam alta disponibilidade. Neste trabalho, alta disponibilidade é oferecida como uma nova propriedade através da adição de serviços não–funcionais na tecnologia EJB usando abstrações de comunicação de grupo. Os serviços para alta disponibilidade são oferecidos através da arquitetura HA (highly-available architecture) que possui múltiplas camadas. Esses serviços incluem replicação, chaveamento de servidor, gerenciamento de membros do grupo e detecção de membros falhos do grupo. A arquitetura HA baseia-se nos serviços já descritos pela especificação EJB e preserva os serviços EJB existentes. O protocolo de replicação corresponde a uma subcamada, invisível para o usuário final. O serviço EJB é executado por membros em um grupo de réplicas, permitindo a existência de múltiplos bancos de dados idênticos. Conflitos de acesso aos múltiplos bancos de dados são tratados estabelecendo–se uma ordem total para aplicação das atualizações das transações. Esse grupo é modelado como um único componente e gerenciado por um sistema de comunicação de grupo. A combinação de conceitos de bancos de dados com comunicação de grupo demonstra uma interessante solução para aplicações com requisitos de alta disponibilidade, como as aplicações EJB. Os serviços adicionais da arquitetura HA foram implementados em protótipo. A validação através de um protótipo possibilita que experimentos sejam realizados dentro de um ambiente controlado, usando diferentes cargas de trabalho sintéticas. O protótipo combina dois sistemas de código aberto. Essa característica permitiu acesso à implementação e não somente à interface dos componentes dos sistemas em questão. Um dos sistemas implementa a especificação EJB e outro implementa o sistema de comunicação de grupos. Os resultados dos testes realizados com o protótipo mostraram a eficiência da solução proposta. A degradação de desempenho pelo uso de réplicas e da comunicação de grupo é mantida em valores adequados.
|
114 |
Plataforma de comunicação tempo real sobre clusters SCIHeimfarth, Tales January 2002 (has links)
Devido a sua baixa latência de banda, os clusters equipados com o adaptador SCI são uma alternativa para sistemas de tempo real distribuídos. Esse trabalho apresenta o projeto e implementação de uma plataforma de comunicação de tempo real sobre clusters SCI. O hardware padrão do SCI não se mostra adequado para a transmissão de tráfego de tempo real devido ao problema da contenção de acesso ao meio que causa inversão de prioridade. Por isso uma disciplina de acesso ao meio é implementada como parte da plataforma. Através da arquitetura implementada é possível o estabelecimento de canais de comunicação com garantia de banda. Assim, aplicações multimídias, por exemplo, podem trocar com taxa constante de conunicação. Cada mensagem é enviada somente uma vez. Assim, mensagens som a semântica de eventos podem ser enviadas. Além disso, a ordem e o tamanho das mensagens são garantidos. Além do tráfego com largura de banda garantida, a plataforma possibilita a troca de pacotes IP entre diferentes máquinas do cluster. Esses pacotes são inseridos no campo de dados dos pacotes próprios da plataforma e após são enviados através do uso de pacotes IP. Além disso, essa funcionalidade da plataforma permite também a execução de bibliotecas de comunicação baseadas em TCP/IP como o MPI sobre o cluster SCI. A plataforma de comunicação é implementada como modulos do sistema operacional Linux com a execução de tempo real RTAI. A valiação da plataforma mostrou que mesmo em cenários com muita comunicação entre todos os nodos correndo, a largura de banda reservada para cada canal foi mantida.
|
115 |
DOMonitor: um ambiente de monitoração de aplicações distribuídas JavaAraujo, Edvar Bergmann January 2002 (has links)
A linguagem de programação Java vem sendo uma das escolhidas para a implementação de aplicações compostas por objetos distribuídos. Estas aplicações caracterizam-se por possuir comportamento complexo e, portanto, são mais difíceis de depurar e refinar para obter melhores desempenhos. Considerando a necessidade do desenvolvimento de uma ferramenta de monitoração para o modelo de objetos distribuídos, que colete informações mais detalhadas sobre a execução da aplicação, é apresentado neste trabalho um ambiente de monitoração de aplicações distribuídas escritas em Java, o DOMonitor. Um dos objetivos do DOMonitor é obter o comportamento que a aplicação apresenta durante a execução, possibilitando a detecção de comportamentos equivocados e seu respectivo refinamento. O DOMonitor é voltado para aplicações compostas por objetos distribuídos e caracteriza-se por identificar principalmente: (i) o comportamento dinâmico das threads; (ii) a utilização dos métodos de sincronização; e (iii) a comunicação entre os entes distribuídos da aplicação. O DOMonitor está fundamentado em quatro premissas: (i) ser transparente para o usuário, não exigindo anotações no código fonte; (ii) apresentar uma organização modular, e por isto ser flexível e expansível; (iii) ser portável, não exigindo nenhuma alteração na Maquina Virtual Java; e (iv) operar de forma a garantir a ordem dos eventos previstos pelo programa. Os dados produzidos pelo DOMonitor podem ser utilizados com diversas finalidades tais como visualização da execução, escalonamento e como suporte à execução de aplicações móveis. Para comprovar esta versatilidade, foi proposta a integração do sistema a dois outros projetos, o Pajé e o ISAM. O projeto ISAM utilizará os dados monitorados para tomadas de decisão durante o curso da execução e o projeto Pajé permite a visualização gráfica das características dinâmicas de uma aplicação Java.
|
116 |
Implementação de recuperação por retorno de aplicações distribuídas baseada em checkpoints coordenadosBuligon, Clairton January 2005 (has links)
A recuperação por retorno baseada em checkpointing é largamente usada como técnica de tolerância a falhas. O modelo complexo de sistemas distribuídos tem motivado o desenvolvimento de diversos algoritmos na tentativa de encontrar soluções mais simples e eficientes. Os processos que formam o sistema distribuído podem coordenar suas operações para garantir que o conjunto de checkpoints locais componha um estado global consistente (linha de recuperação). A partir desse estado, no caso de ocorrência de falhas, o sistema pode ser recuperado e a computação retomada a partir de um momento anterior ao da manifestação da falha, evitando o retrocesso para o estado inicial da computação e prevenindo a ocorrência de prejuízos com a perda de todo processamento até então realizado. No Grupo de Tolerância a Falhas da UFRGS foi proposto recentemente um algoritmo que é voltado para aplicações que executam em sistemas distribuídos assíncronos que se comunicam exclusivamente pela troca de mensagens. Ele opera com salvamento coordenado de checkpoints (não bloqueando as aplicações) e prevê o tratamento de mensagens órfãs e perdidas. Os mecanismos do algoritmo sugerem que nenhuma alteração deveria ser realizada no código das aplicações, criando a possibilidade de implementação transparente sob o ponto de vista dos usuários e dos programadores das aplicações. Como o algoritmo não requer o bloqueio das aplicações, a sobrecarga imposta pelos mecanismos à execução livre de falhas é pequena. Além disso, o processo de recuperação tende a ser efetuado rapidamente, uma vez que é garantida a existência de uma linha de recuperação consistente, facilmente identificada Este trabalho apresenta as decisões de projeto, a implementação, os resultados e a avaliação de desempenho desse algoritmo. A avaliação das alternativas de implementação resultou na decisão de uma implementação então realizada diretamente sobre o sistema operacional Linux, sem recorrer a protocolos auxiliares para garantir a execução dos serviços e sem a necessidade de adaptações no código das aplicações nem no código do sistema operacional. Adicionalmente, os resultados comprovaram a expectativa inicial de que o algoritmo causaria pouca sobrecarga no sistema (menos de 2%), embora ele ainda apresente alta dependência do tamanho dos checkpoints salvos.
|
117 |
Modelagem e simulação de protocolos de comunicaçãoCosta, Mateus Conrad Barcellos da 18 December 1995 (has links)
Orientador: Walter da Cunha Borelli / Dissertação (mestrado) - Universodade Estadual de Campinas, Faculdade de Engenharia Eletrica / Made available in DSpace on 2018-07-21T02:01:36Z (GMT). No. of bitstreams: 1
Costa_MateusConradBarcellosda_M.pdf: 7022396 bytes, checksum: 0b4917194abe5582c76fe93766c050f8 (MD5)
Previous issue date: 1995 / Resumo: Com o intuito de cooperar para o desenvolvimento de ferramentas de auxilio ao projeto de sistemas concorrentes e distribuídos, particularmente sistemas de telecomunicações, esta dissertação apresenta a proposta de um simulador para a verificação por acompanhamento de sistemas computacionais baseados em processos comunicantes. O simulador, baseado em modelos de estados e transições, utiliza como estrutura interna de simulação um modelo de rede de Petri de alto Nível. O modelo de rede Petri utilizado para a estrutura do simulador incorpora características das redes de Petri de Predicados e Transições (P/T nets) e das redes de Petri Numéricas. A aplicação do simulador está particularmente voltada para a verificação de especificações SDL, o que implicou no estabelecimento de regras e esquemas de modelagem para a transformação das especificações SDL para o modelo de RP proposto e utilizado como base para implementação do simulador / Abstract: In order to cooperate to the development of computer aid tools for the design of concurrent distributed systems (e.g., telecommunication systems), this dissertation presents a project of a simulator for trace verification of communicating process based systems. The simulator, basedon the State- Transition model, uses as its internal structure a suggested model of high level Petri net derived from the P/T and Numerical Petri nets models. Its aplication is more concerned to the simulation of SDL specifications and a set of tranform rules to the modelling of SDL specifications to the Petri Net model, were established. / Mestrado / Mestre em Engenharia Elétrica
|
118 |
Sobre a modelagem e dinamica de estruturas flexiveis de rastreamento (pequenas e grandes deflexões)Fenili, Andre 26 February 1997 (has links)
Orientador: João Mauricio Rosario / Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Mecanica / Made available in DSpace on 2018-07-22T12:11:24Z (GMT). No. of bitstreams: 1
Fenili_Andre_M.pdf: 10886441 bytes, checksum: e02c936e350afaabc08b309385e4d2ea (MD5)
Previous issue date: 1997 / Resumo: Neste trabalho desenvolve-se dois modelos para estruturas flexíveis de rastreamento de membro único: um modelo para pequenas deflexões e um modelo para grandes deflexões. Tanto para um modelo quanto para o outro, utilizou-se o Princípio de Hamilton Estendido para se obter as equações dinâmicas do movimento. Estas equações são posteriormente adimensionalizadas de tal forma que um pequeno parâmetro adimensional de perturbação 'PERTENCE¿ possa ser obtido. Este parâmetro irá multiplicar todas as não linearidades de cada modelo e será o único parâmetro a se variar quando se pretende estudar casos diversos. Este pequeno parâmetro adimensional é utilizado para se verificar o grau de acoplamento entre as equações dinâmicas do movimento. Simulações são realizadas entre pequenas e grandes deflexões e comparadas enter si e com o modelo para o mesmo sistema aonde não se considera flexibilidade nenhuma. No estudo do comportamento da estrutura flexível de rastreamento realizado neste trabalho, o truncamento para a discretização das equações do movimento (método dos modos assumidos) deu-se no primeiro modo próprio do sistema viga engastada-livre / Abstract: In this work two models are developed to slewing flexible structures with just one link: a model considering small deflections and a model considering great deflections. For both models, the Extended Hamilton's PrincipIe is utilized so one can obtain the goveming euqations o fmotion. This equations are then nondimensionalized so one can obtain a smalI nondimensional perturbation parameter 'PERTENCE¿. This parameter appears multiplying alI the nonlinearities in each model and will be the only parameter one must variate when involved in the study of different cases. This smalI nondimensional parameter is utilized to verify the degrre of coupling between the dinamical equations of motion. Simulations are realized between smalI and great deflections and compared one with another and with the model to the very same system where no flexibility is considered. In the study of the behavior of the flexible structure in slewing motion realized in this work, the truncation utilized for the discretization of the equations of motion (assumed modes method) is done in the first mode of vibration of the system beam constrained-free / Mestrado / Mecanica dos Solidos / Mestre em Engenharia Mecânica
|
119 |
Kards : ambiente para desenvolvimento de aplicações inteligentes para o gerenciamento das atividades de um ambiente especializadoRebello, Marcos Paulo Ferreira 30 July 1997 (has links)
Orientadores: Armando Freitas da Rocha / Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Eletrica e de Computação / Made available in DSpace on 2018-07-22T18:29:00Z (GMT). No. of bitstreams: 1
Rebello_MarcosPauloFerreira_M.pdf: 8687702 bytes, checksum: 4750d6cba3eaf0e1362f1464c0d20b23 (MD5)
Previous issue date: 1997 / Resumo: O Kards tem como objetivo ser um ambiente para programação inteligente de atividades em um ambiente especializado onde se utilize um conhecimento específico. Desenvolvido como um sistema para processamento de Linguagens Formais Nebulosas suportado pelo conceito de Sistema Distribuído, onde agentes primitivos se encarregam da implementação das propriedades básicas do sistema e agentes complexos são criados como equipes de agentes primitivos para processar uma Linguagem Formal Nebulosa. Esta Linguagem Formal Nebulosa é aquela requerida para implementar uma aplicação específica, isto é, aquela utilizada para processar o conhecimento especializado que define uma aplicação. As sentenças desta Linguagem Formal Nebulosa são armazenadas na base de dados sob uma sintaxe de redes. O sistema Kards possui ferramentas para: a) implementação e manuseio de bases de dados; b) representação do conhecimento especializado através de redes de processamento e redes de raciocínio; c) simulação do raciocínio especializado através da navegação das redes de raciocínio; d) aquisição sensorial de dados através de sistemas de conversão analógico-digital, scanner e mesa digitalizadora, e) reconhecimento sensorial de padrões através de paradigmas de aprendizado e reconhecimento sintático de padrões; f) aprendizado e processamento do jargão utilizado para comunicação em ambientes especializados; g) atuação inteligente no ambiente externo dentro dos paradigmas de controle nebuloso através do uso de conversão digital-analógico.O Kards é um sistema auto-referenciado, pois utiliza a própria sintaxe do sistema para descrever suas estruturas básicas. É apresentado um exemplo de aplicação na área de engenharia de petróleo / Abstract: KARDS provides a computational environment for intelligent programming of activities supported by expert knowledge. It is a tool for Fuzzy Formal Language processing using the paradigm of Distributed Processing Systems, where primitive agents are in charge of handling the basic system's basic rules and complex agents are created as teams of these primitive agents in charge of processing a given Fuzzy Formal Language. This language is the one required to implement the desired application, that is the one supporting the expert knowledge used in the application. The sentences of this Fuzzy Formal Language compose a Data Base and a network syntax is used for storing purpose. The systems provides tools for a) Data Base handling and implementation; b) knowledge representation by means of processing and reasoning networks; c) expert knowledge simulation by means of network navigation; d) sensory data acquisition from A/D devices, scanners and tablets; e) sensory pattern recognition by means of syntactical and network paradigms; f) learning and processing the restricted language (jargon) used in the expert environment, and g) intelligent action over the external environment using the paradigm of fuzzy control. KARDS is a self-referred system, because it takes profit of its own syntax to represent its basic structures. An example of application in the oil industry is presented. / Mestrado / Mestre em Engenharia Elétrica
|
120 |
Ambiente baseado em componentes para o desenvolvimento de sistemas computacionais microcontrolados distribuídosVillela, Cláudio Vianna January 2001 (has links)
A modelagem e desenvolvimento de sistemas embarcados ("embedded systems") de forma distribuída, tende a ser uma tarefa extremamente complexa, especialmente quando envolve sistemas heterogêneos e sincronização de tarefas. Com a utilização do modelo de componentes de software é possível descrever, de uma forma simplificada, todos os elementos de distribuição e de comunicação para este tipo de sistemas. Neste sentido, a especificação de uma ferramenta capaz de auxiliar na modelagem e no desenvolvimento deste tipo de aplicação, certamente irá tornar o trabalho mais simples. Esta dissertação inicia por uma análise comparativa entre as tecnologias passíveis de serem utilizadas na definição de sistemas distribuídos heterogêneos, focando-se principalmente nas metodologias de modelagem, e nos mecanismos e middlewares de comunicação. Dos conceitos formados a partir desta análise é descrita uma ferramenta, baseada em componentes de software. A ferramenta é uma extensão do projeto SIMOO-RT, onde foram adicionados os conceitos de componente de software, biblioteca de componentes e diagrama de implantação. Além disso, foram realizadas modificações no sistema de geração de código, para dar suporte aos novos conceitos da ferramenta. A dissertação termina com a descrição de alguns estudos de caso utilizados para validar a ferramenta.
|
Page generated in 0.0698 seconds