Ergebnisse der Entwicklung von GNU Hurd für das 4. Quartal 2023

Ergebnisse der Entwicklung von GNU Hurd für das 4. Quartal 2023

Am 9. Januar wurden im offiziellen Nachrichtenbereich des GNU Hurd-Projekts die abschließenden Nachrichten für das 3. Quartal 2023 veröffentlicht:

  • Samuel Thibault hat die standardmäßige PIE Hurd-Option für gcc korrigiert und Unterstützung für static PIE hinzugefügt.Er hat auch den whatis-Befehl zum GNU Mach-Kernel-Debugger hinzugefügt, der erkennen kann, auf was eine Adresse verweist (Stapel? Port? kalloc?…). Es wurde die Unterstützung für hurd-amd64 in GCC hinzugefügt..
  • Außerdem hat Samuel das Hurd-Team gebeten, eine kontinuierliche Integration einzurichten (continuous integration) – damit die Entwickler sicherstellen können, dass sie nichts kaputt gemacht haben, wenn sie Änderungen am Code vornehmen.

    „Es stellt sich heraus, dass Hurd mehrere verschiedene Umgebungen unterstützt: 32-Bit, 64-Bit, 32 auf 64-Bit, ACPI, non-ACPI, SMP, non-SMP, Xen usw. Offensichtlich hat einer der Hurd-Entwickler, Flavio, eine persönliche CI, die aber unabhängig von Debian eingerichtet ist. Wenn Sie daran interessiert sind, dem Hurd-Projekt bei der Erstellung von CI zu helfen, kontaktieren Sie uns!“

  • Luca Dariz hat an der Hinzufügung mehrerer einfacher Tests gearbeitet. des Benutzerraums von GNU Mach. Bei laufendem MiG kann die GNU/Linux-Maschine den Befehl make check des Quellcodes von GNU Mach ausführen, der qemu startet, um sicherzustellen, dass sowohl das 32-Bit-System (PAE und Nicht-PAE) als auch das 32-Bit-System auf 64-Bit und das vollständige 64-Bit GNU Mach funktioniert. Derzeit führen wir Tests auf GNU/Linux durch, da qemu in Hurd nicht funktioniert.
  • Eine große Anzahl von Menschen hat an der neuen Unterstützung für x86_64 in Hurd gearbeitet. Samuel berichtet sagte, dass der 64-Bit-Port von GNU Hurd jetzt genügend Pakete im Archiv debian-ports hat, um einen chroot zu booten. Der Build-Demon für die 64-Bit-Version von Debian + GNU Hurd wird derzeit konfiguriert, und es werden auch weitere Arbeiten an der Infrastruktur durchgeführt. Thibaut bemerkte:

    „Der Paketbau ist nicht sehr stabil. Ich versuche seit ein paar Wochen, gcc-13 zu bauen, aber bisher ohne Erfolg. Es gibt verschiedene Fehler, meist seltsame Fehler im libtool-Skript, die darauf hindeuten, dass das System selbst sich nicht richtig verhält. Der Weg, um das Problem zu reproduzieren, besteht einfach darin, das Paket erneut zu bauen, das libtool verwendet, und früher oder später führt dies zu einem sehr seltsamen Absturz.“
    Das bedeutet, dass, obwohl der buildd bereits bereit ist, es mir wirklich unangenehm ist, ihn zu starten, da ich weiß, dass er unberechenbar sein könnte. Als ich das anfängliche Paketset für die Debian-Ports (~100 Pakete) erstellt habe, hatte ich etwa 5-10 solcher Abstürze, was ziemlich hoch ist:/»

  • Flavio Cruz verbesserte IPC GNU Mach, indem er die Reihenfolge der Felder mach_msg_type_t für die Byte-Ausrichtung von msgt_name und msgt_size änderte. Er erstellte auch eine Reihe von Patches, die eine Größenänderung von Nachrichten für x86_64 vermeiden.Er entfernte untypisierten Mach RPC:

    „GNU Mach verwendet typisierte IPC. Hurd kann sowohl typisierte als auch untypisierte Aufrufe unterstützen, aber anscheinend verwendet Hurd nur typisierten RPC. Deshalb ist es am besten, untypisierten RPC-Code komplett zu entfernen.“

  • Sergey Bugaev fügte hinzu Unterstützung für das Zusammenführen von GNU Mach-Einträgen.Mach konnte nicht immer zwei benachbarte virtuelle Maschinen-Einträge zusammenführen, was die Leistung von ext2, bash usw. verlangsamte. Sergey ermöglichte es GNU Mach, Einträge in normalen Fällen zusammenzuführen, was besonders in ext2fs hilfreich war.
  • Außerdem arbeitet Sergey an der Portierung des Webbrowsers Ladybird. unter Hurd. Der Autor dieses Beitrags (offensichtlich ist der ursprüngliche Beitrag auf gnu.org gemeint — Anm. d. Red.) nutzt Webbrowser netsurf unter Hurd, der auf einfachen Webseiten (wie Wikipedia) funktioniert, jedoch Seiten mit viel JavaScript schlecht darstellt, was viele Webseiten unbrauchbar macht. Wenn es Sergej gelingt, Ladybird, können Hurd-Nutzer solche Online-Ressourcen wie Github nutzen! Es ist erwähnenswert, dass jemand auch Firefox portieren.
  • Außerdem hat Bugayev begonnen Hurd auf AArch64 zu portieren! Und obwohl der Port auf RISC-V interessanter erscheinen mag, ist zu beachten, dass AArch64 bekannter ist. Interessanterweise kann Sergej bereits Hurd-Server für AArch64 sammeln! Normalerweise muss GNU Mach auf AArch64 portiert werden, um Binärdateien auszuführen, aber glücklicherweise hat er sich GDB zugewandt und die Hurd AArch64 „Hello World“ Binärdatei direkt in Linux ausgeführt! Dies half ihm, einige Fehler zu beheben. Es bleibt abzuwarten, das ABI zu definieren und den Port von GNU Mach abzuschließen, aber bisher sind das erstaunliche Neuigkeiten!
  • Tobias Platen hat begonnen, GNU Mach auf die Power9-Plattform zu portieren.

Falls jemand den Wunsch hat, die Funktionsfähigkeit seiner Lieblingspakete unter Hurd zu überprüfen und deren Beitrag zur Nutzung des gesamten GNU-Systems für ein breiteres Publikum zu fördern – bitte, überprüfen Sie die Teilnahmeseite.

Zur Referenz: GNU Hurd (oder einfach Hurd) — das ist ein Projekt zur Entwicklung freier Software mit dem Ziel, den Unix-Kernel für Unix-ähnliche Betriebssysteme zu ersetzen. Die Entwicklung von Hurd wird seit 1990 von dem GNU-Projekt und der Free Software Foundation vorangetrieben. Der Fortschritt verläuft langsam aufgrund der Existenz von Linux – einer bereits verfügbaren freien Alternative zu Unix-Kernen. Details können sowohl in Wikisals auch auf der offiziellen Seite des GNU Hurd-Projekts.

Im Gegenzug GNU Mach — das ist die Implementierung eines Mach-Mikrokernels, der standardmäßig Bestandteil von GNU Hurd ist.

Quelle: linux.org.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern 🔥 Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz, VPS VDS-Servern | ProHoster