Jeden z programistów na popularnym forum xda developers zaczął proces debugowania i po wielu godzinach ze zdziwieniem odkrył skąd pochodzi większość lagów (czyli spowolnień) systemu Android.
Opublikował też łatkę, która umożliwia przyspieszenie systemu na wszystkich urządzeniach – smartfonach, jak i tabletach. Jakby tego było mało, na obecną chwilę działanie programu potwierdzają dziesiątki osób z portalu reddit oraz xda developers.
O co chodzi? Google JVM odczytuje wszystkie losowe dane z /dev/random. Problem polega na tym, że /dev/random zawiera bardzo ograniczoną pulę danych. A są one wykorzystywane bardzo często. Gdy ich zabraknie – procesy się blokują, a dla użytkownika objawia się to uciążliwym przycięciem systemu. Proces nie może ruszyć, dopóki kernel nie wygeneruje kolejnej porcji losowych danych.
Może komuś się to przyda. Sam też kiedyś będę chciał spróbować tej łaty.