Microsoft und Apple rüsten für universelle Kommunikation

24.07.1992

Die Zukunft gehört der problemlosen Interaktion verschiedenster, individueller Anwendungen in Client-Server-Systemen. " Windows Open Software Architecture" (WOSA) und "Open Collaborative Computing" (OCE) sind die Antworten von Microsoft und Apple auf diese Herausforderung.

"Benutzer wollen Wunder. Sie möchten themenbezogenes Wissen in ihren Software-Werkzeugen, damit sie in den Abstraktionen ihres Arbeitsgebietes denken können und nicht in denen ihres Computers denken müssen." Das sagt David Liddle, der Forscher, der zu einem großen Teil dafür verantwortlich ist, daß sich die grafischen Oberflächen in den Kreisen der Corporate-Kunden durchgesetzt haben. (Er ist auch einer der Begründer der Zusammenarbeit zwischen IBM und Apple.) "Nur so kann man die berühmten 'restlichen 75 Prozent der Bevölkerung' für Computer interessieren", meint Liddle. Damit Software-Entwickler diese Wunder vollbringen können, brauchen sie, "- zumindest zwischen den von ihnen entwickelten Produkten - eine gemeinsame Schicht, vorzugsweise eine Klasse von gemeinsamen Objekten, auf die jedes Programm Zugriff hat. So hätten sie die Chance, Anwendungen zu erstellen, die untereinander kooperieren (ohne diese fremden Anwendungen kennen zu müssen). Sie wollen ein sicheres und neutrales Medium, auf dem Multivendor-Software integriert arbeiten kann. Damit ist Integrationstechnik zwischen Anwendungen, die keinen speziellen Hersteller begünstigt, gemeint. Außerdem möchten sie unabhängig sein von Plattform-Unterschieden. Alle beginnen jetzt zu erkennen, daß es noch ein anderes Instruktions-Set neben dem Intel-Instruktionsssatz gibt."

Liddle beschreibt hier nicht nur die generelle Strategie der Betriebssystem-Hersteller wie Apple, Microsoft und Sunsoft, sondern auch das Entwicklungsziel für die Arbeiten der "Taligent"-Gruppe von IBM und Apple, die ein plattformunabhängiges Betriebssystem für eine neuartige Form der Anwendungssoftware schreiben wird: "Component Software".

Software aus vielen kleinen Komponenten

"Component Software", darüber sind sich die führenden Köpfe der PC-Industrie einig, wird auf lange Sicht die Software-Industrie nicht nur aus der Krise herausführen - Component Software wird vor allem den PC-Benutzern helfen, ihre individuellen Aufgaben mit Programmen zu erledigen, die viel mehr als die heutigen auf ihre Arbeit abgestimmt sind. Das wird morgen noch nicht soweit sein, aber "übermorgen", das heißt, zirka um das Jahr 1995. Dann werden die Anwender in der Lage sein, Software in einzelnen Modulen oder zusammengefaßt zu ganzen Suiten zu kaufen. Es wird dann etwa einen DTP-Baustein für Vorstandssekretariate, einen für die Darstellung mathematischer Formeln im Finanzbereich, eine Silbentrennung für Mediziner oder ein Charting-Modul für Statistiker geben.

Diese vielen Komponenten werden untereinander kommunizieren, das heißt, Daten und Layoutinformationen austauschen, sich durch große PC-Netzwerke verteilen und vieles andere mehr.

Um das zu ermöglichen, sind große Änderungen im darunterliegenden Betriebssystem notwendig. Manche Kenner glauben sogar, daß es dazu ganz neuer Betriebssysteme bedarf (daher das "Taligent"-Venture).

Microsoft und Apple sind dagegen überzeugt, daß es einen Pfad der Migration gibt: Und zwar von den heutigen Betriebssystemen, die monolithische Anwendungsblöcke unterstützen, zu denen von morgen, wo nur noch schlanke Softwaremodule auf den Betriebssystem-"Sockel" gesteckt werden, wie Bill Gates von Microsoft es ausdrückt.

Welche Voraussetzungen muß der Betriebssystem-"Sockel" erfüllen, um solche Software-Konzepte zu tragen? Microsoft und Apple stellten in diesem Jahr zwei Strategien vor: "Windows Open Software Architecture" und "Open Collaborative Computing". WOSA (Microsoft) und OCE (Apple) sind ein klares Signal für das Anlaufen der Vorbereitungen innerhalb der Betriebssysteme. Beide Hersteller verfolgen einen evolutionären Weg, indem sie revolutionäre Änderungen in moderate Häppchen verpackt bringen. Puristen kritisieren diese Vorgehensweise. Doch so können Benutzer, unabhängige Softwarehersteller und Entwickler in Anwenderfirmen Schritt für Schritt mitwachsen, ohne ihre Existenzgrundlage zu verlieren.

Auch wenn viele Gemeinsamkeiten in den Strategien von Microsoft und Apple zu finden sind, sollte nichts darüber hinwegtäuschen, daß sich die beiden in einem Wettbewerb befinden. Sie konkurrieren weiterhin über um die beste Lösung in Teilbereichen. Dies geschieht auf dem Hintergrund, daß beide davon ausgehen, ihre Betriebssysteme eines Tages auf derselben (RISC)-Plattform direkt gegeneinander positioniert zu sehen.

Gemeinsame Strategien von Apple und Microsoft

Apple und Microsoft verbessern zur Zeit ihre grafischen Oberflächen zugunsten eines sehr kleinen Betriebssystem Kernel. Die Idee dahinter: Unter einem "dicken" Finder oder einem "dicken" Windows kann man die kleinen Betriebssystem-Kernel rationell austauschen. So erreicht man Portabilität auf neue Hardware-Plattformen, spart sich Entwicklungsaufwand (wie bei Microsoft NT) und hält die grafische Oberfläche weitestgehend plattformunabhängig. Dann kann natürlich auch die Anwendungssoftware plattformunabhängig sein. Microsoft spricht immer öfter vom "Windows-Betriebssystem", auch Apple differenziert nach außen nicht mehr zwischen Betriebssystem und "Finder". Diese Strategie ist nicht zuletzt für den Anwender von Vorteil: Er kann sein Butterbrot auf demselben Teller weiteressen, während der Tisch darunter durch einen neuen ersetzt wird.

Der neudefinierte Betriebssystem-Aufsatz, der mehr ist als nur eine grafische Oberfläche, wird mit all den Dingen gefüllt, auf die Programme zukünftig unmittelbar zugreifen müssen: zum Beispiel auf Funktionen für den Datenzugriff und -austausch zwischen Anwendungen, auf Messaging (Store-and-Forward-Transportmechanismen), auf das Dateisystem, Druckservices und auf Directory-Services (siehe Abbildung 1). Im Grunde sei Windows nichts anderes als ein Set von APIs, meinte kürzlich Daniel Petre, der bei Microsoft weltweit für Workgroup Strategien verantwortlich ist. "Eine andere Art und Weise, Windows zu beschreiben ist die, daß diese Oberfläche ein Sockel ist, in den jede Art von Service eingesteckt werden kann", ergänzt Bill Gates. Der Sockel ermöglicht es Herstellern von Anwendungssoftware, diese APIs zu nutzen und so alle Services für die eigenen Programme in Anspruch zu nehmen, ohne sie selbst programmieren zu müssen. Auch ist dem Software-Schreiber Kompatibilität und das Wohlverhalten seiner Anwendung - gleichgültig, in welcher Umgebung - garantiert, wenn er sich an die Spielregeln hält.

Die saubere Verteilung von Dokumenten gemischten Inhalts, zum Beispiel aus Text Grafik und Datenbankinhalten, ist eine gigantische Verwaltungsarbeit von Pointern. Beide Hersteller arbeiten daher mit Hochdruck an einer Ausdehnung ihrer Architektur auf Netzwerke. Dies ist im Prinzip nur mit einem neuen Dateisystem möglich. Einige Hinweise bei Microsoft und Apple lassen erkennen, daß man an einem objektorientierten Dateisystem arbeitet. Brauchbare Ergebnisse sind jedoch noch mehrere Jahre entfernt. Folgendes Problem wäre damit zu lösen: Man erstellt ein Text-Dokument in Wordperfect und bindet Original-Daten aus Excel ein. Das fertige File wird im Netzwerk verschickt. Bis hierher gibt es damit heute keine Schwierigkeiten mehr. Sie beginnen, wenn der Empfänger zwar Wordperfect hat, aber kein Excel.

Was passiert, wenn er die Zahlentabelle in seinem Textdokument editieren will? Gäbe es bereits ein objektorientiertes Dateisystem, dann würde OLE2 (Version 2 von Microsoft Object Linking and Embedding) das Problem lösen. Man könnte nämlich dem Objekt beim Versand den Editiercode für die Zahlentabelle gleich mit anhängen. Für andere Aufgaben würde das auf dieser Maschine verwendete 1-2-3 dienen können. Der große Vorteil für Benutzer und Planer: Die Frage nach den Standards bei Datenformaten wird überflüssig. Gleiches gilt für Apples "Inter Application Communication" IAC. Im Moment ist das jedoch nur ein Versprechen und daher noch Zukunftsmusik.

Mit OCE und WOSA zielen Apple und Microsoft weit über das einzelne Desktop und das LAN hinaus. Nach Daniel Petre ist die Entwicklungsrichtung folgende: "WOSA macht aus dem Stand-alone-Windows ein verteiltes Windows. Wenn Sie sich das OCE von Apple ansehen, dann ist das genau das gleiche. Wir sprechen hier über Erweiterungen des Distributed Computing-Ansatzes." Dabei darf man eines nicht übersehen: die Sicht beider Hersteller ist und bleibt entschieden "Desktop centric" - sie werden keine Mainframe-Software schreiben! Doch wie ist zu erreichen, daß die Mainframes mit den Client-PCs kommunizieren?

OCE und WOSA werden die Lösung dafür liefern: Der Benutzer findet in seinem Betriebssystem am Macintosh oder am Windows-PC alle Funktionen für die LAN- und Host-Kommunikation (nicht nur mit IBM-Mainframes, sondern auch mit VAXen, Unix-Maschinen und ähnlichen.) Dabei geht es nicht um Dinge wie Terminalemulation oder Dateitransfer, sondern um Programm-zu-Programm-Kommunikation .

OCE und WOSA sollen es dem PC-Benutzer ermöglichen, am alle Informationen dieser Welt zuzugreifen ("Information at Your Fingertips").

Um universelle Kommunikation mit anderen zu erreichen, werden alle notwendigen Treiber für den "Kontakt" mit anderen Maschinen in Windows beziehungsweise in Apples System 7.x integriert.

Praktisches Beispiel Windows: Eine mit Visual Basic geschriebene Datenbankabfrage wird durch einen Datenbanktreiber innerhalb von Windows in das Format der Zieldatenbank übersetzt (zum Beispiel Oracle). Die Abfrage wird losgeschickt und bearbeitet. Die Antwort wird durch den Treiber auf dem Desktop in ein Format zurückverwandelt, das Visual Basic entspricht. Wird dieselbe Query an einen DB2-Host oder aus einem Excel-Spreadsheet geschickt, merkt der Benutzer nichts von einer Änderung. Zuständig für die Transformation der Query ist das "ODBC" (Open Database Computing), einem API für den Datenzugriff innerhalb von Windows. Alle Datenbanken, die sich nach den Standards der "Sequel Access Group" richten, können von Windows aus damit erreicht werden (ohne die gewohnte Anwendungswelt zu verlassen und ohne sich als Benutzer auf unterschiedliche Kommunikationsparameter einzustellen). Apple hat hier eine ähnliche Entwicklungsrichtung, jedoch noch keine Details enthüllt.

Makrosprache in der Planung

Viele solcher APIs wie das beschriebene ODBC für Datenbanken gruppieren sich innerhalb von Windows zum "Service Provider Interface", bei Apple gibt es keine dedizierte Zwischenschicht mit eigenem Namen. Doch das hindert nicht dieselbe Linie zu verfolgen. Beide Hersteller versorgen heute neben dem Datenzugriff (ODBC) den Mail-Bereich mit höchster Priorität. Der OCE-Finder bei Apple und MAPI bei Microsoft (Messaging-API) sind ein Set von APIs, mit dem aus allen PC-Anwendungen heraus elektronische Post gesendet und empfangen werden kann. Dabei müssen sich die PC-Anwendungen auf diese APIs einstellen, die Mail-Empfänger müssen es nicht tun. Apple und Microsoft werden für die korrekte Handhabung der Post, für Verschlüsselung, Empfängeridentifikation und die Directory-Updates Sorge tragen. Doch Vorsicht - dies sind generelle Dienste der Plattform, nicht etwa Spezifika eines Mailserver-Programmes. Beide Unternehmen laden ausdrücklich Wettbewerber ein Mailserver-Programme oder auch Mailclient-Programme auf der Basis dieser APIs zu schreiben (zufällig liefern Apple und Microsoft einen eigenen Mail-Client innerhalb ihrer Oberflächen aus, doch Gates meint, daß dies den Wettbewerb nicht verhindere).

Hohe Priorität hat schließlich bei Apple und Microsoft die Produktion einer Makrosprache, welche über die Grenzen eines Anwendungsprogrammes hinausgehen kann. Die Makrosprache hat in ihrer Reichweite theoretisch keine Grenze. Sie kann im Netzwerk operieren, unter Umständen mittels anderer Treiber auch darüber hinaus gehen (Remote Procedure Calls). Dieses Konzept wurde bereits einmal von HP mit dem "Agent" innerhalb von Newwave vorgestellt. Die Ansätze von Apple (IAC + AppleEvents/ AppleScript) und von Microsoft (OLE + Visual Basic oder jede andere Programmiersprache) gehen weit darüber hinaus. Dazu Bill Gates: "Ein großer Fortschritt wird die Unterstützung von Kommandos sein. Jede Anwendung hat die Möglichkeit, all ihre Fähigkeiten und Verben zu beschreiben. Dann kann man diese Anwendung mit jeder Programmiersprache "treiben" - egal ob es eine erweiterte Version von Basic oder C ist."

Die Prioritäten sind unterschiedlich gesetzt

Die beschriebenen Gemeinsamkeiten sollen nicht darüber hinwegtäuschen, daß es Unterschiede in der Entwicklungs-Zielrichtung beider Hersteller gibt.

Betrachtet man die Arbeiten am Betriebssystem der nächsten Jahre als "zweiseitig", also einmal auf die Integration im Desktop und einmal auf die Integration in LANs und auf Mainframes gerichtet - dann wird folgendes klar (siehe Abbildung 2): Apple setzt seine Priorität auf die schnelle Verfügbarkeit von Funktionen auf dem Desktop, zum Beispiel den OCE-Finder, neue Directory-Services und dazugehörige Translators, Appleevents und IAC. Microsoft hat dort mit OLE1 ein mehr schlecht als recht funktionierendes Hilfsmittel und setzt nach MAPI möglichst schnell auf die Connectivity-Schiene nach "oben", zum Beispiel bei der Datenbanken-Anbindung über ODBC.

Das Hauptziel derer, die den Trend zur "Component Software" erkannt haben, besteht darin, sich davor zu schützen, in Zukunft nur noch kleine Häppchen verkaufen zu können und dementsprechend kleine Brötchen backen zu müssen. Apple und Microsoft tun das einzig Sinnvolle: so tief wie möglich auf der Systemebene einen dicken Brocken Software plazieren, an dem niemand vorbeikommt. Zwar behauptet Bill Gates, daß Betriebssysteme ein schlechtes Geschäft sind, weil man vergleichsweise viele "lines of code" für wenige Dollars abgeben muß - doch hier wird es durch die wachsende Rechner basis auch in Zukunft ein sehr lukratives Massen- und OEM-Geschäft geben.

Was bleibt anderen Softwareherstellern in einem solchen Szenario zu tun, wenn sie nicht nur vom Häppchen-Verkauf leben wollen? Die Antwort ist einfach: Sie versuchen, ebenfalls eine Plattform anzubieten - und zwar eine, die noch oben auf Windows draufsitzt. Diese Plattform hat schon heute die Funktionalität, die Windows erst morgen haben wird. Denken Sie an Novell Netware, an Lotus Notes, an HP Newwave, an Wordperfect.

Das Leben "mit einer Plattform auf einer Plattform" ist jedoch gefährlich. So langsam, aber auch so gründlich wie eine Dampfwalze kommt Windows hinterher und integriert alle fortschrittlichen Ansätze aus diesen konkurrierenden Produkten in Windows (aus Newwave waren es das Einbetten und Verbinden von Objekten, jetzt ist es der Agent, aus Netware ist es die Integration eines Netzwerk-Client, aus Notes ist es der Replikationsmechanismus für die Netzdatenbanken).

Im Falle Apple hat interessanterweise noch kein unabhängiger Softwarehersteller versucht, ein zusätzliches "Steckmodul" auf den "Finder" zu setzen. Was beweist, daß "auf Plattformen aufgesetzte Plattformen" keine Existenzberechtigung aus sich selbst haben, sondern sich aus der Unvollkommenheit des ursprünglichen Produkts ableiten.

Obwohl die Microsoft Windows-Strategie als "todsicher" gilt, wird sie von vielen Seiten unterlaufen: durch die parallelen Anstrengungen bei Apple und Taligent wie auch durch die Mitbewerber im Plattform-Geschäft auf Intel-Maschinen (vor allem Lotus und Novell). Denn Plattformen sollen die Existenzgrundlage der Softwarehersteller in einer Zeit der kleinen Softwarekomponenten sichern.