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é GNU1, 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 Massachusetts Institute of Technology (MIT) et à la disparition de la communauté hacker Lisp2. Il annonce que le système pourra être utilisé et partagé librement par tous comme c'est le cas avec l'éditeur de texte Emacs3. 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 19843, une version GNU 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 presque tous les éléments d'un système d'exploitation avec une interface en mode texte : outre ceux cités précédemment, un shell, des bibliothèques logicielles, les commandes Unix, les outils de développement. Mais il manque l'élément central, le noyau de système d'exploitation. 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-lite4, 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 » 5,4. Stallman confirmera plus tard que l’université de Californie travaillait à combler les parties manquantes pour transformer BSD en un système d’exploitation complet et librement redistribuable6. Malgré une collaboration étroite avec les hackers de Berkeley et leur leader Keith Bostic6, le code propriétaire d'AT&T mélangé au code BSD n'est pas supprimé6, si bien que Stallman décide, à la place, d'utiliser le micro-noyau Mach, qui s'avérera extrêmement pénible à faire progresser.

Le travail du projet GNU forme aujourd'hui une part importante d'un système d'exploitation actuel fondé sur le noyau Linux. Une querelle sémantique a, pour cette raison, éclaté ces dernières années concernant l'appellation GNU/Linux7,8 afin de faire référence au système dans son intégralité.

Naissance du noyau Linux

Article détaillé : Noyau Linux.

 

 

Linus Torvalds, initiateur, et aujourd’hui coordinateur du noyau Linux

En 1991, les compatibles PC dominent le marché des ordinateurs personnels et fonctionnent généralement avec les systèmes d'exploitation MS-DOS, Windows ou OS/2. Les PC basés sur le microprocesseur Intel 80386, vendus depuis 1986, commencent à être abordables. Mais les systèmes grand public restent attachés à la compatibilité avec les anciens processeurs 16 bits d'Intel et exploitent mal les capacités 32 bits et l'unité de gestion mémoire du 80386.

C'est cette année que l’étudiant finlandais Linus Torvalds, indisposé par la faible disponibilité du serveur informatique UNIX de l’université d'Helsinki, entreprend le développement d’un noyau de système d'exploitation, qu’on appellera plus tard le « noyau Linux ». Linus désire alors surtout comprendre le fonctionnement de son ordinateur fondé sur un Intel 80386.

Linus Torvalds fait son apprentissage avec le système d’exploitation Minix. Comme le concepteur de Minix — Andrew Tanenbaum — refuse d’intégrer les contributions visant à améliorer Minix, Linus décide de programmer un remplaçant de Minix. Il commence par développer un simple émulateur de terminal, qu’il utilise pour se connecter via un modem au serveur informatique de son université. Après l’ajout de diverses fonctionnalités dont un système de fichiers compatible avec celui de Minix, Linus oriente son projet vers quelque chose de plus ambitieux : un noyau aux normes POSIX. À ce noyau, il adapte de nombreux composants disponibles du système d’exploitation GNU pour obtenir un système d’exploitation plus complet.

Le 26 août 1991, il annonce9 sur le forum Usenet news:comp.os.minix qu'il écrit un système d'exploitation, mais en tant que « hobby, qui ne sera pas grand et professionnel comme gnu ». Le 5 octobre 1991, il annonce la disponibilité d’une ébauche de la version 0.02 de son noyau, la version 0.01 ayant eu une diffusion plus que confidentielle. Les messages en question et leurs traductions sont disponibles sur Wikisource. Enfin en février 1992, la version 0.12 est diffusée sous la Licence publique générale GNU (GNU GPL) à la place de la licence ad hoc qui interdisait jusque-là la redistribution commerciale10.

Depuis, des centaines de passionnés et des entreprises de toutes tailles participent au projet, dont Linus Torvalds est toujours le coordinateur. Eric Raymond décrit dans l'essai La Cathédrale et le Bazar (2001) le modèle de développement du noyau Linux et d’une partie des logiciels libres11.

Initialement appelé Freax par son créateur, le projet trouve son nom définitif grâce à Ari Lemmke12, administrateur du serveur FTP ftp.funet.fi, qui héberge le travail de Linus Torvalds dans un répertoire nommé Linux. C’est la première apparition d’un terme composé à partir de « Linus » et « UNIX », qui deviendra par la suite une marque déposée au nom de Linus Torvalds. Le manchot Tux, dessiné par Larry Ewing en 1996, devient la mascotte du projet.

Diffusion du système

À l'origine, « Linux » était uniquement le nom du noyau du système d'exploitation. Pour installer un système opérationnel fondé sur le noyau Linux, il fallait être un expert capable de trouver les logiciels nécessaires, et de les installer un à un de manière à former un système cohérent.

Rapidement, des ensembles de logiciels formant un système complet prêt à l'usage ont été disponibles : ce sont les premières distributions Linux. On peut citer par ordre chronologique13 :

  • deux disquettes 5,25 pouces boot et root créées par HJ Lu, et contenant un minimum de logiciels
  • MCC Interim Linux, une collection de disquettes sortie en février 1992
  • TAMU 1.0A faite par la Texas A&M University pour ses besoins internes, mais distribuée, et première distribution incluant X Window
  • Softlanding Linux System sortie en mai 1992, qui sera reprise pour faire Slackware
  • Yggdrasil Linux/GNU/X sortie en décembre 1992, première distribution avec possibilité de live CD
  • Slackware, sortie en juillet 1993 et la plus ancienne distribution encore maintenue
  • Debian, sortie en août 1993, et une des principales distributions actuelles

Dans la prise en compte progressive de l’intérêt commercial de Linux, dont on peut citer quelques manifestations : le lancement en février 1998 de l’Open Source Initiative ; l’annonce en juillet 1998 du support d’Oracle Corporation, qui porte et supporte sa célèbre base de données sous Linux ; l’entrée en bourse de Red Hat le 11 novembre 1999 ; celle de Geeknet — alors appelé « VA Linux » — le mois suivant qui marque le sommet d’une bulle spéculative ; le support massif apporté par le géant IBM, qui y dépense son premier milliard de dollars en 200114, emploie en 2005 près de trois-cents développeurs du noyau Linux, et organise à partir de 2003 la riposte légale lors de l’attaque du SCO Group qui affirmait posséder des droits d’auteurs sur le noyau Linux (voir l’article SCO contre Linux) ; l’acquisition en octobre et novembre 2003 de Ximian puis de SUSE par l’entreprise américaine Novell15.

C’est dans le monde des serveurs informatiques que Linux a eu le plus d’impact, notamment avec le très populaire LAMP. Sur les serveurs, Linux a souvent été utilisé pour remplacer d’autres systèmes de Type Unix et se retrouve être un des acteurs majeurs.

Dans les systèmes embarqués, Linux est fréquemment utilisé avec les outils uClibc et BusyBox qui ont été développés pour le matériel particulièrement limité en capacité mémoire. En outre, le fait de pouvoir compiler le noyau Linux avec des options spécialement adaptées au matériel cible donne aux développeurs de nombreuses possibilités d’optimisation.

Aller au haut