Original-URL des Artikels: https://www.golem.de/news/computergeschichte-unix-hinter-dem-eisernen-vorhang-1905-141247.html    Veröffentlicht: 22.05.2019 12:03    Kurz-URL: https://glm.io/141247

Computergeschichte

Unix hinter dem Eisernen Vorhang

Während sich Unix in den 1970er Jahren an westlichen Universitäten verbreitete, war die DDR durch Embargos von der Entwicklung abgeschnitten - offiziell zumindest. Als es das Betriebssystem hinter den Eisernen Vorhang schaffte, traf es schnell auf Begeisterte.

Im Rechenzentrum der Technischen Hochschule Karl-Marx-Stadt tauchte im Jahr 1982 ein Magnetband auf. Günther Fischer und Matthias Clauß arbeiteten damals dort, das Magnetband landete bei ihnen. Sie hatten die Geräte, um den Datenträger auszulesen, und so fanden sie auf dem Band Quellcode und einen Compiler für V7, die siebte Unix-Version. Das Betriebssystem aus den Bell Laboratories hatte seinen Weg hinter den Eisernen Vorhang gefunden.

"Sicher war das illegal, dass man uns die Bänder weitergegeben hat", sagt Fischer. Zwar verteilten die Bell Laboratories aus den USA das System inklusive Quelltext freigiebig an Universitäten, doch für den Ostblock galt das sogenannte Cocom-Embargo. Dieses bestand seit den 1950er Jahren und verbot unter anderem die Ausfuhr von Hochtechnologie in die Ostblockstaaten. Aber das ließ sich, wie bei vielen anderen Produkten, umgehen. "Wo eine Sperre ist, findet sich auch ein Loch", sagt Fischer.

Wo dieses Loch sich befand und wie genau das Band an ihre Hochschule gelangte, wissen Fischer und Clauß bis heute nicht. "Wenn wir gefragt hätten, hätten wir keine Antwort bekommen. Das war üblich, dass man keine weiteren Fragen stellt", sagt Clauß.

V7 wurde ursprünglich für PDP-11-Rechner entwickelt. Diese "Kleincomputer" füllten im Gegensatz zu den üblichen IBM-Mainframes keine ganzen Räume mehr. Offiziell gab es die Rechner aus dem Hause DEC in der DDR nicht, "weil sie wussten, wir bauen das nach", so Fischer. Doch sowohl Originale der PDP-11 als auch kompatible Nachbauten habe es einige gegeben.

Unix-Testlauf im Bezirkskrankenhaus

So mieteten sich Fischer und Clauß Rechenzeit im Bezirkskrankenhaus des heutigen Chemnitz und legten das Band in einen solchen Nachbau ein. "Das hat sofort einfach funktioniert, ohne dass wir etwas machen mussten", erzählt Fischer.

Unix interessierte die beiden zunächst jedoch weniger, sie arbeiteten an der Entwicklung von Time Sharing Option (TSO) für Großrechner: eine Möglichkeit, über Bildschirmeingaben mit den großen Mainframes zu kommunizieren. Sie wollten weg von den gestanzten Lochkarten, die man nachts laufen ließ und bei denen man morgens feststellte, dass man sich vertippt hatte.

TSO-Umgebungen wurden ab den frühen 1970er Jahren von IBM für seine Großrechner-Architekturen entwickelt, zuerst für System/360. In einem 1979 erschienenen Referenzhandbuch beschreibt IBM die Vorteile des Systems: Nutzer könnten an Remote-Terminals arbeiten und Befehle über eine Tastatur eingeben, "ähnlich einer Schreibmaschine". Die Kommunikation mit dem Computer könne auf diese Art einfach gehalten werden, "um Leute zu ermutigen, die keine Programmierer sind". Mehrere Verarbeitungsvorgänge könnten parallel stattfinden.



Widerstand gegen C

Zu dieser Zeit arbeitete man in Karl-Marx-Stadt mit Nachbauten von Großrechnern der IBM-Architektur System/360. In der DDR entsprach diesen die ESER-Baureihe I, kurz für Einheitliches System Elektronischer Rechentechnik. ESER war Gegenstand eines Abkommens, an dem unter anderem die DDR, die UdSSR, Polen und Ungarn beteiligt waren. Es legte fest, welche Systeme entwickelt und produziert werden sollten.

Weg von der Assemblerprogrammierung

IBM-kompatible Großrechner wurden unter anderem von Robotron gebaut, die Entwicklung des Modells EC 1040 fand maßgeblich im heutigen Chemnitz statt und war im Jahr 1973 abgeschlossen. Das zu Beginn am häufigsten genutzte Betriebssystem nannte sich OS/ES.

Fischer und Clauß wollten weg von der Assemblerprogrammierung. Sie suchten nach höheren Programmiersprachen, um von der maschinenorientierten Programmierung wegzukommen. Unix brachte seinen Quellcode mit, geschrieben in C, unabhängig von der Hardware-Architektur. Der Compiler für die PDP-11-Architektur war auch dabei.

"Da war bei uns die Idee geboren, das auch für unseren Großrechner zu machen", sagt Fischer. "Als wir dann auch in der Sektion Informatik auf andere Hardware-Plattformen zugreifen konnten, wollten wir für all die unterschiedlichen Rechnerarchitekturen das Unix-System zum Laufen bringen." Der Grund war einleuchtend: Sonst hätten die Nutzer für jedes System die herstellerspezifischen Bedingungen erlernen müssen.

Nicht alle in der DDR waren von der Programmiersprache C begeistert

C war damals etwas vollkommen Neues in der DDR, man setzte etwa auf Pascal oder dessen Weiterentwicklung Modula. "Das Schönste waren Pointer", sagt Fischer. "Einfach eine Adresse, wo man irgendwo im System hingreifen kann."

Nicht alle waren so begeistert von C wie Clauß und Fischer. "Wir haben unsere Themen auf Konferenzen vortragen dürfen. Es war Interesse da, aber da war immer der Makel C. Die waren auf Modula aus, da mussten wir gegen ankämpfen", sagt Fischer. Es habe sogar Bestrebungen gegeben, C zu verbieten, erzählt Clauß. "Das war wie ein Religionskrieg zwischen den Sprachexperten im Hochschulbereich und den Leuten, die praktisch was mit den Programmiersprachen machen wollten und nicht nur drüber reden", sagt er.

Mit ihrer Vorliebe für C sollten Fischer und Clauß Recht behalten, auch wenn sie das anfangs noch nicht wussten. Ihr Chef habe gemerkt, dass sie "mit Feuer und Flamme" dahinter standen, und ihnen den Freiraum gelassen. Sie bekamen auch das Standardwerk zu C in die Hände, das englischsprachige The C Programming Language, geschrieben von Brian W. Kernighan und Dennis Ritchie, der die erste Unix-Version mitentwickelte. Fischer und Clauß begannen, das Buch zu übersetzen, und freuten sich über die englischsprachige Dokumentation.

Sonst seien die Dokumentationen, die sie bekamen, schlecht und unverständlich gewesen, sagen die Informatiker. Bei den Nachbauten der Großrechner etwa seien die Fachtexte aus den USA ins Russische übersetzt worden und vom Russischen wiederum ins Deutsche. "Das war kaum noch lesbar, das haben die Übersetzungsexperten gemacht, die sich aber nicht mit der Technik auskannten", erzählt Clauß.

"Jede freie Zeit, die nicht der Familie gewidmet war, haben wir für die Übersetzung des C-Buchs genutzt", sagt er. Nicht nur für sich, sondern auch, damit andere ein Nachschlagewerk hatten. 1983 waren sie fertig. Später kam jemand auf sie zu und schlug vor, dass sie ein eigenes Buch über C schreiben sollten. Die Übersetzung konnte man ja nicht einfach drucken, ohne die Rechte an dem Werk zu besitzen. 1988 erschien im VEB Verlag Technik dann tatsächlich die etwa 240 Seiten starke Erstauflage des Buchs Programmieren mit C. Die 20.000 Exemplare waren in kurzer Zeit vergriffen. Unix und C hatten längst andere Forscher erreicht.



Robotron war von Unix wenig begeistert

Verbündete fanden die beiden bei Wissenschaftlern an Hochschulen wie Ilmenau und Jena, dem Leitzentrum für Anwendungsforschung Berlin (LfA), dem Zentralinstitut für Kybernetik und Informationsprozesse (ZKI) und dem KEAW, dem Kombinat Elektro-Apparate-Werke Berlin. Vor allem mit dem LfA hatten die Chemnitzer enge Kontakte. Das LfA hatte in Assembler eine Art Unix für Großrechner geschrieben, das sich PSU nannte.

Robotron war bei all dem zunächst außen vor. Der größte Computerhersteller in der DDR setzte auf die IBM-Linie. "Das war so vorgegeben durch ESER", sagt Clauß.

Später gab es dann doch Unix-kompatible Betriebssysteme für die Rechner von Robotron, sie nannten sich Mutos - Multi-User Time-Sharing Operating System. Laut einer Chronik zur Zusammenarbeit der Rechenzentren in Forschung und Lehre arbeitete man vor allem an der Hochschule Ilmenau, gemeinsam mit dem Zentrum für Forschung und Technik von Robotron, an einem Unix-Derivat für die K1630/30-Kleinrechner und später für mit Intels 8086-Prozessoren kompatible Technik.

Später sollten auch Fischer und Clauß zusammen mit anderen Mitarbeitern der TU Karl-Marx-Stadt ein Unix-Derivat für den Robotron-Rechner EC 1835 als Auftragsentwicklung konzipieren. Doch die Wende kam dazwischen und der als Personal Computer gedachte Rechner wurde nicht weiterproduziert.

Eine weitere Unix-Variante kam vom KEAW. Die zu UNIX System III von 1982 kompatible Version nannte sich WEGA und war für die in den Berliner Werken entwickelten P8000-Rechner gedacht. Diese sollten bis zu acht Nutzern an unterschiedlichen Terminals die Arbeit an einem Rechner ermöglichen.



Die NVA, eine unbekannte Verbündete

Neben Wissenschaftlern und Entwicklern gab es noch andere Unix-Begeisterte in der DDR, etwa Oberst Joachim Göller, Leiter der Zentralstelle für Nachrichtennetze in der NVA. Von diesem Gleichgesinnten in der Nationalen Volksarmee wussten Fischer und Clauß jedoch nichts.

Auch Göller motivierte die Portierbarkeit des Systems, bedingt durch den schnellen Wechsel zur Verfügung stehender Rechner- und Prozessortypen, wie der mittlerweile Verstorbene 1991 in Topix schrieb, einer Zeitschrift für Unix, die von 1985 bis 1992 erschien.

Göller setzte sich in der NVA für das alternative Betriebssystem ein und warb auch bei einem "guten Bekannten" im Zentralkommittee der SED dafür. Im Jahr 1983 wurde eine Arbeitsgruppe zur "Implementierung und Verbreitung des Software-Systems UNIX für die 16-Bit-Mikroprozessortechnik in der DDR" gegründet. Das Ziel der Arbeitsgruppe war laut Gründungspapier, "die möglichst schnelle und breite Nutzung des UNIX-Systems in der DDR mit hohem ökonomischen Nutzen zu erreichen".

Auch gegen dieses Vorhaben gab es Widerstände. Göller berichtete von einem Stellvertreter des Hauptstabschefs für die Automatisierung der Truppenführung (AT), der bis 1987 bei der NVA im Dienst war und Unix nicht befürwortete. Ursache der Antihaltung sei "eine gewisse Hörigkeit gegenüber den Systemideologen des Kombinates Robotron" gewesen.

Letztlich arbeitete die NVA vor allem mit dem WEGA-System des KEAW. Im Herbst 1985, so Göller in seinem Beitrag, habe die Zentralstelle für Nachrichtennetze dann ein "echtes Multiuser-System" in Betrieb nehmen können. Obwohl breite Begeisterung geherrscht habe, habe sich an der ablehnenden Haltung der AT-Führung nichts verändert.

"Die scheinbar widersinnige Reaktion hatte Ursachen, die wieder mit der Politik von Robotron zusammenhingen", schrieb Göller. Der damalige Regierungsbeauftragte für die Mikroelektronik sei von MS-DOS überzeugt gewesen und auch die AT-Administration in der NVA habe MS-DOS als "das alleinige Betriebssystem für Mikrorechner erklärt".

Später habe sich seine NVA-Abteilung mehrere P8000-Rechner vom KEAW besorgt, die Finanzierung habe man aus Forschungsgeldern - "mehr oder weniger illegal" und an der AT-Führung vorbei - bestritten.



Ein weiteres Magnetband taucht in Chemnitz auf

Während parallel an vielen Orten in der DDR Unix-Entwicklungen und -Experimente stattfanden, tauchte im heutigen Chemnitz ein weiteres Magnetband auf. Ursprünglich habe jemand an der Technischen Hochschule Leipzig das Band bekommen, sagt Fischer. Der habe damit aber nichts anfangen können und es nach Karl-Marx-Stadt gegeben. Auf dem Band befand sich eine Unix-Version für die 370er-Reihe von Amdahl, einem Hersteller IBM-kompatibler Systeme. Auch von diesen Geräten gab es an der Technischen Hochschule Karl-Marx-Stadt zu dieser Zeit einen Nachbau.

Das Band lieferte Fischer und Clauß also eine fertige Lösung für den Großrechner - zu einem Zeitpunkt, als sie mit ihrer eigenen Unix-Entwicklung schon ziemlich weit waren. Das Band habe ihre Arbeit gewissermaßen zerstört, sagt Fischer. Ausprobiert hätten sie es natürlich trotzdem. "Wir haben das System dann in einer Nachtschicht zum Laufen bekommen, das war ein bisschen mehr Arbeit als beim ersten Mal." Zwar habe man eine 370er-kompatible Maschine gehabt, aber die habe kleinere Festplatten gehabt. Man habe noch ein bisschen basteln müssen. Und es gab noch ein Hindernis: Die neue Version hatte zwar einen Compiler mitgeliefert, aber keinen Quelltext.

"Wir wollten dann sehr schnell dieses echte Unix auf unserem neuen IBM/370-kompatiblen Großrechner für Forschung und Lehre bereitstellen", sagt Fischer. Deshalb wurden zunächst die Originalnamen ersetzt: Aus UTS - Universal Time Sharing System - machten sie VMX - Virtual Machine Unix. Das war für einen Systemprogrammierer schnell gemacht.

"Wir waren hinter dem Vorhang und hatten kein Unrechtsbewusstsein. Alles, was zugänglich war, wurde auch genutzt. Das war überall so", sagt Clauß. Ab 1986 nutzten sie das System an der Hochschule.

Fischer sagt: "Wir wollten aber von allen Komponenten den Quelltext in der Hand haben." So begannen die beiden, mit einem Team die Assemblerspuren in C zurück zu übersetzen. "Re-C-ieren" nannten sie das. Sie kompilierten den Quelltext eines Kommandos aus Unix Version 7 und übersetzten es mit dem Compiler von UTS/VMX.

"Bei einfachen Kommandos konnte man sehr schnell ein positives Ergebnis erzielen und war fertig. Bei funktionaler Erweiterung musste man natürlich etwas mehr tun und den C-Quelltext so erweitern, dass die Funktion und möglichst auch das Compilerergebnis stimmten." Reverse Engineering würde man heute wohl sagen. Ungefähr ein Vierteljahr Fleißarbeit brauchten sie, dann hatten sie den Quelltext.

Und dann fiel die Mauer

Drei Jahre später kam die Wende. Die zweite Auflage des beliebten C-Buchs, das die beiden zusammen geschrieben hatten, war gedruckt. Verkauft wurde es kaum mehr. Mit der "Verfolgungsforschung", wie Fischer sagt, war es erst mal vorbei. Mit einem Mal geschah ein technologischer Sprung und durch die offenen Grenzen war plötzlich auch der Austausch mit den West-Kollegen möglich.

"Als ich mit Frau und Tochter im November in München das Begrüßungsgeld abgeholt habe, bin ich dort zum Universitätsrechenzentrum, das von einem Vorstandsmitglied der German Unix User Group (GUUG) geleitet wurde. Ich habe mich kurz vorgestellt, habe ein Exemplar unseres C-Buchs als Begrüßungsgeschenk übergeben und konnte auch noch einen Rundgang durch den Rechnerraum machen", erzählt Fischer.

Fischer und Clauß fanden so Anschluss an die GUUG. Ein Rechenzentrumsmitarbeiter aus Berlin schloss die beiden an ein Mailboxsystem an, in dem sich andere Unix-Begeisterte austauschten. "Unser E-Mail-Anschluss Anfang 1990 - damit konnten wir schon alle im Netz erreichen. In der Nacht wurden wir per Telefonmodem angerufen und E-Mails wurden in beide Richtungen ausgetauscht", sagt Fischer. Damals wuchs die GUUG stark und hatte im Jahr 1990 bereits 1.000 Mitglieder. Zusätzlich gab es einen ostdeutschen Ableger mit 60 bis 70 Mitgliedern.

An manchen Stellen hätten sie neu einsteigen müssen, an anderen seien sie Hochschulrechenzentren im Westen voraus gewesen und so in der Lage gewesen, Fehlentwicklungen zu vermeiden, berichtet Fischer weiter. Obwohl sie lange Zeit unter schwierigen Bedingungen arbeiten mussten, waren sie gut vorbereitet. In einem Interview mit der Computerwoche im März 1990 sagte ein Abteilungsleiter des Leitzentrums für Anwendungsforschung: "Nirgendwo sind derzeit die Voraussetzungen für Unix besser als in der DDR (...) Die Jahre der Rechnerknappheit haben den DDR-Programmierern die Tugend der hardwareunabhängigen Software-Entwicklung nahegebracht."

PCs wurden leistungsfähig, Workstations ersetzten die großen Kisten, Linux wurde verfügbar. Gab es im Jahr 1996 lediglich einen Linux-PC, den das Chemnitzer Rechenzentrum verwaltete, waren es nur fünf Jahre später, im Frühjahr 2001, schon mehr als tausend. "Die Entwicklung in den 90ern war so rasant. Über die alte Zeit haben wir dann gar nicht mehr nachgedacht", schließt Fischer.

Auch interessant:

 (abi)


Verwandte Artikel:
Freie Software: GNU-Paketmanager Guix erreicht Version 1.0   
(03.05.2019, https://glm.io/141023 )
DDR-Hackerfilm Zwei schräge Vögel: Mit Erotik und Kybernetik ins perfekte Chaos   
(12.09.2014, https://glm.io/109172 )
Spielwarenmesse 2015: Sicherheitsnetze, First-Person-Loks und App-Steine   
(10.02.2015, https://glm.io/112218 )
Unix: OpenBSD 6.5 nutzt Retguard und bringt Openrsync   
(25.04.2019, https://glm.io/140878 )
Unix: Sway 1.0 erscheint als i3-kompatibler Wayland-Desktop   
(12.03.2019, https://glm.io/139946 )

© 1997–2019 Golem.de, https://www.golem.de/