1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um...

15
1 Injeção de Falhas Técnicas e Ferramentas

Transcript of 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um...

Page 1: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

1

Injeção de FalhasTécnicas e Ferramentas

Page 2: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

2

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

Page 3: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

3

Introdução

Injeção de falhas– Detecção– Isolamentos– Recuperação

Ambiente para injeção de falhas

Page 4: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

Implementação

Hardware ou Software Escolha dependente do tipo de falha

4

Page 5: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

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

5

Page 6: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

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

6

Page 7: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

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

7

Page 8: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

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

8

Page 9: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

Ferramentas

FIST (Fault Injection System for Study of Transient Fault Effect)– Injeção de falhas transientes com e sem contato– Radiação iônica

9

Page 10: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

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

10

Page 11: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

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

11

Page 12: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

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)

12

Page 13: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

Ferramentas

Doctor (Integrated Software Fault Injection Enviroment)– Code modification (Compilação)– Time out, Software Traps (Execução)– Falhas: CPU, memória e rede

13

Page 14: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

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

14

Page 15: 1 Injeção de Falhas Técnicas e Ferramentas. 2 Introdução n Avaliação da confiabilidade de um sistema envolve o estudo de defeitos e erros n Difícil identificar/recriar.

Comparação

15