ソフトウェア
ページフォルト(Page Fault)が発生する原因として正しいものはどれか。
ア.CPUのキャッシュミスが発生してメモリアクセスが遅延する状態。
イ.ページテーブルが破損してアドレス変換ができなくなった状態。
ウ.物理メモリが不足して、スワップ領域にもページが存在しない状態。
エ.アクセスしようとした仮想アドレスのページが現在物理メモリ上に存在しない状態。正解
解説
ページフォルトは「本棚(物理メモリ)に本がない!倉庫(ディスク)から取ってきて!」という状態。仮想記憶の仕組みで必然的に発生する正常な割り込みです。
なぜ エ が正解か
ページングでは仮想アドレス空間をページ単位に分割し、必要なページのみを物理メモリにロードします。プロセスが参照しようとしたページが「物理メモリに存在しない」とき、MMU(Memory Management Unit)がページフォルト例外を発生させます。OSはこれを受けてディスク(スワップ領域や実行ファイル)から該当ページを物理メモリにロードし、ページテーブルを更新して処理を再開します。これは仮想記憶の正常な動作です。
出典: AI生成問題(学習用)