У меня есть машина с 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)
(Я бы добавил это как комментарий к ответу Марка, но он стал слишком длинным, чтобы соответствовать)
Как отмечает Марк, вы не увидите полного 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 ГБ памяти.