Rapport sur le développement de FreeBSD pour le deuxième trimestre de l'année 2025.

Le rapport sur le développement du projet FreeBSD pour le deuxième trimestre de 2025 a été publié. Parmi les changements, on peut noter :

  • L'équipe principale de FreeBSD élabore des règles pour l'utilisation de l'IA et des grands modèles linguistiques lors du développement. Les domaines d'application possibles de l'IA dans FreeBSD comprennent la traduction de la documentation, le résumé de documents volumineux ou incompréhensibles, le suivi des erreurs et l'analyse de code. Pour le moment, la génération de code par l'IA n'est pas prévue, principalement en raison de problèmes de licence potentiels.
  • L'installateur a ajouté le support du système pkgbase, permettant d'installer les composants de base dans un format adapté à la gestion et à la mise à jour via le gestionnaire de paquets pkg. Les paquets pkgbase peuvent être fournis sur le support d'installation pour une installation hors ligne, ou téléchargés depuis le dépôt pkg.freebsd.org.
  • Le projet bsd-user-4-linux continue de se développer, permettant d'exécuter des applications compilées pour FreeBSD dans des systèmes Linux. L'objectif du projet est de permettre la construction de paquets pour FreeBSD sous Linux, en utilisant les outils de construction natifs de FreeBSD. Pour exécuter des fichiers exécutables FreeBSD sous Linux, un fork de l'émulateur QEMU est utilisé, fonctionnant en mode User Mode Emulation, destiné à exécuter des processus compilés pour d'autres CPU et systèmes d'exploitation (QEMU effectue la traduction des appels système et la gestion des signaux). À l'étape actuelle du développement, il est déjà possible de reconstruire FreeBSD avec la commande « make -j80 buildworld » depuis Linux. Le lancement des principales utilitaires système, tels que sh, bash, find, grep, git et clang, fonctionne. Parmi les récents changements, on note le passage à la base de code QEMU 9.2 et la mise en œuvre du support du mécanisme kqueue() sous Linux, en utilisant libkqueue.
  • Une plateforme de virtualisation Sylve est en développement pour FreeBSD, permettant de gérer le démarrage via une interface web. machines virtuelles basé sur l'hyperviseur Bhyve et des conteneurs dans des environnements Jail. Le projet vise à fournir des fonctionnalités similaires à celles du distribution Linux Proxmox VE, mais basé sur FreeBSD, Bhyve et ZFS. Parmi les changements notables du deuxième trimestre, on peut citer l'ajout de graphiques pour visualiser l'utilisation du CPU, la consommation de RAM et l'activité réseau, une interface pour interagir avec les interfaces réseau, des fonctionnalités pour travailler avec les systèmes de fichiers, les partitions, les pools et les instantanés de ZFS, la prise en charge du démarrage d'images de machines virtuelles via l'interface web, ainsi que des fonctionnalités pour créer et supprimer des machines virtuelles pour Bhyve avec prise en charge de la console VNC, redirection des périphériques PCI et liaison aux cœurs CPU sélectionnés.
  • Le port libvirt pour l'hyperviseur bhyve a été amélioré. Un projet de test du pilote bhyve de libvirt a été présenté dans un système d'intégration continue avec FreeBSD. La compatibilité du pilote bhyve a été améliorée. La prise en charge des périphériques virtio-rnd, de la configuration NVRAM et des statistiques avancées a été ajoutée. La prise en charge de l'accès réseau via NAT basé sur le filtre de paquets pf a été mise en œuvre.
  • Le traitement de tlsbase sur les systèmes amd64 a été amélioré, ce qui a un impact positif sur le fonctionnement des applications gérant manuellement TLS (Thread-Local Storage), telles que Wine.
  • Dans le lieur rtld (Runtime linker), une option « -z initfirst » a été mise en œuvre, offrant des capacités supplémentaires pour gérer l'ordre d'initialisation dans les applications dynamiquement liées.
  • La prise en charge de l'introspection de kqueue a été ajoutée et les capacités d'analyse de l'utilisation des mécanismes de traitement d'événements du noyau ont été élargies. Dans l'utilitaire procstat, un rapport sur l'état de kqueue a été mis en œuvre.
  • Un indicateur EXTERROR a été mis en œuvre dans le noyau, informant de la présence d'informations d'erreur étendues. Grâce à EXTERROR, les applications peuvent obtenir des informations diagnostiques supplémentaires en cas d'erreurs, allant au-delà du simple code d'erreur.
  • Dans la base de code FreeBSD 15, la génération d'images d'installation et de compilations de paquets binaires pour les architectures 32 bits i386 et powerpc a été arrêtée. Parmi les plateformes 32 bits dans la branche FreeBSD 15, seule la plateforme armv7 a été conservée. Le mode COMPAT_FREEBSD32, permettant d'exécuter des fichiers exécutables 32 bits dans des environnements 64 bits, a été conservé, mais dans les ports, la prise en charge des compilations 32 bits sera arrêtée.
  • Dans la branche FreeBSD 15, le comportement des appels système setgroups, getgroups et initgroups lors du traitement des groupes d'utilisateurs est rapproché des autres plateformes (la différence d'implémentation dans FreeBSD tenait à la conservation de l'identifiant de groupe efficace dans le premier élément du tableau des groupes).
  • Des travaux sont en cours pour remplacer l'implémentation de Kerberos dans la version principale de FreeBSD de Heimdal Kerberos par MIT Kerberos. MIT Kerberos est déjà inclus dans la branche FreeBSD 15-CURRENT, mais est pour l’instant activé uniquement via l'option WITH_MITKRB5.
  • Les premières versions de l'application SysctlTUI ont été publiées, offrant une interface textuelle pour naviguer dans l'arborescence des paramètres sysctl, visualiser les métadonnées associées et modifier les configurations.
    Rapport sur le développement de FreeBSD pour le deuxième trimestre de l'année 2025.
  • Le développement d'un nouveau gestionnaire de partitions, Geomman (GEOM Manager), basé sur sade, est en cours, fournissant des fonctionnalités supplémentaires telles que le déplacement, la copie et le collage des partitions de disque. En plus de UFS, Geomman prend en charge ext2, ext3, ext4, exFAT et NTFS, avec un support ZFS prévu. Parmi les autres fonctionnalités, il est possible d'augmenter et de réduire la taille des partitions existantes avec le système de fichiers ext4 et de créer de nouvelles partitions exFAT.
  • Le travail sur l'amélioration de la pile audio de FreeBSD se poursuit. Un nettoyage du pilote sound a été effectué, l'outil sndctl a été ajouté, le support de AFMT_FLOAT a été implémenté, le fonctionnement avec les périphériques audio sur les ordinateurs portables a été considérablement amélioré, et le refactoring de la sous-système MIDI a commencé.
  • Le portage des pilotes DRM (i915 et amdgpu) du noyau Linux 6.9 a été réalisé. Les modifications se développent pour la branche FreeBSD 15-CURRENT, mais devraient probablement être rétroportées vers la branche 14-STABLE.
  • Des travaux sont en cours pour ajouter des modes de faible consommation d'énergie S0ix et s2idle (Suspend-To-Idle), qui permettront de réduire la consommation d'énergie lors de l'utilisation de FreeBSD sur des ordinateurs portables modernes équipés de processeurs Intel et AMD, dont certains ne prennent pas en charge le mode veille S3. Le pilote USB4 a été mis à jour pour inclure la possibilité de passer en mode de faible consommation d'énergie C3.
  • Pour la branche FreeBSD 15, le support des attributs de fichier nommés (attributs étendus de style Solaris) est en cours de développement, ceux-ci étant prévus comme un mécanisme alternatif de gestion des attributs étendus, accessible pour ZFS et NFSv4. Les différences par rapport aux méthodes traditionnelles de FreeBSD et Linux pour travailler avec des attributs étendus se concentrent sur la présentation des attributs dans un répertoire de service, qui n'est pas visible dans l'espace de noms principal du système de fichiers et qui est associé au fichier. La gestion des attributs se fait comme avec des fichiers normaux ; par exemple, pour obtenir la liste des attributs, on peut utiliser la fonction readdir().
  • Des correctifs ont été préparés pour implémenter l'option de montage « packrat », permettant d'organiser un cache agressif des données dans un stockage non volatile local sur le côté client pour NFSv4.1/4.2.
  • Sur la base de LinuxKPI, la couche permettant de faire fonctionner les pilotes Linux sous FreeBSD, un nouveau stack net80211 est en train de se développer avec le support des normes Wi-Fi 5 (802.11ac) et Wi-Fi 6 (802.11ax). Les firmwares iwlwififw pour le pilote Intel iwlwifi ont été retirés du système de base au profit d'une installation depuis les ports et de l'utilisation de l'utilitaire fwget. Le support de wlan_tkip a été intégré dans linuxkpi, permettant l'utilisation des protocoles cryptographiques TKIP (Temporal Key Integrity Protocol) et Michael (Message Integrity Code).
  • Le support d'une interface de débogage fournie dans les contrôleurs XHCI USB, permettant d'utiliser un câble USB 3 pour gérer le débogage du noyau FreeBSD, a été réalisé. Une interface de ce type peut être utilisée pour déboguer des problèmes dans les pilotes graphiques provoquant des interruptions d'affichage.
  • Des travaux sont en cours pour porter le noyau FreeBSD vers la mise en œuvre originale des systèmes de fichiers HFS et HFS+, dont le pilote a été ouvert par Apple.
  • Un port FreeBSD a été préparé pour le smartphone Pinephone Pro, incluant un firmware avec support de la gestion par écran tactile et un environnement de bureau simple. Malheureusement, il y a quelques jours, le projet Pine64 a annoncé l'arrêt de la production et de la vente des smartphones PinePhone Pro.
  • Le nombre de ports a augmenté de 36332 à 36605. Parmi les mises à jour dans les ports : GCC 15, OpenJDK 24.0.1, GNOME 47, KDE Plasma 6.4.1, KDE Framework 6.15.0, Sway 1.11, Qt 6.9.1, Ruby 3.4.4, Rust 1.87.0, SDL 3.2.16, serveur Xorg 21.1.18. Par défaut, les versions Go 1.24, Perl 5.40, Ruby 3.3 et PostgreSQL 17 sont utilisées. L'environnement pour Linuxulator a été mis à jour vers Rocky Linux 9.
  • Ajout du support optionnel pour la construction de ports avec des indicateurs de compilateur, incluant des modes de renforcement de la sécurité supplémentaires. Les configurations dans make.conf comprennent :
    • WITH_FORTIFY pour protéger contre les débordements de tampon en ajoutant des vérifications supplémentaires dans des fonctions comme memcpy, strcpy et sprintf ;
    • WITH_STACK_AUTOINIT pour l'initialisation automatique des variables locales ;
    • WITH_ZEROREGS pour protéger contre les exploits ROP (Return-Oriented Programming) et les fuites d'informations via les registres CPU.

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