1 / 55

Sistemas com Múltiplos Processadores

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.

Download Presentation

Sistemas com Múltiplos Processadores

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. 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

  3. 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

  4. Hardware de Multiprocessador (1) Multiprocessadores baseados em barramento

  5. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multiprocessador (2) Multiprocessador UMA usando uma chave crossbar 5

  6. 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

  7. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multiprocessador (4) • Rede de chaveamento Omega 7

  8. 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

  9. 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

  10. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Tipos de SO para Multiprocessadores (1) Cada CPU tem seu próprio sistema operacional 10

  11. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Tipos de SO para Multiprocessadores (2) Multiprocessadores mestre-escravo 11

  12. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Tipos de SO para Multiprocessadores (3) • Multiprocessadores simétricos • Modelo de multiprocessador SMP 12

  13. 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

  14. 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

  15. 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

  16. 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

  17. 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

  18. 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

  19. 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

  20. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Escalonamento de Multiprocessadores (5) Escalonamento em bando 20

  21. 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

  22. 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

  23. 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

  24. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Multicomputador (3) Placas de interface de rede em um multicomputador 24

  25. 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

  26. 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

  27. 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

  28. 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

  29. 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

  30. 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

  31. 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

  32. 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

  33. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Escalonamento em MulticomputadorBalanceamento de Carga (1) • Algoritmo determinístico grafo-teórico 33

  34. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Balanceamento de Carga (2) • Algoritmo heurístico distribuído iniciado pelo emissor • emissor sobrecarregado 34

  35. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Balanceamento de Carga (3) • Algoritmo heurístico distribuído iniciado pelo receptor • com receptor subatarefado 35

  36. 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

  37. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Sistemas Distribuídos (2) Atingindo uniformidade com middleware 37

  38. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Rede (1) • Ethernet (a) Ethernet clássica (b) Ethernet com chave (switch) 38

  39. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Hardware de Rede (2) A Internet 39

  40. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Serviços de Rede e Protocolos (1) Serviços de Rede 40

  41. 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

  42. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware com Base em Documentos (1) • A Web • um grande grafo dirigido de documentos 42

  43. 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

  44. 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

  45. 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

  46. 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

  47. 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

  48. 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

  49. 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

  50. Pearson Education Sistemas Operacionais Modernos – 2ª Edição Middleware Baseado em Objetos Compartilhados (3) Objeto Globe estruturado 50

More Related