Bawiłem się wczoraj ustawieniami oom killera na moim telefonie, ale nie mogłem uzyskać zadowalających efektów.
Moja konfiguracja:
370MB dostępne dla systemu
512MB swap (swappiness 100)
wzorem z debiana wyłączyłem overcommit_memory i obserwowałem.
Niestety nawet próby wyłączenia oom killera
minfree 0,0,0,0,0,0
a potem także
adj 16,16,16,16,16,16
nic w zasadzie nie dały, choć teoretycznie oom killer według dokumentacji nie powinien działać.
Próba odpalenia wielu procesów kończy sie zabiciem innych, wolny RAM nie schodzi poniżej około 128MB. Użycie swapa ~20MB.
Telefon działa bardzo dobrze, ale niestety procesy w tle zabija (razem z danymi które mają), zamiast użyć swapa.
Przykład: maluje sobie w SketchBook obrazek, wchodze do opery i paru innych aplikacji, wracam do Sketchbooka i po moim obrazku nie ma śladu, swap nie został użyty.
Być może Android ma jakiś limit procesów, albo jest zabezpieczenie przed wyłączeniem oom i trzeba użyć mniej podejrzanych wartości.
Albo użyte przeze mnie aplikacje same się zamykają i muszę użyć innych.
Przez to możliwości multitaskingu na Androidzie są w rzeczywistości bardzo ograniczone :/
edit:
to chyba jednak chodzi o rodzaj użytej aplikacji, jałowe odpalanie wszystkiego co popadnie nie działa. Włączyłem muzykę i uzycie swapa wzrosło do 40MB.
Ale mógłby Sketchbooka jednak nie zabijać, straciłem 10 sekund na to malowidło.
Ostatnio zmieniany przez sobrus : 12.02.2013 o godz. 07:35
|