• Olá Visitante, se gosta do forum e pretende contribuir com um donativo para auxiliar nos encargos financeiros inerentes ao alojamento desta plataforma, pode encontrar mais informações sobre os várias formas disponíveis para o fazer no seguinte tópico: leia mais... O seu contributo é importante! Obrigado.

Kernel Monolítico, Kernel Modular

Status
Não está aberto para novas respostas.

cyber_wordl

GF Ouro
Membro Inactivo
Entrou
Set 26, 2006
Mensagens
2,023
Gostos Recebidos
0
Existem duas "escolas" para o desenvolvimento de sistemas operacionais. Uma delas, aparentemente a com mais adeptos, defende a idéia de um kernel modular, onde o kernel é o mais simples possível e se encarrega de basicamente de coordenar a troca de mensagens e dados entre os diferentes componentes do sistema. Em teoria este sistema é mais simples, pois ao invés de um único e gigantesco Kernel com milhões de linhas de código você passa a ter vários componentes menores separados.

A idéia de kernel monolítico é defendida principalmente por Linux Torvalds, que a utiliza no kernel do Linux. O principal argumento a favor do kernel monolítico é que embora dividir o kernel em vários componentes facilite o desenvolvimento, coordenar a troca de informações entre as partes de uma forma confiável torna-se tão complicado que logo supera este ganho inicial.

Apesar disso, 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". Todo o kernel, incluindo os drivers de dispositivo e outros componentes ainda formam um único bloco de código (gigantesco, mais de 30 MB compactado) mas agora eles podem ser compilados separadamente na forma de módulos. Estes módulos podem ser carregados e descarregados a qualquer tempo, como seria possível num kernel modular, porém sem a perda de desempenho ou aumento da complexidade que existiria ao utilizar um kernel realmente modular.

A desvantagem é que os módulos compilados para uma determinada versão do kernel não podem ser usados em outras máquinas, que utilizem versões diferentes. Mesmo drivers binários, como os para softmodems precisam ser primeiro transformados em módulos, utilizando o código fonte ou os headers do kernel atual para só depois poderem ser usados.
 
Última edição por um moderador:
Status
Não está aberto para novas respostas.
Topo