FreeBSD
FreeBSD est un système d'exploitation UNIX libre. Le nom vient de l'association d'une part de free qui signifie à la fois « libre » et « gratuit » dans l'anglais courant, et d'autre part de Berkeley Software Distribution (BSD), l'UNIX développé à l'université de Berkeley. Free prend un sens plus connoté dans ce nom : il signifie que le logiciel peut être utilisé gratuitement même pour un usage commercial, que les sources complètes sont disponibles et utilisables avec un minimum de restrictions quant à leur usage, leur distribution et leur incorporation dans un autre projet (commercial ou non), et enfin que n'importe qui est libre de soumettre son code source pour enlever un bug ou améliorer le logiciel, ce code étant incorporé aux sources après accord. L'objectif du projet FreeBSD est de fournir un système qui puisse servir à tout, avec le moins de restrictions possibles. Historiquement, les développeurs se sont focalisés pendant un temps sur la plate-forme i386 au sens large (x86) et les performances, c'est-à-dire les temps de réponses du système pour n'importe quelle sollicitation. En 2010, FreeBSD est utilisable et soutenu par la communauté sur un grand nombre de plates-formes : Alpha, AMD64, ARM, i386 (architecture i386 ou x86, incluant les Pentium), ia64 (la famille de processeurs Intel Itanium et Itanium 2), MIPS, PC98 (architecture NEC PC-98x1), PowerPC, SPARC (architecture UltraSPARC de Sun Microsystem) et Xbox. FreeBSD offre des possibilités avancées en matière de réseau, de performance, de sécurité et de compatibilité. Il y a notamment une compatibilité binaire Linux et Windows NT (XP inclus). La première permet l'exécution de programmes compilés sur une plateforme GNU/Linux, la seconde permet l'utilisation des pilotes Windows NT des cartes réseau sans fil Wi-Fi. Le logiciel est un standard industriel sur le marché des serveurs. De nombreux fournisseurs d'accès, hébergeurs et organismes utilisent FreeBSD, parmi lesquels Walnut Creek CDROM, Yahoo! Inc. ou Netcraft[Quand ?]. Le 24 mai 1999, l'équipe du serveur miroir ftp.cdrom.com a annoncé avoir battu la veille leur record de transfert de données[2] pour un serveur : 1,33 tébioctet en 24 heures. FreeBSD est également utilisé par les géants du numérique moderne, par exemple Netflix[3] pour diffuser ses contenus[4] audiovisuels au travers de ses infrastructures. HistoireFreeBSD tire ses origines de l'UNIX de Berkeley. Beaucoup de l'organisation humaine, de l'idéologie et des événements du Computer Systems Research Group (en) (CSRG) sont restés dans FreeBSD et se transmettent. Le projet est lancé en 1993 sur la base de 386BSD, et la version 1.0 est disponible en production dès novembre 1993. L'équipe de Yahoo! cherche alors un système d'exploitation stable et performant. Ils le trouvent avec FreeBSD 2, qu'ils installent sur un Pentium 100 puis sur l'ensemble de leurs ordinateurs, comme le raconte David Filo[5], cofondateur de Yahoo! Depuis, l'hébergeur met à disposition plusieurs serveurs pour la communauté FreeBSD. FreeBSD 3 importe du code de 4.4BSD-Lite release 2, qui est la dernière publication faite par l'université de Californie à Berkeley (UCB). FreeBSD devient particulièrement mûr et performant avec les versions 4, jusqu'à la dernière (4.11) parue en [6]. Une grande quantité de nouveautés apparaît avec les versions 5, mais Matthew Dillon, en désaccord avec d'autres membres de la core team (les développeurs dirigeants)[réf. souhaitée] décide de continuer la version 4 avec une nouvelle équipe sous le nom de DragonFly BSD. Parmi ces nouveautés, on compte : une architecture multiprocesseurs nouvelle génération (SMPng, Symmetrical Multi-Processor scheduler next generation) avec des temps de latences plus courts, la possibilité d'exécuter en mode kernel plusieurs programmes, le système de fichiers UFS2, un système de politiques de sécurité en provenance de Trusted BSD[7]. Les versions 6 apparaissent en novembre 2005. Elles continuent entre autres le travail sur le système SMP (Symmetrical Multi-Processor scheduler), les threads, et la sécurité. Le système de fichiers est maintenant multi-threadé, et les processeurs 386 ne sont plus gérés. Il y a trois releases (publications) en 2006 et une en 2007. La version 7.0 sort le [8] et la 8.0 en novembre 2009[9]. Parmi les nouveautés importantes figure le nouvel ordonnanceur, SCHED_ULE, optimisé pour les machines multiprocesseurs sans diminution des performances en monoprocesseur. Cette version a néanmoins été critiquée pour l'intégration tardive de la propolice au sein du kernel[10]. La version 8.0 sort en juillet 2010[11]. Elle sera supporté jusqu'en juin 2015 avec la version 8.4[12]. En 2013, la version 8.4 proposait de nouvelles fonctionnalités sur le domaine matériel avec le support de l'USB 3.0 et l'accélération d'AES sur les processeurs Intel. FreeBSD 8.4 apportait du nouveau dans le domaine de la virtualisation avec notamment l'appui de DomU Xen et la virtualisation des couches réseau. Le 12 janvier 2012[13], la version 9.0 est marquée par le nouvel installeur bsdinstall[14] et l'arrivée de FreeBSD sur la console Playstation 3. Par la suite, Sony Interactive Entertainment réutilisera FreeBSD 9.0 pour l'OS de la Playstation 4. La version 10.0 de FreeBSD (20 janvier 2014[15]) a vu la dépréciation de GCC remplacée par celle de Clang ainsi que d'autres changements mineurs. FreeBSD 11.0 sort le 10 octobre 2016[16] et apporte quelques modifications dont la prise en charge plus large pour les pilotes de réseaux sans fil et la prise en charge de l'architecture arm64. En décembre 2018[17] la version 12.0 de FreeBSD fut publiée, cette version apporte l'ajout du pilote netdump et quelques améliorations du support graphique. La version 13.0 de FreeBSD est annoncée le 13 avril 2021[18]. Les principaux changements sont la mise à jour de la chaîne de compilation vers CLANG V11.0 ainsi que la suppression de GCC et GDB de l'arborescence système. Le , la version 14.0 de FreeBSD sort, où des améliorations sont apportées aux chargeurs d'amorçage. Les pilotes de cartes son sur le bus ISA sont retirés[19]. VersionsDéveloppementBeaucoup est resté de l'époque Berkeley Software Distribution et du CSRG avec, entre autres, de grandes parties des sources, des sources publiées avec le système, des décisions prises par un groupe réduit de développeurs. Les développeurs sont dispersés dans le monde entier. Les sources de toutes les branches depuis la version 2.2 jusqu'aux dernières expérimentations de CURRENT sont en permanence disponibles sur les serveurs. Il est même possible de télécharger les sources d'une branche telles qu'elles étaient à une date précise. L'équipeLe développement se fait d'une manière assez hiérarchisée. La core team rassemble des développeurs élus qui décident de l'évolution générale de FreeBSD. Ils sont actuellement neuf, et on compte 29 anciens (depuis 1992) qui continuent à contribuer. Les élections se tiennent tous les deux ans. Les autres équipes sont responsables de :
Certains développeurs font partie de plusieurs équipes, par exemple core team et release engineering team. FreeBSD compte en novembre 2006 :
Il y a régulièrement des importations et exportations de code entre les systèmes BSD (FreeBSD, NetBSD, OpenBSD, DragonFly BSD). Par conséquent, les développeurs BSD en général participent au code des BSD. Il y a plusieurs raisons à cela : tous ont pour ancêtre commun 4.4BSDLite et ont une architecture proche - en moyenne bien plus que deux distributions GNU/Linux, et tous ont la même licence BSD. D'autres licences proches comme celle de Solaris permettent également des flux de code. Dtrace, un outil Solaris qui permet de voir d'une manière arbitraire tout ce qui se passe dans le système, est ainsi en train d'être porté sur FreeBSD :
Apple a utilisé une grande partie du système version 5, et a participé en retour à l'ajout de fonctionnalités[22]. Il y a donc une communauté de développeurs FreeBSD – au sens large – très importante. L'organisationFreeBSD a trois étiquettes pour les sources :
Au numéro x correspond donc une architecture ou une branche. Au numéro y correspond une release. Tous les quatre à six mois, les sources d'une branche sont gelées pour préparer une release, étiquetée RELEASE. Pour un système compilé :
Pour un système FreeBSD de production, les FreeBSD-x.y-RELEASE-pz sont les mieux indiqués. FreeBSD-CURRENT est tout à fait expérimental[23] et contient des fonctionnalités qui ne sont que susceptibles d'être présentes dans la prochaine branche. Les personnes qui utilisent FreeBSD-CURRENT sont :
L'organisation du développement et de la communauté fait que le support de FreeBSD est très réactif, notamment en matière de sécurité. Quelques minutes ou heures en général séparent la découverte d'une faille dans la sécurité et le moment où les sources sont corrigées sur le serveur principal. Le systèmeFreeBSD est un système d'exploitation à part entière qui comprend le noyau, une partie utilisateur, et les sources. Les programmes ne faisant pas partie de FreeBSD comme Apache et Firefox sont dans le système de ports. Les logiciels importants comme le serveur graphique X11, les gestionnaires de fenêtres comme FluxBox et les environnements de bureau tel que KDE sont intégrés comme packages (port précompilé) dans les cédéroms de publication de FreeBSD. FreeBSD est publié en grande majorité sous licence BSD, et sous licence GPL (GNU General Public Licence). Les sources protégées par la licence GPL sont dans un répertoire séparé. Les « ports »Il s'agit d'une des grandes forces de FreeBSD. Chaque port est un ensemble de fichiers informatifs précisant où trouver les sources d'une application, éventuellement quelles corrections apporter, comment compiler, et quels sont les programmes ou bibliothèques dont l'application dépend (ces programmes et bibliothèques sont simplement appelées dépendances). Par extension, un port est une application portée sur FreeBSD. À l'été 2013, il y a plus de 24 000 ports. Chaque port peut être installé sous forme binaire ou package (système équivalent aux fichiers .rpm, .deb, etc. des distributions GNU/Linux) ou compilé depuis les dernières sources (équivalent des pkgsrc de NetBSD). Le système est fait de telle manière qu'avec une seule commande, les sources de l'application et des dépendances sont téléchargées, compilées et installées sur le système d'exploitation. Depuis 2008, l'environnement Java de Sun Microsystems est disponible pour les plates-formes i386 et AMD64 (Java Runtime Environment/JRE et Java Development Kit/JDK) en version 1.6. La fondation FreeBSD a négocié une licence auprès de Sun Microsystems pour une distribution précompilée de cet environnement. ChiffrementÀ partir de la version 6.0 de FreeBSD, un système de chiffrement de disque, Geli, est intégré dans FreeBSD. Cette nouvelle classe du module GEOM a été développée par Paweł Jakub Dawidek[24]. Geli permet entre autres :
Projets associés et adaptations de FreeBSDActifs
Abandonnés
Développements complémentaires
Adaptés à des produits spécifiques
Trois cédéroms avec système utilisable sans installation sur disque dur (live CD) existent : FreeSBIE (du groupe italien GUFI), Frenzy BSD (un projet russe documenté en français) et GhostBSD. Pénétration des marchésFreeBSD est considéré comme un standard industriel dans le marché des serveurs. Il n'y a pas de données maintenues sur les utilisateurs du système d'exploitation, mais des organismes d'observation comme Netcraft (qui a tous ses serveurs sous FreeBSD[citation nécessaire]) permettent d'effectuer des évaluations qualitatives. De grandes parties d'internet (Netblock owners) sont sous FreeBSD :
D'anciens utilisateurs (ou actuels mais non confirmés) de FreeBSD sur serveurs sont :
FreeBSD est également très utilisé par des fabricants de matériel. La liste des matériels utilisant FreeBSD (en) inclus:
L'utilisation de FreeBSD pour un usage domestique, sans être confidentielle, est bien plus modérée auprès du grand public que le système GNU/Linux. Pourtant, FreeBSD fait fonctionner les logiciels qui ont largement aidé à populariser les systèmes GNU/Linux, parmi lesquels le serveur graphique X associé à l'espace bureautique et de fenêtrage KDE, les suites bureautiques OpenOffice.org et LibreOffice, le navigateur web Firefox. De plus, FreeBSD est une alternative populaire à Linux pour servir de système d'exploitation à Raspberry Pi. Il se distingue par la rapidité et la stabilité de son réseau, mais demande des connaissances en programmation plus approfondies[38]. D'autres facteurs entrent en jeu. Sans prétention d'exhaustivité, de hiérarchie quant à l'impact, il y a vraisemblablement :
Le personnage rouge et souriant est le daemon BSD. Dans le contexte des systèmes UNIX, les daemons — d(isk) a(nd) e(xecution) mon(itor) — sont des programmes de maintenance travaillant en arrière-plan et ne nécessitant pas d'intervention humaine. Si daemon était entre le milieu du XVIe siècle et le XIXe siècle l'orthographe d'usage pour demon, aujourd'hui ces deux termes diffèrent. Dans les anciennes croyances grecques, daemon (daimôn) désignait une divinité, un être surnaturel, un génie ou ange gardien. En revanche demon (démon en français) a une connotation diabolique. Le terme daemon est réapparu dans les années 1980 avec les débuts d'UNIX, ce avec la même ancienne connotation grecque. Le daemon BSD à la fois revêt l'apparence d'un démon (avec les cornes, et la queue pointue) et incarne un daemon par son apparence bienveillante. Le daemon BSD s'appelle officiellement beastie, ce qui se prononce comme BSD en anglais. Le nom erroné de Chuck a été employé pendant un temps, à l'origine par Walnut Creek CD-ROM. John Lasseter (écurie Pixar, réalisateur et producteur de Toy Story et 1001 pattes) créé le premier l'image de beastie. Depuis 1988 les droits sur le daemon BSD sont détenus par Marshall Kirk McKusick, ancien développeur à l'UC Berkeley Computer Systems Research Group (CSRG). L'image de beastie ci-contre a été créée par Poul-Henning Kamp, ancien membre de la core team. Comparaison avec GNU/LinuxFreeBSD et GNU/Linux sont deux systèmes de type Unix. Alors que FreeBSD tend à être entièrement conçu par une seule équipe, chaque composant de GNU/Linux est développé par une équipe différente. De cette manière la cohésion de ces composants est assurée d'office dans le cas de FreeBSD tandis que sous GNU/Linux elle se révèle très complexe, c'est pourquoi il existe des distributions GNU/Linux, qui sont des systèmes préassemblés dans le but d'être plus rapidement fonctionnels pour l'utilisateur. Entre les deux systèmes, la nomenclature des périphériques diffère, de même que quelques commandes, ou encore l'arborescence du système de fichiers. C'est typiquement le même genre de différences que l'on peut trouver entre deux distributions GNU/Linux très différentes. L'ensemble des distributions GNU/Linux étant très hétérogène, il est extrêmement difficile de le comparer à une seule entité. Cependant tout comme quelques distributions GNU/Linux, FreeBSD entend fournir un système simple, rapide, stable, sûr, à destination des utilisateurs qui ont déjà une bonne connaissance des systèmes informatiques (par exemple si lors de l'installation l'utilisateur a choisi d'installer un environnement graphique, il ne sera pas configuré automatiquement ni lancé au démarrage par défaut). À ce titre, FreeBSD se rapproche de Gentoo par exemple. FreeBSD est très loin de l'installation en quelques clics d'Ubuntu, qui est parfaitement fonctionnel fraîchement installé et déjà équipé de tous les logiciels de base pour une utilisation domestique. C'est ce que propose TrueOS, un système FreeBSD pré-installé pour une utilisation bureautique, à l'image d'une distribution GNU/Linux. De nombreux débats ont lieu sur la sécurité, les performances et diverses qualités de ces systèmes[39]. FreeBSD possède quelques atouts face aux distributions GNU/Linux :
Cependant, les distributions GNU/Linux sont en train de rattraper ces quelques retards :
Inversement, FreeBSD essaie de rattraper le retard qu'il avait sur GNU/Linux concernant les hyperviseurs avec le tout récent bhyve (en), la gestion des paquets binaires avec pkgng[41] et le support des cartes graphiques avec l'intégration du Kernel-mode Setting. Notes et références
Voir aussiArticles connexes
BibliographieOuvrages de référence
Bibliographie complémentaireTechnique en anglais
Générale en anglais
En français
Liens externes |