Sortie du système d'exploitation DragonFly BSD 5.8

Disponible la sortie DragonFlyBSD 5.8, 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.8 :

  • L'utilitaire dsynth, destiné à la compilation locale et à la gestion de dépôts binaires DPort. Le parallélisme dans la compilation d'un nombre arbitraire de ports est supporté, en tenant compte de l'arbre des dépendances. Dans la préparation d'une nouvelle version de DPort, un grand nombre de modifications ont également été effectuées pour accélérer la compilation de plusieurs paquets dépendants.
  • Un mécanisme efficace de masquage des signaux a été réalisé dans libc, permettant de protéger malloc*() et des fonctions similaires contre les problèmes dus à leur interruption par un signal. Des fonctions sigblockall() et sigunblockall() ont été proposées pour effectuer un blocage et un déblocage à court terme des signaux sans appels système. De plus, dans libc, la fonction strtok() a été adaptée pour une utilisation dans des applications multithread, des constantes TABDLY, TAB0, TAB3 ont été ajoutées ainsi qu'une fonction __errno_location pour améliorer le support des dports.
  • Les composants de l'interface DRM (Direct Rendering Manager) sont synchronisés avec le noyau Linux 4.9, avec le portage de certaines fonctionnalités du noyau 4.12 destiné à améliorer le support de Wayland.
    Le driver drm/i915 pour GPU Intel est synchronisé avec le noyau Linux 4.8.17, avec le transfert de code du noyau 5.4 pour le support de nouveaux chipsets (Skylake, Coffeelake, Amber Lake, Whiskey Lake et Comet Lake). Le driver drm/radeon pour les cartes graphiques AMD est synchronisé avec le noyau Linux 4.9.
  • Les algorithmes de pagination de la mémoire virtuelle ont été considérablement améliorés, permettant de résoudre ou de minimiser les problèmes de réactivité de l'interface utilisateur en cas de pénurie de mémoire. Les problèmes de blocage de Chrome/Chromium en cas de manque de mémoire système ont été résolus.
  • Amélioration de la mise à l'échelle des cœurs sur les systèmes avec un grand nombre de cœurs de processeurs. Réduction du temps de demande des pages de mémoire virtuelle. Réduction de la concurrence SMP en cas de pénurie de mémoire. Augmentation de l'efficacité de l'appel « open(… O_RDWR) ».
  • Réécriture du générateur de nombres pseudo-aléatoires dans le noyau. Le pilote RDRAND est adapté pour accumuler de l'entropie de tous les CPU. Réduction de l'intensité
    et de la taille du soutien RDRAND, qui consommait auparavant 2 à 3 % du temps CPU en idle.
  • Ajout de nouveaux appels système realpath, getrandom et lwp_getname (a permis d'implémenter pthread_get_name_np).
  • Ajout de la prise en charge des mécanismes de protection SMAP (Supervisor Mode Access Prevention) et SMEP (Supervisor Mode Execution Prevention). SMAP permet de bloquer l'accès aux données dans l'espace utilisateur depuis le code avec privilèges exécuté au niveau du noyau. SMEP empêche le passage du mode noyau à l'exécution de code situé au niveau utilisateur, ce qui permet de bloquer l'exploitation de nombreuses vulnérabilités dans le noyau (le shellcode ne sera pas exécuté car il est situé dans l'espace utilisateur);
  • Réécriture des variables sysctl pour configurer Jail. Ajout de la possibilité de monter nullfs et tmpfs depuis Jail.
  • Ajout d'un mode de secours pour le système de fichiers HAMMER2, qui peut être utilisé lors de la récupération après un échec. Dans ce mode, la destruction des snapshots est autorisée lors de la mise à jour des inodes sur place (permet de supprimer des fichiers et des répertoires en l'absence d'espace disque libre, lorsque le mécanisme de copy-on-write ne peut pas être utilisé). La performance a été considérablement améliorée grâce à la refonte du support de la gestion des threads dans HAMMER2. Le processus de vidage des buffers (flush) a été considérablement amélioré.
  • Fiabilité et performance de TMPFS améliorées. Efficacité accrue en cas de manque de mémoire libre dans le système.
  • Dans la pile réseau pour IPv4, prise en charge des préfixes /31 (RFC 3021).
    Dans le tap, amélioration du traitement de ioctl SIOCSIFMTU pour prendre en charge MTU > 1500. Ajout de la prise en charge de SIOCSIFINFO_IN6 et SO_RERROR.
  • Synchronisation du pilote iwm de FreeBSD avec la prise en charge des puces sans fil Intel (ajout de la prise en charge iwm-9000 et iwm-9260).
  • Ajout de fonctions basename() et dirname() compatibles avec Linux pour améliorer la compatibilité dans les ports.
  • Transfert depuis FreeBSD de fsck_msdosfs, sys/ttydefaults.h, AF_INET / AF_INET6 dans libc/getaddrinfo(), calendar(1), rcorder-visualize.sh. Fonctionnalités transférées depuis OpenBSD dans math.h.
  • Les versions des composants tiers ont été mises à jour, y compris Binutils 2.34, Openresolv 3.9.2 et DHCPCD 8.1.3. Le compilateur gcc-8 est utilisé par défaut.

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