Terminalemulation

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Terminal-Emulator)
Wechseln zu: Navigation, Suche

Eine Terminalemulation ist ein Computerprogramm, das die Funktion eines Terminals nachbildet. Terminalemulationen können auf dem Personal Computer in einem Fenster oder wie bei einem Terminal die ganze Bildschirmfläche verwendend angezeigt werden.

Die Benutzerschnittstelle ist meistens textorientiert. Durch Escape-Sequenzen kann die Zeichenkodierung umgeschaltet und damit auch grafische Symbole dargestellt werden.

Die Plattform, auf der die Emulation stattfindet, muss also mindestens die Möglichkeit zur Aus- und Eingabe von Zeichen (z. B. ASCII) bieten. Die am häufigsten verwendete Plattform ist eine grafische Benutzeroberfläche. Eine Terminalemulation gebraucht man heute, um alte textorientierte Programme mit einer neueren grafischen Bedienoberfläche benutzen zu können, oder für neue Programme, die auf grafische Ein-/Ausgabe verzichten.

Textanwendung ↔ Terminalemulation ↔ grafische Oberfläche
    shell     ↔       xterm       ↔         X11

Architektur[Bearbeiten]

Eine Terminalemulation ermöglicht die Interaktion mit einem textorientierten Programm innerhalb einer grafischen Benutzeroberfläche. Sie macht das Arbeiten mit Programmen möglich, die die Grafikschnittstelle nicht direkt zur Ausgabe benutzen (z. B. weil sie programmiert wurden, als es für die benutzte Hardware noch keine Grafikschnittstelle gab, oder weil es einfacher ist, Ausgaben über die Textschnittstelle abzuwickeln). Dem textorientierten Programm stellt es sich als Text-Terminal dar (daher der Name), und der Grafikschnittstelle als grafikfähiges Programm.

Funktionsweise[Bearbeiten]

Eine Terminalemulation übernimmt dieselbe Aufgabe, die die Hardware eines Terminals und die diesem auf dem Großrechner zugeordnete Software bewerkstelligen. Allerdings ist die Emulation ein normaler Prozess des Betriebssystems, der durch die CPU des PCs ausgeführt wird, statt eines Programms, gespeichert im ROM des Hosts und ausgeführt durch dessen CPU. Dabei wird die Ausgabe eines textorientierten Programms von der Terminalemulation analysiert und in Operationen einer Grafikschnittstelle (z. B. X11) umgesetzt.

Tastatureingaben in das Terminal-Fenster werden dabei an den Prozess geschickt, der innerhalb der Emulation ausgeführt wird. Dabei handelt es sich meistens um einen Kommandozeileninterpreter. Dem Kommandozeileninterpreter wird durch ein Pseudoterminal vorgegaukelt, mit einem Terminal verbunden zu sein, die Master-Seite des Pseudoterminals ist aber mit dem Prozess der Terminalemulation verbunden, statt zum Beispiel mit einer seriellen Schnittstelle.

Beispiele[Bearbeiten]

Programme, die eine lokale Anbindung an den Großrechner voraussetzen:

Programme, die für den Fernzugriff gedacht sind:

  • HyperTerminal (in älteren Windows-Betriebssystemen enthalten)
  • PuTTY (für Windows und Unixartige Systeme)
  • Telnet-Clients

Historie, Sinn, Zweck, Perspektive[Bearbeiten]

Eine Terminalemulation ist ein Computerprogramm, das einen an einem Großrechner angeschlossenen „intelligenten“ Rechner ersatzweise wie ein Terminal verhalten lässt. Für den Großrechner stellt es dabei nur ein Datenendgerät ohne Eigenintelligenz dar. Der Ersatz kann sich im einfachen Fall rein auf die Textfunktionalität beziehen, kann aber auch die Grafikfunktionen von graphischen Terminals im komplexeren Fall ersetzen.

Wichtige Terminals an größeren sternförmig verkabelten Rechnersystemen waren die 3270-Serie von IBM und im Bereich der Midrange-Rechner die VT-Terminals von DEC. Die anfangs teuren PCs waren zunächst sinnvoll nur im Zusatznutzen auch als Terminals an größeren Rechnern einsetzbar, u. a. um Platz zu sparen, und um lokal auf dem PC veränderte Daten und Programme auf den großen Rechner zu transferieren. Hierzu waren die Terminalemulationsprogramme über die reine Terminal-Ersatzfunktion mit einigen Zusatzfunktionen hinaus versehen, um diesen Datentransfer in beide Richtungen zu bewerkstelligen, also Daten zum Großrechner zu schieben (upload), oder von ihm Daten sich herzuholen (download).

Konkrete Beispiele: die „einfachen“ DEC-Terminals waren das VT52 und das VT100 (VT = video terminal, Sicht-Endgerät). Diese Terminals erlaubten „nur“ alphanumerischen Befehlsdialog und Daten-Ein- und -Ausgabe. Mit einem ergänzenden Zeichensatz im Terminal, auf den per Befehlssequenz vom Rechner umgeschaltet werden konnte, war es dann auch möglich, eine einfache „Klötzchengrafik“ (ähnlich dem bekannten Spiel Pacman) zu nutzen. Auch die neueren Terminals VT200 und VT220 erlaubten keine bildschirmfüllende Pixelgrafik, sie erlaubten aber, beliebige Zeichensätze in das Terminal zu laden.

Die ersten „richtigen“ Grafik-Terminals von DEC waren das VT240 (einfarbig, gelbe oder grüne Buchstaben und Pixel) und das VT241. Parallelversetzt mit der erweiterten Grafik-Funktionalität von PCs zogen dann auch die Hersteller der Terminalemulationsprogramme nach: Die ersten Programme erlaubten es, mit dem PC ein VT52 oder VT100 zu ersetzen. Mit der Hercules-Grafik und dem VGA-Standard dann wurden erweiterte, auch zunächst teurere Programme vertrieben, die den PC befähigten, zusätzlich ein grafikfähiges VT240 oder VT241 nachzuahmen. Insbesondere wurden terminalemulierende Rechner zum Problem der Anbieter reiner Grafikterminals, wie Tektronix. Mit immer größeren Bildschirmen (XGA-Standard, 1024×768 Punkte, oder dann 1280x1024 Punkte), 17"- und 19"-Monitoren starben die großen „dummen“ Terminals aus.

1985 kostete eine Grafikstation für das DEC VAX- basierende CAD-System MEDUSA ca. 145.000 DM, mit einem 19"-Bildschirm, einem Eingabetablett und einem Alphaschirm für den Befehlsdialog. Man beachte: Eine Grafikstation, die „dumm“ war, die noch die „Intelligenz“ des über Kabel angeschlossenen VAX-Rechners zusätzlich benötigte, deren Rechenleistung anteilig für mehrere Stationen nochmals in ähnlicher Größenordnung kostete, somit ca. 300.000 DM Gesamtkosten für den Betrieb eines einzigen Arbeitsplatzes verursachte. Dies war in der Zeit, in der gut verdienende Techniker und Ingenieure wieder in Schichtarbeit gingen, um ca. 16 Stunden am Tag diese teuren Einrichtungen zweischichtig zu nutzen, um sie so besser auszulasten.

Mit dem Aufkommen immer preiswerterer PCs und der entsprechenden Software (z. B. AutoCAD) hatten solche teuren Stationen und Systeme immer weniger Chancen am Markt.

Als die Preise für PCs immer weiter sanken, verschwanden allmählich die echten Terminals von der Bildfläche. Heutzutage werden nur noch äußerst selten reine Terminals zur Benutzerinteraktion am Arbeitsplatz eingesetzt. Die heute bekannten, reinen Terminals im Wortsinne als „Endgeräte“ der Datenverarbeitung sind für Spezialfunktionen wie Kassensysteme und Bankautomaten eingesetzt.

Zusätzlich zur Emulationssoftware wird am PC meist noch die elektronische Transfer-Funktionalität in Hardware benötigt, also sich über eine Schnittstelle und eine Kabelverbindung elektrisch identisch wie ein Terminal zu präsentieren. In der Anfangszeit war das vor allem die serielle Schnittstelle (für die VT-Emulation) oder eine spezielle Steckkarte zum IBM-Anschluss über Koaxialkabel.

Heutzutage existieren Terminalemulationen zumeist als Zusatzsoftware in PC-Netzwerken, um die oftmals immer noch bestehenden Großrechnersysteme auch im Nebennutzen (neben den PC-Zwecken) noch ansprechen zu können. Der Hauptzweck verlagert sich jedoch immer mehr auf die vernetzten Rechensysteme selbst, oder auf Client-Server-Systeme wie SAP R/3 u. Ä.

Die Nutzung der Terminalemulationen bei der Administration von Geräten ohne eigene Benutzerschnittstellen (Router, Switches, ...) wird darüber hinaus weiter Bestand haben.

Terminalemulationen stellen somit einen Baustein des Übergangs von der sternförmigen Großrechner-Technologie zu vernetzten Rechner-Netzwerken dar.

Weblinks[Bearbeiten]

 Commons: Terminalemulationen – Sammlung von Bildern, Videos und Audiodateien