new_blog/posts/process-spawn.md

920 B

title description date draft tags
What executing an executable means 2025-02-02 true

So from various places for various reasons I've learned a bit about how process spawning on Linux works. So I thought I'd write it all down to clarify what I know and maybe do some research in the process.

Scope

This post is focused on what happens when a process wants to make another process. It will not cover how shells parse out commands, how init systems work etc.

Choose Your Syscall(s)

Two wolves meme with Fork/Exec and Clone

When it comes to spawning a child process on Linux there are two general ways of doing it.

  • call fork and then call exec in the child process
  • call clone

Generally speaking you want to use clone due to clone being more flexible and allowing you to use fewer syscalls to achieve what you want.