Solaris Resource Manager 製品では、ユーザーと作業負荷が使用する仮想メモリー量を制限する機能を提供しています。この機能は物理メモリーを管理するのではなく、各ユーザーが使用する広域的なスワップ空間の容量を効果的に制限します。
ユーザーまたは作業負荷が l ノードの仮想メモリー制限値に達すると、システムはアプリケーションにメモリー割当エラーを返します。つまり、malloc() の呼び出しが失敗します。このエラーコードは、スワップ空間が不足しているかのようにアプリケーションに報告されます。
メモリー割当エラーに十分に対処できるアプリケーションはほとんどありません。したがって、データベースサーバーが仮想メモリー制限値に達するのを放置するのは危険です。制限値に達した場合、データベースエンジンがクラッシュして、データベースが壊れる可能性があります。
仮想メモリー制限値は、通常の状況ではその値に達しないように、高く設定しなければなりません。また、仮想メモリー制限値を使用して、データベースサーバー全体に上限を設定できますが、こうすることで、メモリーリークをともなう障害を起こしたデータベースがシステム上の他のデータベースや作業負荷に影響を与えるのを防止できます。