Інкрементна FS від Google дозволяє грати у великі ігри до повного завантаження

click fraud protection

Google працює над інкрементальною файловою системою, новою FS, яка дозволить почати грати у великі Android-ігри до того, як вони будуть повністю завантажені.

За даними дослідницької компанії, мобільні ігри — це величезний ринок, загальний дохід якого становив майже половину світового ринку ігор у 2019 році. Newzoo. Play Store переповнений новими іграми, які можна спробувати щотижня, і встигати за якими може бути важко, якщо у вас обмежений час для гри. Google працює над новою файловою системою для майбутньої версії Android, можливо Android 12 у 2021 році, що може значно полегшити випробування нових ігор. Файлова система називається Інкрементальною файловою системою, і вона розроблена для того, щоб дозволити програмам виконуватися, поки двійкові файли та файли ресурсів ще завантажуються.

На початку травня 2019 року Google поданих патчів щоб об’єднати підтримку інкрементальної файлової системи в ядро ​​Linux. Відповідно до документації За словами Google, Incremental FS — це «віртуальна файлова система Linux спеціального призначення, яка дозволяє виконувати програму, поки її двійкові файли та файли ресурсів все ще знаходяться ліниво завантажується через мережу, USB тощо». Ціль цієї функції — «дозволити запуск великих програм Android до того, як їхні двійкові файли та ресурси будуть повністю завантажені на Наразі, якщо ви хочете грати в гру для Android розміром 5 ГБ, вам доведеться дочекатися завершення завантаження, перш ніж запускати гру. Google каже, що Incremental FS може «без зусиль чекати [тимчасово] відсутніх даних», що означає, що ви зможете запустити гру, оскільки вона продовжує завантажувати все більше і більше повної гри. У випадку нашої гіпотетичної гри для Android з пам’яттю 5 ГБ, скажімо, вступна частина гри має розмір 200 МБ зі зміщенням 1 ГБ. Завдяки інкрементній файловій системі можна завантажити перші МБ даних гри, а поки вона виконується, процес може викликати наступне завантаження першого МБ даних зі зміщенням 1 ГБ, дозволяючи вступу початок. Потім можна буде завантажити решту 200 МБ вступних даних, що, як ми сподіваємося, відбудеться швидше, ніж відтворюється вступ, а потім можна буде завантажити головне меню гри. Може бути невелика зависання у виконанні, коли потрібно завантажити наступний набір даних, тобто. меню, розташоване зі зміщенням у 150 МБ, але це дозволить користувачеві увійти в гру швидше, ніж чекати, поки закінчиться завантаження.

Після надсилання патчів до ядра Linux компанія Google обговорила з кількома розробниками ядра Linux щодо впровадження та призначення FS. Деякі критикували Google за створення спеціальної файлової системи ядра замість розширення існуючої FUSE або файлової системи в просторі користувача. Про це заявив Google Файлові системи на основі FUSE додають значних витрат на продуктивність для його цільових сценаріїв, збільшуючи споживання енергії до точки, коли телефони витрачали енергію швидше, ніж вони заряджалися через шнур. Це було проблематично, тому що співробітник Google сказав, що «ціль проекту полягала в тому, щоб дозволити миттєве (не) розгортання програм із середовища розробників на Android [телефони]." Базуючись на цьому коментарі, ми припустили, що Google мав намір використовувати цю функцію лише для допомоги розробникам у тестуванні поетапних збірок їхніх рухливі ігри. Це все ще може бути так, однак через кілька місяців після останнього коментаря щодо початкових виправлень ядра Linux Google почали зливатися коміти, пов’язані з інкрементальною файловою системою, до проекту з відкритим вихідним кодом Android (AOSP). Коміти вносять величезні зміни в багато частин Android і ядра Linux Android, тому ми віримо, що це так Можливо, Google планує використовувати інкрементну файлову систему для покращення загального досвіду користувача. Можливо, Google хоче дозволити користувачам почати грати у великі Android-ігри, не завантажуючи їх повністю — по суті, слугуючи рідними Миттєві програми заміна, яка не потребує додаткової роботи від розробників, оскільки реалізація є внутрішньоядерною.

Зараз Google тестує функцію на Pixel 4 XL (корал), і вони також створив модуль ядра для використання з загальним образом ядра (GKI). У кількох коментарях працівники Google пояснюють, що пристрої Android із цією функцією матимуть новий каталог /data/incremental, який містить підкаталоги для кожної програми на пристрої. Підкаталоги міститимуть файли APK, рідні бібліотеки та файли OBB. У цих підкаталогах буде змонтовано Інкрементну файлову систему, і кожен буде змонтовано за допомогою прив’язки, щоб вказувати на початкові каталоги встановлення, тобто. /data/app/. Магазин Google Play зможе перевірити підпис файлу додатків, встановлених на інкрементній FS, що, ймовірно, перешкоджатиме виконанню інкрементних додатків із сигнатурами, відмінними від поточних інстальованих програм.

З огляду на те, що робота над цією функцією все ще триває, а внутрішній термін для основних змін у функціях Android 11, ймовірно, скоро закінчиться наближається, якщо ще не пройдено, ми підозрюємо, що пристрої не почнуть надходити з підтримкою інкрементної файлової системи до Android 12 у 2021 році. Ми продовжуватимемо стежити за розвитком цієї функції та повідомимо вас, якщо дізнаємось більше про те, як вона працює, звичайно.


Дякуємо визнаним розробникам XDA фхуссон і luca020400 за їхні внески!