最も教科書的な置換アルゴリズムは、結果としてページを選択して返す。このページが変更されている場合（そのページを再利用する前に内容を二次記憶装置に書き戻す必要があることを意味する）、ページ内容をディスクなどに書き出して クリーンなページにしなければならない。初期の仮想記憶では、このクリーニング処理のオーバーヘッドは問題とはならなかった。というのは、当時のシステムでは全二重チャネルで二次記憶装置を接続していたため、ページインを並行して実行できたのである。最近の商用ハードウェアでは、全二重転送はサポートしていないため、クリーニングが問題となるのである。
先行ページング.
デマンドページングを採用しているシステムもあり、実際に要求を受けてからページの内容をRAMにロードする。
一方、RAM上にないどのページが間もなく必要とされるかを推論し、そのようなページを要求される前にRAMへロードするシステムもある。これに事前クリーニングを組合わせることが多く、RAM上にあるページのうちすぐには必要とされないページを推測し、それを事前に二次記憶装置に書き戻しておく。
ページフォールトが発生したとき、「先行ページング」システムでは参照されたページを持ってくるだけでなく、参照のあったページに続く数ページも同時にロードしておく。CPUが命令プリフェッチで数個の命令を事前にフェッチしておくのと同様である。
各種アルゴリズム.
ページ置換アルゴリズムには様々なものがある。
理論上最適なページ置換アルゴリズム.
ページング問題の解析はオンラインアルゴリズムの分野の話題である。ページング問題向けの乱択オンラインアルゴリズムの効率はを使って測定される。
セカンドチャンス.
セカンドチャンスが何をしているかと言えば、古いページの参照ビットを見てチャンスを一度あげるのである。
クロック.
ランダム.
エージング.
参照ビットを持たないハードウェアでの技法.
これまで解説してきた技法の多くは、各ページに対応した参照ビットが存在することを前提としている。中にはそのようなビットを持たないハードウェアもあり、その場合に効率的にページ置換を行うにはテクニックを要する。
ワーキングセット.
プロセスのワーキングセットは、ある期間中にそのプロセスが使うと予想されるページの集合である。
上高地温泉