Na programação distribuída, em geral faz-se uso de passagem ...

Próximas questões
Com base no mesmo assunto
Q48322 Arquitetura de Computadores
Quanto aos tópicos avançados em tecnologia da informação, julgue os itens a seguir.

Na programação distribuída, em geral faz-se uso de passagem de mensagens, sejam elas síncronas ou assíncronas, embora o compartilhamento de memória possa ser realizado por meio do uso de sistemas centrados em bancos de dados cliente-servidor.
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: C - certo

Na área de Sistemas Distribuídos, o conceito de programação distribuída é um ponto fundamental. Esta abordagem faz uso intensivo da passagem de mensagens, que é uma forma de comunicação entre processos que podem ou não compartilhar um mesmo espaço de memória.

As mensagens trocadas podem ser síncronas ou assíncronas. No contexto síncrono, o emissor espera uma resposta imediata após enviar uma mensagem, o que pode causar atraso na continuidade de sua execução até que a resposta seja recebida. Já no contexto assíncrono, o emissor pode prosseguir com sua execução sem a necessidade de esperar por uma resposta, o que favorece a concorrência e pode aumentar a eficiência do sistema.

Além da passagem de mensagens, existe a opção de compartilhamento de memória, embora seja menos comum em sistemas distribuídos devido a complexidade e desafios inerentes ao gerenciamento de memória compartilhada em múltiplas máquinas. No entanto, essa abordagem pode ser viabilizada em cenários específicos, como em sistemas centrados em banco de dados cliente-servidor, onde o banco de dados atua como um repositório central e gerencia o acesso concorrente aos dados.

Esta explicação justifica a alternativa como correta, visto que reconhece a passagem de mensagens como um método primário na programação distribuída e também aceita o uso de compartilhamento de memória em sistemas distribuídos que operam dentro de um modelo cliente-servidor.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Certo.

Por que a afirmação procede

  • Passagem de mensagens é o mecanismo predominante em programação distribuída.
  • – Para coordenar atividades entre processos que rodam em máquinas diferentes, a forma mais direta e portátil é enviar mensagens pela rede.
  • – As mensagens podem ser síncronas, quando o emissor bloqueia até receber confirmação ou resposta, ou assíncronas, quando o emissor segue executando e trata a resposta mais tarde (via callback, future, fila etc.).

Compartilhamento de memória também é possível, mas de outra maneira.

  • – Em ambientes distribuídos puros, não há memória física comum entre nós; entretanto, pode‑se simular memória compartilhada usando um repositório central acessado por todos.
  • – Um exemplo clássico é o modelo cliente‑servidor com banco de dados: o SGBD mantém o estado global, e os clientes leem/escrevem nesses dados como se fosse um “espaço de memória” compartilhado.
  • – Há ainda técnicas de DSM (Distributed Shared Memory) que paginam blocos de dados entre nós, porém, na prática empresarial, o banco de dados centralizado é a forma mais difundida de partilhar estado entre vários processos.

Dessa forma, a sentença está correta ao afirmar que:

  1. Programação distribuída costuma basear‑se em passagem de mensagens síncronas ou assíncronas;
  2. O compartilhamento de “memória” pode ser obtido quando todos os nós acessam um repositório único — como ocorre em sistemas cliente‑servidor centrados em banco de dados.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo