Questões de Threads (Sistemas Operacionais)

Limpar Busca

A função CreateThread do Windows inicia um thread paralelo em relação a um thread em execução. Um programa principal roda:

Imagem relacionada à questão do Questões Estratégicas
O número total de threads descendentes do programa principal (incluindo ele) é igual a

  • A 5.
  • B 10.
  • C 8.
  • D 4.
  • E 7.

As threads e os processos são conceitos fundamentais em sistemas operacionais e programação concorrente. 

Assinale a opção que descreve uma diferença importante no conceito entre processos e threads, incluindo aspectos de comunicação e sincronização. 

  • A Threads podem compartilhar recursos e memória, enquanto processos têm seus próprios espaços de endereço separados.
  • B Processos são mais eficientes em termos de comunicação e sincronização do que threads.
  • C Threads podem ser distribuídas em diferentes computadores, enquanto processos estão limitados a um único computador.
  • D Processos podem executar em paralelo em diferentes núcleos de CPU, enquanto threads são sempre executadas sequencialmente em um único núcleo.
  • E Threads podem iniciar novos threads, enquanto processos não podem iniciar novos processos.

Um conceito fundamental para o melhor aproveitamento de recursos por um sistema operacional é o de multithreading.
Para o emprego eficaz de multithreading em um sistema operacional, é fundamental a existência de mecanismos de sincronização eficientes. Nesse contexto, analise as afirmativas a seguir.

I. Por definição, semáforos possuem um contador, cujos valores podem ser 0,1 ou 2.
II. Mutexes são projetados para garantir que apenas uma thread possa acessar um recurso compartilhado por vez.
III. Mutexes podem ser considerados uma generalização de semáforos, por conta da maior flexibilidade do contador de um mutex.

Está correto o que se afirma em

  • A I, apenas.
  • B II, apenas.
  • C III, apenas.
  • D II e III, apenas.
  • E I, II e III.
Multithreading é um conceito fundamental para o melhor aproveitamento de recursos por um sistema operacional.
Para o emprego eficaz desse conceito, é fundamental a existência de mecanismos de sincronização eficientes.

Nesse contexto, analise as afirmativas a seguir.

I. Por definição, semáforos possuem um contador, cujos valores podem ser 0,1 ou 2.
II. Mutexes são projetados para garantir que apenas uma thread possa acessar um recurso compartilhado por vez.
III. Mutexes podem ser considerados uma generalização de semáforos, por conta da maior flexibilidade do contador de um mutex.

Está correto o que se afirma em
  • A I, apenas.
  • B II, apenas.
  • C III, apenas.
  • D II e III, apenas.
  • E I, II e III.

Na computação paralela, onde várias tarefas ou processos são executados simultaneamente em diferentes núcleos de processador, a sincronização entre processos é essencial para garantir que essas tarefas cooperem e compartilhem recursos de forma eficiente e correta.
No contexto de um sistema de computação paralela, assinale a opção que apresenta um método de sincronização entre processos que garante que apenas um processo possa acessar uma seção crítica de código por vez.

  • A Semáforo binário.
  • B Barreiras.
  • C Mutex.
  • D Memória compartilhada.
  • E Filas de mensagens.