Ken Thompson

US-amerikanischer Programmierer und Informatiker, Mitentwickler des Unix-Betriebssystems

Kenneth Lane Thompson (* 4. Februar 1943 in New Orleans, Louisiana) ist ein US-amerikanischer Informatiker, der unter anderem maßgeblich an der Entwicklung des Unix-Betriebssystems beteiligt war. Er erhielt für seine Arbeiten zahlreiche Ehrungen und Auszeichnungen, darunter den Turing Award.

Ken Thompson (links) mit Dennis Ritchie

Leben Bearbeiten

An der Universität von Kalifornien in Berkeley, Kalifornien absolvierte Thompson ein Studium der Elektrotechnik. 1969 implementierte er zusammen mit seinem Kollegen Dennis Ritchie in den Bell Labs die erste Version des Unix-Betriebssystems[1] in Assemblersprache. Als Anekdote wird gerne erzählt, dass die wahre Motivation hinter der Entwicklung von Unix war, das Spiel Space Travel auf eine wenig verwendete PDP-7 zu portieren,[2] da auf den normalen Großrechnern eine Stunde Rechenzeit 75 US-Dollar kostete.

Für Unix schrieb Thompson unter anderem die erste Shell, retronym Thompson-Shell „sh“, und den Zeileneditor ed. Er entwickelte die Programmiersprache B, einen Vorgänger der Sprache C, die noch heute zu den weltweit meistbenutzten Programmiersprachen gehört. Später entwickelten er und Rob Pike, ebenfalls an den Bell Labs, das Betriebssystem Plan 9.

Unter Beratung von John Roycroft entwickelte er Programme zur kompletten Analyse von Endspielen beim Schach. Die Ergebnisse dieser Arbeit stellte er auf vier Endspiel-CDs anderen zum Selbstkostenpreis zur Verfügung. Sie wurden später auch vertrieben. Mit Endspieldatenbanken kann ein Schachprogramm ein Endspiel (gegenwärtig mit höchstens sieben Figuren auf dem Brett) perfekt spielen, indem es auf die notwendige Information in der Datensammlung zugreift. In Gewinnstellungen findet es (je nach Zielstellung) den direkten Weg zum Matt oder zur Konvertierung in ein gewonnenes anderes Endspiel (durch Umwandlung oder Schlagen einer Figur); in Verluststellungen kann es den Verlust der Partie so weit wie möglich hinauszögern.

Zusammen mit Dennis Ritchie erhielt er 1983 den Turing Award, 1990 die Richard-W.-Hamming-Medaille des Institute of Electrical and Electronics Engineers (IEEE). 1985 wurde Thompson in die National Academy of Sciences, 1991 in die American Academy of Arts and Sciences gewählt. 1999 überreichte Bill Clinton ihm und Dennis Ritchie die National Medal of Technology für die Entwicklung von Unix und C, und 2011 wurde den beiden der Japan-Preis, ebenfalls für ihr Unix-Engagement,[3] zuerkannt. 2019 wurden beide in die National Inventors Hall of Fame aufgenommen.

In seiner Rede zum Erhalt des Turing Awards beschrieb Thompson, wie er eine besondere Art von Backdoor entwickelte. Dabei handelte es sich um einen Compiler, der bei der Kompilierung eines Unix-Login-Programms unbemerkt eine Hintertür einbaut. Wenn es einmalig gelingt, den präparierten Compiler auf einem System zu installieren, ist es unerheblich ob die Backdoor-Codesequenz im Quellcode eines neu zu kompilierenden Compilers enthalten ist. Wenn der Compiler selbst auf diesem System kompiliert wird, erkennt er dies und fügt den Schadcode wieder ein. Auf diese Weise findet sich im Quellcode des Compilers keine Spur der Manipulation, trotzdem wird sie auch bei späteren Versionen des Compilers im Maschinencode erhalten bleiben.[4]

Thompson entwickelte in den späten 1970er- und frühen 1980er-Jahren zusammen mit seinem Kollegen Joe Condon (1935–2012) den Schachrechner Belle, der 1980 die Computerschachweltmeisterschaft (WCCC) gewinnen konnte. Ferner entwickelte er 1992 zusammen mit Rob Pike UTF-8, ein weit verbreitetes System zum Kodieren von Unicode-Zeichen.[5]

Thompson verließ die Bell Labs am 1. Dezember 2000. Danach war er bis 2006 Partner bei Entrisphere, Inc. und arbeitet inzwischen als angesehener Entwickler bei Google, wo er zusammen mit Rob Pike und Robert Griesemer die Programmiersprache Go entwickelte.

Trivia Bearbeiten

2019 wurde bekannt, dass Thompson vor 39 Jahren das Passwort p/q2-q4! benutzte. Es steht in der nicht mehr so gängigen beschreibenden Notation für die Damenbauerneröffnung d2–d4.[6][7]

Literatur Bearbeiten

  • Peter Seibel: Coders at Work : Bedeutende Programmierer und ihre Erfolgsgeschichten. mitp, 2011, ISBN 978-3-8266-9103-4, Kapitel 12: Ken Thompson, S. 407–435 (englisch: Coders at Work : Reflections on the Craft of Programming. 2009. Übersetzt von Reinhard Engel).

Weblinks Bearbeiten

Commons: Ken Thompson – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise Bearbeiten

  1. Matthias Kremp: 40 Jahre Unix. Spiegel Online, 18. August 2009, abgerufen am 25. Oktober 2011.
  2. The famous PDP-7 comes to the rescue. Bell Labs, archiviert vom Original am 6. August 2007; abgerufen am 26. Oktober 2011 (englisch): „It did not take long, therefore, for Thompson to find a little-used PDP-7 computer with an excellent display terminal,“ Ritchie explained. „He and I rewrote 'Space Travel' to run on this machine.“
  3. Japan-Preis für UNIX-Entwickler. heise online, 25. Januar 2011, abgerufen am 4. September 2011.
  4. Reflections on Trusting Trust. Abgerufen am 25. Juni 2019.
  5. Rob Pike: UTF-8 history. 30. April 2003, abgerufen am 24. Mai 2012.
  6. Sylvester Tremmel: UNIX-Prominenz wählte Schach-Eröffnung: 39 Jahre alte BSD-Passwörter geknackt. In: heise.de, 12. Oktober 2019, abgerufen am 14. Oktober 2019.
  7. Uraltes Passwort von Unix-Vater Ken Thompson geknackt (Memento vom 14. Oktober 2019 im Internet Archive). In: inside-it.ch, 11. Oktober 2019.