仮想端末と疑似端末の違いは何ですか?

仮想端末と疑似端末の違いは何ですか?

仮想端末は、とCtrl入力したときに表示される端末であり、ファイル によって表されます。AltF#/dev/tty#

擬似端末は、実際に tty の「内部」で実行される端末です。たとえば、gnome-terminalxtermなどです。これは、ファイル によって表されます/dev/pts/#

私の言うことは正しいでしょうか?

答え1

「仮想端末」は、誰が話しているかによって意味が異なる場合があります。仮想端末を物理端末と対比すると、今日ではすべての端末が仮想です(例:本物のDEC VT100)。

Linuxでは/dev/tty[n]仮想コンソールこれらはカーネルによって実装され、グラフィック環境(存在する場合)から独立した仮想端末(端末エミュレーター)です。

/dev/pts/#gnome-terminalまたは Windowsなどのローカルまたはリモートの端末エミュレーターと対話するために使用されるチャネルですputty

答え2

擬似端末は、プログラムが実際の端末と通信しているように認識できるように、端末回線の規律をプログラムに提示するために導入されたカーネルの概念です。これにより、実際の端末デバイス (シリアル ポートなど) と通信しているか擬似端末と通信しているかに関係なく、プログラムを変更せずに動作させることができます。

たとえば、ネットワーク接続によって提供されるインターフェイスはシリアル ラインとはまったく似ていないため、擬似端末ペア (マスターとスレーブ) が使用されます。ネットワーク ハンドラー プロセスは擬似端末のマスター側を開き、そこから読み取りと書き込みを行います。マスター側に書き込まれた内容はスレーブ側で読み取り用に表示され、その逆も同様です。さらに、ライン ディシプリンなどを変更するためのすべての ioctl は、スレーブ側のファイル記述子で使用できます。

つまり、疑似端末を使用すると、ソフトウェアを使用して実際の端末をシミュレートできると言えます。

関連情報