Solaris オペレーティング環境には、ある種の資源を制御する機能が他にいくつかあります。リアルタイムスケジューリング、nice(1)、ディスククォータ、プロセッサセットなどの機能は、基本的な Solaris システムに含まれています。
Sun Bandwidth Allocator はアンバンドルのソフトウェアパッケージです。また、動的システムドメインは Sun Enterprise 10000 システムプラットフォームの機能、動的再構成は Sun Enterprise 6500 システムプラットフォームの機能です。
これらの構成要素はどれも資源管理を実行しますが、Solaris Resource Manager の機能とは何らかの点で異なります。
リアルタイムスケジューリング
標準の Solaris オペレーティングシステムは、従来のほとんどの仕事に対し TS スケジューリングクラスを使用しますが、十分な特権を持つユーザーに対してはリアルタイム (RT) スケジューリングを使用します。RT スケジューリングクラスでは、特定の作業負荷やプロセスがプロセッサに直ちにアクセスできるように、他とは非常に異なった (そして、意図的に大きな重みを加味した) スケジューリングポリシーが使用されます。
Solaris Resource Manager は、RT スケジューリングクラスと同じシステムで使用できますが、RT クラスで動作しているプロセスを制御することはできません。Solaris Resource Manager フェアシェアスケジューラでは、RT スケジューリングクラスで動作していないプロセスの CPU 時間資源しか管理できません。たとえば、4 個のプロセッサを持つシステムでは、単一スレッドのプロセスが 1 つのプロセッサ全体を占有することがあります。実際、要求プロセスが CPU を占有するプロセスだと、このようなことが起ります。このシステムでさらに Solaris Resource Manager が動作している場合には、通常ユーザーのプロセスは、リアルタイムプロセスによって使用されていない 3 つの CPU に対して割り当てられます。RT プロセスが CPU を継続して使用するとは限らないので、RT プロセスがアイドルのときは、Solaris Resource Manager が 4 個のプロセッサをすべて制御します。
nice(1) コマンド
nice(1) コマンドでは、ユーザーが実行優先順位を変更できます。ただし、スーパーユーザー特権がない場合は、優先順位を低くすることしかできません。たとえば、対話ログインセッションから優先順位の低いバッチジョブを起動する場合など、場合によっては便利な機能ですが、ユーザーの操作が不可欠です。Solaris Resource Manager では管理ポリシーを強制的に適用するので、ユーザーの操作は特に必要ありません。
ディスク割り当て
Solaris ファイルシステムのディスク割り当て機能で、管理者が個々のユーザーのディスク使用量を制限できます。この機能は、Solaris Resource Manager とは独立したものです。
プロセッサセット
プロセッサセットは Solaris 2.6 で導入された機能です。この機能では、管理者がマルチプロセッサシステムを論理グループに分割することによって、ユーザーがこれらのグループでプロセスを起動できます。この利点は、あるプロセッサセットで動作する作業負荷が他のプロセッサセットで行われている CPU 動作には影響を与えないということです。これはある点で Solaris Resource Manager の機能と似ていますが、基本的に 2 つの機能は全く異なっています。プロセッサセットは CPU 動作だけを制御します。この制御は比較的設定が細かくないハードウェアレベルのものです。ある時点ではプロセッサは 1 つのプロセッサセットだけに所属します。特にプロセッサの少ない比較的小さなシステムでは、設定が細かくできないことがあります。4 個のプロセッサを持つシステムの場合は、割り当て可能な資源はシステムの 25 パーセントです。
Solaris Resource Manager ではもっと細かい制御が可能です。各ユーザーにはシステムの割当数が与えられます。これらの割当数を細かく指定すれば、スケジューラがそれに従って資源を割り当てます。たとえば、割当数 50 であるユーザーの割当数が 40 だとすると、このユーザーは資源の 80 パーセント (40/50=80) を獲得します。同じように、全体として割当数 67 である場合には、割当数 57 を持つユーザーは資源の 85 パーセントを獲得します。また、Solaris Resource Manager では CPU 以外の資源も制御できます。Solaris Resource Manager とプロセッサセットの相互動作については、「プロセッサセットの役割と効果」を参照してください。
動的ドメイン
Sun Enterprise 10000 には「動的システムドメイン」と呼ばれる機能があります。管理者が 1 つのシステムラックをいくつかの独立したシステムに論理的に (メインフレームのパーティション分割のように) 分割します。各システムは独自の Solaris のコピーを実行できます。たとえば、8 つのシステムボードに 32 個の CPU を持つマシンは、16 個の CPU を持つシステムが 1 つと 8 個の CPU を持つシステムが 2 つとして使用できます。このような場合には、Solaris の 3 つのコピーが動作します。 動的システムドメインは、Solaris の各コピーに資源を追加したり、取り除いたりする処理を管理するツールを提供しているため、物理資源を管理する広範な機能を実現しています。
Solaris Resource Manager は、資源を割り当てる機能を管理者に提供する点で動的システムドメインに似ていますが、その方法は全く異なっています。Solaris Resource Manager は Solaris の単一インスタンスの中で動作し、システムの資源を管理する上で設定を細かくして制御できます。Solaris Resource Manager は、Sun Enterprise 10000 システム内の各 Solaris インスタンスにおいて多くのユーザー間、あるいはアプリケーション間で資源を分割するのに使用でき、また動的システムドメインとともに使用できます。
動的再構成機能
Sun Enterprise サーバーの動的再構成機能では、プロセッサ、メモリー、入出力デバイスなどのハードウェア資源が含まれているシステムボードをユーザーが動的に追加または削除できます。メモリーを動的に再構成しても Solaris Resource Manager でのメモリー制限値検査には影響ありません。
Sun Bandwidth Allocator
Sun Bandwidth Allocator はアンバンドルパッケージです。Solaris カーネルとともに動作し、ネットワークの帯域幅の使用に対し制限を設定します。Sun Bandwidth Allocator は、いろいろなクラスの資源に適用される一種の資源管理ソフトウェアです。Solaris Resource Manager と Sun Bandwidth Allocator は、それぞれ性質の異なる別々の管理ドメインで使用します。Solaris Resource Manager はユーザーやアプリケーションの単位で動作しますが、Sun Bandwidth Allocator はポート、サービス、プロトコルの単位で管理します。