It can be really dangerous for some programs. I don’t know too much about Windows, but in Linux, if we try to close a program once, it sends SIGTERM (or SIGINT, I can’t remember right now), which basically asks your program to stop. You program can receive that signal and finish things up and exit cleanly. But if your program is deadlocked and can’t handle that right now, closing the program again sends it a SIGKILL, which is basically the OS saying, “Get fucked. You’re done whether you like it or not.”
It’s not dangerous for programs, it’s dangerous for files it may be editing, like not writing some ending characters that leaves the file in a state that cannot be opened by some applications.
which is basically the OS saying, “Get fucked. You’re done whether you like it or not.”
Nah, the OS is not really saying anything. Definitely not to the program. It’s more of a 1984 shot in the back of your head while you walk down a corridor kind of situation. Also it’s not a gun your bits just vanish in the ether. Then it sends a death certificate to the parent, without further explanation.
In your application code, you install signal handlers that better shut your application down when the OS asks you to do so. If your application is hogging resources so hard that it can’t shut down without corrupting files it has opened, then fuck your application. There is a reason the OS (or some user) is sending you that signal.
That depends how you “try to close the program”. Top/htop/btop often SIGKILL by default. As for closing it legitimately, it depends on your WM and xorg vs wayland. On my DWM setup, I have a keybind for a graceful shutdown and one for SIGKILL.
Yes, I intentionally didn’t want to provide too many details, as I thought it would just be confusing for someone who doesn’t already have a lot of background knowledge on the subject.
But specifically, I was talking about command line programs and ending them with Ctrl-C
The one thing they’re missing, which honestly shouldn’t happen on at least desktop distros, is the system becoming unresponsive under memory pressure because before the kernel decides to kill off anything it rather swaps its own data structures out to disk, grinding everything to such a crawl that it’s indistinguishable from a complete freeze.
The solution is early OOM, which is more aggressive at killing things off and it honestly should be installed and activated by default.
I don’t even get why force shutting a program isn’t the fucking default.
Because you run the risk of corrupting files.
And then they’d start doing drugs, gambling, taking bribes …
And prostitutes. And shiny metal asses.
In fact, forget the closing of programs.
It can be really dangerous for some programs. I don’t know too much about Windows, but in Linux, if we try to close a program once, it sends SIGTERM (or SIGINT, I can’t remember right now), which basically asks your program to stop. You program can receive that signal and finish things up and exit cleanly. But if your program is deadlocked and can’t handle that right now, closing the program again sends it a SIGKILL, which is basically the OS saying, “Get fucked. You’re done whether you like it or not.”
It’s not dangerous for programs, it’s dangerous for files it may be editing, like not writing some ending characters that leaves the file in a state that cannot be opened by some applications.
I didn’t mean the programs were in danger. When this is done to some programs, it can cause bad things to happen to your computer.
Nah, the OS is not really saying anything. Definitely not to the program. It’s more of a 1984 shot in the back of your head while you walk down a corridor kind of situation. Also it’s not a gun your bits just vanish in the ether. Then it sends a death certificate to the parent, without further explanation.
Side note: Have you ever used
killall
? Was the standard way to send signals by name instead of PID beforepkill
. I found out the hard way that it does something rather different on other Unices.In your application code, you install signal handlers that better shut your application down when the OS asks you to do so. If your application is hogging resources so hard that it can’t shut down without corrupting files it has opened, then fuck your application. There is a reason the OS (or some user) is sending you that signal.
That depends how you “try to close the program”. Top/htop/btop often SIGKILL by default. As for closing it legitimately, it depends on your WM and xorg vs wayland. On my DWM setup, I have a keybind for a graceful shutdown and one for SIGKILL.
Yes, I intentionally didn’t want to provide too many details, as I thought it would just be confusing for someone who doesn’t already have a lot of background knowledge on the subject.
But specifically, I was talking about command line programs and ending them with Ctrl-C
kill -9
There are so many possibilities to kill frozen programs in linux.
https://www.fosslinux.com/39434/5-things-to-do-when-your-linux-system-gui-freezes.htm
The one thing they’re missing, which honestly shouldn’t happen on at least desktop distros, is the system becoming unresponsive under memory pressure because before the kernel decides to kill off anything it rather swaps its own data structures out to disk, grinding everything to such a crawl that it’s indistinguishable from a complete freeze.
The solution is early OOM, which is more aggressive at killing things off and it honestly should be installed and activated by default.
and of course psDooM
Why do you think the bottom one doesn’t happen in Windows?
Do you not know the details tab in taskmanager can force close processes that are frozen?
Has the person who wrote that comic not used Windows in like a decade?