Was passiert, wenn das Linux-Betriebssystem keinen RAM mehr hat und kein Swap verfügbar ist?
Was passiert, wenn das Linux-Betriebssystem keinen RAM mehr hat und kein Swap verfügbar ist?
Antworten:
Wenn das Betriebssystem nicht über genügend RAM verfügt und keinen Auslagerungsspeicher hat, werden leere Seiten verworfen. Dirty Pages können nicht verworfen werden, da sie zuerst irgendwo geschrieben werden müssten. Dies führt zu Thrashing und schlechter Leistung, wenn nicht genügend RAM für den Arbeitsspeicher vorhanden ist. Dies ist einer der Hauptgründe, warum Sie wirklich einen Austausch wünschen - damit das Betriebssystem eine bessere Entscheidung darüber treffen kann, welche Seiten entfernt werden sollen.
Ohne Auslagerung wird dem System der virtuelle Speicher ausgehen (genau genommen RAM + Auslagerung), sobald keine sauberen Seiten mehr zu räumen sind. Dann muss es Prozesse abbrechen.
Es ist völlig normal, dass der Arbeitsspeicher knapp wird. Es ist nur ein Minuspunkt bei der Verwendung von RAM. Wenn nicht genügend RAM zur Verfügung steht, kann dies auch als "RAM-Verschwendung" bezeichnet werden. Sobald der gesamte Arbeitsspeicher belegt ist, trifft das Betriebssystem intelligente Entscheidungen darüber, was im Arbeitsspeicher aufbewahrt werden soll und was nicht. Ohne Swap stehen weniger Optionen zur Verfügung.
Wenn das Entfernen von Seiten mit oder ohne Auslagerung nicht ausreicht, lehnt das Betriebssystem zunächst ab, Vorgänge zuzulassen, die Speicher erfordern (z. B. mmap
und fork
). Manchmal reicht das jedoch nicht aus und Prozesse müssen abgebrochen werden.