Você sabe o que é o Kernel Hurd?

Vinícius Vieira 05/07/2012 1
Você sabe o que é o Kernel Hurd?
Share

bannerAntes de entendermos o que é o HURD, vamos entender o que é um kernel. Na informática, o núcleo ou cerne (em inglês: kernel) é o componente central de um Sistema Operacional; ele serve de ponte entre aplicativos e o processamento real de dados feito a nível de hardware, em outras palavras, ele é responsável por gerenciar os recursos do sistema, ou seja, a comunicação entre componentes de hardware e software.

Como você deve saber (pelo menos deveria), o Linux é um kernel, e logo ele não é um Sistema Operacional. O que? Sério? Sério!

O Linux é um kernel que foi desenvolvido por Linus Torvalds e é baseado no Minix (daí o nome Linux; Linus + Minix = Linux). E o Minix, por sua vez, é um Sistema Operacional completo, livre e aberto, que foi desenvolvido baseado no Unix; um Sistema Operacional criado no MIT por Dennis Ritchie e outros, que rodava nos principais computadores das universidades e centros de pesquisa na década de 70.

Linus Torvalds criou, em 1991, um kernel, ou um núcleo de um Sistema Operacional, para que outras pessoas pudessem ter a liberdade de escrever seus próprios programas, aplicações, drivers (a forma correta para Linux é módulo e não driver), sistemas de arquivos e etc, ou seja, Linus queria que a liberdade fosse o ponto alto do Linux, que no começo foi batizado de “Freax” pelo próprio Linus.

Os Sistemas Operacionais que chamamos de distribuições Linux, usam o Linux como kernel, porém na verdade são Sistemas Operacionais GNU. Agora complicou… calma.

O GNU (GNU is Not Unix, em português: GNU Não é Unix) foi criado por Richard Stallman em 1984 com a premissa de ser um Sistema Operacional baseado e totalmente compatível com o Unix. Em 1991 o GNU já estava totalmente completo, porém ainda faltava um kernel que fosse livre, aberto, compatível com sistemas Unix-Like (baseados em Unix), e principalmente, estável… foi aí que  entrou o Linux.

Vamos voltar a fita um pouco… Stallman havia criado um Sistema Operacional completo, mas sem kernel? Não. Na verdade o projeto GNU já estava desenvolvendo um kernel, o Kernel HURD, porém neste momento histórico o hurd ainda estava (e está) muito aquém da estabilidade que o Linux já apresentava.

O plano inicial do projeto GNU era de adaptar o kernel 4.4BSD-Lite em seu novo SO, porém não chegaram nem a tentar… mais tarde, o kernel 4.4BSD-Lite foi usado com sucesso para criar o Darwin, que é hoje o kernel dos sistemas operacionais Mac OS e iOS.

Várias tentativas, sem sucesso, aconteceram durante a implementação de um kernel para o GNU: o primeiro kernel usado efetivamente foi o TRIX, mas ele precisava de muitas melhoras para funcionar e a idéia foi abandonada. Eles chegaram a pensar no Berkley Sprite, mas também não deu certo já que houve pouca colaboração dos programadores da Berkley. Finalmente, decidiram usar uma outra arquitetura vinda do microkernel March. Uma vez que esta decisão foi tomada, tiveram que esperar ainda vários anos pois não tinham certeza que o código do March fosse divulgado sob uma licença de Software Livre.

Bom, mais de 20 anos se passaram e o HURD ainda continua sendo desenvolvido pelo projeto GNU, porém recentemente algumas distribuições Linux (Sistemas Operacionais GNU/Linux) decidiram criar projetos paralelos ao Linux, usando o Hurd. O Debian e o Arch foram os pioneiros neste projeto e inclusive já disponibilizaram o Debian GNU/Hurd e o ArchHurd.

Tela de instalação do Debian GNU/Hurd

Estas “distribuições hurd”, assim como o próprio Hurd, estão em desenvolvido ativo, mas ainda não fornecem o desempenho e a estabilidade que você esperaria de um sistema em produção. Além disso, apenas alguns pacotes foram portados para o GNU/Hurd.

Ambiente de trabalho do Debian GNU/Hurd

Se você é estudante de Ciência da Computação, Análise e Desenvolvimento de Sistemas, ou gosta de “fuçar” e descobrir novos horizontes e novas possibilidades, talvez goste de experimentar o Hurd.

PUBLICIDADE

Clique Aqui

Quer continuar por dentro das novidades do Blog Seja Livre? Siga o nosso perfil no TWITTER, curta a nossa página no FACEBOOK ou adicione o Blog Seja Livre nos seus círculos do GOOGLE+. Se você usa ORKUT, nós também estamos lá, inclusive no IDENTI.CA e Linkedin.

  • http://Seusite... Milton Schwartzmann

    Boa tarde Vinicius. O que tá acontecendo com o kernel? Eu uso o BigLinux 11.10. Em versões posteriores da 3.0.0-21 a cpu fica super ocupada chegando as vezes a 100%. O respondável é o processo mount que fica tentando montar uma partição em ext4. Minhas partições são em ext3. Não exite meios de faze-lo parar.