プリページングとデマンドページングは、OSでメモリを管理し性能を向上させるために使用される方式です。それらはメモリのページを作業セット(現在メモリにあるページの集合)にロードする方法が異なります。
プリページング、先読み。
プリページングでは、ページの必要性を予測し必要なページを事前にメモリにロードすることを試みます。
この方式によりページフォールトの数を減らし、性能を向上させることができます。デメリットは一度も使用されないページがメモリにロードされメモリ資源を浪費してしまう可能性もあります。
デマンドページング、その場で。
デマンドページングはオペレーティングシステムがページが必要なときだけメモリにロードするやり方です。(つまりデマンドベースで)
プロセスが現在メモリにないページにアクセスする必要がある場合はページフォルトが発生します。その後、オペレーティングシステムは必要なページをメモリにロードします。この方式ではメモリの使用量を最小限に抑えることができます。
デメリットはプロセスがメモリにない多くのページにアクセスすると頻繁にページフォルトが発生し、システムの速度が低下する可能性があります。
例で考えるページング
大量のページを巡回する大規模なアプリケーションを実行するオペレーティングシステムで少し考えてみましょう。
デマンドページングを使用すると、アプリケーションがメモリ上にないページにアクセスするため、システムで多数のページフォルトが発生する可能性があります。
しかし、オペレーティングシステムがアプリケーションのページ使用パターンを予測できれば、プリページングを使用して必要なページをあらかじめメモリにロードし、ページフォルトを減らしてパフォーマンスを改善することができます。

