Windowsページファイル設定の正しい方法とその理由

掲載日時:2009.12.17 12:00  

コメント [8] , トラックバック [0]

はてなブックマーク

091216pagefile-1.jpg


ウェブ上に無数ある間違った情報に基づいたアドバイスを見かけるとテックライターHow-To Geekとしては正しい情報を発信しなくては、という責任感にかられるので、今回はシステムページファイルについての正しい情報をお届けします。
 

■そもそもページファイルとはなんぞや?および設定調整方法。

091216_02pagefile-1.jpg


まずはそもそもページファイルとはなんぞや、というところからお話します。

例えば、Firefoxなどのアプリが大量のメモリを消費し、システムのRAMが低下している時に、Windowsは使用しているアプリに対してRAMを解放するために、使用されていない「ページ」のメモリをいずれかのドライブのルートにある「pagefile.sys」という隠しファイルへ移動させるようになっています。

つまり、開いてはいるけれどもウィンドウが最小化された状態でしばらくアクセスしていないアプリがある場合、Windowsはそのアプリのメモリをページファイルへ移動させます。メモリが移動されると次にアクセスする場合には、必然的に多少時間がかかってしまいます。

ページファイル設定を確認するには、スタートメニュー検索または実行ボックス(Win+R)からsysdm.cplを起動し、「高度な設定>設定>高度な設定>変更」と進んでいきます。この画面でページング用のファイルサイズ(上の画像参照)の変更、ページファイル使用の無効化、Windowsが自動で対応するように設定、などが選択できます。

大抵の場合であれば、Windowsが自動で対応できるように設定しておくことをおすすめします。

■なぜ無効化することを薦める人たちが多いのか?

ページファイルの設定に関しては千差万別の意見があり、ページファイルサイズを大きくした方が良い、という人もいれば、完全に無効化しておくべきだ、と言う人もいます。

無効化するべきだと主張する人の理論は「Windowsはページファイルを使用するのに適しておらず、メモリをたくさん積んだパソコンを使用しているのであれば、ページファイルを無効化した方がパソコンが速くなる。なぜならばRAMの方がハードディスクよりも動作が速いからである。無効化することにより動作の速いRAMが常に作動する環境を作ることが出来る」というもの。ですが、実はこれによってスピードの違いの恩恵を受けるケースは一つだけなのです

しばらく使っていない最小化されたウィンドウを開く場合には、ハードディスクへアクセスしない分、確かにこの理論は正しいのです。しかしそれによってパソコンが速くなるということは決してありません。なぜなら、Windowsは今開いているアプリケーションをページすることはないので、RAMの一部が最小化されたウィンドウによって占拠されている分、開いているウィンドウでの作業のスピードは下がることになります

■システムファイルを無効にするとシステム問題が発生する。

ページファイルを無効にする場合の主な問題は、使用可能なRAMをフルに使っている場合に起こります。Windowsは、仮想メモリを他のロケーションに移動できないため、アプリがクラッシュします。最悪の場合、システム自体がクラッシュし、不安定な状態になってしまうケースもあります。アプリがクラッシュした場合、保存も出来ないのでそこまでの努力はもちろん水の泡です。


091216_03pagefile.jpg


アプリケーションがクラッシュしてしまう以外にも問題は発生します。ページファイルを無効にした状態でメモリ使用量が上限に達すると、ちゃんと使用できなくなるアプリが続出。例えば、ページファイルが無効な状態では、ボックス上の仮想マシンを起動することは出来ません。また、デフラグユーティリティの一部もうまく作動しなくなります。その他にもページファイルが無効になっていると多くのものがうまく作動してくれなくなります

■システムキャッシュおよびSuperFetch


091216_04pagefile.jpg


RAMをたくさん積んだPCを使っていて、それほど重い作業をしない場合、アプリがクラッシュするところまではいかないかも知れませんが、ページファイルを無効にしている場合、実際の文書やその他のファイルのキャッシュの書込/読込も、WidowsはRAMで行わなくてはならなくなります

ドライブの読み込みなどにやたらと時間がかかる場合、ページファイルを無効化するのではなくファイルシステムキャッシュにWindowsが使用するメモリ量を増やしてみて下さい

Windows 7には「SuperFetch」という、最も頻繁にアクセスされるアプリケーションファイルをRAMにキャッシュするファイルキャッシュメカニズムが含まれていて、アプリケーションの起動がスムースに行われるようになっています。Windows 7のスピードが過去のWindowsよりも速く感じる数ある理由の一つとして、このメカニズムがあげられます。

ページファイルを無効にしてしまうと、Windowsがキャッシュ用に使用出来るRAMを奪ってしまうことになります(注意:SuperFetchはWindows Vistaから搭載されています)。

■ページファイルをパーティションではなく別のドライブへ移動

ページファイル用に別のパーティションを作成すると良い、と書いている記事を見かけることがありますが、同じハードドライブ上にある場合、ページファイル用に別パーティションを作成しても意味はありませんが、物理的に別のドライブへページファイルを移動させるのは効果的です。

■ページファイルの適正サイズ

091216_05pagefile.jpg


ページファイルの大きさは物理RAMの大きさの1.5倍から2倍必要、つまり4GBのメモリのシステムの場合、8GBのページファイルが必要である、というのが定説として通っているようですが、この理論に従った場合、インユースアプリケーション用に合計12GBを解放することになり、システムのスピードはかなり遅くなり、ハードディスクの回転数が上がりためかなり使いづらくなります。ページファイルの大きさを大きくしたからと言って、パフォーマンスが向上するわけではありません。ドライブの使用スペースが単純に増えるだけです。

高名なWindows専門家でありシスインターナルツールの作成者、マーク・ラッシノビッチさんは、「ページファイルの大きさは使用状況によって適正化させるべきだ」と述べています。単純に2倍のページファイルを確保するのではなく、ちゃんとした計算に基づいて大きさを決めるべきです。最低でもピーク分はカバーできるだけ確保し、最大でもピーク時と物理RAMの差分x2が適正サイズです

例えば、システムに4GBのRAMがある場合でピークメモリ使用量が5GB(仮想メモリを含む)の場合、最低で1GB、最大で2GBあれば、かなりRAMを消費するアプリを使用する場合でも十分です。

8GBのRAMがある場合でピークが3GB程度の場合でも、ページファイルは作成するべきですが、1GBもあれば十分です。
注意:大抵のエンドユーザには関係ないと思いますが、クラッシュダンプ用にシステム設定されている場合、クラッシュの場合にWindowsがプロセスメモリを書き込めなくなるのでもっと大きなページファイルの容量が必要です。また、サイズ関連のアドバイスとしてよく見かけるのが「最小と最大のサイズは同じにしておくと、Windowsがページファイルのサイズを大きくした場合にもフラグメンテーションを行わなくてすむ」というものですが、ほとんどのデフラグソフトウェアはWindowsがサイズを大きくしても(これもあまり起こることはないです)ページファイルのデフラグメントを行うのでこのアドバイスもあまり意味があるとは思えません

■まとめ:無効化するメリット vs デメリット

ざくざくっとまとめてみましたが、ページファイルを無効化することの唯一のメリットは「最小化した状態で、しばらく使っていないアプリにアクセスする際にかかる時間を短縮する」ということだけです。このメリットのためにクラッシュする可能性があがり、そのクラッシュを回避するためにRAMの使用を意識的に抑えなくてはならなくなり、一部のアプリではありとあらゆるシステム問題が発生してしまいます。

結論としては、ページファイルを無効化する理由、ページファイル設定をいじる理由はごく一部のユーザを除き、まったくありません。そのままにしておいてページファイル、ファイルキャッシング、プロセス、Superfetchなどの作業はWindowsに任せてしまったほうが賢明です。PCのスピードを速くしたいのであれば、ページファイルをいじる代わりに下記を試してみて下さい。

  • RAMのアップグレード
  • 不要なソフトウェアを削除:システムスピードを遅くする一番の原因です。
  • Microsoft Security Essentialsに切り替え、Windowsセキュリティパッケージの使用をやめてみる
  • Windows 7はWindows XPよりもマルチタスクの対応が優れています。アップグレードしていない方はWindows 7に乗り換えてみるのも手かも知れません。

6GBのRAMと、Windowsによって管理されているページファイルで走らせているWindows 7システムでは、どんなアプリもさくっと起動しますし、しばらく使っていないアプリを開く場合でもほぼ瞬時に起動できます。私の場合、常に1ダース近いアプリを走らせているので80%~90%のRAM使用量にはなっていますが、特にスピードの低下を感じることもないです。

もっと詳しい情報を知りたい方はマーク・ルシノビッチさんの記事を一読してみて下さい。この記事はここからの情報を元に書いています。

ページファイルについて補足、意見、異議、感想などがあればコメントで教えて下さい!


How-To Geek (原文/まいるす・ゑびす)
 

4873114292
ソフトウェアアーキテクトが知るべき97のこと


remote-buy-jp2._V45733929.jpg

掲載日時:2009.12.17 12:00  

コメント [8] , トラックバック [0]

最近のコメント : 6GB RAMとは、この記事は64bit版前提なのかな...more »

はてなブックマーク

ページのトップへページのトップへ
[PR] 
[PR] 
コメント
you :2009.12.17 13:52

「高度な設定>設定>高度な設定>変更」と進んでいきます。

TABの説明が 間違ってる。

K :2009.12.17 14:34

ハードディスクの回転数が上がりため

うーん :2009.12.17 15:35

RAM512MBのPC(会社資産&経費節減のためRAM増設不可)で
1.5GB使うソフトを動かす際の最適設定が知りたいです。
どう設定すればよろしいでしょうか。

と :2009.12.17 18:25

Vista32bitなので4GB積んで3GBちょい認識。
ページファイルはカスタムで最小16MB最大4978MB(OS推奨値)と設定。
いま確認してみたら1384MB。おおよそ記事通りの値?
Vista特有のもっさり感はあるものの、問題を生じたことは無し。
中級者気取りの素人が弄ってもろくなことがないので
無効にしたりする気は元からなかったけど。

Anonymous :2009.12.17 23:24

まぁいつまでもXP使ってる人は、「PC重い」なんて言う権利はありませんからね

dexi :2010.01.09 23:09

多少時間がかかってしまうことがあります。

遅い!

ぶらんこ :2010.01.11 11:22

ほとんどのデフラグソフトウェアはWindowsがサイズを大きくしても(これもあまり起こることはないです)ページファイルのデフラグメントを行うのでこのアドバイスもあまり意味があるとは思えません。x

64Bit対応してる物はないのだが?

柴 :2010.08.28 18:53

6GB RAMとは、この記事は64bit版前提なのかな

コメントを投稿



コメントは承認制となっております。編集部が確認および承認した後に、サイトへ反映されることになるので、多少時間がかかってしまうことがあります。
また、公序良俗に反する内容、個人や団体を誹謗中傷する内容、その他不適切と判断させていただいた内容については、否認または削除させていただく場合もございます。ご了承ください。
Only Japanese language available.

トラックバック

このエントリーのトラックバックURL :

最近のコメント
なかのひと