Questões Fundamentais sobre Sistemas Distribuídos
Classificado em Computação
Escrito em em
português com um tamanho de 10,5 KB
Questões sobre Sistemas Distribuídos
- Uma definição alternativa para um sistema distribuído é que ele é um conjunto de computadores que dá a impressão de ser um único computador, isto é, o fato de haver vários computadores fica completamente oculto aos usuários. Dê um exemplo para o qual esta visão seria adequada.
A Internet é um exemplo, pois permite que um programa em execução envie mensagens de qualquer ponto para programas em outro local. - Qual é o papel do middleware em um SD?
É usado para mover ou transportar informações e dados entre programas de diferentes protocolos de comunicação. - Explique o que quer dizer transparência (de distribuição).
Capacidade de esconder dos utilizadores a distribuição física dos recursos, oferecendo uma visão de um sistema único e consistente. - Por que às vezes é tão difícil ocultar a ocorrência e a recuperação de falhas em um SD?
Devido às tolerâncias e transparências que são constantes em um sistema distribuído. - O que é um SD aberto e quais são os benefícios que a abertura proporciona?
É um sistema que oferece serviços de acordo com regras padronizadas que descrevem a sintaxe e a semântica desses serviços. Seus benefícios incluem: serviços especificados por interfaces IDL (Linguagem de Definição de Interfaces), neutralidade, interoperabilidade, portabilidade, extensibilidade e separação entre política e mecanismo. - Quais são as vantagens de um SD?
Ótima relação custo/benefício (uso de máquinas comuns), aumento de velocidade, confiabilidade (redundância de backup) e escalabilidade. - O que corresponde ao compartilhamento de recursos em um SD?
Compartilhar arquivos em sites remotos, processar informações em bancos de dados distribuídos, imprimir em locais remotos e usar hardware especializado remoto. - O que acontece com a velocidade de computação em relação aos processos (performance)?
Os processos podem ser fragmentados e distribuídos entre vários sites. - O que ocorre em um SD se um determinado site falhar?
Os sites restantes poderão continuar operando, o que é uma das vantagens do sistema distribuído. - Qual a diferença entre um SD e um SO de rede?
O SO de rede amplia sistemas operacionais para tornar transparente o uso de recursos compartilhados, enquanto o SD é um conjunto de computadores independentes que se apresenta como um sistema único e coerente. - O que é um Sistema Distribuído?
Conjunto de computadores independentes que se apresenta aos usuários como um sistema único e coerente. - Qual a relação entre um SD e um mainframe em nível de custo/benefício?
A implantação de um mainframe pode ser cara; o SD oferece um custo/benefício superior quando o mainframe não é compatível com a realidade da empresa. - Explique o seguinte trecho em SD: “O mundo é inerentemente distribuído”.
Enxergamos o mundo como um todo interligado, mas ele é fracionado entre nações independentes. - Quais são as vantagens associadas a um SD?
Compartilhamento de recursos, velocidade de computação, confiabilidade e comunicação. - Explique cada vantagem associada a um SD.
- Compartilhamento: acesso a recursos em outros sites.
- Velocidade: computação distribuída entre vários sites.
- Confiabilidade: continuidade operacional em caso de falha.
- Comunicação: troca de informações entre usuários conectados.
- De que forma um SD pode melhorar a velocidade de computação?
Particionando a computação em subcomputações que executam concorrentemente. - Como se chama o movimento de jobs entre sites em SD?
Balanceamento de carga. - Quais as principais consequências associadas ao uso de SD?
A aplicação resulta em uma tendência na indústria em direção ao downsizing. - Quais são as diferenças entre um SO de rede e SO distribuídos?
O SO de rede é mais fácil de implementar, mas mais difícil de usar; o SD é mais complexo de implementar, porém mais fácil para o usuário. - Como é feito o acesso a recursos remotos em um SD?
Efetuando login na máquina remota ou transferindo dados da máquina remota para a máquina local. - Quais são as diferentes abordagens em SD para a migração de dados e processos entre sites?
AFS, NFS e SMB. - Como funciona a migração de dados em um SD?
Existem dois métodos básicos: transferir o arquivo inteiro ou transferir apenas partes do arquivo. - Quando utilizamos a abordagem de migração de computação?
Quando o tempo para transferir os dados for maior que o tempo para executar o comando remoto. - O que significa Chamada de Procedimento Remoto (RPC)?
Tecnologia de comunicação entre processos que permite a um programa chamar um procedimento em outro espaço de endereçamento (geralmente em outro computador). - Qual a diferença entre uma RPC e as Chamadas de Procedimentos Locais?
No RPC, a chamada pode falhar por problemas de rede, sem garantia de que o procedimento foi invocado. - Como funciona a migração de processos?
O sistema move programas e dados entre máquinas para obter melhor balanceamento de carga, desempenho ou viabilização de execução. - Quais são os motivos para a migração de processos?
Balanceamento de carga, velocidade, preferência de hardware/software e acesso a dados. - Como podemos classificar os Sistemas Operacionais?
Centralizado, de Rede e Distribuído. - Quais são as características de cada tipo de SO?
- Centralizado: um computador, recursos locais.
- De rede: vários sistemas, recursos compartilhados, localização conhecida pelo usuário.
- Distribuído: sistemas distintos, visão unificada, acesso transparente.
- O SO que possui compartilhamento de recursos a partir de interrupções é denominado:
Sistema Operacional Centralizado. - O SO onde cada máquina possui autonomia e o usuário deve conhecer a localização dos recursos é denominado:
Sistema Operacional de Rede. - O SO onde o usuário vê o sistema como um ambiente virtual e esconde a distribuição é chamado:
Sistema Operacional Distribuído. - Quais são os serviços pertinentes a cada SO?
- Centralizado: gerenciamento de processos, memória, dispositivos e arquivos.
- De rede: acesso remoto e troca de informações.
- Distribuído: visão global de recursos e uso do poder computacional.
- Quantas cópias existem de um SO centralizado, de rede e distribuído?
Centralizado: uma; de rede: muitas; distribuído: muitas. - Como a comunicação ocorre nos três sistemas?
Centralizado: memória compartilhada; de rede: arquivos compartilhados e protocolos; distribuído: troca de mensagens. - Em que SO há uma única fila de execução?
No SO Centralizado. - O que significa o crescimento incremental em um SD?
O poder computacional pode ser aumentado através da inclusão de novos equipamentos. - Podemos citar como desvantagens em um SD?
Aplicações mais complexas, necessidade de mecanismos de segurança e dependência da rede. - Qual é o aspecto mais importante em um projeto de SD? Por quê?
Pessoas trabalhando juntas e compartilhando informações sem se preocupar com a distribuição física. - Como podemos aumentar a confiabilidade em um SD?
Realizando a redundância de hardware e de software. - Quais são as medidas de desempenho em SD?
Tempo de resposta, throughput (tarefas/tempo), utilização do sistema e uso da capacidade da rede. - Quais são os inimigos da escalabilidade em um SD?
Componentes, tabelas e algoritmos centralizados. - O que são sockets e como são utilizados em um SD?
Extremidade de um canal de comunicação, utilizada para que processos distribuídos se comuniquem em uma rede. - Qual a função do CORBA na comunicação distribuída?
Permitir que aplicações escritas em diferentes linguagens se comuniquem usando IDL e um ORB. - O que é sincronização em um SD?
Comunicação entre processos em um sistema distribuído. - Como podemos definir uma região crítica em SD?
Região do sistema que não pode ser acessada de forma concorrida. - Como é a sincronização em um sistema centralizado e em um SD?
Centralizado: todos compartilham o mesmo clock. Distribuído: cada computador possui seu próprio clock. - O que corresponde em SD seguros o controle de acesso ou autorização?
Garantir que apenas usuários autorizados consumam os recursos protegidos. - Suponha que dois processos detectem a morte do coordenador simultaneamente. O que acontecerá?
Será eleito o processo que detiver o maior ID. - Cite outro algoritmo possível para o coordenador além da fila de espera.
Algoritmo de eleição. - O que é exclusão mútua?
Técnica usada para evitar que dois processos acessem simultaneamente um recurso compartilhado (seção crítica). - Como funciona o algoritmo de eleição?
O coordenador pode ser o processo com maior ID ou endereço de rede. Quando um processo deseja acessar uma região crítica, solicita permissão ao coordenador. Se o recurso estiver livre, o coordenador concede; caso contrário, o processo entra em uma fila.