В будущих версиях Android будет проще удалять приложения

Согласно паре коммитов на Android Gerrit, будущие версии Android могут намного лучше справляться с уничтожением приложений.

Одно из самых неприятных событий на телефоне Android — это когда приложения закрываются в фоновом режиме. Уведомления могут перестать приходить, все, что вы делали в последний раз, исчезло, и это полностью рандомизированное поведение. Некоторые телефоны Android лучше других, но почти все они в какой-то момент испытают это. Но будущие изменения в Android, возможно, даже Андроид 13, может означать, что в будущем ваши приложения могут не закрываться так быстро.

Функция под названием «Наименее недавно использованное для нескольких поколений» (или MGLRU) уже реализована в Chrome. ОС в течение некоторого времени, при этом компания поддерживает MGLRU на «множестве различных ядер между 4.14 и 5.15". Один сотрудник Google говорит что она стала «по умолчанию для десятков миллионов пользователей», и теперь, похоже, эта функция появляется и на Android. Коммит по Android Gerrit показывает, что Google объединил изменения для Android 13.

Общий образ ядра (GKI), а другой коммит показывает, что вскоре его можно будет даже включить через adb. Второй коммит еще не объединен, но в настоящее время он находится на рассмотрении.

Эта функция достигает двух основных целей, которые должны быть очень интересны пользователям Android. Во-первых, Google обнаружил снижение использования ЦП kswapd на 40%, а во-вторых, Google обнаружил снижение в 18% нехватки памяти (OOM) убийства приложений на Android. Тот же инженер Google говорит, что компания протестировала MGLRU на «миллионе» Android-устройств, что, похоже, относится к среде выполнения Android на виртуальной машине Chrome OS (ARCVM), которая поддерживает Android 11 в Chrome. ОПЕРАЦИОННЫЕ СИСТЕМЫ. «Мы наблюдаем существенные улучшения с точки зрения использования процессора и нагрузки на память, что приводит к меньшему количеству убийств OOM и уменьшению задержки пользовательского интерфейса», — написали они.

Что касается того, что все это означает, то это довольно просто. kswapd — это процесс, который управляет виртуальной памятью, а это означает, что если загрузка ЦП снижается на 40%, это освобождает большой потенциальный запас обработки. Что касается уничтожения приложений из-за нехватки памяти, это говорит само за себя и, очевидно, принесет немедленную ощутимую выгоду конечным пользователям. Мы видели множество устройств, у которых проблемы с управлением памятью и своевременной доставкой уведомлений или закрытием приложений в фоновом режиме.

В настоящее время неясно, будет ли Google тестировать эту функцию на некоторых пользователях Android 13, не говоря уже о том, чтобы включить ее по умолчанию, но когда она появится, это принесет пользу пользователям. Мы будем внимательно следить за развитием событий, чтобы увидеть, изменится ли что-нибудь в будущем.


Источник: Андроид Геррит (1), (2)

Спасибо признанному разработчику XDA luca020400 за помощь в этой статье!