Я не знаю, является ли это критической проблемой или нет. Но мне нужно избавиться от вопросительных знаков в моей голове.
Я недавно купил плату Raspberry Pi 3 и, играя с ней, я понял, что meminfo показывает размер физической памяти намного меньше (~ 880 МБ), чем 1 ГБ (что указано на официальном сайте ).
root@mypi:~# cat /proc/meminfo
MemTotal: 882780 kB
MemFree: 536068 kB
MemAvailable: 712180 kB
Объем памяти, доступной для графического процессора, составляет 16 МБ (что является минимально допустимым пределом), проверяемым дважды в соответствующем пункте меню raspi-config.
raspi-config -> Advanced Options -> Memory Split
Конфигурация загрузки также говорит, что gpu_mem составляет 16 МБ .
root@mypi:~# cat /boot/config.txt | grep -i gpu
gpu_mem=16
Для сужения проблемного пространства, вот системная информация. Кстати, система актуальна.
Выпуск ОС:
root@mypi:~# cat /etc/os-release | grep PRETTY_NAME
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
Версия ядра:
root@mypi:~# uname -a
Linux mypi 4.4.23-v7+ #913 SMP Tue Oct 4 14:16:19 BST 2016 armv7l GNU/Linux
Конфигурация ядра vmsplit:
root@mypi:~# zcat /proc/config.gz | grep CONFIG_VMSPLIT | grep -v ^#
CONFIG_VMSPLIT_2G=y
Итак, у меня есть 2 вопроса:
- Где недостающая память 128 МБ?
- Что вызывает эту ситуацию?
cat /etc/os-release
должен сказать это. какая версия ядра?uname -a
должен дать это. это должно помочь сузить возможные причины. действительно ли rpi-обновление работало или выдавало какие-либо предупреждения?MemTotal: 882776 kB MemFree: 126868 kB MemAvailable: 689576 kB
«В нормальных условиях НИКОГДА не нужно запускать rpi-update, поскольку он всегда приводит вас к передовой прошивке и ядру, и, поскольку это может быть тестовой версией, это может привести к тому, что ваш RPi не будет загружаться». raspberrypi.org/forums/viewtopic.php?p=916911#p916911vcgencmd get_mem arm && vcgencmd get_mem gpu
показывает?Ответы:
Если выходной сигнал
vcgencmd get_mem arm && vcgencmd get_mem gpu
ISЭто означает, что графический процессор использует 128M.
Это можно проверить / изменить
raspi-config
Advanced Options
, хотя я сам не уменьшил GPU. Я ухожу из памяти, но я думаю, что это по умолчанию, возможно, связано с камерой. По крайней мере, теперь вы знаете, где ваша память.источник
memory size for GPU is 16MB
Прежде всего, я выражаю наилучшие пожелания @Milliways за предложение проверить 2 простые команды.
Где недостающая память 128 МБ?
Даже если и то,
raspi-config
и другое/boot/config.txt
говорит о том, что объем доступной памяти для графического процессора составляет 16 МБ, фактические значения составляют 880 МБ для процессора, 128 МБ для графического процессора.Таким образом, отсутствующая (на самом деле не отсутствующая) 128 МБ памяти зарезервирована для графического процессора .
Что вызывает эту ситуацию?
Даже
/boot/config.txt
включает в себя строкуgpu_mem=16
, есть еще одна строка, которая включает модуль камеры.Таким образом, включение модуля камеры приводит к резервированию 128 МБ памяти для графического процессора, что подразумевается здесь .
Короче говоря, можно сказать, что
start_x=1
переопределяетgpu_mem=16
.После отключения модуля камеры с помощью
start_x=0
вот значения памяти:источник
Помимо опции rpi-update, существует и другая (возможная) причина, по которой сообщаемая память меньше. На этот раз это связано с разделением пространства ядра / пространства пользователя. В этом посте подробно описано исправление, которое включает в себя настройку конфигурации сборки ядра и ее перестройку из исходного кода. Один пользователь сообщил об успехе
Вам нужно будет убедиться, что это действительно причина (проверив значение
CONFIG_VMSPLIT
is либоCONFIG_VMSPLIT=3G
orCONFIG_VMSPLIT=2G
), так как некоторые посты ниже в этой ссылке сообщают об успехе, например, такв то время как некоторые другие не имели таких же результатов
К сожалению, я не рядом с моим ИП, чтобы проверить какие-либо из этих претензий.
источник