Das timing zu starten, Android Low Memory killer
Wie wir wissen, die low-memory-killer beginnt zu einem festen Zeitpunkt. Wie lange ist die "Feste Zeit"? Wo ist der code um dies zu konfigurieren?
- Ihre Frage ist nicht klar. können hinzufügen, einige zusätzliche Informationen in deiner Frage.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Android LMK nicht starten, freigeben von Speicher einige Zeit, aber es hängt davon ab, minfree Werte:
Zum Beispiel, wenn
cat /sys/module/lowmemorykiller/parameters/minfree
hat die folgenden Werte:Dann, dass heißt, diese Werte sind Schwellenwerte Speicher für das starten töten dieser besonderen Art von Prozessen.
E. g., wenn der freie Speicher (RAM) im system ist kleiner als (6144*4/1024)= 24 MB, dann LMK wird beginnen zu töten
EMPTY_APP
Prozesse. Ebenso, wenn noch Speicher Zustand nicht verbessern, wird es beginnen Tötung inEMPTY_APP->CONTENT_PROVIDER->....->FOREGROUND_APP
(letzten getötet werden, dies sollte nie passieren).Im asynchronen Fall, LMK ist zeitlich mit dem kernel pageout-daemon (kswapd). Also ich nehme an, Sie können ein wenig tiefer Graben in kswapd Ablaufsteuerung, um herauszufinden, ob es wake-up-Zeit ist begrenzt, die ein Teil der Antwort auf Ihre Frage auf timing Einschränkungen.
Die LMK shrinker Rückruf kann auch aufgerufen werden, die außerhalb des kswapd Kontext. Dies tritt auf, wenn das system führt eine direkte synchrone Seite zurückzufordern (siehe. mm/page_alloc.c)
Hinweise:
Im Zusammenhang DAMIT Fragen/Antworten