
By default, if a process asks for more (virtual) memory, the Linux kernel never says no. (It can be easily configured to do so, if you want.) Therefore, it is possible for a process to try to access more memory than the system has available. This situation triggers the dreaded “OOM Killer” <https://lwn.net/Articles/317814/>, which hunts around for resource-hogging processes and kills them according to a priority scheme that nobody quite understands. To avoid things getting this bad, various people have come up with alternatives in the form of userspace daemons that monitor system resource usage, and implement their own (configurable) rules for killing processes before things get dire enough to wake up the OOM Killer. The announcement of Fedora 32 mentions <https://www.theregister.co.uk/2020/04/28/red_hat_summit/> the inclusion of one of these solutions, “EarlyOOM”. Looking at the project’s <https://github.com/rfjakob/earlyoom> readme page shows mention of two others: “nohang” (written in Python) and “oomd” (from Facebook). I see all three available as standard Debian packages, at least as of Debian Unstable.
participants (1)
-
Lawrence D'Oliveiro