Questão de Sistemas Operacionais — Linux — FGV 2024
Sistemas Operacionais›Linux
Código
fg085502
Banca
FGV
Órgão
INPE
Ano
2024
Nível
Superior
Cargo
Tecnologista Júnior I - Desenvolvimento de Software Embarcado
A divisão dos processos em threads permite a execução de tarefas de maneira paralela ou concorrente.As threads, em um sistema operacional Linux,
Apodem ser terminadas seletivamente através do comando kil.
Bsão executadas de forma independente para minimizar conflitos.
Ccompartilham, em um mesmo processo, o mesmo espaço de endereçamento.
Dapresentam um custo de processamento maior durante mudanças de contexto do que os processos.
Enão são vantajosas em sistemas multiprocessadores, por causarem perda de desempenho.
Revelar gabarito e comentário▾
GabaritoC — compartilham, em um mesmo processo, o mesmo espaço de endereçamento.
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 no Linux
Gabarito: letra C. As threads de um mesmo processo compartilham o mesmo espaço de endereçamento, incluindo código, dados e heap. Essa é uma característica fundamental que as distingue dos processos, que possuem espaços de endereçamento separados.
Característica
Threads (mesmo processo)
Processos
Espaço de endereçamento
Compartilhado (código, dados, heap)
Separado (cada processo tem o seu)
Custo de mudança de contexto
Menor (não troca tabelas de páginas/TLB)
Maior (troca tabelas de páginas/TLB)
Comunicação entre si
Direta (variáveis globais, sem IPC)
Indireta (IPC: pipes, sockets, etc.)
Independência
Baixa (compartilham recursos, risco de conflitos)
Alta (isolamento de recursos)
Vantagem em multiprocessadores
Alta (paralelismo dentro do processo)
Alta (paralelismo entre processos)
Threads no Linux
1Características
Compartilham espaço de endereçamento
Mudança de contexto mais leve
Conflitos (condições de corrida)
2Comparação com processos
Threads: mesmo espaço de endereçamento
Processos: espaços separados
3Multiprocessadores
Vantajosas (paralelismo real)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Embora o comando kill possa, em algumas implementações, enviar sinais a threads específicas (usando o TID), a afirmação genérica de que "podem ser terminadas seletivamente através do comando kil [sic]" não reflete o uso padrão. O kill tradicional atua sobre processos, não sobre threads individuais. Além disso, o termo "kil" parece um erro de digitação, mas mesmo considerando kill, a forma seletiva não é a prática comum.
Alternativa B — ❌ Incorreta
Threads não são executadas de forma independente para minimizar conflitos; elas compartilham recursos (como memória e descritores de arquivos) e a comunicação entre threads pode gerar conflitos (condições de corrida). A independência é característica de processos, não de threads.
Alternativa C — ✅ Correta
Threads de um mesmo processo compartilham o mesmo espaço de endereçamento. Isso permite que elas acessem variáveis globais e estruturas de dados comuns sem necessidade de mecanismos complexos de comunicação entre processos (IPC). É uma definição clássica de threads.
Alternativa D — ❌ Incorreta
A mudança de contexto entre threads de um mesmo processo é mais leve (menos custo) do que entre processos, pois não envolve troca de tabelas de páginas ou TLB. Portanto, afirmar que o custo é maior está incorreto.
Alternativa E — ❌ Incorreta
Threads são altamente vantajosas em sistemas multiprocessadores, pois permitem que múltiplas tarefas de um mesmo processo sejam executadas em paralelo, aproveitando os múltiplos núcleos. Não há perda de desempenho intrínseca; pelo contrário, o paralelismo pode acelerar a execução.