一方、HPが有償ソフトウェアとして提供するPRMは、プロセッサーとメモリ、ディスク・バンド幅のそれぞれの利用率について、アプリケーションごとに%単位の制御を実現する。たとえば、1つのOSが管理するプロセッサー・リソース全体を100%として、アプリケーション・グループ1には33%の使用権を、グループ2には66%の使用権をそれぞれ割り当てるといった運用が可能である。この割り当て例でPRMを動作させると、図2のようなプロセッサー・リソース管理が実施される。
 |
 |
| 図2:PRMによるプロセッサー利用率の制御 |
図2が示すように、プロセッサーに空きがある状態(時間A〜B)では、グループ1は使用権を上回るプロセッサー・リソースを得ることができる。しかし、プロセッサーが逼迫してくると(時間B〜)、グループ1の利用率は最大33%に抑えられ、グループ2には66%が確保される。
こうした%単位のきめ細かなリソース管理のカギは、HP-UXのスケジューラが握っている。HP-UXの標準のスケジューラでは、UNIX OSでは一般的な、プロセスの優先度に基づくスケジューリングが実施される。しかし周知のとおり、単純な優先度ベースのアルゴリズムでは、図2のような安定した利用率制御は実現できない。そこでPRMでは、標準スケジューラの代わりにFair
Share Scheduler(FSS)と呼ばれる専用のスケジューラをHP-UXに組み込むことで、指定された利用率を厳密に履行するOS環境を実現している。
図3は、このPRMとpsetの組み合わせによるリソース管理の例である。
 |
 |
| 図3:psetとPRMの組み合わせ例 |
この例では、まずpset AとBにそれぞれアプリケーション・グループAとBを固定で割り当てている(図左上)。また、pset
Cでは、アプリケーション・グループCおよびDで、PRMによる%単位の利用率制御を実施している(図右上)。さらにメモリとディスク・バンド幅については、すべてのグループに対してPRMを利用した利用率制御を適用している(図中央下)。
このように、psetとPRMの連携により、プロセッサー単位および%単位の厳密なリソース・パーティショニングが可能になり、メインフレーム・ライクなアプリケーションの集約と安定運用が実現する。 |