■概要
swap とは、利用可能なメモリ容量を増やすOSの機能の一つ。
ハードディスク上に「swap ファイル」と呼ばれる専用の領域を用意して、メモリ容量が不足してきたら使われていないメモリ領域の内容を一時的にハードディスクに退避させ、必要に応じてメモリに書き戻す動作のことを言う。
そうした機能を用いて確保された実際のメモリ容量以上のメモリ領域を「仮想メモリ」(仮想記憶)という。
ハードディスクはメモリよりはるかに低速なため、swap 動作が頻繁に起こると処理速度は低下する。
■詳細
コンピュータ・システムの動作中にメイン・メモリー(実メモリー)を使い切りそうになり、空き容量が不足した場合、実メモリーから使用中の内容の一部を取り出して退避するためのハード・ディスク上の領域。
Linuxでは、専用の領域としてパーティション作成時に確保する。
swap 領域の容量や使用状況は、freeコマンドで確認できる。
swap 領域に退避した内容に再びアクセスするためには、実メモリー上に復元する処理が必要。
これを「スワップイン」と呼ぶ。
その逆の退避する処理は「スワップアウト」。
実メモリーと比べると、ハード・ディスクへのアクセス速度は格段に遅くなる。
また、スワップアウトやスワップインが頻繁に発生すると、CPUの処理能力の多くがそれらの処理に割り当てられてしまい、アプリケーションの動作の妨げになる。
そのため、システム全般の処理性能は大幅に低下する。
ちなみに、スワップアウトやスワップインが頻繁に発生してしまう状態を、「スラッシング」と呼ぶ。
基本的には、スワップインやスワップアウトが頻繁に発生しないだけの実メモリーを搭載することが望ましいといえる。
swap 領域は実メモリーの容量不足によって、実行中のプロセスの強制終了を発生させないため、あるいはシステムを停止させないための“保険”とみなすべき。
実メモリーの容量が足りなければ、スワップ領域を増やすのではなく、実メモリーの搭載量を増加するようにすべき。
0 件のコメント:
コメントを投稿