NewsLinuxFR > Proposition de dépêche FreeBSD 7.0 [
http://wiki.eagle-usb.org/wakka.php?wiki=NewsFreeBSD70/linuxfr ]
Voir journal
https://linuxfr.org/~domo/25547.html pour la bêta 1(.5 ?)
Liens utiles :
http://people.freebsd.org/~bmah/relnotes/7.0-RELEASE/relnotes.html
http://linuxfr.org/2007/07/12/22727.html
http://www.freebsd.org/news/newsflash.html#event20071010:01
http://wiki.freebsd.org/ElfToolChain
http://wiki.freebsd.org/SMPTODO
http://people.freebsd.org/~kris/scaling/7.0%20Preview.pdf
http://ivoras.sharanet.org/freebsd/freebsd7.html
http://ivoras.sharanet.org/freebsd/freebsd8.html
http://www.onlamp.com/pub/a/bsd/2008/02/26/whats-new-in-freebsd-70.html
http://en.wikipedia.org/wiki/FreeBSD#FreeBSD_7
http://www.freebsd.org/releases/6.3R/relnotes.html
http://www.freebsd.org/releases/7.0R/relnotes.html
Titre
Sortie de FreeBSD 7.0 et 6.3
Scoop
Deux nouvelles versions de
FreeBSD viennent de sortir pour ce début d'année : 6.3 et 7.0.
La version 6.3 sortie le 18 janvier est la dernière version de maintenance de la branche RELENG_6, cette mise à jour concerne :
- Correctifs de sécurités (bind, libarchive, random, openssl et libc)
- Amélioration de l'ACPI,
- Ajout de nombreux pilotes,
- Amélioration de freebsd-update qui permet maintenant, en plus des mises à jours de sécurités, de faire des montées de version.
- Réimplémentation de unionfs
Mais l'actualité majeure concerne la version 7.0 : en effet c'est la première version stable de la branche RELENG_7 qui apporte beaucoup de nouveautés.
Parmi les fonctionnalités majeures apportées par cette version on peut noter :
- Amélioration du support des portables,
- Support de ZFS,
- Passage à GCC-4.2,
- Poursuite de la suppression du « Giant Lock »,
- Virtualisation complète de la pile réseau,
- Stabilisation et amélioration de l'ordonnanceur de processus « SCHED_ULE »,
- Support de la journalisation pour UFS,
- libthr devient la bibliothèque de gestions des threads par défaut.
Corps de la dépêche
Après une très longue phase Beta/RC qui a permis de mettre et de corriger de très nombreux bugs, et plusieurs mois de retard, la très attendue version 7.0 vient de sortir. Beaucoup de développements à tous les niveaux :
Noyau et Espace Utilisateur
ZFS(1M) est le système de fichiers « révolutionnaire » de Sun. Le port de
ZFS sous FreeBSD, bien que considéré comme expérimental, est parfaitement fonctionnel, dotant ainsi le système d'un nouveau système de fichier moderne très complet. FreeBSD est le second système d'exploitation libre à bénéficier du support pour ce système de fichier en natif (le premier étant OpenSolaris). La licence CDDL ne permettant pas l'inclusion dans le noyau, ZFS est donc disponible sous la forme de module, mais il peut quand même être utilisé pour la partition système. À noter que son support est considéré comme expérimental et qu'il n'est pas recommandé de l'utiliser sur des machines de production.
- Accès en lecture seule au système de fichiers XFS(5)
Après
reiserfs(5), xfs est le second système de fichier « exotique » linux a être implémenté en lecture seule sous FreeBSD. Étant sous licence GPL, il est incompatible avec une inclusion directe dans le noyau, le support est donc disponible sous la forme d'un module.
- Ajout expérimental du système de fichiers tmpfs(5)
tmpfs a été développé initialement sous
NetBSD à l'occasion du google summer of code, celui-ci a ensuite été porté sous FreeBSD.
Le système de fichiers UFS profite d'une nouveauté basée sur l'infrastructure de stockage
GEOM. En effet FreeBSD 7.0 introduit l'outil gjournal qui offre enfin la journalisation au système de fichier UFS ainsi que potentiellement à n'importe quel Système de fichier tirant parti de l'infrastructure GEOM. Gjournal ne remplace par les
softupdates mais propose une alternative, il permet entre autre d'éviter de devoir faire une vérification du système de fichiers en tâche de fond après un incident.
- Stabilisation et amélioration de l'ordonnanceur de processus « SCHED_ULE »
L'ordonnanceur SCHED_ULE à été complètement revu, il est désormais beaucoup plus stable et plus réactif, en particulier quand le système est fortement chargé. Il fournit des performances nettement supérieures sur les systèmes multiprocesseurs mais aussi sur les système uniprocesseurs, et deviendra l'ordonnanceur par défaut pour la prochaine version de
FreeBSD? (7.1).
- Amélioration de la couche ACPI(4)
- Amélioration du support de l'ABI Linux(4) (linuxulator).
Le linuxulator permet désormais d'émuler le noyau linux 2.6.16. Cette fonctionnalité n'est pas encore présente par défaut, mais peut être activée par
sysctl(8) : compat.linux.osrelease=2.6.16
- Ajout de nombreux pilotes audio avec notamment un module pour les cartes son se conformant aux spécifications HDA d'Intel
- Ajout de nombreux pilotes réseau (filaire et WIFI) ainsi que du support de la norme 802.11n
- KAME Ipsec est remplacé par FAST_IPSEC
- Poursuite de la suppression du « verrou géant » (aka "Giant Lock")
La majorité des composants importants sont désormais libres de "Giant Lock", plusieurs processus peuvent donc exécuter du code kernel sur plusieurs processeurs simultanément. La majorité des pilotes (notamment cartes réseaux et contrôleurs de disques) ainsi que les systèmes de fichiers virtuels basés sur pseudofs (procfs, linprocfs et linsysfs) sont concernés.
- L'allocateur de mémoire traditionnel (phkmalloc) est remplacé par le tout nouveau et très performant jemalloc. Ce dernier a été conçu spécialement pour les ordinateurs modernes ayant une grande quantité de mémoire et plusieurs processeurs et il fonctionne en espace utilisateur. Les performances étant intéressantes et la licence BSD étant permissive, les développeurs du navigateur Firefox 3 ont décidés d'utiliser jemalloc comme allocateur de mémoire par défaut.
- Amélioration de l'utilitaire freebsd-update(8)
La commande freebsd-update permettait jusque là de faire les mises à jours de sécurités relatives au noyau et à l'espace utilisateur de manière binaire. Désormais, elle permet aussi via l'option upgrade de faire des montées de version (en choisissant la release de destination avec l'option -r).
- Passage à la version 2 de libarchive(3), et ajout du support du format ar
Le but à terme est de recoder la totalité des GNU binutils sous license BSD afin de tirer profit de libelf. C'est le projet «
ElfToolChain » qui s'appuie sur libarchive et libelf.
- libthr(3) comme bibliothèque de threads par défaut
libthr est une implémentation 1:1 des threads POSIX, apportant un gain de rapidité conséquent pour toutes les applications utilisant des threads (notamment
MySQL) par rapport à l'implémentation précédente en N:M. Un
comparatif des performances entre les différentes versions de FreeBSD ainsi qu'avec d'autres systèmes d'exploitations est disponible avec de nombreuses explications techniques.
- Aggrégation des interfaces réseaux
Le code permettant d'aggréger des interfaces réseaux pour augmenter le débit et améliorer la tolérance aux pannes a été intégré à FreeBSD 7.0. Cet outil
trunk a été importé directement du système d'exploitation OpenBSD.
Toujours dans le domaine des réseaux il est maintenant possible d'utiliser certaines cartes accélératrices de type TSO (
TCP/IP segmentation offload) et LRO (
Large Receive Offload) au lieu de faire ces opérations uniquement avec le processeur central.
- Suppression de l'architecture Alpha
L'architecture Alpha a été abandonné dans branche RELENG_7 et CURRENT, en revanche le support continure pour les branches RELENG_5 et RELENG_6
- Mise à jours de nombreux logiciels en espace utilisateur :
- bind 9.4.2
- gcc 4.2.1
- netcat (passage à la version d'OpenBSD 4.1)
- ncurses 5.6 avec support de l'Unicode
- pf(4) (passage à la version d'OpenBSD 4.1)
Merci à tout ceux qui ont contribués à la news sur le wiki et merci à baud123 pour son wiki.