Sistemas Distribu - PowerPoint PPT Presentation

About This Presentation
Title:

Sistemas Distribu

Description:

Sistemas Distribu dos Carlos A. G. Ferraz DI/UFPE Aula 03 T picos Caracter sticas Tend ncias Suporte Programa o Distribu da: Introdu o Conceitos ... – PowerPoint PPT presentation

Number of Views:146
Avg rating:3.0/5.0
Slides: 26
Provided by: Silvi137
Category:

less

Transcript and Presenter's Notes

Title: Sistemas Distribu


1
Sistemas Distribuídos
  • Carlos A. G. Ferraz
  • DI/UFPE
  • Aula 03

2
Tópicos
  • Características
  • Tendências
  • Suporte à Programação Distribuída Introdução
  • Conceitos

3
Caracterização de SD
  • Características principais -gt benefícios
  • Compartilhamento de recursos
  • Flexibilidade
  • Concorrência
  • (cont.)

4
Características (cont.)
  • Escalabilidade (operação efetiva e eficiente em
    qualquer escala)
  • Robustez
  • Tolerância a falhas
  • Disponibilidade
  • Transparência

5
Tipos de Transparência
  • Localização acesso sem conhecimento de
    localizacao
  • Acesso operações idênticas para acesso local e
    remoto
  • Migração sem afetar operação
  • Concorrência sem interferência entre concorrentes

6
Tipos de Transparência (cont.)
  • Falha completar tarefas apesar de falhas
  • Replicação sem conhecimento das réplicas
  • Desempenho reconfigura sistema variando cargas
  • Escala expansão sem mudanças na estrutura do
    sistema

7
Tendências
  • Multimídia distribuída
  • Longa distância
  • Redes de alta velocidade
  • Problema Novas latências
  • Interoperabilidade de plataformas distribuídas
    heterogêneas
  • Diversas aplicações
  • Computação móvel
  • Agentes móveis
  • Integração com CORBA

8
Suporte à Programação Distribuída
  • Sistemas Abertos (OSI ODP)
  • Sistemas operacionais distribuídos
  • Abordagem revolucionária
  • Microkernels

Sistemas abertos e Aplicações
Emul. S.O.
Suporte a Ling.
....
....
Microkernel
Hardware
9
Suporte à Programação Distribuída (cont.)
  • Plataformas ODP
  • Abordagem evolucionária

Sistemas abertos e Aplicações
Plataforma ODP
Sistema Operacional
Hardware
10
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

11
Processos e Threads
  • Em sistemas operacionais tradicionais, cada
    processo tem um único espaço de endereço e uma
    única linha (thread) de controle

12
Processos e Threads (cont.)
  • É desejável ter múltiplos threads de controle
    compartilhando um espaço de endereço e executando
    em paralelo, como se fossem processos separados
  • Concorrência é uma abstração importante porque o
    comportamento de muitos sistemas reais pode ser
    modelado sem detalhes desnecessários

13
Processos e Threads (cont.)
  • Threads são também chamados de processos
    peso-leve
  • Executam sequencialmente e têm seu próprio
    contador de programa e pilha de execução
  • Compartilham a CPU assim como processos - através
    de timesharing

14
Processos e Threads (cont.)
  • Diferentes threads em um processo não são tão
    independentes quanto diferentes processos - não
    são protegidos uns dos outros compartilham
    variáveis

15
Processos e Threads (cont.)
  • Múltiplos threads x múltiplos processos
    (servidores)
  • Um servidor pode servir a vários clientes
    concorrentemente
  • Interferência pode causar inconsistência nos
    dados compartilhados

16
Processos e Threads (cont.)
  • Pacote de threads conjunto de primitivas (ex.
    chamadas de bibliotecas)
  • Criação estática e dinâmica de threads
  • simplicidade x flexibilidade
  • Compartilhamento de memória/variávies mutex
  • Sincronização variável condicional - wait e
    wakeup

17
Processos e Threads (cont.)
  • Criação estática e dinâmica de processos
  • Razões para a criação dinâmica
  • Flexibilidade um sistema pode ser projetado sem
    saber de processos necessários
  • Uso dinâmico de recursos um sistema pode
    precisar de diferentes conjuntos de recursos em
    tempos diferentes

18
Processos e Threads (cont.)
  • Razões para a criação dinâmica (cont.)
  • Balanceamento de carga se a criação dinâmica de
    processos existe, processos adicionais podem ser
    criados para desempenhar a função sobrecarregada
    e alocados a processadores sub-utilizados.

19
Processos e Threads (cont.)
  • A criação estática (mais eficiente) é mais
    aplicável em sistemas embarcados (ex. aviões),
    onde
  • A configuração do sistema é fixa
  • A previsibilidade do desempenho é mais importante
    do que flexibilidade
  • Sendo a configuração fixa, balanceamento de carga
    não é importante.

20
Processos e Threads (cont.)
  • Ligação dinâmica (dynamic binding) de processos
  • Ligação estática, com endereçamento pré-definido,
    é inflexível e gera problema se um processo
    (servidor) migra ou é replicado, por exemplo -
    requer recompilação.

21
Concorrência
  • Região Crítica (RC)
  • Exclusão mútua enquanto um processo estiver em
    sua RC, outros não podem estar em suas RCs
  • Problemas
  • Interrupção de instruções de máquina
  • Ex A A 1 3 instruções
  • (cont.)

22
Concorrência (cont.)
  • Problemas de exclusão mútua
  • Entradas simultâneas em RCs
  • Alternação
  • Impasse (deadlock)

23
Concorrência (cont.)
  • Semáforo
  • Primitivas - instruções não-interrompíveis
  • P(s) e V(s) / Wait(s) e Signal(s)
  • Primitivas de sincronização

24
Concorrência (cont.)
  • Monitor
  • Construção de mais alto nível
  • Baseada em procedimentos - mais bem estruturado
  • Chamada a procedimento garante exclusão mútua

25
Concorrência (cont.)
  • Problemas clássicos representam abstrações de
    problemas
  • Exclusão mútua sincronização (wait e signal)
  • Produtor-Consumidor comunicação
  • Leitores e Escritores acesso a banco de dados
Write a Comment
User Comments (0)
About PowerShow.com