Sistemas Tolerantes a Falhas Luís Almeida Professor Auxiliar no: Dep. Electrónica e Telecomunicações Universidade de Aveiro [email protected] http://sweet.ua.pt/~lda 1 Luís Almeida, EST -IPCB, 2º semestre 2001 Objectivo da disciplina • Transmitir os conceitos de: • Dependabilidade (!) em sistemas computorizados de monitorização ou controlo • defeito, erro e falha • Identificar os vários componentes da Dependabilidade: • Prevenção, tolerância, previsão e remoção de defeitos / falhas • Analisar os sistemas distribuídos de tempo-real com ênfase nos respectivos requisitos de dependabilidade • Analisar alguns métodos de validação e projecto desses sistemas 2 Luís Almeida, EST -IPCB, 2º semestre 2001 1 Organização das aulas • aulas teóricas - apresentação e discussão dos conceitos e técnicas • é recomendável a leitura de partes específicas dos livros aconselhados • estarão disponíveis cópias das transparências das aulas • aulas práticas - aplicação das técnicas abordadas em casos concretos • sistema CANivete • PC de desenvolvimento (DOS ou Windows) 3 Luís Almeida, EST -IPCB, 2º semestre 2001 Bibliografia • J-C Laprie, Dependability: Basic Concepts and Terminology, Springer-Verlag, 1992. • H. Kopetz, Design Principles for Distributed Embedded Applications, Kluwer Academic Publishers, 1997. ----------------------------------------------------------------------------------------------------------------------------• N. Nissanke, Real-Time Systems, Prentice-Hall, 1997. • Laplante, P.A., Real-Time Systems Design and Analysis - An Engineer’s Handbook (2nd ed.). IEEE Press, 1997. • G. Buttazzo, Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications. Kluwer Academic Publishers, 1997. • Klein, M. et al., A Practitioner’s Handbook for Real-Time Analysis: Guide to RateMonotonic Analysis for Real-Time Systems. Kluwer Academic Publishers, 1993. 4 Luís Almeida, EST -IPCB, 2º semestre 2001 2 Regras de Avaliação • A classificação final da disciplina é determinada da seguinte forma: Frequência: • Teórica (1 teste): 60% • Prática: 40% (20% avaliação contínua, 20% mini-projecto) Exame: • Teórica: 60% • Prática: 40% (nota de frequência ou teste prático) Recurso: • Teórica: 60% • Prática: 40% (nota de frequência ou teste prático) • • Obs: NOTA MÍNIMA de qualquer componente de 8 Valores 5 Luís Almeida, EST -IPCB, 2º semestre 2001 Programa • Definições relacionadas com Dependabilidade (aula 2) • Entraves à Dependabilidade (aula 2) • Meios para obtenção de Dependabilidade (aula 3) • Atributos da Dependabilidade (aula 3) • As propriedades temporais e a Dependabilidade (aula 4) • Os sistemas distribuídos e a Dependabilidade (aula 4) • Tolerância a falhas (aulas 5 e 6) • Sistemas de tempo-real (aulas 7 e 8) • Comunicação de tempo-real (aulas 9 e 10) • Validação de sistemas (aula 11) • Projecto de sistemas (aula 12) 6 Luís Almeida, EST -IPCB, 2º semestre 2001 3 Breve introdução ao tema baseada na apresentação Why things break de Phil Koopman, CMU - USA http://www.cs.cmu.edu/~koopman/des_s99/why_things_break.pdf 7 Luís Almeida, EST -IPCB, 2º semestre 2001 Breve introdução ao tema Sumário: • Origem típica de falhas comuns • Taxas médias de falha de alguns componentes • Causa de paragens de sistemas “mainframe” • Causas ambientais • Erros nas redes de comunicação • Erros nas fases da criação de um sistema 8 Luís Almeida, EST -IPCB, 2º semestre 2001 4 Breve introdução ao tema Origem típica de falhas comuns Mecânica: (desgaste) Deterioração com o tempo, fadiga física, corrosão, fracturas, sobrecargas Electrónica (Hardware): (desgaste e má concepção) Defeitos de fabrico latentes, de projecto (Pentium FDIV bug), ambiente de operação agressivo (ruído EM, calor, ESD...) Software: (projecto deficiente) Defeitos de concepção, acumulação de erros em run-time Acção humana (........) 9 Luís Almeida, EST -IPCB, 2º semestre 2001 Breve introdução ao tema Taxas média de falha de alguns componentes Normalmente expressas em falhas por milh ão de horas de operação (“ Lambda” λλ ): Microprocessador Militar Microprocessador de Automóvel 0.12 (dados de 1987) Motor Eléctrico 2.17 Bateria Chumbo / Ácido 16.9 Bomba de Óleo 37.3 Humanos: melhor caso para 1 operador Blindagem da cablagem automóvel (luxo) Humanos: intervenção em crise 10 0.022 100 (por MAcções) 775 300,000 (por MAcções) Luís Almeida, EST -IPCB, 2º semestre 2001 5 Breve introdução ao tema Causa de paragens de sistemas “mainframe” (* the sum of these sources was 0.75) AT& T Switching Bellcore Commercial Japanese Commercial Users Tandem 1985 Tandem 1987 Northern Telecom Mainframe Users System Hardware 0.20 0.26 0.75* 0.18 0.19 0.19 0.45 Software 0.15 0.30 0.75* 0.26 0.43 0.19 0.20 Manutenção -- -- 0.75* 0.25 0.13 -- 0.05 Operação 0.65 0.44 0.11 0.17 0.13 0.33 0.15 Factores Ambientais -- -- 0.13 0.14 0.12 0.15 0.15 Energia -- -- -- -- -- 0.13 -- 11 Luís Almeida, EST -IPCB, 2º semestre 2001 Breve introdução ao tema Causas ambientais – Falta prolongada de energia eléctrica – Tremor de terra – Cheias – Incêndios – Raios – Condições locais de temperatura e humidade 12 Luís Almeida, EST -IPCB, 2º semestre 2001 6 Breve introdução ao tema Erros nas redes de comunicação • Perdas frequentes de bits (“bit errors”) em redes de comunicação – Taxa de erro de bit (ber) 10-5 - 10-6 para cablagens de cobre – Taxa de erro de bit 10-12 -10-14 para cablagens de fibra (excluíndo tx / rx) • Consequência: Perda de mensagens – ~300 por hora a 10-5 ber; pode ser pior no caso de irrupções de ruído – Erros em mais de 1 bit por mensagem podem não ser detectados: (e.g. pelo CAN CRC) • Numa frota de 100M veículos, 10-5 ber resulta em 130 eventos / ano • Numa frota de 100M veículos, 10-4 ber resulta em 13000 eventos / ano 13 Luís Almeida, EST -IPCB, 2º semestre 2001 Breve introdução ao tema Erros nas fases da criação de um sistema Fase Fontes de Erro Detecção de erros Especificação & projecto Projecto do Algorítmo Especificação Formal Simulação Verificação de Consistênia Protótipo Projecto do Algorítmo; Cablagem e Montagem; Temporização; Falha de Componente Teste de resposta a estímulos Fabrico Cablagem e Montagem Teste de Sistema - Instalação Operação 14 Falha de Componente Diagnóstico Montagem Teste de Sistema - Falha de Componente Diagnóstico Falha de Componente; Erros do Operador; Factors Ambientais Diagnóstico Luís Almeida, EST -IPCB, 2º semestre 2001 7 Breve introdução ao tema Origem das falhas ... à Defeitos à Erros à Falhas à Defeitos à ... A causa do erro Um estado incorrecto Um comportamento contrário à especificação 15 Luís Almeida, EST -IPCB, 2º semestre 2001 Breve introdução ao tema Em suma • Há muitas fontes de erro que têm que ser consideradas desde a especificação e projecto de um sistema (sob pena de não se conseguir o nível de detecção desejado) • Pretende-se que um sistema: • Não tenha defeitos (inatingível) !!! • Tolere o aparecimento inevitável de alguns defeitos e/ou falhas de componentes • E que, assim, não falhe... 16 Luís Almeida, EST -IPCB, 2º semestre 2001 8