{"id":18162,"date":"2026-10-08T00:14:41","date_gmt":"2026-10-08T06:14:41","guid":{"rendered":"https:\/\/www.supportpro.com\/blog\/?p=18162"},"modified":"2026-10-08T00:14:44","modified_gmt":"2026-10-08T06:14:44","slug":"how-the-linux-oom-score-determines-which-process-gets-killed","status":"publish","type":"post","link":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/","title":{"rendered":"How the Linux OOM Score Determines Which Process Gets Killed"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">When a Linux system faces severe memory pressure, the kernel must decide which process to terminate to free memory.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This is where the Linux Out-Of-Memory (OOM) killer comes into play.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The OOM killer is a last-resort mechanism. When the kernel cannot satisfy memory allocations after reclaiming available memory and taking other measures, it may terminate one or more processes to recover memory and keep the system running.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But how does Linux decide which process to kill?<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It doesn&#8217;t simply choose the process using the most RAM. Linux uses a scoring mechanism that considers factors such as memory usage and administrator-defined adjustments.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Understanding OOM scores can help you investigate unexpected process termination and configure critical services more carefully.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What Is the OOM Killer?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Linux normally tries several approaches before reaching an OOM condition.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The kernel can reclaim filesystem caches, reclaim other memory, and potentially use swap. If memory pressure becomes severe and a required allocation still cannot be satisfied, the kernel may invoke the OOM killer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Its basic goal is straightforward:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Free enough memory to allow the system to continue operating.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When the OOM killer selects a process, that process receives a termination signal, typically SIGKILL. The process cannot catch or ignore SIGKILL, so it is forcibly terminated.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You may see a message similar to this in kernel logs:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Out of memory: Killed process 1234 (myapp)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The interesting question is why myapp was selected instead of another process.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What Is oom_score?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Linux exposes an OOM score for processes through \/proc.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can inspect a process with:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cat \/proc\/1234\/oom_score<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Replace 1234 with the process ID.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The value is an integer representing how strongly the process is considered a candidate for termination by the OOM killer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In general, a higher OOM score means the process is more likely to be selected when the kernel needs to choose a victim.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can inspect multiple processes with:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">for pid in $(pgrep -d &#8216; &#8216; -f .); do<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;echo &#8220;$pid $(cat \/proc\/$pid\/oom_score 2&gt;\/dev\/null)&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">done<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For practical troubleshooting, however, you will often want to combine the score with memory usage and process information rather than looking at the score by itself.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">OOM Score Is Not Simply a Memory Ranking<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">One common misconception is:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u201cWhen memory resources become limited, the process with the highest RAM usage is selected for termination.\u201d<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s not necessarily true.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Memory consumption is an important factor in the OOM selection process, but the kernel also considers other information.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example, administrators can influence a process&#8217;s OOM preference using oom_score_adj.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Check it with:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cat \/proc\/1234\/oom_score_adj<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The value can range from:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-1000<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">to:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1000<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A more negative value makes a process less likely to be selected, while a more positive value makes it more likely to be selected.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This gives administrators a way to influence OOM victim selection.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Understanding oom_score_adj<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Suppose you have two processes:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">database<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">application<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You might want the application process to be sacrificed before a critical database process.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An administrator can adjust the database process&#8217;s OOM preference:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">echo -500 &gt; \/proc\/1234\/oom_score_adj<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The exact value should be chosen carefully based on the system&#8217;s requirements.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">At the extreme end:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">-1000<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">makes the process effectively immune to the OOM killer&#8217;s normal selection mechanism.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This should be used cautiously. Protecting too many processes can leave the kernel with fewer viable processes to terminate during severe memory pressure.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why Does Linux Need a Scoring System?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Imagine a server with 16 GB of RAM running:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">SSH<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">database<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">web server<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">monitoring agent<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">application workers<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">background jobs<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A severe memory shortage occurs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Killing an arbitrary process could make the situation worse. Terminating an important system component might cause additional failures, while terminating a less critical workload could recover enough memory for the server to continue operating.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The scoring mechanism gives the kernel a way to make a more informed decision.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The general principle is:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Recover useful memory while minimizing the damage caused by process termination.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Viewing OOM Information for a Process<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">For a specific PID, inspect:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cat \/proc\/1234\/oom_score<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">and:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cat \/proc\/1234\/oom_score_adj<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can also examine the process itself:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ps -p 1234 -o pid,ppid,%mem,rss,vsz,cmd<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This gives you context around the OOM score.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">PID&nbsp; &nbsp; %MEM &nbsp; &nbsp; RSS &nbsp; &nbsp; COMMAND<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1234 &nbsp; 18.2 &nbsp; &nbsp; 3.0G&nbsp; &nbsp; java -jar application.jar<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If this process also has a relatively high OOM score, it may be an important candidate during an OOM event.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">However, don&#8217;t assume that the score alone predicts exactly what the kernel will do. OOM selection depends on the memory context and other kernel decisions at the time of the event.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">OOM Scores Can Be Different in Containers<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Containers introduce another important layer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A container may have a memory limit imposed through Linux cgroups. If the container reaches its configured memory limit, an OOM event can occur within that memory-controlled environment even if the host still has available RAM.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This means you may encounter:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Host memory: available<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Container memory: exhausted<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The relevant OOM decision may therefore happen within the container&#8217;s cgroup rather than as a simple system-wide \u201cthe server ran out of RAM\u201d event.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">When investigating container OOM events, inspect both:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Host memory usage<\/li>\n\n\n\n<li>Container memory usage<\/li>\n\n\n\n<li>Container memory limits<\/li>\n\n\n\n<li>Cgroup memory events<\/li>\n\n\n\n<li>The processes running inside the container<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Don&#8217;t Automatically Protect Every Important Process<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">It can be tempting to protect critical services by assigning very negative oom_score_adj values.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For example:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">echo -1000 &gt; \/proc\/1234\/oom_score_adj<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But doing this indiscriminately can create another problem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If every important process is protected, the kernel may have very few processes available to terminate when memory becomes critically low.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">OOM configuration should therefore be treated as part of a broader memory-management strategy rather than a replacement for fixing memory leaks, incorrect limits, or insufficient capacity.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Investigate an OOM Kill<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When a process unexpectedly disappears, start with the kernel logs:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">journalctl -k | grep -i -E &#8220;oom|out of memory|killed process&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can also use:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">dmesg | grep -i -E &#8220;oom|out of memory|killed process&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Look for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The process that was killed<\/li>\n\n\n\n<li>Its PID<\/li>\n\n\n\n<li>Memory usage information<\/li>\n\n\n\n<li>The memory-constrained environment<\/li>\n\n\n\n<li>Other processes involved in the event<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Then inspect the application&#8217;s logs around the same timestamp.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The goal isn&#8217;t simply to identify the victim. You also want to determine why the system reached the point where a victim had to be selected.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">OOM Killer vs. Application-Level Memory Management<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s important to remember that the OOM killer is not designed to fix the underlying cause of excessive memory consumption.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If a Java application has a memory leak, for example, the OOM killer may eventually terminate the process, but that doesn&#8217;t solve the leak.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Similarly, if a container has an unnecessarily low memory limit, repeatedly restarting it after OOM kills won&#8217;t address the underlying configuration issue.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The correct response usually involves investigating:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Application memory usage<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u2193<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Memory limits<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u2193<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Workload changes<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u2193<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Swap and reclaim activity<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u2193<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Cgroup constraints<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\u2193<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">OOM victim selection<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The Linux OOM killer exists to protect the system when memory allocation becomes impossible under the relevant constraints. When it needs to select a process, Linux uses an OOM scoring mechanism rather than simply killing a random process.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">You can inspect a process&#8217;s score with:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cat \/proc\/&lt;PID&gt;\/oom_score<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">and its administrator-adjustable preference with:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">cat \/proc\/&lt;PID&gt;\/oom_score_adj<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A higher OOM score generally makes a process a more attractive candidate, while oom_score_adj allows administrators to influence that preference.<\/p>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile is-vertically-aligned-center has-white-background-color has-background\"><div class=\"wp-block-media-text__content\">\n<p class=\"has-large-font-size wp-block-paragraph\">Facing issues? <\/p>\n\n\n\n<p class=\"has-large-font-size wp-block-paragraph\">Our technical support<br>engineers can solve it. <\/p>\n\n\n\n<!--HubSpot Call-to-Action Code --><span class=\"hs-cta-wrapper\" id=\"hs-cta-wrapper-3350a795-db50-482f-9911-301930d1b1be\"><span class=\"hs-cta-node hs-cta-3350a795-db50-482f-9911-301930d1b1be\" id=\"hs-cta-3350a795-db50-482f-9911-301930d1b1be\"><!--[if lte IE 8]><div id=\"hs-cta-ie-element\"><\/div><![endif]--><a href=\"https:\/\/cta-redirect.hubspot.com\/cta\/redirect\/2725694\/3350a795-db50-482f-9911-301930d1b1be\" ><img decoding=\"async\" class=\"hs-cta-img\" id=\"hs-cta-img-3350a795-db50-482f-9911-301930d1b1be\" style=\"border-width:0px;\" src=\"https:\/\/no-cache.hubspot.com\/cta\/default\/2725694\/3350a795-db50-482f-9911-301930d1b1be.png\"  alt=\"Contact Us today!\"\/><\/a><\/span><script charset=\"utf-8\" src=\"https:\/\/js.hscta.net\/cta\/current.js\"><\/script><script type=\"text\/javascript\"> hbspt.cta.load(2725694, '3350a795-db50-482f-9911-301930d1b1be', {\"useNewLoader\":\"true\",\"region\":\"na1\"}); <\/script><\/span><!-- end HubSpot Call-to-Action Code -->\n<\/div><figure class=\"wp-block-media-text__media\"><img fetchpriority=\"high\" decoding=\"async\" width=\"904\" height=\"931\" src=\"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2022\/09\/Free-server-checkup.png\" alt=\"guy server checkup\" class=\"wp-image-12943 size-full\" srcset=\"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2022\/09\/Free-server-checkup.png 904w, https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2022\/09\/Free-server-checkup-291x300.png 291w, https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2022\/09\/Free-server-checkup-768x791.png 768w, https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2022\/09\/Free-server-checkup-585x602.png 585w\" sizes=\"(max-width: 904px) 100vw, 904px\" \/><\/figure><\/div>\n","protected":false},"excerpt":{"rendered":"<p>When a Linux system faces severe memory pressure, the kernel must decide which process to terminate to free memory. This is where the Linux Out-Of-Memory (OOM) killer comes into play.&hellip;<\/p>\n","protected":false},"author":39,"featured_media":18163,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[91],"tags":[],"class_list":["post-18162","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO Pro 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.\" \/>\n\t<meta name=\"robots\" content=\"max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n\t<meta name=\"author\" content=\"Anjali Sindhu\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO Pro (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Server Management Tips | SupportPRO Blog\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Linux OOM Scores: How the OOM Killer Selects Processes\" \/>\n\t\t<meta property=\"og:description\" content=\"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2026\/10\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2026\/10\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1920\" \/>\n\t\t<meta property=\"og:image:height\" content=\"960\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-10-08T06:14:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-10-08T06:14:44+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Linux OOM Scores: How the OOM Killer Selects Processes\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2026\/10\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#article\",\"name\":\"Linux OOM Scores: How the OOM Killer Selects Processes\",\"headline\":\"How the Linux OOM Score Determines Which Process Gets Killed\",\"author\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/author\\\/anjali-sindhuarmiasystems-com\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/#organization\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png\",\"width\":1920,\"height\":960},\"datePublished\":\"2026-10-08T00:14:41-06:00\",\"dateModified\":\"2026-10-08T00:14:44-06:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#webpage\"},\"articleSection\":\"Linux\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.supportpro.com\\\/blog\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/category\\\/linux\\\/#listItem\",\"name\":\"Linux\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/category\\\/linux\\\/#listItem\",\"position\":2,\"name\":\"Linux\",\"item\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/category\\\/linux\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#listItem\",\"name\":\"How the Linux OOM Score Determines Which Process Gets Killed\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#listItem\",\"position\":3,\"name\":\"How the Linux OOM Score Determines Which Process Gets Killed\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/category\\\/linux\\\/#listItem\",\"name\":\"Linux\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/#organization\",\"name\":\"SupportPRO\",\"description\":\"SupportPRO Blog\",\"url\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/\",\"telephone\":\"+18476076123\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/author\\\/anjali-sindhuarmiasystems-com\\\/#author\",\"url\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/author\\\/anjali-sindhuarmiasystems-com\\\/\",\"name\":\"Anjali Sindhu\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/da6cc3f3b96370c2f86036087fb370994fcc9b1de6e808fa3cd8a0f62dd351e3?s=96&d=mm&r=g\",\"width\":96,\"height\":96,\"caption\":\"Anjali Sindhu\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#webpage\",\"url\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/\",\"name\":\"Linux OOM Scores: How the OOM Killer Selects Processes\",\"description\":\"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/author\\\/anjali-sindhuarmiasystems-com\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/author\\\/anjali-sindhuarmiasystems-com\\\/#author\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#mainImage\",\"width\":1920,\"height\":960},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/how-the-linux-oom-score-determines-which-process-gets-killed\\\/#mainImage\"},\"datePublished\":\"2026-10-08T00:14:41-06:00\",\"dateModified\":\"2026-10-08T00:14:44-06:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/\",\"name\":\"Server Management Tips\",\"description\":\"SupportPRO Blog\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.supportpro.com\\\/blog\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO Pro -->\r\n\t\t<title>Linux OOM Scores: How the OOM Killer Selects Processes<\/title>\n\n","aioseo_head_json":{"title":"Linux OOM Scores: How the OOM Killer Selects Processes","description":"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.","canonical_url":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/","robots":"max-snippet:-1, max-image-preview:large, max-video-preview:-1","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#article","name":"Linux OOM Scores: How the OOM Killer Selects Processes","headline":"How the Linux OOM Score Determines Which Process Gets Killed","author":{"@id":"https:\/\/www.supportpro.com\/blog\/author\/anjali-sindhuarmiasystems-com\/#author"},"publisher":{"@id":"https:\/\/www.supportpro.com\/blog\/#organization"},"image":{"@type":"ImageObject","url":"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2026\/10\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png","width":1920,"height":960},"datePublished":"2026-10-08T00:14:41-06:00","dateModified":"2026-10-08T00:14:44-06:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#webpage"},"isPartOf":{"@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#webpage"},"articleSection":"Linux"},{"@type":"BreadcrumbList","@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/www.supportpro.com\/blog#listItem","position":1,"name":"Home","item":"https:\/\/www.supportpro.com\/blog","nextItem":{"@type":"ListItem","@id":"https:\/\/www.supportpro.com\/blog\/category\/linux\/#listItem","name":"Linux"}},{"@type":"ListItem","@id":"https:\/\/www.supportpro.com\/blog\/category\/linux\/#listItem","position":2,"name":"Linux","item":"https:\/\/www.supportpro.com\/blog\/category\/linux\/","nextItem":{"@type":"ListItem","@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#listItem","name":"How the Linux OOM Score Determines Which Process Gets Killed"},"previousItem":{"@type":"ListItem","@id":"https:\/\/www.supportpro.com\/blog#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#listItem","position":3,"name":"How the Linux OOM Score Determines Which Process Gets Killed","previousItem":{"@type":"ListItem","@id":"https:\/\/www.supportpro.com\/blog\/category\/linux\/#listItem","name":"Linux"}}]},{"@type":"Organization","@id":"https:\/\/www.supportpro.com\/blog\/#organization","name":"SupportPRO","description":"SupportPRO Blog","url":"https:\/\/www.supportpro.com\/blog\/","telephone":"+18476076123"},{"@type":"Person","@id":"https:\/\/www.supportpro.com\/blog\/author\/anjali-sindhuarmiasystems-com\/#author","url":"https:\/\/www.supportpro.com\/blog\/author\/anjali-sindhuarmiasystems-com\/","name":"Anjali Sindhu","image":{"@type":"ImageObject","@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/da6cc3f3b96370c2f86036087fb370994fcc9b1de6e808fa3cd8a0f62dd351e3?s=96&d=mm&r=g","width":96,"height":96,"caption":"Anjali Sindhu"}},{"@type":"WebPage","@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#webpage","url":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/","name":"Linux OOM Scores: How the OOM Killer Selects Processes","description":"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/www.supportpro.com\/blog\/#website"},"breadcrumb":{"@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#breadcrumblist"},"author":{"@id":"https:\/\/www.supportpro.com\/blog\/author\/anjali-sindhuarmiasystems-com\/#author"},"creator":{"@id":"https:\/\/www.supportpro.com\/blog\/author\/anjali-sindhuarmiasystems-com\/#author"},"image":{"@type":"ImageObject","url":"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2026\/10\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png","@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#mainImage","width":1920,"height":960},"primaryImageOfPage":{"@id":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/#mainImage"},"datePublished":"2026-10-08T00:14:41-06:00","dateModified":"2026-10-08T00:14:44-06:00"},{"@type":"WebSite","@id":"https:\/\/www.supportpro.com\/blog\/#website","url":"https:\/\/www.supportpro.com\/blog\/","name":"Server Management Tips","description":"SupportPRO Blog","inLanguage":"en-US","publisher":{"@id":"https:\/\/www.supportpro.com\/blog\/#organization"}}]},"og:locale":"en_US","og:site_name":"Server Management Tips | SupportPRO Blog","og:type":"article","og:title":"Linux OOM Scores: How the OOM Killer Selects Processes","og:description":"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.","og:url":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/","og:image":"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2026\/10\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png","og:image:secure_url":"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2026\/10\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png","og:image:width":1920,"og:image:height":960,"article:published_time":"2026-10-08T06:14:41+00:00","article:modified_time":"2026-10-08T06:14:44+00:00","twitter:card":"summary","twitter:title":"Linux OOM Scores: How the OOM Killer Selects Processes","twitter:description":"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.","twitter:image":"https:\/\/www.supportpro.com\/blog\/wp-content\/uploads\/2026\/10\/How-the-Linux-OOM-Score-Determines-Which-Process-Gets-Killed.png"},"aioseo_meta_data":{"post_id":"18162","title":"Linux OOM Scores: How the OOM Killer Selects Processes","description":"Learn how Linux OOM scores work, how the OOM killer selects processes, and how oom_score_adj, containers, and memory limits affect OOM events.","keywords":null,"keyphrases":{"focus":{"keyphrase":"","score":0,"analysis":{"keyphraseInTitle":{"score":0,"maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"Article","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"seo_analyzer_scan_date":"2026-10-08 06:15:05","breadcrumb_settings":null,"limit_modified_date":false,"open_ai":null,"ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":{"subject":"","preview":"","content":""},"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2026-10-08 06:05:55","updated":"2026-10-08 06:15:05","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t<a href=\"https:\/\/www.supportpro.com\/blog\" title=\"Home\">Home<\/a>\n<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t<a href=\"https:\/\/www.supportpro.com\/blog\/category\/linux\/\" title=\"Linux\">Linux<\/a>\n<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\tHow the Linux OOM Score Determines Which Process Gets Killed\n<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/www.supportpro.com\/blog"},{"label":"Linux","link":"https:\/\/www.supportpro.com\/blog\/category\/linux\/"},{"label":"How the Linux OOM Score Determines Which Process Gets Killed","link":"https:\/\/www.supportpro.com\/blog\/how-the-linux-oom-score-determines-which-process-gets-killed\/"}],"_links":{"self":[{"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/posts\/18162","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/users\/39"}],"replies":[{"embeddable":true,"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/comments?post=18162"}],"version-history":[{"count":1,"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/posts\/18162\/revisions"}],"predecessor-version":[{"id":18164,"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/posts\/18162\/revisions\/18164"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/media\/18163"}],"wp:attachment":[{"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/media?parent=18162"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/categories?post=18162"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.supportpro.com\/blog\/wp-json\/wp\/v2\/tags?post=18162"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}