Analise as afirmações a seguir sobre execução de múltiplos ...

Próximas questões
Com base no mesmo assunto
Q1103184 Sistemas Operacionais

Analise as afirmações a seguir sobre execução de múltiplos processos e threads em um sistema operacional e assinale com V as verdadeiras e com F as falsas.


( ) Processos são considerados mais pesados que threads porque podem realizar operações de entrada / saída.

( ) Uma troca de contexto entre threads de um mesmo processo é mais leve do que uma troca de contexto entre processos.

( ) Comunicação interprocessos utilizando transmissão de mensagem tem desempenho superior à comunicação utilizando memória compartilhada.

( ) Uma razão para utilizar threads em vez de processos para computação paralela é facilitar compartilhamento de memória.


Assinale a sequência CORRETA.

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Vamos analisar a questão e chegar à alternativa correta, que é a letra C (F V F V).

Primeiro, vamos entender cada afirmação e discutir por que elas são verdadeiras ou falsas.

( ) Processos são considerados mais pesados que threads porque podem realizar operações de entrada/saída.

Essa afirmação é FALSA. Processos são, de fato, mais "pesados" que threads, mas não é por causa das operações de entrada/saída. A principal razão é que processos possuem um espaço de endereço separado, necessitando de mais recursos do sistema para gerenciar e trocar contextos, enquanto as threads compartilham o mesmo espaço de endereço do processo pai, tornando a troca de contexto mais eficiente.

( ) Uma troca de contexto entre threads de um mesmo processo é mais leve do que uma troca de contexto entre processos.

Essa afirmação é VERDADEIRA. Como as threads compartilham o mesmo espaço de endereço, a troca de contexto entre elas é menos custosa em termos de tempo e recursos comparada à troca de contexto entre processos, que envolve a troca não apenas dos registradores, mas também dos espaços de memória.

( ) Comunicação interprocessos utilizando transmissão de mensagem tem desempenho superior à comunicação utilizando memória compartilhada.

Essa afirmação é FALSA. A comunicação via memória compartilhada é, em geral, mais rápida e eficiente porque a troca de informações acontece diretamente na memória, sem a necessidade de cópias adicionais ou processos de sincronização envolvidos na transmissão de mensagens.

( ) Uma razão para utilizar threads em vez de processos para computação paralela é facilitar compartilhamento de memória.

Essa afirmação é VERDADEIRA. Utilizar threads facilita o compartilhamento de memória, pois as threads do mesmo processo compartilham o mesmo espaço de endereço, permitindo uma comunicação mais eficiente e menos complexa entre elas. Isso é particularmente vantajoso em aplicações que requerem troca frequente e rápida de informações.

Resumindo, a alternativa C está correta porque:

F - A primeira afirmação está incorreta sobre a razão de processos serem mais pesados que threads.

V - A segunda afirmação está correta sobre a troca de contexto entre threads ser mais leve.

F - A terceira afirmação está incorreta sobre o desempenho da comunicação interprocessos.

V - A quarta afirmação está correta sobre o compartilhamento de memória ser uma razão para utilizar threads.

Espero que esta explicação tenha esclarecido suas dúvidas. Se precisar de mais alguma coisa, estarei por aqui para ajudar!

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

( F ) Processos são considerados mais pesados que threads porque podem realizar operações de entrada / saída.

Incorreta, não é por que processos realizam I/O que eles são mais pesados, na verdade as threads são mais leves por que compartilham vários 'itens' dos processos.

( V ) Uma troca de contexto entre threads de um mesmo processo é mais leve do que uma troca de contexto entre processos.

Correto, conforme mencionado acima

( F ) Comunicação interprocessos utilizando transmissão de mensagem tem desempenho superior à comunicação utilizando memória compartilhada.

Incorreta, motivo? Não encontrei nada na literatura que corrobore, porém dificilmente transmissão de mensagem será superior a algo que já esteja em memória compartilhada. Porém se alguém souber qual fonte o examinador usou, ou se cometi algum erro, por favor me envie uma mensagem!

( V ) Uma razão para utilizar threads em vez de processos para computação paralela é facilitar compartilhamento de memória.

Correto, já que thread compartilham memória; e processos são isolados, não compartilham memória

GABARITO ALTERNATIVA C

Gabarito C

1) Threads também podem fazer I/O

2) Sim troca de contexto entre threads é mais leve do que de processo

3) Não, pois quando manda via mensagem, o mesmo está mandando pela rede... logo quando tem algo in loco, é mais rápido para processar.

4) Sim pois threads também é mais leve e facil de utilizar.

Clique para visualizar este comentário

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