32bit/64bitパソコンでメモリが3GBしか認識しない問題

公開日:2013年4月3日
パソコントラブルの症状診断から原因を特定し、トラブルの対処法について紹介しています。
スポンサーリンク

パソコンに4GB以上のメモリを搭載しているのに、3GB程度と認識してしまう問題について、解決法などを紹介します。
この問題は32bitのOSを搭載したパソコンで起こる事としてよく取り上げられていて、すでに知っている方も少なくないでしょう。

しかし、64bitのOSがインストールされたパソコンでも、BIOSの設定などで、同じような症状が発生することがあります。
今回、32bitと、64bitそれぞれについて、メモリが3GB程度しか認識しない問題を解説していきます。
物理メモリが4GB以下になっている

32bit OSの場合

そもそも、32bit OSは、理論上4GBのメモリまでしか対応できません。
これは、32bitで扱えるメモリのアドレス空間が、2の32乗(32bit)=4GB(4,294,967,296Byte)である為です。
(※理論上は4GBですが、アドレス空間を拡張する技術があり、一部の32bitサーバー用OSでは64GBまでのメモリに対応しています)

しかし、この説明だけでは、4GBまで対応しているにもかかわらず、3GB程度しか認識しないのか答えになっていません。

それには、もう一つ、MMIOと呼ばれる、IOメモリを物理メモリを同じように取り扱う技術が関わってきます。
MMIO技術は、ビデオカードなどの周辺機器との情報伝達に使うIOメモリと、物理メモリを同じアドレス空間で処理し、なお且つIOメモリを優先してアドレス空間に予約するため、物理メモリの一部にアクセスできなくなるのです。
これが、4GB以上のメモリを搭載していても、3GB~3.5GBにしか認識しない俗にいう32bit OSによる3GBの壁と呼ばれる正体なわけです。

sponsored link

この問題を解決するには、CPUのアドレス空間を物理メモリ用と、IOメモリ用の専用回路に分ける必要があります。
当然ソフトウェアでどうにかなる問題ではありません。
ですから、この問題を解決する一番簡単な方法は、64bit対応のOSを導入し、アドレス空間を広げるほかありません。

64bit OSの場合

64bit対応のWindowsをインストールしていても、メモリが3GBまでしか認識しないことがあります。
この一番の原因は、ハードウェア(特にマザーボード)に原因があります。

古いマザーボードは元々64bitを想定していないものが多く、メモリが3GBまでしかサポートしていなかったり、後からBIOSのアップデートによって対応しているモデルもあります。

また、この様な古いタイプのマザーボードの64bit環境で4GB以上のメモリを使用するには、メモリのリマップが必要です。
メモリのリマップ方法はBIOS上で、〔Memory Remap Feature〕または〔Memory Remapping〕、〔Memory Reclaiming〕といった項目を〔Enabled〕(有効)に設定変更する必要があります。

私の使っている少し古いパソコンがまさにこの症状と同じ状態になったので、正しくメモリを認識させる方法を紹介しておきます。

マザーボード:P5B Deluxe
メモリ:ノーブランドDDR2-SDRAM (4GB)
OS:Windows Vista 64bit

まず、キーボードの〔CTRL〕+〔SHIFT〕+〔ESC〕でタスクマネージャを開きメモリの状態をチェックします。
御覧の通り、物理メモリの容量が3070MB(約3GB)となっています。
物理メモリが4GB以下になっている

念の為、BIOSのアップデートも行っておきました。
マザーボード(P5B Deluxe)のメーカーサイトに行き、最新のBIOSとWindows上からアップデート出来るアプリケーションを手に入れました。
アップデート用のアプリケーションを起動し、落としてきた最新のBIOSをインストールします。
BIOSのアップデートプログラム

アップデートが終わったら、パソコンを再起動してBIOSの設定を変更しメモリのリマップを行います。
設定変更方法は、前述のように、〔Memory Remap Feature〕または〔Memory Remapping〕、〔Memory Reclaiming〕といった項目を〔Enabled〕(有効)にします。
以下、(P5B Deluxe)の場合を例に記載します。マザーボードの種類によって表記方法などが若干異なりますので、分からない場合はマザーボードのマニュアル(オンラインで大抵手に入ります)を参考の上設定を変えてください。

〔Advanced〕カテゴリーの〔Uncore Configuration〕を選択
BIOSの設定変更1

 

〔Uncore Configuration〕が開くので、〔Memory Remap Feature〕という項目を〔Disabled〕から〔Enabled〕に変更します。
設定を変更したら、キーボードの〔F10〕キーを押して変更を保存し、パソコンを再起動させましょう。
Memory Remap Feature

設定変更後に、もう一度タスクマネージャを開き、メモリ容量を見てみましょう。
設定がうまくいけば、この様に4090(約4GB)と認識されるようになるはずです。
メモリリマッピングの設定完了

ただし、メーカー製のパソコンなど、一部のマザーボードでは、メモリのリマップに関する項目を設定変更しても、うまく機能しないことがあります。



スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

コメントフィード

Sponsored Link

注意事項

当サイトで得た情報により、いかなる損害を追われても、当サイトは一切責任を負いかねますので、ご理解お願いいたします。 大切なデータは必ず、バックアップを作成してからトラブルの復旧作業を行いましょう。 データ復旧や、バックアップの方法は、姉妹サイト「データ復旧大図鑑」でケースごとに詳しく解説しているので一度ご覧ください。 また、パソコンの保証期間中であればすぐに、パソコンメーカーへ問い合わせた方がよいでしょう。 通常の使い方をしていてパソコントラブルが発生した場合、無償で対応してくれるはずです。

Sponsored Link

ようこそ!パソコントラブル大図鑑へ
PCトラブル大図鑑
RSS FEED