Unterschiede sollen noch in diesem Jahr nivelliert werden:

X/Open-Posix-Kooperation bringt beiden Seiten Nutzen

27.05.1988

Der De-facto-Standard Posix als Untermenge von X/Open - dieses Ziel verfolgt die Anbietervereinigung mit der dritten Ausgabe ihres Portability-Guide. Eine Angleichung der beiden Definitionen, so Heinz Diehl*, wird Posix den nötigen Realitäsbezug und X/Open mehr Stabilität verleihen.

Der Betriebssystem-Standard Posix erhebt die Unix-Schnittstellen in den Status eines offiziellen, weltweiten Industriestandards. Posix wird zur Zeit in den USA vom Institute of Electrical and Electronics Engineers (IEEE) definiert und steht kurz vor seiner Verabschiedung. Die weltweite Standardisierungsorganisation ISO hat bereits die Absicht geäußert, die Definition unverändert zu übernehmen.

Dieser Standard mit der Bezeichnung P1003.1 baut auf der Arbeit auf, die von der im Jahre 1974 gegründeten US-Benutzergruppe "/usr/group" begonnen wurde. Das Ziel war, einen unabhängigen, vor der Industrie unterstützten Standard zu definieren.

Die Zielvorstellung von P1003.1 ist der von X/Open sehr ähnlich: Es geht um die Portabilität von Anwendersoftware durch eine kompatible Umgebung für Anwendungen auf den Systemen verschiedener Hersteller. Dazu werden Schnittstellen definiert, aber keine Produkte. Gefragt ist die Kompatibilität auf der Quell-Ebene, und nicht die Objektcode-Kompatibilität, Es gibt aber auch einige wichtige Unterschiede zwischen X/Open und Posix: Zum einen steht hinter den von X/Open definierten und veröffentlichten Schnittstellen das Versprechen der Mitgliederfirmen, diese Schnittstellen auf ihren Systemen in verhältnismäßig kurzer Zeit zu verwirklichen und auch anzubieten.

Zum anderen definiert der Posix-Standard, der in diesem Sommer in den "Full-Use"-Status eintritt, nur einen recht kleinen Teil dessen, was der Anwender tatsächlich an Funktionalität benötigt. X/Open dagegen hat die vollständige Anwendungsumgebung im Visier.

Der wichtigste Unterschied liegt jedoch darin, daß X/Open dem Anwender eine integrierte Umgebung zur Verfügung stellt, in der die einzelnen Komponenten, wie Betriebssystem, Sprachen, Utilities und Data-Management, aufeinander abgestimmt sind. Die offiziellen Standardisierungsgremien - dazu zahlt auch das IEEE - konzentrieren sich hingegen auf ein einzelnes Sachgebiet. Daher ist der X/Open-Standard auf die Praxis der Software-Industrie abgestellt, während Posix sich nur auf die Betriebssystem-Schnittstellen konzentriert.

Seit mehr als einem Jahr arbeitet nun X/Open intensiv an der Posix-Definition mit. Ebenfalls stark beteiligt sind die US-Bundesbehörden, die einen solchen Standard für Ausschreibungen der Regierungsstellen dringend benötigen. Das National Bureau of Standards (NBS) hat eine Vorversion von Posix als "Federal Information Processing Standard" (FIPS) eingefroren, damit die Beschaffungsprojekte nicht langer auf eine Ausschreibungsgrundlage warten müssen. Wenn man weiß, welche Bedeutung den US-Bundesbehörden als Auftraggeber für international arbeitende Computerhersteller zukommt, kann es nicht überraschen, daß Posix einen hohen Stellenwert für X/Open hat.

Der Standard P1003.1 definiert Schnittstellen zum Betriebsystem, also Kernel- und Library-lnterfaces. Es handelt sich somit um eine verhältnismäßig kleine Untermenge dessen, was im Portability-Guide 1987 der X/Open festgeschrieben wurde. Ziel der X/Open-Mitarbeit ist es, dafür zu sorgen, daß das Ergebnis auch tatsächlich eine saubere Untermenge von X/Open ist.

Programmierer, die sich nach dem Standard richten wollen, um portable Software zu erzeugen, sollen also nicht nach zwei verschiedenen und widersprüchlichen Standards arbeiten müssen. Dieses Ziel wird voraussichtlich mit der dritten Ausgabe des Portability-Guide (XPG3) erreicht, die 1988 erscheint.

Wie zu erwarten, werden auch auf seiten von X/Open einige Änderungen und Erweiterungen eingeführt. P1003.1 bringt eine Reihe von Features aus dem weitverbreiteten Berkeley-Unix mit ein. Die Konvergenz mit P 1003.1 fuhrt zu folgenden Zusatzfunktionen: Reliable-Signals, Supplementary-Groups, Erweiterungen beim Password-Handling, bei den Pfadnamen für Dateizugriffe sowie beim Terminal-Handling.

Da in die Ausgabe 3 des Portability-Guide die Posix-Schnittstellen vollständig aufgenommen werden, ist ein System, das konform zu XPB3 ist, automatisch Posix-konform. Dadurch wird erreicht, daß der Anwendungssoftware eine vollständige und konsistente Schnittstellenumgebung zur Verfügung steht: Aus den verschiedenen Quellen ergibt sich ein gemeinsamer Standard.

Damit werden die unterschiedlichen Tendenzen hin zu offenen Systemen zusammengeführt, statt daß sie sich in Konkurrenzkämpfen gegenseitig schwächen. Für die Anwender bedeutet das möglicherweise die Auflösung des alten Dilemmas daß Anwendungen nicht oder nur schwer zwischen Systemen verschiedener Hersteller Übertragbar sind.

Die Arbeit von X/Open zum Nutzen der Software-lndustrie und der Anwender wird durch Posix nicht überflüssig. Vielmehr setzt X/Open den Standard in die Realität um und macht Posix durch seine Integration in die "Common Application Environment" praktisch nutzbar. Auf der anderen Seite wird X/Open durch Industriestandards wie Posix stabilisiert und zu einer soliden Basis für den Software-Entwickler gemacht.

*Heinz Diehl ist Technischer Manager für X/Open bei der Nixdorf AG, Paderborn.