Google jobber med et inkrementelt filsystem, en ny FS som kan gjøre det mulig å begynne å spille store Android-spill før de er ferdig lastet ned.
Mobilspill er et enormt marked, med de totale inntektene som utgjør nesten halvparten av det globale spillmarkedet i 2019, ifølge markedsundersøkelsesselskapet Newzoo. Play Store flommer over av nye spill du kan prøve hver uke, noe som kan være vanskelig å holde tritt med hvis du har begrenset tid til å spille. Google jobber med et nytt filsystem for en fremtidig versjon av Android, muligens Android 12 i 2021, noe som kan gjøre det mye enklere å prøve ut nye spill. Filsystemet kalles Incremental File System, og det er designet for å tillate applikasjoner som kan kjøres mens binær- og ressursfilene fortsatt lastes ned.
I begynnelsen av mai 2019, Google innsendte patcher å slå sammen støtte for det inkrementelle filsystemet til Linux-kjernen. I følge dokumentasjonen som Google sendte inn, er Incremental FS et "virtuelt Linux-filsystem med spesialformål som tillater kjøring av et program mens dets binære filer og ressursfiler fortsatt blir dovent nedlastet over nettverket, USB osv." Hensikten med denne funksjonen er "å tillate å kjøre store Android-apper før binærfilene og ressursene deres er fullstendig lastet ned til en Android-enhet." Akkurat nå, hvis du vil spille et Android-spill som er på 5 GB, må du vente til hele nedlastingen er ferdig før du kan starte spillet. Google sier at Incremental FS kan «friksjonsfritt vente på [midlertidig] manglende data», noe som betyr at du vil kunne starte spillet ettersom det fortsetter å laste ned mer og mer av hele spillet. Når det gjelder vårt hypotetiske Android-spill på 5 GB, la oss si at spillets intro er 200 MB i størrelse med en offset på 1 GB. Med Incremental File System kan spillets første MB med data lastes ned, og mens det kjøres, prosessen kan kreve at den første MB med data ved 1 GB offset lastes ned neste, slik at introduksjonen til start. Deretter kan resten av de 200 MB med introdata lastes ned, noe som forhåpentligvis vil skje raskere enn introen spilles av, og deretter kan spillets hovedmeny lastes inn. Det kan være en liten frysing i utførelsen når neste sett med data må lastes, dvs. menyen ligger på 150 MB offset, men dette vil tillate brukeren å komme inn i spillet raskere enn å vente på at hele nedlastingen skal fullføres.
Etter å ha sendt inn oppdateringene til Linux-kjernen, engasjerte Google seg i diskusjoner med flere Linux-kjernevedlikeholdere angående implementeringen og formålet med FS. Noen kritiserte Google for å lage et tilpasset kjernefilsystem i stedet for å utvide den eksisterende FUSE, eller filsystemet i brukerområdet. Google uttalte det FUSE-baserte filsystemer legger til betydelig ytelsesoverhead for sine målscenarier, øker strømforbruket til et punkt der telefonene brukte energi raskere enn de ladet over en ledning. Dette var problematisk fordi en Googler sa "prosjektets mål var å tillate øyeblikkelig (-ish) distribusjon av apper fra utviklermiljøet til Android [telefoner]." Basert på denne kommentaren antok vi at Google bare hadde til hensikt at denne funksjonen skulle hjelpe utviklere med å teste inkrementelle konstruksjoner av deres mobilspill. Det kan imidlertid fortsatt være tilfelle, flere måneder etter at den siste kommentaren ble gitt på de første Linux-kjerneoppdateringene, Google begynte å slå seg sammen forplikter seg til det inkrementelle filsystemet til Android Open Source Project (AOSP). Forpliktelsene introduserer enorme endringer i mange deler av Android og Androids Linux-kjerne, så vi tror det er mulig at Google planlegger å bruke det inkrementelle filsystemet for å forbedre den generelle brukeropplevelsen. Kanskje Google ønsker å la brukere begynne å spille store Android-spill uten å måtte laste dem ned fullstendig – i hovedsak fungerer som en innfødt Instant Apps erstatning som ikke krever noe ekstra arbeid fra utviklere siden implementeringen er i kjernen.
For tiden tester Google funksjonen på en Pixel 4 XL (koraller), og det har de også bygget en kjernemodul for bruk med et generisk kjernebilde (GKI). I flere kommentarer forklarer Googlere at Android-enheter med denne funksjonen vil ha en ny /data/inkrementell katalog som inneholder underkataloger for hver app på enheten. Underkatalogene vil inneholde APK-er, opprinnelige biblioteker og OBB-filer. I disse underkatalogene vil det inkrementelle filsystemet monteres, og hver vil bli bind-montert for å peke på de originale installasjonskatalogene, dvs. /data/app/. Google Play-butikken vil kunne sjekke filsignaturen av applikasjoner installert på Incremental FS, noe som sannsynligvis vil forhindre kjøring av inkrementelle applikasjoner med andre signaturer enn de nåværende installerte applikasjonene.
Gitt at arbeidet med denne funksjonen fortsatt pågår, og den interne fristen for store Android 11-funksjonsendringer er sannsynligvis rask nærmer oss, hvis det ikke allerede er bestått, mistenker vi at enheter ikke vil begynne å sende med støtte for det inkrementelle filsystemet før Android 12 i 2021. Vi vil fortsette å spore utviklingen av denne funksjonen og vil selvfølgelig oppdatere deg hvis vi lærer mer om hvordan den fungerer.
Takk til XDA Recognized Developers phhusson og luca020400 for deres innspill!