端末エミュレータはキーボード入力をどのように受け取りますか?

端末エミュレータはキーボード入力をどのように受け取りますか?

ターミナルエミュレータはX11アプリケーションなので、そのターミナルウィンドウに直接入力するとX11Serverから入力を受け取りますか?

では、/dev/pts/N ディレクトリはなぜ存在するのでしょうか。

ターミナルエミュレータはXサーバの入力イベントを拒否し、/dev/pts/Nから直接読み込みますか?

答え1

ターミナルエミュレータは、接続されているX11サーバー(または他のディスプレイサーバー)からイベントとしてキーボード入力を受け取ります。

/dev/pts端末エミュレータがその中で実行されるプログラムの入力をシミュレートできるように存在します。エミュレータはディスプレイサーバーからイベントを受信し、それを入力用のイベントに変換します/dev/pts/...。プログラムはエミュレータ内で実行され、/dev/pts/...入力を受け取りません/dev/tty...

関連情報