- ベストアンサー
メモリ容量
32ビットOSでは、4GBまでのRAMしか扱えないと聞いていましたが、なぜ、WindowsSrevr2003のEnterpriseは32ビット版でも64GBものメモリを扱えるのですか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
Q/なぜ、WindowsSrevr2003のEnterpriseは32ビット版でも64GBものメモリを扱えるのですか? A/技術者として回答すると、 PSE(Page Size Extensions)やPAE(Physical Adress Extensions)と呼ばれる技術があるためです。 この技術を使うことで、最大36bit幅でのアドレス確保が可能になります。32GB~64GBを最大として利用することができます。この技術をサポートしているOSがServerOSなのです。 尚、この技術(36bitアドレッシング)はPentiumPro(P6 Architecture/一般向けではPentiumII以降)から採用された物理アドレス拡張技術です。この技術がないP5世代以前(Pentium世代)では対応していません。 ついでにいえば、仮想アドレスについては、PAE/PSEでは拡張できません。そのため、32bitのWindowsではServerといえども仮想アドレスは最大4GBとなります。 http://www.atmarkit.co.jp/fsys/kaisetsu/040em64t/em64t.html 大事なのはCPUやチップセットがPAE/PSE対応かどうかです。まあ既に10年以上前から対応していますから、後はマザーボードにそれだけのメモリを載せられるかどうかに依存します。そして何より重要なのは、必ずアプリケーションもそれに合わせた対応をする必要があります。OSはサーバーOSやLinuxなどPAE/PSE対応でなければいけません。また、1つのソフトでそれだけのメモリを活用するにはアプリケーションソフトもそれ(36bitアドレッシングであるPAE/PSE)に対応していなければいけません。 尚、これはx86(IA-32)Architecture(インテル社互換のプロセッサ)のみの話であり、Power系、MIPS系、ARM系、SPARC系などの他の技術を用いたプロセッサに関しては当てはまりませんのでご注意ください。WindowsマシーンはほとんどがIAですけど。一応注意点です。
その他の回答 (3)
パソコンのメモリの種類には実メモリ(PCのハードとして実在するメモリ)と仮想メモリ(ハードディスクに準備される仮想のメモリ)の2種類があります。 一般的に32ビットOSの場合、実メモリが4GBまで扱えます。 仮想メモリは採用しているメモリ管理方法によって最大メモリが異なりますが・・・・ 32ビットCPUの仮想メモリ機能は凡そ42ビットぐらいのアドレス空間が扱えますので、8TBぐらいメモリを管理することは十分可能ということで、32ビットOSでも「64GBものメモリを扱える」製品は実現可能です。 パソコン用のOSは32ビットCPUの仮想メモリ機能を用いていないので仮想メモリも4GBまでとなっています。
- ari_els
- ベストアンサー率25% (111/439)
サーバ用のOSだからかと。
>32ビットOSでは、4GBまでのRAMしか扱えないと聞いていましたが これが、単なる誤解です。
お礼
大変わかりやすい内容で、良く理解することができました。 こんなに詳しく書いていただいて、ありがとうございます。