SSC0146 – Sistemas Computacionais Tolerantes a...

Post on 16-Jul-2020

2 views 0 download

Transcript of SSC0146 – Sistemas Computacionais Tolerantes a...

SSC0146 – Sistemas Computacionais Tolerantes a Falhas

Prof. Jó Ueyama

ICMC/USP – 1o. Semestre 2012

2

Sejam bem-vindos!

Fundamentos de Sistemas Tolerantes a Falhas

Trabalhos práticos envolvendo o assunto

3

Aula de Hoje

Apresentação da disciplina Conteúdo programático Datas importantes

4

Conteúdo Detalhado de Hoje

Apresentação do professor Alguns esclarecimentos Metodologia Avaliação de aprendizado Regras de funcionamento Plano de Ensino Perguntas?

5

Apresentação do professor

PhD em Ciência da Computação Lancaster University - UK

Pos-doc University of Kent at Canterbury - UK

Pos-doc UNICAMP – Campinas SP

6

Áreas de atuação

Redes de Computadores Redes de Sensores sem Fio

Sistemas distribuídos Mobilidade Programação em telefones celulares

7

1. transmissão multihop de dados via ZigBee

servidor com Internet

2. armazenamento e processamentodos dados lidos do rio

3. emissão de alertas viaSMS. Os números devem ser cadastrados previamente no servidor

Áreas de atuação RSSFs para o Meio-ambiente

Áreas de atuação RSSFs para o Meio-ambiente

9

Áreas de atuaçãoRSSFs e Cloud Computing

Nuvem Nuvem

Acesso local

Remoto

Coleta

10

Alguns Esclarecimentos (1)

Princípios básicos: É uma disciplina fundamental O objetivo de todos é assimilar a disciplina

Não ganhar uma nota Não é passar no semestre seguinte Não é rodar os alunos :-)

Presença Haverá chamada sistemática O importante é entender os conceitos Eu aconselho fortemente estar presente

11

Alguns Esclarecimentos(2)

Coteia-wiki Material de apoio NÃO É SUFICIENTE

Durante a aula Prestar atenção Anotar Perguntas interativas Horários de entrada/saída SILÊNCIO

Provas Provas dissertativas? Escrever pouco, claramente, e JUSTIFICAR.

12

Contra-exemplo de prova

Devido ao grande número de processos para termos multitarefa e grande tamanho para mantermos as tabelas de páginas organizamos tudo como memória virtual onde teremos a sensação de que diversos processos estarão “rodando” contiguamente em nossa RAM devido ao fato de armazenarmos apenas em RAM aquelas páginas que estão sendo utilizadas pro processo e assim teremos que gerenciar o paging muito bem para obtermos essa sensação que nada mais é do que verdade visto que programas em geral têm o princípio da localidade e que nem sempre todas as rotinas e tratamentos de erros dos programas são utilizados.

13

Problemas já identificados

Falta às aulas; “professor, eu trabalho..., moro longe...”; Laptops (NÃO É PERMITIDO O USO

DURANTE A AULA); celular; conversas; menosprezar o assunto; superestimar a própria inteligência.

14

Metodologia (1)

Exposição em aula pelo docente dos temas do curso.

Realização de exercícios em aula e no laboratório.

Realização de avaliações escritas (provas e atividades práticas) pelos alunos.

Apresentação do progresso do trabalho prático pela equipe de alunos

15

Metodologia (2)

Atendimento de dúvidas dos alunos pelo professor:

Horário: quartas das 18:00 às 19:00hs. Caso ninguém compareça nos primeiros 15 minutos, o atendimento será finalizado naquele dia.

Local: sala 3-115 Não haverá atendimento na véspera das provas

(até uma semana antes)‏ Não haverá atendimento por email!

Contagem de frequência APENAS no horário de atendimento

16

Metodologia (3) Um trabalho prático a ser apresentado no

final do semestre. Tópico: tolerância a falhas em redes de

sensores sem fio Uso do middleware OpenCom em motes Sun

SPOT

O trabalho será realizado por uma equipe de no máximo TRÊS alunos

Atenção: plágio é nota zero na DISCIPLINA

Avaliação do aprendizado

Os alunos deverão freqüentar 70% ou mais das aulas.

Procurar Seção da Graduação para as faltas. Duas provas (P1 e P2) e pelo menos uma atividade

prática será realizada. As atividades práticas poderão ser realizadas em

duplas. Será realizada uma prova substitutiva SOMENTESOMENTE

para os alunos entrarem com o requerimento na Seção da Graduação

A matéria da prova substitutiva envolve todo o conteúdo ministrado na disciplina.

Avaliação do aprendizado

A média de provas (MP) é calculada da seguinte maneira: MP = (P1+P2)/2.

Idem para a média das atividades práticas (MT)

A média final (MF) é calculada da seguinte forma: MF = (MT + MP)/2 MF >= 5,0, aluno aprovado; MF < 5,0;

aluno reprovado.

Avaliação do aprendizado

Requisitos: freq >= 70% 3<=MF<5

Para ser aprovado: MR = (MF + Rec) / 2 >= 5.0

A REC será realizada na primeira segunda-feira do período da mesma (no horário da aula).

Regras de Funcionamento

Cola e cópia não serão toleradas e implicarão em nota zero na DISCIPLINA!!

Conversas não serão toleradas durante a aula e implicarão em perda de pontos nas provas.

Regras de Funcionamento

A programação de aulas é preliminar e pode estar sujeita a mudanças, que serão informadas em aula.

Os slides da aula funcionam como “guia”, e o uso dos livros é parte essencial do aprendizado.

O aluno poderá chegar no máximo com 30 minutos de atraso para as aulas.

Verificação/recontagem de frequência apenas nos horários de atendimento.

22

1. INTRODUÇÃO AOS SISTEMAS TOLERANTES A FALHAS 1.1. Definições 1.2. Falhas e mecanismos de prevenção 1.3. Exclusão (removal) de falhas 1.4. Tipos de recuperação 1.5. Redundância e seus tipos2. Estruturando a redundância para sistemas tolerantes a falhas 2.1. Definições 2.2. Sistemas robustos 2.3. Projetos de redundância 2.4. Níveis de redundância 2.5. Redundância de dados 2.6. Redundância temporal 2.7. Arquitetura de softwares para prover redundância 2.8. Estudos de casos

Plano de Ensino (I)

23

3. Técnicas de programação para sistemas tolerantes a falhas 3.1 Assertions 3.2 Checkpointing 3.3 Ações atômicas 3.4 Paradigmas de software N-version

4. Projeto de redundância de software 4.1 Recovery blocks 4.2 Operações e exemplos de recovery blocks 4.3 Operações e exemplos de N-version 4.4 Recovery blocks distribuídos 4.5 Operações e exemplos de recovery blocks distribuídos 4.6 Programação N-self checking 4.7 Operações e exemplos de programação N-self checking 4.8 Consensus recovery block 4.9 Operações e exemplos de consensus recovery block 4.10 Comparações entre os diferentes tipos de projeto

Plano de Ensino (II)

24

• Aulas– Quinta-feira

• Apresentação do trabalho prático– 21/06

• Provas– 03/05 e 14/06

Datas Importantes

25

Bibliografia

Livros texto:

1) Software Fault Tolerance – Techniques and implementation, Laura L. Pullum

2) Fault-Tolerant Systems

Israel Koren and C. Mani Krishna

Perguntas?