Questão de Sistemas Operacionais — Conceitos, Funções e Tipos de Sistemas Operacionais — FGV 2024
- Código
- fg165643
- Banca
- FGV
- Órgão
- ALETO
- Ano
- 2024
- Cargo
- Ana Leg ( )
- Aexonúcleo.
- Bfragmentada.
- Cmáquina virtual.
- Dmicronúcleo.
- Emonolítica.
GabaritoD — micronúcleo.
Gabarito: letra D. A estrutura descrita — divisão do SO em módulos, com apenas um deles executando em modo privilegiado e os demais como processos de usuário — é exatamente o modelo de micronúcleo (ou microkernel), que reduz o núcleo ao mínimo (comunicação e gerência de processos) e move os demais serviços para o espaço do usuário. Essa é a definição clássica adotada por Tanenbaum e cobrada pela FGV.
O sistema operacional pode ser estruturado de várias formas, e a banca quer que você reconheça cada arquitetura pela sua característica central. Vamos entender o que define cada uma delas, porque é essa distinção que separa as alternativas.
O micronúcleo (microkernel) é uma arquitetura que busca minimizar o que roda em modo privilegiado (modo núcleo). Apenas as funções essenciais — comunicação entre processos (IPC) e gerenciamento básico de processos — permanecem no núcleo. Todos os outros serviços, como sistemas de arquivos, gerenciamento de memória e drivers de dispositivo, são implementados como processos de usuário (servidores), que se comunicam por troca de mensagens. Isso aumenta a modularidade e a segurança, pois uma falha em um serviço não derruba o núcleo inteiro. Exemplos clássicos: Mach, GNU Hurd, Minix 3.
Critério | Monolítica | Micronúcleo | Máquina Virtual | Exonúcleo |
|---|---|---|---|---|
Onde roda o SO | Tudo no modo núcleo | Só o mínimo no núcleo | Um hipervisor + SOs convidados | Núcleo mínimo + bibliotecas |
Serviços (arquivos, memória) | Dentro do núcleo | Como processos de usuário | Dentro de cada SO convidado | No espaço do usuário |
Comunicação | Chamadas de sistema diretas | Troca de mensagens | Virtualização do hardware | Chamadas a bibliotecas |
Exemplos | Linux, Windows, macOS | Mach, GNU Hurd, Minix 3 | VMware, Xen, VirtualBox | Ex: ExOS (pesquisa) |
A banca descreve o micronúcleo com precisão, mas o candidato pode confundir com máquina virtual (que também tem um núcleo mínimo, mas a ideia é virtualizar o hardware para rodar SOs completos) ou com exonúcleo (que também move serviços para o usuário, mas com filosofia diferente). A palavra-chave é "apenas um deles é executado em modo privilegiado" — isso é a marca registrada do micronúcleo.
O exonúcleo (exokernel) também minimiza o núcleo, mas sua abordagem é diferente: ele apenas aloca recursos físicos (memória, processador) e fornece bibliotecas no espaço do usuário para que os aplicativos gerenciem esses recursos diretamente. Não há a divisão em módulos com um único núcleo privilegiado; o exonúcleo é ainda mais radical, expondo o hardware sem abstrações completas. A descrição do enunciado não corresponde a essa filosofia.
"Fragmentada" não é uma estrutura de sistema operacional reconhecida na literatura clássica (Tanenbaum, Silberschatz). Não existe um modelo chamado "fragmentada" para organizar o SO — é um distrator puro, sem correspondência técnica.
A máquina virtual (ou monitor de máquinas virtuais) fornece uma abstração completa do hardware para que vários sistemas operacionais rodem simultaneamente, cada um em sua própria máquina virtual. O núcleo (hipervisor) roda em modo privilegiado, mas os SOs convidados rodam como se fossem máquinas reais — não são "módulos" do mesmo SO. A descrição fala de módulos de um único SO, não de virtualização de múltiplos SOs.
O micronúcleo é exatamente o que o enunciado descreve: o SO é dividido em módulos, apenas o núcleo mínimo (comunicação e gerência de processos) roda em modo privilegiado, e os demais serviços (sistemas de arquivos, drivers, etc.) são implementados como processos de usuário. Essa é a definição canônica, presente em Tanenbaum e nos materiais de concursos.
A estrutura monolítica é o oposto: todo o código do SO (ou a maior parte dele) roda em modo núcleo, em um único espaço de endereçamento. Não há divisão em módulos com apenas um privilegiado — tudo é privilegiado. Linux e Windows são exemplos de núcleos monolíticos (embora modernos usem módulos carregáveis).
A banca descreve o micronúcleo com precisão, mas o candidato pode confundir com máquina virtual (que também tem um núcleo mínimo, mas a ideia é virtualizar o hardware para rodar SOs completos) ou com exonúcleo (que também move serviços para o usuário, mas com filosofia diferente). A palavra-chave é "apenas um deles é executado em modo privilegiado" — isso é a marca registrada do micronúcleo.
Para diferenciar na prova, lembre: monolítico = tudo no núcleo; micronúcleo = mínimo no núcleo, serviços como processos; máquina virtual = virtualiza hardware para múltiplos SOs; exonúcleo = expõe hardware, bibliotecas no usuário. Se a questão falar em "módulos" e "processos de usuário", é micronúcleo.
Gabarito: letra D
Link permanente: /questoes/fg165643