4 ms·
> For example you could have one process paused after loading all needed libraries and opening all resource archives and then just fork from that. Plausible I
by foxfluff 5y ago
> For example you could have one process paused after loading all needed libraries and opening all resource archives and then just fork from that.
Plausible I guess, but also seems like a lot of effort to work around broken distros. Actually calling exec has tangible benefits too, e.g. it allows each process to have its address space randomized.
> However, you could also have a stable API between the browser binary and the javascript parts if you wanted - that is a far cry from mixing arbitrary source files.
Yes but the problem here is stable API and ABI between the browser binary and.. the browser binary. IPC within a binary is hardly ever written assuming a stable ABI, it'll just constrain the project way too much.
> And you definitely don't need to reboot because the kernel has been updated on the filesystem.
I feel like the kernel isn't really a fair comparison since it's relatively self-contained and you generally don't have multiple instances of the kernel talking to each other using IPC.
But go ahead, update your modules and see if you can still load them on your old kernel without rebooting. No, you can't. Same problem.
Unfortunately OSes today tend to have many dynamically loaded parts that require restarts if you want to keep everything working after updates.