O kernel do Linux é
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
A alternativa correta é a D - monolítico.
Vamos entender o porquê:
O kernel é a parte fundamental de um sistema operacional, responsável por gerenciar recursos do sistema e permitir a comunicação entre hardware e software. Existem diversos tipos de kernels, cada um com suas características específicas.
O kernel do Linux é classificado como monolítico. Isso significa que ele é um único bloco de código executável, onde todos os serviços do sistema operacional, como gerenciamento de memória, processos, dispositivos e chamadas de sistema, são executados em modo kernel. Isso pode oferecer um desempenho superior devido à comunicação eficiente entre diferentes componentes do kernel.
Para resolver a questão, o aluno precisa conhecer os diferentes tipos de kernels e suas características:
- Gráfico: Essa alternativa está incorreta, pois se refere a interfaces gráficas e não ao tipo de kernel.
- Micronúcleo: Não é o caso do Linux. Micronúcleos (ou microkernels) têm uma abordagem diferente, onde apenas um conjunto mínimo de serviços essenciais é executado em modo kernel, com outros serviços executando em espaço de usuário.
- GNU: Essa alternativa não está correta. GNU é um projeto de software livre que, juntamente com o kernel Linux, forma uma distribuição completa de sistema operacional, mas não se refere ao tipo de kernel.
- Minix: Embora Minix seja um sistema operacional com um kernel do tipo micronúcleo, ele não se refere ao kernel do Linux.
Portanto, a alternativa D - monolítico é a correta, pois descreve precisamente a arquitetura do kernel do Linux. Conhecer essas características é essencial para compreender como diferentes sistemas operacionais gerenciam seus recursos e serviços.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
MONOLÍTICO
Kernel do Linux é monolítico por questões de desempenho.
Finalidade do núcleo:
O principal propósito do núcleo é gerenciar os recursos do computador e permitir que outros programas rodem e usem destes recursos.
Arquitetura Monolítica-> Pode ser comparada com uma aplicação formada por vários módulos que são compilados separadamente e depois linkados, formando um grande e único programa executável. Todos processos em um só núcleo.
Arquitetura de Camadas-> Devido ao Aumento da complexidade e do tamanho do código dos sistemas foi necessário criar técnicas de modulação então o sistema passou a ser dividido em camadas sobrepostas. Cada camada oferece um conjunto de funções que podem ser utilizadas apenas pelas camadas superiores(lembra um pouco REDES modelo OSI).
Vantagem: Isolar as funções do sistema operacional, facilitando a manutenção e depuração, além de criar hierarquia de níveis
Desvantagem: Queda no Desempenho.
Arquitetura Máquina Virtual -> Serve para criar um nível intermediário entre o hardware e o sistema operacional, denominado gerência de máquinas virtuais possibilitando a criação de diversas máquinas virtuais independentes onde cada uma oferece cópia virtual do hardware.
Vantagem: Portabilidade do código / consolidação de servidores/ aumento da disponibilidade / facilidade de escalabilidade e balanceamento de carga / facilidade no desenvolvimento de software.
Arquitetura MicroKernel-> Tendência nos sistemas operacionais modernos visando tornar o núcleo do SO o menor e mais simples possível.
Um dos benefícios da abordagem de microkernel é que ela facilita a extensão do sistema operacional. Todos os serviços novos são adicionados ao espaço do usuário e, consequentemente, não requerem a modificação do kernel.
O microkernel também fornece mais segurança e confiabilidade, já que a maioria dos serviços é executada como processos de usuário — e não do kernel. Se um serviço falha, o resto do sistema operacional permanece intocado.
Sistemas Híbridos -> Na prática, muito poucos sistemas operacionais adotam uma estrutura única rigidamente definida. Em vez disso, eles combinam diferentes estruturas, resultando em sistemas híbridos que resolvem problemas de
desempenho, segurança e usabilidade.
Por exemplo, tanto o Linux quanto o Solaris são monolíticos porque o desempenho é muito mais eficiente quando o sistema operacional ocupa um único espaço de endereçamento. No entanto, eles também são modulares para que novas funcionalidades possam ser adicionadas ao kernel dinamicamente.
Exonúcleos -> Um exonúcleo é um tipo de núcleo que não abstrai hardware in modelos teóricos. Ao invés disso ele aloca recursos físicos de hardware, como o tempo de um processador, páginas de memória, e blocos de disco, para diferentes programas.
Fonte:
Arquitetura de SO - Machado 5 ed /Fundamentos de SO - Silberschatz 9ed
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo