Em fevereiro deste ano Damien Zammit apresentou no FOSDEM uma solução para o Hurd*. A ideia é adotar o framework rump kernel do NetBSD; o que não é nenhuma novidade já que o Rump kernel já está presente no Hurd desde 2015 implementando seus recursos de USB e de áudio.
Outras fontes também estão presentes no Hurd como partes do próprio Linux como servidor de arquivos ext2fs, servidor de rede pfinet, NIC, drivers de disco e muito mais. Algumas versões possuem suporte para execução de rede Linux 2.6.xe e drivers de disco no modo de usuário através da camada de compatibilidade DDE.
A vantagem de utilizar o Rump kernel no Hurd é que o framework traria mais drivers com uma interface estável sem a necessidade de ficar reinventando a roda e debugar processos e drivers de forma pratica. Como o Hurd é um microkernel, os recursos do Rump kernel (gerenciamento ACPI e PCI e driver) vão rodar em processos separados como servidores.
Pode ser que o Rump kernel realmente traga vantagens ao Hurd uma vez que o Hurd possui suporte a hardware muito limitado (até hoje limitado a i386), apresenta muitas falhas (inclusive de kernel panic com muita frequência, muito maior do que o Windows apresenta tela azul) e não há (como nunca houve) previsão de lançamento de uma versão estável que possa ser utilizado em produção.
O código fonte do Hurd e suas limitações podem ser conferido clicando aqui |
Depoimento do GNU/Hurd levando 5 minutos para bootar em um AMD ThreadRipper de 48 núcleos. |
É como já mencionado por Henrik Ingo em seu livro livro Open Life escrito em 2006 e traduzido para inglês pela própria irmã do Linus, Sara Torvalds:
"Uma ironia é que o projeto GNU mencionado por Linus ainda não conseguiu concluir seu próprio ‘grande e profissional’ kernel Hurd. Todo o crédito a eles por não terem desistido, no entanto. Eu venho acompanhando o desenvolvimento do Linux de perto há meia década e durante todo esse tempo o Hurd esteve quase completo. De alguma forma, é divertido ver que a situação deles era a mesma há treze anos, quando o Linux nasceu."
Dezessete anos depois que o livro Open Life foi escrito pela primeira vez (sua primeira edição em 2.005) e o Hurd ainda não apresenta sinais de que terá uma versão estável. Honestamente não acredito que um dia o Hurd venha a se tornar funcional (há até mesmo piadas na gringa referentes ao Hurd onde a humanidade vai entrar em extinção em 2.050 enquanto que o hurd vai ficar pronto somente depois de 2.060). Há outras versões de microkernel muito mais interessantes que o Hurd e que eu relato no meu artigo 5 diferentes modelos de kernel.
Quando o hurd ficará pronto? Quando mais ninguém precisar? |
*O nome original deste microkernel é Mach e não Hurd; Hurd é o nome do seu conjunto de daemons (incrível como brigam tanto pelo reconhecimento do nome GNU querendo forçar todos a chamar Linux de GNU/Linux mas quando se trata do nome do microkernel Mach, eles enfatizam o nome do conjunto de daemons...). O Mach não foi desenvolvido pelo projeto GNU e sim pela universidade Carnegie Mellon e trata-se do mesmo microkernel utilizado pela Apple para o desenvolvimento do MacOSX (a junção do Mach kernel com o kernel FreeBSD, do 4.4BSDLite e do NetBSD forma-se o XNU kernel base que dá origem ao sistema operacional Darwin, ou simplesmente, o MacOSX). E assim continuam a incansável luta para um dia tentar tornar o Hurd funcional.
A junção de microkernel Mach com porções de kernel como do FreeBSD, do NetBSD e do 4.4BSDLite formam o kernel hibrido XNU, base do sistema operacional Darwin (o MacOS X)
O site oficial o Mach pode ser conferido aqui.
Nenhum comentário:
Postar um comentário
Viu algum erro e quer compartilhar seu conhecimento? então comente aí.
Observação: somente um membro deste blog pode postar um comentário.