Windows (a partir do Windows Vista): Kernel Híbrido (características do monolítico e do microkernel).
Windows (anterior ao Windows Vista): Kernel Monolítico
Linux: Apesar de ser considerado de kernel monolítico tem algumas exceções de regras ao padrão, por exemplo, os drivers de dispositivos são configurados como módulos e carregados enquanto o sistema está sendo executado, estes ainda podem ser pré-inseridos, tais modificações garantiram uma melhora no multiprocessamento simétrico. Para Carlos Morimoto (2006), o kernel do Linux incorporou algumas características de um kernel modular, o que o torna atualmente uma espécie de kernel "semi-monolítico".
O Android usa um microkernel Linux, a Google efetuou diversas modificações e fez a retirada de várias particularidades do Kernel Linux, deixando apenas o essencial, obviamente existem muitas outras mudanças no Android, que o distanciam de distribuições Linux, mas abordaremos isso em uma outra matéria. Outros exemplos de microkernel são o L4Linux, MINIX e Symbian.
FONTE:
https://www.contapraeu.com.br/tecnologia/o-que-e-um-kernel/
https://www.hardware.com.br/termos/kernel-monolitico-kernel-modular
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