Andrew S. Tanenbaum
# Andrew S. Tanenbaum

Andrew Stuart Tanenbaum (* 16. März 1944 in New York City) ist ein US-amerikanischer Informatiker. Er ist emeritierter Professor für Informatik an der Freien Universität Amsterdam (Niederlande). Tanenbaum forscht in den Bereichen Compiler, Betriebssysteme, Netzwerke sowie lokal verteilte Systeme. Bekannt wurde er vor allem als Entwickler des Unix-artigen Betriebssystems Minix und als Autor mehrerer Standardwerke zu diversen Themen der Informatik. Seit 2004 betreibt Tanenbaum die Website www.electoral-vote.com, die sich mit Wahlvorhersagen für die USA beschäftigt.

## Werdegang und Auszeichnung

Tanenbaum verbrachte seine Kindheit und Jugend in White Plains (New York) und studierte danach am Massachusetts Institute of Technology (MIT). Nachdem er dort den Bachelor in Physik erhalten hatte, wurde er 1971 bei John Marsh Wilcox an der University of California in Berkeley, Kalifornien promoviert (Dissertation: A Study of Five Minute Oscillations, Supergranulation, and Related Phenomena in the Solar Atmosphere).

Nach der Heirat zog er mit seiner niederländischen Frau in deren Heimat (behielt aber die US-amerikanische Staatsbürgerschaft) und begann als Professor für Informatik in Amsterdam zu arbeiten, wo er bis heute Vorlesungen hält, Doktoranden betreut und Leiter des Fachbereiches ist. Er war außerdem bis zum 1. Januar 2005 technischer Direktor der Advanced School for Computing and Imaging (ASCI). Andrew S. Tanenbaum ist weiterhin Mitglied der Association for Computing Machinery (ACM), des Institute of Electrical and Electronics Engineers (IEEE) und der Königlich Niederländischen Akademie der Wissenschaften.

Tanenbaum erhielt im Jahr 1994 den ACM Karl V. Karlstrom Outstanding Educator Award, 1997 wurde ihm der ACM/SIGCSE Award for Outstanding Contributions to Computer Science Education verliehen. Für seine Lehrbücher erhielt er schließlich 2002 den TAA Texty Award sowie 2003 den TAA McGuffey Award.

2014 wurde Tanenbaum emeritiert.

## Fachbücher

Tanenbaum ist bekannt für seine Informatik-Lehrbücher zu den Themen Rechnerarchitektur, Computernetze und Betriebssysteme. Seine Werke zeichnen sich durch die Verknüpfung eines hohen Informationsgehalts mit guter Lesbarkeit und einen teilweise als humoristisch zu bezeichnenden Schreibstil aus. Viele seiner Bücher enthalten am Ende eines Kapitels Übungsaufgaben zum Selbststudium. Als seine wichtigsten fünf Bücher können gelten:

### Computerarchitektur. Strukturen – Konzepte – Grundlagen (5. Aufl. ISBN 3-8273-7151-1)

    Zusammen mit James R. Goodman wird der grundsätzliche Aufbau von Computern mit Hilfe eines detaillierten Ebenenmodells beschrieben, nachdem die Entwicklungsgeschichte der Computerarchitekturen und die Organisation von Computersystemen abgehandelt ist. Danach werden als Ebenen die digitale Logik(u. a. Boolesche Algebra), die Mikroarchitektur, die Assemblersprache und das Modell einer konventionellen bzw. Betriebssystem-Maschine beschrieben. Zeitgemäß wird im Schlusskapitel auf die damals neuen Architekturen von Parallelrechnern eingegangen.

### Computernetzwerke (ISBN 978-3-86894-137-1)

    Dieses Buch konzentriert sich auf Netzwerkprotokolle. Basierend auf dem OSI-Referenzmodell werden die aufeinander aufbauenden Schichten beschrieben, von der elektr(on)ischen Bitübertragungsschicht über die Sicherungsschicht inklusive der Fehlererkennung. Nach der MAC-Teilschicht, der Vermittlungs- und der Transportschicht, in der speziell auf TCP/IP (bestehend aus TCP und IP) eingegangen wird, folgt als Oberstes die Anwendungsschicht. Kapitel zur Sicherheit in Netzen mit Themen wie Kryptographie, Signaturen, Sicherheit im Web und auch soziale Aspekte runden das Werk ab.

### Moderne Betriebssysteme (ISBN 3-8273-7019-1)

    Tanenbaum stellt hier den (damals) aktuellen Stand in der Entwicklung von Betriebssystemen dar. Zahlreiche Abbildungen und viele Beispiele sorgen für ein besseres Verständnis der vorgestellten Theorien und Konzepte. Die wesentlichen Komponenten von Betriebssystemen wie Prozesse und Threads, Speicherverwaltung, Dateisysteme, Mehrprozessorsysteme sowie IT-Sicherheit werden theoretisch dargestellt; daran werden in der Folge die am meisten verbreiteten konkreten Betriebssystem Unix, Linux und Windows kritisch gespiegelt. Anschließend findet sich auch ein Kapitel über den Entwurf von Betriebssystemen.

### Verteilte Systeme: Grundlagen und Paradigmen (ISBN 3-8273-7057-4)

    Zusammen mit Maarten van Steen beschreibt Tanenbaum sieben grundlegende Prinzipien verteilter Systeme, die er anschließend an konkreten Beispielen darstellt, u. a. Systeme wie CORBA, DCOM, NFS und WWW.

### Operating Systems Design and Implementation (ISBN 0-13-638677-6)

    Tanenbaum stellt zusammen mit Albert S. Woodhull zunächst allgemeine Prinzipien für Betriebssysteme auf, deren wichtigste Aspekte er am Quellcode des von ihm selbst verfassten Unix-ähnlichen Minix ausführlich erläutert und diskutiert.

## Minix

Andrew S. Tanenbaum schrieb Minix, ein einfaches, POSIX-konformes und Unix-ähnliches Betriebssystem zu Lehrzwecken, das Linus Torvalds zur Entwicklung von Linux brachte. Minix, Version 3 ist seit dem April 2000 unter der modifizierten BSD-Lizenz lizenziert. Damit ist Minix, Version 3 freie Software und kompatibel zur GNU-GPL. Andrew S. Tanenbaum verfasste das Buch Operating Systems Design and Implementation. In diesem Buch beschreibt Tanenbaum die Prinzipien eines Betriebssystems und anhand des von ihm entwickelten Unix-Klons Minix dessen Aufbau und Möglichkeiten. Torvalds bezeichnet es als jenes Buch, das sein Leben verändert hat und ihn bis heute motiviert.

## Linux-Kritik

Aufsehen erregte Andrew Tanenbaum auch durch ein Posting in der Usenet-Gruppe comp.os.minix im Januar 1992. Mit LINUX is obsolete übte er harsche Kritik an dem neuen Betriebssystem. Er meinte, dass der monolithische Kernel von Linux technisch überholt sei und moderne Betriebssystemarchitekturen auf einen Mikrokernel setzen sollten, um Erfolg zu haben. Außerdem sei Linux fest mit der x86-Architektur verbunden, während ein vernünftiges Betriebssystem portabel sein müsse.

Ein Ausschnitt aus der inzwischen in die Geschichte eingegangenen Debatte verdeutlicht die Unterschiede in den Meinungen über das verteilte Programmieren:

   „Ich denke, dass die Koordination von 1000 Primadonnen, die überall auf der ganzen Erde leben, genauso einfach ist wie Katzen zu hüten […] Wenn Linus die Kontrolle über die offizielle Version behalten will und eine Gruppe fleißiger Biber in verschiedene Richtungen strebt, tritt das gleiche Problem auf. Wer sagt, dass eine Menge weit verstreuter Leute an einem komplizierten Stück Programmcode hacken können und dabei die totale Anarchie vermeiden, hat noch nie ein Softwareprojekt gemanagt.“
   „Nur damit niemand seine Annahmen für die volle Wahrheit nimmt, hier meine Stellungnahme zu ‚Kontrolle behalten‘ […]: Werde ich nicht.“

Andere Kritikpunkte Tanenbaums, wie monolithischer Kernel oder mangelnde Portierbarkeit, fanden durchaus Zustimmung, treffen auf das heutige Linux aber teilweise nicht mehr zu.

Siehe dazu auch: Geschichte von Linux

## Schriften

* mit Austin Todd: Structured Computer Organization, 6. Auflage, Pearson 2013
* Computerarchitektur - Strukturen, Konzepte, Grundlagen, 5. Auflage, Pearson 2006 (zuerst Structured Computer Organization, Prentice-Hall 1977)
* mit David J. Weatherall: Computernetzwerke, 5. Auflage, München: Pearson 2012 (zuerst Computer Networks, Prentice-Hall 1981)
* Moderne Betriebssysteme, 4. Auflage, Pearson 2016
* mit Maarten van Steen: Verteilte Systeme: Prinzipien und Paradigmen, Pearson 2008
* mit Albert S. Woodhull: Operating Systems: Design and Implementation, 3. Auflage, Pearson/Prentice Hall 2006 (zuerst Prentice-Hall 1987)
* Betriebssysteme, 2 Bände, Hanser Verlag 1990 (Band 1: Lehrbuch, Band 2: MINIX Leitfaden und kommentierter Programmtext)
* MINIX Reference Manual, Prentice-Hall 1988
