Что происходит, когда в вашем телефоне заканчивается оперативная память?

Сейчас как премиумные, так и бюджетные смартфоны часто оснащены объемами оперативной памяти, сравнимыми с теми, что встречаются в компьютерах среднего уровня. Это обусловлено тем, что современные телефоны используются для множества задач, включая мультизадачность между многочисленными приложениями, игры и взаимодействие с большими языковыми моделями или использование ИИ для улучшения медиа-контента. Поскольку эти функции требуют память, важно иметь достаточно ОЗУ особенно в условиях интенсивного использования данных сегодня.

"Просто покупай индекс", говорили они. "Это надежно". Здесь мы обсуждаем, почему это не всегда так, и как жить с вечно красным портфелем.

Поверить в рынок

Можно ли сейчас вообще израсходовать всю оперативную память телефона? Звучит маловероятно, но я решил это проверить.

Теоретически говоря, оперативная память компьютера может достичь максимальной емкости при одновременном загрузке множества крупных приложений в операционной системе (ОС). В таких случаях эти приложения могут быть вынуждены закрыться, зависнуть или вся ОС может перестать отвечать на запросы. Однако такой сценарий редок и маловероятен. Я провел эксперимент для подтверждения этого.

Как Android заботится о вашей оперативной памяти

Чтобы обеспечить эффективную и быструю работу операционной системы Android, она использует несколько стратегий перед тем, как начать закрывать приложения, которые вам может потребоваться снова открыть.

Один метод заключается в использовании zRAM, который действует как зона сжатых данных внутри вашей оперативной памяти (RAM). Эта сжатая область автоматически расширяется и сжимается: страницы памяти сжимаются для экономии пространства, когда это необходимо, и декомпрессируются по требованию. До того момента, пока вашему устройству не понадобится дополнительная память, оно без труда перемещает данные менее используемых приложений в эту зону zRAM.

На всех устройствах Android часто встречается использование zRAM, размер которого может быть скорректирован производителями оригинального оборудования (OEM) для достижения оптимальной производительности и отзывчивости. Однако важно отметить, что несмотря на сжатие данных при помощи zRAM, всё равно требуется реальная оперативная память RAM. Следовательно, возможно вы не получите столько памяти, сколько ожидаете от сжатия больших объемов информации.

Сжатие памяти zRAM — это основной инструмент Android, который сохраняет приложения активными в ожидании их использования.

Когда zRAM достигает своей максимальной емкости, Android попытается реализовать несколько решений: Сначала процесс обмена ядра (kswapd) будет стараться освободить память, которую можно легко перезагрузить из хранилища устройства для более быстрого обращения при необходимости. Если это не сработает, возможно выключение дополнительных страниц из zRAM или, если есть свободное место, перемещение части памяти в файл подкачки на вашем телефоне.

В то время как физическое хранилище подкачки не является стандартной функцией в стандартном Android, некоторые кастомные ROM и определенные OEM-решения ‘виртуальной оперативной памяти’ экспериментировали с ним. Тем не менее, это исключение, а не правило. Когда все ресурсы исчерпаны, приложения, которые активно не используются, будут закрыты для освобождения места под активные процессы. Однако метод управления этим процессом может различаться среди производителей устройств.

Samsung ОЗУ Плюс против Xiaomi Расширение памяти

Я только что попробовал Galaxy S25 Ultra от Samsung и Xiaomi 15 Ultra. Первый оснащен оперативной памятью на 12 ГБ, что позволило мне провести идеальную проверку оптимизации RAM Plus от Samsung в реальных условиях использования. С другой стороны, второй предлагает технологию «Расширение памяти», которая увеличивает объем встроенной памяти телефона для улучшения производительности.

Использует ли RAM Plus обычный zRAM или фактическую область подкачки? Это различие критически важно, поскольку Samsung опубликовала исследование 2023 года, предлагающее концепцию «Адаптивной подкачки», которая сочетает скорость работы zRAM с медленным, но отзывчивым поведением swap для потенциальной комбинации преимуществ обоих подходов. Настройки RAM Plus на устройствах Samsung предполагают использование памяти вашего телефона в качестве виртуальной, что может указывать на применение механизма swap, даже если это прямо не заявлено.

Каждый телефон использует zRAM, а некоторые также используют пространство подкачки. Но не S25 Ultra.

На Galaxy S25 Ultra изменение настроек RAM Plus не оказывает влияния на разделы флэш-памяти или ссылки на своповые пространства через команды adb shell вроде /proc/partitions или df -h. Это четко указывает, что RAM Plus модифицирует только целевой размер zRAM, но не использование хранилища для свопа. Хотя это не исключает возможность использования swap на некоторых смартфонах Samsung, это предполагает, что Galaxy S25 Ultra этого не делает.

Вместо изменения опции «Memory extension» в Xiaomi 15 Ultra, вы заметите уменьшение свободного места как в каталоге ‘/data’, так и в ‘/storage/emulated’ (эти пути идентичны, но называются по-разному). Хотя я не могу точно определить, где используется дополнительное пространство памяти без рутовых прав, изменения после перезагрузки совпадают с запросом расширения памяти. Между тем общий объем пула zRAM остается неизменным на уровне 16 ГБ независимо от выбранной настройки.

Зачем вообще нужен переключатель?

Переключение настройки RAM Plus в Samsung не изменяет фактический размер блочного устройства zRAM, а вместо этого регулирует целевое количество данных, которое система стремится сохранять сжатыми с помощью zRAM. Чем больше данных будет сжато, тем больше оперативной памяти фактически потребляет zRAM; объем используемой оперативной памяти зависит от коэффициента сжатия, который может варьироваться в зависимости от типа сжимаемых данных и используемого алгоритма.

Выбор более высокого значения RAM Plus, например 8 ГБ, позволяет поддерживать больше приложений в фоновом режиме, что способствует улучшению многозадачности. Однако это повышенное сжатие может привести к незначительным замедлениям производительности. Напротив, выбор меньшего значения, как 3 ГБ, фокусируется на скорости за счет уменьшения способности сохранять приложения в фоновом режиме.

На смартфоне Samsung Galaxy S25 Ultra вы не можете установить цель zRAM ниже 3ГБ, даже если отключите функцию RAM Plus. Это разумно учитывая его физическую память в 12ГБ, поскольку маловероятно, что zRAM потребует более 1ГБ оперативной памяти. Однако имейте в виду, что это может не относиться ко всем телефонам Samsung, особенно бюджетным моделям с меньшим объемом оперативной памяти.

С помощью Samsung RAM Plus вы можете оптимизировать использование оперативной памяти между сохранением приложений или повышением отзывчивости системы.

Если RAM Plus по сути является продолжением обычного управления оперативной памятью, может возникнуть вопрос о необходимости контроля пользователя над этим. Тем не менее существует тонкое различие, которое может быть заметно: предоставляя такой контроль, можно решить, стоит ли устройству отдавать предпочтение сохранению фоновых приложений (для большего zRAM) или обеспечению немедленных ответов (меньший zRAM). Этот выбор удобно предоставляется через слайдер, вместо сложных настроек параметров ядра.

Смартфон Xiaomi 15 Ultra демонстрирует уникальное поведение: этот телефон неизменно стремится к использованию до 16 ГБ памяти для сжатия данных. Тем не менее память, хранящаяся в zRAM, поддерживается дополнительным swap-пространством для предотвращения завершения работы приложений при интенсивном использовании. К сожалению, я не могу точно определить, когда сжатая память перемещается на флэш-память, но вероятно это происходит после использования определенного объема оперативной памяти. При наличии 16 ГБ ОЗУ может быть сложно обращаться к swap-пространству. Недостаток заключается в том, что сжатие и распаковка данных с хранения медленнее, чем из оперативной памяти, даже при быстром современном UFS хранилище.

Что происходит, когда заканчивается оперативная память?

Для проверки их производительности при интенсивном использовании я провёл ряд тестов на обоих смартфонах. Сначала добавлял приложения постепенно и наблюдал изменения в потреблении оперативной памяти (RAM) и zRAM. В конце загрузил веб-браузер до предела, чтобы он занял 8 ГБ RAM. Стоит отметить, что система управления памятью Android объединяет флэш свап и zRAM в одну метрику ‘SwapTotal’, что затрудняет определение точного объема своп пространства на телефонах вроде Xiaomi (если не рутовать устройство).

Производительность результатов согласуется с нашими прогнозами. Работа с небольшими программами не нагружает достаточное количество оперативной памяти в 12 ГБ у Galaxy S25 Ultra, и Xiaomi без труда справляется с ними, имея 16 ГБ ОЗУ. Использование zRAM минимально, периодически сжимая некоторые фоновые задачи в реальном времени, но речь идет всего лишь о нескольких мегабайтах. Иными словами, здесь нет необходимости в дополнительном swap пространстве. В таком состоянии устройства переключение между приложениями происходит плавно и мгновенно, без задержек или потерь данных.

Быстро включается сжатие, гарантируя что ОС остается отзывчивой при нехватке оперативной памяти.

Когда у вас работают одновременно несколько игр и приложений, доступная оперативная память часто опускается ниже 4 ГБ, что вызывает усиленное управление оперативной памятью. Конкретное падение зависит от конкретной рабочей нагрузки; использование zRAM иногда достигает высоких мегабайт или даже более гигабайта. Несмотря на это, игры не требуют полной перезагрузки, хотя некоторые активные сессии могут завершаться, а веб-страницы могут потребовать перезагрузки. Однако я не сталкивался с существенным замедлением системы, даже при одновременном запуске множества игр. Как уже было сказано ранее, 12 ГБ оперативной памяти более чем достаточно для большинства обычных сценариев использования, за исключением, возможно, передовых специализированных задач ИИ.

Встроенная система управления памятью Android действительно эффективна. Для того чтобы симулировать массовое удаление приложений, мне пришлось открыть веб-страницу размером 4 ГБ и вручную закрыть устройство. Несмотря на это, One UI от Samsung и HyperOS от Xiaomi продолжали работать без сбоев. К этому моменту большинство крупных приложений уже были закрыты, поэтому при следующем их запуске требовалось перезапустить их с самого начала.

В принципе невозможно исчерпать оперативную память (RAM), так как она управляется динамически.

Когда ваш Android-устройство достигает предела памяти, оно начинает автоматически закрывать неактивные приложения. Из-за zRAM (и swap space, если используется) такое происходит реже, что делает такую ситуацию редкостью в повседневной эксплуатации. Функция сжатия zRAM существенно способствует предотвращению подобных ситуаций. Телефоны с дополнительным swap пространством дольше сохраняют работу приложений, но могут не ощущаться такими быстрыми и отзывчивыми, как устройства, использующие только zRAM. Однако на Xiaomi 15 Ultra маловероятно, что для большинства мобильных приложений необходимы 16 ГБ памяти, даже если это может показаться излишним.

Дополнительный момент: swap не заменяет zRAM — он работает вместе с ним. В отличие от непрерывного записи на физическое хранилище при включении, он только добавляет минимальное количество износа со временем вместо полного использования флеш-памяти. Заметным является то, что загрузка приложений из хранилища после нахождения их в фоне занимает немного больше времени по сравнению с их извлечением из RAM; однако это означает, что вам не придется перезагружать их снова.

По мере того как объемы оперативной памяти продолжают расти и методы управления памятью в Android становятся все более интеллектуальными, возможно, что использование swap-пространства больше не будет обязательным. Тем не менее, оно может оставаться полезным ресурсом для устройств с ограниченным бюджетом или тех, которые активно работают над искусственным интеллектом.

Смотрите также

2025-06-28 15:18