fork システムコールとは?
fork システムコールは、呼び出し元プロセスのメモリや開いているファイルディスクリプタを含めてコピーすることで、新しいプロセスを作成します。呼び出しの後、親と子はどちらも実行を続け、それぞれが受け取る戻り値の違いによって区別されます。子は多くの場合、その後自身のイメージを新しいプログラムに置き換えます。
なぜ重要か
shell が実行するすべてのコマンドは fork から始まるため、これを理解すると CI がどのように build プロセスのツリーを生成するかが分かります。また、親と子の間の copy-on-write メモリ共有の基盤にもなっています。
関連ガイド
What Is the Exec System Call?The exec system call replaces the program running in the current process with a new one, keeping the same pro…
What Is a Copy-on-Write Fork?A copy-on-write fork shares the parent memory pages with the child read-only and copies a page only when one…
What Is an Environment Block?An environment block is the set of name-value variables a process carries and passes to the children it launc…