なぜ仮想端末は「仮想」であり、「実際の」端末は何/なぜ/どこにあるのですか?


170

質問が自明であることを願っています。

私の理解ではgnome-terminal、これkonsole仮想端末であり、基本的には同じ目的、つまりさまざまなオプションのコマンドインタープリター用のコマンドライン環境を提供しています。(それを見る正しい方法であるかどうかはわかりません。)

私がいることを前提とし、実際の端末が、私はミスキーイングでのoccasionalyテレポートしています場所ですCtrl+ Alt+ F1F2など

しかし、その黒い画面の奥地には「ドラゴンがいる」ので、Ctrl+ Alt+ を押すとすぐに外に出ますF7(どこかで「すべてが黒で暗いとき:秘密のキーを押して戻る:)」

  • "本当の"端子(S)の背後に存在する1(S)/ AreはCtrl+ Alt+ F1F2などのキーは?
  • そして、それらの「仮想」対「仮想」について何がそんなに「本物」ですか?
  • そして、彼らはどう違うのですか?「GUIなし」と「GUI」のように単純ですか?

PSは「コンソール」と「ターミナル」の同義語ですか?


22
コマンドラインを恐れないでください。慣れてしまえば、いくつかのことであなたの人生がずっと楽になります。
ラリーコールマン


8
@ラリー:あなたの言葉に夢中になって、ドラゴンの隠れ家(Ctrl + Alt + F1)に飛び込み、実際にこの時間にログインしました!...沈黙がありました。 X)..おもしろいと思って、獣を呼ぶ勇敢な勇気を感じました。「echo $ TERM」と言いました。それは私に戻って話しました!「linux」...と言いました。すぐに、彼は「xterm」と答える「gnome-terminal」と「konsole」のいとこであることに気付きました。 Linux(実際の)端末をエミュレートします。
Peter.O

5
Linuxコンソールを恐れないでください:彼は非常に強力でありながら飼いならされたドラゴンであり、compizがクラッシュしたときの彼の親友です;)
MestreLion

また、gnome-terminal両方とも同じ目的を果たした後、彼をいとこと呼ぶこともできます。グラフィカル環境に依存せず、幾分かパワーを付与するデバイスに接続されているいとこ。
メストレリオン

回答:


136

私の理解では、仮想端末は基本的に同じ目的を果たします。さまざまなオプションのコマンドインタープリター用のコマンドライン環境

これは厳密には正しくありません。仮想端末は、単にキーストロークを送信し、バックグラウンドでプロセスに出力(これは標準入力、標準出力[および標準エラー]と呼ばれます)を受信するプログラムです。これは基本的な入力処理出力システムであり、オペレーティングシステムの中核です。


テレタイプ(またはテレプリンター)


コンピューター端末で働く男

適切に説明できるかどうか見てみましょう:

LinuxなどのUnixライクなシステムには、「すべてがファイル」という概念があります。つまり、たとえば、DVDドライブはファイル(/ dev / sdb1)、キーボードはファイル(/ dev / input / keyboard)などです。

これらの魔法のファイルの別のセットはTTYで、TTYはTeletypeの略です。キーストロークをコンピューターに送信するタイプライターは、コンピューターから文字をType Ballに送り返します。これは、/ dev / lp0がプリンタを表すのと同じように、物理デバイス、リモートタイプライターを表します。


ハードウェア端末、VT100

テレタイプワークステーションは、「コンソール」または「ターミナル」と呼ばれていました。実際のターミナルとは異なり、仮想ワークステーションは、この職場配置と同じ機能を提供するアプリケーションまたは機械です。それに出力を受け取り、それを紙に印刷します。モデムは非常によく似た方法で機能すると想像できます。

上記のような端末は、テレタイプの機能をエミュレートする安価でシンプルなコンピューターです。最近、端末エミュレータと言うとき、通常、そのようなマシンの機能をエミュレートするプログラムを意味します。

まだ端末ベースのコンピューターシステムが使用されています。実際、彼らはこれまで以上に人気を集めています。過去には、端末の理由は、すべてのデスクのコンピューターが完全にばかげていたことでした。今、それはお金を節約し、管理を容易にします。


「シンクライアント」– VT100の現代版

これが役立つことを願っています。間違えた場合は警告してください。


つまり、Control-Alt-F1、F2なども仮想端末であり、それらと「gnome-terminal」/「konsole」との唯一の違いは、GUIがないことです。

はい、基本的に。TTY1-7とgnome-terminalの違いは、システムがttyを提供するのに対して、gnome-terminalとkonsole自体はtty(グラフィカルサブシステムを実行している)で実行されていることです。この抽象化は、さらに深くネストすることができます(たとえば、xフォワーディング、telnetプロトコルを使用して端末として機能するなど)。結局のところ、コンピューターインターフェイスは他のファイルのように機能します。また、同じ方法でパイプ、抽象化、および移動できます。


15
あなたの答えは役に立ちましたか?...絶対に!! ...非常によく説明されています...キーボードをファイルとして考えたことはありませんでしたが、それは理にかなっています(読み取り専用ファイル)...そして、「シンクライアント」は私が聞いた言葉ですポッドキャストもありますが、頭を悩ませただけで、新しいCPUアーキテクチャ(a-la RISC)に言及していると思いましたが、実際には良いアイデアが消えないこと、CICS(または少なくともその子孫) )まだ健在です...非常に興味深い...ありがとう(もう少し読みたいことがあります...何かを始めました:)
Peter.O

19
これは少しランダムで、Linuxとはあまり関係ありませんが、それでもなお、コンピューターが実際にどのように機能するかについての非常に基本的なことを学びたい場合は、twit.tv / snを聞いてください。 -エピソード233、235、237、239および241を。「絶対的な基本からコンピューターがどのように機能するか」に関するシリーズ。基本は「低レベル」を意味します。多くの人がこのようなことを知っていないので、とても楽しいです。
ステファノパラッツォ

1
@TokiTahmidおっと!修正、ありがとうございました。それは意図的なものではなく、単なる間違いでした:)
ステファノパラッツォ

4
私の回想では、VT-100は仮想端末や端末エミュレータではなく、(ビデオ)端末と見なされていました。独自のマイクロプロセッサを搭載した多くのデバイスは、ユーザーに直接入出力を提供するように設計されている限り、エミュレートする他のデバイスが何であれ、端末と見なされました。コンピューター/ヒューマンインターフェイスが、端末専用ではないデバイス上のソフトウェアに実装されている場合、そのインターフェイスまたはソフトウェアを仮想端末と呼びます。デバイス全体の目的は違いであり、使用される技術や通信プロトコルではありません。
ジョンSグルーバー

2
@JohnSGruberあなたの回想は正しいです。VT100とその同類は「ビデオ」端末であり、この回答の一番上の写真である紙ベースのTTYと区別します。TTYに対するVTの3つの利点は、より静かで、紙が無駄にならない(ただし、スクロールがうまくない場合があった)と速度-TTYは、VTが可能な110ボー(10文字/秒)にかなり制限されていた19,200ボーまで上げる、iirc。その後、彼らは「スマート端末」、着信信号に何らかの処理を行い、テキストに色を追加し、さらには価格でグラフィックスを追加する機能を備えたVTを思いつきました。
ジプシースペルウィーバー

14

「仮想端末」と呼ぶのは、UNIXサーバーに物理端末が接続されていたときの先祖返りです。


わかりました...それは理にかなっています...マルチタスクが存在する前の「当時」、そしてそれのまさにアイデアは抽象的で「仮想」でした...それは仮想マシン対ハードウェア「ボックス」と同じアイデアです「。
Peter.O

2
つまり、Control-Alt-F1、F2なども仮想端末であり、それらと「gnome-terminal」/「konsole」との唯一の違いは、GUIがないことです。
Peter.O

@ fred.bear:ウィキペディアをご覧ください。
ジェイミー

仮想の理由は、端末の人間の入出力端が実際に実行中のプロセスに接続するためです(/ dev / pts / *を使用)。非仮想端末は、Linuxテキストコンソール(カーネルコードによって提供されるバックエンドであり、キーストロークを端末入力文字に変換し、端末出力を画面上の文字に変換します。色やカーソルの動きなどのエスケープコードの処理を含みます)。または、非仮想端末の最も古い例であるシリアルポート。シリアルポートに接続したものによって提供される端末処理。シリアルポートでテキストコンソールを使用して起動できます。
ピーターコーデス14

13

上記の回答に加えて、ターミナルのこの包括的な説明を参照してください。TTYは、見かけの単純さにもかかわらず、概念的にはLinuxのかなり複雑な部分です。


1
ありがとう、loevborg。それは多くの「神秘的な」用語を説明するのに
非常に役立つ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.