web-dev-qa-db-ja.com

3GB RAM BIOSによってインストールおよび検出され、Windows Vista32ビットは2GBのみを認識します

X6DAL-XG マザーボードとRAMの量を使用しているWindowsVista 32ビットマシンに、さらにRAMをインストールしようとしています。 BIOSで報告されているのは3GB以上ですが、Windowsは2GBしかインストールされていないと報告しています。マザーボードには6つのRAMベイがあり、4つの1GBスティックと2つの512MBスティックのさまざまな組み合わせを使用していますが、関係ありません。それらを構成する方法Windowsは2GBを超えません。もちろん32ビットWindowsのメモリには3GBの上限があることはわかっていますが、実際に(現在)5GBがインストールされている場合に2GBしか報告されない理由は説明されていません。 。少なくとも3GBは表示できると思います。

マザーボードのスペックリスト 最小値RAM要件はペアでインストールされたDDR333/266mhzです。これを正確に実行しましたが、BIOSは何も報告していません。 POSTでの問題。

RAM構成(CPU-Zによる)

  • スロット#1:PQI MD6412ROE-512mb PC2700(166mhz)
  • スロット#2:PQI MD6412ROE-512mb PC2700(166mhz)
  • スロット#3:キングストン128mx72D266C25-1024mb PC2100(133mhz)
  • スロット#4:キングストンKVR266X72RC25/1024-1024mb PC2100(133mhz)
  • スロット#5:キングストン128mx72D266C25-1024mb PC2100(133mhz)
  • スロット#6:キングストンKVR266X72RC25/1024-1024mb PC2100(133mhz)

上記のメモリ仕様が マザーボードマニュアル のこのステートメントと矛盾するかどうかはわかりません:

メモリサポート

X6DAL-XGは、最大12GB/24GBの登録済みECCDDR333/266(PC2700/PC2100)メモリをサポートします。マザーボードは、各スロットで4GB(PC2100)モジュールをサポートするように設計されていますが、テストされているのは2GBモジュールのみです。登録済みのECCDDR333(PC2700)メモリを使用する場合、4個のダブルバンクメモリまたは6個のシングルバンクメモリのインストールがサポートされます。

それで、私はRAM私が今持っている何か間違ったことをしていますか、それとも私が見逃しているある種の互換性の問題がありますか?

ありがとう!


いくつかの詳細

  • マシンのCPU-Zレポート
  • UbuntuとWindowsServer 2008の両方でこの問題についていくつかの追加テストを実行しましたが、どちらも2GBしか報告していません。
  • マザーボードのNorthbridge構成でメモリ再マップ機能(有効化/無効化)をいじってみましたが、結果が表示されませんでした。
  • 上記のハードウェアに加えて、256MBのPCIExpressビデオカードが1枚あります。これで周辺機器用になります。ここでは、メモリマップドI/Oが問題になるとは思いません。
  • 2つの512mbスティックを取り外したところ、4つの1GBスティックになりました。
  • マザーボードのBIOSを最新のメーカーリビジョンにフラッシュしました

別の更新

私はUbuntuの64ビットコピーでこのハードウェア構成をテストすることに成功し、RAMは4GBのインストールで完全に検出されています、しかしRAM構成に関係なく、2GBを超える読み取りを行う32ビットOSを見つけることができません。したがって、疑問が残ります:同じマシンにインストールされている32ビットOSが2GBで上限に達しているのに、64ビットOSが2GBを超えるRAMを認識できるのはなぜですか?


考えた後

皆様からのご意見に心より感謝申し上げますが、皆様のご尽力にも関わらず、この問題に対する正解はまだありません。 @Goyuixのおかげで、私は64ビットCPUを使用していて、それを認識すらしていなかったことを知りました。そのため、少なくとも今では許容できる回避策があります。

予期せぬ出来事が発生しない限り、バウンティの有効期限が切れたため、バウンティは@Mark Boothに自動クレジットされるようですが、彼の答えはgood;なので、必ずしも気にしません。それはこの特定の問題の解決策ではありません。 (マークは絶対に攻撃を意図していません。あなたの質の高い回答に本当に感謝しています!)

いずれにせよ、この質問によって生成された議論は私にとって非常に有益でした(そして将来の検索者にとって素晴らしい参考資料として役立つはずです)。元の問題は、64ビットOSを使用して正常に軽減されましたが、まだ解決されていません解決済み。残念ながら(私にとって)、正確な問題を特定できるまで、私は本当に満足することはありません。将来のある時点で、誰かが言及されていない解決策を思いついた場合は、投稿してください。

みんなありがとう。

9
Nathan Taylor

コメントで、Server2008は2GBしか報告していないと述べたので、構成に問題があります。

  1. インストールされているRAMについてBIOSは何を報告しますか?それは4GBを見ますか?
  2. マニュアルによると:
    • メモリリマップを有効にする必要があります
    • メモリミラーリングを無効にする必要があります
  3. モジュールはどのようにインストールされていますか?マニュアルには、それらをペアで取り付ける必要があり、ペアのスロットが互いに隣接していることが明記されています。あなたの投稿によると、ペアのRAMが隣接するスロットに取り付けられていないようです。マザーボードのマニュアル/マザーボードの刻印に対して、モジュールの物理的な取り付けを確認します。
  4. 1 GBモジュールの各ペアを個別に試しましたか?
    • その場合は、 Memtest86 + を使用して各ペアをテストし、各ペアが正しく機能することを確認します。
    • 各ペアがチェックアウトする場合は、インストールされている順序を変更してみてください。
3
afrazier

上記の証拠を考慮すると、考慮すべき最も可能性の高い2つのことは次のとおりです。

  • メモリマップドハードウェアは、32ビットオペレーティングシステムで使用可能なメモリを制限しています。

  • Windowsは、オペレーティングシステムで使用可能なメモリを人為的に制限しています。

ハードウェアの制限

32ビットOSでは、4GBのアドレス空間があります。メモリマップドIO(IOポート、ネットワークカード、グラフィックカード、その他のマザーボードまたはアドインカード)を備えた周辺機器は、そのアドレス空間の一部(通常は非常に小さい)を占有します。任意のメモリマップされたメモリに使用IOメインメモリには使用できません。

マップされたメモリの最悪のホグIOはグラフィックカードです。それぞれが1GBまたはメモリを備えた2つのグラフィックカードがある場合、2GBのアドレス空間が使い果たされ、メインの2GBしか残りません。メモリ、ただしインストールした物理メモリの量。

これらの2GBはメインメモリから十分に離れてマッピングできるため、これは64ビットOSを搭載したマシンでは問題になりませんが、32ビットOSでは、合計4GBに制限されます(Microsoftが非で無効にしたトリックを使用しないで)サーバー32ビットOS)。

人工的な制限

もう1つのオプションは、一部のハードウェアまたはソフトウェアが、Windowsがインストールされたときに使用可能なメモリの量に制限を設定し、メモリを追加インストールした後でも、人工的な制限が適用されることです。

Vistaでこれを行ったことはありませんが、XPで、msconfigを実行し、[BOOT.INI]タブの[詳細オプション]を確認します。[/ MAXMEM]が設定されている場合、次にXPはこれより上のすべてのメモリを無視していました。

Webを検索すると、Vistaでは bcdedit を使用しているように見えます。それを使用する方法の素晴らしい説明は見つけることができます ここ 。ただし、いつものように、これらのことをいじる前に、自分が何をしているのかを理解してください。

サーバー/ワークステーションシステムに固有のその他の可能性

X6DAL-XG manual を見ると、BIOSで「メモリミラーリングとスペアリング」が有効になっているのではないかと思います。

[有効]を選択してメモリRAS(-ミラーリングとスペアリング)を有効にし、システムがデータセキュリティのためにメモリに書き込まれたデータのミラーコピーを作成できるようにします。オプションは[無効]と[有効]です。

メモリミラーリングモードでは、4つのバンクのみが使用されていると思います。これは、512MBのDIMMを取り外してもWindowsに表示されるメモリに違いがない理由を説明しています。

9
Mark Booth

あなたの問題を完全に解決するわけではありませんが、それはそれを診断するのに役立つかもしれません bunt のようなLinuxライブCDを実行してみましたか?理想的には、32ビットバージョンと64ビットバージョンの両方を起動してみてください。64ビットでは問題なく余分なRAMが表示され、2つしか表示されない場合は、ほぼ間違いなくハードウェア関連の問題が発生します。32ビットの場合ビットLinuxも2GBのRAMしか認識しないので、 Mark Booth で述べられているように、おそらくメモリマップドI/Oが残りを占めています。

ビデオカードは、利用可能なRAMを使い果たすことで最悪の犯罪者になる傾向がありますが、2枚の1GBカードがインストールされていることはありませんか?

メモリの再マッピング

最近の多くのBIOSには、MMIOの問題を回避するためにメモリスペースを再マップするオプションがありますが、これは64ビットオペレーティングシステムまたはPAE対応システムでのみ機能します。この設定については、BIOSを確認してください。

http://support.Microsoft.com/kb/929605

2
Goyuix

すべてのオペレーティングシステムが2GBを報告している場合、問題はおそらくマザーボードにあります。

ペアでインストールされていても、2つの異なるメモリカードを使用しているという事実は好きではありません。
1種類のメモリーカードのみを使用することをお勧めします。

ramshopping.com によると、マザーボードにはKVRカードのみが推奨されています。
他の2枚のカードを取り出して、マシンが2GBで起動するかどうかを確認します。
はいの場合、2枚の機能していないカードを機能しているカードと同じカードに交換します。

1
harrymc

これで問題が解決するかどうかはわかりませんが、RAMモジュールを正しくペアリングしているようには見えません。仕様ページによると、ペアはそれぞれの横にスロットする必要がありますその他は、青と黒を並べてペアにします。

上にリストしたセットアップは、これに従っていないようです。これは、デュアルチャネルを読み取ろうとしているOSのスローである可能性があります。

0
th3dude

BIOSを確認する必要があります。多くの場合、「OSインストールモード」と呼ばれる機能、またはオペレーティングシステムが認識できるRAM)の量を制限する同様の名前があります。これは、メモリが多すぎると一部のオペレーティングシステムインストーラーが失敗するために必要でした。これをオフにすると解決するはずです。

0
user36436