Linux/Terminal

Aus Foxwiki

Linux/Terminal - Beschreibung

Beschreibung

Beispiele


Anhang

Siehe auch

Links

Weblinks
  1. https://de.wikipedia.org/wiki/Terminalemulation
  2. https://de.wikipedia.org/wiki/Terminal_(Computer)


TMP

Dieser Artikel|erläutert das Gerät (Hardware), für das Betriebssystem-Element siehe Terminalemulation (Software)

Serielles Text-Terminal TeleVideo 925
Sperry-UNIVAC UNISCOPE 200 für koaxialen Anschluss

Ein Terminal, auch als Konsole eines Computers oder traditionell im deutschen Sprachgebrauch als Datensichtgerät bezeichnet, ist ein Endgerät zur Eingabe und Anzeige von Daten.

Terminals wurden entwickelt, um die vormals an Großrechnern eingesetzten Fernschreiber zu ersetzen. Die Abkürzung tty des englischen Worts für Fernschreiber „teletypewriter“ ist noch heute in Unix- und Linux Betriebssystemen und entsprechender Software allgegenwärtig.

Während in der Frühzeit noch den Fernschreibern vergleichbare Geräte – bezeichnet als „Hardcopy-Terminals“, bestehend aus einem Drucker und einer Tastatur – in Gebrauch waren, bestand der Vorteil von Terminals später darin, dass ein Bildschirm für die Wiedergabe der Daten eingesetzt wurde. Bessere Geräte konnten und können nicht nur sequentiell Zeilen ausgeben: Mit einem beliebig manövrierbaren Cursor konnte Text in jeder Zeile eingegeben und verändert werden.

Die ab etwa 1977 allmählich einsetzende Verbreitung der Personal Computer hat die Terminals mittlerweile aus den meisten Büros verdrängt. Viele Terminals sind durch Terminalemulationen ersetzt worden, die auf einem PC laufen. Bis heute sind Terminals aber in einigen Bereichen verbreitet.

Geschichte

Als Vorstufe und Terminal-ähnliche Benutzerschnittstelle besaß die 1941 vorgestellte Zuse Z3 eine Tastatur mit Lampenfeld für die Ein- und Ausgabe von Zahlen.[1] In den 1960ern wurden als örtlich vom eigentlichen Computer getrennte Benutzerschnittstellen Fernschreiber wie der ASR-33 und Friden Flexowriter eingesetzt. Im Jahre 1969 begann der Verkauf des mit einem Bildschirm versehenen Datapoint 3300, das die Fernschreiber ersetzen sollte und als glass TTY bzw. glass teletype, also Glas-Fernschreiber (Glas für Bildschirm) bezeichnet wurde.

Verbindungen

Für die Verbindung zwischen Terminal und Computer gab es einerseits (abgeleitet vom Fernschreiber) die serielle Schnittstelle in den beiden Varianten als RS-232-Schnittstelle (genormt in EIA RS-232 oder CCITT V.24) oder vor allem in industriellen Anwendungen als 20-mA-Schnittstelle, die als DIN 66258 genormt war und sich in einem Teil des Marktes als De-facto-Standard etabliert hatte. Andere Hersteller, darunter der Marktführer IBM, verwendeten proprietäre Schnittstellen.

Ursprünglich wurden Terminals immer direkt an den Computer angeschlossen, der mit entsprechend vielen Schnittstellen ausgestattet sein musste. Später gab es dann verschiedenste Lösungen, um mehrere Terminals über eine gemeinsame Leitung anzuschließen, was besonders im Falle entfernt liegender Büros wirtschaftlich geboten war. IBM konnte auf der Basis eines proprietären Protokolls innerhalb der Systems Network Architecture Terminals anschließen, DEC setzte dafür DDCMP ein.

Bei größeren Entfernungen fand auch das standardisierte Protokoll X.25 Verbreitung.

Mit der Einführung lokaler Netzwerke, etwa auf der Basis Ethernet, gab es dann weitere Anschlussmöglichkeiten für Terminals, von denen sich letztlich nur die, welche das Internetprotokoll verwenden, durchgesetzt haben. Durch die Einführung des Internets ist dann ein einheitlicher Anschluss lokaler und entfernt aufgestellter Terminals möglich geworden.

Ausführungen

Terminals sind in der Regel einfache Computersysteme zur Ein- und Ausgabe, die mit einem speziellen Funktionsumfang ausgestattet werden, der auf ihren jeweiligen Einsatzzweck abgestimmt ist.

Man unterscheidet zwischen Text- und Grafikterminals. Erstere können nur die Zeichen und Buchstaben eines bestimmten Zeichensatzes (häufig ASCII) darstellen, die in einer Matrix von meist 80 Spalten (so viel wie Lochkarten hatten) und 24 oder 25 Zeilen angeordnet werden.

Die deutlich aufwendigeren Grafikterminals wurden vornehmlich von Tektronix entwickelt. Sie waren der Vorläufer der heute verwendeten pixelorientierten Hardware. Allerdings gab es im Gegensatz zu heute auch vektororientierte Terminals, bei denen der Elektronenstrahl in der Kathodenstrahlröhre frei programmierbar war. Es wurde das Bild also nicht aus einem Speicher (heute: Grafikkarte), der sehr teuer war, ausgelesen und Zeile für Zeile und Pixel für Pixel auf den Schirm übertragen, sondern die Linien wurden direkt auf die Leuchtstoffschicht („Phosphor“) geschrieben, wobei im Speicher nur Koordinaten der Linien vorzuhalten waren. Hierfür wurden meistens Speicherbildröhren verwendet.

Im praktischen Sprachgebrauch werden heute fast alle Datenendgeräte, an denen Benutzer irgendetwas eingeben können, als Terminal bezeichnet, wie auch die Liste der Beispiele unten zeigt. Ein Pseudoterminal ist ein virtuelles Computerterminal in Unix- oder Linux-Systemen zur Ein- und Ausgabe von Daten, das es ermöglicht, dass ein Programm ein anderes Programm steuert, als wäre es ein Benutzer.

Beispiele für Terminals:

Branchenspezifische Terminals:

Weblinks

Vorlage:Commonscat

Terminalemulation

Ein Original VT100 Terminal
Die Terminalemulation Putty läuft unter Windows und emuliert ein Terminal das mit einem Linux-Computer verbunden ist

Eine Terminalemulation ist ein Computerprogramm, das die Funktion eines Computer-Terminals nachbildet. Sie wird genutzt, um textbasierte Programme innerhalb einer grafischen Benutzeroberfläche verwenden zu können.[2][3]

Vor dem Aufkommen der PCs war es üblich, auf Großrechner (Mainframes) über Terminals zuzugreifen. Terminals sind Hardwaregeräte bestehend aus Bildschirm und Tastatur, die es ermöglichten Daten in den Zentralcomputer einzugeben, bzw. anzuzeigen. Später wurden sie auch genutzt, um Programme, die am Großrechner liefen, direkt zu bedienen.[4][5] Beispiele von Terminals sind IBM 3270 oder VT100.

Diese Geräte waren zwar billiger als der Großrechner, trotzdem aber teuer und platzraubend. Da nun mit dem Aufkommen der Personal Computer in den 1980er Jahren Geräte mit Monitor und Tastatur verfügbar waren, lag es nahe, die Funktion der Hardware-Terminals durch Programme zu ersetzen, die auf PCs liefen, so dass der PC neben seinen anderen Aufgaben (wie Textverarbeitung usw.) die Funktion des Terminals mit übernehmen konnte.[6] Diese Programme werden als Terminal-Emulatoren bzw. Terminalemulation bezeichnet.

Historie

In der Anfangszeit der IBM PC gab es eine Reihe von Terminal-Emulatoren, die unter MS-DOS liefen, wie z. B. Telix, Telemate oder Crosstalk.[7]

Mit dem Beginn der grafischen Benutzeroberflächen Windows kam eine Reihe weiterer Programme hinzu, die unter Windows bzw. OS/2 liefen.[8]

Gleichzeitig entstand im Unix-/Linux-Bereich das Programm xterm, das unter der grafischen Benutzeroberfläche X11 läuft. Da Unix ursprünglich ein Betriebssystem für Zentralcomputer war, ist das Prinzip, auf so ein System über ein Terminal zuzugreifen, für Unix/Linux-Systeme essenziell.[9]

Heutzutage gibt es eine unüberschaubare Vielzahl von Terminal-Emulatoren für Windows, Linux und macOS.[10] Putty ist eines der bekanntesten und beliebtesten Programme[11] und verfügbar unter Windows, Linux und macOS.[12]

Architektur

Die Kommunikation zwischen Zentralcomputer und Terminal basiert auf einem Datenstrom, bei dem in die tatsächlich anzuzeigenden Daten noch Steuersequenzen eingefügt werden, die es erlauben, diese Daten am Bildschirm zu formatieren oder zu platzieren. Bei Terminals wie VT100 geschieht das durch Sequenzen mit dem Zeichen ESC und bestimmten darauf folgenden Codes der sog. Escape-Sequenz. Beispielsweise würde die Zeichenfolge ESC [ 2 J auf einem VT100 Terminal den Bildschirm löschen oder ESC [ 5 m auf einem VT100 Terminal den folgenden Text blinkend darstellen.[13][14] Das Erkennen und Bearbeiten dieser Sequenzen und entsprechende Darstellung der Daten ist Aufgabe der Hardwareterminals. Es gibt verschiedene Standards dieser Terminal-Steuersequenzen, diese variieren je nach Hersteller. Eine davon ist z. B. als ANSI-Escapesequenz X3.64 bekannt.[15][16]

Eine Terminalemulation stellt sich gegenüber einem textbasierten Programm als ein Computer-Terminal dar (daher der Name). Es ist ein Emulator in dem Sinne, dass es dem textbasierten Programm den Eindruck vermittelt, es sei mit einem Computer-Terminal verbunden, weil es die gleiche Aufgabe übernimmt.[17]

Andererseits stellt sich eine Terminalemulation gegenüber der grafischen Oberfläche als ein grafikfähiges Programm dar. Somit stellt eine Terminalemulation einen Vermittler dar – zwischen einer Textanwendung und einer grafischen Oberfläche.[18]

Eine weitverbreitete Terminalemulation ist xterm, die unter der grafischen Oberfläche X11 läuft. In ihr kann ein zeichenorientiertes Programm gestartet werden – meist eine Kommandozeilen-basierte Shell oder eine zeichenorientierte Anwendung („Textanwendung“).

Die Programme interagieren wie folgt:

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