11 |
F-SOFIST - uma ferramenta para teste de protocolos tolerantes a falhasAraujo, Marcos Renato Rodrigues 26 July 2018 (has links)
Orientador: Eliane Martins / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-07-26T23:50:24Z (GMT). No. of bitstreams: 1
Araujo_MarcosRenatoRodrigues_M.pdf: 8485635 bytes, checksum: 20aa4592ec5530c0d5c75585febd11ba (MD5)
Previous issue date: 2000 / Resumo: Esta dissertação discute a implementação de uma ferramenta orientada à execução de testes de protocolos de comunicação. Sua implementação foi baseada em uma arquitetura de testes denominada Ferry clip, uma arquitetura de testes desenvolvida para dar suporte à metodologia de testes da ISO. A principal contribuição deste trabalho está no desenvolvimento de uma nova arquitetura para teste de protocolos que permite injeção de falhas por software, resultando em uma ferramenta flexível e que possui um alto nível de portabilidade. / Abstract: This dissertation discusses the implementation of a tool oriented to execution of tests in communication protocols. Its implementation was based in a protocol test architecture named Ferry clip, developed to give support to ISO tests methodology. The main contribution of this work is developing a new protocol test architecture that provides software fault injection, resulting in a flexible and highly portable tool. / Mestrado / Mestre em Ciência da Computação
|
12 |
Algoritmos para sintese de sistemas embutidos tolerantes a falhas empregando reconfiguração dinamica de FPGAsSilva, Christian Farias da 03 August 2018 (has links)
Orientador: Alice Maria B. H. Tokarnia / Dissertação (mestrado) - Universidade Estadual de Campinas, Faculdade de Engenharia Eletrica e de Computação / Made available in DSpace on 2018-08-03T17:26:02Z (GMT). No. of bitstreams: 1
Silva_ChristianFariasda_M.pdf: 922587 bytes, checksum: a34c7f681e08e8f95ea8b0c13d0564d7 (MD5)
Previous issue date: 2003 / Mestrado
|
13 |
Validação de ações atomicas distribuidasRosa, Thierson Couto 21 July 1994 (has links)
Orientador: Ricardo O. Anido / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Matematica, Estatistica e Ciencia da Computação / Made available in DSpace on 2018-07-19T10:55:10Z (GMT). No. of bitstreams: 1
Rosa_ThiersonCouto_M.pdf: 7086241 bytes, checksum: f7617659cfaa4add0e67a31718cada39 (MD5)
Previous issue date: 1994 / Resumo: Neste trabalho estudamos o problema de validação de ações atômicas distribuídas e de protocolos de validação que visam resolvê-lo. Além do estudo de protocolos de validação existentes na literatura, propomos uma variação do protocolo de duas fases, denominada protocolo semibloqueante. No Capítulo 1 são apresentados o conceito de ação atômica distribuída e uma motivação para sua utilização. Também são descritas as funções básicas de um sistema gerenciador genérico de ações atômicas. No Capítulo 2 é definido um modelo de sistema distribuído. Com base neste modelo, é definido o problema de validação de ações atômicas distribuídas e são apresentados formalism?s para descrição do funcionamento de protocolos de validação em geral. São ta.mbém estudadas as condições necessárias para a existência de protocolos não-bloqueantes e de recuperação independente de processos falhos. No Capítulo 3 são estudados protocolos de validação de duas fases que visam a eficiência quanto à finalização da ação. F:stes protocolos são descritos com base em um conjunto de parâmetros definidos no início do capítulo. No Capítulo 4 são estudados protocolos de validação de duas fases que visam ser tolerantes a falhas. No início do capítulo é adotado um padrão para descrição desses protocolos: O Capítulo 5 descreve um conjunto de protocolos que não se enquadram na categoria de protocolos de duas fases. No Capítulo 6 apresentamos o protocolo semibloqueante, um protocolo intermediário entre os protocolos de duas fases e os protocolos não-bloqueantes. Durante uma execução sem falhas, o protocolo comporta-se como um protocolo bloqueante. Quando surgem falhas no sistema, o protocolo passa a funcionar como um protocolo de três fases não-bloqueante.. A Capítulo 7 finaliza o texto com alguns comentários e sugestões de trabalhos futuros / Abstract: In this work we studythe atomic actions commit problem and a set of commit protocols which aim to solve this problem. We also propose a new two-phase commit protocol, the scmiblocking commit protocol. In Chapter, 1 we give the definition of distributed atomk actions. We also present the basic definitions of a generic atomic action management system. In Chapter 2, we define a model of distributed system which is used to define the atomic action commit problem and the formalism used to describe the operation of generic commit protocols. In Chapter 3, we describe several efficient two-phase commit protocols from the literature. The. description of these protocols are based on a set of parameters which are defined at the beginning of the chapter. In Chapter 4, we describe a series of published fault-tolerant commit protocols. At the beginning of the chapter, we define a set of parameters which are used for the desQri'ptions of these protocols. Chapter 5 contains a set of protocols which do not belong to the two-phase category of commit protocols. In Chapter 6, we introduce the semiblocking commit protocol which stands between the cIass of two-phase commit protocols and that of nonblocking commit protocols. During a failure-free execution, t,he protocol behaves like a blocking commit protocol. When,ever a fault occurs in the system, the semiblocking commit protocol begins to act like a nonblocking . three-phase commit protocol. Chapter 7 cIoses the text with some comments and suggestions for future work / Mestrado / Mestre em Ciência da Computação
|
14 |
Disponibilidade em um sistema de arquivos distribuído flexível e adaptável /Carvalho, Lúcio Rodrigo de. January 2014 (has links)
Orientador: Renata Spolon Lobato / Coorientador: Aleardo Manacero Junior / Banca: Norian Marranghello / Banca: Sarita Mazzini Bruschi / Resumo: Um sistema de arquivos distribuído permite que usuários e aplicações possam armazenar e compartilhar dados, acessando tais recursos remotamente como se fossem locais. As características de um sistema de arquivos distribuído podem ser variadas. Assim, é impossível conceber um sistema abrangendo todas as características desejáveis, tais como: transparência, desempenho, escalabilidade, confiabilidade e disponibilidade, por exemplo. O sistema de arquivos distribuído Flexível e Adaptável (FlexA) incorpora importantes características do NFS, AFS, GFS e Tahoe-LAFS. Este sistema elimina a necessidade de um servidor principal (como o master no GFS ou o Introducer no Tahoe-LAFS). Os arquivos são armazenados em dois grupos de servidores: um grupo de leitura, onde somente dados são armazenados, e um grupo de escrita, onde dados e metadados são armazenados. A disponibilidade é provida por um mecanismo semelhante ao apresentado pelo Tahoe-LAFS. No presente estudo são apresentadas as melhorias alcançadas por meio da disponibilidade do FlexA. Os detalhes sobre as modificações no FlexA, bem como os resultados obtidos indicam que o FlexA é uma importante opção de sistema de arquivos distribuído / Abstract: A distributed file system allows users and applications to store and share data, accessing such resources remotely as if they were local. The characteristics of a distributed file system can be varied. Thereby, it is impossible to design a system covering all desirable characteristics, such as transparency, performance, scalability, reliability and availability, for example. The Flexible and Adaptable distributed file system (FlexA) incorporate important characteristics of NFS, AFS, GFS and Tahoe-LAFS. It eliminates the need for main server (such as the master in GFS or the introducer in Tahoe-LAFS). File storage is provided by two group of server: a reading group, where only data is found, and a writing group, where data and metadata are stored. Availability is provided in FlexA through a mechanism similar to the one presented by Tahoe-LAFS. In the present study the improvements achieved through the availability and performance of FlexA are presented. Details about the changes in the FlexA as well as the obtained results indicate that the FlexA is an important option for distributed file system / Mestre
|
15 |
Sistema de arquivos distribuído flexível e adaptávelFernandes, Silas Evandro Nachif [UNESP] 13 April 2012 (has links) (PDF)
Made available in DSpace on 2014-06-11T19:24:01Z (GMT). No. of bitstreams: 0
Previous issue date: 2012-04-13Bitstream added on 2014-06-13T20:51:10Z : No. of bitstreams: 1
fernandes_sen_me_sjrp.pdf: 941362 bytes, checksum: e0e07c896853141b27f27af08088487b (MD5) / Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES) / Com o aumento do volume de dados e a incerteza dos recursos de hardware e software, a descentralização dos dados em sistema de arquivos surgiu com a finalidade de diminuir a probabilidade de perda total desses dados. Com isso, este trabalho propõe um modelo de sistema de arquivos distribuído que incorpora características de transparência, escalabilidade, tolerância a falhas, criptografia, suporte a hardware de baixo custo, facilidade na implantação e manipulação dos arquivos / With the increasing volume of data and uncertainty of hardware and software resources, the decentralization of data in file systems came up with the aim of reducing the likelihood of total loss of such data. Thus, this paper proposes a model of distributed file systems that integrates features of transparency, scalability, fault tolerance, encryption, support for low cost hardware, easy management and handling of files
|
16 |
Analise de traço com geração de diagnostico para testes de comportamento de uma implementação de protocolo de comunicação em presença de falhasStefani, Marcio Roberto 07 May 1997 (has links)
Orientador: Eliane Martins / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-07-22T14:18:35Z (GMT). No. of bitstreams: 1
Stefani_MarcioRoberto_M.pdf: 4013807 bytes, checksum: a21d289d42f7912f7ad14bfa0e5b47c9 (MD5)
Previous issue date: 1997 / Resumo: Uma dificuldade comum aos testes de software é o problema do oráculo: como determinar se os resultados dos testes estão corretos? O oráculo é um mecanismo que analisa os resultados dos testes com base numa referência para o comportamento do softwvare. Essa referência precisa ser a mais confiável possível. Neste trabalho foi desenvolvido um método de análise de resultados para testes de comportamento e testes por injeção de falhas por software aplicados à uma implementação de protocolo de comunicação. Para representar o comportamento do protocolo, utilizou-se um modelo baseado em máquina finita de estados estendida. Foi desenvolvido também o projeto de uma ferramenta que coloca esse método em prática. Essa ferramenta de análise de resultados deve ser incorporada ao A TIFS, um Ambiente integrado de Testes baseado em Injeção de Falhas por software. O mecanismo de análise de resultados é um analisado r de traço de execução. Um traço é um histórico da execução dos testes. Com base no modelo do comportamento e no traço de execução, o analisador de traço produz as seguintes saídas: veredictos sobre as saídas produzidas por uma implementação sob teste, diagnósticos de erros e informações sobre a ativação de mecanismos de detecção de erros e tolerância a falhas. / Abstract: A common difficulty to software testing is the oracle problem: how to determine whether or not test results are correct? The oracle is a mechanism that analyses test results by using a reference for the software behavior. This reference should be as reliable as possible. In this work, it had been developed a test result analysis method for behavior tests and software fault injection tests applied to a communication protocol implementation. To represent the protocol behavior, it had been used a model based on extended finite state machine. It had been also developed a design of a tool that puts this method into practice. This test result analysis tool will be embedded in the ATIFS, an integrated test environrnent based on software fault injection. The mechanism of test result analysis is a trace analyzer. A trace is an execution history of the tests. The following outputs are produced by the trace analyzer based on the behavior model and the trace: verdicts about the outputs produced by an implementation under test, error diagnoses, and informations about activation of the error detection and fault tolerance mechanisms. / Mestrado / Mestre em Ciência da Computação
|
17 |
Implementação de sistemas tolerantes a falhas usando programação orientada a objetosPrado, Denise Piubeli 19 December 1997 (has links)
Orientador: Cecilia Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-07-23T12:24:42Z (GMT). No. of bitstreams: 1
Prado_DenisePiubeli_M.pdf: 2798230 bytes, checksum: a94abbe68c6bf4db802c4be142bb54ed (MD5)
Previous issue date: 1998 / Resumo: Este trabalho tem por objetivo desenvolver uma arquitetura orientada a objetos para dar suporte às aplicações tolerantes a falhas de software. Técnicas de orientação a objetos, tais como, abstração de dados, herança, ligação dinâmica e polimorfismo são exploradas, visando obter aplicações de software de melhor confiabilidade e qualidade. Nosso objetivo é prover um suporte para aplicações que requeiram tolerância falhas de software através de técnicas já conhecidas de diversidade de projeto, integrando essas técnicas ao mecanismo de tratamento de exceções criando assim um framework composto por componentes de software genéricos que formam uma infra-estrutura para dar suporte ao desenvolvimento de sistemas tolerantes a falhas distribuídos(FOOD) . / Abstract: The major goal of this work is to develop an object-oriented architecture for software fault-tolerant applications. Object-oriented techniques, such as data abstraction, inheritance and polymorphism are explored to improve software reliability and quality. Thus, our goal is to support software fault tolerance using design diversity, so that this support can be incorporated to the exception handling mechanism in the application. For the understanding and validation of these techniques, we have developed a fault-tolerant object-oriented distributed ftamework (FOOD). / Mestrado / Mestre em Ciência da Computação
|
18 |
Implementação de sistemas tolerantes a falhas usando programação reflexiva orientada a objetosCorrêa, Sand Luz 19 December 1997 (has links)
Orientador: Cecilia Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-07-23T12:28:59Z (GMT). No. of bitstreams: 1
Correa_SandLuz_M.pdf: 2497773 bytes, checksum: 9ad25bb50d6cb8930108dd8f3ceffbe1 (MD5)
Previous issue date: 1997 / Resumo: Este trabalho tem por objetivo desenvolver uma arquitetura orientada a objetos reflexiva para aplicações tolerantes a falhas de software. Técnicas de orientação a objetos, tais como, abstração de dados, herança e polimorfismo são exploradas, visando obter softwares de melhor confiabilidade e qualidade. Técnicas de reflexão computacional são usadas para estruturar a aplicação, separando de forma nitida os requisitos funcionais da aplicação dos requisitos pertinentes ao dominio de tolerância a falhas. Com isso, nosso objetivo é prover um suporte para tolerância a falhas de software através de técnicas já conhencidas de diversidade de projeto, de forma que este suporte seja incorporado à aplicação da forma menos intrusiva possivel, através das técnicas de reflexão computacional. Para maior entendimento e validação dessas técnicas foi desenvolvido um framework orientado a objetos reflexivo e distribuido( FOORD). / Abstract: The major goal of this work is to develop a reflective object-oriented architecture for software fault-tolerant applications. Object-oriented techniques, such as data abstraction, inheritance and polymorphism are explored to improvement of reliability and quality. Computational reflection techniques are used for structuring applications, so that functional requirements and fault-tolerant requirements can be clearly separated. Thus, our goal is to support software fault tolerance through techniques like design diversity, so that this support can be incorporated to the application in a less intruder way, through computational reflection techniques. For the understanding and validation of these techniques, we developed a reflective object-oriented distributed framework (FOORD). / Mestrado / Mestre em Ciência da Computação
|
19 |
Tratamento de exceções em sistemas concorrentes orientados a objetosGarcia, Alessandro Fabricio 26 July 2018 (has links)
Orientador: Cecilia Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-07-26T17:56:56Z (GMT). No. of bitstreams: 1
Garcia_AlessandroFabricio_M.pdf: 21354412 bytes, checksum: 0b8c34f819e7b3411e1769f90955e457 (MD5)
Previous issue date: 2000 / Resumo: Sistemas orientados a objetos confiáveis devem incorporar atividades de tratamento de exceções de forma a comportarem-se adequadamente sob uma grande variedade de situações, inclusive na presença de erros. Nesse contexto, um mecanismo de tratamento de exceções é fundamental para detecção e recuperação de erros bem como para ativação das medidas necessárias para restaurar a atividade normal do sistema. O desenvolvimento de um mecanismo de tratamento de exceções é uma tarefa difícil especialmente quando a concorrência é uma das características dos sistemas de software. O principal objetivo desta dissertação é o projeto e implementação de um mecanismo de tratamento de exceções para a construção de sistemas orientados a objetos confiáveis. Na construção do mecanismo proposto, nós utilizamos técnicas de estruturação de software, tais como reflexão computacional e padrões de projeto. Duas contribuições são consideradas principais. A primeira delas, caracterizada por aspectos técnicos e usos práticos, é o projeto e implementação de um mecanismo de exceções utilizando a linguagem de programação Java e uma' arquitetura de software reflexiva chamada Guaraná. O mecanismo proposto especialmente oferece suporte a tratamento de exceções concorrentes. A outra contribuição, caracterizada por aspectos abstratos e abordagem inovadora, é a definição de uma arquitetura de software reflexiva e um conjunto de padrões de projeto relacionados para a implementação de mecanismos de tratamento de exceções. / Abstract: Dependanble object-oriented software should incorporate exception handling activities in order to behave suitably in a great number of situations in spite of errors. In this context, an exception handling mechanism is fundamental to detect errors, and to activate the suitable measures to restore the normal activity of the system. The development of an exception handling mechanism is not a trivial task. This task is specially difficult when the software using the exception mechanism is concurrent. The main aim of this work is to propose the design and implementation of an exception handling mechanism for developing dependable object-oriented software. In order to build the proposed mechanism we apply techniques of software structuring, such as computational reflection and design patterns. The main contribution of this work is the design and implementation of an exception handling mechanism using the Java language and a reflective software architecture called Guaraná. The proposed mechanism specially supports concurrent exception handling. In addition, we define a reflective software architecture and a set of design patterns for implementing exception handling mechanisms. / Mestrado / Mestre em Ciência da Computação
|
20 |
Um sistema de padrões para injeção de falhas por softwareLeme, Nelson Guilherme Mendes 22 August 2001 (has links)
Orientadores : Eliane Martins, Cecilia Mary Fischer Rubira / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-07-28T21:35:01Z (GMT). No. of bitstreams: 1
Leme_NelsonGuilhermeMendes_M.pdf: 5349075 bytes, checksum: 294466c6a29f791fd6d78925cf3f02ff (MD5)
Previous issue date: 2001 / Resumo: O uso de sistemas computacionais tem se expandido cada vez mais. Esses sistemas vêm sendo usados em aplicações críticas, que devem dar uma resposta esperada mesmo na presença de falhas. Uma das formas encontradas de se garantir isso é testar o sistema usando Injeção de Falhas. Nesse processo são simuladas falhas e observada a resposta do sistema nessas circunstâncias. Uma das formas mais populares de se fazer isso é através de Injeção de Falhas por Software, onde um trecho especial de código, associado ao sistema sob teste, procura simular a presença de falhas. Várias ferramentas e programas que realizam Injeção de Falhas por Software já foram desenvolvidas. Entretanto, novos tipos de sistema são criados, e é difícil encontrar ferramentas para esses sistemas. Portanto, há a necessidade de se desenvolver novos programas para realizar Injeção de Falhas por Software. Uma maneira de se facilitar isso é através da criação de Padrões para desenvolver tais sistemas. Através de Padrões, pode-se descrever a arquitetura de programas de Injeção de Falhas por Software, bem como estruturas que esses programas usariam. Isso de uma maneira já determinada e independente de linguagem de programação, e dessa maneira apta a ser utilizada pelo maior número possível de desenvolvedores. Esses Padrões para Injeção de Falhas por Software, organizados na forma de um Sistema, estão expostos neste trabalho. Também é mostrada aqui a ferramenta de Injeção de Falhas JACA, criada com base nesses Padrões, não só como exemplo da aplicação dos mesmos, mas também com utilidade própria, de testar sistemas na presença de falhas / Abstract: The utilization of computing systems has increased continuos1y. That includes the increase in use of systems running in critical applications, when those systems must give an expected answer even in the presence of faults. One way of guaranteeing this is testing the system through Fault Injection. In that process, faults are simulated and the answer of the system to those conditions is observed. One of the most popular ways of doing this is using Software Fault Injection, in which a special piece of code, associated with the system under test, tries to simu1ate the presence of faults. Many too1s and programs that perfonn Software Fau1t Injection have already been deve10ped. However, new kinds of systems are being created, and there are no too1s for such systems. Therefore, there is a need of deve10pment of new programs that make Software Fau1t Injection. This process could be eased through the creation of Patterns to deve10p such programs. Through the use of Patterns, the architecture and structures used by Software Fault Injection programs could be described. And that would be done in a standard and programming 1anguage independent way, and therefore it cou1d be used by the majority af deve10pers. Those Software Fault Injection Patterns, organized in a System, are exposed in the present paper. Also, a Fault Injection Too1, JACA, is described. That too1 was designed based on the Pattern System. It is not on1y an examp1e of the imp1ementation of those Patterns in a real program, but also as Fault Injection too1 with its own usefulness, which is able to test systems in the presence of faults / Mestrado / Mestre em Ciência da Computação
|
Page generated in 0.1102 seconds