this post was submitted on 24 Jul 2025
72 points (100.0% liked)

Linux

8723 readers
410 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
top 9 comments
sorted by: hot top controversial new old

Seat of the pants it actually seemed quicker on new tabs. Memory I haven't checked but good news nonetheless.

Many thanks Mozilla devs.

[–] ALERT@sh.itjust.works 3 points 1 week ago (2 children)

how can they relaunch with the new binary without relaunching the binary? what's behind this Linux magic?

[–] sjohannes@programming.dev 10 points 1 week ago* (last edited 1 week ago) (1 children)

It doesn't launch the new binary at all. When the current process wants to create a new process, instead of doing fork+exec (which launches the new binary and wreaks havoc because versions now don't match), it simply tells the ForkServer (a different process running the old binary) to fork (split) itself.

Chromium also does this; they call their equivalent to ForkServer the zygote process and this article explains it really well.

[–] ALERT@sh.itjust.works 1 points 1 week ago

Thank you, I feel smarter (no)!

[–] refalo@programming.dev 3 points 1 week ago (1 children)
[–] ALERT@sh.itjust.works 1 points 1 week ago (2 children)

yes, and I understood nothing as a stupid Windows user

[–] refalo@programming.dev 4 points 1 week ago* (last edited 1 week ago)

Basically instead of launching completely new processes for each tab, which uses the (now updated/different) binary on disk, it uses a small secondary process that stays running the whole time the browser is open, and new processes are forked from that one, which makes them all use the same in-memory copy of the old process even after the program is updated.

This only works on *nix because you can't overwrite binaries on Windows that are in use... but Linux keeps the old binary in memory the whole time, so it doesn't care if you replace it, as it won't be used until you restart the program.

So it doesn't actually update anything at all while it's running.

[–] Railcar8095@lemmy.world 3 points 1 week ago

It uses the same mechanism as PS3 did with the DLC. All new versions of firefox are in the binary you download today, their features are unlocked periodically.

/s

[–] refalo@programming.dev 2 points 1 week ago

Will this stop the constant crashing I've been having the last several versions?