web-dev-qa-db-ja.com

Linux OSがRAMでスワップなしの場合

Linux OSのRAMが不足していて、スワップが利用できない場合、どうなりますか?

23

オペレーティングシステムがRAMでなくスワップがない場合、クリーンページは破棄されます。ダーティページは最初にどこかに書き込む必要があるため破棄できません。これにより、スラッシングが発生し、パフォーマンスが低下します。 RAMワーキングセットを保持するには不十分です。これが、実際にスワップが必要な主な理由の1つです。そのため、オペレーティングシステムは、どのページを削除するかについてより良い決定を行うことができます。

スワップがない場合、削除するクリーンページがなくなるとすぐに、システムは仮想メモリ(厳密には、RAM +スワップ)を使い果たします。次に、プロセスを強制終了する必要があります。

RAMが不足することは完全に正常です。それはsing RAMのネガティブスピンです。RAMが不足しないことも同様に可能です。すべてのRAMが使用されると、オペレーティングシステムはRAMに何を保持するか、何を保持しないかについてインテリジェントな決定を行います。スワップがないと、選択肢が少なくなります。

スワップの有無にかかわらず、ページの削除が十分でない場合、オペレーティングシステムは、メモリ(mmapforkなど)を必要とする操作の成功を拒否することから始めます。ただし、それだけでは不十分で、プロセスを強制終了する必要がある場合もあります。

36
David Schwartz