Im Bericht über die Entwicklung des FreeBSD-Projekts von Juli bis September 2023 wird ein neuer Treiber mit der Implementierung des SquashFS-Dateisystems vorgestellt, der zur Verbesserung der Effizienz von Boot-Images, Live-Distributionen und Firmware auf FreeBSD-Basis verwendet werden kann. SquashFS arbeitet im Nur-Lese-Modus und bietet eine sehr kompakte Darstellung von Metadaten und eine komprimierte Speicherung von Daten. Der Treiber ist auf Kernel-Ebene implementiert, unterstützt die Version FreeBSD 13.2 und ermöglicht unter anderem das Booten von FreeBSD mit einem in den Arbeitsspeicher geladenen SquashFS.
Zu den weiteren im Bericht aufgeführten Erfolgen gehören:
- Es wurden Maßnahmen zur Behebung von Problemen bei der Nutzung von FreeBSD auf dem Desktop ergriffen. Zum Beispiel wurde im Desktop-Installer-Port, der eine schnelle Installation und Konfiguration jeder Benutzerumgebung oder Fenster-Manager in FreeBSD ermöglicht, eine Benachrichtigung über den Ladezustand hinzugefügt. Durch die Ports deskutils/qmediamanager, sysutils/devd-mount und sysutils/npmount wurde das Einbinden von Wechseldatenträgern sowie eine Benachrichtigung mit Informationen über das Dateisystem und mögliche Handlungsoptionen (Start des Dateimanagers, Formatierung, Kopieren von Images, Aushängen) ermöglicht. Der Port deskutils/freebsd-update-notify wurde hinzugefügt, der Benachrichtigungen über verfügbare Updates anzeigt und eine schnelle automatische Installation von Updates des Basissystems, der Ports und der Pakete erlaubt.
- Die Portsammlung von FreeBSD ist im Berichtszeitraum von 34400 auf 34600 Ports angewachsen. Die Anzahl der offenen PRs liegt stabil bei 3000 (730 PRs sind noch nicht bearbeitet). In den HEAD-Branch wurden 11454 Änderungen von 130 Entwicklern vorgenommen. Zu den bedeutenden Updates gehören: Mono 5.20, Perl 5.34, PostgreSQL 15, LibreOffice 7.6.2, KDE 5.27.8, KDE Gear 23.08, Rust 1.72.0, Wine 8.0.2, GCC 13.2.0, GitLab 16.3.
- In der Infrastruktur für die Emulation der Linux-Umgebung (Linuxulator) wurde die Unterstützung für die Systemaufrufe xattr und ioprio implementiert, die es ermöglicht, rsync- und debootstrap-Dienstprogramme, die für Linux kompiliert wurden, auszuführen.
- Der Port für die Desktop-Umgebung Pantheon, die vom Linux-Distribution Elementary OS entwickelt wird, wurde aktualisiert.
- Die Unterstützung für die Erstellung von Snapshots von UFS- und FFS-Dateisystemen, bei denen das Journaling (Soft Updates) aktiviert ist, wurde hinzugefügt. Außerdem wurden Funktionen zur Überprüfung der Integrität des Snapshots mit dem fsck-Dienstprogramm implementiert und die Möglichkeit geschaffen, Snapshots im Hintergrund zu sichern, ohne die Arbeit mit dem Dateisystem zu unterbrechen und ohne die Partition aushängen zu müssen (Ausführung von dump mit dem Flag „-L“).
- Für amd64-Systeme wurde die Verwendung von SIMD-Anweisungen in den Funktionen der Systembibliothek erweitert. So wurden zum Beispiel in libc Varianten von Funktionen hinzugefügt, die die Befehlssätze SSE, AVX, AVX2 und AVX-512F/BW/CD/DQ verwenden: bcmp(), index(), memchr(), memcmp(), stpcpy(), strchr(), strchrnul(), strcpy(), strcspn(), strlen(), strnlen() und strspn3). Es wird an den Funktionen memcpy(), memmove(), strcmp(), timingsafe_bcmp() und timingsafe_memcmp() gearbeitet.
- Es wird daran gearbeitet, 32-Bit-Plattformen in die obsoleten Plattformen in der Veröffentlichung von FreeBSD 15 zu migrieren.
- Die Identifikation der CPU riscv64 wurde verbessert.
- Es wird an der Implementierung der Unterstützung für die Hardware-Beschleunigungsarchitektur NXP DPAA2 (Data Path Acceleration Architecture Gen2) gearbeitet.
- Die Integration von OpenSSL 3 in das Basissystem wurde sichergestellt.
- In /etc/login.conf wurde für die Eigenschaften priority und umask der Parameter „inherit“ hinzugefügt, bei dem der Wert der Eigenschaften vom Prozes login geerbt wird. Zudem wurde die Möglichkeit hinzugefügt, die im /etc/login.conf festgelegte Priorität über die Benutzerdatei „~/.login_conf“ zu verringern.
- Über den sysctl-Parameter security.bsd.see_jail_proc kann nicht autorisierten Nutzern in einer separaten Jail-Umgebung jetzt das Erzwingen von Beendigungen, das Ändern der Priorität und das Debuggen versteckter Prozesse untersagt werden.
- Die mfsBSD-Utilities zur Erstellung von Live-Images, die in den Arbeitsspeicher geladen werden, wurden in das Release-Bau-Toolkit integriert.
- Es wird an der Erstellung eines ChatGPT-basierten Plugins gearbeitet, um ein Expertensystem zu schaffen, das Beratung zu Themen rund um FreeBSD bietet.
- Das Projekt Wifibox wurde aktualisiert, um die Umgebung für die Verwendung von Linux-WiFi-Treibern unter FreeBSD auszubauen.
- Das Projekt BSD Cafe wurde vorgestellt, das unterstützt Server Mastodon und Matrix für die Kommunikation und Zusammenarbeit der FreeBSD-Nutzer. Das Projekt hat auch eine Website mit Wiki und dem RSS-Reader Miniflux gestartet. In Planung ist die Erstellung eines Git-Servers und einer Virtualisierungsplattform.
Quelle: opennet.ru
