Publication du système d'exploitation DragonFly BSD 5.6

Disponible la sortie DragonFlyBSD 5.6, un système d'exploitation à noyau hybride, créé en 2003 dans le but d'un développement alternatif de la branche FreeBSD 4.x. Parmi les caractéristiques de DragonFly BSD, on peut noter un système de fichiers versionné distribué HAMMER, le support du démarrage de noyaux « virtuels » du système en tant que processus utilisateurs, la possibilité de mise en cache des données et des métadonnées du système de fichiers sur des disques SSD, des liens symboliques variant en fonction du contexte, ainsi que la possibilité de suspendre des processus tout en conservant leur état sur disque, un noyau hybride utilisant des threads légers (LWKT).

Principales améliorations, ajoutés dans DragonFlyBSD 5.6 :

  • La gestion de la mémoire virtuelle a été modernisée. De nombreux sous-systèmes liés à la mémoire virtuelle et à PMAP ont été réécrits.
    Le code a été débarrassé des verrous à plusieurs endroits, notamment dans les fonctions m_page_wakeup, vm_hold et vm_unhold. L'efficacité de l'utilisation du cache processeur a été améliorée grâce à la réduction des migrations des objets VM entre les cœurs CPU et à la diminution des frais généraux lors du traitement des exceptions (page-fault) pour les zones de mémoire partagée. L'algorithme d'allocation de pages mémoire a été amélioré. Les latences de la fonction vm_page_alloc() ont été éliminées. Un API vm_page_hash*() a été ajouté, permettant des sélections sans verrous.

    En conséquence, il a été possible d'améliorer considérablement les performances. Par exemple,
    dans le test buildkernel, le temps d'exécution des opérations du côté du noyau a été réduit de 40 %. La bande passante a augmenté de 7 % avec les CPU de la famille Haswell et de 14 % pour Xeon. Dans le test SELF-EXEC S/DI par rapport à la version précédente, un gain de performance de 23 % a été observé pour Haswell et de 18 % pour Xeon. Dans le test
    SELF-EXEC S/SH respectivement 28 % et 71 %, dans SELF-EXEC D/DI — 23 % et 242 % (grâce à l'amélioration du travail multi-thread), dans SELF-EXEC D/SH de 24 % et 234 %, dans FAULTZF de 17 % et 14 %, dans DOCOMP de 22 % et 42 %,
    dans NATIVEKERNEL de 5.1 % et 8.1 ;

  • Le pilote DRM et le gestionnaire de mémoire vidéo TTM pour les cartes graphiques AMD ont été considérablement mis à jour. Ajout de la prise en charge des nouveaux APU Ryzen. Amélioration de la prise en charge du framebuffer UEFI. Dans radeon/ttm, une interblocage affectant négativement les performances a été éliminé. Un refactoring des délais d'affichage au cours du démarrage a été effectué pour éviter les conflits entre le pilote i915 et le serveur X. Ajout de l'appel DRM_IOCTL_GET_PCIINFO pour améliorer la prise en charge de mesa/libdrm. De nombreuses erreurs et défauts ont été corrigés ;
  • Le code de synchronisation dans le système de fichiers HAMMER2 a été réécrit, permettant une augmentation substantielle des performances de ce FS. Les performances des opérations d'écriture séquentielle ont également été améliorées.
    Pour accroître la résistance aux plantages, un suivi des dépendances a été ajouté pour éviter la séparation des répertoires/fichiers lors de la création, du renommage ou de la suppression. Le code de gestion des instantanés a été retravaillé pour réduire les latences et garantir la cohérence des instantanés. L'exécution simultanée des opérations d'écriture et de vidage du cache sur disque a été améliorée. L'implémentation de l'opération umount a été améliorée. La précision des messages d'intégrité (erreur CRC) a été accrue.

    HAMMER2 est recommandé comme système de fichiers racine par défaut. Le support de la mise en cluster n'est pas encore disponible. Le système de fichiers HAMMER2 se distingue par des fonctionnalités telles que le montage séparé des instantanés, l'accès en écriture aux instantanés, des quotas au niveau des répertoires, la réplication incrémentielle, le support de divers algorithmes de compression de données, et la réplication multi-maître avec répartition des données sur plusieurs hôtes.

  • Un support initial du sous-système FUSE a été ajouté pour créer des systèmes de fichiers dans l'espace utilisateur.
  • Les performances du filtrage de paquets PF sur les systèmes multicœurs ont été améliorées.
  • La prise en charge des mécanismes de protection SMAP (Supervisor Mode Access Prevention) et SMEP (Supervisor Mode Execution Prevention) a été mise en œuvre, à condition qu'ils soient pris en charge par le CPU. SMAP permet de bloquer l'accès aux données dans l'espace utilisateur à partir du code privilégié s'exécutant au niveau du noyau. SMEP interdit le passage du mode noyau à l'exécution de code dans l'espace utilisateur, ce qui permet de bloquer l'exploitation de nombreuses vulnérabilités dans le noyau (le code shell ne sera pas exécuté, car il se trouve dans l'espace utilisateur).
  • Un code a été ajouté pour bloquer les attaques de la classe MDS (Microarchitectural Data Sampling) dans les processeurs Intel. Un microcode mis à jour est requis pour cela. Par défaut, la protection est désactivée et peut être activée via 'sysctl machdep.mds_mitigation=MD_CLEAR'. L'activation entraîne un délai supplémentaire d'environ 250ns lors de la commutation de contexte entre l'espace utilisateur et le noyau.
  • Le noyau est par défaut compilé avec la protection retpoline contre les attaques Spectre.
  • De nombreux utilitaires du système de base ont été convertis pour utiliser LibreSSL.
  • Les versions des composants tiers ont été mises à jour, y compris xz 5.2.4,
    libarchive 3.3.3, libressl 2.9.1, openssh 8.0, ldns 1.7.0,
    libedit 2019-03-24. Des outils comme evdev, makefs, ministat et libfetch ont été transférés de FreeBSD.
    dd. Les appels reallocarray(), timing_safe*(), freezero(), dup3(), recallocarray(), aligned_alloc(), explicit_bzero() ont été portés de OpenBSD vers libc. Par défaut, le compilateur gcc-8 est utilisé pour la compilation à la place de gcc-5.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster