(57)【特許請求の範囲】
【請求項１】
サーバ装置に内蔵する部品の監視を制御する制御部と、
サーバ装置に内蔵する部品に関する属性情報を記憶する記憶部とを有し、
前記制御部は、
外部から前記部品に関する属性情報の読み出し要求を検知すると、該読み出し要求に応じて、前記記憶部のビジー状態の有無によって前記記憶部から前記部品に関する属性情報を読み出せるか否かを判定する読出可否判定部と、
前記読出可否判定部によって前記部品に関する属性情報を前記記憶部から読み出せないと判定された場合に、前記読み出し要求に応じた属性情報を前記記憶部と同期した他の記憶部から読み出させるべく、自己と二重化された待機中の制御部に対して前記読み出し要求の実行を依頼する読出依頼部と、
前記読出依頼部によって依頼された前記読み出し要求の実行に対する属性情報を前記待機中の制御部から取得する属性情報取得部と
を有することを特徴とする監視制御装置。
【請求項２】
前記属性情報取得部によって取得された属性情報を前記読み出し要求の要求元に出力する属性情報出力部
を有することを特徴とする請求項１に記載の監視制御装置。
【請求項３】
サーバ装置に内蔵する部品の監視を制御する運用中の制御部と、
前記運用中の制御部と二重化された待機中の制御部と、
前記部品に関する属性情報を記憶する運用中の記憶部と、
前記運用中の記憶部と同期させて前記部品に関する属性情報を記憶する待機中の記憶部とを有し、
前記運用中の制御部は、
外部から前記部品に関する属性情報の読み出し要求を検知すると、該読み出し要求に応じて、前記運用中の記憶部のビジー状態の有無によって前記運用中の記憶部から前記部品に関する属性情報を読み出せるか否かを判定し、前記部品に関する属性情報を読み出せないと判定した場合に、前記読み出し要求に応じた属性情報を前記待機中の記憶部から読み出させるべく、前記待機中の制御部に対して前記読み出し要求の実行を依頼し、依頼した前記読み出し要求の実行に対する属性情報を前記待機中の制御部から取得することを特徴とするサーバ装置。
【請求項４】
監視制御装置がサーバ装置に内蔵する部品を監視する監視制御方法であって、
外部から前記部品に関する属性情報の読み出し要求を検知すると、該読み出し要求に応じて、前記部品に関する属性情報を記憶する記憶部のビジー状態の有無によって前記記憶部から前記部品に関する属性情報を読み出せるか否かを判定する読出可否判定工程と、
前記読出可否判定工程によって前記部品に関する属性情報を前記記憶部から読み出せないと判定された場合に、前記読み出し要求に応じた属性情報を前記記憶部と同期した他の記憶部から読み出させるべく、前記監視制御装置と二重化された待機中の監視制御装置に対して前記読み出し要求の実行を依頼する読出依頼工程と、
前記読出依頼工程によって依頼された前記読み出し要求の実行に対する属性情報を前記待機中の監視制御装置から取得する属性情報取得工程と
を含むことを特徴とする監視制御方法。
【請求項５】
外部から部品に関する属性情報の読み出し要求を検知すると、該読み出し要求に応じて、サーバ装置に内蔵する部品に関する属性情報を記憶する記憶部のビジー状態の有無によって前記記憶部から前記部品に関する属性情報を読み出せるか否かを判定する読出可否判定手順と、
前記読出可否判定手順によって前記部品に関する属性情報を前記記憶部から読み出せないと判定された場合に、前記読み出し要求に応じた属性情報を前記記憶部と同期した他の記憶部から読み出させるべく、自己と二重化された待機中の監視制御プログラムに対して前記読み出し要求の実行を依頼する読出依頼手順と、
前記読出依頼手順によって依頼された前記読み出し要求の実行に対する属性情報を前記待機中の監視制御プログラムから取得する属性情報取得手順と
をコンピュータに実行させることを特徴とする監視制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、監視制御装置、サーバ装置、監視制御方法及び監視制御プログラムに関する。
【背景技術】
【０００２】
サーバ装置は、ＣＰＵやメモリのシステムボード、入出力（ＩＯ）装置、電源及びファン等の部品から構成される。これら部品は、それぞれセンサを備えている。そして、これら部品と接続するサーバ装置内のサービスプロセッサ（ＳＰ）を介して、サーバ装置を運用管理する端末であるクライアントが各部品に備えるセンサを監視するために当該センサの属性情報を取得する。【０００３】
ここで、従来のサーバ装置の構成を、図９を参照しながら説明する。図９は、従来のサーバ装置の構成を示す機能ブロック図である。図９に示すように、サーバ装置９は、システムボード９１ａ、９１ｂ、ＩＯ装置９２ａ、９２ｂ、電源９３ａ、９３ｂ及びファン９４ａ、９４ｂを有する。これら部品は、それぞれセンサを備えている。そして、サーバ装置９は、これら部品とシステム制御部（ＳＰ）９５とを、例えばＩ２Ｃバスで接続する。システム制御部９５は、各部品が備えるセンサの属性情報をＳＤＲ（Sensor  Data  Record）レポジトリとして記憶する記憶装置９５ａを有する。【０００４】
クライアントＡ、Ｂは、サーバ装置９とＬＡＮ（Local  Area  Network）で接続され、システム制御部９５と通信する。そして、クライアントＡ、Ｂは、例えばＩＰＭＩ（Intelligent  Platform  Management  Interface）と呼ばれる、サーバ装置の管理インタフェースの仕様に合致したコマンドを用いて、各部品に備えるセンサの属性情報を取得する。例えば、クライアントＡは、ＳＤＲレポジトリの１センサ情報の取得を要求するコマンドをシステム制御部９５に発行する。そして、システム制御部９５は、このコマンドを取得すると、取得したコマンドに基づいて、ＳＤＲレポジトリの１センサ情報を記憶装置９５ａから読み出し、読み出した情報をクライアントＡに通知する。このように、クライアントＡは、各部品に備えるセンサを監視するために、通知された情報を取得する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−９２７３８号公報
【特許文献２】特開平２−２７８４５７号公報
【特許文献３】特開平４−２８３８１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来のサーバ装置では、ＳＤＲレポジトリのセンサ情報を読み出す際、読み出し効率が低下する場合がある。例えば、ＳＤＲレポジトリを記憶する記憶装置がビジーである場合、センサ情報の読み出しが待たされ、センサ情報の読み出しが完了するまでに時間を要する場合がある。特に、センサを多数備えるサーバ装置では、多数のセンサのセンサ情報を記憶装置から読み出すこととなるので、ＳＤＲレポジトリを記憶する記憶装置がビジーである場合、全センサのセンサ情報の読み出しが完了するまでに長時間を要する可能性がある。【０００７】
また、別の例では、特定のＳＤＲレポジトリのセンサ情報を読み出す際、サーバ装置では、ＳＤＲの破損等の理由で、ＳＤＲレポジトリを記憶する記憶装置から特定のＳＤＲレポジトリのセンサ情報を読み出せない場合がある。【０００８】
さらに、別の例では、１クライアントが、ＳＤＲレポジトリのセンサ情報の更新を要求したとき、サーバ装置では、更新を要求したセンサ情報に関するＳＤＲをリザーブする。このため、更新を要求したクライアントと異なるクライアントが、更新を要求したセンサ情報と同一のセンサ情報の取得を要求しても、サーバ装置では、ＳＤＲのリザーブが解除されるまで当該情報を読み出せず、読み出しが完了するまでに時間を要する場合がある。【０００９】
開示の技術は、上記に鑑みてなされたものであって、ＳＤＲレポジトリの読み出し効率を向上させる監視制御装置等を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本願の開示する監視制御装置は、一つの態様において、サーバ装置に内蔵する部品に関する属性情報を記憶する記憶部と、外部から前記部品に関する属性情報の読み出し要求を検知すると、該読み出し要求に応じて、前記記憶部から前記属性情報を読み出せるか否かを判定し、前記属性情報を読み出せないと判定した場合に、前記読み出し要求に応じた属性情報を前記記憶部と同期した他の記憶部から読み出させるべく、自己と二重化された待機中の制御部に対して前記読み出し要求の実行を依頼する制御部とを備える。
【発明の効果】
【００１１】
本願の開示する監視制御装置の一つの態様によれば、サーバ装置に内蔵する部品に関する属性情報の読み出し効率を向上させることができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施例１に係る監視制御装置の構成を示す機能ブロック図である。
【図２】図２は、実施例２に係るサーバ装置の構成を示す機能ブロック図である。
【図３】図３は、ＧｅｔＳＤＲコマンドのデータ構造の一例を示す図である。
【図４】図４は、ＳＤＲ管理情報のデータ構造の一例を示す図である。
【図５】図５は、実施例２に係る監視制御処理の手順を示すフローチャートである。
【図６】図６は、ＳＤＲレポジトリがビジーである場合における監視制御処理のシーケンス図である。
【図７】図７は、ＳＤＲレポジトリがリザーブされている場合における監視制御処理のシーケンス図である。
【図８】図８は、監視制御プログラムを実行するコンピュータを示す図である。
【図９】図９は、従来のサーバ装置の構成を示す機能ブロック図である。
【発明を実施するための形態】
【００１３】
以下に、本願の開示する監視制御装置、サーバ装置、監視制御方法及び監視制御プログラムの実施例を図面に基づいて詳細に説明する。なお、本実施例によりこの発明が限定されるものではない。
【実施例１】
【００１４】
図１は、本実施例１に係る監視制御装置１の構成を示す機能ブロック図である。図１に示すように、監視制御装置１は、記憶部１１及び制御部１２を有する。【００１５】
記憶部１１は、サーバ装置１０に内蔵する部品に関する属性情報を記憶する。制御部１２は、外部から部品に関する属性情報の読み出し要求を検知すると、該読み出し要求に応じて、記憶部１１から属性情報を読み出せるか否かを判定する。【００１６】
また、制御部１２は、記憶部１１から属性情報を読み出せないと判定した場合に、読み出し要求に応じた属性情報を記憶部１１と同期した他の記憶部から読み出させるべく、自己と二重化された待機中の制御部に対して読み出し要求の実行を依頼する。【００１７】
このようにして、監視制御装置１は、部品に関する属性情報を読み出せないと判定した場合に、待機中の制御部に読み出し要求の実行を依頼することとした。このため、監視制御装置１は、読み出し要求に応じた属性情報を待機中の制御部によって他の記憶部から読み出せれば、他の記憶部が記憶部１１と同期しているので、部品に関する属性情報を読み出すことができ、当該属性情報の読み出し効率を向上できる。
【実施例２】
【００１８】
［実施例２に係るサーバ装置の構成］
図２は、本実施例２に係るサーバ装置１０Ａの構成を示す機能ブロック図である。図２に示すように、サーバ装置１０Ａは、その内部に監視制御装置１Ａ及び監視制御装置１Ｂを有し、監視制御装置を二重化している。ここでは、説明の便宜上、監視制御装置１Ａが運用中であることを示す「アクティブ側」、監視制御装置１Ｂが待機中であることを示す「スタンバイ側」とする。また、サーバ装置１０Ａは、ＩＰＭＩ（Intelligent  Platform  Management  Interface）の仕様に準拠するものとする。ＩＰＭＩとは、サーバ装置１０Ａの管理インタフェースのことであり、サーバ装置１０Ａに内蔵する部品の状態を監視し、サーバ装置１０Ａを管理する標準仕様のことである。なお、監視制御装置１は、例えばプリント板に適用可能であるが、これに限定されるものではない。【００１９】
監視制御装置１Ａは、サーバ装置１０Ａに内蔵する複数の部品であるシステムボード４Ａ、電源４Ｂ、ＩＯ装置４Ｃ及びファン４Ｄと接続する。これら部品は、それぞれセンサを備える。さらに、監視制御装置１Ａは、複数の部品と接続するドライバ部２１、複数のクライアント３（３Ａ、３Ｂ）と接続するポート２２、ＳＤＲ（Sensor  Data  Record）レポジトリ２３Ａ、２３Ｂ、ＩＰＭＩ制御部２４Ａ、２４Ｂ、ＳＤＲ管理情報２５及び二重化機構２６を有する。【００２０】
ドライバ部２１は、複数の部品に搭載された各センサとＩＰＭＩ制御部２４Ａとのインタフェースである。また、ドライバ部２１は、複数の部品と例えばＩ２Ｃバスで接続される。ポート２２は、クライアント３Ａ、３ＢとＩＰＭＩ制御部２４Ａとのインタフェースであり、例えばＴＣＰ／ＩＰ通信におけるソケットに相当する。また、ポート２２は、クライアント３から発行される、センサの属性情報を読み出すコマンド（以下、ＧｅｔＳＤＲコマンドという。）を受け付けると、受け付けたコマンドをＩＰＭＩ制御部２４Ａに通知する。このコマンドは、ＩＰＭＩの仕様に準拠したコマンドである。【００２１】
ＳＤＲレポジトリ２３Ａは、サーバ装置１０Ａに内蔵する部品に搭載されたセンサの属性情報を、センサに対応付けて記憶する。ＳＤＲレポジトリ２３Ａは、１個のセンサについて１個のレコードを用いて記憶する。この１個のセンサの属性情報が記憶されたレコードを「ＳＤＲ」という。センサの属性情報とは、例えば、センサに付与されたアドレス、センサの識別番号、センサの種別およびセンサが取り得る上下限値があるが、センサに関係する情報であればこれらに限定されるものではない。【００２２】
また、ＳＤＲレポジトリ２３Ａは、スタンバイ側のＳＤＲレポジトリ２３Ｂと同期をとっている。すなわち、ＳＤＲレポジトリ２３Ａが更新されると、スタンバイ側のＳＤＲレポジトリ２３Ｂも同一の情報で更新される。これにより、アクティブ側のＳＤＲレポジトリ２３Ａ及びスタンバイ側のＳＤＲレポジトリ２３Ｂは、相互に同一内容の属性情報を保持することとなる。【００２３】
ＩＰＭＩ制御部２４Ａは、ＩＰＭＩの仕様に準拠した処理を制御する。また、ＩＰＭＩ制御部２４Ａは、二重化機構２６を通してスタンバイ側のＩＰＭＩ制御部２４Ｂと相互に通信する。さらに、ＩＰＭＩ制御部２４Ａは、論理チャネル部３１、コマンド処理部３２Ａ、デバイス部３３及びハンドラ部３４Ａを有する。論理チャネル部３１は、複数のチャネルを備える。そして、論理チャネル部３１に備えられたチャネルが、ポート２２とコマンド処理部３２Ａとを論理的に関連付ける。すなわち、チャネルによってポート２２と関連付けられたコマンド処理部３２Ａが、後述するコマンド処理を行うことになる。【００２４】
コマンド処理部３２Ａは、ＩＰＭＩの仕様に準拠したコマンドを受け付けると、受け付けたコマンドに対応する処理を実行する。このコマンドには、例えばＳＤＲレポジトリ２３ＡからＳＤＲを読み出すコマンドであるＧｅｔＳＤＲコマンドや、ＳＤＲレポジトリ２３ＡをリザーブするコマンドであるＲｅｓｅｒｖｅ  ＳＤＲ  Ｒｅｐｏｓｉｔｏｒｙコマンドがある。デバイス部３３は、コマンド処理部３２Ａによって処理されるコマンドに応じて、ＳＤＲレポジトリ２３Ａ等の各種デバイスにアクセスする。ここで、ＧｅｔＳＤＲコマンドのデータ構造について、図３を参照しながら説明する。図３（Ａ）では、ＧｅｔＳＤＲコマンドのリクエストデータのデータ構造を示し、図３（Ｂ）では、ＧｅｔＳＤＲコマンドのレスポンスデータのデータ構造を示す。【００２５】
図３（Ａ）に示すように、ＧｅｔＳＤＲコマンドのリクエストデータには、リザーブＩＤ６ａ、レコードＩＤ６ｂ、オフセット６ｃ及び読出バイト数６ｄが含まれる。リザーブＩＤ６ａは、リザーブするＳＤＲの識別ＩＤを示す。リザーブＩＤ６ａには、０バイト目にリザーブＩＤの下位のバイト、１バイト目にリザーブＩＤの上位のバイトが設定される。レコードＩＤ６ｂは、読み出すＳＤＲの識別ＩＤを示す。レコードＩＤ６ｂには、２バイト目にレコードＩＤの下位のバイト、３バイト目にレコードＩＤの上位のバイトが設定される。オフセット６ｃは、レコードＩＤ６ｂに対応するレコードのうちデータを読み出す開始バイトを示す。読出バイト数６ｄは、読み出すバイト数を示す。【００２６】
図３（Ｂ）に示すように、ＧｅｔＳＤＲコマンドのレスポンスデータは、完了コード７ａ、次レコードＩＤ７ｂ及び読出データ７ｃを含む。完了コード７ａは、センサの属性情報の読み出し結果を示す。完了コード７ａには、例えば読み出し結果が正常であることを示す「０」及び異常であることを示す「１」が設定される。次レコードＩＤ７ｂは、読み出したレコードＩＤ６ｂに対応するレコードの次のレコードのレコードＩＤを示す。読出データ７ｃには、リクエストデータのレコードＩＤ６ｂに対応するレコードから読み出された属性情報が設定される。【００２７】
コマンド処理部３２Ａは、指定されたセンサの属性情報を読み出すべくＧｅｔＳＤＲコマンドのリクエストデータを取得し、取得したリクエストデータを解析し、解析結果に基づいてＳＤＲレポジトリの読み出しをデバイス部３３に対して依頼する。このＳＤＲレポジトリの読み出し依頼には、リクエストデータに設定されたレコードＩＤ６ｂ、オフセット６ｃ及び読出バイト数６ｄを含む。【００２８】
また、コマンド処理部３２Ａは、デバイス部３３から読み出し結果を取得し、取得した読み出し結果が正常である場合には、読み出し結果に基づいてレスポンスデータを作成する。そして、コマンド処理部３２Ａは、作成したレスポンスデータを論理チャネル部３１に出力する。一方、コマンド処理部３２Ａは、読み出し結果が異常である場合については、以下に詳述する。【００２９】
コマンド処理部３２Ａは、読出依頼部４１、属性情報取得部４２及び属性情報出力部４３を有する。読出依頼部４１は、読み出し結果が異常である場合に、この属性情報をスタンバイ側のＳＤＲレポジトリ２３Ｂから読み出させるべく、スタンバイ側に対して読み出し要求の実行を依頼する。読み出し結果が異常である場合とは、部品に搭載されたセンサの属性情報をＳＤＲレポジトリ２３Ａから読み出せない場合のことを意味する。具体的には、読出依頼部４１は、指定されたセンサの属性情報を後述する読出可否判定部４４によって読み出せないと判定された場合に、ＧｅｔＳＤＲコマンドのリクエストデータをスタンバイ側へ送信するように、ハンドラ部３４Ａに依頼する。【００３０】
属性情報取得部４２は、読み出し要求の実行依頼に対する応答をスタンバイ側から取得する。具体的には、属性情報取得部４２は、読出依頼部４１によって依頼されたＧｅｔＳＤＲコマンドに対するレスポンスデータをハンドラ部３４Ａから取得し、取得したレスポンスデータを属性情報出力部４３に出力する。レスポンスデータには、完了コード７ａが正常であれば、指定されたセンサの属性情報が読出データ７ｃに設定されている。【００３１】
属性情報出力部４３は、属性情報取得部４２によって取得されたレスポンスデータを読み出し要求の要求元に出力する。すなわち、属性情報出力部４３は、レスポンスデータが正常であれば、指定されたセンサの属性情報を含むレスポンスデータを読み出し要求の要求元であるクライアント３に出力する。【００３２】
デバイス部３３は、読出可否判定部４４を有する。読出可否判定部４４は、コマンド処理部３２ＡからのＳＤＲレポジトリの読み出し依頼に応じたセンサの属性情報をＳＤＲレポジトリ２３Ａから読み出せるか否かを判定する。具体的には、読出可否判定部４４は、ＳＤＲレポジトリ２３Ａに含まれるＳＤＲの管理情報を記憶するＳＤＲ管理情報２５に基づいて、ＳＤＲレポジトリ２３Ａがリザーブ状態であるか否かを判定する。【００３３】
ここで、ＳＤＲ管理情報２５のデータ構造について、図４を参照しながら説明する。図４は、ＳＤＲ管理情報のデータ構造の一例を示す図である。図４に示すように、ＳＤＲ管理情報２５は、総レコード数２５ａ、リザーブＩＤ２５ｂ、開始レコードＩＤ２５ｃ及び最後レコードＩＤ２５ｄを対応付けて記憶する。総レコード数２５ａは、ＳＤＲの総数を示す。リザーブＩＤ２５ｂは、リザーブ状態のレコードＩＤを示す。開始レコードＩＤ２５ｃは、開始レコードのレコードＩＤを示す。終了レコードＩＤ２５ｄは、終了レコードのレコードＩＤを示す。すなわち、読出可否判定部４４は、ＳＤＲレポジトリの読み出し依頼に含まれるレコードＩＤ６ｂがＳＤＲ管理情報２５のリザーブＩＤ２５ｂと一致するか否かを判定する。【００３４】
読出可否判定部４４は、ＳＤＲレポジトリ２３Ａがリザーブ状態であると判定した場合には、ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せないと判断し、リザーブ状態を理由とした異常である旨の読み出し結果を読出依頼部４１に通知する。また、読出可否判定部４４は、ＳＤＲレポジトリ２３Ａがリザーブ状態でないと判定した場合には、ＳＤＲレポジトリ２３Ａがビジー状態であるか否かを判定する。読出可否判定部４４は、ＳＤＲレポジトリ２３Ａがビジー状態であると判定した場合には、現在ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せないと判断し、ビジー状態を理由とした異常の読み出し結果を読出依頼部４１に通知する。また、読出可否判定部４４は、ＳＤＲレポジトリ２３Ａがビジー状態でないと判定した場合には、指定されたセンサの属性情報をＳＤＲレポジトリ２３Ａから読み出す。【００３５】
また、読出可否判定部４４は、読み出した属性情報が破損しているか否かを判定する。また、読出可否判定部４４は、読み出した属性情報が破損していると判定した場合には、ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せなかったと判断し、ＳＤＲの破損を理由とした異常である旨の読み出し結果を読出依頼部４１に通知する。また、読出可否判定部４４は、読み出した属性情報が破損していないと判定した場合には、読み出したセンサの属性情報を含んだ正常である読み出し結果をコマンド処理部３２Ａに出力する。【００３６】
ハンドラ部３４Ａは、コマンド処理部３２Ａと二重化機構２６とのインタフェースである。具体的には、ハンドラ部３４Ａは、読出依頼部４１から依頼されたＧｅｔＳＤＲコマンドのリクエストデータを、二重化機構２６を介してスタンバイ側に対して送信する。また、ハンドラ部３４Ａは、スタンバイ側によって処理されたＧｅｔＳＤＲコマンドに対するレスポンスデータを属性情報取得部４２に出力する。【００３７】
スタンバイ側の監視制御装置１Ｂは、監視制御装置１Ａとほぼ同一の構成を示すので、監視制御装置１Ａと同一の構成については同一符号を示すことで、その重複する構成の説明については省略する。監視制御装置１Ｂが監視制御装置１Ａと異なるところは、ハンドラ部３４Ａがハンドラ部３４Ｂに変更され、ＳＤＲレポジトリ２３ＡがＳＤＲレポジトリ２３Ｂに変更された点である。また、監視制御装置１Ｂが監視制御装置１Ａと異なるところは、コマンド処理部３２Ｂに読出依頼受付部５１及び属性情報通知部５２を備える点である。【００３８】
ＳＤＲレポジトリ２３Ｂは、前述したとおり、アクティブ側のＳＤＲレポジトリ２３Ａと同期をとっている。すなわち、ＳＤＲレポジトリ２３ＢとＳＤＲレポジトリ２３Ａとは、相互に同等の属性情報を保持する。【００３９】
ハンドラ部３４Ｂは、コマンド処理部３２Ｂと二重化機構２６とのインタフェースである。具体的には、ハンドラ部３４Ｂは、アクティブ側から依頼されたＧｅｔＳＤＲコマンドのリクエストデータを、スタンバイ側の二重化機構２６を介して取得し、取得したリクエストデータを読出依頼受付部５１に出力する。また、ハンドラ部３４Ｂは、属性情報通知部５２によって通知されたレスポンスデータを、二重化機構２６を介してアクティブ側に対して通知する。【００４０】
読出依頼受付部５１は、ハンドラ部３４ＢからＧｅｔＳＤＲコマンドのリクエストデータを受け付け、受け付けたリクエストデータを解析し、解析結果に基づいてＳＤＲレポジトリの読み出しをデバイス部３３に対して依頼する。属性情報通知部５２は、デバイス部３３から読み出し結果を取得し、取得した読み出し結果に基づいてレスポンスデータを作成する。そして、コマンド処理部３２Ｂは、作成したレスポンスデータをハンドラ部３４Ｂに対して出力する。レスポンスデータには、完了コード７ａが正常であれば、指定されたセンサの属性情報が読出データ７ｃに設定されることとなる。【００４１】
［実施例２に係る監視制御処理の手順］
次に、監視制御処理のシーケンスを、図５を参照して説明する。図５は、実施例２に係る監視制御処理の手順を示すフローチャートである。【００４２】
まず、コマンド処理部３２Ａは、クライアント３からリクエストを受け付けたか否かを判定する（ステップＳ１１）。そして、コマンド処理部３２Ａは、リクエストを受け付けていないと判定した場合には（ステップＳ１１Ｎｏ）、リクエストを受け付けるまで待つ。一方、コマンド処理部３２Ａは、リクエストを受け付けたと判定した場合には（ステップＳ１１Ｙｅｓ）、受け付けたリクエストがＧｅｔＳＤＲコマンドであるか否かを判定する（ステップＳ１２）。【００４３】
そして、コマンド処理部３２Ａは、受け付けたリクエストがＧｅｔＳＤＲコマンドでないと判定した場合には（ステップＳ１２Ｎｏ）、該当するリクエストのコマンド処理を実行する（ステップＳ１３）。一方、コマンド処理部３２Ａは、受け付けたリクエストがＧｅｔＳＤＲコマンドであると判定した場合には（ステップＳ１２Ｙｅｓ）、読出可否判定部４４が、ＳＤＲレポジトリ２３Ａがリザーブ状態であるか否かを判定する（ステップＳ１４）。【００４４】
そして、読出可否判定部４４は、ＳＤＲレポジトリ２３Ａがリザーブ状態であると判定した場合には（ステップＳ１４Ｙｅｓ）、ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せないと判断し、ステップＳ１８に移行する。一方、読出可否判定部４４は、ＳＤＲレポジトリ２３Ａがリザーブ状態でないと判定した場合には（ステップＳ１４Ｎｏ）、ＳＤＲレポジトリ２３Ａがビジー状態であるか否かを判定する（ステップＳ１５）。【００４５】
そして、読出可否判定部４４は、ＳＤＲレポジトリ２３Ａがビジー状態であると判定した場合には（ステップＳ１５Ｙｅｓ）、現在ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せないと判断し、ステップＳ１８に移行する。一方、読出可否判定部４４は、ＳＤＲレポジトリ２３Ａがビジー状態でないと判定した場合には（ステップＳ１５Ｎｏ）、ＧｅｔＳＤＲコマンドで指定されたセンサの属性情報をＳＤＲレポジトリ２３Ａから読み出す（ステップＳ１６）。【００４６】
続いて、読出可否判定部４４は、読み出した属性情報が破損しているか否かを判定する（ステップＳ１７）。読出可否判定部４４は、読み出した属性情報が破損していないと判定した場合には（ステップＳ１７Ｎｏ）、属性情報を読み出せたと判断し、ステップＳ２０に移行する。【００４７】
一方、読出可否判定部４４は、読み出した属性情報が破損していると判定した場合には（ステップＳ１７Ｙｅｓ）、ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せなかったと判断し、ステップＳ１８に移行する。【００４８】
続いて、ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せない場合には、読出依頼部４１が、ＧｅｔＳＤＲコマンドのリクエストデータをスタンバイ側に送信する（ステップＳ１８）。すなわち、前述したように、ＳＤＲレポジトリ２３Ａがリザーブ状態であったり、ＳＤＲレポジトリ２３Ａがビジー状態であったり、読み出した属性情報が破損していたりした場合がある。この場合に、読出依頼部４１は、センサの属性情報をスタンバイ側で読み出させるべく、スタンバイ側に対して読み出し要求の実行を依頼する。【００４９】
その後、属性情報取得部４２は、ＧｅｔＳＤＲコマンドに対するＳＤＲ情報（レスポンスデータ）をスタンバイ側から取得する（ステップＳ１９）。すなわち、属性情報取得部４２は、レスポンスデータの完了コード７ａが正常であることを示す値（例えば、「０」）であれば、スタンバイ側のＳＤＲレポジトリ２３Ｂから読み出されたセンサの正常な属性情報を取得することとなる。【００５０】
その後、属性情報出力部４３は、レスポンスデータを、ＧｅｔＳＤＲコマンドをリクエストしたクライアント３に返信する（ステップＳ２０）。【００５１】
［ＳＤＲレポジトリがビジーである場合における監視制御処理のシーケンス］
次に、アクティブ側のＳＤＲレポジトリ２３Ａがビジーである場合における監視制御処理のシーケンスを、図６を参照して説明する。図６は、ＳＤＲレポジトリがビジーである場合における監視制御処理のシーケンス図である。【００５２】
まず、クライアント３Ａは、センサの属性情報を読み出すべくＧｅｔＳＤＲコマンドをサーバ装置１０Ａに発行する（ステップＳ３１）。すると、アクティブ側のコマンド処理部３２Ａは、取得したＧｅｔＳＤＲコマンドのリクエストデータに基づいて、ＳＤＲレポジトリの読み出しをデバイス部３３に対して依頼する（ステップＳ３２）。【００５３】
そして、デバイス部３３の読出可否判定部４４は、ＳＤＲレポジトリの読み出し依頼に応じたセンサの属性情報をＳＤＲレポジトリ２３Ａから読み出せるか否かを判定する。具体的には、読出可否判定部４４は、読み出し依頼のあったＳＤＲの読み出しを試みる。ここでは、読み出しを試みたＳＤＲがビジーであるので、読出可否判定部４４は、現在ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せないと判断し、ビジー状態を理由とした異常である旨の読み出し結果を読出依頼部４１に通知する（ステップＳ３３）。【００５４】
続いて、コマンド処理部３２Ａの読出依頼部４１は、読み出し結果が異常であるので、ＧｅｔＳＤＲコマンドのリクエストデータをスタンバイ側へ送信するように、ハンドラ部３４Ａに依頼する（ステップＳ３４）。そして、ハンドラ部３４Ａは、読出依頼部４１から依頼されたＧｅｔＳＤＲコマンドのリクエストデータを、二重化機構２６を介してスタンバイ側のハンドラ部３４Ｂに送信する（ステップＳ３５〜Ｓ３７）。【００５５】
続いて、スタンバイ側のハンドラ部３４Ｂは、自己側の二重化機構２６から送信されたＧｅｔＳＤＲコマンドのリクエストデータをコマンド処理部３２Ｂの読出依頼受付部５１に出力する（ステップＳ３８）。そして、読出依頼受付部５１は、ハンドラ部３４Ｂから受け付けたＧｅｔＳＤＲコマンドのリクエストデータに基づいて、ＳＤＲレポジトリの読み出しをデバイス部３３に対して依頼する（ステップＳ３９）。【００５６】
続いて、スタンバイ側のデバイス部３３は、ＳＤＲレポジトリの読み出し依頼のあったＳＤＲの読み出しを試み、読み出し結果をコマンド処理部３２Ｂの属性情報通知部５２に返す（ステップＳ４０）。そして、属性情報通知部５２は、デバイス部３３から読み出し結果を取得し、取得した読み出し結果に基づいてレスポンスデータを作成し、作成したレスポンスデータをハンドラ部３４Ｂに通知する（ステップＳ４１）。【００５７】
そして、スタンバイ側のハンドラ部３４Ｂは、属性情報通知部５２から通知されたレスポンスデータを、二重化機構２６を介してアクティブ側のハンドラ部３４Ａに送信する（ステップＳ４２〜Ｓ４４）。そして、アクティブ側のハンドラ部３４Ａは、自己側の二重化機構２６から送信されたレスポンスデータをコマンド処理部３２Ａの属性情報取得部４２に戻す（ステップＳ４５）。そして、コマンド処理部３２Ａの属性情報出力部４３は、属性情報取得部４２によって取得されたレスポンスデータをクライアント３Ａに返す（ステップＳ４６）。【００５８】
なお、図６では、アクティブ側のＳＤＲレポジトリ２３Ａがビジーである場合における監視制御処理のシーケンスについて説明した。図６では、これに限定されるものではなく、アクティブ側のＳＤＲレポジトリ２３Ａから読み出されたＳＤＲが破損している場合であっても良い。この場合には、ステップＳ３３の読出可否判定部４４は、読み出し依頼のあったＳＤＲの読み出しを試みる。そして、読出可否判定部４４は、読み出したＳＤＲが破損しているので、ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せなかったと判断し、ＳＤＲの破損を理由とした異常である旨の読み出し結果を読出依頼部４１に通知するものとすれば良い。【００５９】
［ＳＤＲレポジトリがリザーブされている場合における監視制御処理のシーケンス］
次に、アクティブ側のＳＤＲレポジトリ２３Ａがリザーブされている場合における監視制御処理のシーケンスを、図７を参照して説明する。図７は、ＳＤＲレポジトリがリザーブされている場合における監視制御処理のシーケンス図である。【００６０】
まず、クライアント３Ａは、ＳＤＲレポジトリ２３ＡをリザーブすべくＲｅｓｅｒｖｅＳＤＲ  Ｒｅｐｏｓｉｔｏｒｙコマンドをサーバ装置１０Ａに発行する（ステップＳ５１）。すると、アクティブ側のコマンド処理部３２Ａは、取得したＲｅｓｅｒｖｅ  ＳＤＲ  Ｒｅｐｏｓｉｔｏｒｙコマンドのリクエストデータに基づいて、ＳＤＲレポジトリのリザーブをデバイス部３３に対して依頼する（ステップＳ５２）。【００６１】
そして、デバイス部３３は、ＳＤＲレポジトリのリザーブ依頼に応じて、ＳＤＲレポジトリ２３Ａをリザーブ状態にし、リザーブ正常となるレスポンスデータをコマンド処理部３２Ａに返す（ステップＳ５３）。さらに、コマンド処理部３２Ａは、デバイス部３３から取得したレスポンスデータをクライアント３Ａに返す（ステップＳ５４）。【００６２】
その後、クライアント３Ｂは、センサの属性情報を読み出すべくＧｅｔＳＤＲコマンドをサーバ装置１０Ａに発行する（ステップＳ５５）。すると、アクティブ側のコマンド処理部３２Ａは、取得したＧｅｔＳＤＲコマンドのリクエストデータに基づいて、ＳＤＲレポジトリの読み出しをデバイス部３３に対して依頼する（ステップＳ５６）。【００６３】
そして、デバイス部３３の読出可否判定部４４は、ＳＤＲレポジトリの読み出し依頼に応じたセンサの属性情報をＳＤＲレポジトリ２３Ａから読み出せるか否かを判定する。ここでは、ＳＤＲレポジトリ２３Ａがリザーブ状態であるので、読出可否判定部４４は、ＳＤＲレポジトリ２３ＡからＳＤＲを読み出せないと判断し、リザーブ状態を理由とした異常である旨の読み出し結果を読出依頼部４１に通知する（ステップＳ５７）。【００６４】
以降の処理（ステップＳ５８〜Ｓ７０までの処理）については、図６に示すＳＤＲレポジトリがビジーである場合での監視制御処理（ステップＳ３４〜Ｓ４６までの処理）と同一内容の処理動作を実行するため、その重複する処理内容の説明については省略する。【００６５】
［実施例２の効果］
上記実施例２によれば、ＩＰＭＩ制御部２４Ａの読出可否判定部４４が、読み出し要求に応じて、部品に関する属性情報をＳＤＲレポジトリ２３Ａから読み出せるか否かを判定する。そして、ＩＰＭＩ制御部２４Ａの読出依頼部４１が、読出可否判定部４４によって部品に関する属性情報をＳＤＲレポジトリ２３Ａから読み出せないと判定された場合には、スタンバイ側に対して読み出し要求の実行を依頼する。そして、ＩＰＭＩ制御部２４Ａの属性情報取得部４２は、読出依頼部４１によってスタンバイ側に対して依頼された読み出し要求に対する属性情報を、スタンバイ側から取得する。かかる構成によれば、ＩＰＭＩ制御部２４Ａは、部品に関する属性情報をＳＤＲレポジトリ２３Ａから読み出せないと判定した場合には、読み出せなかった属性情報をスタンバイ側のＳＤＲレポジトリ２３Ｂから取得することとした。この結果、ＩＰＭＩ制御部２４Ａは、部品に関する属性情報の読み出し効率を向上させることができる。【００６６】
また、上記実施例２によれば、ＩＰＭＩ制御部２４Ａの属性情報出力部４３は、属性情報取得部４２によって取得された属性情報を読み出し要求の要求元に出力する。かかる構成によれば、属性情報出力部４３は、取得された属性情報を要求元に出力することとした。このため、要求元では、アクティブ側及びスタンバイ側を意識しないで、要求した属性情報を取得できる。【００６７】
また、上記実施例２によれば、ＩＰＭＩ制御部２４Ａの読出可否判定部４４は、ＳＤＲレポジトリ２３Ａのビジー状態の有無によってＳＤＲレポジトリ２３Ａから属性情報を読み出せるか否かを判定する。かかる構成によれば、読出可否判定部４４がビジー状態であることによって属性情報を読み出せないと判定した場合であっても、ＩＰＭＩ制御部２４Ａがこの属性情報をスタンバイ側から読み出せれば、ビジー状態による待ち時間を回避できる。この結果、読出可否判定部４４は、属性情報の読み出し効率を向上させることができる。【００６８】
また、上記実施例２によれば、ＩＰＭＩ制御部２４ＡのＳＤＲレポジトリ２３Ａは、部品に搭載されたセンサに関する属性情報を記憶する。かかる構成によれば、ＩＰＭＩ制御部２４Ａは、部品に搭載されたセンサに関する属性情報の読み出し効率を向上させることができる。【００６９】
［プログラム等］
なお、サーバ装置１０Ａは、既知のパーソナルコンピュータ、ワークステーションなどの情報処理装置に、上記した二重化されたＩＰＭＩ制御部２４Ａ等の各機能を搭載することによって実現することができる。【００７０】
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、属性情報取得部４２と属性情報出力部４３とを１個の部として統合しても良い。一方、読出可否判定部４４を、リザーブ状態であるか否かを判定するリザーブ状態判定部とビジー状態であるか否かを判定するビジー状態判定部と読み出した属性情報が破損しているか否かを判定する属性情報破損判定部とに分散しても良い。また、ＳＤＲレポジトリ２３ＡやＳＤＲ管理情報２５等の記憶部をサーバ装置１０Ａの外部装置としてネットワーク経由で接続するようにしても良い。【００７１】
また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図８を用いて、図２に示したＩＰＭＩ制御部２４Ａと同様の機能を有する監視制御プログラムを実行するコンピュータの一例を説明する。【００７２】
図８は、監視制御プログラムを実行するコンピュータを示す図である。図８に示すように、コンピュータ１０００は、ＲＡＭ（Random  Access  Memory）１０１０と、キャッシュ１０２０と、ＨＤＤ１０３０と、ＣＰＵ（Central  Processing  Unit）１０４０及びバス１０５０とを有する。ＲＡＭ１０１０、キャッシュ１０２０、ＨＤＤ１０３０、ＣＰＵ１０４０は、バス１０５０によって接続されている。【００７３】
そして、ＨＤＤ１０３０には、図２に示したＩＰＭＩ制御部２４Ａと同様の機能を有する監視制御プログラム１０３１が記憶される。また、ＨＤＤ１０３０には、図２に示したＳＤＲレポジトリ２３Ａに対応するＳＤＲレポジトリ情報１０３２及び図２に示したＳＤＲ管理情報２５に対応するＳＤＲ管理情報１０３３が記憶される。【００７４】
そして、ＣＰＵ１０１０が監視制御プログラム１０３１をＨＤＤ１０３０から読み出してＲＡＭ１０１０に展開することにより、監視制御プログラム１０３１は、監視制御プロセス１０１１として機能するようになる。そして、監視制御プロセス１０１１は、ＳＤＲレポジトリ情報１０３２及びＳＤＲ管理情報１０３３から読み出した情報等を適宜ＲＡＭ１０１０上の自身に割り当てられた領域に展開し、この展開したデータ等に基づいて各種データ処理を実行する。【００７５】
なお、上記の監視制御プログラム１０３１は、必ずしもＨＤＤ１０３０に格納されている必要はなく、ＣＤ−ＲＯＭ等の記憶媒体に記憶されたこのプログラムを、コンピュータ１０００が読み出して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等を介してコンピュータ１０００に接続される他のコンピュータ（またはサーバ）等にこのプログラムを記憶させておいても良い。この場合には、コンピュータ１０００がこれらからプログラムを読み出して実行する。
【符号の説明】
【００７６】
１、１Ａ、１Ｂ  監視制御装置
１０、１０Ａ  サーバ装置
３Ａ、３Ｂ  クライアント
４Ａ  システムボード
４Ｂ  電源
４Ｃ  ＩＯ装置
４Ｄ  ファン
２１  ドライバ部
２２  ポート
２３Ａ、２３Ｂ  ＳＤＲレポジトリ
２４Ａ、２４Ｂ  ＩＰＭＩ制御部
２５  ＳＤＲ管理情報
２６  二重化機構
３１  論理チャネル部
３２Ａ、３２Ｂ  コマンド処理部
３３  デバイス部
３４Ａ、３４Ｂ  ハンドラ部
４１  読出依頼部
４２  属性情報取得部
４３  属性情報出力部
４４  読出可否判定部
５１  読出依頼受付部
５２  属性情報通知部
【図１】
0005447669.tif 000002
【図２】
0005447669.tif 000003
【図３】
0005447669.tif 000004
【図４】
0005447669.tif 000005
【図５】
0005447669.tif 000006
【図６】
0005447669.tif 000007
【図７】
0005447669.tif 000008
【図８】
0005447669.tif 000009
【図９】
0005447669.tif 000010