技術ノート 特徴 ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?

ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?

ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?

古い経験則によれば、ページ ファイルまたはスワップは「RAM の 2 倍」または「RAM の 1.5 倍」である必要があります。しかし、16 GB の RAM がある場合、本当に 32 GB のページ ファイルまたはスワップが必要なのでしょうか?

ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?

おそらく、それほど多くのページ ファイルやスワップ スペースは必要ありません。最新のコンピュータに搭載されている ソリッド ステート ドライブの スペースが非常に少ないことを考えると、これは安心です。

ページ ファイルまたはスワップ パーティションの目的

まず、 または Linux のスワップ パーティションの本当の目的を思い出してください。どちらもコンピュータに追加の作業メモリを提供します。たとえば、コンピュータに 2 GB の RAM が搭載されており、多数のプログラムまたは多数のファイルを開く場合、コンピュータの作業メモリに 3 GB のデータを保存する必要がある場合があります。コンピュータは、追加の 1 GB のデータをページ ファイルまたはスワップ スペースに保存します。ページ ファイルまたはスワップは、追加データを保持する「オーバーフロー」領域として機能します。コンピュータは、使用中は自動的にデータを RAM に戻し、使用されていないときはデータをページ ファイルまたはスワップ パーティションに移動します。

古いデスクトップ コンピュータを使用していた場合、デスクトップ プログラムをしばらく最小化すると、この問題が発生することがあります。後で最大化すると、表示されるまでに時間がかかり、ディスク アクティビティ LED が点滅している間、ハード ドライブが削られる音が聞こえました。データはページ ファイルまたはスワップ パーティションから RAM に戻されていました。 RAM はページ ファイルやスワップ パーティションよりもはるかに高速です。 (デスクトップ プログラムを RAM に保持するのに十分な量の RAM を備えた最新のコンピューターでは、これはあまり一般的ではありません。)

ほとんどのアプリケーションは、要求したメモリを取得できることを期待しています。 RAM がいっぱいでページ ファイルがない状態で別のプログラムを開くと、プログラムがクラッシュする可能性があります。プログラムが使用できる追加のスペースを含むページ ファイルを用意すると、このような事態が発生するのを防ぐことができます。

ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?

ページ ファイルとスワップ パーティションのその他の用途

Windows と Linux は、ページ ファイルとスワップ スペースを他の目的にも使用します。

  • Windows クラッシュ ダンプ : Windows では、ページ ファイルが クラッシュ ダンプ に使用されます。完全なメモリ ダンプを作成するには、ページ ファイルのサイズは少なくとも物理メモリ + 1 MB である必要があります。カーネル メモリ ダンプの場合、8 GB 以上の RAM を搭載したシステムでは、ページ ファイルは少なくとも 800 MB である必要があります。ほとんどの人は完全なメモリ ダンプを必要としませんが、カーネル ダンプは役立つ場合があります。必要な 800 MB のページ ファイルはかなり小さいですが、ページ ファイルを無効にせずに有効にしておく必要があります。 (この情報は、Microsoft TechNet の 「クラッシュ ダンプについて」 の投稿から引用したものです。)
  • Linux 休止状態 : Linux システムでは、休止 状態 (システムの RAM の内容をディスクに保存し、再起動時に再ロードできるようにする電源切断状態) により 、システムの RAM の内容がスワップ パーティションに保存されます。これは、「ディスクへのサスペンド」とも呼ばれます。冬眠するには RAM と同じ大きさのスワップ パーティションが必要だと思うかもしれませんが、実際に必要なのは、使用する RAM と同じ大きさのスワップ パーティションだけです。つまり、16 GB の RAM のうち 4 GB しか定期的に使用しない場合、4 GB のスワップ パーティションに休止状態にすることができます。ただし、4 GB を超える RAM を使用した場合は、休止状態にできない可能性があります。多くの場合、RAM のサイズと同じスワップ パーティションを選択するのが安全です。これは休止状態にのみ適用されることに注意してください。コンピュータを休止状態にする予定がない場合は、これについて心配する必要はありません。 (Windows はデータを C:\hiberfil.sys ファイルに保存することで休止状態になるため、Windows で休止状態になるときにページ ファイルは関係しません。)
ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?

本当の質問: どれくらいのメモリを使用しますか?

必要なページング スペースまたはスワップ スペースの量を示す厳密なルールはありません。答えは、コンピューターで何を行うか、および使用するメモリの量によって異なります。たとえば、8 GB のメモリがあり、その 8 GB を超えるメモリを使用したことがない場合は、ページングやスワップ スペースをまったく使用しなくても問題ありません。もちろん、最終的には 8 GB 以上が必要になる可能性があります。一方、64 GB のメモリを搭載したコンピュータを使用していても、通常は 100 GB のデータ セットを処理できる可能性があり、安全のために少なくとも 64 GB のページングまたはスワップ領域が必要になるでしょう。したがって、8 GB の RAM を搭載したコンピュータにはページ ファイルは必要ありませんが、64 GB の RAM を搭載したコンピュータには巨大なページ ファイルが必要になる可能性があります。すべてはコンピューターが何をしているかによって決まります。

ほとんどの人は、必要なページングまたはスワップ領域の量を予測できません。たとえ今使用されているメモリを調べたとしても、プログラムが 1 週間または 1 か月後にどれだけの量を必要とするかはわかりません。

ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?

Windows が自動的に管理できる

Windows では、ページ ファイルは C:\pagefile.sys に保存されます。デフォルトでは、Windows はこのファイルのサイズを自動的に管理します。小さいサイズから開始し、必要に応じてより大きなサイズに拡張する可能性があります。 Windows にページ ファイルのサイズを独自に処理させることをお勧めします。システムドライブ上で大量のスペースを占有するべきではありません。ページ ファイルがシステム ドライブ上で大量のスペースを占有する場合は、過去にその大きなページ ファイルが必要になり、Windows がそのサイズを自動的に拡大したためです。

たとえば、RAM が 4 GB しかない Windows 8.1 システムでは、現在のページ ファイルのサイズは 1.8 GB しかありません。それほど多くの RAM はありませんが、Windows は追加の RAM が必要になるまで小さなページ ファイルを使用します。

ページ ファイルを削除してもパフォーマンス上の利点はありません。RAM をすべて使用した場合にプログラムがクラッシュする可能性がある、システムが不安定になる可能性があるだけです。システム ドライブのスペースを節約するためにページ ファイルを削除することもできますが、通常はその価値はありません。

サイズを手動で設定する場合は (推奨されませんが)、実際に重要なのは RAM のサイズだけではなく、システムが使用するメモリの量であることに必ず留意してください。 Microsoft のドキュメント には次のように記載されています。

「ページ ファイル サイズを設定する理由は変わっていません。必要に応じてシステム クラッシュ ダンプをサポートするか、必要に応じてシステム コミット制限を拡張することが常に目的でした。たとえば、物理メモリが大量にある場合などがインストールされている場合、ピーク使用時にシステム コミット チャージをバックアップするためにページ ファイルは必要ない可能性があります。利用可能な物理メモリだけでもこれを行うのに十分な大きさである可能性があります。」

言い換えれば、実際にどれだけのメモリが必要になるかがすべてです。利用可能なメモリの総量が「システム コミット制限」となります。

ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?

Linux には選択が必要

Linux では、Windows ページング ファイルに相当するのはスワップ パーティションです。これは単なるファイルではなくパーティションであるため、Linux をインストールするときにスワップ パーティションのサイズを選択する必要があります。もちろん、後で パーティションのサイズを変更する こともできますが、それは手間がかかります。 Linux はスワップ パーティションのサイズを自動的に管理できません。

各 Linux ディストリビューションは独自のインストーラーを使用しており、各 Linux ディストリビューションのインストーラーには、適切なスワップ パーティション サイズを自動的に選択しようとするロジックが組み込まれています。 Linux ディストリビューションは通常、RAM のサイズを使用してスワップ パーティションのサイズを決定します。 Ubuntu をインストールする場合、一般的なデフォルトのスワップ パーティション サイズは、RAM のサイズにさらに 0.5 GB 程度を加えたもののようです。これにより、休止状態が適切に動作することが保証されます。

Linux インストーラーで手動でパーティションを分割している場合、RAM のサイズに 0.5 GB を加えたものが 、システムを実際に休止状態に できるかどうかの目安となります。通常、これでも十分なスワップ領域が必要です。 16 GB 程度の大量の RAM があり、休止状態は必要ないがディスク領域が必要な場合は、おそらく 2 GB の小さなスワップ パーティションで済むでしょう。繰り返しになりますが、実際には、コンピューターが実際に使用するメモリの量によって異なります。ただし、万が一に備えてスワップ領域を確保しておくことをお勧めします。


以前の「RAM のサイズを 2 倍にする」という経験則は、1 GB または 2 GB の RAM を搭載したコンピュータに適用されていました。必要なページ ファイルまたはスワップ スペースの量について、万能の答えはありません。それはすべて、使用するプログラムとその必要性によって異なります。よくわからない場合は、オペレーティング システムのデフォルトをそのまま使用することをお勧めします。

画像クレジット: Flickr の William Hook Flickr の Jean-Etienne Minh-Duy Poirrier

「ページ ファイルまたはスワップ パーティションはどのくらいの大きさにすべきでしょうか?」に関するベスト動画選定!

【A試験_データベース】02. データベースの正規化(1)| 基本情報技術者試験
【知識ゼロから始めるLinux第9回】タスクバーにCPU、メモリ、Swap使用率を表示する方法【ずんだLinux入門】