Pular para o conteúdo principal

Questão de Sistemas Operacionais — Linux — FUNDATEC 2024

Sistemas OperacionaisLinux
Código
qg164410
Banca
FUNDATEC
Órgão
IF Sul - MG
Ano
2024
Nível
Superior
Cargo
Professor do Ensino Básico, técnico e Tecnológico: MCH-02 - Informática
Sobre a chamada de sistema vfork() em sistemas operacionais Linux, analise as assertivas abaixo, assinalando V, se verdadeiras, ou F, se falsas.( ) Ao ser chamada, o processo-pai é suspenso, e o processo-filho usa o espaço de endereçamento do processo-pai.( ) Deve-se garantir que, após ser chamada, o processo-filho altere o espaço de endereçamento do processo-pai.( ) Sua utilização é indicada quando o processo-filho chama exec() imediatamente após a criação.A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
  1. AV – F – F.
  2. BV – V – F.
  3. CV – F – V.
  4. DF – F – V.
  5. EF – V – F.
Revelar gabarito e comentário

GabaritoC — V – F – V.

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”.

Chamada de sistema vfork() no Linux

Gabarito: C (V – F – V). A chamada vfork() suspende o processo-pai e faz o processo-filho executar no mesmo espaço de endereçamento, sem cópia, sendo ideal para quando o filho chama exec() imediatamente. A segunda assertiva é falsa pois o filho não deve alterar o espaço de endereçamento do pai — comportamento indefinido. A sequência correta é V, F, V.

Assertiva

V/F

Justificativa

Ao ser chamada, o processo-pai é suspenso, e o processo-filho usa o espaço de endereçamento do processo-pai.

V

O vfork() suspende o pai e o filho executa no mesmo espaço de endereçamento, sem cópia.

Deve-se garantir que, após ser chamada, o processo-filho altere o espaço de endereçamento do processo-pai.

F

O filho não deve alterar o espaço do pai; isso gera comportamento indefinido.

Sua utilização é indicada quando o processo-filho chama exec() imediatamente após a criação.

V

O vfork() é otimizado para casos em que o filho chama exec() logo em seguida.

  1. 1Pai suspenso
  2. 2Filho usa mesmo espaço
  3. 3Filho chama exec()
  4. 4Pai retoma execução
LEVEL · soulevel.com.br

Alternativa A — ❌ Incorreta (V – F – F)

A sequência proposta é V, F, F. A terceira assertiva é verdadeira (V), mas esta alternativa coloca F, portanto está incorreta.

Alternativa B — ❌ Incorreta (V – V – F)

A sequência é V, V, F. A segunda assertiva é falsa (F), mas esta alternativa coloca V, e a terceira é verdadeira (V) mas coloca F. Dupla incorreção.

Alternativa C — ✅ Correta ⟵ GABARITO

A sequência é V, F, V. Corresponde exatamente aos valores corretos: primeira V, segunda F, terceira V.

Alternativa D — ❌ Incorreta (F – F – V)

A sequência é F, F, V. A primeira assertiva é verdadeira (V), mas esta alternativa coloca F, incorreto. A segunda é F (correto), a terceira V (correto), mas o erro na primeira invalida.

Alternativa E — ❌ Incorreta (F – V – F)

A sequência é F, V, F. A primeira assertiva é V (colocaram F), a segunda é F (colocaram V), a terceira é V (colocaram F). Tudo invertido.

NÃO CAIA NESSA!

A segunda assertiva é a mais traiçoeira: muitos pensam que o filho pode alterar a memória do pai, mas a especificação POSIX proíbe explicitamente. O filho deve apenas chamar exec() ou _exit(). Memorize: vfork = cópia zero, mas filho não mexe em nada.

Conclusão: A única alternativa que reflete a sequência correta é a letra C.

Link permanente: /questoes/qg164410