They now use a zygote process like Chrome does. When a new process is needed, the zygote just forks.
In the old version, the main process used a classic UNIX fork+exec of the browser executable instead, which could start an incompatible process if the executable has been replaced.
With the zygote process, all code and data files are preopened, so replacing or deleting them does not affect the running Firefox.
As another effect, skipping the exec makes process creation faster…
They now use a zygote process like Chrome does. When a new process is needed, the zygote just forks.
In the old version, the main process used a classic UNIX fork+exec of the browser executable instead, which could start an incompatible process if the executable has been replaced.
With the zygote process, all code and data files are preopened, so replacing or deleting them does not affect the running Firefox.
As another effect, skipping the exec makes process creation faster…
i guess this wouldn’t work on bsd then :/