EN JA
PTS(4)
PTS(4) Linux Programmer's Manual PTS(4)

名前

ptmx, pts -擬似端末のマスタとスレーブ

説明

ファイル /dev/ptmx は、メジャーナンバー (major number) 5、マイナーナンバー (minor number) 2 を持つキャラクタ・ファイルであり、通常、モードは 0666 で、所有者.グループは root.root である。このファイルは、擬似端末 (pseudoterminal) のマスタとスレーブのペアを作成するために使用される。

プロセスが /dev/ptmx をオープンすると、そのプロセスには擬似端末マスタ (pseudoterminal master; PTM) へのファイル・ディスクリプタが返され、 /dev/pts ディレクトリに擬似端末スレーブ (pseudoterminal slave; PTS) デバイスが作成される。 /dev/ptmx をオープンして得られるファイル・ディスクリプタはそれぞれ独立の PTM であり、対応する PTS を各々持つ。 PTS のパス名は、PTM のファイル・ディスクリプタを 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 ファイルシステムを通して実現されている、

この UNIX 98 スキームが導入される前は、マスタ擬似端末は /dev/ptyp0, ... 、スレーブ擬似端末は /dev/ttyp0, ... と呼ばれており、あらかじめたくさんのデバイス・ノードを割り当てておく必要があった。

関連項目

getpt(3), grantpt(3), ptsname(3), unlockpt(3), pty(7)

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.51 の一部である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。
2002-10-09 Linux