Resultados del desarrollo de GNU Hurd en el cuarto trimestre de 2023

Resultados del desarrollo de GNU Hurd en el cuarto trimestre de 2023

El 9 de enero se publicaron las noticias finales del tercer trimestre de 2023 en la sección de noticias oficial del proyecto GNU Hurd:

  • Samuel Thibault corrigió el PIE por defecto de Hurd para gcc y añadió soporte para static PIE.Él también agregó el comando whatis al depurador del núcleo GNU Mach, que puede determinar a qué apunta una dirección (¿pila? ¿puerto? ¿kalloc?…). Se añadió soporte para hurd-amd64 en GCC..
  • Además, Samuel pidió al equipo de Hurd que organizara integración continua (continuous integration) para que, en el momento en que los desarrolladores realicen cambios en el código, puedan estar seguros de que nada se ha roto.

    «Parece que Hurd soporta varios entornos diferentes: 32 bits, 64 bits, 32 sobre 64 bits, ACPI, no ACPI, SMP, no SMP, Xen, etc. Al parecer, uno de los desarrolladores de Hurd, Flavio, tiene un CI personal, pero está configurado de forma independiente de Debian. Si estás interesado en ayudar al proyecto Hurd a crear CI, ¡contáctanos!»

  • Luca Dariz trabajó en la adición de varias pruebas simples del espacio de usuario de GNU Mach. Con MiG en funcionamiento, una máquina GNU/Linux puede ejecutar el comando make check del código fuente de GNU Mach, que iniciará qemu para asegurar que GNU Mach de 32 bits (PAE y no PAE), 32 bits sobre 64 bits y completo de 64 bits funciona. Actualmente estamos realizando pruebas en GNU/Linux, ya que qemu en Hurd no funciona.
  • Un gran número de personas trabajaron en el nuevo soporte para x86_64 bits en Hurd. Samuel informó indicó que el puerto de 64 bits de GNU Hurd ahora tiene suficientes paquetes en el archivo debian-ports como para que sea posible iniciar chroot. El demonio de construcción de la versión de 64 bits de Debian + GNU Hurd está en fase de configuración, y también se están realizando otros trabajos en la infraestructura. Thibault señaló:

    «La construcción de paquetes no es muy estable. He estado intentando construir gcc-13 durante un par de semanas, pero sin éxito hasta ahora. Hay varios fallos, y a menudo son errores extraños en el script libtool, lo que es un signo de que el sistema mismo se comporta de manera incorrecta. La forma de reproducir el problema es simplemente volver a compilar un paquete que use libtool, y tarde o temprano esto conducirá a un fallo muy extraño.
    Esto significa que, aunque el buildd ya está listo, realmente me resulta incómodo ejecutarlo, sabiendo que puede comportarse de manera errática. Cuando recopilé el conjunto inicial de paquetes para las versiones de debian (~100 paquetes), experimenté alrededor de 5-10 fallos de este tipo, lo cual es una cifra bastante alta: /»

  • Flavio Cruz mejoró el IPC de GNU Mach, modificando el orden de los campos mach_msg_type_t para el alineamiento de los bytes msgt_name y msgt_size. También creó una serie de parches, que evitan el redimensionamiento de los mensajes para x86_64. Eliminó código no tipado de Mach RPC:

    "GNU Mach utiliza IPC tipado. Hurd puede soportar tanto llamadas tipadas como no tipadas, pero parece que Hurd utiliza solo RPC tipado. Por lo tanto, es mejor eliminar cualquier código RPC no tipado."

  • Sergey Bugaev añadió soporte para la fusión de registros de GNU Mach. Mach no siempre podía fusionar dos registros de máquina virtual realizados uno al lado del otro, lo que ralentizaba el funcionamiento de ext2, bash, etc. Sergey permitió que GNU Mach fusionara registros en casos normales, lo que ayudó mucho, por ejemplo, en ext2fs.
  • Además, Sergey está trabajando en portar el navegador web Ladybird a Hurd. El autor de esta publicación (se refiere, por supuesto, a la publicación original en gnu.org — nota del editor) utiliza el navegador web netsurf a Hurd, que funciona en sitios web simples (como Wikipedia), pero tiene problemas para mostrar páginas con mucho JavaScript, lo que hace que muchos sitios web sean inutilizables. Si Sergey logra portar Ladybird, ¡los usuarios de Hurd podrán comenzar a utilizar recursos en línea como Github! Cabe destacar que alguien debe actualizar y portar Firefox.
  • Además, Bugaev comenzó a portar Hurd a AArch64! Y aunque el puerto a RISC-V podría parecer más interesante, cabe señalar que AArch64 es más conocido. Lo interesante es que Sergey ya sabe compilar servidores Hurd para AArch64. Normalmente, para ejecutar archivos binarios, se necesita portar GNU Mach a AArch64, pero afortunadamente se dirigió a GDB y ejecutó directamente el archivo binario Hurd AArch64 "Hello World" en Linux. Esto lo ayudó a corregir algunos errores. Hasta ahora, queda por definir el ABI y completar el puerto de GNU Mach, ¡pero por ahora son noticias increíbles!
  • Tobias Platen comenzó a portar GNU Mach a la plataforma Power9.

En caso de que alguien desee verificar el funcionamiento de sus paquetes favoritos en Hurd y su contribución al uso de todo el sistema GNU para un público más amplio, por favor, verifique la página de participación.

Para referencia: GNU Hurd (o simplemente Hurd) — es un proyecto de desarrollo de software libre cuyo objetivo es reemplazar el núcleo de Unix para sistemas operativos similares a Unix. El desarrollo de Hurd ha estado en marcha desde 1990 por el proyecto GNU y la Free Software Foundation. El progreso es lento debido a la existencia de Linux, que ya es un reemplazo libre para los núcleos de sistemas Unix. Se pueden ver los detalles tanto en Wikipedia, como en la página oficial del proyecto GNU Hurd.

Por su parte, GNU Mach es una implementación del microkernel Mach que, por defecto, forma parte de GNU Hurd.

Fuente: linux.org.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster