91 |
Utilização de modelos de falhas na metodologia dos observadores de estado para detecção de trincas em sistemas contínuosAraujo, Marco Anderson da Cruz [UNESP] 18 March 2005 (has links) (PDF)
Made available in DSpace on 2014-06-11T19:27:14Z (GMT). No. of bitstreams: 0
Previous issue date: 2005-03-18Bitstream added on 2014-06-13T19:14:29Z : No. of bitstreams: 1
araujo_mac_me_ilha.pdf: 1330850 bytes, checksum: 25dd9210500f7395c9f2891f717017d6 (MD5) / Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq) / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES) / Hoje em dia um dos fatores de interesse das indústrias no desenvolvimento de novas técnicas de detecção e localização de falhas é a preocupação com a segurança de seus sistemas, tendo-se a necessidade de supervisão e monitoramento de modo que a falha seja detectada e corrigida o mais rápido possível. Verifica-se na prática que determinados parâmetros dos sistemas podem variar durante o processo, devido a características específicas ou o desgaste natural de seus componentes. Sabe-se também que, mesmo nos sistemas bem projetados, a ocorrência de trincas em alguns componentes pode provocar perdas econômicas ou conduzir a situações perigosas. Os observadores de estado podem reconstruir os estados não medidos do sistema, desde que o mesmo seja observável, tornando possível, desta forma, estimar as medidas nos pontos de difícil acesso. A técnica dos observadores de estado consiste em desenvolver um modelo para o sistema em análise e comparar a estimativa da saída com a saída medida, a diferença entre os dois sinais presentes resulta em um resíduo que é utilizado para análise. Neste trabalho foi montado um banco de observadores associado a um modelo de trinca de modo a acompanhar o progresso da mesma. Os resultados obtidos através de simulações computacionais em uma viga engastada discretizada pela técnica dos... . / Nowadays a main factor of interest in industries in the development of new techniques for detection and localization of faults it is the concern with the security of its systems. The need for supervising and monitoring is to detect and correct the fault as fastest as possible. It is verified, practically, that some determined parameters of the systems can vary during the process, due the specific characteristics or the natural wearing of its components. It is known that even in well-designed systems the occurrence of cracks in some components can provoke economic losses or lead to dangerous situations. The state observers methodology can reconstruct the unmeasured states of the system, since that it is observable, becoming possible in this way to esteem the measures for points of difficult access. The technique of state observers consists of developing a model for the system under analysis and to compare the estimate of exit with the measured exit, the difference between these two signals results in a residue that is used for analysis. In this work was assembled a bank of observers associated to a model of crack in order to follow its progress. The results gotten through computational simulations in a cantilever beam discretized by using the technique of finite elements and carried through experimental... (Complete abstract click electronic address below).
|
92 |
Técnicas de tolerância a falhas aplicadas a redes intra-chipFochi, Vinicius Morais January 2015 (has links)
Made available in DSpace on 2015-06-17T02:04:12Z (GMT). No. of bitstreams: 1
000470587-Texto+Completo-0.pdf: 6163395 bytes, checksum: b88f0389d39c7cc7f197b32966e6fe29 (MD5)
Previous issue date: 2015 / The continuous development of the transistor technology has enabled hundreds of processors to work interconnected by a NoC (network-on-chip). Nanotechnology has enabled the development of complex systems, however, fault vulnerability also increased. The literature presents partial solutions for fault tolerance issues, targeting parts of the system. An important gap in the literature is an integrated method from the router-level fault detection to the correct execution of applications in the MPSoC. The main goal of this dissertation is to present a fault-tolerant method from the physical layer to the transport layer. The MPSoC is modeled at the RTL level using VHDL. This work proposes fault tolerance techniques applied to intra-chip networks. Related work on fault tolerance at a systemic level, router level, link level and routing algorithms are studied. This work presents the research and development of two techniques: (i) protocols to enable the correct communication between task with partial degradation of the link enabling the router to operate even with faulted physical channels; (ii) test recovery method and of the router. This Dissertation considers permanent and transient faults. The HeMPS platform is the reference platform to evaluate the proposed techniques, together with a fault injection campaign where up to five random failures were injected simultaneously at each simulated scenario. Two applications were used to evaluate the proposed techniques, MPEG encoder and a synthetic application, resulting in 2,000 simulated scenarios. The results demonstrated the effectiveness of the proposal, with most scenarios running correctly with routers operating in degraded mode, with an impact on the execution time below 1%, with a router area overhead around 30%. / O contínuo desenvolvimento na tecnologia de transistores possibilitou que centenas de processadores trabalhassem interconectados por NoCs (network-on-chip). A nanotecnologia permitiu o desenvolvimento de complexos sistemas, porém a vulnerabilidade a falhas também aumentou. A literatura apresenta soluções parciais para o tema de tolerância a falhas, tendo como alvo partes do sistema. Uma importante lacuna na literatura é um método integrado para detecção de falhas do nível do roteador até a correta execução das aplicações em MPSoC reais. O objetivo principal desta dissertação é apresentar um método com tolerância a falhas da camada física até a camada de transporte. O MPSoC é modelado em nível de RTL, usando VHDL.O presente trabalho propõe técnicas de tolerância a falhas aplicadas a redes intrachip. São estudadas técnicas de tolerância a falhas em nível sistêmico, nível do roteador, nível de enlace e algoritmos de roteamento tolerante a falhas. Este trabalho apresenta a pesquisa e o desenvolvimento de duas técnicas: (i) protocolos para permitir a correta transmissão dos dados com degradação parcial do enlace, de forma a permitir que o roteador opere mesmo com canais físicos falhos; (ii) método de teste e recuperação do roteador. O modelo de falhas utilizado nesta Dissertação é de falhas permanentes e transientes. Para avaliar as técnicas propostas, foi utilizada a plataforma HeMPS, juntamente com uma campanha de injeção de falhas onde até cinco falhas aleatórias foram injetadas nos canais de comunicação entre os roteadores simultaneamente em cada cenário. Foram utilizadas duas aplicações para avaliar as técnicas: codificador MPEG e uma aplicação sintética, com um total de 2,000 cenários simulados. Os resultados demonstram a efetividade da proposta, com a maioria dos cenários executando corretamente com roteadores operando em modo degradado, com um impacto no tempo de execução abaixo de 1% e um aumente do área de 30% no roteador.
|
93 |
Integration of a multi-agent system into a robotic framework: a case study of a cooperative fault diagnosis applicationMorais, Márcio Godoy January 2015 (has links)
Made available in DSpace on 2015-11-20T01:15:11Z (GMT). No. of bitstreams: 1
000476244-Texto+Completo-0.pdf: 569 bytes, checksum: 79838a20b7c104bffe3bdf660f64ba28 (MD5)
Previous issue date: 2015 / Programming multi-robot autonomous systems can be extremely complex without appropriate software development techniques to abstract hardware faults, as well as can be hard to deal with the complexity of software required the coordinated autonomous behavior. Real environments are dynamic and unexpected events may occur, leading a robot to unforeseen situations or even fault situations. This work presents a method of integration of Jason multi-agent system into ROS robotic framework. Through this integration, can be easier to describe complex missions by using Jason agent language and its resources, as well as abstracting hardware details from the decision-taken process. Moreover, software modules related to the hardware control and modules which have a high CPU cost are separated from the planning and decision-taken process in software layers, allowing plan and software modules reuse in different missions and robots. Through this integration, Jason resources such as plans reconsideration and contingency plans can be used in a way where they can enable the robot to reconsider its actions and strategies in order to reach its goals or to take actions to deal with unforeseen situations due the environment unpredictability or even some robot hardware fault. The presented integration method also allows the cooperation between multiple robots through a standardized language of communication between agents. The proposed method is validated by a case study applied in real robots where a robot can detect a fault in its hardware and diagnose it through the help of another robot, in a highly abstract method of cooperative diagnosis. / A programação de sistemas autônomos multi-robô pode ser extremamente complexa sem o uso de técnicas de desenvolvimento de software apropriadas à abstração de características de hardware, assim como pode ser difícil lidar com a complexidade de software necessária ao comportamento autônomo coordenado. Ambientes reais são dinâmicos e eventos inesperados podem ocorrer, levando um robô a situações não previstas ou até mesmo situações de falha. Este trabalho apresenta um método de integração do sistema multi-agente Jason com o framework robótico ROS. Através desta integração, missões complexas podem ser mais facilmete descritas tendo em vista o uso da linguagem de agentes e seus recursos, bem como a abstração de detalhes de hardware do processo de tomada de decisão. Além disso, módulos de software vinculados ao controle do hardware e módulos com alto consumo de recurso de CPU são separados das rotinas de planejamento e tomada de decisão através de camadas de software, possibilitando o reuso de planos e módulos de software em diferentes missões e robôs. Através desta integração, recursos do sistema multi-agente, tais como a reconsideração de planos e planos de contingência, podem ser utilizados de forma a permitir que o robô reavalie suas ações e estratégias a fim de atingir seus objetivos ou tome ações de forma a lidar com situações imprevistas diante da dinamicidade do ambiente ou quando falhas são detectadas no hardware do robô. A integração permite ainda a cooperação entre múltiplos robôs através de uma linguagem de comunicação padronizada entre agentes. O método proposto é validado através de um estudo de caso aplicado a robôs reais onde um robô pode detectar falhas em seu hardware e diagnosticá-las através da ajuda de outro robô, em um método cooperativo de diagnóstico altamente abstrato.
|
94 |
JFAULT: tolerância a falhas transparente utilizando reflexão e compilação dinâmica no modelo de meta-níveisScherer, Marcio Gustavo Gusmão January 2015 (has links)
Made available in DSpace on 2015-05-05T02:01:38Z (GMT). No. of bitstreams: 1
000467903-Texto+Completo-0.pdf: 2071415 bytes, checksum: 7b9c07b7d2604d46d4b4ea8d6c7bbfac (MD5)
Previous issue date: 2015 / Fault tolerance has become an important mean to achieve high availability in computational systems. However, building fault tolerant architectures is not a trivial task. Reflection in Meta-level architectures has been used for years as a mean for implementation of nonfunctional requirements. In this way it is possible to have a clear separation of its implementation from the implementation of the business logic itself (functional requirements) in layers or levels. These levels have become known, respectively, as base-level and metalevel and are regularly used in nowadays systems’ architecture since they bring several benefits such as increased reuse and reduced complexity, furthermore, they provide better responsibilities separation among systems’ components. On the other hand, if the meta-level is a useful architecture artifice there is still the need to build the meta-level components that intend to handle fault tolerance in application’s services, the components need to be implemented and integrated to the system’s architecture, which involves some development effort and complexity. This work presents a proposal to build, automatically and in runtime, the meta-level components for fault tolerance handling in application’s services. More precisely, it intends to propose a framework – named JFault – which using reflection and dynamic compilation will leverage those requirements transparently and with minor changes in the system. The framework is implemented in Java, language that supports both reflection and dynamic compilation, but could be built in any programming language that supports such APIs. / Tolerância a falhas tornou-se um importante meio para se garantir alta disponibilidade de sistemas computacionais. No entanto, a construção de arquiteturas tolerantes a falhas não é uma tarefa trivial. Reflexão em arquiteturas de meta-nível tem sido usada há anos como um meio para implementação de requisitos não-funcionais. Dessa forma é possível ter uma separação clara e em níveis entre a implementação da lógica de negócios do sistema (requisitos funcionais) e as relacionadas ao uso da aplicação em termos de desempenho, usabilidade, segurança, disponibilidade, etc (não funcionais). Estes níveis se tornaram conhecidos na literatura, respectivamente, como nível-base e meta-nível e são frequentemente utilizados em sistemas hoje em dia visto que trazem vários benefícios como aumento de reuso de código e redução de acoplamento entre os elementos da arquitetura, além de trazer uma melhor divisão de responsabilidades entre os componentes do sistema. Por outro lado, se as arquiteturas de meta-nível se tornaram um artifício útil, existe a necessidade de se implementar os componentes de meta-nível responsáveis pela criação de serviços tolerantes a falhas, o que envolve esforço de desenvolvimento, adaptações no sistema e geralmente adiciona certa complexidade à arquitetura. Este trabalho apresenta uma proposta de construir, de forma automática e em tempo de execução, os componentes de meta-nível para tolerância a falhas em serviços de aplicações. Mais precisamente, pretende propor um framework – chamado JFault - que usando reflexão e compilação dinâmica se propõe a preencher esse requisito de forma transparente e com pequenas alterações no sistema. O framework é implementado em Java, linguagem que suporta tanto reflexão como compilação dinâmica, mas poderia ser construído em qualquer linguagem de programação que suporta tais APIs.
|
95 |
Exploring the use of multiple modular redundancies for masking accumulated faults in SRAM-based FPGAs / Explorando redundância modular múltipla para mascarar falhas acumuladas em FPGAs baseados em SRAMOlano, Jimmy Fernando Tarrillo January 2014 (has links)
Os erros transientes nos bits de memória de configuração dos FPGAs baseados em SRAM são um tema importante devido ao efeito de persistência e a possibilidade de gerar falhas de funcionamento no circuito implementado. Sempre que um bit de memória de configuração é invertido, o erro transiente será corrigido apenas recarregando o bitstream correto da memória de configuração. Se o bitstream correto não for recarregando, erros transientes persistentes podem se acumular nos bits de memória de configuração provocando uma falha funcional do sistema, o que consequentemente, pode causar uma situação catastrófica. Este cenário se agrava no caso de falhas múltiplas, cuja probabilidade de ocorrência é cada vez maior em novas tecnologias nano-métricas. As estratégias tradicionais para lidar com erros transientes na memória de configuração são baseadas no uso de redundância modular tripla (TMR), e na limpeza da memória (scrubbing) para reparar e evitar a acumulação de erros. A alta eficiência desta técnica para mascarar perturbações tem sido demonstrada em vários estudos, no entanto o TMR visa apenas mascarar falhas individuais. Porém, a tendência tecnológica conduz à redução das dimensões dos transistores o que causa o aumento da susceptibilidade a falhos. Neste novo cenário, as falhas multiplas são mais comuns que as falhas individuais e consequentemente o uso de TMR pode ser inapropriado para ser usado em aplicações de alta confiabilidade. Além disso, sendo que a taxa de falhas está aumentando, é necessário usar altas taxas de reconfiguração o que implica em um elevado custo no consumo de potência. Com o objetivo de lidar com falhas massivas acontecidas na mem[oria de configuração, este trabalho propõe a utilização de um sistema de redundância múltipla composto de n módulos idênticos que operam em conjunto, conhecido como (nMR), e um inovador votador auto-adaptativo que permite mascarar múltiplas falhas no sistema. A principal desvantagem do uso de redundância modular é o seu elevado custo em termos de área e o consumo de energia. No entanto, o problema da sobrecarga em área é cada vez menor devido à maior densidade de componentes em novas tecnologias. Por outro lado, o alto consumo de energia sempre foi um problema nos dispositivos FPGA. Neste trabalho também propõe-se um modelo para prever a sobrecarga de potência causada pelo uso de redundância múltipla em FPGAs baseados em SRAM. A capacidade de tolerar múltiplas falhas pela técnica proposta tem sido avaliada através de experimentos de radiação e campanhas de injeção de falhas de circuitos para um estudo de caso implementado em um FPGA comercial de tecnologia de 65nm. Finalmente, é demostrado que o uso de nMR em FPGAs é uma atrativa e possível solução em termos de potencia, área e confiabilidade medida em unidades de FIT e Mean Time between Failures (MTBF). / Soft errors in the configuration memory bits of SRAM-based FPGAs are an important issue due to the persistence effect and its possibility of generating functional failures in the implemented circuit. Whenever a configuration memory bit cell is flipped, the soft error will be corrected only by reloading the correct configuration memory bitstream. If the correct bitstream is not loaded, persistent soft errors can accumulate in the configuration memory bits provoking a system functional failure in the user’s design, and consequently can cause a catastrophic situation. This scenario gets worse in the event of multi-bit upset, whose probability of occurrence is increasing in new nano-metric technologies. Traditional strategies to deal with soft errors in configuration memory are based on the use of any type of triple modular redundancy (TMR) and the scrubbing of the memory to repair and avoid the accumulation of faults. The high reliability of this technique has been demonstrated in many studies, however TMR is aimed at masking single faults. The technology trend makes lower the dimensions of the transistors, and this leads to increased susceptibility to faults. In this new scenario, it is commoner to have multiple to single faults in the configuration memory of the FPGA, so that the use of TMR is inappropriate in high reliability applications. Furthermore, since the fault rate is increasing, scrubbing rate also needs to be incremented, leading to the increase in power consumption. Aiming at coping with massive upsets between sparse scrubbing, this work proposes the use of a multiple redundancy system composed of n identical modules, known as nmodular redundancy (nMR), operating in tandem and an innovative self-adaptive voter to be able to mask multiple upsets in the system. The main drawback of using modular redundancy is its high cost in terms of area and power consumption. However, area overhead is less and less problem due the higher density in new technologies. On the other hand, the high power consumption has always been a handicap of FPGAs. In this work we also propose a model to prevent power overhead caused by the use of multiple redundancy in SRAM-based FPGAs. The capacity of the proposal to tolerate multiple faults has been evaluated by radiation experiments and fault injection campaigns of study case circuits implemented in a 65nm technology commercial FPGA. Finally we demonstrate that the power overhead generated by the use of nMR in FPGAs is much lower than it is discussed in the literature.
|
96 |
Cognitive, emotional, and behavioral reactions to service failuresPacheco, Natália Araújo January 2016 (has links)
Devido à natureza onipresente das falhas de serviço e suas consequências nocivas, é importante compreender como os clientes reagem a elas. Esta tese de doutorado explora algumas das reações cognitivas, emocionais e comportamentais dos clientes em relação a falhas de serviço. De maneira mais específica, a tese investiga atribuições causais, avaliações e controle percebido dos clientes como reações cognitivas, assim como uma ampla variedade de reações emocionais (p.ex., arrependimento, raiva, decepção, etc.) e comportamentais (p.ex., troca, reclamação, boca-a-boca negativo, entre outros). Esta tese apresenta três diferentes pesquisas dentro do escopo de reações do cliente a falhas de serviço. A primeira pesquisa traz o modelo temporal de controle percebido da psicologia para a área de serviços e compara o seu poder de explicar reações emocionais e comportamentais do cliente com o poder explanatório dos modelos de atribuição e de avaliação amplamente utilizados. Três surveys e um experimento são realizados. Os resultados mostram que, para algumas reações dos clientes (p.ex., arrependimento e troca), o modelo temporal de controle percebido tem poder explanatório superior ao poder dos modelos de atribuição causal e de avaliação tradicionalmente utilizados. Esta pesquisa também demonstra que o modelo temporal de controle percebido pode ser combinado aos modelos de atribuição causal e de avaliação para atingir maior poder explanatório. A segunda pesquisa investiga se falhas em serviços coproduzidos levam a uma atribuição causal mais interna ou externa (i.e., se a culpa é atribuída ao cliente ou ao prestador de serviço) e como isto afeta arrependimento, decepção e insatisfação do cliente. Dois experimentos são realizados. Os resultados indicam que falhas em serviços coproduzidos levam a uma atribuição mais interna que falhas em serviços não coproduzidos. Falhas em serviços coproduzidos também resultam em menores níveis de decepção e insatisfação sem elevar o nível de arrependimento do cliente. Os resultados também apontam que, em caso de incerteza causal (i.e., quando o cliente não está seguro sobre quem causou a falha), clientes que coproduzem sentem o mesmo alto nível de arrependimento de clientes que causaram a falha, contradizendo a literatura que afirma que incerteza causal leva à redução da intensidade emocional. A terceira pesquisa investiga se a velocidade do pensamento dos clientes afeta a atribuição de lócus causal para falhas de serviço bem como as reações emocionais e comportamentais dos clientes. Quatro experimentos são conduzidos. Os resultados sugerem que clientes que pensam mais rápido fazem atribuições causais mais externas que clientes que pensam mais devagar. Aparentemente, a velocidade do pensamento não tem efeito nas reações emocionais e comportamentais dos clientes. De acordo com os resultados, as diferenças de velocidade de pensamento que foram induzidas tendem a ter curta duração. Em geral, estas três pesquisas oferecem insights sobre algumas das coisas que os clientes pensam, como eles se sentem e agem em resposta a falhas de serviço. Implicações teóricas e gerenciais são discutidas ao final de cada pesquisa e sintetizadas no capítulo de conclusões. / Given the pervasive nature of service failures and their harmful consequences, it is important to understand how customers react to them. This doctoral dissertation addresses some of the customers’ cognitive, emotional, and behavioral reactions to service failures. More specifically, it investigates customers’ causal attributions, appraisals, and perceived control as cognitive reactions, as well as a wide range of emotional (e.g., regret, anger, disappointment, etc.) and behavioral reactions (e.g., switch, complaint, negative word-of-mouth, and others). This dissertation presents three different researches within the scope of customers’ reactions to service failure. The first research introduces the temporal model of perceived control from psychology to service research and compares its explanatory power for customer emotional and behavioral reactions with the ones of the widely used causal attribution and appraisal models. Three surveys and one experiment are conducted. The results show that for some customers’ reactions (e.g., regret and switch), the temporal model of perceived control has explanatory power over and above the traditionally used causal attribution and appraisal models. This research also shows that the temporal model of perceived control may be combined with the causal attribution and appraisal models to achieve higher explanatory power. The second research investigates whether failed co-produced services lead to more internal or external causal attribution (i.e., whether the blame is attributed to the customer or the service provider) and how it affects customers’ regret, disappointment, and dissatisfaction. Two experiments are conducted. The results indicate that failed co-produced services lead to more internal attributions than failed services that were not co-produced. Failed co-produced services also lead to lower levels of disappointment and dissatisfaction without elevating customer’s regret level. The results also show that in case of causal uncertainty (i.e., when the customer is not sure about who caused the failure), customers who co-produced experience the same high level of regret of customers who have caused the failure, contradicting the literature that states that causal uncertainty leads to reduced emotional intensity. The third research investigates whether customers’ thought speed affects causal locus attribution for services failures as well as customers’ emotional and behavioral reactions. Four experiments are conducted. The results suggest that customers who think faster make more external attributions for service failures (i.e., attribute more blame to the service provider) than customers who think slower. It seems that thought speed has no effect on customers’ emotional and behavioral reactions though. According to the results, the induced differences in thought speed tend to be short-lived. Overall, these three researches offer insights into some of the things that customers think, how do they feel and act in response to service failures. Theoretical and managerial implications are discussed at the end of each research and recapitulated in the conclusions chapter.
|
97 |
"Ambiente para Minimização do Impacto de Falhas para Aplicações Paralelas"José Luis Zem 26 September 2005 (has links)
Os sistemas paralelos são importantes pois permitem concentrar recursos computacionais como processadores, memórias e dispositivos de E/S para solucionar problemas computacionais que necessitam de uma grande quantidade destes mesmos recursos e em um tempo de execução aceitável. Tradicionalmente, o tempo, a capacidade e o custo do processamento para se resolver estes problemas computacionais utilizando-se aplicações seqüênciais podem ser proibitivos e isto acaba criando um contexto propício para se utilizar aplicações paralelas. Em razão de ser composto por muitas partes, um sistema distribuído está sujeito a falhas em seu subsistema de comunicação, em seus processadores, em suas aplicações entre outros componentes. Desta maneira, as aplicações paralelas, ao utilizarem os sistemas distribuídos, têm suas partes executadas em paralelo pelos recursos distribuídos. Em razão de cada um destes recursos ser um possível ponto de falha, as aplicações paralelas acabam por tornarem-se mais susceptíveis à ocorrência de falhas e, conseqüentemente, à interrupção de suas execuções. Quando estas aplicações paralelas são interrompidas, todo o processamento realizado e o tempo gasto para tal são desperdiçados, pois as aplicações devem ser reinicializadas. Para minimizar estes desperdícios de tempo e processamento é apresentado neste trabalho um ambiente de monitoramento e execução que fornece mecanismos para se detectar falhas da classe fail stop em aplicações paralelas executas em ambientes distribuídos ou centralizados. O ambiente em questão é denominado de AMTF (Ambiente de Monitoramento Tolerante a Falhas). O ambiente AMTF utiliza as técnicas de checkpointing/restart para armazenar e recuperar os estados dos processos e de heartbeat para verificar a continuidade de execução destes mesmos processos. Juntamente com o ambiente AMTF é disponibilizada uma biblioteca a ser utilizada pelo desenvolvedor de aplicações paralelas, sendo que a mesma oferece a liberdade de se indicar no código-fonte da aplicação o ponto e o momento que se deseja que o contexto da aplicação seja armazenado para uma possível recuperação além de sua periodicidade para os registros automáticos.
|
98 |
Implementação de mecanismo de sincronismo virtual: experiência com JavaSilva, Robson Soares January 2002 (has links)
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.
|
99 |
Firmament : um módulo de injeção de falhas de comunicação para linuxDrebes, Roberto Jung January 2005 (has links)
A execução de testes é um passo essencial na adoção de novos protocolos de comunicação e sistemas distribuídos. A forma com que estes se comportam na presença de falhas, tão comuns em ambientes geograficamente distribuídos, deve ser conhecida e considerada. Testes sob condições de falha devem ser realizados e as implementações devem trabalhar dentro de sua especificação nestas condições, garantindo explicitamente o funcionamento dos seus mecanismos de detecção e recuperação de erros. Para a realização de tais testes, uma técnica poderosa é a injeção de falhas. Ferramentas de injeção de falhas permitem ao projetista ou engenheiro de testes medir a eficiência dos mecanismos de um sistema antes que o mesmo seja colocado em operação efetiva. Este trabalho apresenta o projeto, desenvolvimento e teste do injetor de falhas FIRMAMENT. Esta ferramenta executa, dentro do núcleo do sistema operacional, microprogramas, ou faultlets, sobre cada mensagem processada para a emulação de situações de falha de comunicação, utilizando uma abordagem de scripts. A ferramenta é implementada como um módulo de núcleo do sistema operacional Linux, tendo acesso total aos fluxos de entrada e saída de pacotes de forma limpa e não intrusiva, permitindo o teste de sistemas baseados nos protocolos IPv4 e IPv6. Seu desempenho é significativo, já que a ferramenta evita que os mecanismos de injeção de falhas sejam invocados nos fluxos que não sejam de interesse aos testes, bem como dispensa a cópia de dados dos pacotes de comunicação a serem inspecionados e manipulados. A aplicabilidade da ferramenta, dada pela sua facilidade de integração a um ambiente de produção, é conseqüência de sua disponibilidade como um módulo de núcleo, podendo ser carregada como um plugin em um núcleo não modificado. As instruções por FIRMAMENT suportadas lhe dão alto poder de expressão dos cenários de falhas. Estas instruções permitem a inspeção e seleção de mensagens de forma determinística ou estatística. Além disso, fornecem diversas ações a serem realizadas sobre os pacotes de comunicação e sobre as variáveis internas do injetor, fazendo-o imitar o comportamento de falhas reais, como descarte e duplicação de mensagens, atraso na sua entrega e modificação de seu conteúdo. Estas características tornam a ferramenta apropriada para a realização de experimentos sobre protocolos e sistemas distribuídos.
|
100 |
Uma extensão do protocolo CAN para aplicações críticas em sistemas distribuídosCarvalho, Fabiano Costa January 2006 (has links)
Sistemas computacionais de tempo-real são tipicamente construídos a partir de primitivas de sincronização que fornecem uma noção do tempo no objetivo de coordenar a execução múltiplos fluxos de instruções em um processador. Quando o processamento é centralizado, a base de tempo destas primitivas é extraída do oscilador local da plataforma, permitindo que as ações do sistema sejam devidamente ordenadas, respeitando restrições de tempo e causalidade. No entanto, em sistemas distribuídos o problema não pode ser resolvido desta forma em decorrência de imperfeições nos dispositivos físicos. Diferenças mínimas na freqüência de osciladores fazem com que as bases de tempo dos componentes divirjam cada vez mais ao longo do tempo, dificultando ou até mesmo impossibilitando um ordenamento consistente de eventos. Por esta razão, sincronização de relógios é um serviço de fundamental importância, sobretudo em aplicações críticas, onde os níveis de confiabilidade exigidos são mais elevados. O presente trabalho consiste na proposta e implementação de uma plataforma de comunicação otimizada para sistemas de controle distribuídos, caracterizados por uma alta regularidade no comportamento da comunicação. O objetivo é propor uma solução em baixo nível com suporte para o projeto de sistemas distribuídos no domínio de aplicações críticas. A plataforma proposta, à qual foi atribuído o nome CASCA, sigla para “Communication Architecture for Safety- Critical Applications”, é de fato uma extensão time-triggered do protocolo CAN. Acima da camada de enlace do protocolo original foram projetados mecanismos sincronização de relógios e criação inicial da base de tempo, implementados na forma de uma combinação de hardware e software. Principais características da plataforma são jitter mínimo, uma base de tempo global essencialmente distribuída e particionamento temporal. Diferentes alternativas de projeto foram consideradas, observando com maior atenção a viabilidade de prototipação em dispositivos FPGA para fins de validação e aplicação imediata em plataformas reconfiguráveis. Como forma de validação da plataforma, um sistema elementar formado por três nodos foi sintetizado com sucesso em bancada obtendo-se como resultado uma base de tempo essencialmente distribuída com precisão menor do que um micro-segundo.
|
Page generated in 0.0385 seconds