• ベストアンサー

仮想メモリの数値について(初期サイズ・最大サイズ)

windowsXPを使っている者です。 仮想メモリの設定について伺います。 あるサイトに 「使用するアプリケーションに応じ、仮想メモリ領域は初期サイズと最大サイズの間で可変します。そのため断片化が起こりやすくなります。この二つのサイズを同一サイズとしておくと、仮想メモリ領域の断片化は起こりにくくなります。」 と書いてありました。 デフォルトでは初期サイズ2046、 最大ファイル4092となっているのですが、変更した方が良いのでしょうか?またそうだとしたらどのぐらいのサイズにすれば良いのでしょうか。 しかし、なぜデフォルトでは同じ数値になってないのだろうか・・

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

  • ベストアンサー
noname#192379
noname#192379
回答No.3

Windows XP が登場したのは2002年のことで、当時、パソコンのハードディスクの容量は40GB程度しかないものも珍しくありませんでした。なにしろ、128GB以上のハードディスクを使用できないパソコンさえあったくらいです。そういう時代のOSなので、仮想メモリのために確保するディスクの領域も、ユーザーによっては、「最初はなるべく少なめにしておいて、どうしても必要になったら最大値まで少しずつ増やす」ほうがありがたい、という場合があり、XPの初期設定もそうなっています。 設定すべき値については諸説ありますが、パソコンのRAMの容量の1~2倍くらいの数字を、初期値と最大値の両方に設定するというのが一般的です。もっとも、RAMが2GB以上あるなら、大抵の場合、そもそも仮想メモリを使用しないようにしても、たぶん問題なく動きます。つまり、今となっては、あまり気にする必要ありません。 デフォルトで初期サイズ2046MBになっていたということは、かなりRAMを豊富に積んでいるPCをお使いなのだと思います。その場合、ディスク上の仮想メモリ領域はただ予約されているだけで、実際には滅多に使われないですし、サイズが増えて断片化を起こす可能性も低いですから、そのままほったらかしでいいと思います。気になるなら、両方とも2046にしちゃって構いません。これなら、初めてWindows XPを起動したときに2046MBの連続して確保された領域がそのまま使われ続けます。今後サイズが増えて断片化することもありません。 2046では足りなかったらどうしよう、と、不安に思われるのでしたら、心配ご無用です。ブラウザやワープロの使うメモリはその10分の1程度です。そもそも実際に2046MBものデータを仮想メモリに書きだす状況が生じるとしたら、待ち時間のためパソコンは数十秒フリーズしたかのようになり、仕事になりません。断片化うんぬんの心配以前の問題です。 断片化が問題とされたのは、メモリが128MBしかない10年前のパソコンで、ディスクも40GBしかなかったころ、初期値が128MBで最大値が256MBというような設定だった時代のことです。当時、ギガバイト単位のメモリを搭載しているのは業務用のサーバーくらいでした。

qazxcvfr4
質問者

お礼

詳しい説明ありがとうございました。

その他の回答 (2)

  • akiomyau
  • ベストアンサー率43% (555/1280)
回答No.2

初期サイズは起動時にその容量が確保されますが、それを超えた場合に最大サイズまで広がります。 つまり、初期サイズと最大サイズを同じにした場合、その分使っても使わなくてもその容量が確保されてしまうために初期サイズと最大サイズが分かれていると考えられます。 この辺はハードディスクの空き容量の問題も関係してきます。 一般的にはメインメモリの1.5倍から2倍程度にしておくのが普通です。 まあ、使っていて仮想メモリが足りませんと出てくるようであれば 再度設定をしなおせば良いと思います。 ただ、仮想メモリのスピードは通常のメモリと圧倒的に速度差があるので あまりにも仮想メモリが不足するのであればメインメモリの増設を考慮したほうが良いと思います。

qazxcvfr4
質問者

お礼

遅くなりましたが、ありがとうございました。

noname#154975
noname#154975
回答No.1

仮想メモリとして上限と下限をあらかじめ決定した状態で領域を確保すれば、OSの使用状況に応じて仮想メモリが増減することがなくなり、結果として、初期に上限下限を決めて確保した領域の外に対しては断片化が発生しません。これがメリットです。 が、仮想メモリとして確保した領域の内部を使ってページインとページアウトが繰り返されれば、この領域内部では山のように断片化が発生します。 >仮想メモリ「領域」の断片化 についての記述である、ということに注意してください。 >変更した方が良いのでしょうか? 気分でけっこうです。仮想メモリにつかわれる「領域」が断片化したところで、人間が体感できる動作遅延は発生しません。 >またそうだとしたらどのぐらいのサイズにすれば良いのでしょうか。 これも気分でけっこうです。物理メモリの量の1.5倍で固定すると解説しているTipsもありましたし、2倍とか3倍で固定するというTipsもありました。 なぜ気分でけっこうかというと、どんな数値に設定しようといったんメモリが枯渇して仮想メモリとハードディスクとの間でページイン/アウトが頻繁に発生するようになると、耐え難い動作遅延を感じることには変わりないからです。 kの動作遅延は、仮想メモリについての設定を変更した程度では解消することはできず、メモリ増設以外に対処法はないといってもいいくらいです。

qazxcvfr4
質問者

お礼

遅くなりましたが、ありがとうございました。