- Andrew S. Tanenbaum, emeritierter Professor für Informatik an der VU Amsterdam, erhält den ACM Software System Award für MINIX, das die Lehre von Betriebssystemen und das Design von Betriebssystemen beeinflusst hat
- MINIX 1.0 war ein auf einem Mikrokernel basierendes UNIX-Betriebssystem für den IBM PC, das 1987 zusammen mit dem Lehrbuch Operating Systems: Design and Implementation entstand
- Das frühe MINIX umfasste rund 12.000 Zeilen Code und enthielt einen Mikrokernel, einen Speicherverwalter, ein Dateisystem und zentrale UNIX-Utilities; im Jahr 2000 wurde es zu freier Open-Source-Software
- MINIX inspirierte Linux, diente als Grundlage für MeikOS und läuft auch in weit verbreiteten Mikrochips
- Der ACM Software System Award wird für Softwaresysteme mit nachhaltigem Einfluss vergeben; das Preisgeld beträgt 35.000 US-Dollar und wird von IBM finanziert
Auszeichnung für MINIX
- Andrew S. Tanenbaum, emeritierter Professor für Informatik an der VU Amsterdam, erhält den ACM Software System Award für MINIX
- MINIX wurde genutzt, um mehreren Generationen von Studierenden Prinzipien von Betriebssystemen zu vermitteln, und beeinflusste auch das Design von Betriebssystemen, darunter Linux
Anfänge und Aufbau von MINIX 1.0
- Tanenbaum entwickelte MINIX 1.0 passend zu seinem 1987 erschienenen Lehrbuch Operating Systems: Design and Implementation
- Es war ein kleines, auf einem Mikrokernel basierendes UNIX-Betriebssystem für den damals beliebten IBM PC
- Das frühe MINIX bestand aus rund 12.000 Zeilen Code und enthielt folgende Komponenten
- Mikrokernel
- Speicherverwalter
- Dateisystem
- zentrale UNIX-Utility-Programme
- MINIX wurde im Jahr 2000 zu freier Open-Source-Software
Einfluss auf Linux und andere Systeme
- MINIX unterstützte nicht nur den Erfolg von Tanenbaums Lehrbuch, sondern entfaltete eine deutlich breitere Wirkung
- Es inspirierte Linux, das sich zu einem erfolgreichen Open-Source-Betriebssystem entwickelte, das Cloud-Server, Mobiltelefone und Geräte im Internet of Things antreibt
- MINIX wurde zur Grundlage des Betriebssystems MeikOS für Meikotransputer-basierte Computer
- MINIX läuft auch innerhalb weit verbreiteter Mikrochips
- Die spätere Version MINIX 3.0 richtet sich an ressourcenbeschränkte Computer, Embedded-Computer und Anwendungen, die hohe Zuverlässigkeit erfordern
Verbreitung des Mikrokernel-Designs
- Tanenbaums Eintreten für Mikrokernel-Design beeinflusste unabhängig vom direkten Einfluss von MINIX mehrere Generationen von Betriebssystem-Designern
Charakter des ACM Software System Award
- Der ACM Software System Award wird an Institutionen oder Einzelpersonen verliehen, die ein Softwaresystem entwickelt haben, das durch konzeptionelle Beiträge, kommerzielle Akzeptanz oder beides nachhaltigen Einfluss hatte
- Das Preisgeld beträgt 35.000 US-Dollar
- Die finanzielle Unterstützung des Software System Award kommt von IBM
1 Kommentare
Meinungen auf Hacker News
Das werde ich nie vergessen. Ich glaube, es war in Stanford: Ich hörte einen Vortrag des Netflix-Gründers/CEO Reed Hastings, in dem er erklärte, wie er auf die Idee zu Netflix gekommen war.
Ein Student fragte: „Wann haben Sie erkannt, dass Sie aufs Internet umsteigen müssen?“ Darauf antwortete er: „Das war von Anfang an Teil der Idee. Wir wussten, dass Netzwerke einmal so werden würden wie heute. In einem Informatik-Lehrbuch steht: ‚Unterschätze niemals die Bandbreite eines Lkw voller Bänder, der über die Autobahn fährt.‘ Wir gingen davon aus, dass wir zunächst DVDs verschicken mussten, bis die Netzwerke das von uns gewünschte Niveau erreicht hatten.“
Als ich das hörte, dachte ich: „Wow! An dieses Zitat und die Abbildung erinnere ich mich.“ Also schlug ich im Lehrbuch nach, und tatsächlich stand es genau so in Tanenbaums Networking-Lehrbuch. Unabhängig von dieser Anekdote hatte dieser Mann einen enormen Einfluss auf die gesamte Branche – ganz zu schweigen von der Kernel-Debatte.
Eine wirklich passende Auszeichnung für einen großartigen Pädagogen, und ein Grund zum Gratulieren. Ich habe immer noch sein Lehrbuch über verteilte Systeme, das ich früher benutzt habe, und ich denke immer noch, dass es schön gewesen wäre, wenn Minix gewonnen hätte und dieses Mikrokernel-Modell zur Grundlage des FOSS-*nix-Ökosystems geworden wäre.
Für alle, die es nicht wissen: Andrew betreibt auch den Wahlwissenschafts-Blog Electoral Vote [1], der US-Wahlen anhand von Wahlleute-Umfragemodellen analysiert und prognostiziert. Unter den US-Politikseiten ist er ziemlich gut.
[1]:https://www.electoral-vote.com/evp2024/Info/welcome.html
Schon allein mit der täglichen Lektüre dieser nicht gefühlsgetriebenen, aber dennoch geistreichen Beiträge kann man als US-Bürger ziemlich gut informiert bleiben.
Ich war in Rechnerarchitektur komplett am Straucheln und bekam in einer Zwischenprüfung 5 %. Ich wechselte beim empfohlenen Lehrmaterial zu Andrews Buch, tat nichts anderes, als jeden Tag zwei Stunden darin zu lesen, und bekam in der Abschlussprüfung 100 %.
Es war ein wirklich erstaunlich zugängliches Buch :-)
Eine sehr verdiente Auszeichnung für einen großartigen Pädagogen, der Informatik zugänglich und unterhaltsam macht.
Structured Computer Organization dürfte eigentlich ein Lehrbuch sein, aber es ist so gut geschrieben, dass ich es von vorne bis hinten wie einen Thriller gelesen habe.
Über Knuth würden das zum Beispiel nicht viele sagen. Das soll natürlich nicht schmälern, dass Knuth auf seine eigene Weise großartig ist.
ASTs Bücher, insbesondere die, die direkt Minix behandeln, stehen für mich auf derselben Ebene wie die Philosophie des Essays The Night Watch.
Letztlich geht es in diesem Essay nicht um Unwissen durch Abstraktion, sondern um die Gelassenheit, die aus Vertrautheit mit der Realität entsteht – nicht um Hilflosigkeit, sondern um gelernte Furchtlosigkeit.
Man wird nur selten Kernel-Level-Code ausführen und dabei mit einem Oszilloskop oder Logic Probe an den Pins des Prozessorchips hängen, um Datenleitungen zu betrachten. Aber wir alle kennen wohl mindestens eine Person, die so etwas ganz selbstverständlich macht. Dennoch sind ein klein wenig mehr Wissen und Vertrautheit näher am Silizium, ein Prozessor-Datenblatt in Reichweite und ein nicht fremd wirkender Speichersegmentierungsmodus für Softwareentwickler sehr hilfreich.
Das ist ein Sprung, den jeder einmal wagen sollte; dadurch lassen sich die mentalen Barrieren abbauen, die einen daran hindern zu verstehen, wie es wirklich funktioniert.
Man darf auch nicht vergessen, dass MINIX als Teil der Management Engine in fast jeder modernen Intel-CPU verborgen ist. Diese wenig bekannte Tatsache macht es zu einem der am weitesten verbreiteten Betriebssysteme.
Ich frage mich auch, welche Minix-Version sie tatsächlich benutzt haben. Minix v3.1 erschien 2005 zusammen mit dem Buch, 3.2 im Jahr 2012 und 3.3 im Jahr 2014.
Die Debatte zwischen Linus Torvalds und Andrew Tanenbaum hätte ein wichtiger Wendepunkt in der Technikgeschichte werden können; MINIX scheint eine enorme Chance verpasst zu haben, in der Geschichte eine viel größere Rolle zu spielen.
Wenn die meisten davon irgendeine Form von Linux oder ein Echtzeitbetriebssystem ausführen, stellt sich die Frage, was weiter verbreitet ist: MINIX oder Linux.
1988 oder 1989 las ich Operating Systems: Design and Implementation, und es war eine aufschlussreiche und angenehme Erfahrung.
Damals wünschte ich mir nur, dass irgendein Unix-ähnliches Betriebssystem „frei“ verfügbar wäre. Mit „frei“ meinte ich die intuitive Bedeutung, nicht die formale Definition, die ich erst später kennenlernte. Es hätte Minix sein können.
Seine Computer Networks gehörten zu meinen Lieblingsbüchern aus der Zeit, als ich Informatik studierte.
Ein paar Jahre später unterrichtete ich an einer Business School einen Kurs über verteilte Systeme und baute die Materialien auf diesem Buch auf. Selbst heute wirkt es noch immer relevant.
Ich bin nie tief in Networking eingestiegen, aber das breite Wissen ist geblieben und hat sich immer wieder als nützlich erwiesen. Ich kann sagen, dass mich das von anderen Engineers unterscheidet.
Allerdings ist Modern Operating Systems hervorragend, und als ich es damals an der Uni Kommilitonen empfahl, hörte ich ähnliche Reaktionen.
Ich finde es etwas schade, dass Systemforschung zu diesem Zeitpunkt fast zum Stillstand gekommen zu sein scheint.
Ich dachte, wir würden um 2024 herum verteilte Betriebssysteme nutzen, mit denen man Prozesse ohne größere Probleme frei zwischen Smartphone, Desktop, Laptop und NAS verschieben kann.
Wenn man etwas entwickeln will, das kein Spezialgerät ist, muss es mit bestehender nützlicher Software kompatibel sein. Ein neuer Paradigmenwechsel, der Änderungen an bestehender Software verlangt, hat es extrem schwer, erfolgreich zu werden. Trotzdem gibt es bei Betriebssystemen enorm viele inkrementelle Fortschritte.
Über die Idee eines echten verteilten Betriebssystems haben sicher viele nachgedacht. Ich bin ziemlich überzeugt, dass sich bestehende Betriebssysteme letztlich in diese Richtung entwickeln werden. Einzelne Bausteine sieht man hier und da bereits.
Seit diesem Paper ist viel passiert, aber ich habe das unheimliche Gefühl, dass er recht hatte und dass wir aufgehört haben, wirklich zu versuchen, die Möglichkeiten auszuweiten und zu erkunden. Allerdings hat das möglicherweise mehr mit dem Zustand der akademischen Welt zu tun als mit dem Fachgebiet selbst.
Bevor der übertriebene Hype losging, bekam man auch nicht massenhaft Konferenzeinladungen für GPGPU-Anwendungen mit etwas Machine Learning. Wegen der Hegemonie in der Wissenschaft und der kalten Realität des Hinterherlaufens nach Fördergeldern gab es leider nicht besonders viel Interesse an Systemforschung.
Selbst wenn jemand versuchen würde, eine solche interessante Idee umzusetzen, würde er hart dafür beurteilt, dass er beim restlichen Stack nicht mit Pixel oder iPhone konkurrieren kann. Siehe Rabbit.
Was du beschreibst, ist ein Kernthema moderner Systemforschung, und die großen Cloud-Anbieter implementieren intern all diese Arten von Dingen.
Verbraucher achten im Allgemeinen stärker auf die User Experience. Software, die Inhalte mit einem Server synchronisiert und sie auf allen Geräten verfügbar macht, ist deutlich weniger aufwendig, als zu versuchen, Prozesse live über ein unzuverlässiges Netzwerk zu verschieben.
Viele Systemforscher waren völlig fixiert auf Clustering, Netzwerktransparenz und verteilte Systeme und sahen sie als Gipfel des Betriebssystems. Ich habe nie verstanden, warum. Dass es cool ist, verstehe ich vollkommen, aber warum es so wichtig sein soll, dass ein Server-Laptop-Smartphone-Netzwerksystem wie ein einziges System funktioniert, hat sich mir nie erschlossen.
Meiner Ansicht nach wurde viel Aufwand darauf verschwendet, diesem Drachen nachzujagen. „Verschwendet“ ist vielleicht nicht ganz richtig, denn an coolen Dingen zu forschen ist gut, und dabei dürfte auch Nützliches entstanden sein. Aber ich hatte nicht das Gefühl, dass es ausreichend gerechtfertigt war; vielleicht hätte man die Energie besser einsetzen können.
Die Alternative — Multi-System-Tools und Programmiermodelle, mit denen man mehrere Systeme verwalten kann, ohne sie auf der niedrigsten Ebene wie ein Single-Image-System aussehen zu lassen — bekam in der akademischen Welt nach TCP/IP nicht viel Liebe und wurde größtenteils von der Industrie vorangetrieben.
Eine weitere coole Tatsache über Tanenbaum ist, dass er der Mann hinter electoral-vote.com war.
Bevor alle ihr eigenes Modell hatten und Nate Silver — oder sollte man Poblano sagen — 2008 alles abräumte, war das die Anlaufstelle, um die US-Präsidentschaftswahl 2004 zwischen Bush und Kerry zu verstehen. Die Seite half sehr vielen Menschen enorm dabei, Umfragen und Statistik zu verstehen.
Du weißt das wahrscheinlich schon, aber ich wollte es für diejenigen hervorheben, die es nicht wissen.
Professor Tanenbaum hat inzwischen auch Professor Bates als Co-Autor. Bates ist Geschichtsprofessor an UCLA/Cal Poly. Die Website erscheint täglich; früher wurde sie nur an Wochentagen und auch nur während der Wahlkampfzeit aktualisiert.