Im Spannungsfeld zwischen Budget, Performance und Supergrafik:

Die grafische Intelligenz bleibt friedlich an der Kette

19.08.1988

MÜNCHEN - Die Preise für intelligente Terminals rangieren schon mal im 6-stelligen Bereich. Da nimmt es nicht Wunder, wenn wenigstens die Software-Investitionen in grafische Anwendungen bei einem Hardwarewechsel durch Standards geschützt werden sollen. Aber auch hier machen Varianten und Abweichungen die Wahl zur Qual.

Interessanterweise nennt die Fachwelt ein Terminal dann intelligent, wenn es im grafischen Bereich sogenannte "Primitives" verarbeiten kann. Dennoch ist die Definition eines "intelligenten Terminals" nicht ganz trennscharf, wird aber durch gewisse Basiskomponenten greifbarer. So spricht beispielsweise die Tektronix GmbH aus Köln dann von einem intelligenten Terminal, wenn die Applikation als solche auf ein anderes System ausgelagert ist. Vorprogrammierte Funktionen im Terminal werden durch komprimierte Befehle von dem Applikationsträger - sei es ein Großrechner, Mini oder auch PC - angestoßen.

Firmenware bestimmt die Terminalleistung

Die intelligenten Terminals bleiben also, auch wenn sie eigenständig Berechnungen ausführen und Ergebnisse ausgeben oder anzeigen, konstant unter Kontrolle des Systems, auf dem die eigentliche Applikation abläuft.

Die vorprogrammierten Funktionen sind teils als Firmware fest installiert, teils besteht aber auch die Möglichkeit, zusätzliche Funktionen zu programmieren und laden, erläutert Günter Harbeck, Produktmanager bei Tektronix.

Die fehlende Definitionstiefe rührt nach Harbecks Meinung auch wohl daher, daß ein PC durch die rapide Entwicklung der Technologie heutzutage in nicht wenigen Fällen in verschiedenen Terminalmodi gefahren werden kann ñ als sogenanntes "dummes Terminal" genauso wie als intelligentes oder eben als eigenständiger Mikrorechner.

Zu den grundsätzlichen Funktionen, die zu einem intelligenten Terminal gehören, zählen eingearbeitete Grundlagen der zweidimensionalen Verarbeitung wie Fenstertechniken, Zoomen (auch in ihren Verbindungen) oder die Trennung von Text und Grafik auf dem gleichen Schirm in unterschiedlichen Fenstern.

Ein wichtiger Aspekt ist zudem die Frage, ob grafische "Primitives", also beispielsweise gepunktete oder gestrichelte Linien und Kreise, direkt als Befehl angewählt werden können, bei dem nur die Endpunkte angegeben werden müssen.

Flächenfüllung als eingearbeitete Funktion, die einen räumlichen Eindruck vermittelt, zählt nach Definition von Heinz Schmitz, General Manager der Cadtronic GmbH aus Bergisch-Gladbach, bereits zu einer höheren Klasse intelligenter Terminals. Im mittleren Bereich für Grafik, zu dem technische Zeichnungen oder Basis-CAD zählt, kommt dann die Fähigkeit der Transformation sowie auch der Aufbau sogenannter Displaylisten hinzu, in der Grafik abgespeichert und/oder segmentiert nach den Normen GKS oder CORE aufbewahrt wird.

In diesen Listen können Zeichnungen dann nachträglich wieder angesprochen und transformiert, skaliert, gedreht oder positioniert werden. Auch die Löschung von Segmenten gehört hierzu.

Am oberen Ende erfüllen intelligente Terminals dann dreidimensionale Aufgaben. Hier ist die Firmware manchmal bereits umfangreicher als das implementierte Betriebssystem. Die Verarbeitung von 3D-Zeichnungen auf Drahtmodellbasis (Kantendarstellung) mit Transformation, Skalierung, Positionierung ist in diesem Bereich Sache des Terminals.

Ganz luxuriös wird es da, wo auch 3D-Oberflächenschattierung, Herausrechnung von unsichtbaren Linien und Flächen oder Beleuchtungsmodelle mit mehreren Lichtquellen als Terminalfunktion realisiert sind.

Die Standardisierungsbemühungen im grafischen Bereich Mitte der 70er Jahre gingen vordergründig von 2D-Darstellungen aus. Grundsätzlich allerdings, so Harbeck, hinkt man bei Normierungen der technischen Entwicklung hinterher.

Zwei Grafikstandards sind Norm: GKS und PHIGS

CORE, ein betagterer, amerikanischer Vorschlag, versuchte, 3D mit einzubeziehen. Da hier Zeitprobleme befürchtet wurden, haben die Europäer sich auf 2D focussiert und sind letztlich auch mit dem GKS (Grafisches Kernsystem) zum Zuge gekommen.

Obwohl GKS als Grafiknorm geläufig ist, äußern Fachleute auch Kritik an diesem Standard. Der Transformierungs- und Berechnungsaufwand unter dieser Norm sei für viele Anwendungen zu hoch, meint beispielsweise Cadtronic-Manager Schmitz.

GKS nur über den Host zu fahren, ist auch nach Meinung von Peter Wicht, Produktmarketing-Manager der GTS-Gral aus Darmstadt, manchmal tödlich für die Performance.

Hinter jeder der implementierten Grundfunktionen stehe ein Programm ñ die Performance könne da bei 200 Funktionen also durchaus in den Keller gehen. GKS-Anwendungen seien deshalb hauptsächlich dort zu finden, wo Daten häufig weitergegeben werden müßten, und dann vordergründig auf intelligenten Terminals.

Plot-10, eine schon bejahrte Tektronix-Entwicklung, gilt indes in Fachkreisen immer noch als kompaktestes Datenformat für Vektoren, vor allem bei serieller Übertragung.

Nutze man Produkte wie Plot-10 und sei "Tektronix-kompatibel", so komme der Vorteil großer Softwarequantität zum Tragen, meint Schmitz, bei der häufig mehr Features als bei den Standards zu finden seien.

Die allgemeine Entwicklung im Grafikbereich hat dann Anfang der 80er Jahre, als GKS als Norm verabschiedet wurde, dazu geführt, daß eine zweite Strömung aufbrach, die sich in PHIGS (Programmers Hierarchical Interactive Graphic Specification) manifestierte.

Bei GKS ist als Basiselement das Segment als einzige und kleinste ansprechbare Größe vorhanden. Dabei spielt es keine Rolle, ob in einem Segment ein oder mehrere Linien oder Figuren abgespeichert sind. Diese Segmente sind untereinander alle gleichrangig.

Bei PHIGS hingegen können die Segmente hierarchisch zugeordnet werden. Dieser hierarchische Aufbau erlaubt eine bessere Strukturierung der Daten. So werden beispielsweise beim Roboterdesign bei einer Achseldrehung alle nachfolgenden Gelenke und Greifzangen entsprechend mitbewegt.

Ab 1990 wird CGI als Softwareschnittstelle Norm

Die Normen an sich sind als Schnittstellen vom numerisch berechnenden Anwendungsprogramm zur Grafik zu verstehen. Feste Grafikfunktionen sind beschrieben und in den Übergabeparametern bestimmt. Auch eine sogenannte Sprachbindung ist für verschiedene Sprachen wie Fortran, C, Ada oder Pascal verabschiedet oder in Arbeit und für einen Grafikaufruf normiert.

In GKS werden die spezifischen Eigenschaften der Endgeräte berücksichtigt. Funktionen werden entweder an die Hardware durchgegeben oder in der Software emuliert. Der Funktionsumfang ist also letztendlich immer derselbe, egal wie die Hardware aussieht, erläutert Harbeck. In der Software müsse also der Support der Funktion oder die Emulation vorhanden sein.

Zur Abspeicherung von Grafikdaten existiert CGM (Computer Graphics Metafile) als Norm; CGI (Computer Graphics Interface) verfolgte das Ziel, in der Hardware eine Normschnittstelle aufzubauen und findet als intelligente GKS-Workstation-Schnittstelle im Bereich der Grafikschnittstellen zunehmend Verbreitung.

Die vollständige Normierung einer Hardwareschnittstelle, wie ursprünglich geplant, ist aus Sicht von Harbeck illusorisch, da die Hardware sich aus unternehmenspolitischen Gründen immer unterscheiden wird.

CGI allerdings mache als Schnittstelle in der Software, der ein Gerätetreiber nachfolgt, oder auf Einschubkarten durchaus Sinn. Die Normierung von CGI indes wird vor 1990 nicht abgeschlossen sein. Karten gibt es bereits jetzt im VME-Busbereich, aber auch an anderen Systemen wird gearbeitet.

In gewisser Weise allerdings liegt CGM außerhalb des GKS-Standards, verarbeitet aber GKS-Vorgaben. Da sich verschiedene Grafiksysteme herausgebildet haben, lag der Wunsch nahe, Daten normiert von einem System auf ein anderes zu übertragen. (Für GKS existiert so auch ein GKS-Metafile als eigenständige Vereinbarung, das diese Aufgabe der Datenübertragung zwischen zwei GKS-Systemen übernimmt.)

Dennoch ist es nicht notwendig, und auch bei vielen Geräten nicht der Fall, GKS in seinem vollen Funktionsumfang als Firmware im intelligenten Terminal angelegt zu haben. Je nach Hersteller seien zwischen 20 und 80 Prozent der GKS-Features hardwareseitig realisiert, erläutert Günther Pfaff, Geschäftsführer der GTS-Gral GmbH, jedoch ist die Portabilität der Programme grundsätzlich gegeben.

Mehr Performance für die 3D-Terminals

Da die Grafikfunktion vom Rechner aus angesprochen werden muß, ist grundsätzliche Bedingung für ein Grafiksystem, daß eine GKS-Software vorhanden sein muß. Dies auch mit aus dem Grund, daß die Daten trotz ihrer Funktionsdurchführung im intelligenten Terminal hostseitig gespeichert und verwaltet werden müssen.

Die Funktionen werden also quasi im Rechner nachempfunden; im anderen Falle müßten alle Daten beispielsweise einer Transformation über die Datenleitung geschickt werden ñ und die stellt im System zumindest aus Performancesicht immer noch eine Schwachstelle dar.

Besser und üblich ist es deshalb, parallel zu arbeiten, um möglichst wenig Leitungszeit in Anspruch zu nehmen. Wesentliches allerdings würde im intelligenten Terminal fehlen, wenn die Segmentierung nicht eingearbeitet wäre. Diese Segmentierung aber ist bei höherwertigen Geräten fast grundsätzlich der Fall. Hier kommt also dann die Güte der zusätzlich benötigten Software auch in bezug auf die Hardware-Unabhängigkeit voll zum Tragen.

Von der Problematik her ist PHIGS auf Grund der Dreidimensionalität etwas schwieriger zu fassen. Nur intelligente Terminals der oberen Klasse weisen 3D-Funktionalität als integrierten Bestandteil auf, so daß der Software in der Mehrzahl aller 3D-Anwendungen eine höhere Aufgabe bei der Emulation zukommt. GKS-3D ist inzwischen, so Peter Wicht von GTS-Gral, von der International Standards Organization (ISO) verabschiedet, nicht aber von anderen internationalen oder deutschen Normungsgremien.

Doch auch hier wird bei der Geräteentwicklung heute mehr auf Performance Wert gelegt, so daß von den Funktionen her durchaus Abweichungen gegenüber den Vorschlägen der Normen festgestellt werden können.

Hier legt die Industrie, so scheint es, zudem eine beschleunigtere Gangart ein, um die Ansprüche der Kunden zu erfüllen.

Neuere 3D-Terminals wie zum Beispiel das 5080 von IBM sind inzwischen so abgestimmt, daß selbst 3D-Anwendungen mit GKS auf dem Host fast in Realtime laufen, da die Intelligenz des Terminals die Durchführung der meisten Berechnungen vor Ort erlaubt und der Host nur Grobdaten liefert.

Hardware und Software-Entwickler arbeiten zusammen

Dennoch schreitet auch die Normierung fließend voran. So stehen bereits jetzt "PHIGS +" und "PHIGS ++" zur Festschreibung an; neuerdings steht auch X-11 in der Standardisierungsdiskussion. Auch an der zweidimensionalen GKS-Norm wird weiterhin aktiv gearbeitet.

Eines ist jedenfalls nach Expertenmeinung sicher: Hard- und Softwareentwickler sitzen in den gleichen Gremien, so daß die Trends zwischen Norm und Hardwareentwicklung nicht gegenläufig, auch wenn sie nicht als voll deckungsgleich zu bewerten sind.

Bei der technischen Realisierung steht bei heutigen komplexen Anwendungen die Performance eindeutig im Vordergrund ñ die Norm hingegen ist jedoch oft so angelegt, daß Funktionen möglichst breit abgedeckt werden. Diese Schere schließen die Anbieter häufig dadurch, daß firmwareseitig eine Aufteilung komplexer Grafikaufgaben in Einzelfunktion realisiert wird.

Softwareanbieter wollen Geräteunabhängigkeit

Gewandelt hat sich aber in den letzten Jahren auch das Käuferverhalten. So werden Eigenentwicklungen im grafischen Bereich fast nur noch in Großunternehmen oder Forschungsstätten durchgeführt.

Aus diesem Grund bildeten und bilden sich auf der Anbieterseite zwei Strömungen heraus: Systemlieferanten propagieren eine hohe Performanceleistung, die Softwarelieferanten hingegen legen Wert auf eine gewisse Geräteunabhängigkeit.

In der Vergangenheit wurde deshalb stark zwischen Kern der Software und Gerätetreiber unterschieden. Dieses Vorgehensweise wurde grundsätzlich von der Norm ñ mit dem Unterschied der Festschreibung der Emulation und Gerätetreiber ñ übernommen.

Hier tut sich die in der Datenverarbeitung übliche Schere auf: entweder Geräteunabhängigkeit mit Performanceeinbußen oder Schnelligkeit in enger Anlehnung an die Hardware. Mitunter leiden hier vor allem ältere, umfangreiche Pakete, die hardwareorientiert erstellt wurden. Sie wurden im Laufe ihrer Geschichte oft nur überarbeitet, ohne auf Normvorschriften besondere Rücksicht zu nehmen; sie sind aber dennoch auf Grund des eingearbeiteten Wissens funktional meist einwandfrei.

Aus Performancegründen ist zu beobachten, daß immer mehr Grafikfunktionen auch dieser älteren Pakete auf das intelligente Terminal gelegt werden. Miniaturisierung und Preisverfall im Mikrobereich führen dazu, hier umzustrukturieren.

Die Übereinstimmung der Standards mit der realisierten Firmware ist mittlerweile im 2D-Sektor weitestgehend gegeben; im 3D-Bereich, so die Aussage von Spezialisten, hingegen ist die ,ungenormte' Firmware weiter.

Die Anwendung bestimmt das System

Für den Neueinsteiger stellt sich deshalb die Frage, ob die Anwendung bereits fertig verfügbar ist oder programmiert werden muß.

Ist sie vorhanden, kann letztlich nur noch geprüft werden, welche Geräte von der Software gestützt werden, denn auch hier ergeben sich oft große Performanceunterschiede.

Bei eigener Programmierung erst ist von Bedeutung, welche Funktionen denn hauptsächlich für die Anwendung gebraucht werden, und ob diese dann auch im Gerät vorhanden sind. Und hier macht Schmitz auf eine interessante Entwicklung aufmerksam: Sehr viele Programme seien trotz der Basisstandards direkt auf die intelligenten Geräte zugeschnitten, um Performancevorteile bei hoher Funktionalität zu realisieren.

Doch solche Programme haben ihren Preis und oft stehen die Budgetvorgaben im Widerstreit zur Wunschliste der Anwender. Ein Trost kann den Entscheidern gegeben werden. Auch im Bereich der intelligenten Terminals wird das Preis/Leistungs-Verhältnis konsequent zugunsten des Käufers verändert.