Google Incremental FS vă permite să jucați jocuri mari înainte de a descărca complet

Google lucrează la un sistem de fișiere incremental, un nou FS care ar putea face posibilă începerea jocului de jocuri mari Android înainte ca acestea să fie descărcate complet.

Jocurile mobile sunt o piață uriașă, veniturile sale totale reprezentând aproape jumătate din piața globală a jocurilor în 2019, potrivit companiei de cercetare de piață. Newzoo. Magazinul Play este inundat de jocuri noi de încercat în fiecare săptămână, ceea ce poate fi dificil să ții pasul dacă ai timp limitat de jucat. Google lucrează la un nou sistem de fișiere pentru o viitoare versiune de Android, eventual Android 12 în 2021, ceea ce ar putea face mult mai ușor să încerci jocuri noi. Sistemul de fișiere se numește Sistem de fișiere incremental și este conceput pentru a permite executarea aplicațiilor în timp ce fișierele sale binare și de resurse sunt încă descărcate.

La începutul lui mai 2019, Google patch-uri depuse pentru a îmbina suportul pentru sistemul de fișiere incremental în nucleul Linux. Conform documentatiei

pe care Google a prezentat, Incremental FS este un „sistem de fișiere virtuale Linux cu scop special, care permite executarea unui program în timp ce fișierele sale binare și de resurse sunt încă în curs descărcate leneș prin rețea, USB etc.” Scopul acestei caracteristici este „de a permite rularea de aplicații mari Android înainte ca binarele și resursele lor să fie complet descărcate într-un Dispozitiv Android." În acest moment, dacă doriți să jucați un joc Android cu o dimensiune de 5 GB, va trebui să așteptați ca întreaga descărcare să se termine înainte de a putea lansa jocul. Google spune că Incremental FS poate „așteaptă fără frecare datele [temporare] lipsă”, ceea ce înseamnă că vei putea lansa jocul pe măsură ce acesta continuă să descarce din ce în ce mai mult din jocul complet. În cazul jocului nostru ipotetic Android de 5 GB, să spunem că introducerea jocului are o dimensiune de 200 MB situată la un offset de 1 GB. Cu sistemul de fișiere incremental, primul MB de date al jocului poate fi descărcat și, în timp ce este în curs de execuție, procesul poate solicita ca primul MB de date la offset-ul de 1 GB să fie descărcat în continuare, permițând introducerii să start. Apoi, restul de 200 MB de date introductive pot fi descărcate, ceea ce sperăm că s-ar întâmpla mai repede decât este redată introducerea, iar apoi meniul principal al jocului poate fi încărcat. Ar putea exista o mică înghețare în execuție atunci când următorul set de date trebuie încărcat, de exemplu. meniul situat la offset-ul de 150 MB, dar acest lucru ar permite utilizatorului să intre în joc mai repede decât să aștepte ca întreaga descărcare să se termine.

După ce a trimis patch-urile la kernel-ul Linux, Google s-a angajat în discuții cu mai mulți întreținători ai nucleului Linux cu privire la implementarea și scopul FS. Unii au criticat Google pentru crearea unui sistem de fișiere kernel personalizat, mai degrabă decât extinderea FUSE, sau sistemul de fișiere existent în spațiul utilizator. Google a declarat că Sistemele de fișiere bazate pe FUSE adaugă o performanță semnificativă pentru scenariile sale țintă, creșterea consumului de energie până la punctul în care telefoanele consumau energie mai repede decât se încărcau prin cablu. Acest lucru a fost problematic deoarece un Googler a spus „obiectivul proiectului a fost să permită implementarea instantanee (-ish) a aplicațiilor din mediul de dezvoltare pe Android. [telefoane]." Pe baza acestui comentariu, am presupus că Google intenționa ca această funcție doar să ajute dezvoltatorii să testeze versiuni incrementale ale acestora. jocuri pe mobil. Acesta ar putea fi încă cazul, totuși, la câteva luni după ce ultimul comentariu a fost făcut cu privire la patch-urile inițiale ale nucleului Linux, Google a început să fuzioneze angajamente legate de sistemul de fișiere incremental la Android Open Source Project (AOSP). Comiterile introduc schimbări uriașe în multe părți ale nucleului Android și Linux Android, așa că credem că este este posibil ca Google să intenționeze să utilizeze sistemul de fișiere incremental pentru a îmbunătăți experiența generală a utilizatorului. Poate că Google dorește să permită utilizatorilor să înceapă să joace jocuri mari Android fără a fi nevoiți să le descarce complet - în esență, servind ca un nativ Aplicații instantanee înlocuire care nu necesită nicio muncă suplimentară din partea dezvoltatorilor, deoarece implementarea este în kernel.

În prezent, Google testează funcția pe un Pixel 4 XL (coral), și au, de asemenea a construit un modul kernel pentru utilizare cu o imagine de kernel generică (GKI). În mai multe comentarii, angajații Google explică că dispozitivele Android cu această funcție vor avea un nou director /data/incremental care conține subdirectoare pentru fiecare aplicație de pe dispozitiv. Subdirectoarele vor conține APK-uri, biblioteci native și fișiere OBB. În aceste subdirectoare, sistemul de fișiere incremental va fi montat și fiecare va fi montat prin legare pentru a indica directoarele de instalare originale, de exemplu. /data/app/. Magazinul Google Play va putea verifica semnătura fișierului de aplicații instalate pe FS Incremental, ceea ce va împiedica probabil executarea aplicațiilor incrementale cu semnături diferite decât aplicațiile instalate în prezent.

Având în vedere că lucrările la această caracteristică sunt încă în desfășurare și termenul intern pentru modificări majore ale caracteristicilor Android 11 este probabil rapid se apropie, dacă nu a trecut deja, bănuim că dispozitivele nu vor începe să fie livrate cu suport pentru sistemul de fișiere incremental până la Android 12 în 2021. Vom continua să urmărim dezvoltarea acestei funcții și vă vom actualiza dacă aflăm mai multe despre cum funcționează, desigur.


Mulțumim dezvoltatorilor recunoscuți XDA phhusson și luca020400 pentru contribuțiile lor!