Release des Betriebssystems DragonFly BSD 5.6

VerfĂŒgbar Release DragonFlyBSD 5.6, ein Betriebssystem mit hybridem Kernel, das im Jahr 2003 mit dem Ziel der alternativen Entwicklung des FreeBSD 4.x-Zweigs gegrĂŒndet wurde. Zu den Besonderheiten von DragonFly BSD zĂ€hlt das verteilte Versionsdateisystem HAMMER, die UnterstĂŒtzung des Bootens von 'virtuellen' Systemkernen als Benutzerprozesse, die Möglichkeit der Daten- und Metadaten-Caching auf SSD-Laufwerken, kontextabhĂ€ngige symbolische Links, die Möglichkeit, Prozesse einzufrieren und deren Zustand auf der Festplatte zu speichern, sowie einen hybriden Kernel, der leichtgewichtige Threads (LWKT) verwendet.

Haupt- Verbesserungen, hinzugefĂŒgt in DragonFlyBSD 5.6:

  • Das System zur Verwaltung des virtuellen Speichers wurde aktualisiert. Viele Teilsysteme, die mit virtualem Speicher und PMAP zu tun haben, wurden neu geschrieben.
    In vielen Bereichen wurde der Code von Sperren befreit, unter anderem in den Funktionen m_page_wakeup, vm_hold und vm_unhold. Die Effizienz der Nutzung des CPU-Caches wurde durch die Reduzierung der Migration von VM-Objekten zwischen CPU-Kernen und die Minimierung der Overheadkosten bei der Verarbeitung von Ausnahmen (Seitenfehler) fĂŒr gemeinsam genutzte Speicherbereiche verbessert. Der Algorithmus zur Speicherzuweisung wurde optimiert. Verzögerungen bei der Funktion vm_page_alloc() wurden behoben. Die API vm_page_hash*() wurde hinzugefĂŒgt, um Abfragen ohne Sperren zu ermöglichen.

    Insgesamt konnte die Leistung deutlich steigern. Zum Beispiel,
    Im buildkernel-Test konnte die Zeit fĂŒr Kernel-Operationen um 40 % reduziert werden. Die Durchsatzrate stieg um 7 % beim Einsatz von CPUs der Haswell-Familie und um 14 % bei Xeon. Im TEST SELF-EXEC S/DI gab es im Vergleich zur vorherigen Version einen Leistungszuwachs von 23 % fĂŒr Haswell und 18 % fĂŒr Xeon. Im Test
    SELF-EXEC S/SH entsprechend 28 % und 71 %, bei SELF-EXEC D/DI — 23 % und 242 % (aufgrund der Verbesserung der Multithreading-Leistung), bei SELF-EXEC D/SH um 24 % und 234 %, bei FAULTZF um 17 % und 14 %, bei DOCOMP um 22 % und 42 %,
    bei NATIVEKERNEL um 5,1 % und 8,1 %;

  • Der DRM-Treiber und der Manager fĂŒr das Videoram-Management TTM fĂŒr AMD-Grafikkarten wurden erheblich aktualisiert. UnterstĂŒtzung fĂŒr die neuen APU Ryzen wurde hinzugefĂŒgt. Die UnterstĂŒtzung fĂŒr den UEFI-Bildschirmpuffer wurde verbessert. In radeon/ttm wurde eine gegenseitige Sperre, die sich negativ auf die Leistung auswirkte, beseitigt. Das Timeout-Handling beim Booten wurde refaktoriert, um Konflikte zwischen dem i915-Treiber und dem X-Server zu vermeiden. Ein DRM_IOCTL_GET_PCIINFO-Aufruf wurde zur Verbesserung der UnterstĂŒtzung fĂŒr mesa/libdrm hinzugefĂŒgt. Viele Fehler und UnzulĂ€nglichkeiten wurden behoben;
  • Der Synchronisierungscode im HAMMER2-Dateisystem wurde umgeschrieben, was die Leistung dieses FS erheblich verbessert hat. Auch die Leistung von sequentiellen SchreibvorgĂ€ngen wurde gesteigert.
    Um die Fehlertoleranz zu erhöhen, wurde eine Überwachung der AbhĂ€ngigkeiten hinzugefĂŒgt, um die Aufteilung von Verzeichnissen/Dateien wĂ€hrend der Operationen zum Erstellen, Umbenennen oder Löschen auszuschließen. Der Code zur Arbeit mit Snapshots wurde ĂŒberarbeitet, um Verzögerungen zu verringern und die Konsistenz des Snapshots zu gewĂ€hrleisten. Die Verarbeitung gleichzeitiger SchreibvorgĂ€nge und das Flushen des Caches auf die Festplatte wurden verbessert. Die Implementierung der umount-Operation wurde optimiert. Die Informationsdichte der Meldungen ĂŒber IntegritĂ€tsverletzungen (CRC-Fehler) wurde erhöht.

    HAMMER2 wird als Standard fĂŒr das Root-Dateisystem empfohlen. Die UnterstĂŒtzung fĂŒr Cluster-Technologie ist derzeit nicht verfĂŒgbar. Das HAMMER2-Dateisystem zeichnet sich durch Funktionen wie das separate Einbinden von Snapshots, schreibbare Snapshots, Verzeichnisquoten, inkrementelles Spiegeln, UnterstĂŒtzung verschiedener Datenkompressionsalgorithmen und Multi-Master-Spiegelung mit der Verteilung von Daten auf mehrere Hosts aus.

  • Erste UnterstĂŒtzung fĂŒr das FUSE-Subsystem wurde hinzugefĂŒgt, um Dateisysteme im Benutzerspeicher zu erstellen.
  • Die Leistung des Paketfilters PF auf Mehrkernsystemen wurde erhöht.
  • Die UnterstĂŒtzung fĂŒr die Schutzmechanismen SMAP (Supervisor Mode Access Prevention) und SMEP (Supervisor Mode Execution Prevention) wurde implementiert, vorausgesetzt, dass diese von der CPU unterstĂŒtzt werden. SMAP ermöglicht es, den Zugriff auf Daten im Benutzerspeicher durch privilegierten Code, der im Kernel lĂ€uft, zu blockieren. SMEP verhindert den Übergang vom Kernelmodus zur AusfĂŒhrung von Code auf Benutzerebene, was die Ausnutzung vieler Kernel-SicherheitslĂŒcken einschrĂ€nkt (Shellcode wird nicht ausgefĂŒhrt, da er im Benutzerspeicher ist).
  • Ein Code zur Blockierung wurde hinzugefĂŒgt. Angriffe Klasse MDS (Microarchitectural Data Sampling) in Intel-Prozessoren. FĂŒr den Betrieb ist ein aktualisierter Mikrokode erforderlich. StandardmĂ€ĂŸig ist der Schutz deaktiviert und kann ĂŒber 'sysctl machdep.mds_mitigation=MD_CLEAR' aktiviert werden. Die Aktivierung fĂŒhrt zu einer zusĂ€tzlichen Verzögerung von etwa 250 ns beim Kontextwechsel zwischen Benutzer- und Kernelmodus.
  • Der Kernel wird standardmĂ€ĂŸig mit Schutzmaßnahmen gegen Spectre-Angriffe durch Retpoline kompiliert.
  • Viele Dienstprogramme aus dem Basissystem wurden auf die Verwendung von LibreSSL umgestellt;
  • Die Versionen von Drittanbieter-Komponenten wurden aktualisiert, einschließlich xz 5.2.4,
    libarchive 3.3.3, libressl 2.9.1, openssh 8.0, ldns 1.7.0,
    libedit 2019-03-24. Von FreeBSD wurden evdev, makefs, ministat, libfetch,
    dd ĂŒbernommen. Aus OpenBSD wurden die Aufrufe reallocarray(), timing_safe*(), freezero(), dup3(), recallocarray(), aligned_alloc(), explicit_bzero() in libc ĂŒbernommen. StandardmĂ€ĂŸig wird bei der Kompilierung der Compiler gcc-8 anstelle von gcc-5 verwendet.

Quelle: opennet.ru

ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster