Znížte oneskorenie hry na zariadení Nexus 7 a ďalších zariadeniach pomocou generátora entropie Seeder

Aktualizácia: Z dôvodu pochybných ziskov a skrytých nevýhod odporúčame používateľom, aby si ich prečítali toto vysvetlenie pred pokračovaním.

Napriek skutočne špičkovému hardvéru, niektorým špičkovým zariadeniam so systémom Android Zdá sa, že stále máte problémy s niektorými hrami. Existujú mody na odstránenie týchto problémov s oneskorením, pretože základná príčina sa zvyčajne rovná nejakému problému s procesorom, ktorý nepracuje na svoju plnú kapacitu. Teraz existuje nová oprava pre Nexus 7 zariadenia, ktoré vám pomôžu znížiť oneskorenie hry.

Senior člen XDA lambgx02 pôvodne zverejnil Seeder Entropy Generator na zastavenie oneskorenia na rôznych zariadeniach so systémom Android. Predpokladom bolo, že väčšina oneskorení hry bola spôsobená entropiou. Ako vysvetľuje lambgx02:

Takže som z času na čas zažil značné oneskorenie, ako to robíme my všetci, a rozhodol som sa, že sa tomu dostanem na koreň.

Po niekoľkých hodinách sledovania a ladenia som objavil zdroj 90 % oneskorenia Androidu. Jedným slovom, entropia (alebo jej nedostatok).

JVM od Google, podobne ako Sun, číta z /dev/random. Pre všetky náhodné údaje. Áno, /dev/random, ktorý používa veľmi obmedzený fond entropie.

Náhodné údaje sa používajú pre všetky druhy vecí. Generovanie UUID, kľúče relácie, SSL.. keď nám dôjde entropia, proces sa zablokuje. To sa prejavuje ako oneskorenie. Proces nemôže pokračovať, kým jadro nevygeneruje ďalšie vysokokvalitné náhodné údaje.

Takže som krížovo skompiloval rngd a použil som ho na pridávanie /dev/urandom do /dev/random v 1-sekundových intervaloch.

Výsledkom vyriešenia tohto problému je, že hry bežia oveľa, oveľa plynulejšie. XDA uznávaný prispievateľ bradman117 otestovali a potvrdili, že funguje pre Nexus 7 a zverejnili, kde ho môže vidieť viac používateľov. Používatelia zatiaľ hlásia vynikajúce výsledky. Inštalácia je tiež jednoduchá, pretože je to jednoduchý zips na flashovanie pri obnove.

Ak sa však rozhodnete to skúsiť, uvedomte si veľmi reálne upozornenia zníženej bezpečnosti v dôsledku horšieho generovania náhodných čísel, ako aj zníženej životnosti batérie. Ako uvádza lambgx02:

  • Existuje (teoretické) bezpečnostné riziko v tom, že seedovanie /dev/random s /dev/urandom znižuje kvalitu náhodných údajov. V praxi je pravdepodobné, že to bude kryptograficky zneužité ďaleko nižšia ako pravdepodobnosť, že niekto zaútočí na samotný OS (oveľa jednoduchšia výzva).
  • To môže nepriaznivo ovplyvniť životnosť batérie, pretože sa prebúdza každú sekundu. Nedrží prebudenie, takže by to nemalo mať veľký vplyv, ale ak si myslíte, že to spôsobuje problémy, dajte mi vedieť. Do kódu môžem pridať blokovacie čítanie, aby sa spustil iba vtedy, keď je obrazovka zapnutá. Na druhej strane mnohí z nás pripisujú oneskorenie nedostatku výkonu procesora. Keďže tento hack eliminuje takmer všetky oneskorenia, je menej potrebné pretaktovanie, čo potenciálne znižuje spotrebu batérie.

Zatiaľ čo lambgx02 uvádza, že riziko zneužitia v dôsledku náhodný -> náhodný výsev je nízky, akékoľvek zvýšené riziko je príliš veľa pre denne poháňané zariadenie v našej knihe. Odporúčame všetkým, ktorí majú záujem, aby si to premysleli, vzhľadom na možné riziká. Chápeme však, prečo niektorí v prísne kontrolovaných prostrediach, kde kryptografická sila nie je veľmi dôležitá, môžu chcieť vyskúšať toto. Ak chcete vidieť viac, pozrite si vlákno Nexus 7 ako aj pôvodné vlákno.