Wenn ich die Standardeinstellungen verwende:
vm.overcommit_memory = 0
vm.overcommit_ratio = 50
Ich kann diese Werte aus der /proc/meminfoDatei lesen :
CommitLimit: 2609604 kB
Committed_AS: 1579976 kB
Aber wenn ich vm.overcommit_memoryvon 0zu ändere , 2kann ich nicht die gleichen Anwendungen starten, die ich vor der Änderung starten konnte, insbesondere Amarok. Ich musste ändern vm.overcommit_ratiozu 300, so dass die Grenze erhöht werden kann. Wenn ich nun Amarok starte, /proc/meminfozeigt sich folgendes:
CommitLimit: 5171884 kB
Committed_AS: 3929668 kB
Diese Maschine hat nur 1 GB RAM, aber amarok funktioniert ohne Probleme, wenn vm.overcommit_memoryes auf 0 gesetzt ist. Wenn es jedoch auf 0 gesetzt ist 2, muss amarok mehr als 2 GB Arbeitsspeicher zuweisen. Ist es ein normales Verhalten? Wenn ja, kann jemand erklären, warum beispielsweise Firefox (das 4-6x mehr Speicher als Amarok belegt) vor und nach der Änderung auf die gleiche Weise funktioniert?
Committed_ASnicht in beiden Fällen gleich sein?