プリページング 【prepaging】
概要
プリページング(prepaging)とは、OSがストレージ上の領域を利用して仮想メモリを管理しているとき、近い将来アクセス要求が発生しそうな領域を予測して、あらかじめ物理メモリへ読み込んでおく方式。仮想メモリはメモリ領域に物理的な装置内でのアドレス(番地)とは別に仮想的なアドレスを割り当てて管理する方式で、ストレージの記憶容量をメモリの延長のように扱うことができる。ストレージ上に確保した領域の内容を実際に読み書きするには物理メモリ上に呼び出す「ページイン」(page-in)処理が必要となる。
プリページング方式では、ページごとのアクセス履歴や頻度、他のページとの関連性などから近い将来アクセスされると予測されるページをあらかじめ物理メモリ上に展開しておく。例えば、複数ページに分割されたプログラムの先頭が読み込まれたら、プログラムの続きが存在する後続の領域もすぐ必要になると判断し、プログラム全体を読み込んでおくといった処理を行う。
実際にアクセス要求があってからページインを行う「デマンドページング」(demand paging)だとその度に処理が停止してしまうが、事前に読み込んでおけばスムーズに処理が進む利点がある。ただし、あてが外れて実際には読み込んだ領域が使われないこともあり、その場合は無駄に読み込みをを行って物理メモリを圧迫してしまったことになる。
(2021.10.30更新)