Android! Где моя память?

Представьте, покупаете вы Android девайс, у которого в ТХ заявлено 8Гб постоянной памяти, и тут вы решаете проверить, как обстоят дела со свободной памятью. Ну открываете вы Настройки->Память и видите:

device-2014-11-06-185335

Что? Какие 4,59Гб? Где мои 8 гигабайт, android?

В статье «Отличия Android устройств или почему нельзя поставить свежую прошивку» я упомянул что память устройства поделена на разделы, так, может быть, ответ в этом? Давайте выясним это.

Берем, открываем Android Terminal Emulator и выполняем команду df, она покажет нам статистику использования памяти.

device-2014-11-06-185602

На скрине нас интересует колонка Size — это размер раздела. Как мы здесь видим, упомянутые 4,59Гб принадлежат разделу data. Там находятся файловое хранилище, установленные программы и настройки. Хуже может быть, если у нас два раздела — data и sdcard, поделенные неудобным нам образом. data, например, может оказаться размером впритык, как бы вы не старались удалять лишние приложения и переносить на карту памяти. Из-за этого на многих телефонах постоянно появляются сообщения о нехватке памяти. Если мы отбросим разделы, примонтированные с помощью fuse, tmpfs и ядерные ФС, то у нас остаются физические разделы:

  • /efs — 19,7 Мб — здесь хранятся MAC адреса, IMEI, и подобная лобудень.
  • /cache — 689,0 Мб — здоровенный раздел, где можно что-нибудь закэшировать. В большинстве случаев почти полностью пустует. Такой здоровый размер может понадобиться разве что в случае скачки архива для обновления прошивки.
  • /system — 1,3 Гб — раздел с системой Android. Кстати, он более чем на половину пуст, по крайней мере для прошивки CyanogenMod 11. Большой запас для больших прошивок с кучей встроенных программ.

Вместе с разделом data это около 6,6 Гб. Но 6,6 гигабайт — это не 8. Где остальные 1,4? Предположим что они не примонтированны.

Ищем не примонтированные разделы

Тогда перезагружаемся в recovery mode. В моем случае это TWRP. Жмем mount и выясняем, что у нас есть preload. Монтируем. Снова выполняем df, видим такую картину:

terminal-adb-shell

У нас preload занимает 503,9 мегабайт и занят меньше, чем на половину. Этот должен оставаться не тронутым с тех пор, как этот планшет сошел с конвейера компании Samsung, и как вы думаете зачем он нужен? Там находится куча предустановленных приложений, которые как-бы можно удалить, но они обязательно вернутся после сброса к заводским настройкам на официальной прошивке. Это приложения от Яндекса, Need For Speed, Весёлые викинги, нямстеры и кое что ещё:

terminal-adb-shell2

Это картинки, видео и музыка, которые никуда не делись, если вы их удалили после покупки. Это samsung_ubank.apk. Все это хранится на полугиговом разделе, которым мне никогда не приходится пользоваться.

Осталось 0,9 Гб. Спишем это на то, что у нас есть загрузчик, разделы boot.img и recovery.img, а гигабайтом традиционно называется гибибайт, который на самом деле больше последнего.

Заключение

Ну можно было бы отмазаться, что мол, системе может много чего понадобиться в своей работе, поэтому доступно только четыре с половиной гигабайта, но такой ответ был бы не правильным. Как мы видим, производитель выделил под нужды разделов огромные запасы емкости, даже если эти разделы не нужны. Тем самым он нагло отобрал около 2-х гигабайт, которые потенциально можно было бы чем-то заполнить. Если же у вас под систему выделено места столько, сколько нужно — поздравляю, у вас места меньше, чем указано в ТХ потому-что они выделены под систему.

2 комментария к “Android! Где моя память?

  1. Спасибо, очень полезно и информативно, но можно ли с этими разделами что-нибудь сотворить? Изменить размер, оптимизировать аппарат так скажем.

    1. На Lenovo P770 была программа, которая переразбивает разделы. Но она железо-спецефическая, а как с другими андроидами дела обстоят я не узнавал.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*