Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 13 Sistemas com Múltiplos Processadores
Sumário Introdução Vantagem e Desvantagens Tipos de Sistemas Computacionais Sistemas Fortemente e Fracamente Acoplados Sistemas com Múltiplos Processadores Simétricos Evolução dos Sistemas Simétricos Arquitetura dos Sistemas Simétricos Sistemas NUMA
Sumário Clusters Sistemas Operacionais de Rede Sistemas Distribuídos Transparência Tolerância a Falhas Imagem Única do Sistema
Vantagens e Desvantagens Desempenho Escalabilidade Relação custo/desempenho Tolerância a falhas e disponibilidade Balanceamento de carga Problemas de comunicação e sincronização Organizar de forma eficiente os processadores Tolerância contra falhas é dependente do sistema operacional
Tipos de Sistemas Computacionais SISD (Single Instruction Single Data) SIMD (Single Instruction Multiple Data) MISD (Multiple Instruction Single Data) MIMD (Multiple Instruction Multiple Data)
Sistemas Fortemente e Fracamente Acoplados
Sistemas Fortemente e Fracamente Acoplados Sistemas com múltiplos processadores Arquitetura de Sistemas Operacionais – Machado/Maia
Arquitetura dos Sistemas Simétricos Barramento único Arquitetura de Sistemas Operacionais – Machado/Maia
Arquitetura dos Sistemas Simétricos Barramento único com cache
Arquitetura dos Sistemas Simétricos Barramento cruzado comutado
Arquitetura dos Sistemas Simétricos Rede Omega
Sistemas NUMA Exemplo de arquitetura NUMA
Sistemas NUMA Topologias NUMA
Sistemas NUMA Topologias NUMA
Sistemas NUMA Topologias NUMA
Sistemas NUMA Arquitetura DASH
Sistemas NUMA Arquitetura do Multiplus
Clusters Exemplo de cluster
Sistemas Operacionais de Rede Rede de computadores
Sistemas Operacionais de Rede Topologias de redes de computadores
Sistemas Operacionais de Rede Topologias de redes de computadores
Sistemas Distribuídos Sistema distribuído
Sistemas Distribuídos Transparência Transparência de acesso Transparência de localização Transparência de migração Transparência de replicação Transparência de concorrência Transparência de paralelismo Transparência no desempenho Transparência de escalabilidade Transparência a falhas
Sistemas Distribuídos Tolerância a falhas Garantir que, em caso de problema em um de seus componentes, as aplicações continuem sendo processadas sem qualquer interrupção ou intervenção do usuário, de forma totalmente transparente Tolerância a falhas de hardware é facilmente oferecida utilizando-se componentes redundantes Tolerância a falhas de software é bem mais complexa de implementar Com a tolerância a falhas, é possível também oferecer alta disponibilidade e confiabilidade
Sistemas Distribuídos Imagem única do sistema A maior dificuldade em implementar um sistema distribuído é a complexidade em criar para os usuários e suas aplicações uma imagem única do sistema, a partir de um conjunto de sistemas autônomos Capacidade de lidar com os diversos problemas de comunicação existentes em um ambiente fracamente acoplado O sistema precisa oferecer tolerância a falhas de forma Exige mecanismos mais complexos e lentos para manter a integridade e segurança dos dados Um dos grandes desafios para a adoção de sistemas distribuídos é a dificuldade no desenvolvimento de aplicações paralelas