Ausschnitt aus einer Werbung für CP/M (Bild: public domain)

Fast vergessen (22): CP/M – Die Mutter aller Betriebssysteme für persönliche Computer

Es ist ja immer so eine Sache mit dem Begriff „Erfinder“ im Zusammenhang mit der Computertechnik. Gerade auf dem Gebiet der Software hat es nur ganz selten dieses eine, einsame Genie gegeben, der das Programm mutterseelenallein kodiert hat. In der Regel gibt es immer irgendetwas, auf das dieser „Erfinder“ aufbaut. Das war beim ersten brauchbaren Betriebssystem für kleine Computer auch nicht anders. Eigentlich war Gary Kildall beim Chip-Riesen Intel für die Weiterentwicklung des hauseigenen Betriebssystems ISIS zur Hochsprache PL/M. Im Team von Hank Smith bei Intel bastelte er halbwegs erfolgreich daran, hatte dann aber die Idee, aus diesem ganzen Komplex ein Betriebssystem werden zu lassen. Weil der Gary bei Intel unzufrieden war (und übrigens auch kein ganz einfacher Typ), verließ er den Konzern, gründete seine eigene Company namens Digital Research und bastelte weiter auf der Basis von PL/M das legendäre Betriebssystem CP/M.

Ursprünglich stand das Akronym CP/M für „Control Program/Monitor“ (mit Schrägstrich wie in PL/M), später sprach Kildall nur noch von „Control Program for Microcomputers“. Wir reden vom Jahr 1974, und Gary dachte vor allem an Maschinen mit einer CPU vom Typ Intel 8080 beziehungsweise dem kompatiblen Chip Z80 von Zilog. Nur dachte 1974 bis auf ein paar Händevoll Freaks niemand daran, dass 8080-/Z80-Computer Massenprodukte werden könnten. Wir reden nämlich von der Ära der Großrechner (IBM) und Minicomputer (DEC) sowie ersten Bastelcomputer, vorwiegend Bausätze, die von engagierten Hobbyisten zusammengefrickelt wurden.

Gary und Dorothy Kildall, die Digital-Research-Gründer
Gary und Dorothy Kildall, die Digital-Research-Gründer

Insofern war die Entscheidung, eine Firma zu gründen, deren erstes und einziges Produkt ein Betriebssystem für Mikrocomputer namens CP/M-80 sein würde, einigermaßen riskant. Aber, so war er halt, der Gary. Ein bisschen genial war er allerdings auch. Denn er „erfand“ (siehe oben) ein Schichtenmodell für sein und viele andere folgende Betriebssysteme, das CP/M weitgehend hardwareunabhängig machte. Vielleicht die größte Erfindung (dieses Mal passt der Begriff) war die unterste Schicht, das Basic Input/Ouput System, kurz: BIOS. Denn das war dafür zuständig, den Datenverkehr mit allen Komponenten jenseits von CPU und RAM zu regeln.

Diskettensatz des CP/M 2.2 (Foto via Wikimedia)
Diskettensatz des CP/M 2.2 (Foto via Wikimedia)

Funfact am Rande: Weil das damals eben so war, entwickelte Gary CP/M zunächst gezielt für Terminals als Benutzerschnittstelle, sodass er anfangs über die Einbindung von Bildschirm und Tastatur wenig nachdachte. Überhaupt war die größte Schwäche von CP/M über lange Zeit die Kommunikation mit Schnittstellen zu Peripheriegräten – da mussten engagierte User stellenweise am Quellcode basteln, um dieses oder jenes Laufwerk nutzen zu können.

Bisschen Pech hatte er auch, weil er mit der Arbeit begann, als es noch keinen verbindlichen Standard für Massenspeicher, damals vor allem Diskettenlaufwerke gab. Die bei IBM gängige 8-Zoll-Diskette hatte sich nicht durchgesetzt, die später allgegenwärtige 5,25-Zoll-Floppy war noch nicht so weit. Deshalb fehlte CP/M die Möglichkeit, Daten hierarchisch in Unterverzeichnissen zu speichern. Gut, das änderte sich in späteren CP/M-Versionen alles. Und tatsächlich wäre das für die Intel-8086- und -8088-Familie im Prinzip 1982 die erste Wahl als Standardbetriebssystem für den IBM PC gewesen. Nur hat sich Gary bei den Anfragen der IBM über Lizenzfragen ziemlich blöd angestellt. Dass er auf Anrufe nicht geantwortet hatte, weil er zum Surfen auf Hawaii weilte, ist eine Legende…

Osborne 1 - die schleppbare CP/M-Maschine
Osborne 1 – die schleppbare CP/M-Maschine (Foto: Tomislav Medak via Wikimedia und Flickr)

Um ehrlich zu sein: Das von Bill Gates einen paar armen Studenten für kleines Geld abgekaufte Disk Operating System, das dann als MS-DOS die digitale Welt eroberte, hatte gegenüber CP/M-86 ein paar entscheidende Vorteile, insbesondere, was die Speicherung von Dateien auf Disketten und Festplatten anging. Außerdem war ein halbwegs ordentliches BASIC gleich integriert.

CP/M-Anzeige in der Infoworld (Foto: public domain via Wikimedia)
CP/M-Anzeige in der Infoworld (Foto: public domain via Wikimedia)
Tatsächlich sprach um 1980 herum fast die ganze Welt der persönlichen Computer CP/M. Was vor allem daran lag, dass es ordentliche Büroanwendungssoftware für das System gab – man denke nur an WordStar, dBase und Multiplan. Für Menschen, die sich als Freiberufler oder Inhaber kleiner oder mittlerer Unternehmen die neue Kraft des Computers zunutze machen wollten, führte zwischen etwa 1978 und 1982 kein Weg an CP/M vorbei. Und besaß man einen Computer ohne 8080- oder Z80-CPU, konnte man sich einen Hardwareemulator beschaffen und doch WordStar, dBase und Multiplan nutzen. Das taten Fans des Apple II (mit Motorola 6502 ausgestattet) besonders gern und zahlreich.

Was CP/M in allen seinen Versionen für die verschiedenen CPUs aber besonders attraktiv machte, war die Tatsache, dass es praktisch jede moderne Programmiersprache in mindestens einer brauchbaren Version für das System gab, dass also fähige Leute spezifische Anwendungssoftware programmieren konnten. Man denke nur an Turbo Pascal, das auf CP/M-Maschinen weit verbreitet war. Also konnten Firmen hingehen und Programmierer beauftragen, für diesen oder jenen Anwendungszweck eine maßgeschneiderte Lösung zu bauen – was auch massenhaft geschah. Zudem füllten Tausende Hobbyprogrammierer die virtuellen Regale von Public-Domain-Software mit buchstäblich Hundertausenden mehr oder weniger schicken Programmen.

Den Übergang in die IBM-PC-kompatible Welt verpasste CP/M aus den oben geschilderten Gründen weitgehend, und obwohl es rechtzeitig zum Boom schon CP/M-68K für Motorola 16-Bit-Prozessoren gab, floppte diese Variante auf ganzer Linie. Und damit wäre die Historie von CP/M auch schon fast am Ende, gäbe es da nicht ein Häuflein Aufrechter, das bis heute das Fähnchen dieses ersten praxisgerechten Betriebssystems für kleine Computer hochhält. Die Quellcodes der verschiedenen CP/M-Versionen sind übrigens 2002 in die gemeinfreie Welt entlassen worden.

Gary Kildall spricht über CP/M:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert