Encyclo /

GNU

GratiWiki: tout le savoir gratuit sur le gratuit


Type: Logiciel libre, Format ouvert
Liste


GNU est un projet de système d’exploitation libre lancé en 1983 par Richard Stallman, puis maintenu par le projet GNU. Son nom est un acronyme récursif qui signifie en anglais « » (littéralement, « GNU n’est pas UNIX »). Il reprend les concepts et le fonctionnement d’UNIX1.

Le système GNU permet l’utilisation de tous les logiciels libres, pas seulement ceux réalisés dans le cadre du projet GNU.

Son symbole est un gnou, un animal vivant en Afrique.

Historique

Le 27 septembre 1983, Richard Stallman dévoile dans la pure tradition hacker son projet de développer un système d’exploitation compatible UNIX appelé GNU2, en invitant la communauté hacker à le rejoindre et participer à son développement. Cette annonce succède à la « guerre » déclarée par Symbolics au laboratoire d’intelligence artificielle du MIT et à la disparition de la communauté hacker Lisp3. Il annonce que le système pourra être utilisé et partagé librement par tous comme ce fut le cas avec Emacs4. Concrètement il relate l’effort à accomplir, dont on distingue déjà en 1985 certaines pièces maîtresses : le compilateur GCC finalisé dès juin 1984, une version emacs compatible UNIX, etc. L’effort sera opiniâtrement poursuivi, et au début des années 1990, le projet GNU possède une version utilisable de tous les éléments nécessaires à la construction d’un système d’exploitation (outre ceux cités précédemment : un shell, des bibliothèques, les composants de base, les outils de développement…) à l’exception du plus central : le noyau.

Le projet GNU initie alors en 1990 le projet de production d'un noyau nommé Hurd.

Selon Thomas Bushnell, l’architecte initial du projet Hurd, l’idée initiale était d’adapter le noyau BSD 4.4-lite5, et avec le recul « il est parfaitement clair pour moi que celui-ci aurait magnifiquement réussi et la face de l’informatique en aurait été changée » 67. Malgré une collaboration étroite avec les hackers de Berkeley et leur leader Keith Bostic, le code propriétaire d’AT&T mélangé au code BSD n’est pas supprimé, si bien que Stallman décide, à la place, d’utiliser le micro-noyau Mach, qui s’avérera extrêmement pénible à faire progresser.

Hurd ne dépassera jamais réellement le stade de curiosité de laboratoire de recherche, en revanche, le travail réalisé a permis de finaliser une variante du système GNU basée sur le noyau Linux8.

GNU a fêté son trentième anniversaire au MIT de Cambridge en septembre 2013.

Esprit hacker et projet GNU

Ce système est né du besoin de maintenir intactes les traditions hacker de partage dans un monde de plus en plus marqué par l’empreinte du droit d'auteur. Stallman travaillait encore au laboratoire d’intelligence artificielle du MIT au lancement du projet. Il démissionnera en 1984 pour se consacrer entièrement à la création de ce système et, d’après ses mots, « ramener l’esprit de coopération qui prévalait dans la communauté hacker dans les jours anciens ». Il n’était pas question alors de « propriété intellectuelle », et tous les codes sources, distincts, s’échangeaient librement.

Cette pratique était la règle dans les premiers temps des mainframes, dont les sources étaient fournies sur simple demande et librement modifiables par les clients jusqu’au début des années 19809.

On ne peut pas réellement comprendre la nature de ce projet sans en saisir les motivations, qui relèvent de l’éthique et de la philosophie politique. Il vise en effet à ne laisser l’homme devenir ni l’esclave de la machine et de ceux qui auraient l’exclusivité de sa programmation, ni de cartels monopolisant des connaissances en fonction de leurs seuls intérêts. Le projet GNU œuvre pour une libre diffusion des connaissances, ce qui n’est pas sans implications politiques, éthiques, philosophiques et sociales, ou sociétales. Il s’agit d’ailleurs du modèle de coopération qui a toujours été celui des universités.

Philosophie du logiciel libre et FSF

Stallman introduit alors la notion de copyleft, et formalise ainsi celle de logiciel libre. Il crée la Free Software Foundation en 1985 pour assurer la protection légale du projet, dont la mission, plus générale, représente un projet proprement politique. La FSF commence par financer des programmeurs pour accélérer les premiers développements, mais la construction communautaire se nourrit de contributions bénévoles. À ce titre, des communautés universitaires ou scientifiques, américaines et internationales, contribuent énormément à la viabilité de ces projets.

En janvier 2004, l’UNESCO élève le logiciel libre au rang de patrimoine mondial de l’humanité et confère à GNU la valeur symbolique de « Trésor du monde »10.

Influence grandissante

Alors que la réputation de GNU grandissait, des entreprises intéressées ont commencé soit à contribuer au développement, soit à revendre les logiciels du projet GNU et à offrir du support technique. La principale de ces sociétés est Cygnus Solutions, qui fait maintenant partie de Red Hat.

À partir de 1990, le système GNU dispose de son propre éditeur de texte (Emacs), d’un compilateur très performant (GCC), d’un Débogueur (GDB) d’un langage de script (Bash), et de la plupart des bibliothèques système (comme glibc) d’une distribution Unix standard. Le principal composant encore manquant étant le noyau, qui sera finalement amené de l’extérieur par le projet linux.

GNU est toujours incomplet, notamment parce que son noyau GNU Hurd, une pièce essentielle des système d'exploitations reste immature et certains des composants GNU sont même incompatibles avec ce dernier. Les logiciels du GNU sont utilisés depuis longtemps, mais habituellement avec le noyau tiers Linux.

Le système GNU

Caractéristiques techniques

Au début de la création de GNU, le système d’exploitation UNIX était déjà largement répandu et son architecture considérée comme suffisamment robuste par les universitaires et les ingénieurs. GNU fut donc conçu pour être compatible avec ce système, par l’implémentation du code source UNIX en logiciel libre et l’écriture de nouveaux composants, afin d’obtenir un équivalent libre. GNU se définit dès l’origine comme une plate-forme universelle dédiée à tous les logiciels libres, pas seulement ceux maintenus par le projet GNU. Le système GNU comprend des programmes qui ne sont pas des logiciels GNU, ce sont des programmes qui ont été développés par d’autres, dans le cadre d’autres projets, pour leurs buts propres, mais qu’on peut réutiliser, car ce sont des logiciels libres11. Le système GNU avec le noyau Hurd reste cependant à l’état de projet (bien que la plupart du système soit fonctionnel pour les développeurs et utilisateurs). On peut pourtant le découvrir en symbiose avec des projets connexes (comme Debian), ou concurrents d’une partie (comme Linux).

Différences avec UNIX

GNU Guile est le langage d’extension officiel du système. GNU est en effet orienté Lisp depuis son annonce en 1983. Le système est toutefois construit et compilé en C pour assurer sa compatibilité avec UNIX. Texinfo est le format de documentation officiel du projet. On peut citer aussi des améliorations faites à plusieurs logiciels libres alternatifs à ceux d’UNIX : bash, coreutils, bibliothèque C, compilateurs Enfin, l’architecture du noyau, Le Hurd, constitué d’un réseau de serveurs distribués fonctionnant sur un GNU Mach.

Toutes les commandes UNIX ont par ailleurs été ré-implémentées et sont maintenues dans le cadre du projet. On lui doit également divers standards innovants, tels que les options longues. Les développements répondent enfin aux normes de codage GNU.

Les distributions UNIX étaient pour la plupart propriétaires. GNU est un système libre. La licence publique générale GNU a été créée à cet effet. La nature même du a favorisé une plus large diffusion des programmes.

Composants du système

Le système GNU est composé exclusivement de logiciels libres. Ces composants se présentent sous la forme de paquets logiciels maintenus et distribués par le projet GNU.

Parmi la liste des paquets GNU, on retrouve la collection de compilateurs GNU, le débogueur GDB, les outils binaires GNU, le shell Bash, la bibliothèque C GNU, les outils de base GNU, l’assembleur GNU ou le noyau Hurd.

Distribution GNU

Il existe à ce jour deux distributions du système d’exploitation GNU :

GNU est aujourd’hui utilisé par des millions de personnes avec GNU/Linux. On retrouve aussi quelques-unes de ses composantes dans les systèmes FreeBSD, NetBSD et OpenBSD.

Variantes du système

GNU/Linux

Linux (souvent appelé12 Linux) est une variante du système d'exploitation GNU fonctionnant avec le noyau Linux13. Le projet GNU avait originellement prévu le développement du noyau Hurd pour compléter le système, mais au début des années 1990, Hurd ne fonctionnait pas encore et son développement rencontrait encore des difficultés. L’arrivée du noyau Linux permit l’utilisation du système GNU sur les ordinateurs animés par des microprocesseurs de la famille Intel x86, en favorisant sa large diffusion par la complémentarité des projets.

Distributions soutenues par la FSF

Les distributions du système d’exploitation Linux constituées exclusivement de logiciels libres sont peu nombreuses. Le fait de n’offrir aucun logiciel propriétaire dans la distribution standard n’est pas suffisant, la FSF demande également de ne pas faciliter leur installation. Les dépôts liés à la distribution ne doivent pas en contenir et la documentation diffusée par la distribution ne doit pas inciter à l’installation de tels logiciels.

Ces distributions sont soutenues par la FSF lorsque ces critères sont respectés14, parmi elles on retrouve gNewSense, Trisquel, Ututo, Venenux, BLAG, Musix GNU+Linux, Dragora, Dynebolic et Parabola.

Toutes ces variantes utilisent aujourd’hui le noyau Linux-libre.

Juridique

Les licences GNU GPL, GNU LGPL et GNU FDL ont été écrites pour GNU mais sont également utilisées par des projets dissociés. Ces licences sont employées par une majorité de logiciels libres, notamment la licence GPL, qui ne font pas nécessairement partie du projet GNU.

Notes et références

Notes

1 Certains composants restent cependant inspirés des environnements Lisp avec GNU Guile, le langage d’extension officiel du projet, ou GNU Emacs, le projet du système GNU.

2 « new UNIX implementation », net.unix-wizards, 27 septembre 1983.

3 « My Lisp Experiences and the Development of GNU Emacs », International Lisp Conference - Discours de Richard Stallman, 28 octobre 2002.

4 « Personal Note from Richard Stallman », Préface du manuel d’utilisation de la machibe Lisp du MIT, juin 1984.

5 « The Daemon, the Gnu, and the Penguin - Peter H. Salus», Reed Media Services, 2008.

6 groklaw.net met en ligne une déclaration de Thomas Bushnell sur le noyau GNU.

7 « Richard Stallman et la révolution du logiciel libre », forge.framabook.org, 21 janvier 2010.

8 FAQ officielle du noyau Linux, tux.org, 17 octobre 2009, , « In this FAQ, we have tried to use the word "Linux" or the expression "Linux kernel" to designate the kernel, and GNU/Linux to designate the entire body of GNU/GPL'ed OS software, as found in the various distributions. We prefer to call a cat, a cat, and a GNU, a GNU. ;-) »

9 Linux Handbook: A Guide to IBM Linux Solutions and Resources, SG24-7000-01, IBM Redbooks, 2005

11 Citation de Richard Stallman dans Le projet GNU

13 FAQ officielle du noyau Linux, tux.org, 17 octobre 2009, , « Today, Linux-based variants of the GNU system, based on the kernel Linux developed by Linus Torvalds, are in widespread use. There are estimated to be over 10 million users of GNU/Linux systems today »

Références

Articles connexes

Liens externes

Licence

Article issu de la version du 11 mars 2016 à 21h07 de l'article GNU de Wikipédia. Licence CC BY-SA.

<< GNOME Office | Logiciel libre | identiti.ca >>

Le contenu du site GratiWiki. Wiki ouvert et gratuit sur le gratuit, le DIY et la culture libre, sauf mentions contraires, est sous licence culturelle non-marchande ainsi que toute nouvelle contribution.
Site gratuit, sans publicité, à but non lucratif, communautaire, ouvert à tous ceux qui souhaitent partager leurs savoirs sur les échanges non-marchands, le DIY et la culture libre. Construit avec PmWiki.