Expliquer BSD
Greg Lehey <[email protected] >
Version: 43184
FreeBSD is a registered trademark of the FreeBSD Foundation.
AMD, AMD Athlon, AMD Opteron, AMD Phenom, AMD Sempron, AMD Turion, Athlon, Élan,
Opteron, and PCnet are trademarks of Advanced Micro Devices, Inc.
Apple, AirPort, FireWire, iMac, iPhone, iPad, Mac, Macintosh, Mac OS, Quicktime, and True-
Type are trademarks of Apple Inc., registered in the U.S. and other countries.
Intel, Celeron, Centrino, Core, EtherExpress, i386, i486, Itanium, Pentium, and Xeon are tra-
demarks or registered trademarks of Intel Corporation or its subsidiaries in the United States
and other countries.
Linux is a registered trademark of Linus Torvalds.
Motif, OSF/1, and UNIX are registered trademarks and IT DialTone and The Open Group are
trademarks of The Open Group in the United States and other countries.
SPARC, SPARC64, and UltraSPARC are trademarks of SPARC International, Inc in the United
States and other countries. SPARC International, Inc owns all of the SPARC trademarks and un-
der licensing agreements allows the proper use of these trademarks by its members.
Sun, Sun Microsystems, Java, Java Virtual Machine, JDK, JRE, JSP, JVM, Netra, OpenJDK, Solaris,
StarOffice, SunOS and VirtualBox are trademarks or registered trademarks of Sun Microsys-
tems, Inc. in the United States and other countries.
UNIX is a registered trademark of The Open Group in the United States and other countries.
XFree86 is a trademark of The XFree86 Project, Inc.
Many of the designations used by manufacturers and sellers to distinguish their products are
claimed as trademarks. Where those designations appear in this document, and the FreeBSD
Project was aware of the trademark claim, the designations have been followed by the «™» or
the «®» symbol.
2013-11-13 07:52:45 par hrs.
Résumé
Dans le monde du logiciel libre «Linux» est quasiment synonyme de «Système d'Exploita-
tion», mais il n'est pas le seul système d'exploitation de type UNIX® Open Source. Selon l'In-
ternet Operating System Counter, en avril 1999, 31.3% des ordinateurs connectés à l'Internet
utilisaient Linux® alors que 14.6% utilisaient un UNIX® BSD. Quelques-unes des plus grandes
sociétés du Web, telles que Yahoo!, utilisent un système d'exploitation BSD. En 1999, le serveur
FTP le plus utilisé ftp.cdrom.com (aujourd'hui disparu), utilisait BSD pour transférer 1.4TB de
données par jour. Il ne s'agit clairement pas d'un marché de niche: BSD est un secret bien gar-
dé.
Mais quel est ce secret? Pourquoi BSD n'est il pas mieux connu? Ce document traite de cette
question et de bien d'autres.
Dans ce texte, les différences entre BSD et Linux seront indiquées comme ceci.
Version française de Rodrigo Osorio <[email protected]>, Maxime Derche
<[email protected] > et Thierry Thomas <[email protected]>
Qu'est-ce que BSD?
Table des matières
1. Qu'est-ce que BSD? ................................................................................................................... 2
2. Quoi, un vrai système UNIX®? .................................................................................................... 2
3. Pourquoi BSD n'est-il pas mieux connu? ....................................................................................... 3
4. Comparer BSD et Linux ............................................................................................................. 4
1.Qu'est-ce que BSD?
BSD signifie «Berkeley Software Distribution» (ou «Distribution logicielle de Berkeley»). C'est le nom donné
aux distributions de code source provenant de l'Université de Californie, située à Berkeley; ces distributions était
à l'origine, une extension du système d'exploitation UNIX® AT&T. Plusieurs projets de systèmes d'exploitation
Open Source sont basés sur une version de ce code connue sous le nom de 4.4BSD-Lite. De plus, elle est composée
d'éléments issus d'autres projets Open Source, y compris ceux du projet GNU. Le système d'exploitation complet
comprend:
Le noyau BSD, qui prends en charge l'ordonnancement des processus, la gestion de la mémoire, la gestion des
multi-processeurs (SMP), les pilotes de périphériques, etc.
A la différence du noyau Linux, il existe plusieurs noyaux BSD avec des possibilités différentes.
La bibliothèque C, c'est à dire l'interface de programmation de base du système.
La bibliothèque C BSD est basée sur du code provenant de Berkeley, et non sur celui du projet GNU.
Des utilitaires tels que l'interpréteur de commandes, des applications de gestion de fichiers, des compilateurs
et des éditeurs de liens.
Certains utilitaires sont dérivés du projet GNU, d'autres pas.
Le système X Window, qui prend en charge l'affichage graphique.
Le système X Window utilisé dans la plupart des BSD est maintenu par l'un de ces deux projets indépendants: le
projet XFree86 ou le projet X.Org. C'est le même code utilisé par Linux. Généralement, BSD ne définit pas un
«bureau graphique» spécifique tels que GNOME ou KDE, bien que ces derniers soient disponibles.
D'autres programmes et utilitaires.
2.Quoi, un vrai système UNIX®?
Les systèmes d'exploitation BSD ne sont pas des clones, mais des dérivés Open Source du système d'exploitation
UNIX® issus des laboratoires de recherche de AT&T, qui est lui-même un ancêtre de l'actuel UNIX® System V. Ceci
peut vous surprendre. Comment cela a t-il pu se produire alors qu'AT&T n'a jamais fourni son code en Open Source?
Il est vrai que le système UNIX® d'AT&T n'est pas Open Source, et si l'on s'en tient strictement au point de vue de la
propriété intellectuelle alors BSD n'est pas un UNIX® mais, d'un autre coté, AT&T a intégré des sources provenant
d'autres projets, et plus particulièrement ceux du «Computer Sciences Research Group» (CSRG) de l'Université
de Californie, à Berkeley. A partir de 1976, le CSRG à commencé à distribuer les bandes de son logiciel sous le nom
de Berkeley Software Distribution ou BSD.
Les premières versions se composaient essentiellement d'applications utilisateur, mais cela changea radicalement
lorsque le CSRG obtins un contrat avec le «Defense Advanced Projects Research Agency» (DARPA) pour faire évo-
luer les protocoles de communication sur leur réseau, ARPANET. Les nouveaux protocoles se rent connaître sous
le nom de Protocoles Internet, puis, TCP/IP d'après plus importants protocoles de l'ensemble. La première implémen-
tation ayant fait l'objet d'une large distribution fut celle de 4.2BSD, en 1982.
2
Expliquer BSD
Au cours des années 1980, un grand nombre de fabricants de stations de travail sont apparus. La plupart préfé-
raient acheter des licences UNIX® plutôt que de développer leur propre système d'exploitation. En particulier, Sun
Microsystems acheta une licence UNIX® et implémenta une version de 4.2BSD, appelée SunOS. Lorsque AT&T
fut autorisée à exploiter commercialement UNIX®, elle commença avec une implémentation réduite à l'essentiel
appelée System III, rapidement suivie par la version System V. Le code de System V ne comprenait pas de gestion
réseau, de sorte que toutes les implémentations incluaient des logiciels additionnels issus de BSD, y compris les
applications gérant TCP/IP, mais également des utilitaires tels que l'interpréteur de commandes csh et l'éditeur vi.
Ensemble, ces améliorations, étaient connues comme étant les Extensions Berkeley.
Les bandes BSD contenaient du code source d'AT&T et, par conséquent, nécessitaient une licence source UNIX®.
Vers 1990, les finances du CSRG s'épuisèrent et le groupe fut dissout. Quelques membres décidèrent alors de fournir
le code BSD, qui était Open Source, sans le code propriétaire d'AT&T. Ceci donna la Networking Tape 2, aussi connue
sous le nom Net/2. Net/2 n'était pas un système d'exploitation complet: environs 20% du code du noyau manquait.
L'un des membres du CSRG, William F. Jolitz, écrivit le code manquant et le publia au début de l'année 1992 sous
le nom 386BSD. Au même moment, un groupe d'anciens membres du CSRG, créa une entreprise nommée Berkeley
Software Design Inc. qui publia une version bêta d'un système d'exploitation nommé BSD/386, basé sur le même
code source. Le nom du système d'exploitation sera changé plus tard en BSD/OS.
386BSD ne devint jamais un système d'exploitation stable. Mais deux autres projets dérivés apparurent dès 1993:
NetBSD et FreeBSD. La divergence originelle entre ces deux projets s'explique par le fait que certains furent plus pa-
tients que d'autres dans l'attente d'améliorations de 386BSD: le groupe NetBSD commença dès le debut de l'année,
alors que la première version de FreeBSD ne fut pas disponible avant la n de l'année. Entre temps, les codes avaient
suffisamment divergés qu'une fusion paraissait difficile. De plus, les projets avaient des objectifs différents, comme
nous le verrons par la suite. En 1996, OpenBSD dériva de NetBSD et, en 2003, DragonFlyBSD dériva de FreeBSD.
3.Pourquoi BSD n'est-il pas mieux connu?
Un certain nombre de raisons font que BSD reste relativement inconnu:
1. Les développeurs BSD portent souvent plus d'intérêt à l'amélioration de leur code qu'à sa promotion.
2. Une grande partie de la popularité de Linux est due à des facteurs extérieurs au projet, tels que la presse, ou
les sociétés créées pour vendre des services liés à Linux. Jusqu'à récemment, les systèmes BSD Open Source
n'avaient pas de tels partisans.
3. Les développeurs BSD ont tendance à être plus expérimentés que les développeurs Linux et ressentent moins
le besoin de réaliser un système simple à utiliser. Les nouveaux venus on donc tendance à se sentir plus à l'aise
avec Linux.
4. En 1992, AT&T poursuivit en justice BSDI, la société qui commercialisait BSD/386, en prétendant que son produit
utilisait du code source dont la propriété intellectuelle revenait à AT&T. L'affaire a été réglée à l'amiable en
1994, mais le spectre de ce litige à continué à hanter les esprits. Pas plus tard qu'en mars 2000, un article publié
sur le Web prétendait que cette affaire n'avait été que «récemment réglée».
Un des points que ce procès a bien clarifié est la question du nom: dans les années 1980, BSD était connu comme
«BSD UNIX®». Avec la suppression des derniers vestiges de son code AT&T, BSD a également perdu le droit
de s'appeler UNIX®. Ainsi, vous pourrez voir des livres dont le titre fait référence au «système d'exploitation
UNIX® 4.3BSD» et au «système d'exploitation 4.4BSD».
5. Il existe une idée selon laquelle les projets BSD seraient fragmentés et concurrents. Le Wall Street Journal a
même parlé d'une «balkanisation» des projets BSD. Tout comme les poursuites judiciaires, cette perception
se base sur de vieilles histoires.
3
Comparer BSD et Linux
4.Comparer BSD et Linux
Mais quelle est la vraie différence entre, disons, Debian Linux et FreeBSD? Pour l'utilisateur moyen, la différence
est étonnamment faible: tous les deux sont des systèmes d'exploitation UNIX®. Tous deux sont développés par des
projets non commerciaux (ceci ne s'applique pas à de nombreuses autres distributions Linux). Dans la section qui
suit, nous étudierons les systèmes BSD et les comparerons à Linux. La description s'applique plus particulièrement
à FreeBSD, qui représente environs 80% des systèmes BSD installés, mais les différences avec NetBSD, OpenBSD et
DragonFlyBSD sont minces.
4.1.A qui appartient BSD?
Aucune personne ou société n'est propriétaire de BSD. BSD est créé et distribué par une communauté de contribu-
teurs impliqués et d'une grande expertise technique, situés partout dans le monde. Quelques composants de BSD
sont issus d'autres projets Open Source, gérés par d'autres personnes.
4.2.Comment BSD est-il développé et mis à jour?
Les noyaux BSD sont développés et mis à jour suivant les modèle de développement de l'Open Source. Chaque
projet maintient un arbre des sources publique et accessible au moyen de Concurrent Versions System (CVS), un
système de gestion de version, qui maintient l'ensemble des fichiers du projet, y compris la documentation ainsi
que d'autres fichiers. CVS permet aux utilisateurs de faire un «check out» (extraire une copie) de n'importe quelle
version du système.
Un grand nombre de développeurs à travers le monde contribuent à l'amélioration de BSD. Ils sont divisés en trois
catégories:
Les contributeurs écrivent le code ou la documentation. Ils ne sont pas autorisés à «commiter» (ajouter du code)
directement dans l'arbre des sources. Pour que leur code soit intégré au système, il doit être examiné et contrôlé
par un développeur enregistré, connu en tant que committer.
Les committers sont des développeurs qui ont un droit d'écriture dans l'arbre des sources. Pour devenir commit-
ter, une personne doit démontrer ses compétences dans le domaine où elle travaille.
Il est à la discrétion du committer de déterminer si il doit obtenir l'autorisation avant d'intégrer des change-
ments dans l'arbre des sources. En général, un committer expérimenté a la possibilité de faire des changements
qui sont manifestement corrects sans qu'un consensus soit nécessaire. Par exemple, un committer du projet de
documentation peut corriger des erreurs typographiques ou grammaticales sans relecture. D'un autre côté, les
développeurs effectuant des changements complexes d'une grande portée sont supposés soumettre leur code
pour relecture avant de l'intégrer. Dans des cas extrêmes, un membre de la «core team» (équipe de base) avec le
titre d'architecte principal peut exiger que les changements soient retirés de l'arbre des sources, un processus
connu sous le nom de backing out. Tous les committers reçoivent des courriers électroniques décrivant chaque
modification, il est donc impossible de d'effectuer des changements de manière secrète.
La Core team (équipe de base). Les projets FreeBSD et NetBSD ont chacun une équipe de base qui gère le projet.
Ces équipes ont été constituées dans le cadre des projets, et leur rôle n'est pas toujours bien défini. Il n'est pas
nécessaire d'être un développeur pour être membre de la core team, bien que cela semble normal. Les règles de
cette équipe varient d'un projet à l'autre, mais ses membres ont une parole plus forte dans la direction du projet
que les autres développeurs ne faisant pas partie de cette équipe.
Cette organisation diffère de celle de Linux sur de nombreux points:
1. Aucune personne ne contrôle à elle seule le contenu du système. En pratique, cette différence est surévaluée,
puisque l'architecte en chef peut exiger que du code soit retiré, de même que sur le projet Linux plusieurs
personnes sont autorisées à effectuer des changements.
2. D'un autre côté, il y a un dépôt central, un emplacement unique ou vous pouvez trouver l'ensemble des sources
du système, y compris toutes les anciennes versions.
4
Expliquer BSD
3. Les projets BSD maintiennent l'ensemble du «Système d'Exploitation», pas seulement le noyau. Cette distinc-
tion est peu utile: ni BSD ni Linux ne sont utiles sans applications. Les applications utilisées avec BSD sont bien
souvent les mêmes que celles utilisées avec Linux.
4. En raison de la maintenance structurée d'un seul arbre des sources sous CVS, le développement de BSD est
clair, et il est possible d'accéder à n'importe quelle version du système au travers de son numéro de version
de publication, ou par date. CVS permets également une mise à jour incrémentale du système: par exemple, le
dépôt des sources est mis à jour près de 100 fois par jour. La plupart de ces changements sont mineurs.
4.3.La publication des versions («releases») de BSD
FreeBSD, NetBSD et OpenBSD fournissent le système en trois différentes «versions» («releases»). Tout comme
Linux, chaque version se voit assigner un numéro tel que 1.4.1 ou 3.5. De plus, le numéro de version possède un
suffixe indiquant son objectif:
1. La version de développement du système est appelée CURRENT. FreeBSD assigne un numéro à la version CUR-
RENT, par exemple FreeBSD 5.0-CURRENT. NetBSD emploie une méthode de nommage légèrement différente et
appose un suffixe d'une seule lettre qui indique des changements dans l'interface interne, par exemple NetBSD
1.4.3G. OpenBSD n'assigne pas de numéro («OpenBSD-current»). Tous les nouveaux développements du sys-
tème vont dans cette branche.
2. A intervalles réguliers, environs deux à quatre fois par an, les projets sortent une version RELEASE du système,
qui est disponible sur CD-ROM et gratuitement téléchargeable sur les sites FTP, par exemple OpenBSD 2.6-RE-
LEASE ou NetBSD 1.4-RELEASE. La version RELEASE est destinée aux utilisateurs finaux et est la version normale
du système. NetBSD fournit également des correctifs de release avec un troisième chire, par exemple NetBSD
1.4.2.
3. Si des bogues sont découverts dans une version RELEASE, ils sont corrigés, et les correctifs sont incorporés
à l'arbre des sources CVS. Sous FreeBSD, la version résultante est appelée version STABLE, alors que NetBSD
et OpenBSD continuent à l'appeler version RELEASE. Des fonctions mineures peuvent aussi être ajoutées à la
branche après une période de test dans la branche CURRENT.
Par contraste, Linux maintient deux arborescences de code séparées: la version stable et la version de développement. La ver-
sion stable est nommée avec un numéro de version mineur pair, tel que 2.0, 2.2 or 2.4. La version de développement est quant
à elle nommée avec un numéro de version mineur impair, tel que 2.1, 2.3 ou 2.5. Dans chaque cas, ce numéro est suivi par un
numéro supplémentaire déterminant la version exacte. Chaque distributeur ajoute en outre ses propres utilitaires et applica-
tions utilisateur, ce qui fait que le nom de la distribution est tout aussi important. Chaque fournisseur de distribution assigne
des numéros de version à sa distribution; ainsi, une description complète ressemble à quelque chose comme «TurboLinux 6.0
avec le noyau 2.2.14».
4.4.Quelles sont les versions de BSD disponibles?
En contraste avec le grand nombre de distributions Linux, il n'y a que quatre BSD Open Source. Chaque projet
BSD maintient sa propre arborescence des sources et son propre noyau. En pratique, cependant, il y a moins de
divergences dans le code de base de ces différents projets que dans Linux.
Il est difficile de classer les objectifs de chaque projet: les différences sont très subjectives. Fondamentalement,
FreeBSD vise les hautes performances et la simplicité d'utilisation pour l'utilisateur final; il est l'un des système
d'exploitation favoris des fournisseurs de contenu sur le Web. Il fonctionne sur de nombreuses plate-formes,
incluant les systèmes basés sur les processeurs i386 («PC»), AMD 64-bit, UltraSPARC®, Compaq Alpha et les
systèmes de type NEC PC-98. Le projet FreeBSD a beaucoup plus d'utilisateurs que les autres projets.
NetBSD vise la portabilité maximale: son slogan est «of course it runs NetBSD» («bien sur ça tourne sous
NetBSD»). Il fonctionne aussi bien sur des ordinateurs de poche que sur des gros serveurs, et a été utilisé par la
NASA dans le cadre de missions spatiales. C'est un très bon choix pour fonctionner sur du vieux matériel non-
Intel®.
5
1 / 8 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !