●メモリの価格低下が止まらない メモリ価格の下落が止まらない。1GBのPC2-6400(DDR2-800)メモリモジュールの価格は、1年前には1万円以上していたのに、ついに2,000円を切ってしまった。1GB DIMMは最も数量の出る品種であるため、最も割安なわけだが、以前は高価だった2GB DIMMの価格も半年前の4分の1、5,000円を切る水準まで到達している。これらの価格はいわゆるノーブランド品の最安値価格だが、これに引きずられるようにブランド品メモリやメモリメーカー純正品の価格も下がり続けている。 筆者も先週末、チップはエルピーダ製だという触れ込みの代理店(恵安)ブランドの2GB DIMMと、Micron子会社のCrucialの1GB DIMMを購入したが、前者が1万円を切り、後者は5,000円を切る価格だった。激安ノーブランドメモリに比べれば高いが、安心料も込みということで、十分納得のいく価格だ。2GB DIMMは、メモリメーカー純正品があまり流通していないため、やや不安を感じるのだが、この価格なら試してみようという気になる。
こうしたメモリの値動きを見ていると、あらためてメモリの価格、それもメインストリーム製品の価格が、完全に市場で決まっていることが分かる。言い換えればメモリの製造コストは、最終価格決定に何の影響もしていない。メモリの価格が5分の1になったからといって、製造コストが5分の1になどなっているはずがないからだ。 ●メモリ増設の注意点 それはともかく、これだけメモリが安価になると、メモリをたくさん積みたいという人が増えてくる。主流となっているチップセットはデュアルチャネルのメモリバスを備え、それぞれに2つ、計4本のDIMMソケットがある。1GBなら4枚で4GB、2GBなら4枚で8GBのメモリを積むことが可能だ。これだけのメモリを実装しても、前者で価格は8,000円、後者でも2万円を割り込む。なんとも凄い時代になったものだ。 しかし、注意しなければならないのは、こうした大量のメモリが、必ずしも役に立つとは限らない、ということだ。マザーボードに4本のソケットがあれば、物理的に4本のDIMMを挿すことはできる。問題は、これをハードウェア的に認識するか、そしてソフトウェア(特にOS)が活用できるか、という点にある。 まずハードウェアだが、現在のプロセッサはほぼすべて、物理的に32bit以上のメモリをサポート可能だ。x86プロセッサ(32bitモード)はPentium Pro以降、物理アドレス拡張(PAE)と呼ばれる仕組みをサポートしており、32bitの上限である4GBを越えるメモリにアクセスできる。Intelの場合、45nmプロセスを用いた最新のクアッドコアプロセッサであるCore 2 Extreme QX9650を含むクライアントPC向けプロセッサで36bit(64GB)、サーバー向けのXeonプロセッサで38bit(256GB)、AMDのOpteron/Athlon 64/Phenomは40bit(1TB)まで拡張されている。こうした物理アドレスの拡張は、その後に登場した64bit拡張にもそのまま引き継がれており、64bitモードで利用可能な物理アドレス空間も同じだ。 ずいぶん大きな数字が並ぶが、実際にプラットフォームとしての物理メモリの搭載可能量は、メモリコントローラの仕様で決まる。メモリコントローラを内蔵するAMDの場合は、メモリバスがデュアルチャンネルになっている現行のプロセッサであれば、各チャンネル2本、計4本のDIMMスロットで8GBのメモリを実装できる。メモリコントローラがチップセットにあるIntel製プロセッサの場合、CPUに組み合わせるチップセットでメモリに実装可能量が決まる。 表1は、Intelのチップセットと最大メモリの関係だ。915ファミリでもバリューPC向けの915PLや910GLは2GBまでで、4GBのメモリを搭載できるのはメインストリーム向けの915G/Pなどになっている。また8GBのメモリを実装するには955/965以降の世代のチップセットが必要だが、バリューPC向けのG31/P31は4GBまでに制限されている。G31/P31は現行製品だから、ちょっと注意が必要かもしれない。
【表1】主要Intel製チップセットと最大メモリ容量
こうしたハードウェアの互換性以上に難しいのがソフトウェアの問題だ。表2にまとめておいたのがWindowsのエディションによる物理メモリサポートの違いだ。Windows XPの場合、64bit版はProfessionalのみとなる。また新興国で販売されるStarter Editionにも64bit版は提供されていない。
【表2】Windowsのエディション(クライアント向け)による
物理メモリ空間の違い
この表で分かるように、32bit版のOSでサポートされる物理メモリは4GBまでだ。サーバー用OSでは、32bit版でもPAE(物理アドレス拡張)を生かして最大128GBのメモリがサポートされているが、クライアント向けの32bit版OSで、4GB以上のメモリは無駄になる。仮に2GBのDIMMを4枚挿しても、32bit版のWindowsが認識するのは半分に過ぎない。 話がややこしいのは、4GBまで物理メモリをサポートしているからといって、ユーザーがそのまま4GB利用できるわけではない、ということだ。4GBのアドレス空間は、メモリだけでなく、カーネルや各種の周辺機器のI/O(メモリマップドI/O)などのシステム用途にも使われる。32bit OSで実際にメモリとして利用できるのは、4GBからこのシステム用途に必要なアドレス分を引いた数字であり、おおよそ3GB強というところだ(周辺機器の構成、組み込んでいるデバイスドライバ等によりこの数字は変動する)。この3GB強という数字が、32bit OSで利用可能な物理メモリの量であり、それを越えていくらメモリを増設しても、利用可能なメモリは増えない。 これが64bit OSになるとどう変わるのか。64bit環境ではOSが利用可能なアドレス空間が拡大するから、4GBの空間をOSや周辺機器とメモリで取り合いになることはない。したがって4GBのメモリをほぼフルに利用することが可能になる。 ただし、これを実現するには、32bitモードで4GB以内のアドレス空間でシステム用途に使われていたアドレス空間を別の場所に移す必要がある。言い換えれば4GBのメモリしかサポートできないチップセットでは、この移す場所が確保できない。4GBのメモリを4GBとして利用するには、表1に挙げた8GBのメモリをサポート可能なチップセット、あるいはAMDの内蔵メモリコントローラが必要になる。 次回は実際にメモリを上限まで搭載したマザーボードをもとに、各OSでの動作状況について検証してみよう。
□関連記事 (2007年11月27日) [Reported by 元麻布春男]
【PC Watchホームページ】
|