32bitOSのメモリについて

このQ&Aのポイント
  • 32bitOSのメモリについて調べてみました。
  • 32bitOSでは、システム・デバイスのためにアドレス空間が消費されるため、実際に利用できるメモリは3~3.5Gbytes程度に制限されることがあります。
  • ただし、管理外メモリを利用するRAMディスクなどでは、通常のアプリケーションから利用できない1Gbytes分のメモリを利用することができます。
回答を見る
  • ベストアンサー

32bitOSのメモリについて

32bitOSのメモリについて http://www.atmarkit.co.jp/fwin2k/win2ktips/1143mem4g/mem4g.html ↑の記事を読んでて最後の方でタスクマネージャの見方のところで 「これがWindows OSが認識しているメモリ・サイズ。実際の物理メモリとの差である1Gbytes分は、通常のアプリケーションからは利用できない。管理外メモリを利用するRAMディスクなどでのみ利用可能。」 と書いてありますが、最初の方では、 「実際のシステムではシステム・デバイス(グラフィックス・カードなど)のために、数百Mbytes~1Gbytes程度のアドレス空間が消費されるため(グラフィックス・デバイスはアドレス空間にマッピングして利用される)、4Gbytesからそのデバイスのためのアドレス空間を除外しなければならない。結局、32bit版のクライアントWindows OSでは、メモリをいくら搭載しても、3~3.5Gbytes程度しか利用できないということになる。」 この2つの言っていることは矛盾してませんか? 「管理外メモリを利用するRAMディスクなどでのみ利用可能。」という文がなければ、納得するのですが。

質問者が選んだベストアンサー

  • ベストアンサー
  • mako2_u
  • ベストアンサー率68% (493/718)
回答No.7

No.6様がおっしゃるように、 「CPUがアクセス出来るメモリ空間」と 「搭載している物理メモリ量」を 混同されていると思います。 (両方に4GBっていう数字が出てくると混同しちゃうんですよね) 「CPUがアクセス出来るメモリ空間」は32bitなので 2の32乗=4(ギガ),294(メガ),967(キロ),296Byte(約4GB)です。 PCにはマウス/キーボード/画面表示/LANなど、 いろいろな入出力がありますよね。 これらのやりとりをメモリアクセスに見立ててやるために、 メモリ空間の一部をこれらのデバイス(数百MB)用に割り当てます。 なので、メモリをいくら搭載しても 物理メモリ用に割り当てられる空間は デバイスに割り当てた領域を除いた3GB少々しかありません。 メモリを使っちゃうんじゃなくてメモリ空間を喰っちゃうんです。 で、メモリ空間を割り当てられなかった分の物理メモリ (OS管理外メモリ)をRAMディスクとかに使うんです。 ちなみにグラフィックボード搭載のメモリ量と デバイス用に喰われちゃうう空間の量は関係ありません。 グラフィックメモリはCPUがアクセスするんじゃなくて グラボ上のGPU(グラフィックプロセッサ)が アクセスしますから。 メモリ256MBのグラボでも1GBのグラボでもCPUとグラボの やり取りに割り当てる空間量は変わりません。

その他の回答 (6)

  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.6

矛盾していません。 まず、アドレス空間とメモリーサイズを別物として考えてください。 32ビットOSでは4GBのアドレス空間しか持てません。(2^32) しかし他の高速装置に1GB程度のアドレス空間を割り当ててしまうため メモリーに残されたアドレス空間が3~3.5GBになってしまいます。 従って4~8GBのメモリーを実装してもOSでアクセスできない部分が 出来てしまいます。 この余った部分は特別なソフトウエアを使うことによってRAMディスクとして 使用することが出来ます。OSの管理外です。(主記憶の扱いではない) あくまでもソフトウエアを介して管理されているのでアクセス速度は主記憶よりは遅く HDDよりは桁違いに早いと言うことになります。 HDDと違うのは電源を切るとかフリーズで消えるということです。 一時的記憶に使うのが有効です。

  • mindatg
  • ベストアンサー率48% (110/227)
回答No.5

No2返答に関して >システムデバイスさんは電話番号しか持っていないのでしょうか? >携帯電話(メモリ領域?)は持っていないのでしょうか? >電話番号(アドレス?)だけ持っていて携帯電話(メモリ領域?)が無くてもシステムデバイスさんは >困らないのでしょうか? システムデバイスさんは自前の携帯電話(メモリ)を持っています。 電話番号だけを32BitOS社のを使用している状態です。 http://homepage2.nifty.com/kamurai/VGA.htm#3264

miya2004
質問者

お礼

何となく分かってきました。 システムデバイスが自前でメモリ領域を持っていることとメモリ領域とアドレス空間を別々に考えなくてはいけないのですね。

  • kbps
  • ベストアンサー率40% (142/349)
回答No.4

確かに矛盾していますね。 本文では4GBをOSが扱える領域+メモリマップ領域で終わらせていますので、 http://shopdd.blog51.fc2.com/blog-entry-758.html の上の方にある図と同じで、4GB積んだ場合はRAMディスクが使用する領域が存在しないように受け取れます。 >RAMディスクなどでのみ利用可能 この領域がどこから出てくるのかあのページからはわかりません。

miya2004
質問者

お礼

ありがとうございます。 自分の勉強不足かもしれませんが、このページだけだと、RAMディスクに1GBを割り当てると システム・デバイスが使っていた1GB分はどこに行ったの?という疑問が生じます。

  • A88No8
  • ベストアンサー率52% (833/1601)
回答No.3

こんにちは >2つの言っていることは矛盾してませんか?  ん~(-.-;  32bitで表現できる最大値が4GBでCPU がメモリ空間を直接制御しているならそれを超えることは出来ないけれどハードウェアで昔あったようなEMSメモリのような一種のページング切り替えの仕組みがあればいくらでも可能な仕掛けを作れますが..  ここではWindowsをいうOSというプログラムについての解説なので「32bit版では4GBのメモリ空間のうち1GBをシステム領域として特別に管理しアプリケーションプログラムには解放しない」、「システム領域はシステムデバイス(グラフィックスカードのアクセスウィンドウやRAMディスクといった)やOS自体のワークエリアとして使用される。」  といっているのではないでしょうか。  質問者さんが引っかかったのは「RAMディスクがシステムデバイスではない」といった固定観念があるような気がします。 アプリケーションソフトとシステムデバイス(ドライバーとか)の違いは、本質的には動作するためのアドレスを不定の状態でOS任せにするかシステム領域で固定するかの違いぐらいです。  本当はアプリケーションソフトでもOSをだましてシステム領域に常駐させるくらいのことは昔からある手法です(でもRAMディスクやDISKキャッシュはシステムデバイスですよ~(^^;)。  意図している回答としてはずしていたらごめんなさい<(__;>

  • mindatg
  • ベストアンサー率48% (110/227)
回答No.2

違うだろ、と突っ込みが入るかもしれませんが例として 32BitOS社は4,000個の電話番号を持っています。 うち、1000個分の電話番号はシステムデバイスさんが既に使用しています。 メモリという携帯電話は4000個以上ありますが、その携帯電話に割り当てる番号が足りません。 実際に32BitOS社で使える携帯電話は3000個までになります。 余った携帯電話はRAMディスク社に持っていけば32BitOS社とは違う電話番号を割り当ててくれます。

miya2004
質問者

お礼

システムデバイスさんは電話番号しか持っていないのでしょうか? 携帯電話(メモリ領域?)は持っていないのでしょうか? 電話番号(アドレス?)だけ持っていて携帯電話(メモリ領域?)が無くてもシステムデバイスさんは 困らないのでしょうか?

  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.1

矛盾してませんが…。  管理できる(3~3.5MB)メモリは普通に使える。  管理できない(3~3.5MBを超える)メモリは RAMDISK などで使うしかない。 これだけですよ?

miya2004
質問者

お礼

たとえば、4GBのメモリを積んでいてタスクマネージャで物理メモリ3GBと表示された場合 1GBは「システム・デバイス(グラフィックス・カードなど)」が使用しているのですよね。 これは記事の最初に書いてあります。 この時、使われている1GBをRAMディスクとして使うことができるのでしょうか? 仮にRAMディスクとして使った場合はシステム・デバイスが使っていた1GBはどこに行ったのでしょうか?

関連するQ&A

  • メモリの確認

    以前にメモリの増設をしました。 メモリの確認をシステムのプロパティでしたところ 3.17GHz 2.50GB RAM 物理アドレス拡張 と、表示されています。 これは現在、何Gってことなのでしょうか? たしか1Gまたは2Gを増設したと思うのですが。 よろしくお願いします。

  • 32bitOSで利用できるメモリ容量

    とあるお客様から質問されて困っています。 HPのワークステーションxw6600にメモリ増設をしたのですが、OSから認識する容量で疑問があります。 増設前物理メモリ:3GB  OSから認識できる容量も3.00GBとなっていました。 増設後物理メモリ:8GB  OSから認識できる容量が3.00GBとなっています。 32bitOSが3~3.5GB程度しか認識できない理由として、システムデバイスに0.5~1GB程度のアドレス空間がマッピングされるためという認識です。 ここで疑問なのが、なぜ、増設前の3GBのときにOSから認識できる容量が2GB~2.5GB程度とならなかったのかです。 今後、Windows7にアップグレードするということでメモリ増設を行ったのですが、現在WindowsXP32bitでこのような疑問がでたようです。 増設前は、1GBx2枚&512MBx2枚で3GB。 増設後は、2GBx4枚で8GB。 メモリの差し方など関係しているでしょうか? ご回答宜しくお願い致します。

  • 余剰メモリのRamディスク化について

    お世話になります。 私のパソコンWindows XP Home SP3のメモリを4GBに増設しました。 ネットを見ていると、 「XPはメモリを約3.2GBしか使っていないので余剰メモリをRamディスクにする」 というのが目に入り、素人ながらマネすることにしました。 1)余剰メモリサイズはどうやって知ればよいのでしょう?  [タスクマネージャ]の[パフォーマンス]で  物理メモリ   合計 3397708 (約3.4GB)         利用可能 3015472    システムキャッシュ 390700  とありました。  それで余剰メモリサイズは 4GB-約3.4GB=0.6GB  と計算しましたが、いかがでしょう? 2)OS管理外メモリ域に600MBのRamディスクができたのでしょうか?  VSuite Ramdiskを使って作業をしてタスクマネージャを見てみました。  物理メモリ   合計 3397708         利用可能 2399944    システムキャッシュ 391212  となっておりました。  利用可能サイズが約600MB減っております。  ということは、  OS管理外ではなくOS管理内のメモリを約600MB減らしてしまった、  という気がするのですが、いかがでしょう?  ついでにもう一つ、 3)物理メモリの合計サイズと利用可能サイズの差分は何に使われているのでしょうか? ご存じの方、よろしくご教授のほど、お願い致します。

  • ビデオメモリとRAMのアドレスについて。

    ビデオメモリとRAMのアドレスについて。 32ビット版のOSの物理アドレスは4GB(0-FFFFFFFF)で、 ビデオメモリも当然、この間のアドレスを使用するものと理解していました、 つまり、あまり多くのビデオメモリを使用すると、利用可能な物理メモリ(RAM)の容量が減ってしまいますよと、 他の質問で、回答をしたところ、 ビデオメモリとRAMは別だから、勘違いですと、指摘されました。 私の使用しているOS(XP、Vista、Win7)の32ビット版は、 デバイスマネージャを開いて、表示を、リソースで確認すると、 ビデオメモリの分のアドレスは、0-FFFFFFFFの間に割り当てられています。 つまり、このビデオメモリのアドレスは、RAMが使用できない、 と思いますが、勘違いなのでしょうか。 もし、ビデオメモリ(2GB)+RAM(4GB)とすれば、 6GBの物理アドレスを、どのように管理するのか、 ご教授して、いただきたいと思います。 私は、64歳で、最近の新しい技術に、疎くなっているのでしょうが、 よろしくお願いします。

  • P7P55D-Eへのメモリ増設について

    メモリを2G×4枚から2G×2、4G×2に増設しました。 MEM OKを押してメモリは認識されましたが、 実装RAM 12.0GB(6.00GB使用可能) となってしまいます。 12GB使用可能にするにはどうすればよいのでしょうか?

  • WinXP64bitバージョンの大メモリは32bitOS用ソフトで使い切れるか?

    ◆どなたかお教えいただけると助かります。◆近々、WindowsXP64bitバージョンが発売されると聞きます。AMDの64bitCPUのOptron248とWindowsXP64bitVersionの組み合わせでは、16GB等の大メモリ空間が使えると聞きました。◆Q1:32bitWindows用のソフトも64bitXP上で動くとのことですが、その場合、広大なメモリは利用されるのでしょうか?それとも例の4GB以下の32bitOSの制約に引きずられるのでしょうか。◆つまり、メモリの管理は各ソフトの対応如何なのか、OSが対応していれば使い切れるのか、分からないのです。ご助言お願いいたします。

  • Photoshop6 で画像を開くとメモリ(RAM)が足りません。と出

    Photoshop6 で画像を開くとメモリ(RAM)が足りません。と出てくるようになった。 どうしたらいいのですか? Cドライブの空き 21.4 GB Dドライブの空き 146  GB  メモリ 2GB RAM フォトショップはCドライブにインストールしてます。 仮想メモリは cボリューム ・システム管理サイズ        cボリューム ・カスタム 3070ー6000になってました (いつなぜ設定したか不明) フォトショップの設定で 仮想記憶ディスク ディスク1にC ディスク2になし ・・・・             キャシュ50% でした これで何か解りますか?

  • OSが使えないメモリの有効活用

    Windows7 Professional(Ultimateだったかも)64bitのOSが利用できないメモリの有効活用手段を教えて下さい. 既存のRAMディスクソフトで,64bitOSの利用できない部分をRAMディスクに割り当てることができるソフトをご存知でしょうか? もちろんRAMディスク以外でも構わないので利用できないメモリを有効活用する手段を教えて下さい. よろしくお願いします. Windows7 64bit (ProfessionalかUltimateのどちらかだったはず) CPU Xeonx2 (型番は覚えていない) メモリ 256GB

  • パソコンのメモリを増設したのですが

    パソコンのメモリを16Gに増設したのですが質問です。 BIOSでは16376MBと表示され システム情報では物理合計メモリ16384MB、利用可能な物理メモリ1,29GB 合計仮想メモリ2GB、利用可能な仮想メモリ1.96GBと表示され、 システムプロパティでは2.00GB RAMと表示されます。 これは正しく増設できているのでしょうか? もしできていなければ解決方法を教えてください。 よろしくおねがいします。

  • コンベンショナルメモリ不足で、困っています。

    DOSコマンドのMEMで調べると、コンベンショナルメモリの大きさが、640Kではなく3K程少な目になります。 デバイスの問題ではなく、ベースの大きさが少ないのです。 システムコマンダーを導入しようとすると、ウイルスではないかといわれるのですが、ウイルスチェックでも見つかりません。 対処方法教えて下さい。 宜しくお願いします。