仮想記憶(Virtual Memory)は、物理的なメモリ(主記憶装置)の容量不足を補うため、ハードディスクドライブ(HDD)やソリッドステートドライブ(SSD)などの補助記憶装置の一部を、あたかもメモリの拡張領域であるかのように利用する高度なシステム制御技術です。この技術により、システムに搭載されている実際の物理メモリ量よりも大きなメモリ空間を必要とする巨大なプログラムや、多数のアプリケーションを同時に実行することが可能になります。
仮想記憶の管理方式として現代のOSで最も一般的に採用されているのが「ページング方式」です。これは、仮想的なメモリ空間と物理メモリ空間を「ページ」と呼ばれる固定長(例えば4KBや8KB)の小さな単位に分割して管理する手法です。実行中のプログラムが現在必要としているページだけを物理メモリ上に配置し、今すぐには使わないページは補助記憶装置上の専用領域(スワップファイルやページファイル)に退避させます(この動作をページアウトと呼びます)。そして、退避させたデータが後で必要になったときには、物理メモリ上の現在使われていないページと入れ替える形で再び読み込みます(これをページインと呼びます)。