- ベストアンサー
何故4GB積んで初めて3.25GBのような表記になるのですか?
よろしくお願いいたします。 32bitOSにメモリー認識の4GB制限があることは存じているのですが、 何故4GB積んで初めて3.25GBと表記されてしまうのかがわかりません。 4GB積むと3~4GB帯アドレスにI/Oインターフェースを割り当ててるからということですが、 2GBのメモリーを搭載しているときもどこかのアドレス帯にI/Oを割り当ててメモリーを使っているのだから、結局少しはメモリー認識されない部分があるように思えるのですが・・・。 たとえば2GB積むと認識されるのは1.25みたいな具合にです。 何故なのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>この図解が1Gのメモリーを積んだ場合でも理屈は同じですよね? メモリが1GBでも、I/Oは4GBの最後より確保されていくので、1GB全部認識されます。 0_____1_____2_____3_____4G [メモリ1G>_____________<各機器-] [メモリ2G------>_______<各機器-] [メモリ3G------------>_<各機器-] [メモリ4G-------------><各機器-] [メモリ4G--------------><各機器] [メモリ4G-----------><--各機器-] 尚、3GB前後というのは、あくまで一般的な値であって、機器構成によってメモリが認識される上限は変わります。 例えば、ビデオカードを2枚搭載すれば、3GB以下しか認識できない場合もあります。 逆にBIOSで普段使用しない機器を無効にすれば、認識できる上限が増える場合もあります。(例えばRS-232CとかIEEE1394とか)
その他の回答 (2)
- kuronuko
- ベストアンサー率35% (72/202)
32bitOS の場合 0~3.25GBメインメモリ 3.25~4GB拡張カード1・2 がわりあてられていると存じています。 もし、3.25以上メモリを積むのであれば64bitOSにする必要があります。 64bitOS homebasic8GB homepremium16GB business128GB前後 ultimate128GB前後
補足
kuronukoさんありがとうございます。 認識されていない分は拡張カード類が割り当てられているのですね。 何が割り当てられているのか良く分からなかったので理解度が高まりました。 ちなみに、1GBのメモリー搭載PCであっても4GBメモリー搭載PCでも拡張カードのアドレスがどこかに割り当てられる理屈は同じですよね? でも4GB搭載したときのみ3.25GBになるのが不思議です。
- ZENO888
- ベストアンサー率49% (8944/18242)
32BIT版XPやVISTAでは、4GB迄しか物理アドレス空間がありません。 ビデオ機能やチップセット等の各機器が使用するアドレスを引いた分しかメモリとして認識できません。 原則的にメモリは先頭から割り当てられ、各機器は後から割り当てられます。 0________________________4G [--メモリ--->________<--各機器--] コンピュータの管理-デバイスマネージャーで、表示-リソース(種類別)-メモリ を見て下さい。 各種機器がメモリアドレスを使用しているのが確認出来ます。 その他参考 http://pc.watch.impress.co.jp/docs/2007/1207/hot518.htm
補足
ZENO888さんありがとうございました。 メモリアドレスの割り当て方まで図解して頂きありがとうございます。 この図解が1Gのメモリーを積んだ場合でも理屈は同じですよね? 0________________________1G [--メモリ--->________<--各機器--] 実際私のPC(WindowsXPSP2)も1G積んでいるのですが タスクマネージャーやマイコンピューターのプロパティをみても、 実際に搭載しているメモリー容量の1GBが認識されています。 4GBの時のように差し引かれたメモリー容量(3.25GB)が表示されても良いと思うのですが。
お礼
ZENO888さんありがとうございます。 メモリの搭載容量に関係なくメモリアドレスは使用されていて、 環境にもよるが3~4G帯が確保されるのですね。 なので3~4GBのメモリーを搭載して変化が出るのですね。 ありがとうございました。