Назад | Перейти на главную страницу

Linux обнаруживает только 2 ГБ ОЗУ при 4 установленных - i386 Debian Lenny

У меня есть машина с 4 ГБ ОЗУ, но Linux обнаруживает только две верхние и бесплатные. BIOS сообщает 4.

Запуск i386 Debian Lenny.

Вам необходимо включить bigmem ядро.

dpkg --get-selections | grep bigmem
apt-get install linux-image-2.6-xxx-bigmem

Вы также можете проверить, работает ли он с:

sudo grep -i memory /var/log/dmesg
[ 0.004000] Memory: 899224k/917504k available (1693k kernel code, 17724k reserved, 746k data, 320k init, 0k highmem)

highmem должен быть больше 0k

(Я бы добавил это как комментарий к ответу Марка, но он стал слишком длинным, чтобы соответствовать)

Как отмечает Марк, вы не увидите полного 4 Гб с любым 32-битным ядром. В зависимости от вашего набора микросхем и других факторов вы увидите от 3,25 ГБ до 3,75 ГБ без снижения производительности PAE.

Но вам не обязательно иметь полную 64-битную систему - только 64-битное ядро. Я запускаю сервер с 6 ГБ ОЗУ таким образом: ядро ​​видит все 6 ГБ (а не 3,5 ГБ, которые может использовать 32-разрядное ядро ​​на машине), но имеет 32-разрядное все остальное (я не нашел времени, чтобы сделать полный переустанавливать на 64-битную пока).

aptitude install linux-image-2.6-amd64

это все, что вам нужно сделать (по крайней мере, на etch, который до сих пор есть, я сомневаюсь, что имя пакета в Lenny изменилось).

Хотя ни один отдельный процесс не будет видеть более 3 Гб ОЗУ (из-за способа отображения пространства виртуальной памяти для каждого процесса), ваши процессы в целом могут использовать весь объем. В моем случае на машине работает несколько виртуальных машин, которые вместе потребляют ~ 5 ГБ (хост-ОС использует остальные для нескольких других мелочей и кеш-памяти / буферов ввода-вывода). Так что, если ядро ​​bigmem может использовать только 3,25 ГБ из ваших 4, возможно, стоит попробовать сделать дополнительные 0,75 доступными.

Еще одно предостережение: если набор микросхем машины ограничен 4 Гб, вы все равно можете обнаружить, что некоторые из ваших ОЗУ «отсутствуют» даже при 64-битном ядре (или при полной установке 64-битной ОС). Но я думаю, вам не повезет найти чипсет, который поддерживает 64-битные процессоры без поддержки> 4 Гб ОЗУ.

Вы можете установить 64-битную версию Debian. Предполагается, что у вас 64-битный процессор, что не ясно из вопроса. Использование расширений PAE в 32-битном ядре снижает производительность, и без них вы не сможете увидеть полные 4 ГБ памяти.