05.10.2026 · Signal Titans Editorial
De Space Travel à Unix : comment un ordinateur abandonné a métamorphosé le logiciel
En voulant faire tourner son jeu Space Travel sur un PDP-7, Ken Thompson a jeté les bases d'Unix, du langage C et de UTF-8.

En 1969, l'informaticien Ken Thompson travaillait aux laboratoires Bell lorsque l'entreprise s'est retirée du projet de système d'exploitation Multics. Ce retrait a privé Thompson d'un environnement pratique pour exécuter un jeu vidéo qu'il avait conçu, intitulé Space Travel. Refusant d'abandonner son jeu, Thompson a déniché au laboratoire un ordinateur PDP-7 de Digital Equipment Corporation inutilisé. Pour faire tourner Space Travel sur cette machine sous-puissante, il s'est mis à écrire des logiciels directement pour le matériel, amorçant une série d'expérimentations fondamentales dans l'histoire de l'informatique.
L'envie de jouer sur du matériel d'emprunt
La fascination de Thompson pour la logique binaire avait débuté dès ses exercices d'arithmétique à l'école primaire. Après avoir obtenu un Bachelor of Science en 1965 puis un Master of Science en 1966 à l'université de Californie à Berkeley, il rejoint les laboratoires Bell en 1966. Tout en participant au projet collaboratif de système d'exploitation Multics à la fin des années 1960, Thompson conçoit Space Travel afin de simuler le mouvement des corps dans le système solaire. Quand Bell se retire de Multics, l'accès au grand ordinateur central qui hébergeait le jeu est perdu. Le PDP-7 abandonné offre alors une plateforme de secours, mais il contraint Thompson à concevoir de toutes pièces des composants logiciels essentiels pour en assurer l'exécution de base.
La naissance du cœur de l'informatique moderne
Ce qui n'était au départ qu'une tentative personnelle pour sauver un jeu vidéo se transforme rapidement en un projet d'ingénierie système. Travaillant aux côtés de ses collègues Dennis Ritchie et Rudd Canaday, Thompson élabore un ensemble d'outils logiciels essentiels autour du PDP-7. L'équipe conçoit un système de fichiers hiérarchique, introduit des concepts formels pour les processus informatiques et les fichiers de périphériques, développe un interpréteur de commandes et met en œuvre des tubes (pipes) pour la communication inter-processus. En 1970, le chercheur Brian Kernighan suggère le nom Unix pour ce système naissant, un jeu de mots faisant référence à l'environnement complexe de Multics qu'ils avaient délaissé.
L'élaboration des langages et des standards de texte
Afin de rédiger efficacement des programmes utilitaires pour Unix, Thompson conçoit le langage de programmation B, qui servira de précurseur direct au langage C de Dennis Ritchie. Au-delà des langages de programmation, Thompson dote les premiers utilitaires du système de capacités de manipulation automatique de texte. S'appuyant sur ses travaux antérieurs sur les expressions régulières dans le système d'exploitation CTSS, Thompson intègre des algorithmes de correspondance d'expressions régulières dans l'éditeur de texte QED, puis dans ed, l'éditeur de texte standard d'Unix. Son algorithme de conversion des expressions régulières en automates finis non déterministes a établi un standard de recherche rapide que les outils modernes de traitement de texte utilisent encore aujourd'hui.
Des outils fondateurs pour le Web moderne
L'environnement logiciel né sur le PDP-7 s'est propagé bien au-delà des laboratoires Bell. En 1983, Thompson et Dennis Ritchie reçoivent conjointement le prix Turing pour le développement de la théorie générale des systèmes d'exploitation et la mise en œuvre d'Unix. Thompson continue de faire progresser les standards informatiques au cours des décennies suivantes. En 1992, en collaboration avec Rob Pike, il co-crée le schéma d'encodage de caractères UTF-8. Conçu pour représenter efficacement le texte Unicode sur les réseaux, UTF-8 en est venu à alimenter plus de 90 % de l'ensemble des pages web en 2019.
Les utilitaires légers assemblés par Ken Thompson sur un PDP-7 inactif afin de continuer à jouer à Space Travel ont posé les fondations de l'architecture d'Unix. Ce projet secondaire a mené directement à la création du langage C, des moteurs d'expressions régulières modernes et de l'encodage de texte UTF-8 qui structure le Web contemporain.
Illustration éditoriale générée par IA ; ce n’est pas une photographie documentaire.
Source: Ken Thompson