ページングとは?ぺーじんぐ
ページングとは、論理アドレス空間と物理アドレス空間を同じ大きさの固定長ページに分け、ページ単位で主記憶と補助記憶を入れ替える仮想記憶の方式。ページテーブルが論理ページ番号から物理ページ番号への対応を持ち、動的アドレス変換(DAT/MMU)が実行のたびに変換する。可変長で分けるセグメンテーションと違って外部断片化は起きないが、ページ内に未使用部分が残る内部断片化が生じる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
まず、主記憶より大きなプログラムは動かせないという制約があった。加えて複数のプログラムを同時に載せると、置き場所が実行のたびに変わり、互いのメモリを壊し合う恐れもある。論理アドレスと物理アドレスを切り離し、対応表を通してしか物理メモリに触れない形にすれば、容量の制約・再配置・保護という三つの問題がまとめて解ける。ページングは、その対応表を固定長の単位で持つことにした実装である。
具体例
ページテーブルの所要量は「エントリ数×1エントリのサイズ」で求める。論理空間4Gバイト・ページサイズ4Kバイト・エントリ4バイトなら、エントリ数は約100万個で4Mバイトになる。これを1段の表で持つと大きすぎるため、実際のOSは多段ページテーブルと、直近の変換結果を憶えておくTLBを併用している。
試験での引っ掛け
ページサイズを小さくすると、ページ内の未使用部分(内部断片化)が減って主記憶を効率よく使える一方、ページテーブルは大きくなりページフォールトの回数も増える——どちらか一方だけが良くなるわけではない。またページングは固定長・セグメンテーションは可変長で、外部断片化が起きるのはセグメンテーション側である。
関連用語
出た過去問
出典:平成28年度 秋期 応用情報技術者試験 午前 問18(IPA)
プログラムで使用可能な実メモリ枠が3ページである仮想記憶システムにおいて、大きさ6ページのプログラムが実行されたとき、ページフォールトは何回発生するか。ここで、…
正解:10
要点:LRUは最後に使ってから最も時間が経ったページを追い出す
実メモリ枠3ページでLRUを適用し、0,1,2,3,4,0,2,4,3,1,4,5 の順に読み込むと、最初の0・1・2で3回の欠落が起き、以降は3,4,0,2 で置換えが4回続きます。次の4は残っているのでヒットし、3,1 で2回置換え、次の4はヒット、最後の5で1回置換えとなります。ヒットしたのは2回だけなので、12回のアクセスのうちページフォールトは10回です。
出典:平成28年度 春期 応用情報技術者試験 午前 問17(IPA)
ページング方式の仮想記憶において,あるプログラムを実行したとき,1回のページフォールトの平均処理時間は30ミリ秒であった。ページフォールト発生時の処理時間が次の…
正解:0.75
要点:平均時間は各処理時間を発生割合で加重平均した値
ページアウトを伴わない割合をpとすると、平均処理時間は20p+60(1−p)=30と表せる。整理すると60−40p=30となりp=0.75。よって4回に3回はページインだけで済んでいる計算になる。
出典:平成30年度 秋期 応用情報技術者試験 午前 問18(IPA)
ページング方式の仮想記憶において,あるプログラムを実行したとき,1回のページフォールトの平均処理時間は30ミリ秒であった。ページフォールト発生時の処理時間が次の…
正解:0.75
要点:平均処理時間は各ケースの時間を発生割合で加重平均した値。
ページアウトを伴わない処理の割合をpとすると、平均処理時間は20p+60(1−p)=30と表せる。これを整理すると60−40p=30となり、p=0.75が得られる。すなわち4回に3回はページインだけで済んでいたことになる。
出典:平成30年度 春期 応用情報技術者試験 午前 問19(IPA)
ページング方式の仮想記憶における主記憶の割当てに関する記述のうち、適切なものはどれか。
正解:プログラム実行時のページフォールトを契機に、ページをロードするのに必要な主記憶が割り当てられる。
要点:デマンドページングは必要になった時点でページを読み込む
ページング方式ではデマンドページングが基本で、プログラム開始時に全ページを読み込むのではなく、実際に参照されて存在しないと分かったとき(ページフォールト発生時)に主記憶を割り当ててページをロードする。割り当てられる主記憶の量も実行の進行に応じて変動する。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。