Ceci est une version archivée de
FreeBSD à 2006-11-21 11:49:12.
Qu'est ce que
FreeBSD ?
D'un point de vue pratique,
FreeBSD est un dérivé de BSD, l'
UniX? développé à l'Université de Berkeley dans les années 70/80. Il est
OpenSource?, et librement disponible sur le net.
On peut trouver toutes les informations officielles sur
http://www.freebsd.org
En pratique, c'est mon système d'exploitation de prédilection, je le trouve efficace, bien foutu, bien rangé (on y reviendra) et il comble tous mes besoins informatiques courants.
Aperçu
Le noyau du système est monolithique mais supporte l'adjonction dynamique de modules comme pour le noyau de
linux?. Il est directement dérivé du noyau de 4.4 BSDlite la dernière édition de l'
UniX? de Berkeley.
La base du système est également un dérivé direct de l'
UniX? de Berkeley (pour l'ensemble des commandes standard, la libc,
nvi?, ... ) agrémenté d'ajouts plus récents comme gcc le compilateur C du projet GNU et les outils associés ou l'interpréteur du langage
perl?.
Contrairement aux distributions de
linux?,
FreeBSD sépare la base du système (ce qui est considéré comme le minimum pour un système fonctionnel) des programmes extérieurs gérer via le système de ports.
Cette séparation n'est pas qu'esthétique, il indique une véritable séparation au niveau du développement du système. La partie propre à
FreeBSD est développée, maintenue et dirigée par les développeurs du projet sous la direction de la core team (l'équipe dirigeante du projet.) Les ajouts extérieurs au projet qui sont directement inclus dans la base suivent leur développement propre par leurs auteurs respectifs, mais les nouvelles versions ne sont intégrées qu'en accord avec la politique globale du projet. Les ports par contre sont des entités autonomes, le mécanisme de ports est le système qui permet d'ajouter des programmes extérieurs à la base. Chaque port correspond à un programme (ou bibliothèque ... ) extérieur et est maintenu par une personne plus ou moins affilié à
FreeBSD ou au programme correspondant.
Les deux groupes, la base et les ports, sont des entités séparées ce qui permet de suivre les évolutions (parfois rapide) des ports tout en gardant une base stable et saine, alors que dans beaucoup de distributions de
linux? l'on est contraint à soit suivre une branche stable et parfois obsolète pour la partie applications utilisateurs ou utiliser une version à jour mais probablement instable pour le reste du système.
Performance ?
L'un des objectifs principaux de
FreeBSD est la performance et l'adéquation avec la partie matérielle. On retrouve ce souci dans toute l'histoire de
FreeBSD et de nombreux détails de l'implantation du système. Il n'est pas étonnant de noter que le record de débit d'un serveur FTP soit détenu par des serveur utilisant
FreeBSD (les deux serveurs en question étaient le serveur de cdrom.com et celui de freesoftware.com, malheureusement des rachats successifs de la société hébergeant ces serveurs les ont faits disparaitre.) On notera également le nombre de serveur web professionnels utilisant
FreeBSD (le meilleur exemple étant Yahoo) ainsi que les serveurs les plus résistant (ceux qui ont le temps d'exécution le plus long depuis leur dernier démarrage) référencés par
Netcraft.
Globalement, l'implantation de
FreeBSD essaie de faire les choix les plus performants tout en préservant la stabilité du système. On notera par exemple la mise en place de mécanisme minimisant le nombre de copies (voir éliminant complètement les copies) à l'intérieur de la pile IP, ainsi qu'une implantation de select performante.
Usage quotidien
Dans un usage quotidien
FreeBSD est système
UniX? classique, il dispose (via les ports) des dernières versions des environnements les plus modernes (Gnome, KDE, XFCE,
WindowMaker? ... ) ainsi que tous les outils classiques que l'on trouve ailleurs. Le système supporte la plus part des périphérique USB "standard". On y trouve tous les programmes permettant de lire des vidéo, de la musique des DVD, regarder la télé via une Freebox ...
Globalement, le système donne les même satisfaction en tant que système pour station de travail qu'une distribution de
linux? moderne. Les outils de mise à jour sont assez simple à utiliser, même s'il demande un certain apprentissage (mais pas plus que pour apt-get par exemple.)
Ports
Les ports sont une collection de répertoire que l'on trouve dans /usr/ports, triés par catégories. Chaque répertoire contient tout le nécessaire pour compiler et installer un programme (une bibliothèque, ou tout autre bout de machin venu de l'extérieur) proprement. L'arbre des ports (l'ensemble de ces répertoires) peut être mis à jour régulièrement via cvsup et ainsi on peut disposer de version toujours à jour des applications proposées.