Skip to content
Latchkey

exec システムコールとは?

exec システムコールは、呼び出し元プロセスに新しいプログラムを読み込み、そのメモリイメージを置き換えて、新しいプログラムをそのエントリポイントから開始します。プロセス ID や多くのディスクリプタは保持されますが、以前のコードとデータは破棄されます。通常は fork の直後に使われ、子が別のプログラムを実行できるようにします。

なぜ重要か

fork してから exec するペアは、shell が build 内のすべての外部コマンドを起動する方法です。exec がプロセス ID を保持することを知っていれば、なぜ exec の前に設定したリダイレクトが新しいプログラムへ引き継がれるのかが分かります。

関連ガイド