Injeção de Falhas Técnicas e Ferramentas

Slides:



Advertisements
Apresentações semelhantes
Sistemas Distribuídos
Advertisements

Soft Errors in Advanced Computer Systems Robert Baumann (IEEE Design & Test of Computers, May-June 2005)
ENGENHARIA DE SOFTWARE Garantia de Qualidade de Software
BANCO DE DADOS Transparências baseadas no capítulo 1 do livro de KORTH e SILBERCHATZ e 1 e 2 do livro de ELMASRI e NAVATHE. Juliana Amaral e Rodrigo Baroni.
Tipos de sistemas de Lehman
Sistemas Distribuídos:Definições e Caracteristicas
Confiança.
Garantia de Qualidade do software
1º workshop TELESAL 23/11/07 Sistema de monitorização e controlo baseado em IEEE /ZigBee e TCP/GPRS. Financiado por: Sistema de Monitoria.
Ney Laert Vilar Calazans
Tolerância a falhas Módulo 5 [C11,C15,T4.5] (65 p.)
Paralelismo em nível de instrução: Arquiteturas VLIW Grupo 01: Júlia Martinez Perdigueiro ra Tatiane Baggio Borili ra
Arquiteturas Diferentes
Componentes: A Abordagem Catalysis
Avaliação de Desempenho de Sistemas Operacionais
Avaliação de Desempenho Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Marcos José
Avaliação de Desempenho
Tolerância a falhas em Sistemas Baseados em FPGAs Reconfiguráveis
Programa de Pós-Graduação em Ciência da Computação PUCRS
Porto Alegre, 5 de Outubro de 2009
Reliability verification of Digital Systems Design based on mutation Analysis Samuel S. Marczak.
Fabio Notare Martins Pontifícia Universidade Católica do Rio Grande do Sul Programa de Pós-Graduação em Ciências da Computação.
On-line Testing of Globally Asynchronous Circuits D. Shang, A
PSEUDO-ONLINE TESTING METHODOLOGIES FOR VARIOUS COMPONENTS OF FIELD PROGRAMMABLE GATE ARRAYS L. Kalyan Kumar, Aditya S. Ramani, Amol J. Mupid, V. Kamakoti*
Marcela Martins Cicilio (bolsista); Agustinho Plucenio (colaborador/
Características Básicas de CI’s Digitais
Arquitetura de Computadores
Regional Clusters and Firm Strategy
Testes de Mutação baseado no artigo de Mário Correia,
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
Projeto Final - APGS Adriana P. de Medeiros
TSDD Teste de segurança durante o desenvolvimento.
Testes – visão geral Vanilson Burégio.
REDUNDÂNCIA POR SOFTWARE
Redundant Array of Independent Drives Raid
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 02: Introdução.
Carlos Oberdan Rolim Ciência da Computação
Carlos Oberdan Rolim Ciência da Computação
ANÁLISE DE UM SISTEMA MULTI-ELETRODOS EM PROCESSOS ELETROQUÍMICOS Vinicius Flores Resumo A utilização de multi-eletrodos no estudo de processos eletroquímicos.
Centro de Controle Operacional
Fiabilidade de Sistemas Informáticos
Tolerância a Falhas em Sistemas Distribuídos
Sistemas Distribuídos Estrutura de Redes
Sistemas Distribuídos
Ferramentas de Gerenciamento Aula 3
Aula 3: Sensores.
SISTEMAS OPERACIONAIS I
Aula 1 – Introdução a Redes de Computadores
Sistemas Tolerantes a Falhas: Conceitos e Técnicas
Engenharia de Software
Testes de Software AULA 06 Eduardo Silvestri
Objetivos do Capítulo Explicar a importância da implementação de processos e tecnologias de gerenciamento de dados numa organização. Explicar as vantagens.
PROCESSOS DE FABRICAÇÃO INTRODUÇÃO AOS MOLDES DE INJEÇÃO PLÁSTICA
Sistemas Espaciais de Computadores. Introdução Definindo o Sistema –Requisitos, Arquitetura, Elementos do Sistema Estimação dos Recursos –Processamento.
Subsistema de Entrada e Saída do Kernel
Tópicos em System-Level
Especificação de Requisitos de Software
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE AULA 5
Sistemas Operacionais Aula 2 Danielle Costa
Processo e Qualidade.
Conceitos básicos Professor Esp. Diego André Sant’Ana
Universidade Federal de Pernambuco
Professora Michelle Luz
Arquitetura de computadores
Terrível contra os insetos, contra os insetos.
Copyright © 2011 Ramez Elmasri and Shamkant Navathe slide 1 Tópicos  Introdução  Um exemplo  Características da abordagem de banco de dados  Vantagens.
INPE / CAP-315 Airam J. Preto, Celso L. Mendes Aula 33 (1) Análise de Desempenho em Programas Paralelos Tópicos: Introdução Aquisição de Dados.
18/09/ /12/20082 Testes Baseados Em Modelo Diana Rúbia Paulo César Qualidade, Processos e Gestão de Software Alexandre Vasconcelos {drrr, pco,
Informação Nos últimos 30 anos do século XX, foram produzidas mais informações do que nos cinco mil anos anteriores. Nos últimos 30 anos do século XX,
Capítulo 4 Estrutura do Sistema Operacional
Transcrição da apresentação:

Injeção de Falhas Técnicas e Ferramentas

Introdução Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros Difícil identificar/recriar cenários defeituosos Abordagem baseada em experimentos Concepção Prototipação Operação Instrumentos e ferramentas para injeção de falhas Recriar cenários defeituosos Monitorar efeitos ... -No entanto em sistemas complexos é bem difícil identificar as causas de um defeito ou recriar cenários defeituosos (cenários onde o defeito se manifesta). -Uma abordagem utilizada pra identificar e entender os defeitos é baseada em experimentos. Essa abordagem pode ser aplicada em várias fases do projeto do sistema. - Essa abordagem baseada em experimentos requer instrumentos e ferramentas que possibilitem a injeção de falhas, com o intuito de recriar cenários defeituosos e a monitoração dos efeitos dos defeitos.

Introdução Injeção de falhas Ambiente para injeção de falhas Detecção Isolamentos Recuperação Ambiente para injeção de falhas A injeção de falhas testa a capacidade detecção de falhas de um sistema, capacidade de isolamentos de falhas e a recuperação do sistema após um defeito este é o ambiente típico para injeção de falhas, composto por um sistemas de injeção de falhas e um sistemas a ser testado. O sistemas de injeção de falhas é composto por...

Implementação Hardware ou Software Escolha dependente do tipo de falha Quanto a implementação, As técnicas de injeção de falhas podem ser implementadas em hardware ou software, a escolha vai depender do tipo de falha que se deseja injetar Power surge: oscilação de potência esta tabela apresenta alguns tipos de falhas, implementadas em hw e sw

Injeção de Falhas por Hardware Com contato Injetor tem contato físico com o sistema Produz alterações de tensão/corrente externas ao sistema Sem contato Injetor não tem contato físico com o sistema Fontes externas produzem fenomenos físicos causando alterações de tensão/corrente internas ao sistema Utilizando probes por exemplo inteferências eletromagneticas por exemplo

Injeção de Falhas com Contato Pin-level injection Contato direto com os pinos do chip Principais técnicas Active probes probes ligadas diretamente nos pinos do chip produzindo alteração de tensão/corrente podem danificar o chip Socket insertion suporte entre o chip e a placa que injeta falhas podem gerar falhas mais complexas como inversão de pinos e and/or de pinos -O método de injeção de falhas mais comum é o pin-level injection. Pelo fato de se estar em contato direto com o circuito, podem danificar o chip - As principais técnicas utilizadas são...

Injeção de Falhas sem Contato Fontes externas que produzem fenômenos físicos naturais Principais técnicas Radiação iônica emissão de iôns gera corrente dentro do chip Campos eltromagnéticos corrente gerada por indução eletromagnética Difíceis de controlar Ativação Localização - Essas técnicas são difíceis de controlar, pois não se pode precisar o momento de ativação da falha e nem a localização.

Ferramentas Messaline Injeção de falha com contato (pin-level injection) Active probes Socket insertion (e.g. stuck-at, open, bridging, logic) Controla a duração e a frequência das falhas injeta falhas com contato, no nível de pinos através de active probes e socket injection é controlada por um computador hospedeiro Tem controle para ativação e injeção de falhas e para a coleta do dados (feedback)

Ferramentas FIST (Fault Injection System for Study of Transient Fault Effect) Injeção de falhas transientes com e sem contato Radiação iônica Falhas sem contato são injetadas a partir de radiação iônica Aqui tem o ambiente dessa ferramenta acho q esse FISTé mais pra testar processadores Bota os 2 proc pra funcionar, injeta falhas nessa aqui, os resultados dos 2 são comparados analizados e enviados pra um compuador hospedeiro Um processador é exposto à radiação enquanto o outro é utilizado como referência para vericar se houve bit-flip

Injeção de Falhas por Software Vantagens Baixo custo (não requerem hardware extra) Flexibilidade Desvantagens Acesso limitado Alteração da estrutura original do software Sistemas alvo Aplicações Sistemas operacionais Acesso limitado:Tu não pode injetar falhas inde tu não tem acesso via sw -

Injeção de Falhas por Software Tempo de compilação Falha inserida no código fonte (e.g. > → <) Emula falhas de hardware e software Tempo de execução Time out Timer pré-programado dispara a injeção de falhas Exception/trap Baseada em eventos Code insertion Instruções que disparam a injeção de falhas A injeção de falhas por software pode ser em tempo do compilação ou tempo de execução A injeção em tempo de execução necessita de um mecanismo extra para ativar a injeção de falhas Time out: gera interrupções, dae O controle passa para a rotina de tratamento de interrupção, a qual inicia a injeção de falhas baseada em eventos: algum evento que aconteceu dispara a injeção de falhas (e.g. acesso a um determinado end de mem) Compilação: falha inserida no código Execução: trigger do injetor de falhas inserido no código.

Ferramentas Ferrari (Fault and Error Automatic Real-Time Injection) Software Traps (eventos) Falhas: CPU, memória e barramento Altera valores de registradores e posições de memória (dados corrompidos) Nessa ferramenta a injeção de falhas é disparada a partir de SW traps As falhas injetadas são de CPU, memória e barramento Tipicamente o que ela faz é alterar valores dos regs e posições de memória para emular dados corrompidos

Ferramentas Doctor (Integrated Software Fault Injection Enviroment) Code modification (Compilação) Time out, Software Traps (Execução) Falhas: CPU, memória e rede modifica do código fonte Injetando falhas em tempo de compilação E utiliza time out e sw traps em tempo de execução pra disparar a injeção de falhas

Ferramentas Xception Hardware Exception (interrupções) Injeção de falhas implementada como ISR Eventos Fetch em determinado endereço Load em determinado endereço Store em determinado endereço Time out Combinação de eventos Dispara a injeção de falhas a partir de exceções de hw

Comparação Quanto a monitoração, ela é mais difícil de ser feita em tempo de execução