Home Computer PC Quiz Site Map counter

CP/M: der erste Betriebssystemstandard für PCs

PCs vor CP/M

Jeder Rechner braucht ein Betriebssystem - ein Programm welches die Hardware ansteuert und zumindest einige Kommandos entgegen nimmt. Ohne ein Betriebsystem ist selbst ein 2 GHz Rechner absolut wertlos. Sie können das testen wenn sie ihr Betriebssystem von der Platte putzen...

Als 1975 der Altair 8800 erschien gab es für diesen Rechner kein Betriebssystem - Der Rechner war eigentlich ein Elektronikbausatz in dem der geneigte User mit Kippschaltern binären Code für den Prozessor einklopfen konnte. Bald jedoch gab es Zusatzgeräte für diesen Rechner und diese mussten angesteuert werden. Mehr noch, viele andere Firmen wie IMSAI, Prozessor Technologies oder Cromenco bauten Rechner auf Basis des Intel 8080 Prozessors.

Wollte jemand Zubehör für diese Rechner bauen so musste er eigentlich die Routinen mitliefern mit dem man die Peripherie einbinden konnte. Ohne diese war die Peripherie nutzlos. Dies war absolut unbefriedigend. Wollte man ein Diskettenlaufwerk für mehrere Rechner anbieten, so hätte man die Routinen für jeden Typ einzeln entwerfen müssen. Noch schlimmer: Wer Programme für diese Rechner schrieb, konnte diese mangels einheitlicher Ansteuerung von Bildschirm oder Massespeicher nicht auf andere Rechner portieren.

Gary Kildall

Gary Kildall 1972 machte Gary Kildall seinen Doktor in Computerwissenschaften und bekam eine Anstellung bei einem College als Dozent. Im selben Jahr erschien der Intel 8008, Intels erster 8 Bit Prozessor. Gary Kildall kennt von der Arbeit an den IBM Großrechnern die Programmiersprache PL/1, die IBM für ihre Großrechner geschrieben hat. Heute weitgehend vergessen, war PL/1 Anfang der siebziger Jahre zumindest in der Großrechnerwelt verbreitet. Er will eine Version für Mikrocomputer schreiben und schreibt in FORTRAN 66 einen Compiler für PL/1 für den 8008, später für den Nachfolger 8080. Er nennt die Sprache PL/M. (PL/1 für Microcomputers).

Nun gibt es ein Problem bei der Entwicklung einer jeder Programmiersprache: Sie muss irgendwann Code für einen Computer kodieren, der den Bildschirm oder die Diskette ansteuert, Daten von der Tastatur einliest und so weiter. Es wäre kein Problem dies für einen Rechner zu tun, doch dann läuft der Compiler eben nur auf Rechner A, nicht aber auf Rechner B, der den gleichen Prozessor hat, aber eben Bildschirm und Tastatur anders ansteuert. Gary will natürlich seine Programmiersprache weit verbreiten und entwickelt 1976 ein Konzept das noch heute Anwendung findet und z.B. auch MS-DOS zugrunde liegt.

Basis für die Aufrufe des Compilers sind die Routinen eines Codeteils den er BDOS nennt: BASIC Disk Operation System. Es ist eine Schnittstelle, die für Anwenderprogramme komfortable Aufrufe darstellt und völlig abstrakt von der Hardware arbeitet. Etwa 30 Aufrufe zum Lesen/Schreiben auf Diskette, Bildschirm, Tastatur, parallele und serielle Schnittstelle gibt es. Diese Aufrufe werden in Hardware nahe Aufrufe des BIOS umgewandelt. BIOS steht für BASIC Input Output System. Dieses abstrahierte weiter und der Kern des BIOS musste vom Hersteller an seine Hardware angepasst werden. Dazu kam noch der CCP: Console Command Prozessor. Er bildete die Schnittstelle zum Benutzer und nahm Tastatureingaben entgegen und führte Programme aus. Er enthielt zudem 5 einfache Kommandos.

1976 bot Gary Kildall seine erste Version von CP/M Intel zum Kauf an, zusammen mit dem PL/M Compiler für 20.000 USD und ein MDS Entwicklungssystem von Intel für den 8080. (Er hatte beides an einer PDP-11 der Uni geschrieben, welche einen 8080 emulierte). Intel hatte damals schon ein Betriebssystem namens ISIS geschrieben, welches deutlich mehr leistete als CP/M. Aber zwei Mängel hatte: Erstens setzte es ein 8080 System mit vollem Speicherausbau voraus und zweitens war es nicht wie CP/M leicht an jede Hardware anzupassen.

Zum ersten ist zu sagen, das der größte erhältliche RAM Chip 1976 das 4 Kilobit RAM war, man braucht davon satte 128 Stück um den Vollausbau eines 64 K Rechners zu erreichen. Die meisten Rechner hatten aber erheblich weniger Speicher (typisch 2-8 KByte) weil sie sonst nicht bezahlbar gewesen wären. Das zweite war, das CP/M für die vielfältigen neuen Mikrocomputer mit unterschiedlicher Peripherie viel geeigneter war. Doch Intel glaubte nicht daran, das es dafür einen Markt geben würde. Sie sahen in dem 8080 Prozessor eine Konkurrenz für größere Systeme von IBM und taten die neuen Mikrocomputer als Spielzeug ab.

Gary Kildall's gute Beziehungen zu Intel führten aber dazu, das man ihm für PL/M alleine die 20.000 USD und das MDS System gab. Gary machte sich selbstständig und gründete die Firma "Intergalactic Digital Research Inc..", Später wurde der Firmenname gekürzt auf "Digital Research Inc..". Damit konnte er daran gehen CP/M weiter zu entwickeln. Die ersten Lizenzen verkaufte er 1976. Sehr bald erkannten nicht nur Hardwarehersteller die Vorteile von CP/M. Programmierer konnten eine Anwendung für CP/M schreiben die nur auf BDOS Aufrufen basierte. Sie lief dann auf jedem CP/M Rechner, egal ob es sich um ein System mit wenig Speicher, einer 40 × 25 Ausgabe auf dem Fernseher oder eine großen Maschine mit 256 KByte Speicher, Festplatten und Ganzseitenmonitor war. CP/M war ein Standard der Rechner der verschiedensten Preisklassen und Größen verband. Das ist als würde heute eine Software auf einem PDA, einem PC oder einem Linux Cluster laufen, ohne neu übersetzt zu werden.

Die CP/M Versionen

Besonderes Kennzeichen von CP/M war das es sehr sparsam im Platz und Ressourcenverbrauch war. CP/M selbst belegt nur zirka 6-8 K Speicher. Der Kommandoprozessor weitere 2 Kilobyte, doch er konnte von Benutzerprogrammen überschrieben werden. Das ist sehr wenig. Es war möglich auf einem Rechner mit nur 16 Kilobyte Hauptspeicher CP/M zu fahren. Beim Vollausbau auf 64 K waren typischerweise 54-56 K frei verfügbar. Die Dienstprogramme für CP/M schrieb Gary Kildall in PL/M. Sie ergänzten CP/M und finden sich in ähnlicher Form noch heute unter MS-DOS.

1980erschien die populärste Version von CP/M: CP/M 2.2. Im selben Jahr lief CP/M in 600.000 Kopien auf 300 unterschiedlichen Rechnern. Er entwickelte CP/M weiter für die beiden neu erschienen 16 Bit Prozessoren und zwar CP/M 86 für den Intel 8086 und CP/M 68K für den Motorola MC 68000. Die letzte CP/M Version für 8 Bit Rechner, CP/M 3.0 erlaubte auch Bank Switching. So das für Anwendungsprogramme bis zu 62 KByte des 64 K Adressraumes zur Verfügung standen. CP/M war so erfolgreich, das selbst andere Computer ohne 8080/Z80 Prozessoren Zusatzkarten einsetzten, um CP/M nutzen zu können. Sogar für Verkaufsschlager wie den Apple II und Commodore C64 gab es Z80 Karten.

GEMWarum CP/M nicht das Betriebssystem für den IBM-PC wurde, kann hier an mehreren Stellen nachgelesen werden. Erfolgreicher war Digital Research bei der Version CP/M 68 K, welche die Basis für den die Atari ST Serie wurde. Zuerst für diese Version, dann auch für CP/M 86, entwickelte Digital Research eine grafische Oberfläche ähnlich dem MAC. Jedoch anders als Windows ohne es zu kopieren. Ein Jahr vor der ersten Windows Version erschien GEM - Graphic Environment Manager. Es lief auch auf einem 8086 PC und benötigte keine Festplatte. Windows, als typisches Microsoftprodukt stellt mit 80286 und 3 MB freiem Festplattenspeicher erheblich höhere Ansprüche. Bis Anfang der neunziger Jahre war GEM populärer als Windows. Doch nun rächte sich schon wie bei dem Geschäft mit MS-DOS Garys Charakter: Er war ein genialer Erfinder, verstand es Programme mit kleinem Ressourcenverbrauch zu schreiben. Doch er interessierte sich nur für das Programmieren, nicht für das Geschäft. Er kümmerte sich zu wenig um Kunden und langsam erreichten die PCs die erheblich höheren Anforderungen, die Windows stellte, damit es lief. So konnte - auch gestützt durch massive Werbungskampagnen an GEM vorbeiziehen. Das als Konkurrenz zu DOS veröffentlichte DR-DOS erreichte einige Marktanteile. Es war preiswerter als MS-DOS und die Zusatzprogramme waren leistungsfähiger. Das Ende kam als in Vorversionen von Windows 3.1 Code zum Abfragen des Betriebssystems implementierte und bei DR-DOS den Betrieb einstellte. Damit verbreitete sich das Gerücht, Windows würde nicht unter DR-DOS laufen.

1991 verkaufte Gary Kildall Digital Research an Novell und entwickelte das seitdem eingesetzte Dateisystem für Multimedia CDs. 1994 starb er an den Folgen einer Herzattacke im Alter von nur 52 Jahren. Sein Tod wurde von der Fachpresse kaum notiert. 1998 wurde DR-DOS, das nun Novell-DOS hieß weiterverkauft an Caldera, die einen Tag nach dem Kauf eine Klage gegen Microsoft erhoben. Im Januar 2000 wurde dieses Verfahren durch eine Zahlung von 200 Mill. USD eingestellt - Einer Summe von der Gary zeitlebens nur träumen konnte.

Der Sourcecode von CP/M sowie anderer Digital Research Produkte ist heute öffentlich einsehbar unter:
http://www.cpm.z80.de/.

Dieser Text stammt von Bernd Leitenberger
© des Textes: Bernd Leitenberger. Jede Veröffentlichung dieses Textes im Ganzen oder in Auszügen darf nur mit Zustimmung des Urhebers erfolgen.

Zum Thema Computer ist auch von mir ein Buch erschienen. "Computergeschichte(n)" beinhaltet, das was der Titel aussagt: einzelne Episoden aus der Frühzeit des PC. Es sind Episoden aus den Lebensäufen von Ed Roberts, Bill Gates, Steve Jobs, Stephen Wozniak, Gary Kildall, Adam Osborne, Jack Tramiel und Chuck Peddle und wie sie den PC schufen.

Das Buch wird abgerundet durch eine kurze Erklärung der Computertechnik vor dem PC, sowie einer Zusammenfassung was danach geschah, als die Claims abgesteckt waren. Ich habe versucht ein Buch zu schreiben, dass sie dahingehend von anderen Büchern abhebt, dass es nicht nur Geschichte erzählt sondern auch erklärt warum bestimmte Produkte erfolgreich waren, also auf die Technik eingeht.

Die 2014 erschienene zweite Auflage wurde aktualisiert und leicht erweitert. Die umfangreichste Änderung ist ein 60 Seiten starkes Kapitel über Seymour Cray und die von ihm entworfenen Supercomputer. Bedingt durch Preissenkungen bei Neuauflagen ist es mit 19,90 Euro trotz gestiegenem Umfang um 5 Euro billiger als die erste Auflage. Es ist auch als e-Book für 10,99 Euro erschienen.

Mehr über das Buch auf dieser eigenen Seite.

Sitemap Kontakt Neues Bücher vom Autor Buchempfehlungen Top 99