Resultados do desenvolvimento do GNU Hurd no 4º trimestre de 2023

Resultados do desenvolvimento do GNU Hurd no 4º trimestre de 2023

No dia 9 de janeiro, foram publicadas as principais notícias do terceiro trimestre de 2023 na seção oficial de notícias do projeto GNU Hurd:

  • Samuel Thibault corrigiu o default PIE Hurd padrão para gcc e adicionou suporte a static PIE.Ele também adicionou o comando whatis ao depurador do núcleo GNU Mach, que pode determinar a que um endereço está apontando (pilha? porta? kalloc?…). Foi adicionada suporte a hurd-amd64 no GCC..
  • Samuel também pediu à equipe do Hurd para organizar integração contínua (integração contínua) — para que, assim que os desenvolvedores fizerem alterações no código, eles possam ter certeza de que nada foi quebrado.

    «Aparentemente, o Hurd suporta vários ambientes diferentes: 32 bits, 64 bits, 32 em 64 bits, ACPI, sem ACPI, SMP, sem SMP, Xen, etc. Parece que um dos desenvolvedores do Hurd, Flavio, tem um CI pessoal, mas está configurado de forma independente do Debian. Se você estiver interessado em ajudar o projeto Hurd a criar CI, entre em contato conosco!»

  • Luca Dariz trabalhou na adição de vários testes simples do espaço do usuário do GNU Mach. Com o MiG em funcionamento, a máquina GNU/Linux pode executar o comando make check do código-fonte do GNU Mach, que iniciará o qemu para garantir que a versão de 32 bits (PAE e não-PAE), a versão de 32 bits em 64 bits e a versão completa de 64 bits do GNU Mach funcionem. Atualmente, estamos realizando testes no GNU/Linux, uma vez que o qemu no Hurd não está funcionando.
  • Um grande número de pessoas trabalhou na nova suporte a x86_64 bits no Hurd. Samuel anunciou comentou que o port de 64 bits do GNU Hurd agora tem pacotes suficientes no repositório debian-ports para que seja possível inicializar um chroot. O daemon de construção da versão de 64 bits do Debian + GNU Hurd está em fase de configuração, e outros trabalhos na infraestrutura também estão em andamento. Thibault observou:

    «A construção de pacotes não é muito estável. Estou tentando compilar o gcc-13 há algumas semanas, mas sem sucesso até agora. Existem várias falhas, frequentemente erros estranhos no script libtool, que são um sinal de que o próprio sistema está se comportando de forma inadequada. A maneira de reproduzir o problema é simplesmente recompilar um pacote que usa libtool e, cedo ou tarde, isso levará a uma falha muito estranha.»
    Isso significa que, embora o buildd já esteja pronto, não me sinto à vontade para executá-lo sabendo que ele pode se comportar de forma errática. Quando compilei o conjunto inicial de pacotes para as portas debian (~100 pacotes), tive cerca de 5-10 dessas falhas, o que é uma taxa bastante alta.

  • Flavio Cruz melhorou o IPC do GNU Mach, alterando a ordem dos campos mach_msg_type_t para alinhamento dos bytes msgt_name e msgt_size. Ele também criou uma série de patches, que evitam a alteração do tamanho das mensagens para x86_64.Ele removeu código não tipado do Mach RPC.:

    O GNU Mach utiliza IPC tipado. O Hurd pode suportar chamadas tanto tipadas quanto não tipadas, mas, aparentemente, o Hurd usa apenas RPC tipado. Portanto, é melhor eliminar qualquer código RPC não tipado.

  • Sergey Bugaev adicionou suporte para mesclagem de registros do GNU Mach.O Mach nem sempre conseguia mesclar dois registros de máquina virtual feitos um ao lado do outro, o que desacelerava o ext2, bash, etc. Sergey permitiu que o GNU Mach mesclasse registros em casos normais, o que ajudou muito, por exemplo, no ext2fs.
  • Além disso, Sergey está trabalhando na portabilidade do navegador web Ladybird para o Hurd. O autor deste post (obviamente se refere ao post original em gnu.org — nota da redação) usa navegador web netsurf para o Hurd, que funciona em sites simples (como a Wikipédia), mas exibe mal páginas com muito JavaScript, tornando muitos sites impróprios para uso. Se Sergey conseguir portar Ladybird, os usuários do Hurd poderão começar a usar recursos de rede como o Github! Vale mencionar que alguém precisa atualizar e portar o Firefox..
  • Além disso, Bugaev começou a portar o Hurd para AArch64.! E embora a portabilidade para RISC-V possa parecer mais interessante, vale ressaltar que AArch64 é mais conhecido. Curiosamente, Sergey já consegue compilar servidores Hurd para AArch64! Normalmente, para executar binários, é necessário portar o GNU Mach para AArch64, mas felizmente para nós, ele recorreu ao GDB e executou diretamente o binário Hurd AArch64 'Hello World' no Linux! Isso o ajudou a corrigir alguns erros. Até agora, resta definir o ABI e finalizar a portabilidade do GNU Mach, mas por enquanto são notícias incríveis!
  • Tobias Platen começou a portar o GNU Mach para a plataforma Power9..

Se alguém tiver interesse em testar o funcionamento dos seus pacotes favoritos no Hurd e em como contribuir para o uso de todo o sistema GNU por um público mais amplo — por favor, verifique a página de participação.

Para referência: GNU Hurd (ou apenas Hurd) — é um projeto de desenvolvimento de software livre, cujo objetivo é substituir o núcleo Unix para sistemas operacionais similares ao Unix. O desenvolvimento do Hurd começou em 1990 pelo projeto GNU e pela Free Software Foundation. O progresso é lento devido à existência do Linux — uma substituição livre já pronta para os núcleos dos sistemas Unix. Detalhes podem ser vistos tanto em Wikis, quanto na página oficial do projeto GNU Hurd.

Por sua vez GNU Mach — é uma implementação do microkernel Mach, que é, por padrão, parte do GNU Hurd.

Fonte: linux.org.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster