Der GEM-Oldie von Digital Research läuft und läuft:

Eine Benutzeroberfläche für diverse Rechnerarchitekturen

18.08.1989

Die grafische Benutzeroberfläche GEM (Graphical Environment Manager) aus dem Hause Digital Research International (DRI) zählt zu den Benutzeroberflächen, die sich schon sehr lange auf dem Markt befinden. Entstanden aus dem Vorgängerprodukt GSX wurde GEM ab 1985 von Digital Research ausgeliefert. Seit dieser Zeit entwickelte sich GEM in zwei Richtungen fort. Zum einen wurde der Komfort der Bedienung sowie die Performance der GEM Systemsoftware und Applikationen verbessert. Zum anderen kann die GEM-Benutzeroberfläche unter den verschiedensten Betriebssystemen implementiert werden. Am populärsten sind wohl die Implementationen unter DOS, welche auf IBM- und kompatiblen PCs laufen, sowie die Portierung auf den mit dem Motorola 680X0-Prozessor ausgerüsteten Atari ST.

Neben diesen beiden Versionen existiert noch eine multitaskingfähige Variante namens X/GEM, die für das Multitasking/Multiuser-Echtzeitbetriebssystem FlexOS von DRI angepaßt wurde. Allen diesen GEM-Implementationen ist eines gemeinsam: Ein Anwender, der den Umgang mit GEM gelernt hat, kann zwischen diesen Betriebssystemen wechseln, ohne sich auf eine neue Bedienung der benutzten Softwareprodukte einstellen zu müssen. Dies ist ein Charakteristikum, das andere Soft- und Hardwarehersteller erst seit kurzem zu forcieren versuchen.

Die Bedienung von GEM ist, wie auch bei anderen grafischen Benutzeroberflächen, relativ einfach und beschränkt sich auf möglichst wenige Schritte, um ein bestimmtes Ziel zu erreichen. Selbstverständlich ist eine Maus zur Bedienung kaum wegzudenken, wenngleich alle Programme alternativ über die Tastatur steuerbar sind.

Sobald GEM gestartet wird, zeigt sich das sogenannte "GEM Desktop". Dieses Desktop ist eine auf das Betriebssystem aufgesetzte Benutzerschnittstelle, die Systemoperationen wie das Kopieren oder Löschen von Dateien in einfachster Form unterstützt. Dazu sieht man auf dem Bildschirm mehrere Fenster, die die Inhalte verschiedener Verzeichnisse der Festplatte beziehungsweise der Diskettenstationen anzeigen. Die Auflistung kann in grafischer Form erfolgen. Dann wird jede Datei als Symbol - ein sogenanntes Icon - dargestellt und mit einem Namen versehen. Die Anzeige kann aber auch als Textdarstellung erfolgen. Sie ähnelt in der Ausgabe der Form, wie sie durch den DlR-Befehl im DOS dargestellt wird. Beide Formen können nach verschiedenen Kriterien sortiert werden.

Bei einer Anzeige in der Art von Icons sind Vorgänge wie das Kopieren von mehreren Dateien sehr vereinfacht gegenüber einem befehlsorientierten Betriebssystem. Man stellt in einem Fenster das Verzeichnis dar, welches die zu kopierenden Dateien enthält, und in einem anderen Fenster das Verzeichnis oder Laufwerk, auf das die Dateien kopiert werden sollen. Dann klickt man mit der Maus die zu kopierenden Dateien an, und zieht sie auf das Zielfenster. GEM sagt dann, wieviele Dateien und Ordner (diese werden automatisch mitkopiert) kopiert werden und bestätigt mit OK, wenn das der gewünschte Vorgang ist. Haben Sie versehentlich zuviel oder zuwenig Daten selektiert, können Sie den Vorgang immer noch abbrechen.

Selbstverständlich kann diese Technik auch mit Anwendungsprogrammen eingesetzt werden, die sich nicht der grafischen Benutzeroberfläche bedienen. GEM erkennt anhand der Dateiendung (.COM, .EXE oder .APP) oder durch eine vom Benutzer getätigte Einstellung, ob es sich um eine GEM-Anwendung handelt, oder ob das zu startende Programm mit einer alphanumerischen Oberfläche arbeitet.

Alle Programme, die unter der GEM-Benutzeroberfläche laufen, haben im wesentlichen drei Dinge gemeinsam:

Erstens: Sie stellen am oberen Rand des Bildschirms eine Menüleiste dar, welche alle Befehle enthält auf die der Anwender zugreifen können soll. Dadurch ist immer gewährleistet, daß sich ein Anwender nicht im Befehlsdschungel verirrt. Eine Situation wie: "Was muß ich jetzt für eine Taste drücken, damit ich hier ungeschoren herauskomme", ist unter GEM nicht möglich. Hinzu kommt noch, daß Befehle, die momentan nicht sinnvoll sind, vom Anwendungsprogramm in der Menüleiste als inaktiv dargestellt werden.

Zweitens: Alle Bildschirmdarstellungen erfolgen in Fenstern. Diese können je nach Anwendungsart fest auf dem Bildschirm plaziert oder frei beweglich angeordnet werden und sind einstellbar. Diese Fenster können mit Rollbalken versehen werden, so daß eine Darstellung, die nicht voll in einem Fenster gezeigt werden kann, vom Benutzer in beliebigen Schritten verschiebbar ist.

Menüleiste als Wegweiser durch den Befehlsdschungel

Ein weiter Vorteil der Fenstertechnik ist auch, daß man mehrere Fenster gleichzeitig öffnen kann und diese sich auch überlappen dürfen. Unterschiedliche Informationen lassen sich so in verschiedenen Fenstern darstellen. Trotzdem behält man die Möglichkeit, alle Informationen gleichzeitig im Zugriff zu haben.

Drittens: Eingaben werden in sogenannten Dialogmasken gemacht. Diese Dialogmasken liegen als externe Dateien vor, die beim Start der Anwendung geladen werden. Dies hat den Vorteil, daß die Masken nicht Bestandteil der Anwendung sind und somit mit relativ wenig Aufwand in andere Sprachen übersetzt werden können. Die Dialogmasken-Technik beschränkt sich jedoch nicht auf die Option purer Texteingabe. Sie bietet vielmehr auch die Möglichkeit, eine Auswahl von beliebigen Anwendungen über die Maus auszuführen. Die Frage: "Abbrechen, Sichern oder Beenden?" wird nicht durch Eingabe der Buchstaben A, S oder B beantwortet, sondern durch Klick auf den entsprechend einer Aktion zugeordneten Knopf.

Durch die Tatsache, daß sich die Anwendungsprogramme an verschiedene Vorgaben zu halten haben, ist es GEM möglich, auch in bestimmten Situationen in das Geschehen einzugreifen. Ein Beispiel dafür sind die sogenannten "GEM-Accessor"-Zusätze zur gerade laufenden Anwendung. Diese können vom Anwender aktiviert werden, indem er den entsprechenden Eintrag in der Menüleiste anwählt. Das Menü, welches die Accessoryeinträge enthält, ist ein spezieller Teil der Menüleiste, welcher bei allen Anwendungen gleich ist. Dieser Menüteil befindet sich immer am rechten äußeren Rand der Menüleiste. GEM bietet standardmäßig drei dieser Softwarehelfer.

Da ist zum einen ein Taschenrechner. Dargestellt in einem Fenster kann dieser sowohl über die Maus als auch über die Tastatur bedient werden. Ein nützliches Beiwerk, wenn man während der Erstellung eines Briefes kurz Preise oder ähnliches kalkulieren will. Als zweites Accessory stellt GEM eine Digitaluhr mit eingebautem Wecker zur Verfügung. Nummer drei in dieser Gruppe ist ein Druckerspooler. Hierbei handelt es sich um ein kleines Programm, das Dateien im Hintergrund ausdruckt, ohne den gesamten Computer zu blockieren.

Anwendungen beinhalten zum Teil weitere Accessories, die zu verschiedensten Zwecken eingesetzt werden können. So enthält beispielsweise "1st Wordplus" ein Accessory zum "Abfotografieren" des momentanen Bildschirms in eine Datei.

Bestandteile einer Grafik als Befehle gespeichert

GEM enthält einen Mechanismus, um Ausgaben auf Drucker, Plotter oder Kameras zu bewerkstelligen. Hier ist es der GEM-Systemsoftware überlassen, ein Ausgabegerät zu bedienen. Dazu benutzt "GEM Output" - das Programm, mit dem sämtliche Ausgaben durchgeführt werden - bestimmte Treiber, die die Schnittstelle von GEM zu der entsprechenden Hardware darstellen. Dadurch können viele Probleme, die sich im Umgang mit unterschiedlichen Datenformaten und unterschiedlichen Ausgabegeräten ergeben, leicht umgangen werden. Zum einen müssen die Anwendungsprogramme keine große Anzahl von Druckern als Option bereithalten. Zum anderen wird der Wildwuchs der Dateiformate eingedämmt.

Für ein gutes Anwendungsprogramm reicht es vollkommen aus, seine Dateien in einem der für GEM verständlichen Formate abzuliefern. "GEM-Output" mit seinen Treibern erledigt dann alles weitere, um einen Ausdruck auf dem jeweiligen Gerät auszugeben.

Von den erwähnten GEM-Dateiformaten gibt es drei, die unterschiedlichen Zwecken dienen. Das Metafile (Endung .GEM) enthält Vektorgrafiken, die als Zeichenbefehle abgespeichert werden. Es werden also alle Bestandteile einer Grafik wie Kreise, Linien, gefüllte Flächen sowie Texte als numerierte Befehle abgespeichert. Das hat den Vorteil, daß die enthaltenen Befehle nicht an die Auflösung eines Ausgabegerätes gebunden sind.

Das zweite Ausgabeformat ist ein Pixelformat (Dateiendung .IMG). Hier werden nicht Vektoren abgespeichert, sondern das Pixelmuster der erstellten Grafik. Im Unterschied zum Vektorformat speichert der Rechner hier Inhalte eines Bildschirms ab, die - ausgegeben auf den Drucker - entweder ein verfälschtes Größenverhältnis haben, oder aber durch die Umrechnung auf eine andere Punktdichte an Kontur verlieren. Dieses Format hat außerdem noch den Nachteil, daß immer das ganze Bild abgespeichert werden muß, was mit hohem Speicherbedarf für die so erstellten Dateien bezahlt werden muß.

Das dritte GEM-Standarddateiformat ist ein reines Textformat (Dateiendung .OUT). In diesen Dateien wird ASCII-Text abgelegt, der durch spezielle Kommandos mit Attributen wie Fettdruck, kursiv oder unterstrichen versehen werden kann. Für die Möglichkeit der Grafikeinbindung auch in dieser Ausgabeform existiert ein Kommando, das es erlaubt, eine Datei vom Typ IMG oder GEM innerhalb einer OUT-Datei auszudrucken. Es gibt kaum eine Darstellungsform die sich mit diesen Formaten nicht ausgeben ließe. Wenn eine Anwendungssoftware unter GEM eines dieser drei Formate unterstützt, erledigt die Benutzeroberfläche die weitere Ausgabe der erstellten Daten.

Zu den Anwendungen, die bereits unter GEM existieren oder die in naher Zukunft erscheinen werden, könnte man einen eigenen Artikel, wenn nicht sogar ein kleines Buch schreiben. Mit vorsichtigen Schätzungen (DOS, TOS und FlexOS) kommt man auf rund 2000 Anwendungen, die unter GEM laufen.

Wegen der Vielzahl von unterschiedlichen Anwendungen scheinen grafische Benutzeroberflächen besonders auch für Grafikanwendungen prädestiniert zu sein. Textverarbeitungen und Datenbanken profitieren genauso von GEM wie Auftragsverwaltungen und Tabellenkalkulationen.

Weil GEM mittlerweile auf unterschiedlichsten Betriebssystemumgebungen läuft, verringert sich naturgemäß auch der Aufwand bei der Softwareentwicklung . Softwarehäuser müssen sich nicht mehr um Grafikkartenmodi kümmern oder ob der Anwender einen Farbdrucker hat oder nicht.

Wenn die GEM-Anwendung unter Einhaltung von einigen Konventionen programmiert wurde, sind dies Probleme untergeordneter Bedeutung.