Linux/Terminal
Linux/Terminal - Beschreibung
Beschreibung
Beispiele
- xterm, Gnome Terminal, Konsole – Terminalemulationen zum Zugriff auf unixoide Systeme wie zum Beispiel GNU/Linux
- Terminal – Terminalemulation von macOS
- Windows Terminal, cmd.exe – Terminalemulationen unter Windows
- Reflection Desktop von Walker, Richer, Quinn (WRQ) – Terminalemulation zum Zugriff auf Rechner von IBM und HP.
- HP TeemTalk – Terminalemulation zum Zugriff auf Rechner von HP Inc.
Anhang
Siehe auch
Links
Weblinks
TMP
Dieser Artikel|erläutert das Gerät (Hardware), für das Betriebssystem-Element siehe Terminalemulation (Software)
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:
- virtuelle Terminals als Textkonsolen für Unix-Rechner
- ASCII-Terminals wie VT100 von DEC oder ADM-3A von Lear Siegler
- IBM-3270-Terminals
- IBM-5250-Terminals für den Zugriff auf IBM iSeries beziehungsweise IBM AS/400
- X-Terminal
- Btx-Terminals
Branchenspezifische Terminals:
- Selbstbedienungsterminals
- Electronic Cash Terminals
- Kassenterminals
- Terminals zur Betriebsdatenerfassung
Weblinks
- Linus Åkesson: The TTY demystified
Terminalemulation
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
- ↑ Lippe, Prof. Dr. Wolfram. "Kapitel 14 - Die ersten programmierbaren Rechner
- ↑
- ↑ Definition of Terminal Emulator
- ↑ Lexikon Hardware Aktuell: Computer-Terminals
- ↑ IT-Wissen: Terminal
- ↑ Glossar Terminal-Emulation: Emulation eines Terminals auf einem Personal Computer
- ↑ Crosstalk Communicator Terminal Emulator, Internet Archive (englisch)
- ↑ OS/2 Site, Liste Kommunikationsprogramme (englisch)
- ↑ Linux Terminal, Shell, Console (engl)
- ↑ Sourceforge: Liste von Terminalemulationen für Windows (englisch)
- ↑ Alternative-To: Putty Likes und Alternativen (englisch)
- ↑ Putty Homepage, Downloads (englisch)
- ↑ VT100 Escape Codes (englisch)
- ↑ ANSI/VT100 Terminal Control Escape Sequences (englisch)
- ↑ Vt100.net ANSI X3.64 Standard
- ↑ FIPS-pub: Additional Controls For Use With American National Standard Code for Information Interchange (pdf, engl.)
- ↑ Gabler Wirtschaftslexikon, Terminalemulation
- ↑