Skip to content
Latchkey

制御端末とは何か?

制御端末とは、プロセスのセッションに結び付けられた端末デバイスで、その中のプロセスに対するジョブ制御とシグナル配送を仲介します。どのプロセスグループがフォアグラウンドにあるかを追跡し、割り込みなどキーボードで生成されたシグナルをそのグループへ送ります。制御端末から読み取ろうとするバックグラウンドの job は、フォアグラウンドに移されるまで停止させられます。

なぜ重要か

CI エージェントや daemon のように、いかなる制御端末からも切り離されたプロセスは、キーボードからのシグナルを受け取らず、shell が閉じても終了させられずに済みます。これを理解すると、スクリプト化された環境でのバックグラウンドとフォアグラウンドの挙動が明確になります。

関連ガイド