sistemas distribuídos sistemas distribuídos em tempo daniel de olivera pereira 6427171 fabio...

20
Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Upload: internet

Post on 17-Apr-2015

104 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Sistemas Distribuídos

Sistemas Distribuídos em Tempo

Daniel de Olivera Pereira 6427171Fabio Fernando de Lima Pereira 5889032Michael Lee 6426677

Page 2: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Sumário

O que é ?

Características

Tipos de Tarefas

Execução de Tarefas

Tipos de Falhas

Implentação

Previsibilidade

Técnicas para Tolerância a Falhas

Modelos de Falhas

Tratamento de Falhas

Sincronização

Sincronismo Interno x Externo

Vantagens

Desvantagens

Page 3: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

O que é um Sistema Dístribuido de Tempo Real ?

Um sistema distribuído de tempo real pode ser definido como um sistema cujo funcionamento correto depende não apenas da correção realizadas, mas também do momento em que elas são finalizadas (Stankovic, 1988)

Page 4: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Características de SDTR

Deadline: é um intervalo de tempo, em que a tarefa tem que ser executada

Período: diz respeito as ativações das tarefas no sistema, pode ser: periódico, esporádicas ou aperiódicas

Jitter: é a variação máxima entre o tempo de execução entre duas tarefas

Page 5: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Características de SDTR

Interação Assíncrona entre os Processos: processos assíncronos se comunicam pela troca de mensagem através da comunicação entre os processos

Atraso de Comunicação e Race Condictions: tráfego imprevisível entre os nós da rede e o processos compartilham o mesmo recurso

Page 6: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Características de SDTR

Resultados não Determiníticos: podem gerar resultados diferentes sob mesmas entradas.

Estado Global: cada processador tem seu próprio clock, o que torna dificil determinar o estado global

Operação Contínua: para manter a operação normal dos ambientes fisícos controlados e estar pronto para qualquer operação anormal

Page 7: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Tipos de Tarefas de um SDTR

Hard Deadline: se a tarefa não for cumprida no prazo determinado pode acontecer uma falha fatal.

Soft Deadline: a falha no prazo da entrega é tolerado, há apenas uma degradação do serviço oferecido

Page 8: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Execução de Tarefas de um SDTR

Event-triggered: ativar as tarefas assim que os eventos associados a ela são percebidos pelo sistema.

Time-triggered: ativar as tarefas em tempos pré-determinados, independente da ocorrência do evento.

Page 9: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Tipo de Falhas

Defeito Funcional: quando os resultados de uma determinada tarefa são nulos

Defeito Temporal: quando um determinado resultado de uma tarefa esta infinitamente atrasado

Defeito Arbitrário: o sistema apresenta um comportamento imprevisível em ambas as dimensões

Page 10: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Implementação

Middleware: é um tipo de arquitetura que fornece uma abstração para o meio intermediário entre o ambiente de execução e aplicação, permitindo estipular um conjunto de serviços para múltiplos processos

Tipo de Linguagem:

-Timber

-Alert

-Real Time Java

Page 11: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Previsibilidade

Métodos Formais: conjunto de linguagens, técnicas e ferramentas baseadas em modelos matemáticos, destinados a fornecer um padrão rigoroso de modelagem e análise de sistemas computacionais

Page 12: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Técnicas para Tolerância de Falhas

Critérios para avaliar o grau de segurança: Reliability: serviço continuado Availability: disponibilidade do serviço Maintainability: tempo de reparo Safety: confiabilidade no modos de falhas Security: autenticidade, confidencialidade

Page 13: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Modelos de Falhas

Independente da origem, as falhas são classificadas de acordo com o comportamento após a falha:

Fail-stop :para de gerar qualquer resultado mas a falha é percebida

Fail-generalized:valores gerados de forma errada, requisitos temporais podem ser violados

Fail-safe: um estado seguro quando não podem operar

Page 14: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Tratamento de Falhas

Redundancia Temporal: repetição do procedimento

Redundancia Espacial: a ação critíca é executada por vários componente replicados

Error Recorvery: realizar o processamento que possa recuperar o sistema do estado de erro

Error Compensation: compensar o erro através do uso de redundância

Page 15: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Tratamentos de Falhas

Há fases básicas: Error Detection (Detecção de Erro) Damage Confinement (Confidenciamento dos

efeitos de propagação do erro) Error Processing (Processamento do Erro)

Page 16: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Sincronização

Num sistema distribuído, no qual várias máquinas podem participar do processamento de uma mesma tarefa, é necessário que os relógios das máquinas estejam sincronizados.

Relógio lógico: quando o tempo a ser medido é relativo.

Relógio físico: quando o tempo a ser medido é absoluto.

Page 17: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Sincronismo Interno x Externo

Interno: utilizado quando apenas um relógio lógico é necessário. O relógio de uma máquina é utilizado como referência e todos os outros são sincronizados a ele.

Externo: utilizado quando é necessário um relógio físico. Todos os relógios são sincronizados ao UTC utilizando NTP

Page 18: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Vantagens do SDTR

Melhora o tempo de resposta do sistema, ao distribuir o processamento entre várias máquinas.

Aumenta a disponibilidade do sistema, ao inserir elementos redundantes, reduzindo o risco de falha.

Page 19: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Desvantagens do SDTR

Dificuldade de estabelecer e manter o sincronismo entre os elementos do sistema.

Maior dificuldade em particionar e alocar e tarefas entre os elementos do sistema.

Maior dificuldade em implementar a atomicidade de operações.

Dificuldade em determinar o estado global do sistema.

Page 20: Sistemas Distribuídos Sistemas Distribuídos em Tempo Daniel de Olivera Pereira 6427171 Fabio Fernando de Lima Pereira 5889032 Michael Lee 6426677

Dúvidas

?