Meinem Computer ging kürzlich der Speicherplatz aus (eine nicht unerwartete Folge des Kompilierens von Software bei der Arbeit mit großen GIS-Datensätzen). Im Systemprotokoll wird in der folgenden Zeile beschrieben, wie es mit der OOM-Bedingung umgegangen ist:
Out of memory: Kill process 7429 (java) score 259 or sacrifice child
Worum geht es hier or sacrifice child
? Sicherlich ist es kein dunkles Ritual, die Dinge am Laufen zu halten?
linux-kernel
out-of-memory
Kennzeichen
quelle
quelle
Es geht darum, einen untergeordneten Prozess des Prozesses zu töten , dem ein
KILL
Signal gesendet werden soll.quelle
Dies ist der Mörder von Oom (Out of Memory). Wenn auf Ihrem System nicht mehr genügend Arbeitsspeicher vorhanden ist, bricht der Linux-Kernel die Prozesse ab, um Arbeitsspeicher freizugeben. Eine Heuristik bestimmt, welcher Prozess der beste Kandidat ist, um Speicher freizugeben, ohne das System zu beschädigen (normalerweise sind Root-Prozesse nicht die besten Kandidaten).
Weitere Details hier: Wie entscheidet der OOM-Killer, welcher Prozess zuerst beendet wird?
quelle