/* 以下の説明では、仮想メモリ(仮想記憶)の概念と、アドレス空間の独立(多重仮想記憶またはバンキング)の概念とが混同されています。これらは、全く別々の概念です。ちょっと、正確な記述をする心の余裕が無いので、より正しい概念はWikipediaを参照してください。*/
OSの機能の一つ。
メモリーを仮想的に扱い、プロセス単位に独自のメモリアドレス空間を提供する機能。
実際には仮想的に割り当てたメモリ領域も、実メモリアドレス空間に存在するため、アドレスの再計算をOSもしくはCPUが提供する特殊ハードウエアで行う。
なぜこのような事を行うかというと?
などである。
このHDDに待避させる「領域」の事をUNIXの世界ではswapという事が多い。 swapに実メモリの内容を待避する事をswap outと呼ぶ。あまりに重たい作業をさせたときにHDDがガリガリと音を立てる。
もちろんHDDはRAMに比べて非常にアクセス速度が遅いため、swap outは発生しないほうが理想なのは言うまでもない、
発生を減らす方法として、不要なプロセスを起動しない、OSをより軽いものに変える、物理メモリを増設するなどという方法がある。
UNIXではswap専用の区画を作るのが一般的、一応swapをファイルにすることも可能。
Windowsではそれらの区画がないため、ファイルを作ることによって対応していると思われる。