TuxDans le courant du printemps 1991, Linus Torvalds a bientôt terminé la lecture d’Operating Systems Design and Implementation. Il sent que les cours sur Minix ne lui apportent plus grand-chose. Il décide donc de les sécher et de mettre à profit le temps ainsi gagné pour coder son propre émulateur de terminal. Il part littéralement de zéro, c’est-à-dire qu’il écrit son code directement au niveau du matériel, sans passer par Minix.

Juste pour le fun

Au bout de quelques semaines de travail acharné, il réussit à se connecter à l’ordinateur de l’université pour lire ses mails et poster dans les newsgroups. Il résout le problème du chargement des fichiers distants en écrivant un pilote pour son disque dur et un autre pour le système de fichiers utilisé par Minix. Il ajoute d’autres fonctionnalités au gré de son inspiration, dans l’effervescence de la création. Petit à petit, son émulateur de terminal se transforme en véritable petit système d’exploitation à part entière.

Linus Torvalds

Le 25 août 1991, Linus Torvalds poste le message suivant sur comp.os.minix :

Salut à tous les utilisateurs de Minix,

Je construis un système d’exploitation libre pour les clones 386 AT, juste pour le fun, rien de gros et pro genre GNU. J’aimerais avoir des retours sur ce que les gens aiment ou n’aiment pas dans Minix, vu que mon OS y ressemble plus ou moins.

Quelques semaines plus tard, le 17 septembre 1991, Linus décide de publier la version 0.01 de son système sur le serveur FTP de l’université. Il choisit le nom de Freax, une contraction de free (libre/gratuit), de freak (obsédé) et du « x » final caractéristique des Unix.

InfoAri Lemmke, l’administrateur informatique de l’université, n’apprécie pas du tout ce nom et décide de son propre chef de nommer le répertoire de téléchargement /pub/OS/Linux.

Le pavé dans la mare

Linus n’envoie pas d’annonce officielle pour la version 0.01 et se contente d’en informer quelques amis et collègues par courriel. En revanche, la publication de la version 0.02 est annoncée solennellement sur comp.os.minix et beaucoup d’utilisateurs de Linux considèrent que le message correspondant marque la « véritable » naissance de Linux.

Vous regrettez le bon vieux temps de Minix 1.1, lorsque les hommes étaient des hommes et écrivaient eux-mêmes les pilotes pour leur matériel ? Vous n’avez pas de projet intéressant en cours et vous crevez d’envie de mettre les mains dans le cambouis d’un OS que vous pouvez adapter à vos besoins ? Ça vous agace quand tout marche bien sous Minix ? Finies les nuits blanches pour faire fonctionner un petit logiciel bien pratique ? Alors ce message est sûrement pour vous.

Comme je l’ai dit il y a un mois, je travaille en ce moment sur une version libre d’un minixoïde pour les machines de type AT-386. J’en suis à un stade où c’est même utilisable, et je suis prêt à distribuer les sources à plus grande échelle.

Les sources de mon petit projet sont disponibles sur le serveur FTP de l’université, dans le répertoire /pub/OS/Linux. Ce répertoire contient également un fichier README et une poignée de binaires pour travailler sous Linux. Les sources complètes du noyau sont fournies, vu qu’aucune ligne de code Minix n’a été utilisée.

Je vous entends déjà vous demander : « Pourquoi ? ». Hurd va sortir d’ici un an ou deux, ou dans un mois, qui sait et j’ai déjà Minix. C’est un système fait par un bidouilleur pour les bidouilleurs. Je me suis bien amusé à l’écrire et ça fera peut-être plaisir à quelqu’un d’y jeter un coup d’œil et même de l’adapter à ses propres besoins. Il est suffisamment petit pour qu’on puisse le comprendre, l’utiliser et le modifier. J’attends les commentaires que vous pourrez y apporter.

Dans le contexte de l’époque, ce message est un véritable pavé dans la mare. Voilà quelqu’un qui a réussi à faire tourner un « vrai » Unix sur son ordinateur personnel. Un Unix libre avec son propre noyau libre et les outils GNU qui vont avec :

  • le compilateur GCC
  • l’interpréteur de commandes Bash
  • etc.

La réaction de la communauté

Cette fois-ci, les contraintes matérielles et les lacunes du projet constituent juste autant de défis à surmonter. Les réactions de la communauté ne tardent pas à venir et elles sont aussi enthousiastes que nombreuses. C’est une véritable avalanche que Linus a déclenchée. Les hackers du monde entier lui envoient une foule de suggestions et de demandes, mais également des rapports de bugs.

InfoUn bug, c’est une erreur de conception dans un logiciel, qui entraîne son dysfonctionnement. Le mot « bug » s’explique par le dysfonctionnement historique d’un des premiers ordinateurs électromécaniques, dû à un insecte coincé dans un relais.

Bug informatique

Durant les mois à venir, Linus Torvalds va peaufiner le code de son système en interaction constante avec la communauté. Celle-ci se montre d’ailleurs reconnaissante en organisant spontanément une collecte grâce à laquelle Linus s’acquittera des mensualités restantes pour sa machine de développement.

Le choix d’une licence libre

GNUFin 1991, il décide d’aller voir une conférence de Richard Stallman sur le projet GNU à l’université de Helsinki. Il est impressionné par la présentation et prend une décision d’une importance capitale pour la suite du projet.

Les toutes premières versions de Linux étaient certes libres, avec une restriction cruciale toutefois : l’utilisation commerciale du code était interdite. En janvier 1992, Linus Torvalds annonce son intention de libérer complètement le code de son noyau en le publiant dorénavant sous licence libre GNU General Public License. Ce changement de licence va encourager de nombreux utilisateurs dans le monde à migrer de Minix vers Linux.

Lire la suite : Les premières distributions Linux


La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.

 


0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée.