Am 9. Januar wurden im offiziellen Nachrichtenbereich des GNU Hurd-Projekts die endgĂŒltigen Nachrichten fĂŒr das 3. Quartal 2023 veröffentlicht:
- Samuel Thibault hat die Standard-PIE-Einstellung fĂŒr gcc korrigiert und UnterstĂŒtzung fĂŒr static PIE hinzugefĂŒgt.Er hat auch den whatis-Befehl in den GNU Mach-Kernel-Debugger hinzugefĂŒgt, der bestimmen kann, woraus eine Adresse besteht (Stack? Port? kalloc?âŠ). Die UnterstĂŒtzung fĂŒr hurd-amd64 in GCC wurde hinzugefĂŒgt..
- Samuel hat auch das Hurd-Team gebeten, eine kontinuierliche Integration zu organisieren (kontinuierliche Integration) â damit die Entwickler bei Ănderungen am Code sicher sein können, dass sie nichts kaputt gemacht haben.
âEs stellt sich heraus, dass Hurd mehrere verschiedene Umgebungen unterstĂŒtzt: 32 Bit, 64 Bit, 32 auf 64 Bit, ACPI, nicht-ACPI, SMP, nicht-SMP, Xen usw. Anscheinend hat einer der Hurd-Entwickler, Flavio, eine persönliche CI, aber sie ist unabhĂ€ngig von Debian konfiguriert. Wenn Sie daran interessiert sind, dem Hurd-Projekt bei der Erstellung von CI zu helfen, kontaktieren Sie uns!â
- Luca Dariz hat daran gearbeitet, mehrere einfache Tests fĂŒr den GNU Mach-Benutzerspeicherraum hinzuzufĂŒgen. Mit einem laufenden MiG kann die GNU/Linux-Maschine den Befehl make check des GNU Mach-Quellcodes ausfĂŒhren, der qemu startet, um sicherzustellen, dass die 32-Bit-Version (PAE und nicht-PAE), die 32-Bit-Version auf 64-Bit und die vollstĂ€ndige 64-Bit-Version von GNU Mach funktioniert. Momentan fĂŒhren wir Tests auf GNU/Linux durch, da qemu unter Hurd nicht funktioniert.
- Eine groĂe Anzahl von Personen hat an der neuen UnterstĂŒtzung fĂŒr x86_64 in Hurd gearbeitet. Samuel berichtet, dass der 64-Bit-Port des GNU Hurd jetzt genĂŒgend Pakete im Debian-Ports-Archiv hat, um ein chroot möglich zu machen. Der 64-Bit-Bau-Daemon von Debian + GNU Hurd befindet sich in der Einrichtung, und es werden auch andere Arbeiten an der Infrastruktur durchgefĂŒhrt. Thibault bemerkte: berichtete âDas Packen von Paketen ist nicht besonders stabil. Ich versuche seit ein paar Wochen, gcc-13 zu bauen, bisher ohne Erfolg. Es gibt verschiedene AbstĂŒrze, most often strange errors in the libtool script, which indicate that the system itself is misbehaving. A way to reproduce the issue is simply to rebuild a package using libtool, and sooner or later it will lead to a very strange failure."
âDas Packen von Paketen ist nicht sehr stabil. Ich versuche schon seit ein paar Wochen, gcc-13 zu bauen, aber bisher ohne Erfolg. Es gibt verschiedene Fehler, meistens merkwĂŒrdige Fehler im libtool-Skript, die darauf hindeuten, dass das System selbst nicht richtig funktioniert. Eine Möglichkeit, das Problem zu reproduzieren, besteht darin, ein Paket, das libtool verwendet, einfach neu zu bauen, und frĂŒher oder spĂ€ter wird dies zu einem sehr seltsamen Absturz fĂŒhren.
Das bedeutet, dass, obwohl der Build bereits bereit ist, es fĂŒr mich wirklich unbequem ist, ihn zu starten, da ich weiĂ, dass er sich unberechenbar verhalten könnte. Als ich das ursprĂŒngliche Paketset fĂŒr die Debian-Ports (~100 Pakete) zusammengestellt habe, gab es etwa 5-10 solche Fehler, was ziemlich hoch ist: \/» - Flavio Cruz hat IPC GNU Mach verbessert, indem er die Reihenfolge der Felder mach_msg_type_t zur Byte-Ausrichtung von msgt_name und msgt_size geĂ€ndert hat. Er hat auch eine Reihe von Patches erstellt, die eine GröĂenĂ€nderung von Nachrichten fĂŒr x86_64 vermeiden.Er hat typelose Mach RPC-Codes entfernt.:
âGNU Mach verwendet typisierte IPC. Hurd kann sowohl typisierte als auch typelose Aufrufe unterstĂŒtzen, aber anscheinend verwendet Hurd nur typisierte RPC. Daher ist es am besten, alle typelosen RPC-Codes zu entfernen.â
- Sergey Bugaev hat hinzugefĂŒgt UnterstĂŒtzung fĂŒr die Wiedervereinigung von GNU Mach-Aufzeichnungen.Mach konnte nicht immer zwei benachbarte Virtual Machine-EintrĂ€ge zusammenfassen, was die Leistung von ext2, bash usw. verlangsamte. Sergey ermöglichte es GNU Mach, helflicherweise NormalfĂ€lle zusammenzufassen, was beispielsweise in ext2fs sehr nĂŒtzlich war.
- AuĂerdem arbeitet Sergey an der Portierung des Webbrowsers Ladybird unter Hurd. Der Autor dieses Beitrags (offensichtlich bezieht sich dies auf den ursprĂŒnglichen Beitrag auf gnu.org â Anm. d. Red.) verwendet der Webbrowsers netsurf unter Hurd, der auf einfachen Webseiten (wie Wikipedia) funktioniert, aber schlecht mit Seiten umgeht, die viel JavaScript enthalten, was viele Webseiten unbrauchbar macht. Wenn es Sergey gelingt, Ladybirdzu portieren, können Hurd-Nutzer mit Netzwerkressourcen wie Github beginnen! Es ist erwĂ€hnenswert, dass jemand auch den Firefox portieren muss..
- AuĂerdem hat Bugaev begonnen, Hurd auf AArch64 zu portieren! Und obwohl der Port auf RISC-V interessanter aussehen mag, ist zu beachten, dass AArch64 bekannter ist. Interessanterweise kann Sergey bereits Hurd-Server fĂŒr AArch64 kompilieren! Normalerweise muss man GNU Mach auf AArch64 portieren, um BinĂ€rdateien auszufĂŒhren, aber glĂŒcklicherweise hat er sich GDB zugewandt und die Hurd AArch64 âHello Worldâ-BinĂ€rdatei direkt in Linux gestartet! Das half ihm, einige Fehler zu beheben. Es bleibt noch zu klĂ€ren, welches ABI verwendet werden soll und den Port von GNU Mach abzuschlieĂen, aber im Moment sind das groĂartige Neuigkeiten!
- Tobias Platen hat begonnen, GNU Mach auf die Power9-Plattform zu portieren..
Falls jemand den Wunsch hat, die FunktionsfĂ€higkeit seiner bevorzugten Pakete unter Hurd zu ĂŒberprĂŒfen und deren UnterstĂŒtzung fĂŒr die Nutzung des gesamten GNU-Systems fĂŒr ein breiteres Publikum zu fördern â bitte, ĂŒberprĂŒfen Sie die Teilnahmeseite.
Zur Info: GNU Hurd (oder einfach Hurd) â ist ein Projekt zur Entwicklung von freier Software, dessen Ziel es ist, den Unix-Kernel durch einen neuen Kernel fĂŒr Unix-Ă€hnliche Betriebssysteme zu ersetzen. Die Entwicklung von Hurd lĂ€uft seit 1990 im Rahmen des GNU-Projekts und der Free Software Foundation. Der Fortschritt erfolgt langsam aufgrund der Existenz von Linux â einer bereits verfĂŒgbaren freien Alternative zu Unix-Kernel-Systemen. Einzelheiten können sowohl unter Wikis, als auch auf der offiziellen Seite des GNU Hurd Projekts.
eigenen Handlern, das heiĂt, Objekten der Klasse GNU Mach â ist eine Implementierung des Mach-Mikrokernels, der standardmĂ€Ăig Bestandteil von GNU Hurd ist.
Quelle: linux.org.ru
