Frage Warum ist ein virtuelles Terminal "virtuell" und was / warum / wo ist das "echte" Terminal?


Ich hoffe, die Frage ist selbsterklärend.

Mein Verständnis ist das gnome-terminal und konsole sind virtuell Terminals, und sie dienen grundsätzlich demselben Zweck, d. h. einer Befehlszeilenumgebung für verschiedene optionale Befehlsinterpreter. (Ich bin mir nicht einmal sicher, ob das der richtige Weg ist, es zu betrachten.)

Ich nehme an, dass das echt Terminal ist, wo ich gelegentlich durch Fehleingabe teleportiert wird Strg+Alt+F1,F2, etc.

Aber "Da sind die Drachen" in diesem schwarzen Hinterland, also bin ich so schnell draußen, wie ich drücken kann Strg+Alt+F7 (Ich habe das irgendwo gelernt: "Wenn alles schwarz und dunkel ist: drücke die geheimen Schlüssel, um zurückzukehren :)

  • Ist / sind die "echten" Endgeräte die hinter dem Strg+Alt+F1,F2usw. Schlüssel?
  • Und was ist so "echt" an ihnen gegenüber den "virtuellen"?
  • Und wie unterscheiden sie sich? Ist es so einfach wie "keine GUI" vs "GUI"?

P.S. sind "console" und "terminal" auch?


149
2017-11-21 11:34


Ursprung


Fürchte die Befehlszeile nicht. Es kann dein Leben um vieles einfacher machen, wenn du mit ihm vertraut bist. - Larry Coleman
Verbunden: superuser.com/questions/96628/ ... - Matthew
@Larry: Ermutigt durch deine Worte, wagte ich mich in die Höhle des Drachen (Strg + Alt + F1), und ich logierte tatsächlich dieses Mal ein! ... Es war Stille .. aber ich konnte meine angepasste Terminal-Eingabeaufforderung sehen (vom Land aus von X) .. Interessant dachte ich, und fühlte sich mutig enoght, um die Bestie zu rufen: Ich sagte "Echo $ TERM" ... und siehe da! es sprach zu mir zurück! Es hieß "linux" ... Sofort wurde mir klar, dass er ein Cousin von "gnome-terminal" und "konsole" ist, der "xterm" antwortet. Es ist also kein Drache, sondern ein virtuelles Terminal Emulieren eines Linux (echten) Terminals. - Peter.O
Hab keine Angst vor der Linux-Konsole: Er ist ein sehr mächtiger und doch gezähmter Drache, und er ist dein bester Freund, wenn Compiz abstürzt;) - MestreLion
Außerdem kannst du ihn einen Cousin von nennen gnome-terminalSchließlich dienen beide dem gleichen Zweck. Ein Cousin, der von keiner grafischen Umgebung abhängig ist und mit einem Gerät verbunden ist, das ihm etwas mehr Macht verleiht. - MestreLion


Antworten:


Meines Erachtens dienen virtuelle Terminals grundsätzlich demselben Zweck:   dh. Eine Befehlszeilenumgebung für   verschiedene optionale Kommandointerpreter

Dies ist nicht streng zutreffend. Virtuelle Terminals sind lediglich Programme, die Tastenanschläge senden und eine Ausgabe (das heißt Standard In, Standard Out [und Standard Error]) an einen Prozess im Hintergrund senden. Dies ist eine Grundvoraussetzung Eingang → wird bearbeitet → Ausgabe System und ist das Herzstück Ihres Betriebssystems.


Ein Fernschreiber (oder Fernschreiber)


Mann, der an einem Computer-Terminal arbeitet

Mal sehen, ob ich es richtig erklären kann:

In einem Unix-ähnlichen System wie Linux gibt es das Konzept von "Alles ist eine Datei". Das heißt, Ihr DVD-Laufwerk ist beispielsweise eine Datei (/ dev / sdb1), Ihre Tastatur ist eine Datei (/ dev / input / keyboard) und so weiter.

Ein weiterer Satz dieser magischen Dateien sind die TTYs, wobei TTY für Teletype steht. Eine Schreibmaschine, die Tastenanschläge an einen Computer sendet, der seinerseits wiederum Buchstaben an die Geben Sie Ball ein. Dies hätte ein physisches Gerät, eine entfernte Schreibmaschine, genauso dargestellt, wie / dev / lp0 Ihren Drucker darstellt.


  Ein Hardware-Terminal, der VT100

Die Teletype-Workstations würden "Konsolen" oder "Terminals" genannt werden, ein virtuelles Terminal, im Gegensatz zu einem echten, also jede Anwendung oder Maschine, die die gleiche Funktionalität wie diese Arbeitsplatzanordnung bietet - die auf den Computer durch Senden von Tastenanschlägen zugreift dazu und empfange die Ausgabe von ihr zurück und drucke sie auf ein Stück Papier. Sie können sich vorstellen, dass ein Modem sehr ähnlich funktioniert.

Terminals, wie die oben abgebildete, sind billige und einfache Computer, die emulieren, nacheifern die Funktionalität eines Fernschreibers. Wenn wir heute Terminalemulator sagen, meinen wir im Umkehrschluss meistens ein Programm, das die Funktionalität einer solchen Maschine nachbildet.

Es gibt immer noch Terminal-basierte Computersysteme im Einsatz. Sie werden tatsächlich bekommen immer beliebter. In der Vergangenheit war der Grund für Terminals, dass ein Computer an jedem Schreibtisch völlig lächerlich war - wo Computer einen Raum füllten und immens teuer waren. Jetzt spart es Geld und vereinfacht die Administration.


ein "Thin Client" - das moderne Pendant zum VT100

Ich hoffe, dass dies hilfreich ist. Bitte warne mich, wenn ich einen Fehler gemacht habe.


Bedeutet das, dass?   Control-Alt-F1, F2 usw. sind ebenfalls virtuell   Terminals und der einzige Unterschied   zwischen ihnen und "gnome-terminal" /   "konsole" ist, dass sie keine haben   GUI?

Ja, grundsätzlich. Der Unterschied zwischen TTY1-7 und gnome-terminal besteht darin, dass das System die ttys bereitstellt, während gnome-terminal und konsole selbst auf einem tty laufen (auf dem das grafische Subsystem läuft). Diese Abstraktion kann noch tiefer verschachtelt werden (z. B. x-Weiterleitung, wobei das Telnet-Protokoll verwendet wird, um als Endgerät zu fungieren, ...), schließlich Mensch-Computer-Schnittstelle verhält sich wie jede andere Datei. Und kann auf die gleiche Weise piped, abstrahiert und bewegt werden.


124
2017-11-21 13:53



War deine Antwort hilfreich? ...Absolut!! ... sehr gut erklärt ... Ich hätte nie eine Tastatur als Datei gesehen, aber es macht Sinn (eine Nur-Lese-Datei) ... und ein "Thin Client" ist ein Begriff, von dem ich gehört habe einige Podcasts, aber es ging einfach über meinen Kopf und ich dachte, es bezieht sich auf eine neue CPU-Architektur (a-la RISC) .. aber es bedeutet tatsächlich, dass gute Ideen nicht weggehen, und dass CICS (oder zumindest seine Nachkommen ) ist noch am Leben und gesund ... sehr interessant ... Danke (jetzt habe ich ein bisschen mehr zu lesen ... du hast etwas angefangen :) - Peter.O
Dies ist ein bisschen Zufall und hat nicht viel mit Linux zu tun, aber nichtsdestotrotz: Wenn Sie einige der Grundlagen, wie ein Computer tatsächlich funktioniert, hören möchten, hören Sie zu twit.tv/sn - Episoden 233, 235, 237, 239 und 241. Eine Serie über "wie Computer von den absoluten Grundlagen arbeiten", wobei Basic "Low Level" bedeutet. Nicht viele Leute kennen dieses Zeug, das macht viel Spass. - Stefano Palazzo♦
@TokiTahmid hoppla! Korrigiert, Vielen Dank. Es war nicht beabsichtigt, nur ein Fehler :) - Stefano Palazzo♦
Ich erinnere mich, dass der VT-100 als (Video-) Terminal und nicht als virtuelles Terminal oder Terminal-Emulator betrachtet wurde. Viele Geräte, die ihre eigenen Mikroprozessoren enthielten, wurden als Endgeräte betrachtet, unabhängig von anderen Geräten, die sie emulierten, solange sie so konzipiert waren, dass sie einem Benutzer direkt Eingabe und Ausgabe ermöglichten. Wenn die Computer / Mensch-Schnittstelle in Software auf einem Gerät implementiert ist, das nicht als Endgerät vorgesehen ist, würde ich diese Schnittstelle oder Software als virtuelles Endgerät bezeichnen. Der Zweck des gesamten Geräts ist der Unterschied, nicht die Technologie und das verwendete Kommunikationsprotokoll. - John S Gruber
@JohnSGruber Ihre Erinnerung ist richtig, das VT100 und seine Verwandtschaft sind "Video" -Terminals, um sie vom papierbasierten TTY, dem obersten Foto in dieser Antwort, zu unterscheiden. Die drei Vorteile eines VT gegenüber einem TTY waren viel leiser, kein verschwendeter Papier (aber ohne Scrollen, was nicht immer gut war) und Geschwindigkeit - das TTY war ziemlich begrenzt auf 110 Baud (10 Zeichen / Sek.) Die VTs konnten gehen Sie so hoch wie 19.200 Baud, Iirc. Später kamen sogar "intelligente Terminals" auf den Markt, ein VT mit der Fähigkeit, eine gewisse Verarbeitung des eingehenden Signals vorzunehmen und dem Text Farbe hinzuzufügen, und sogar, für einen Preis, Grafiken. - Gypsy Spellweaver


Ziemlich sicher, es ein "virtuelles Terminal" zu nennen, ist eine Reminiszenz, wenn physische Terminals mit Unix-Servern verbunden waren ...


13
2017-11-21 12:15



Okay ... Das macht Sinn ... "Damals", bevor Multitasking existierte, und die Idee davon war abstrakt und "virtuell" ... Es ist also die gleiche Idee wie eine virtuelle Maschine gegenüber einer Hardware-Box ". - Peter.O
Bedeutet das, dass Control-Alt-F1, F2 usw. auch virtuelle Terminals sind, und die nur Unterschied zwischen ihnen und "Gnome-Terminal" / "Konsole" ist, dass sie keine GUI haben? - Peter.O
@ fred.bear: Sieh dir das an Wikipedia. - Jamie Schembri
virtuell, weil das menschliche Eingabe / Ausgabe-Ende des Terminals tatsächlich mit einem laufenden Prozess verbunden ist (durch / dev / pts / *). Nicht-virtuelle Terminals sind Dinge wie die Linux-Textkonsole (das Backend wird vom Kernel-Code bereitgestellt, um Tastatureingaben in Terminal-Eingabezeichen umzuwandeln und Terminalausgabe in Zeichen auf dem Bildschirm, einschließlich der Verarbeitung von Escape-Codes für Farbe, Cursorbewegung usw.). Oder das älteste Beispiel eines nicht virtuellen Terminals, die seriellen Ports. Terminal-Handhabung durch alles, was Sie an Ihre serielle Schnittstelle angeschlossen haben. Sie können mit der Textkonsole an einem seriellen Anschluss starten. - Peter Cordes


Zusätzlich zu den obigen Antworten, siehe diese umfassende Erklärung ot Terminals. Das TTY ist trotz seiner scheinbaren Einfachheit konzeptionell ein ziemlich komplizierter Teil von Linux.


11
2017-12-07 19:56



Danke Loevborg. Es ist ein wirklich interessanter Artikel, der einen Großteil der "mysteriösen" Terminologie erklärt ... (zB ein "Zombie" -Prozess;) - Peter.O