FC ConcursosFC Concursos

Questão FC266523

No que diz respeito às primitivas básicas de programação paralela, controle de tarefas, comunicação e sincronização, na implementação de threads, três modelos de sincronização são

Conceitos de Arquitetura de Computadores

IDECAN · 2021

No que diz respeito às primitivas básicas de programação paralela, controle de tarefas, comunicação e sincronização, na implementação de threads, três modelos de sincronização são descritos a seguir.

 

I. garante que somente uma thread por vez irá acessar uma seção de código específica ou acessar dados compartilhados – serializa a execução de threads

 

II. bloqueia threads até que uma condição seja satisfeita

 

III. coordenam o acesso a recursos, indicando o limite de threads que podem ter acesso concorrente a um recurso

 

Os três modelos de sincronização em I, II e III são denominados, respectivamente

  1. mutex locks, condition variables e semáforos
  2. mutex locks, semáforos e condition variables
  3. condition variables, mutex locks e semáforos
  4. semáforos, mutex locks e condition variables
Mostrar resposta e comentário

Gabarito

A

Comentário do professor

Mutex locks: garantem exclusão mútua, isto é, apenas uma thread por vez pode entrar numa seção crítica ou acessar dados compartilhados. Uma thread adquire o mutex antes de acessar o recurso e o libera ao terminar, serializando o acesso.

Condition variables: permitem que threads se bloqueiem até que uma determinada condição lógica seja satisfeita. Normalmente são usadas em conjunto com um mutex: a thread libera o mutex ao aguardar e o reacquire ao ser sinalizada, evitando busy-wait e coordenando espera por predicados.

Semáforos: são contadores sincronizadores que coordenam acesso a recursos limitados. Um semáforo com valor N permite até N threads concorrentes; operações típicas são wait (decrementa/espera) e signal (incrementa/libera), útil para controlar simultaneidade e ordem de acesso.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo