pts - manned.org
SectionsLanguagesTable of Contents
PTS(4) Linux Programmer's Manual PTS(4) 名前 ptmx, pts - 擬似端末のマスタとスレーブ 説明 ファイル /dev/ptmx (擬似端末多重デバイス; pseudoterminal multiplexer device) は、メジャーナンバー (major number) 5、 マイナーナンバー (minor number) 2 を持つキャラクターファイルであり、 通常、モードは 0666 で、所有権は root:root である。 このファイルは、擬似端末のマスタとスレーブのペアを作成するために使用される。 プロセスが /dev/ptmx をオープンすると、そのプロセスには 擬似端末マスタ (pseudoterminal master) へのファイルディスクリプターが返され、 /dev/pts ディレクトリに擬似端末スレーブ (pseudoterminal slave) デバイスが作成される。 /dev/ptmx をオープンして得られるファイルディスクリプターはそれぞれ独立の擬似端末マスタであり、対応するスレーブを各々持つ。スレーブのパス名は、マスタのファイルディスクリプターを ptsname(3) に渡すと知ることができる。 擬似端末スレーブをオープンする前に、必ず、マスタのファイルディスクリプターを 引数として grantpt(3) と unlockpt(3) を呼び出さなければならない。 擬似端末のマスタとスレーブの両方がオープンされた後は、スレーブは、 プロセスに対して、実端末 (real terminal) と全く同じインターフェースを提供する。 スレーブに書かれたデータはマスタファイルディスクリプターに対する入力として扱われ、 マスタに書かれたデータはスレーブに対する入力として扱われる。 実例をあげると、擬似端末は xterm(1) のような端末エミュレータを実装するのに使用されている。 端末エミュレータでは、擬似端末のマスタから読み込まれたデータは、 アプリケーションにとって実端末のデータと全く同じもののように見える。 また、 sshd(8) のようなリモートログイン用のプログラムの実装では、 擬似端末マスタから読み込まれたデータは、ネットワークを経由して、 端末や端末エミュレータに接続されているクライアントプログラムに送信される。 擬似端末は、 (su(1) や passwd(1) のような) 通常はパイプからの入力を拒否するプログラムに、 入力を送信するためにも使用できる。 ファイル /dev/ptmx, /dev/pts/* 注意 (UNIX 98 pseudoterminal naming と呼ばれる) 上記の機能の Linux でのサポートは、通常 /dev/pts にマウントされるはずの devpts ファイルシステムを通して実現されている、 関連項目 getpt(3), grantpt(3), ptsname(3), unlockpt(3), pty(7) この文書について この man ページは Linux man-pages プロジェクトのリリース 5.10 の一部である。プロジェクトの説明とバグ報告に関する情報は https://www.kernel.org/doc/man-pages/ に書かれている。 Linux 2020-08-13 PTS(4)