SlideShare uma empresa Scribd logo
1 de 10
Tolerância a falhas
Módulo 5
[C11,C15,T4.5] (65 p.)
1
Conteúdo
Falhas
tipos
tempo médio até falhar
em processadores

Uso de redundância
tipos
replicação ativa
replicação primary backup

Consenso na presença de falhas

2
Falhas
Um sistema falha quando não funciona de acordo com sua
especificação.
Falhas típicas:
hardware: processador, memória, dispositivo de E/S,
cabo, ...
software: erros de programação, erros de operação,
situações não previstas, ...
Objetivo de tolerância a falhas: garantir que um sistema
continue a funcionar corretamente na presença de defeitos.
Tolerância a falhas é necessária principalmente em
aplicações que requerem alta disponibilidade.
3
Tipos de falhas
Falha transiente: ocorre apenas uma vez; se a
operação é repetida, a falha desaparece. Exemplo:
falha numa transmissão usando micro-ondas
porque algum objeto obstrui temporariamente.
Falha intermitente: ocorre de maneira aleatória
e imprevisível. Exemplo: um conector com mau
contato.
Falha permanente: ocorre sempre até que o
componente seja substituído. Exemplo: um chip
queimado, erros em software.
4
Tempo médio até falhar
Exemplo:
Um componente tem uma probabilidade p de falhar em
um segundo.
A probabilidade desse componente não falhar em k
segundos consecutivos é
O tempo estimado até esse componente falhe (mean
time to failure) é

Assim, se p = 0.001 então MTF = 1000 segundos.
5
Falhas em processadores
Tipos:
Fail-silent fault (ou Fail-stop fault): um
processador com falha pára e não responde a
subsequentes requisições ou produz qualquer
resultado.
Byzantine fault: um processador com falha
continua a operar, emitindo resultados errados,
possivelmente em acordo com outros
processadores com falha, causando a impressão
de que estão todos funcionando normalmente.
6
Uso de redundância
Tipos de redundância:
Redundância de informação: bits extras são
adicionados para se recuperar de bits errados.
Redundância de tempo: uma ação é executada
e, se necessário, é executada novamente. (Útil
para falhas transientes e intermitentes.)
Redundância física: equipamento extra é
adicionado para que o sistema como um todo
tolere a falha de um ou outro componente.
Exemplo: múltiplos processadores. 7
Uso de replicação ativa
Todos os processadores são usados o tempo todo como
servidores (em paralelo) a fim de ocultar falhas
completamente.
TMR: Triple Modular Redundancy
Sistema tolerante a falhas no nível k: satisfaz sua
especificação mesmo se até k componenetes falharem
simultaneamente:
fail-silent fault: requer k+1 componenetes
byzantine fault: requer 2k+1 componentes
Requisito: todas as requisições chegam nos servidores
numa mesma ordem (atomic broadcast problem).
8
Uso de primary backup
Apenas um processador (primary) é o servidor a cada
instante. Se este falhar, um outro processador (backup) é
ativado para operar em seu lugar.
A substituição de um processador por outro não deve ser
notada pelas aplicações; somente o sistema operacional do
cliente deve notar.
Vantagens:
Mais simples: mensagens do cliente vão para apenas
um servidor (não é necessário ordenar mensagens).
Na prática, requer menos máquinas.
Desvantagem: não funciona se para Byzantine faults.
9
Consenso na presença de falhas
Exemplos: eleição de um coordenador, decisão quanto a
fazer ou não commit de uma transação, divisão de tarefas.
Primeiro caso: processadores confiáveis, mas possíveis
falhas de comunicação. Exemplo: two-army problem.
Consenso é impossível sem comunicação confiável!
Segundo caso: comunicação confiável, mas possíveis
falhas de processadores. Exemplo: Byzantine generals
problem.
Consenso é possível quando há m processadores confiáveis
somente se houver 2m+1 processadores confiáveis.
10

Mais conteúdo relacionado

Mais procurados

Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsEvandro Júnior
 
Mutexes, Monitores e Semáforos
Mutexes, Monitores e SemáforosMutexes, Monitores e Semáforos
Mutexes, Monitores e SemáforosThiago Poiani
 
Escalonamento lotérico e fração justa
Escalonamento lotérico e fração justaEscalonamento lotérico e fração justa
Escalonamento lotérico e fração justaVitor Renato
 
Sistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
Sistemas Operacionais Processos e Threads - Wellington Pinto de OliveiraSistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
Sistemas Operacionais Processos e Threads - Wellington Pinto de OliveiraWellington Oliveira
 
Apostila 5 processos e threads
Apostila 5   processos e threadsApostila 5   processos e threads
Apostila 5 processos e threadsPaulo Fonseca
 
Aula 02-processos-e-threads-tanenbaum-parte-2
Aula 02-processos-e-threads-tanenbaum-parte-2Aula 02-processos-e-threads-tanenbaum-parte-2
Aula 02-processos-e-threads-tanenbaum-parte-2Cristiano Pires Martins
 
Processos threads senai
Processos threads senaiProcessos threads senai
Processos threads senaiCarlos Melo
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: IntroduçãoAlexandre Duarte
 
Aula 12 - Escalonamento
Aula 12 - EscalonamentoAula 12 - Escalonamento
Aula 12 - Escalonamentocamila_seixas
 
Escalonamento em 3 níveis e Escalonamento por alternância circular
Escalonamento em 3 níveis e Escalonamento por alternância circularEscalonamento em 3 níveis e Escalonamento por alternância circular
Escalonamento em 3 níveis e Escalonamento por alternância circularEmmanuel Saes
 
Sistemas operacionais escalonamento de processos
Sistemas operacionais  escalonamento de processosSistemas operacionais  escalonamento de processos
Sistemas operacionais escalonamento de processosTalles Nascimento Rodrigues
 
Pipeline Técnica de processadores.
Pipeline Técnica de processadores.Pipeline Técnica de processadores.
Pipeline Técnica de processadores.Cleber Ramos
 
Algoritimos de Escalonamento
Algoritimos de EscalonamentoAlgoritimos de Escalonamento
Algoritimos de EscalonamentoJunior Cesar
 
(ACH2044) Sistemas Operacionais - Aula 10
(ACH2044) Sistemas Operacionais - Aula 10(ACH2044) Sistemas Operacionais - Aula 10
(ACH2044) Sistemas Operacionais - Aula 10Norton Trevisan Roman
 
Laboratórios do HandsOn de mbedOS - FTF Connects SP 2016
Laboratórios do HandsOn de mbedOS - FTF Connects SP 2016Laboratórios do HandsOn de mbedOS - FTF Connects SP 2016
Laboratórios do HandsOn de mbedOS - FTF Connects SP 2016André Curvello
 
3 escalonamento processos
3 escalonamento processos3 escalonamento processos
3 escalonamento processosfrteles
 

Mais procurados (20)

Processamento paralelo
Processamento paraleloProcessamento paralelo
Processamento paralelo
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e Threads
 
Mutexes, Monitores e Semáforos
Mutexes, Monitores e SemáforosMutexes, Monitores e Semáforos
Mutexes, Monitores e Semáforos
 
Escalonamento lotérico e fração justa
Escalonamento lotérico e fração justaEscalonamento lotérico e fração justa
Escalonamento lotérico e fração justa
 
Parte1a
Parte1aParte1a
Parte1a
 
Sistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
Sistemas Operacionais Processos e Threads - Wellington Pinto de OliveiraSistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
Sistemas Operacionais Processos e Threads - Wellington Pinto de Oliveira
 
Apostila 5 processos e threads
Apostila 5   processos e threadsApostila 5   processos e threads
Apostila 5 processos e threads
 
Aula 02-processos-e-threads-tanenbaum-parte-2
Aula 02-processos-e-threads-tanenbaum-parte-2Aula 02-processos-e-threads-tanenbaum-parte-2
Aula 02-processos-e-threads-tanenbaum-parte-2
 
Processos threads senai
Processos threads senaiProcessos threads senai
Processos threads senai
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: Introdução
 
Aula 12 - Escalonamento
Aula 12 - EscalonamentoAula 12 - Escalonamento
Aula 12 - Escalonamento
 
Processamento paralelo
Processamento paraleloProcessamento paralelo
Processamento paralelo
 
Escalonamento em 3 níveis e Escalonamento por alternância circular
Escalonamento em 3 níveis e Escalonamento por alternância circularEscalonamento em 3 níveis e Escalonamento por alternância circular
Escalonamento em 3 níveis e Escalonamento por alternância circular
 
Sistemas operacionais escalonamento de processos
Sistemas operacionais  escalonamento de processosSistemas operacionais  escalonamento de processos
Sistemas operacionais escalonamento de processos
 
Servidores Virtualizados
Servidores VirtualizadosServidores Virtualizados
Servidores Virtualizados
 
Pipeline Técnica de processadores.
Pipeline Técnica de processadores.Pipeline Técnica de processadores.
Pipeline Técnica de processadores.
 
Algoritimos de Escalonamento
Algoritimos de EscalonamentoAlgoritimos de Escalonamento
Algoritimos de Escalonamento
 
(ACH2044) Sistemas Operacionais - Aula 10
(ACH2044) Sistemas Operacionais - Aula 10(ACH2044) Sistemas Operacionais - Aula 10
(ACH2044) Sistemas Operacionais - Aula 10
 
Laboratórios do HandsOn de mbedOS - FTF Connects SP 2016
Laboratórios do HandsOn de mbedOS - FTF Connects SP 2016Laboratórios do HandsOn de mbedOS - FTF Connects SP 2016
Laboratórios do HandsOn de mbedOS - FTF Connects SP 2016
 
3 escalonamento processos
3 escalonamento processos3 escalonamento processos
3 escalonamento processos
 

Semelhante a 05tolerancia

Tolerancia a falhas sistema distribuído .pdf
Tolerancia a falhas sistema distribuído .pdfTolerancia a falhas sistema distribuído .pdf
Tolerancia a falhas sistema distribuído .pdfHurgelNeto
 
Sistemas Distribuídos
Sistemas DistribuídosSistemas Distribuídos
Sistemas DistribuídosRoberto Aragy
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3Universal.org.mx
 
Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)Evandro Júnior
 
Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Leinylson Fontinele
 
Trabalho tolerância a falhas e recuperação de desastres
Trabalho tolerância a falhas e recuperação de desastresTrabalho tolerância a falhas e recuperação de desastres
Trabalho tolerância a falhas e recuperação de desastresAnderson Zardo
 
Computação Manycore: Uma Arquitetura muito além do Multicore!
Computação Manycore: Uma Arquitetura muito além do Multicore!Computação Manycore: Uma Arquitetura muito além do Multicore!
Computação Manycore: Uma Arquitetura muito além do Multicore!Intel Software Brasil
 
Apostila 3 concorrência
Apostila 3   concorrênciaApostila 3   concorrência
Apostila 3 concorrênciaPaulo Fonseca
 
Programação Paralela - Threads
Programação Paralela - ThreadsProgramação Paralela - Threads
Programação Paralela - ThreadsGlaucio Scheibel
 
Aula 21 de engenharia de software -tópicos avançados
Aula   21 de engenharia de software -tópicos avançadosAula   21 de engenharia de software -tópicos avançados
Aula 21 de engenharia de software -tópicos avançadosErivelton Silva Rocha
 
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio BucciantiLinux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio BucciantiJoao Galdino Mello de Souza
 
Sistemas Distribuídos - Computação Paralela
Sistemas Distribuídos - Computação ParalelaSistemas Distribuídos - Computação Paralela
Sistemas Distribuídos - Computação ParalelaAdriano Teixeira de Souza
 
Sistemas Distribuídos - Computação Paralela - Introdução
Sistemas Distribuídos - Computação Paralela - IntroduçãoSistemas Distribuídos - Computação Paralela - Introdução
Sistemas Distribuídos - Computação Paralela - IntroduçãoAdriano Teixeira de Souza
 
Aula 2 sistemas operacionais
Aula 2 sistemas operacionaisAula 2 sistemas operacionais
Aula 2 sistemas operacionaisCarlos Melo
 
II Material de Apoio Sistemas Operacionais
II Material de Apoio Sistemas OperacionaisII Material de Apoio Sistemas Operacionais
II Material de Apoio Sistemas Operacionaisrodfernandes
 

Semelhante a 05tolerancia (20)

Tolerancia a falhas sistema distribuído .pdf
Tolerancia a falhas sistema distribuído .pdfTolerancia a falhas sistema distribuído .pdf
Tolerancia a falhas sistema distribuído .pdf
 
Sistemas Distribuídos
Sistemas DistribuídosSistemas Distribuídos
Sistemas Distribuídos
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3
 
Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)
 
TOF.ppt
TOF.pptTOF.ppt
TOF.ppt
 
Criando Aplicações Resilientes
Criando Aplicações ResilientesCriando Aplicações Resilientes
Criando Aplicações Resilientes
 
Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)
 
Trabalho tolerância a falhas e recuperação de desastres
Trabalho tolerância a falhas e recuperação de desastresTrabalho tolerância a falhas e recuperação de desastres
Trabalho tolerância a falhas e recuperação de desastres
 
Computação Manycore: Uma Arquitetura muito além do Multicore!
Computação Manycore: Uma Arquitetura muito além do Multicore!Computação Manycore: Uma Arquitetura muito além do Multicore!
Computação Manycore: Uma Arquitetura muito além do Multicore!
 
Apostila 3 concorrência
Apostila 3   concorrênciaApostila 3   concorrência
Apostila 3 concorrência
 
Programação Paralela - Threads
Programação Paralela - ThreadsProgramação Paralela - Threads
Programação Paralela - Threads
 
Aula 21 de engenharia de software -tópicos avançados
Aula   21 de engenharia de software -tópicos avançadosAula   21 de engenharia de software -tópicos avançados
Aula 21 de engenharia de software -tópicos avançados
 
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio BucciantiLinux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
Linux Real-Time e Java Real Time, um mundo sem delays! por Flávio Buccianti
 
Sistemas Distribuídos - Computação Paralela
Sistemas Distribuídos - Computação ParalelaSistemas Distribuídos - Computação Paralela
Sistemas Distribuídos - Computação Paralela
 
Sistemas Distribuídos - Computação Paralela - Introdução
Sistemas Distribuídos - Computação Paralela - IntroduçãoSistemas Distribuídos - Computação Paralela - Introdução
Sistemas Distribuídos - Computação Paralela - Introdução
 
Aula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosdsAula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosds
 
Arquitetura 8 2
Arquitetura 8 2Arquitetura 8 2
Arquitetura 8 2
 
Aula 2 sistemas operacionais
Aula 2 sistemas operacionaisAula 2 sistemas operacionais
Aula 2 sistemas operacionais
 
Modelo de falhas
Modelo de falhasModelo de falhas
Modelo de falhas
 
II Material de Apoio Sistemas Operacionais
II Material de Apoio Sistemas OperacionaisII Material de Apoio Sistemas Operacionais
II Material de Apoio Sistemas Operacionais
 

05tolerancia

  • 1. Tolerância a falhas Módulo 5 [C11,C15,T4.5] (65 p.) 1
  • 2. Conteúdo Falhas tipos tempo médio até falhar em processadores Uso de redundância tipos replicação ativa replicação primary backup Consenso na presença de falhas 2
  • 3. Falhas Um sistema falha quando não funciona de acordo com sua especificação. Falhas típicas: hardware: processador, memória, dispositivo de E/S, cabo, ... software: erros de programação, erros de operação, situações não previstas, ... Objetivo de tolerância a falhas: garantir que um sistema continue a funcionar corretamente na presença de defeitos. Tolerância a falhas é necessária principalmente em aplicações que requerem alta disponibilidade. 3
  • 4. Tipos de falhas Falha transiente: ocorre apenas uma vez; se a operação é repetida, a falha desaparece. Exemplo: falha numa transmissão usando micro-ondas porque algum objeto obstrui temporariamente. Falha intermitente: ocorre de maneira aleatória e imprevisível. Exemplo: um conector com mau contato. Falha permanente: ocorre sempre até que o componente seja substituído. Exemplo: um chip queimado, erros em software. 4
  • 5. Tempo médio até falhar Exemplo: Um componente tem uma probabilidade p de falhar em um segundo. A probabilidade desse componente não falhar em k segundos consecutivos é O tempo estimado até esse componente falhe (mean time to failure) é Assim, se p = 0.001 então MTF = 1000 segundos. 5
  • 6. Falhas em processadores Tipos: Fail-silent fault (ou Fail-stop fault): um processador com falha pára e não responde a subsequentes requisições ou produz qualquer resultado. Byzantine fault: um processador com falha continua a operar, emitindo resultados errados, possivelmente em acordo com outros processadores com falha, causando a impressão de que estão todos funcionando normalmente. 6
  • 7. Uso de redundância Tipos de redundância: Redundância de informação: bits extras são adicionados para se recuperar de bits errados. Redundância de tempo: uma ação é executada e, se necessário, é executada novamente. (Útil para falhas transientes e intermitentes.) Redundância física: equipamento extra é adicionado para que o sistema como um todo tolere a falha de um ou outro componente. Exemplo: múltiplos processadores. 7
  • 8. Uso de replicação ativa Todos os processadores são usados o tempo todo como servidores (em paralelo) a fim de ocultar falhas completamente. TMR: Triple Modular Redundancy Sistema tolerante a falhas no nível k: satisfaz sua especificação mesmo se até k componenetes falharem simultaneamente: fail-silent fault: requer k+1 componenetes byzantine fault: requer 2k+1 componentes Requisito: todas as requisições chegam nos servidores numa mesma ordem (atomic broadcast problem). 8
  • 9. Uso de primary backup Apenas um processador (primary) é o servidor a cada instante. Se este falhar, um outro processador (backup) é ativado para operar em seu lugar. A substituição de um processador por outro não deve ser notada pelas aplicações; somente o sistema operacional do cliente deve notar. Vantagens: Mais simples: mensagens do cliente vão para apenas um servidor (não é necessário ordenar mensagens). Na prática, requer menos máquinas. Desvantagem: não funciona se para Byzantine faults. 9
  • 10. Consenso na presença de falhas Exemplos: eleição de um coordenador, decisão quanto a fazer ou não commit de uma transação, divisão de tarefas. Primeiro caso: processadores confiáveis, mas possíveis falhas de comunicação. Exemplo: two-army problem. Consenso é impossível sem comunicação confiável! Segundo caso: comunicação confiável, mas possíveis falhas de processadores. Exemplo: Byzantine generals problem. Consenso é possível quando há m processadores confiáveis somente se houver 2m+1 processadores confiáveis. 10