Installing the update isn't enough. A running process keeps the old decoder until it restarts
Yes, that's kinda how computers work?
Installing the update isn't enough. A running process keeps the old decoder until it restarts
Yes, that's kinda how computers work?
Imo still worth reminding people that just because you run an apt/dnf upgrade
running applications still map the now unlinked outdated version.
So you're saying that Windows' insistence on restarting for every little thing is a security feature?
Different philosophies.
On Linux, you can delete a running application and it's fine, because files aren't actually deleted until the last process that has it open closes it. This applies for all files, not just executables.
Internally, files are mainly identified by an inode rather than the file path. If you delete a file then create a new one with the same name, the new file will have a different inode number to the old file. Anything that had the file open will still have a valid reference to the old file. If you're running a program and upgrade it while it's running, the currently running version will still be using the old inode, while any new instances will use the new one.
Windows doesn't do that. On Windows, the file path is the main identifier for the file. Files that are in use and executables that are running are locked and can't be modified. It tells you to restart so that it can swap in the new files after closing everything. When updating a program, you just need to close it to be able to update, but OS files need reboots because they're locked the whole time the OS is running.
Note that some versions of Windows don't require that any more. Some editions of Windows Server 2025 support hotpatching. This patches code (both OS code and program code) directly in memory, avoiding the need to restart to apply the update. On Linux, there's a proprietary system called Kernelcare that does the same thing for kernel patches.
Woosh, but good response. 🫠
How's it a whoosh? I thought their question was genuine.
It was me, and the question wasn't genuine. I was joking that maybe there was a hidden security purpose to windows reboots.
Yes, that's kinda how computers work?
No, it's only the most common way. There are also lots of systems where it's perfectly possible, even normal, to upgrade running processes in-place without restarting.
I'm still impressed by Erlang and their hot swappable code mechanics. This isn't really relevant to library updates, but still!
Sure, but good reminder anyway.
Craziest 7 days
yet.
So that was the reason I saw the packages during an apt run...
For Nginx on Debian, I need to figure out if just updating the libbrotli1 package is sufficient, or if libnginx-mod-http-brotli needs to be updated too. I suspect it's dynamically linked (since that's standard on Debian) and thus just updating the Brotli library and restarting Nginx is sufficient.
This is a most excellent place for technology news and articles.