web-dev-qa-db-ja.com

unix psコマンドでTTYはどういう意味ですか?

PSを実行すると、列の出力の1つがTTYになります。これは何を意味するのでしょうか?特に、「??」の値としてはどうでしょうか。 「ttys000」と比較?

JavaプログラムがProcessBuilder経由でsortを実行し、このプログラムがmy IDE(IntelliJ)経由で実行されると、 IDEの外部で実行可能なjarとして実行する場合よりも5分の1になります。

いずれの場合も、並べ替えの実行中にpsを実行しますが、IDEはTTYが??のプロセスを作成しますが、jarはttys000のTTYのプロセスを作成します。

29
Zugwalt

A [〜#〜] tty [〜#〜] はコンピューター端末です。 psのコンテキストでは、特定のコマンドを実行したのは端末です。

略称は「TeleTYpewriter」を意味します。これは、ユーザーが初期のコンピューターに接続できるようにするデバイスでした。

状況に応じて、jarは 'ttys000'という名前の仮想端末を作成しますが、IDEは仮想端末に接続してコマンドを実行しません。

31
George Cummins

プロセスは「制御端末」にバインドできます(通常はバインドされます)。この端末は、シリアル回線の端にあるハードウェアであるか、または今日のほとんどの場合、同等の仮想ソフトウェアである可能性があります。 TTYは親プロセスから継承されます。ほとんどの場合、IDEはTTYとの関連付けを解除し、JavaプログラムはシェルのTTYを継承します。

4
Jürgen Strobel