не хотел, но ладно...
dmesg > /sdcard/log.txt
Команда создаст в папке /sdcard на устройстве файл log.txt. Открываем файл, смотрим первые 10-20 строк и ищем следующее:
Для версии ядра меньше 2.6.2х.хх
[ 0.000000] Memory: 256MB 256MB = 512MB total
[ 0.000000] Memory: 340484k/340484k available, 183804k reserved, 0K highmem
Для версии ядра больше 2.6.3х.хх или 3.х
[ 0.000000] DDR DEBUG: version 2.02 20111109
[ 0.000000] DDR DEBUG: DDR3 Device
[ 0.000000] DDR DEBUG: 1 CS, ROW=14, Bank=8, COL=10, Total Capability=512MB
[ 0.000000] DDR DEBUG: init success!!! freq=456MHz
[ 0.000000] DDR DEBUG: CSR:0x0, RSLR0:0x249, RSLR1:0x0, RDGR0:0x55, RDGR1:0x55
Примечание: DDR DEBUG выводится если в ядре при компиляции указан флаг Memory Debug.
Первая строка (Memory: 256MB 256MB = 512MB total) говорит, что в устройстве 2 чипа по 256Мб, в сумме 512Мб. Это значение реальной оперативной памяти, установленной в планшете. Или для новых ядер DDR DEBUG: ..... Total Capability=512MB. (в новых ядрах строка Memory уже выводит только доступную пользователю память, а реальная написана в DDR DEBUG выше.)
Вторая строчка (у старых ядер: 340484k/340484k available, 183804k reserved) говорит, что 183Мб зарезервировано ядром системы. Эту память вам не высвободить никак, так как в этом пространстве памяти будут работать модули и само ядро. Из строки еще видно, что 340МБ доступно пользователю.
В наших устройствах NAND памяти 4Гб. В сводке о свободной памяти отображается порядка 2.5Гб, а то и меньше.
Куда девается память?
Память внутри устройства делится на несколько разделов (для пользователей ОС Windows поясню, память делится как будто на разделы C:, D:, E:, F:).
Чаще всего деление происходит так:
data - раздел в которые устанавливаются программы
system - тут хранятся системный файлы
cache - тут хранятся временные файлы программ и также их настройки.
sdcard - /mnt/sdcard - то где хранятся пользовательские файлы, и то что
подключается, как USB-диск, если подключить планшет проводом к компьютеру.
Разделы system и cache не доступны пользователю (доступ к ним можно получить только с правами root). Раздел data может отображаться в свойствах как "доступно для приложений", обычно он имеет размер в 1Гб. Деление на разделы происходит во время перепрошивки устройства, и размер раздела задается заведомо больше, чем займет ОС. Например, под системные файлы раздел system может быть размером 500Мб, хотя сама ОС будет занимать на этом разделе 300Мб, хоть 200Мб останется свободно, но как я уже сказал ранее, они не будут доступны пользователю.
Проверяем:
Для проверки нам опять потребуется Android Terminal Emulator. И установленный BysyBox, в большинстве устройств он уже уставновлен, если нет - то придется получать права root.
В Терминале выполняем следующую команду:
busybox df
команда выдаст в консоль следующее (значения могут отличатся в зависимости от устройства):
Filesystem 1K-blocks Used Available Use% Mounted on
tmpfs 416908 44 416864 0% /dev
tmpfs 416908 0 416908 0% /mnt/asec
tmpfs 416908 0 416908 0% /mnt/obb
/dev/block/nandd 393688 215716 177972 55% /system
/dev/block/nande 1032088 84216 947872 8% /data
/dev/block/nandh 258016 4228 253788 2% /cache
/dev/block/vold/93:64 5971932 48 5971884 0% /mnt/sdcard
Что это значит?
раздел tmpfs нас не инетерсует, что ито и зачем, если интересно читайте тут: TMPFS
Нас инетересуют все /dev/block/* и поле 1K-blocks (размер раздела в байтах). Поле Mounted on показывает какой раздел подключен.
Суммируем все значения поля 1K-blocks всех /dev/blocks/*:
393688+1032088+258016+5971932=7655724 Байт или 7,6 Гб.
Отсюда можно сделать вывод, что в устройстве установлена NAND на 8Гб ROM (ну надеюсь все помнят что на 8 гиговой USB-флешке доступно 7,3-7,6 Гб под запись, надеюсь все знают почему, и все помнят, что такое округление)
В итоге: Android отображает пользователю размер раздела data(реже) и sdcard , а не реальный размер всей внутренней памяти. И в итоге Вы видите, что памяти меньше, чем заявлено. 2-3Гб вместо обещанных 4Гб.
Аналогия: Windows 7 при установке создает 100Мб раздел и скрывает его от пользователя, там хранятся файлы для восстановления загрузчика ОС. Так же на ноутбуках может быть скрытый раздел от пользователя (порядка 10Гб), на котором хранится раздел для восстановления ОС и драйверов.