Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Sistemas Distribuídos
05/04/2017 Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 04
2
Conceitos - Tópicos Processos e Threads Concorrência Sistemas Abertos
05/04/2017 Conceitos - Tópicos Processos e Threads Concorrência Sistemas Abertos Comunicação Sincronização Tolerância a Falhas Segurança Sistemas Distribuídos de Tempo-Real
3
Sistemas Distribuídos Abertos
05/04/2017 Sistemas Distribuídos Abertos Um sistema aberto é aquele que se comunica com outro sistema aberto usando regras que tratam do formato, conteúdo e significado das mensagens enviadas e recebidas. As regras são formalizadas como protocolos. Interfaces publicadas Facilitam propriedades como escalabilidade flexibilidade
4
05/04/2017 Comunicação Os componentes distribuídos (lógica e fisicamente) de um sistema devem se comunicar para interagir Transferência de dados Sincronização
5
Comunicação (cont.) Passagem de mensagem Primitivas send e receive
05/04/2017 Comunicação (cont.) Passagem de mensagem Primitivas send e receive Abstrações: canal e porta Síncrona (blocking) Assíncrona (non-blocking) p1 p2
6
Comunicação (cont.) Modelos de comunicação Cliente-Servidor Grupo
05/04/2017 Comunicação (cont.) Modelos de comunicação Cliente-Servidor Grupo
7
05/04/2017 Comunicação em Grupo Grupo fechado x grupo aberto
8
Comunicação em Grupo (cont.)
05/04/2017 Comunicação em Grupo (cont.) Peer group x grupo hierárquico coordenador trabalhador
9
Comunicação em Grupo (cont.)
05/04/2017 Comunicação em Grupo (cont.) Endereçamento Multicasting (Ex. TV a cabo) Broadcasting (Ex. TV) Unicasting 1 2 3 1 2 3 1 2 3
10
Comunicação em Grupo (cont.)
05/04/2017 Comunicação em Grupo (cont.) Primitivas de comunicação group_send e group_receive Atomicidade Atomic broadcast (tudo-ou-nada) Ordem de mensagens Garantias que msg “A” chegue em todos os membros do grupo antes de “B”
11
Sincronização Distribuição leva a novas considerações:
05/04/2017 Sincronização Distribuição leva a novas considerações: Ex: como implementar região crítica? semáforos e monitores, como conhecemos, não são apropriados, pois são baseados no compartilhamento de memória Tempo é importante
12
Sincronização (cont.) Em sistemas distribuídos:
05/04/2017 Sincronização (cont.) Em sistemas distribuídos: Informação relevante é espalhada em diferentes máquinas Processos tomam decisões baseados apenas em informação local Não há um relógio comum
13
05/04/2017 Sincronização (cont.) Em grande parte dos sistemas, o que importa é a consistência interna dos relógios, e não se eles são próximos do tempo real relógios lógicos se os relógios não podem desviar muito do tempo real, eles são chamados de relógios físicos
14
05/04/2017 Sincronização (cont.) Algoritmo de Lamport para sincronização de relógios lógicos (Relação aconteceu-antes) A B C D 6 8 10 12 18 24 30 36 42 48 54 60 16 32 40 56 64 72 80 20 50 70 90 100 1 2 A B C D 6 8 10 12 18 24 30 36 42 48 70 76 16 32 40 61 69 77 85 20 50 60 80 90 100 1 2
15
Sincronização (cont.) Transações Atômicas A 100 100 C D 150 100 B 150
05/04/2017 Sincronização (cont.) Transações Atômicas A 100 100 C D 150 100 B 150 150 300 250 50
16
Sincronização (cont.) Propriedades das Transações Atômicas
05/04/2017 Sincronização (cont.) Propriedades das Transações Atômicas Atomicidade: tudo-ou-nada Consistência: uma transação leva o sistema de um estado consistente a outro estado consistente Isolamento: transações concorrentes não interferem umas nas outras Duração: terminada uma transação, as mudanças são permanentes
17
Sincronização (cont.) Multimídia Mídias contínuas
05/04/2017 Sincronização (cont.) Multimídia Mídias contínuas Sincronização intra-stream Áudio: 8000 amostras/seg Vídeo: 30 quadros/seg Sincronização inter-stream Ex: lip-sync Compensação de atraso buffering descarta chegada atrasada
18
Segurança Criptografia Autenticação C = E(P,KE) e P = D(C,KD)
05/04/2017 Segurança Criptografia C = E(P,KE) e P = D(C,KD) C: texto criptografado E: função de criptografia P: texto original KE: chave de criptografia D: função de decriptografia KD: chave de decriptografia Autenticação
19
Tolerância a Falhas Ex: sistema de fornecedores de supermercado
05/04/2017 Tolerância a Falhas Ex: sistema de fornecedores de supermercado se fornecedor de produto “X” falhar? Tipos de falha Transiente: pode acontecer uma vez Intermitente: acontece de tempos em tempos Permanente: acontece sempre
20
Tolerância a Falhas (cont.)
05/04/2017 Tolerância a Falhas (cont.) Técnicas Redundância de hardware Replicação de componentes de software e de dados Tolerância por software: algoritmos
21
Sistemas de Tempo-Real
05/04/2017 Sistemas de Tempo-Real Em sistemas de tempo-real, não cumprir uma condição dependente de tempo é uma falha Tipos de sistemas de tempo-real Soft: pode “falhar” ocasionalmente Hard: perder um deadline é inaceitável
22
Sistemas de Tempo-Real (cont.)
05/04/2017 Sistemas de Tempo-Real (cont.) Mitos: Computação em tempo-real é computação rápida Em alguns casos, o que importa é a precisão Ex: algumas estrelas só podem ser observadas a cada 1/2 hora, precisamente (o sistema tem tempo suficiente para iniciar a observação no momento exato)
23
Sistemas de Tempo-Real (cont.)
05/04/2017 Sistemas de Tempo-Real (cont.) Mitos (cont.): Computadores rápidos fazem sistemas de tempo-real obsoletos Ao contrário, os sistemas de tempo-real são encorajadores, permitindo atender novas demandas
24
Sistemas de Tempo-Real (cont.)
05/04/2017 Sistemas de Tempo-Real (cont.) Projeto - algumas considerações: Sincronização de relógios Sistemas event-triggered x time-triggered Previsibilidade
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.