590 likes | 821 Views
Pearson Education Sistemas Operacionais Modernos – 2ª Edição. Sistemas com Múltiplos Processadores. 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos. Capítulo 8. 1.
E N D
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Sistemas com Múltiplos Processadores 8.1 Multiprocessadores 8.2 Multicomputadores 8.3 Sistemas distribuídos Capítulo 8 1
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Sistemas Multiprocessadores • Necessidade contínua de computadores mais rápidos • modelo de memória compartilhada • multicomputador com troca de mensagens • sistema distribuído de longa distância 2
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Multiprocessadores Definição:um sistema computacional no qual duas ou mais CPUs compartilham acesso total a uma RAM comum 3
Hardware de Multiprocessador (1) Multiprocessadores baseados em barramento
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multiprocessador (2) Multiprocessador UMA usando uma chave crossbar 5
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multiprocessador (3) • Multiprocessadores UMA usando redes de comutação multiestágio podem ser construídos a partir de chaves 2 x 2 (a) Uma chave 2x2 (b) Formato de mensagem 6
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multiprocessador (4) • Rede de chaveamento Omega 7
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multiprocessador (5) Características de Multiprocessadores NUMA • Espaço de endereçamento único visível a todas as CPUs • Acesso à memória remota via comandos • LOAD • STORE • Acesso à memória remota mais lento que acesso à memória local 8
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multiprocessador (6) • Multiprocessador de 256 nodos com base em diretório (b) Campos de um endereço de memória de 32 bits (c) Diretório no nodo 36 9
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Tipos de SO para Multiprocessadores (1) Cada CPU tem seu próprio sistema operacional 10
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Tipos de SO para Multiprocessadores (2) Multiprocessadores mestre-escravo 11
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Tipos de SO para Multiprocessadores (3) • Multiprocessadores simétricos • Modelo de multiprocessador SMP 12
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Sincronização em Multiprocessadores (1) Instrução TSL pode falhar se barramento não puder ser reservado 13
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Sincronização em Multiprocessadores (2) Múltiplos locks para evitar a substituição excessiva na cache 14
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Sincronização em Multiprocessadores (3) Teste contínuo vs. chaveamento • Em alguns casos a CPU deve esperar • até que possa acessar a lista de processos prontos para executar • Em outros casos existe uma escolha • teste contínuo gasta ciclos de CPU • chaveamento também usa ciclos de CPU • é possível tomar decisão independente cada vez que um mutex impedido é encontrado 15
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Escalonamento de Multiprocessadores (1) • Compartilhamento de tempo • Note o uso de uma única estrutura de dados para o escalonamento 16
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Escalonamento de Multiprocessadores (2) • Compartilhamento de espaço • Múltiplos threads em múltiplas CPUs ao mesmo tempo 17
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Escalonamento de Multiprocessadores (3) • Problema com a comunicação entre dois threads • ambos pertencem ao processo A • ambos estão executando fora de fase 18
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Escalonamento de Multiprocessadores (4) • Solução: escalonamento em bando • Grupos de threads relacionados são escalados como uma unidade (um bando) • Todos os membros do bando executam simultaneamente • em diferentes CPUs com compartilhamento de tempo • Todos os membros de um bando iniciam e finalizam juntos suas fatias de tempo 19
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Escalonamento de Multiprocessadores (5) Escalonamento em bando 20
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Multicomputadores • Definição:CPUs fortemente acopladas que não compartilham memória • Também conhecidos como • computadores clusters • clusters de estações de trabalho (COWs) 21
Topologias de interconexão (a) chave simples (b) anel (c) grade (d) toro duplo (e) cubo (f) hipercubo 4D Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multicomputador (1) 22
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multicomputador (2) • Esquema de comutação • Comutação de pacotes armazena-e-encaminha (store-and-forward) 23
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multicomputador (3) Placas de interface de rede em um multicomputador 24
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Software de Comunicação de Baixo Nível (1) • Se vários processos estão executando em um nodo • precisam de acesso à rede para enviar pacotes ... • Mapear a placa de interface para todos os processos que precisam dela • Se o núcleo precisa acessar a rede ... • Usar duas placas de rede • Uma para o espaço do usuário, uma para o núcleo 25
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Software de Comunicação de Baixo Nível (2) Comunicação entre o nodo e a interface de rede • Uso de anéis de envio e recepção • Coordena a CPU principal com a CPU da placa de rede 26
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Software de Comunicação no Nível do Usuário • Serviços mínimos oferecidos • Comandos de envio e recepção • Estas são chamadas bloqueantes (síncronas) (b) Chamada send não bloqueante (a) Chamada send bloqueante 27
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Chamada de Procedimento Remoto (1) • Passos na realização de uma chamada de procedimento remoto • Os stubs são mostrados em tonalidade escurecida 28
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Chamada de Procedimento Remoto (2) Questões de Implementação • Não pode passar ponteiros • chamada por referência se torna copia-restaura (mas pode falhar) • Linguagens fracamente tipificadas • stub cliente não consegue determinar tamanho • Nem sempre é possível deduzir os tipos de parâmetros • Não pode usar variáveis globais • pode ser movido para máquina remota 29
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Memória Compartilhada Distribuída (1) • Note os níveis onde ela pode ser implementada • hardware • sistema operacional • software no nível do usuário 30
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Memória Compartilhada Distribuída (2) Replicação (a) Páginas distribuídas em 4 máquinas (b) CPU 0 lê página 10 (c) CPU 1 lê página 10 31
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Memória Compartilhada Distribuída (3) • Falso compartilhamento • Deve também obter consistência seqüencial 32
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Escalonamento em MulticomputadorBalanceamento de Carga (1) • Algoritmo determinístico grafo-teórico 33
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Balanceamento de Carga (2) • Algoritmo heurístico distribuído iniciado pelo emissor • emissor sobrecarregado 34
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Balanceamento de Carga (3) • Algoritmo heurístico distribuído iniciado pelo receptor • com receptor subatarefado 35
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Sistemas Distribuídos (1) Comparação de três tipos de sistemas com múltiplas CPUs 36
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Sistemas Distribuídos (2) Atingindo uniformidade com middleware 37
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Rede (1) • Ethernet (a) Ethernet clássica (b) Ethernet com chave (switch) 38
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Rede (2) A Internet 39
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Serviços de Rede e Protocolos (1) Serviços de Rede 40
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Serviços de Rede e Protocolos (2) • Protocolo da Internet - IP • Protocolo de Transmissão e Controle – TCP • Interação de Protocolos 41
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware com Base em Documentos (1) • A Web • um grande grafo dirigido de documentos 42
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware com Base em Documentos (2) Como o navegador obtém uma página • Pergunta ao DNS pelo endereço IP • DNS responde com o endereço IP • Navegador abre uma conexão • Envia requisição para página especificada • Servidor envia arquivo • Conexão TCP liberada • Navegador exibe texto • Navegador busca, exibe imagens 43
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware Baseado no Sistema de Arquivos (1) • Modelos de Transferência (a) modelo upload/download (b) modelo de acesso remoto 44
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware Baseado no Sistema de Arquivos (2) Transparência de nomeação (b) Clientes têm a mesma visão do sistema de arquivos (c) Alternativamente, clientes com diferentes visões 45
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware Baseado no Sistema de Arquivos (3) • Semântica do compartilhamento de arquivos • (a) processador único provê consistência seqüencial • (b) sistema distribuído pode retornar valor obsoleto 46
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware Baseado no Sistema de Arquivos (4) • AFS – Andrew File System • Estações de trabalho agrupadas em células • Note posição de venus e vice • Visão do cliente 47
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware Baseado em Objetos Compartilhados (1) • Principais elementos de um sistema distribuído baseado em CORBA • Common Object Request Broker Architecture 48
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware Baseado em Objetos Compartilhados (2) • Evolução para sistemas muito grandes • objetos replicados • flexibilidade • Globe • projetado para evoluir para um bilhão de usuários • um trilhão de objetos pelo mundo 49
Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware Baseado em Objetos Compartilhados (3) Objeto Globe estruturado 50