Bernd Leitenbergers Blog

Die Designmängel im IBM PC

In einer Fernsehsendung über Computergeschichte kam mal ein Interview mit Andy Herzfeld, der am Design des Macintosh beteiligt war. Er berichtete davon, dass die Mannschaft bei Apple loszogen sich einen IBM PC kauften, auseinandernahmen und sich darüber amüsierten was sie da sahen. Sie meinten der IBM PC müsste weiter sein. Nun ja, mir fällt dazu ein, das Apple damals gerade den Apple III herausbrachte der auch kein Ruhmesblatt für die Entwickler war.

Aber Zeit mal, obwohl es sicher schon in einem meiner Artikel über alte Computer zu finden ist, mal sich der Sache annehmen und zu analysieren. Ich mache das mal aus zwei Blickwinkeln. Der eine ist die rein technische Sicht und die andere ist die, die wohl damals für IBM wichtig war.

Fangen wir mal mit einer grundlegenden Beschreibung des Basisgeräts an wie es am 12. August 1981 vorgestellt wurde und in der Form nur in den USA verkauft wurde. Über den Teich, also nach Europa schaffte es der IBM PC erst zwei Jahre später, da hatte sich schon einiges geändert und es gab auch die fehlerbereinigte und stark erweiterte Version 2 von PC-DOS.

Der IBM PC bestand aus einem Gehäuse mit Einschüben für zwei Floppy Disklaufwerke in normaler Höhe, ein Netzteil war eingebaut, es war stark genug um die Hauptplatine und die Floppys und auch Adapterkarten mit Strom zu versorgen, aber – das sollte sich noch als Nachteil erweisen – es liefere nicht genug Strom für eine Festplatte.

Im Gehäuse befand sich die Basisplatine, das Motherboard mit 32 Sockel für Speicherbausteine und fünf Slots. An serienmäßigen Anschlüssen gab es einen Anschluss für einen Kasettenrekorder und an einem Fernseher, sowie für die Tastatur.

Der Prozessor war ein Intel 8088 mit 4,77 MHz. Auf der Basisplatine gab es vier RAM Bänke. Eine war fest verlötet und anfangs mit 16 Kbit Chips bestückt, später mit 64 Kbit Chips. Die Software bestand aus einem BIOS und einem BASIC im ROM. Da es nur den Kasettenrekorder unterstützte wurde es später „Kasettenbasic“ genannt.

Dazu gab es eine Tastatur, die separat angeschlossen wurde.

Das war die Basiseinheit. Man konnte sie natürlich erweitern. Beim Start gab es folgende Erweiterungen und Software:

Komponente Preis (in US-$)
Zentraleinheit 16 K Speicher, Keyboard: 1.265
Aufrüstung 16 KByte onboard (maximal 3): 90
32 KByte Erweiterungskarte: 325
64 KByte Erweiterungskarte: 540
Monochrommonitor 11,5 Zoll Typ: 5153: 345
MDA-Karte mit Druckerport: 335
CGA-Karte: 300
Diskettenlaufwerk: 570
Diskettenkontroller: 220
V 24 Schnittstelle: 145
Gameportkarte: 55
Tastatur: 265
Software
PC DOS: 40 (später 149)
CP-86: 249 (später 149)
Easywriter: 175
Hauptbuchhaltung, Außenstände,Verbindlichkeiten: Je 595, ergeben zusammen eine Finanzbuchhaltung
Disketten-BASIC: 40
Pascal Compiler: 300
Visicalc: 200
Adventure: 30

Kritik Systemaufbau

Man sieht zweierlei: Zum einen war die Softwareauswahl zum Anfang überschaubar und man benötigte zusätzlich zum Basisgerät noch vieles erwerben, um arbeiten zu können. Das war damals nicht ungewöhnlich, aber beim IBM PC war es doch relativ viel. Der IBM PC zielte schon vom Preis her auf Nutzer, die ihn geschäftlich nutzten. Diese schlossen ihn nicht an einen Fernseher, sondern einen Monitor an. Damit dies ging, benötigten die sie MDA Karte, die nur Text ausgeben konnte. Alternativ gab es die CGA-Karte die Farbgrafik konnte, aber auch einen sehr teuren Farbgrafikmonitor benötigte und deren Textdarstellung schlecht war. Gängig war wie MDA-Karte schon alleine deswegen, weil sie eine Druckerschnittstelle hatte, die ja auf dem Mainboard fehlte.

Wenn man Diskettenlaufwerke einbauen wollte – ebenfalls für den geschäftlichen Einsatz notwendig, braucht man einen Diskettenkontroller. Und mit 16 KByte Speicher kam man nicht weiter. Man musste die drei anderen Bänke bestücken. Mehr Speicher erfordert dann eine weitere Karte.

Damals gab es zwei Arten von bezahlbaren Computern: Rechnern die einen einbauten BASIC Interpreter hatten und an den Fernseher angeschlossen wurden, die sogenannten Homecomputer. Dann Rechner für geschäftliche Anwendungen die kamen mit einem Monitor und das Betriebssystem wurde von einem Diskettenlaufwerk gestartet, das also immer Bestandteil des Rechners war, während es bei den Heimcomputern oft optional ist, primärer Massenspeicher war dort ein Kassettenrekorder.

Der IBM PC wandte sich an Kunden die einen geschäftliche nutzbaren Rechner suchten. Privatpersonen hatten nichts mit IBM zu tun. Das Problem war, dass der Rechner in der Basisausführung aber ein Heimcomputer war. Trotzdem kostete er 1.600 Dollar. Für den geschäftlichen Einsatz musste man ihn aufrüsten: mit MDA-Karte, Diskkontroller, Speicherchips, zwei Diskettenlaufwerken, das hob den Preis dann auf 3000 Dollar an. Selbst Tastatur und Betriebssystem wurden separat verkauft. Man hätte durchaus einiges davon auf dem Mainboard integrieren können, ebenso wie beim Verkaufsstart schon 64 Kbit Chips seit einem Jahr auf dem Markt waren und der Rechner noch mit 16 KByte RAM ausgeliefert wurde.

Der 8 Bit Bus bremste zudem den Datenaustausch. So wurde der Bus denn auch beim Nachfolgemodell IBM PC AT deutlich renoviert. Insgesamt war der Rechner recht karg ausgestattet. DMA für schnellere Datentransfers fehlte, immerhin ein Zähler (8288) und Interruptcontroller (8259) gab es. Aber eine Uhr fehlte, obwohl MS-DOS schon das Datum mit abspeicherte – man musste das Datum bei jedem Start eintippen.

Kritik Prozessor

Die meiste Kritik – schon damals – gab es an der Prozessorwahl. Die Computerindustrie war damals noch jung. Aber es waren schon die Prozessoren 8080, 6800, 6502 und Z80 erschienen und alle diese Prozessoren wurden innerhalb eines Jahres nach erscheinen in Computern verbaut. Der Intel 8086 Prozessor war dagegen schon abgehangen, er erschien zwei Jahre vor dem IBM PC.

Heute ist die 8086-Linie als einzige Prozessorlinie von damals übrig geblieben. Das war damals aber nicht mal von Intel so gewollt. Der 8086 war als Lückenbüßer gedacht. Intel wollte die 16 Bit Generation komplett überspringen und gleich zu einem leistungsfähigen 32 Bit Prozessor übergehen, doch dessen Komplexität machte Jahre der Entwicklung nötig. Der 8086 sollte die Kunden bei Stange halten. Es war ein auf 16 Bit gehievtes 8080 Design. Dessen Hauptnachteil war das der Speicher segmentiert war, maximal 64 KByte konnte man in einem Stück adressieren. Für größere Datenstrukturen musste man eine eigene Speicherverwaltung schreiben, ein Nachteil mit dem ich noch ein Jahrzehnt später unter DOS beim Programmieren mich herumärgern musste.

Das der Prozessor schon lange auf dem Markt war, zeigte sich auch daran, dass die Entwicklung des Betriebssystems das mal PC-DOS heißen sollte bei SCP schon vorher begonnen hatte, weil deren 8086-Computer ohne Betriebssystem praktisch unverkäuflich waren.

Es gibt eigentlich eine zweigeteilte Kritik. Zum einen an der Wahl des 8086/88 Prozessors und dann noch an der genauen Wahl. Damals gab es ja noch einige weitere 16-Bit-Prozessoren, an die sich heute keiner mehr erinnert und die einfach im Wettbewerb untergingen wie Z8000, NS16xxx. Die meisten davon waren leistungsfähiger als der Intel 8086, der wohl beste 16 Bit Mikroprozessor der damaligen Zeit war der Motorola MC68000. Er war nicht nur deutlich schneller, er war auch unkomplizierter zu programmieren und wäre die viel bessere Wahl gewesen.

Offiziell wurde der MC68000 verworfen, weil er ein Jahr jünger war und Motorola einige Startprobleme hatte, aber das ist nichts Ungewöhnliches. Der 68000 steckte denn auch in den ersten Workstations von Sun und SGI, die größeren IBM-Rechnern Konkurrenz machten und dies dürfte der Grund gewesen sein, dass er nicht gewählt wurde. Er hätte den Rechner rund dreimal schneller gemacht als der gewählte 8088 mit 4,77 MHz.

Der zweite Grund war das IBM ja nicht den 8086 wählte, den es damals schon mit 8 MHz Taktrate gab. Intel wählte den 8088 mit 4,77 MHz Takt. Der Intel 8088 hatte nur einen Datenbus mit 8 anstatt 16 Bit Breite. Das verdoppelte bei allen Zugriffen auf den Speicher die Zugriffszeit und machte den Prozessor um 40 % langsamer. Und IBM nahm nicht die 8 MHz Version, sondern die 5 MHz Version die nur mit 4,77 MHz getaktet wurde.

Diese Entscheidung für den krummen Takt ist relativ gut begründet. IBM hat um Entwicklungszeit und –kosten zu sparen auf einer schon begonnenen Entwicklung aufgebaut, dem IBM Datamaster (5322) der einen 8085 Prozessor einsetzte. Dessen Bus wurde im IBM PC übernommen. Der 8085 ist aber ein 8-Bit-Prozessor, daher hatte der Bus drr später ISA (Industraial Standard Architecture) nur 8 Datenleistungen, was zur Wahl des 8088 führte. Dass es nur 4,77 MHz waren, lag an zwei Dingen: Mit der 5 MHz Version konnte IBM preiswerte 8 Bit-Peripheriebausteine einsetzen, anstatt der 8086-er Serie. Daneben spart dies Kosten bei den RAM Bausteinen, die auch langsamer sein konnten. Die Wahl von 4,77 anstatt 5 MHz erfolgte um 50 Cent für einen Quarzkristall einzusparen, denn so konnte man die Taktfrequenz aus der dreimal höheren Frequenz für die Fernsehnorm NTSC – primär sollte er ja an einen Fernseher angeschlossen werden – ableiten. In der Praxis hatte diese Wahl den Rechner um den Faktor 2,5 gegenüber einem 8 MHz 8086 verlangsamt.

Betriebssystem

Das Betriebssystem PC-DOS stammte nicht von IBM. Wie IBM zu ihm kam, ist eine Geschichte für sich. In Kurzfassung: Das System wurde von Tom Patterson bei der Firma SCP programmiert. Bill Gates versprach IBM ein Betriebssystem zu liefern, nachdem Verhandlungen mit Gary Kildall und Digital Research scheiterten. Sie kauften erst dann das Betriebssystem QDOS ein. Das QD stand für „Quick and Dirty“ weil er es schnell kopiert hatte wobei das Vorbild CP/M-80 war.

Entsprechend gab es viele Fehler im Betriebssystem. IBM bekam anfangs Tausende von Beschwerden und kümmerte sich erst nun darum das Betriebssystem zu verbessern und woher es überhaupt kam. Der augenfälligste Fehler: Von den beiden Seiten einer Diskette wurde nur eine beschrieben, was die Kapazität von 320 auf 160 KByte halbierte. Das Betriebssystem unterstützte auch nicht mehr als 64 KByte Speicher pro Segment, das heißt mit den damals verwendeten, drei Segmenten für Daten, Code und Stack machte mehr als 192 KByte Speicher keinen Sinn.

Einen richtigen Vorteil gegenüber dem etablierten CP/M bot MS-DOS erst ab Version 2. Die erste Version war eine einfache Kopie von CP/M-80. Version 2 bot das neue .exe Format für ausführbare Dateien die nun auch größer als 64 KByte, Unterverzeichnisse und Unterstützung für Festplatten. Das war aber erst zwei Jahre später der Fall. Dann erschien auch die zweite Generation von Programmen, die nativ die Vorteile des 8086 ausnutzen wie Lotus 1-2-3. Die erste Generation wie Wordstar oder Visicalc nutzte ein Feature des 8086: Als Nachfolger des 8080 war der Befehlssatz des 8080 als Untermenge enthalten. Ein Programm konnte so einen 8080 Quelltext in einen 8086 Quelltext übersetzen. So gab es recht bald, auch weil MS-DOS eine CP/M Kopie war – einfach übersetzte CP/M Programme, die aber die neuen Befehle des 8086 nicht nutzten und so unnötig langsam waren. Das galt sogar für Programmiersprachen. Die Zeitschrift Byte testete den BASIC Interpreter und stellte fest, das dieser in der Geschwindigkeit zwischen dem eines Apple II und eines Z80A mit 4 MHz lag.

Was gut war

Ich möchte ja nicht nur meckern. Es gab durchaus Dinge, die gut waren. Es waren die Dinge, bei denen IBM auf seine Erfahrungen mit größeren Rechnern aufbauen konnte. Die Tastatur wurde gelobt. Sie hatte einen harten, lauten Anschlag. Heute verpönt, damals ein Qualitätsmerkmal. Vor allem war sie flach und abnehmbar, was damals ungewöhnlich war da viele Tastaturen ins Gehäuse integriert waren.

Der Grünmonitor zeigte nur Text, den aber fein gerastert mit 9 x 14 Punkten pro Zeichen. Durch einen Attributsspeicher gingen auch Hervorhebungen wie Unterstreichen, Invertiert oder blinkend.

Fazit

Der IBM PC war eine Mogelpackung. Er versprach modernere Technik, bot diese aber nicht. Das Betriebssystem war nicht besser als CP/M. Der Prozessor auch nicht viel schneller als ein schneller Z80. Vor allem, wenn wie am Anfang nur CP/M Programme schnell angepasst wurden, ohne die Vorteile des neuen Prozessors auszunutzen. Auch bei Grafik oder Speicherplatz auf Disketten gab es Systeme, die besser waren. Heute weitestgehend vergessen: es gab ja zu der Zeit auch andere PC mit demselben Prozessor, aber besseren technischen Werten wie dem Victor Sirius.

Einige Entscheidungen wie der für das Bussystem waren schlicht und einfach dem Zeitmangel geschuldet, der PC sollte in wenigen Monaten entwickelt werden, so hat man übernommen was es schon gab.

Ich habe mal den Apple II mit dem IBM PC verglichen. Das Ergebnis: eine Konfiguration mit ähnliche Leistung gab es bei Apple für 70 % des Preises und Apple war schon damals nicht als Billigmarke bekannt. Für den praktischen Einsatz viel wichtiger: Der Apple II war drei Jahre auf dem Markt und es gab schon jede Menge Software für ihn.

Was den IBM PC zu einem Erfolg machte – die Prognose über die Verkaufszahlen des Life-Cycle von 5 Jahren wurden schon im ersten Jahr erreicht – war der Ruf der Firma. Es gab „nutzbare“ PC also Systeme die man nicht selbst zusammenbauen musste seit etwa zwei Jahren. Aber wer nicht vorher mit Computern zu tun hatte, wusste nicht so viel damit anzufangen. War das etwas für Freaks die gerne programmierten? Oder ein teures Spielzeug? IBM kannte jeder. Selbst wenn man als Freiberufler oder Handwerker nicht mit einem Rechner von IBM zu tun hatte, so kannte man andere Geräte von IBM für das Büro wie Schreibmaschinen. Wenn IBM nun einen PC herausbringt, dann scheinen diese Geräte im geschäftlichen Umfeld wirklich nützlich zu sein. Letztendlich nutzte dies auch den anderen Herstellern, denn nicht jeder der so auf Mikrocomputer aufmerksam wurde griff zu einem IBM PC.

Die mobile Version verlassen