Qual das alternativas abaixo é um mecanismo que possibilita a execução simultânea de instruções em um sistema operacional?
AOtimização de memória.
BProcessamento paralelo.
CSegmentação de memória.
DMinimização de processos.
EThreading.
Revelar gabarito e comentário▾
GabaritoE — Threading.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Threads e execução simultânea em sistemas operacionais
Gabarito: letra E. O mecanismo que possibilita a execução simultânea de instruções em um sistema operacional é o threading (multithreading), pois permite que um processo seja dividido em múltiplos fluxos de execução (threads) que podem rodar concorrentemente — e, em máquinas com múltiplos núcleos, verdadeiramente em paralelo. As demais alternativas tratam de outros aspectos (memória, processos) que não têm como finalidade a execução simultânea de instruções.
O conceito central aqui é o de thread (ou linha de execução). Uma thread é um fluxo de execução independente dentro de um processo. Enquanto um processo tradicional (single-thread) executa uma sequência única de instruções, um processo multithread pode ter várias threads, cada uma executando seu próprio código, mas compartilhando o mesmo espaço de endereçamento e os mesmos recursos do processo (arquivos abertos, variáveis globais, etc.). Essa característica é o que permite a execução simultânea: em um sistema com uma única CPU, as threads são escalonadas de forma tão rápida que parecem simultâneas (concorrência); em sistemas com múltiplas CPUs ou núcleos, elas podem ser executadas de fato ao mesmo tempo (paralelismo).
A banca explora a confusão entre concorrência e paralelismo. O threading é o mecanismo que viabiliza ambos: a concorrência (intercalação de execuções) e, quando há hardware adequado, o paralelismo real. As alternativas incorretas tentam atrair o candidato com termos relacionados a outros subsistemas do SO, como gerência de memória (otimização, segmentação) ou gestão de processos (minimização), que não têm relação direta com a execução simultânea de instruções.
Para fixar: a execução simultânea de instruções é o objetivo do multithreading. O sistema operacional gerencia as threads (sejam de usuário ou de núcleo) e o escalonador decide qual thread executa em cada momento. Em um sistema multicore, threads de um mesmo processo podem rodar em paralelo, acelerando a aplicação. Esse é o ponto que separa a alternativa correta das demais: apenas o threading é um mecanismo voltado à execução simultânea.
Threading (multithreading)
1Fluxo de execução independente
Dentro de um processo
Compartilha espaço de endereçamento
2Execução simultânea
Concorrência (1 núcleo, escalonamento)
Paralelismo (múltiplos núcleos)
3Tipos
Threads de núcleo (SO)
Threads de usuário (bibliotecas)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Otimização de memória é um conceito ligado à gerência de memória (técnicas como alocação, paginação, segmentação, memória virtual). Não é um mecanismo de execução simultânea de instruções. A otimização de memória visa melhorar o uso da memória disponível, não criar fluxos de execução paralelos.
Alternativa B — ❌ Incorreta
Processamento paralelo é um resultado ou uma capacidade do hardware (múltiplas CPUs/núcleos) que permite executar instruções simultaneamente. No entanto, a questão pergunta por um mecanismo do sistema operacional que possibilita essa execução. O processamento paralelo é a consequência, não o mecanismo. O mecanismo que o SO oferece para aproveitar o paralelismo é o threading (multithreading). Além disso, a alternativa é genérica e não se refere a um mecanismo específico do SO.
Alternativa C — ❌ Incorreta
Segmentação de memória é uma técnica de gerência de memória que divide o espaço de endereçamento em segmentos lógicos (código, dados, pilha). Não tem relação com execução simultânea de instruções. É um mecanismo de organização da memória, não de execução.
Alternativa D — ❌ Incorreta
Minimização de processos não é um termo técnico consagrado em sistemas operacionais. Reduzir o número de processos não cria execução simultânea; pelo contrário, diminuir a quantidade de processos tende a reduzir a concorrência. Não há relação com o mecanismo de execução simultânea.
Alternativa E — ✅ Correta ⟵ GABARITO
Threading (ou multithreading) é exatamente o mecanismo que permite a execução simultânea de instruções. Uma thread é um fluxo de execução independente dentro de um processo; múltiplas threads podem ser executadas concorrentemente (em um único núcleo, por escalonamento) ou em paralelo (em múltiplos núcleos). O suporte a threads é fornecido pelo sistema operacional (threads de núcleo) ou por bibliotecas de usuário (threads de usuário). É o conceito que responde diretamente ao enunciado.