web-dev-qa-db-ja.com

Linuxは2GBのRAM、4がインストールされている場合)のみを検出します-i386 Debian Lenny

私は4GBのRAMを搭載したマシンを持っていますが、Linuxはトップとフリーの2つしか検出していません。 BIOSは4を報告します。

I386 DebianLennyを実行しています。

7
sludge

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より大きくする必要があります

11
Joseph Kern

64ビットバージョンのDebianをインストールできます。これは、64ビットプロセッサを使用していることを前提としていますが、質問からは明らかではありません。 32ビットカーネルでPAE拡張機能を使用すると、パフォーマンスが低下します。これらがないと、4GBのメモリ全体を表示できません。

1
Mark

(私はこれをマークの答えへのコメントとして追加したでしょうが、それは長すぎて収まりませんでした)

Markが指摘しているように、32ビットカーネルでは完全な4Gbは表示されません。チップセットやその他の要因に応じて、PAEのパフォーマンスへの影響なしに3.25Gbから3.75Gbの間に表示されます。

ただし、完全な64ビットシステムである必要はありません。64ビットカーネルだけです。私は6Gbでサーバーを実行していますRAMこのように:カーネルは6Gb全体を認識します(32ビットカーネルがマシンで使用できる3.5Gbではありません)が、他のすべては32ビットです(I 64ビットへの完全な再インストールを行う時間がまだありません)。

aptitude install linux-image-2.6-AMD64

あなたがする必要があるのはそれだけです(少なくともこのボックスがまだあるエッチングでは、パッケージ名がレニーで変更されたとは思えません)。

個々のプロセスが3Gbを超えることはありませんがRAM(各プロセスの仮想メモリ空​​間がマップされる方法のため)プロセス全体でロット全体を使用できます。私の場合、マシンは実行されます。一緒に〜5Gbを消費するいくつかのVM(残りをいくつかの他の小さなことのために使用するホストOSとIOキャッシュ/バッファ))したがって、bigmemカーネルが3.25Gbしか使用できない場合4これは、追加の0.75を使用可能にするために試す価値があるかもしれません。

もう1つの注意点:マシンのチップセットが4Gbに制限されている場合、64ビットカーネル(または完全な64ビットOSインストール)でもRAM "missing"が見つかる場合があります。しかし、4Gbを超えるRAMをサポートせずに64ビットプロセッサをサポートするチップセットを見つけるのは不運だと思います。

1
David Spillett