L'FS incrementale di Google ti consente di giocare a grandi giochi prima del download completo

Google sta lavorando su un Incremental File System, un nuovo FS che potrebbe rendere possibile iniziare a giocare a grandi giochi Android prima che siano completamente scaricati.

Secondo la società di ricerche di mercato, i giochi mobili sono un mercato enorme, con entrate totali che rappresentano quasi la metà del mercato globale dei giochi nel 2019. Nuovozoo. Il Play Store è inondato di nuovi giochi da provare ogni settimana, il che può essere difficile tenere il passo se hai poco tempo per giocare. Google sta lavorando su un nuovo file system per una futura versione di Android, possibilmente Androide 12 nel 2021, il che potrebbe rendere molto più semplice provare nuovi giochi. Il file system si chiama Incremental File System ed è progettato per consentire l'esecuzione delle applicazioni mentre i file binari e di risorse sono ancora in fase di download.

All'inizio di maggio del 2019, Google patch inviate per unire il supporto per l'Incremental File System nel kernel Linux. Secondo la documentazione

che Google ha presentato, Incremental FS è un "file system virtuale Linux per scopi speciali che consente l'esecuzione di un programma mentre i suoi file binari e di risorse sono ancora in fase di elaborazione". scaricato pigramente sulla rete, USB ecc." Lo scopo di questa funzione è "consentire l'esecuzione di grandi app Android prima che i relativi file binari e risorse vengano completamente scaricati su un Dispositivo Android." Al momento, se desideri giocare a un gioco Android di 5 GB, dovresti attendere il completamento dell'intero download prima di poter avviare il gioco. Google afferma che Incremental FS può "attendere senza problemi i dati [temporaneamente] mancanti", il che significa che sarai in grado di avviare il gioco mentre continua a scaricare sempre più parti del gioco completo. Nel caso del nostro ipotetico gioco Android da 5 GB, diciamo che l'introduzione del gioco ha una dimensione di 200 MB con un offset di 1 GB. Con Incremental File System, è possibile scaricare i primi MB di dati del gioco e, durante l'esecuzione, il processo può richiedere il successivo download del primo MB di dati con offset di 1 GB, consentendo l'introduzione inizio. Quindi, è possibile scaricare il resto dei 200 MB di dati introduttivi, il che si spera avvenga più velocemente di quanto l'intro venga riprodotta, e quindi è possibile caricare il menu principale del gioco. Potrebbe verificarsi un piccolo blocco dell'esecuzione quando è necessario caricare il successivo set di dati, ad es. il menu si trova all'offset di 150 MB, ma ciò consentirebbe all'utente di entrare nel gioco più velocemente rispetto all'attesa del completamento dell'intero download.

Dopo aver inviato le patch al kernel Linux, Google ha avviato discussioni con diversi manutentori del kernel Linux in merito all'implementazione e allo scopo del FS. Alcuni hanno criticato Google per aver creato un filesystem del kernel personalizzato piuttosto che estendere il FUSE esistente, o Filesystem in Userspace. Lo ha affermato Google I filesystem basati su FUSE aggiungono un notevole sovraccarico di prestazioni per i suoi scenari target, aumentando il consumo energetico al punto in cui i telefoni consumano energia più velocemente di quanto non si ricaricassero tramite un cavo. Ciò era problematico perché un Googler ha affermato che "l'obiettivo del progetto era consentire la distribuzione istantanea (più o meno) di app dall'ambiente di sviluppo ad Android [telefoni]." Sulla base di questo commento, abbiamo ipotizzato che Google intendesse utilizzare questa funzionalità solo per aiutare gli sviluppatori a testare build incrementali dei loro giochi per cellulari. Potrebbe essere ancora così, tuttavia, diversi mesi dopo l'ultimo commento fatto sulle patch iniziali del kernel Linux, Google iniziato a fondersi commit relativi all'Incremental File System al progetto Android Open Source (AOSP). I commit introducono enormi cambiamenti in molte parti di Android e del kernel Linux di Android, quindi crediamo che sia così possibile che Google stia pianificando di utilizzare l'Incremental File System per migliorare l'esperienza generale dell'utente. Forse Google vuole consentire agli utenti di iniziare a giocare a giochi Android di grandi dimensioni senza doverli scaricare completamente, funzionando essenzialmente come nativi App istantanee sostituzione che non richiede alcun lavoro aggiuntivo da parte degli sviluppatori poiché l'implementazione è nel kernel.

Attualmente Google sta testando la funzionalità su un Pixel 4 XL (corallo), e hanno anche ha creato un modulo del kernel da utilizzare con un'immagine kernel generica (GKI). In diversi commenti, i Googler spiegano che i dispositivi Android con questa funzionalità avranno una nuova directory /data/incremental che contiene sottodirectory per ciascuna app sul dispositivo. Le sottodirectory conterranno APK, librerie native e file OBB. In queste sottodirectory verrà montato il file system incrementale e ciascuna verrà montata in modo vincolato in modo che punti alle directory di installazione originali, ad es. /data/app/. Il Google Play Store sarà in grado di verificare la firma del file di applicazioni installate su Incremental FS, che probabilmente impedirà l'esecuzione di applicazioni incrementali con firme diverse rispetto alle applicazioni attualmente installate.

Dato che il lavoro su questa funzionalità è ancora in corso e la scadenza interna per le principali modifiche alle funzionalità di Android 11 è probabilmente rapida avvicinandosi, se non già superato, sospettiamo che i dispositivi con supporto per l'Incremental File System non inizieranno ad essere distribuiti fino ad Android 12 nel 2021. Continueremo a monitorare lo sviluppo di questa funzionalità e ti aggiorneremo se impareremo di più su come funziona, ovviamente.


Grazie agli sviluppatori riconosciuti XDA phhusson E luca020400 per i loro input!