Si vous utilisez Linux ou Unix, vous voudrez lire cette interview de Brian Kernighan sur les origines d’Unix, tirée de son livre «Unix: une histoire et un mémoire».
Unix: une histoire et un mémoire
Je suis allé à l'université en 1990 et j'ai rapidement découvert SunOS Unix dans le laboratoire informatique de notre campus. J'ai été immédiatement accro. Unix avait une ligne de commande qui fournissait une ligne de commande riche et puissante – mais cela me semblait familier, ayant utilisé MS-DOS pendant les dix dernières années. Quelques années plus tard, j'ai mis à niveau ma machine MS-DOS chez moi pour exécuter un nouvel Unix gratuit appelé Linux, et je n'ai jamais regardé en arrière.
Unix m'a également aidé à démarrer ma carrière informatique. Mon premier travail consistait à prendre en charge un réseau de stations de travail et de serveurs Unix exécutant SunOS, HP-UX et DomainOS. Les prochaines étapes de ma carrière ont également impliqué Unix, notamment AIX, Solaris et Linux.
Avec mon histoire sous Unix, j'étais ravi de lire Unix: une histoire et un mémoire (2019) par Brian Kernighan. Vous pouvez reconnaître le nom de Kernighan; il est l'auteur ou co-auteur d'une dizaine de livres sur l'informatique et la technologie. Fonctionnalités de ma propre bibliothèque L'environnement de programmation Unix (avec Pike), Le langage de programmation AWK (avec Aho et Weinberger), et Le langage de programmation C (avec Ritchie). D'autres livres notables incluent Le langage de programmation Go (avec Donovan), Les éléments du style de programmation (avec Plauger), et Comprendre le monde numérique.
Comme l'explique Kernighan dans la préface, «Le livre est à la fois historique et mémoire, un regard sur les origines d'Unix et une tentative d'expliquer ce qu'est Unix, comment il est né et pourquoi c'est important. Tout au long de Unix: une histoire et un mémoire, Kernighan partage des informations fascinantes sur les Bell Labs, Unix et les utilitaires Unix courants que vous utilisez quotidiennement.
L'une de mes histoires préférées est celle de la façon dont les Bell Labs ont intelligemment fait pression pour un nouvel ordinateur afin de pouvoir continuer à écrire Unix. Pour résumer le compte de Kernighan:
La direction ne voulait pas investir dans le développement de systèmes d’exploitation. Mais AT&T est une grande entreprise et produit de nombreuses demandes de brevets. «Les demandes de brevet étaient des documents texte mais avec des exigences de format rigides, comme des pages numérotées par ligne. Aucun système informatique existant ne pouvait gérer ces bizarreries, le département des brevets prévoyait donc d'acheter »(p. 42) un système dédié à une société qui avait promis de fournir le formatage requis dans une version ultérieure.
Au lieu de cela, l'équipe des Bell Labs a proposé au département des brevets d'acheter un PDP-11, et l'équipe Unix y mettrait Unix et rédigerait le logiciel nécessaire pour formater les demandes de brevet. C'était une solution gagnant-gagnant pour tout le monde, et c'est ainsi que l'équipe Unix a obtenu son premier PDP-11, et pourquoi Unix a ajouté le
nroff
programme de composition.
J'ai adoré lire les histoires de ce livre, alors j'ai contacté Brian Kernighan pour lui poser des questions sur Unix: une histoire et un mémoire. Merci à Brian de m'avoir rencontré.
JH: Vous partagez beaucoup d'histoire sur Unix et Bell Labs dans le livre. Quel est un exemple que les lecteurs trouveraient vraiment intéressant?
Brian Kernighan: Voici l’histoire d’origine de
grep
. (Cette histoire commence à la page 70 du livre. Doug McIlroy a demandé «Ne serait-il pas génial si nous pouvions chercher des choses dans des fichiers?» Ken a dit «Laissez-moi y réfléchir pendant la nuit» et le lendemain matin, Ken a montré à Doug legrep
commande qu'il avait déjà écrite mais pas encore partagée.) C'était classique de Ken qu'il avait une excellente idée, une bonne idée, une idée claire – et il a pu l'écrire très rapidement. Les expressions régulières étaient déjà présentes dans l'éditeur de texte, alors en réalité, il a simplement sorti l'expression régulière de l'éditeur et l'a transformée en programme.J'ai en fait utilisé cela comme une tâche de programmation dans une classe que j'ai enseignée. J'ai raconté à mes étudiants l'histoire de Ken et j'ai dit qu'ils avaient eu la tâche plus facile pour deux raisons: parce que c'était C au lieu de Assembly, et parce qu'ils avaient déjà défini le point final. Mais j'ai dit qu'ils avaient plus de mal car aucun d'entre eux n'était Ken Thompson!
JH: Il y a beaucoup de belles histoires de cette époque, mais un espace limité dans le livre. Quelles histoires n'avez-vous pas pu raconter en détail?
Brian Kernighan: le Escroquerie de laboratoire obtient seulement une brève histoire dans le livre, mais c'était une chose amusante à faire. (Cette histoire porte sur un paragraphe de la page 174 du livre. Rob Pike et Dennis Ritchie (et une douzaine d'autres pour aider) ont fait une farce à leur patron, Arno Penzias. Version courte: Penn et Teller ont rendu visite et ont aidé à simuler un démo comme une farce de bonne humeur sur Penzias – puis a fait une apparition surprise pour dire bonjour en personne.)
La blague était que Rob a fait semblant de montrer à Arno une vidéo de Penn et Teller à la télévision, et Arno a pu expérimenter ce que Rob disait être la reconnaissance vocale, mais en réalité, c'était Penn et Teller dans le couloir. Souvenez-vous de l’époque – c’est 1989, il y a très longtemps. La reconnaissance vocale était alors très difficile pour les ordinateurs.
Arno a adoré! Il était très heureux de rencontrer Penn et Teller. Ils étaient vraiment bien connus à l'époque.
Et il y a une autre histoire derrière celle-là. Pour nous préparer à cela, nous leur avons fait visiter à l'avance. Et plus tard, nous sommes sortis dîner. Je me souviens de la répétition, puis du simple fait de passer du temps avec Penn et Teller dans une pizzeria. Je suis sûr que c'était un peu étrange pour les locaux à l'époque: "Il y a des gens des Labs, et est-ce Penn and Teller? Non, ça ne peut pas être! » Mais c'était génial.
Donc, cette histoire de Rob et Dennis tirant une blague sur Arno aurait fait une belle histoire, mais cela aurait été beaucoup, beaucoup trop long pour mettre cela dans le livre.
JH: Quelle technologie de Bell Labs aimeriez-vous avoir réussi, mais ne l'a pas fait?
Brian Kernighan: Je dois dire le Blit, le terminal bitmap. (Blit est mentionné à la page 127 du livre.) C'était au milieu des années 1980, comme en 1985. L'idée de chevauchement des fenêtres était très novatrice à l'époque. Rob Pike a obtenu un brevet à ce sujet.
Le terminal a été construit expérimentalement à 11 h 27 (Bell Labs) en utilisant un processeur 32 bits Motorola M68000. Le problème était qu'AT & T essayait de se lancer dans la fabrication de ses propres puces. Donc, l'édit est tombé que le Blit était intéressant, mais il devrait fonctionner sur du matériel AT&T et non sur Motorola. Cela a donc retardé le projet d'environ un an, et la fenêtre du marché était alors passée.
Il y a aussi le microprocesseur CRISP. Certaines personnes faisaient beaucoup avec les microprocesseurs dans les laboratoires. (CRISP est mentionné à la page 128 du livre.) C'était la conception de Dave (Ditzel) et Rea (McLellan), et c'était un précurseur de RISC. Le but était de mieux correspondre au code issu des compilateurs. AT&T l'a vendu avec désinvolture, et Apple l'a essayé dans le Newton. Mais cela n’a pas vraiment attiré. C’est l’une de ces choses qui auraient pu se produire, mais qui ne se sont pas produites.
Mais c’est vrai pour toute organisation. "Laissez fleurir 1 000 fleurs et certaines d'entre elles n'y arriveront pas." Juste la chance du tirage au sort.
Unix: une histoire et un mémoire est disponible sur Amazon, en format livre de poche et e-book. Publié par Kindle Direct Publishing, octobre 2019.
Kernighan travaille également sur son prochain livre, une mise à jour de Comprendre le monde numérique, dû fin 2020.