(57)【要約】【課題】複数の装置を含む情報処理装置において、１つの装置の制御部が他の装置内のハードウェアから情報を直接取得する。【解決手段】情報処理装置５０１は、装置５１１−１〜装置５１１−Ｎを含み、装置５１１−ｉ（ｉ＝１〜Ｎ）は、ハードウェア５２１−ｉ、制御部５２２−ｉ、及びスイッチ部５２３−ｉを含む。ハードウェア５２１−ｉは、情報を出力し、制御部５２２−ｉは、ハードウェア５２１−ｉを管理し、スイッチ部５２３−ｉは、ハードウェア５２１−ｉ、制御部５２２−ｉ、及び他の装置５１１−ｋ（ｋ≠ｉ）の間の接続を切り替える。スイッチ部５２３−１は、制御部５２２−１を、装置５１１−１と装置５１１−２との間の信号線５３１に接続する制御を行う。スイッチ部５２３−２は、ハードウェア５２１−２を信号線５３１に接続する制御を行う。そして、制御部５２２−１は、信号線５３１を介して、ハードウェア５２１−２が出力する情報を取得する。【選択図】図５
2018200514.tif 000002
【特許請求の範囲】
【請求項１】
複数の装置を備える情報処理装置であって、
前記複数の装置各々は、
ハードウェアと、
前記ハードウェアを管理する制御部と、
前記ハードウェア、前記制御部、及び前記複数の装置のうち他の装置の間の接続を切り替えるスイッチ部とを含み、
前記複数の装置のうち第１装置内のスイッチ部は、前記第１装置内の制御部を、前記第１装置と前記複数の装置のうち第２装置との間の信号線に接続する制御を行い、前記第２装置内のスイッチ部は、前記第２装置内のハードウェアを前記信号線に接続する制御を行い、前記第１装置内の前記制御部は、前記第２装置内の前記ハードウェアに接続された前記信号線を介して、前記第２装置内の前記ハードウェアが出力する情報を取得することを特徴とする情報処理装置。
【請求項２】
管理装置をさらに備え、
前記管理装置は、前記第２装置の識別情報を前記第１装置内の前記制御部に通知し、前記第１装置の識別情報を前記第２装置内の制御部に通知し、
前記第１装置内の前記制御部は、前記第２装置の識別情報に基づいて、前記第１装置内の前記制御部を前記信号線に接続するように、前記第１装置内の前記スイッチ部を制御し、
前記第２装置内の前記制御部は、前記第１装置の識別情報に基づいて、前記第２装置内の前記ハードウェアを前記信号線に接続するように、前記第２装置内の前記スイッチ部を制御することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記複数の装置各々に含まれるスイッチ部は、前記ハードウェアと前記他の装置との間の接続を切り替える入力側スイッチ部と、前記制御部と前記他の装置との間の接続を切り替える出力側スイッチ部とを含み、
前記第２装置内の入力側スイッチ部は、前記第２装置内の前記ハードウェアを前記信号線に接続し、
前記第１装置内の出力側スイッチ部は、前記第１装置内の前記制御部を前記信号線に接続することを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記第１装置内の前記制御部が前記第１装置内のハードウェアが出力する情報を取得する場合、
前記第１装置内の入力側スイッチ部は、前記第１装置内の前記ハードウェアを、前記第１装置内の前記入力側スイッチ部と前記第１装置内の前記出力側スイッチ部との間の装置内信号線に接続し、
前記第１装置内の前記出力側スイッチ部は、前記第１装置内の前記制御部を前記装置内信号線に接続し、
前記第１装置内の前記制御部は、前記第１装置内の前記ハードウェアに接続された前記装置内信号線を介して、前記第１装置内の前記ハードウェアが出力する情報を取得することを特徴とする請求項３記載の情報処理装置 。
【請求項５】
前記管理装置は、前記第１装置内のハードウェアにおけるエラーを検出した場合、前記第２装置の識別情報を前記複数の装置のうち第３装置内の制御部に通知し、前記第３装置の識別情報を前記第２装置内の前記制御部に通知し、
前記第３装置内の前記制御部は、前記第２装置の識別情報に基づいて、前記第３装置内の前記制御部を前記第２装置と前記第３装置との間の信号線に接続するように、前記第３装置内のスイッチ部を制御し、
前記第２装置内の前記制御部は、前記第３装置の識別情報に基づいて、前記第２装置内の前記ハードウェアを前記第２装置と前記第３装置との間の前記信号線に接続するように、前記第２装置内の前記スイッチ部を制御し、
前記第３装置内の前記制御部は、前記第２装置と前記第３装置との間の前記信号線を介して、前記エラーが検出された後に前記第２装置内の前記ハードウェアが出力する情報を取得することを特徴とする請求項２乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
前記第１装置内の前記制御部は、前記エラーが検出される前に、前記第２装置内の前記ハードウェアから取得した前記情報を、前記第２装置内の前記制御部へ送信し、
前記第２装置内の前記制御部は、前記第１装置内の前記制御部から受信した前記情報を、前記エラーが検出された後に、前記第３装置内の前記制御部へ送信することを特徴とする請求項５記載の情報処理装置。
【請求項７】
ハードウェアをそれぞれ含む複数の装置を備える情報処理装置における前記複数の装置のうち第１装置内のコンピュータのためのプログラムであって、
前記コンピュータを、前記複数の装置各々に含まれるハードウェアと接続する信号線のうち、識別情報により指定された第２装置に対応する信号線に接続するように、前記第１装置内のスイッチ部を制御し、
前記第２装置に対応する前記信号線を介して、前記第２装置内のハードウェアが出力する情報を取得する、
処理を前記コンピュータに実行させるためのプログラム。
【請求項８】
ハードウェアをそれぞれ含む複数の装置を備える情報処理装置における前記複数の装置のうち第１装置と接続された第２装置内のコンピュータのためのプログラムであって、
前記第２装置内のハードウェアを、前記複数の装置各々に含まれるコンピュータと接続する信号線のうち、識別情報により指定された前記第１装置に対応する信号線に接続するように、前記第２装置内のスイッチ部を制御する、
処理を前記コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
サーバの管理及び監視を行うための標準仕様として、Intelligent Platform Management Interface（ＩＰＭＩ）が知られている。ＩＰＭＩでは、マネジメントボード（Management Board，ＭＭＢ）及びベースボードマネジメントコントローラ（Baseboard Management Controller，ＢＭＣ）を用いて、サーバのハードウェアの管理及び監視が行われる。
【０００３】
情報処理システムにおけるサービスプロセッサバス切り替え方式も知られている（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開昭６１−１６６６７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
複数のシステムボード（System Board，ＳＢ）を含むサーバにおいて、オペレーティングシステム（Operating System，ＯＳ）等がパーティション内の各ＳＢ上のハードウェアから情報を収集することがある。このとき、ＯＳ等は、パーティション内のＨｏｍｅ  ＳＢ上のＢＭＣを介して、非Ｈｏｍｅ  ＳＢ上のＢＭＣから情報を収集するため、情報の収集に時間がかかる。
【０００６】
なお、かかる問題は、複数のＳＢを含むサーバにおけるハードウェアの管理に限らず、複数の装置を含む他の情報処理装置におけるハードウェアの管理においても生ずるものである。
【０００７】
１つの側面において、本発明は、複数の装置を含む情報処理装置において、１つの装置の制御部が他の装置内のハードウェアから情報を直接取得することを目的とする。
【課題を解決するための手段】
【０００８】
１つの案では、情報処理装置は、複数の装置を含み、各装置は、情報を出力するハードウェアと、ハードウェアを管理する制御部と、ハードウェア、制御部、及び他の装置の間の接続を切り替えるスイッチ部とを含む。
【０００９】
第１装置内のスイッチ部は、第１装置内の制御部を、第１装置と第２装置との間の信号線に接続する制御を行い、第２装置内のスイッチ部は、第２装置内のハードウェアをその信号線に接続する制御を行う。そして、第１装置内の制御部は、第２装置内のハードウェアに接続された信号線を介して、第２装置内のハードウェアが出力する情報を取得する。
【発明の効果】
【００１０】
１つの実施形態によれば、複数の装置を含む情報処理装置において、１つの装置の制御部が他の装置内のハードウェアから情報を直接取得することができる。
【図面の簡単な説明】
【００１１】
【図１】サーバの構成図である。
【図２】センサ定義情報及びセンサデータを示す図である。
【図３】センサデータ収集処理のシーケンスを示す図である。
【図４】コマンド及び応答を示す図である。
【図５】情報処理装置の構成図である。
【図６】情報取得処理のフローチャートである。
【図７】情報処理装置の具体例に対応するサーバの構成図である。
【図８】ＭＭＢの機能的構成図である。
【図９】ＢＭＣの機能的構成図である。
【図１０】入力側スイッチ部及び出力側スイッチ部の構成図である。
【図１１】制御信号を示す図である。
【図１２】ＳＢ＃０上のハードウェアにアクセスするスイッチ制御を示す図である。
【図１３】ＳＢ＃１上のハードウェアにアクセスするスイッチ制御を示す図である。
【図１４】第１のスイッチ制御処理のシーケンスを示す図である。
【図１５】第２のスイッチ制御処理のシーケンスを示す図である。
【図１６】再構築後にＳＢ＃３上のハードウェアにアクセスするスイッチ制御を示す図である。
【図１７】再構築後にＳＢ＃１上のハードウェアにアクセスするスイッチ制御を示す図である。
【図１８】再構築処理のシーケンスを示す図である。
【図１９】ＢＭＣのハードウェア構成図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら、実施形態を詳細に説明する。
図１は、複数のＳＢを含むサーバの構成例を示している。図１のサーバ１０１は、ＳＢ＃０〜ＳＢ＃３、ＭＭＢ＃０、及びＭＭＢ＃１を含む。
【００１３】
ＭＭＢ＃０及びＭＭＢ＃１は、冗長構成のＭＭＢであり、ファームウェアを用いて、サーバ１０１全体の管理及び監視を行う。ユーザは、ＭＭＢが提供するユーザインタフェースを介して、１つ以上のＳＢ及び１つ以上のInput/Output（ＩＯ）資源を選択することで、パーティションを構築することができる。ＯＳ及びBasic Input/Output System（ＢＩＯＳ）は、パーティション単位で動作し、ＭＭＢ＃０及びＭＭＢ＃１は、パーティション情報を保持する。
【００１４】
サーバ１０１内には、１つ又は複数のパーティションを構築することができる。１つのパーティションが複数のＳＢを含む場合、ユーザは、いずれか１つのＳＢをＨｏｍｅ  ＳＢとして設定する。
【００１５】
図１の例では、パーティション＃０は、ＳＢ＃０及びＳＢ＃１を含み、パーティション＃１は、ＳＢ＃２のみを含む。ＳＢ＃０は、パーティション＃０のＨｏｍｅ  ＳＢであり、ＳＢ＃１は、非Ｈｏｍｅ  ＳＢである。ＳＢ＃２は、パーティション＃１のＨｏｍｅ  ＳＢである。
【００１６】
ＳＢ＃ｉ（ｉ＝０〜３）は、ＢＭＣ１１２−ｉ及びハードウェア１１３−ｉを含む。ハードウェア１１３−ｉは、Central Processing Unit（ＣＰＵ）＃０、ＣＰＵ＃１、メモリ１１４−ｉ、電圧センサ１１５−ｉ等のハードウェアデバイスを含む。ＢＭＣ１１２−ｉは、ハードウェア１１３−ｉとInter-Integrated Circuit（Ｉ２Ｃ）等の信号線で接続されており、ＩＰＭＩに準じてハードウェア１１３−ｉの管理及び監視を行う。
【００１７】
Ｈｏｍｅ  ＳＢのＢＭＣは、センサ定義情報と、そのＳＢ上のハードウェアデバイスが出力するセンサデータとを保持し、非Ｈｏｍｅ  ＳＢのＢＭＣは、そのＳＢ上のハードウェアデバイスが出力するセンサデータのみを保持する。
【００１８】
ＯＳ１１１−ｊ（ｊ＝０，１）は、パーティション＃ｊ内の複数のＣＰＵ上で動作し、Keyboard Controller Style（ＫＣＳ）インタフェースによって、Ｈｏｍｅ  ＳＢ上のＢＭＣにアクセスすることができる。また、ＯＳ１１１−ｊ上で動作するエージェントソフトウェアも、ＫＣＳインタフェースによって、Ｈｏｍｅ  ＳＢ上のＢＭＣにアクセスすることができる。
【００１９】
ＢＭＣ１１２−０〜ＢＭＣ１１２−３、ＭＭＢ＃０、及びＭＭＢ＃１は、サーバ１０１内に閉じたプライベートローカルエリアネットワーク（Local Area Network，ＬＡＮ）によって接続されている。ＭＭＢ＃ｊ（ｊ＝０，１）は、プライベートローカルエリアネットワークを介して、ＢＭＣ１１２−０〜ＢＭＣ１１２−３と通信することができ、ＢＭＣ１１２−ｉは、プライベートローカルエリアネットワークを介して、他のＢＭＣ１１２−ｋ（ｋ≠ｉ）と通信することができる。
【００２０】
図２は、ＳＢ＃０のＢＭＣ１１２−０及びＳＢ＃１のＢＭＣ１１２−１が保持する情報の例を示している。Ｈｏｍｅ  ＳＢであるＳＢ＃０のＢＭＣ１１２−０は、センサ定義情報２０１及びセンサデータ２０２−０を保持し、非Ｈｏｍｅ  ＳＢであるＳＢ＃１のＢＭＣ１１２−１は、センサデータ２０２−１を保持する。
【００２１】
センサ定義情報２０１は、パーティション＃０内に存在するすべてのハードウェアデバイスに関する定義情報であり、センサ番号、センサ名、及びセンサＯｗｎｅｒを含む。センサ番号は、ハードウェア１１３−ｉに含まれる各ハードウェアデバイスのシリアル番号であり、センサ名は、各ハードウェアデバイスの識別情報である。センサＯｗｎｅｒは、各ハードウェアデバイスのセンサデータを保持するＢＭＣのアドレス（Slave address）を表す。ＢＭＣ１１２−０のアドレスは“０ｘ２０”であり、ＢＭＣ１１２−１のアドレスは“０ｘＣ２”である。
【００２２】
センサデータ２０２−ｉは、ＳＢ＃ｉ上のハードウェアデバイスが出力した情報の履歴であり、センサ番号、センサ名、及びデータを含む。データは、センサ番号及びセンサ名に対応する各ハードウェアデバイスが出力した情報を表す。
【００２３】
例えば、センサ番号“１”のハードウェアデバイスのセンサ名は“ＳＢ＃０  ＣＰＵ＃０”であり、そのセンサＯｗｎｅｒは“０ｘ２０”である。そして、センサデータ２０２−０には、このハードウェアデバイスのデータとして、ハードウェアデバイスの状態を示す“Ｎｏｒｍａｌ”が記録されている。
【００２４】
また、センサ番号“３”のハードウェアデバイスのセンサ名は“ＳＢ＃１  ＣＰＵ＃０”であり、そのセンサＯｗｎｅｒは“０ｘＣ２”である。そして、センサデータ２０２−１には、このハードウェアデバイスのデータとして、“Ｎｏｒｍａｌ”が記録されている。
【００２５】
センサ定義情報２０１及びセンサデータ２０２−ｉには、ＣＰＵ＃０及びＣＰＵ＃１の情報以外に、図１のメモリ１１４−ｉ、電圧センサ１１５−ｉ等の情報も記録される。
【００２６】
ＯＳ１１１−０は、Ｈｏｍｅ  ＳＢであるＳＢ＃０上のＢＭＣ１１２−０にアクセスし、ＢＭＣ１１２−０が保持するセンサ定義情報２０１に基づいて、パーティション＃０内の各ハードウェアデバイスからセンサデータを収集することができる。ＯＳ１１１−０上で動作するエージェントソフトウェアも、ＯＳ１１１−０と同様にして、パーティション＃０内の各ハードウェアデバイスからセンサデータを収集することができる。
【００２７】
図３は、パーティション＃０内におけるセンサデータ収集処理のシーケンスの例を示している。まず、ＯＳ１１１−０は、Ｈｏｍｅ  ＳＢであるＳＢ＃０上のＢＭＣ１１２−０に対して、Ｈｏｍｅ  ＳＢ上のハードウェアのセンサデータを取得する取得依頼（直接コマンド）を発行する（ステップ３０１）。ＢＭＣ１１２−０は、センサ定義情報２０１のセンサＯｗｎｅｒを参照して、Ｉ２ＣによりＳＢ＃０上のハードウェア１１３−０にアクセスし（ステップ３０２）、ハードウェア１１３−０からデータを取得する。そして、ＢＭＣ１１２−０は、センサデータ２０２−０を更新し（ステップ３０３）、取得したデータを応答データとしてＯＳ１１１−０へ返信する（ステップ３０４）。
【００２８】
次に、ＯＳ１１１−０は、ＢＭＣ１１２−０に対して、非Ｈｏｍｅ  ＳＢ上のハードウェアのセンサデータを取得する取得依頼（ＩＰＭＩ標準のＳｅｎｄ  Ｍｅｓｓａｇｅコマンド）を発行する（ステップ３０５）。ＢＭＣ１１２−０は、センサ定義情報２０１のセンサＯｗｎｅｒを参照して、ＳＢ＃１上のハードウェア１１３−１のセンサデータを取得する取得依頼をＢＭＣ１１２−１へ送信する（ステップ３０６）。そして、ＢＭＣ１１２−０は、コマンドを受け付けたことを示す応答をＯＳ１１１−０へ返信する（ステップ３０７）。
【００２９】
ＢＭＣ１１２−１は、Ｉ２Ｃによりハードウェア１１３−１にアクセスし（ステップ３０８）、ハードウェア１１３−１からデータを取得して、センサデータ２０２−１を更新する（ステップ３０９）。そして、ＢＭＣ１１２−１は、取得したデータをＢＭＣ１１２−０へ返信し（ステップ３１０）、ＢＭＣ１１２−０は、非Ｈｏｍｅ  ＳＢから応答を受信したことを示す通知をＯＳ１１１−０へ送信する（ステップ３１１）。
【００３０】
次に、ＯＳ１１１−０は、ＢＭＣ１１２−０に対して、非Ｈｏｍｅ  ＳＢ上のハードウェアのセンサデータ（応答データ）が存在するか否かを確認するコマンド（ＩＰＭＩ標準のＧｅｔ  Ｍｅｓｓａｇｅ  Ｆｌａｇコマンド）を発行する（ステップ３１２）。ＢＭＣ１１２−０は、応答データが存在することを示す応答をＯＳ１１１−０へ返信する（ステップ３１３）。
【００３１】
次に、ＯＳ１１１−０は、ＢＭＣ１１２−０に対して、応答データを取得する取得依頼（ＩＰＭＩ標準のＧｅｔ  Ｍｅｓｓａｇｅコマンド）を発行する（ステップ３１４）。ＢＭＣ１１２−０は、ＢＭＣ１１２−１から受信したデータを、応答データとしてＯＳ１１１−０へ返信する（ステップ３１５）。
【００３２】
次に、ＯＳ１１１−０は、ＢＭＣ１１２−０に対して、Ｇｅｔ  Ｍｅｓｓａｇｅコマンドを再度発行する（ステップ３１６）。ＢＭＣ１１２−０は、応答データが存在しないことを示す応答をＯＳ１１１−０へ返信する（ステップ３１７）。
【００３３】
このように、Ｈｏｍｅ  ＳＢ上のハードウェアのセンサデータを取得する処理では、ＯＳ１１１−０とＢＭＣ１１２−０の間で発生するインタラクションは１回である。一方、非Ｈｏｍｅ  ＳＢ上のハードウェアのセンサデータを取得する処理では、複数回のインタラクションが発生する。
【００３４】
図４は、図３のセンサデータ収集処理において、ＯＳ１１１−０とＢＭＣ１１２−０との間で転送されるコマンド及び応答の例を示している。コマンド４０１は、ステップ３０１でＯＳ１１１−０から発行される取得依頼に対応し、応答４０２は、ステップ３０４でＢＭＣ１１２−０から返信される応答データに対応する。
【００３５】
コマンド４０３は、ステップ３０５でＯＳ１１１−０から発行されるＳｅｎｄ  Ｍｅｓｓａｇｅコマンドに対応し、応答４０４は、ステップ３０７でＢＭＣ１１２−０から返信される応答に対応する。通知４０５は、ステップ３１１でＢＭＣ１１２−０から送信される通知に対応する。
【００３６】
コマンド４０６は、ステップ３１２でＯＳ１１１−０から発行されるＧｅｔ  Ｍｅｓｓａｇｅ  Ｆｌａｇコマンドに対応し、応答４０７は、ステップ３１３でＢＭＣ１１２−０から返信される応答に対応する。
【００３７】
コマンド４０８は、ステップ３１４でＯＳ１１１−０から発行されるＧｅｔ  Ｍｅｓｓａｇｅコマンドに対応し、応答４０９は、ステップ３１５でＢＭＣ１１２−０から返信される応答データに対応する。
【００３８】
コマンド４１０は、ステップ３１６でＯＳ１１１−０から発行されるＧｅｔ  Ｍｅｓｓａｇｅコマンドに対応し、応答４１１は、ステップ３１７でＢＭＣ１１２−０から返信される応答に対応する。
【００３９】
この例では、コマンド４０１に対する応答時間は、約３ｍｓｅｃであり、コマンド４０３以降のコマンドシーケンスに対する応答時間は、約３０ｍｓｅｃである。したがって、非Ｈｏｍｅ  ＳＢ上のハードウェアのセンサデータを取得する処理では、Ｈｏｍｅ  ＳＢ上のハードウェアのセンサデータを取得する処理と比較して、約１０倍の時間がかかっていることが分かる。コマンドシーケンスに対する応答時間のうち、約１８ｍｓｅｃは、ＢＭＣ１１２−０からＢＭＣ１１２−１への問い合わせにかかった時間である。
【００４０】
例えば、仮想マシンを動作させるハイパーバイザが、複数のＳＢを含むパーティション内のセンサデータを収集する際に、非Ｈｏｍｅ  ＳＢからのデータ収集に時間がかかることが原因で、コマンドがタイムアウトすることがある。
【００４１】
また、複数のＳＢを含むパーティションにおけるエージェントソフトウェアの起動時に、エージェントソフトウェアがパーティション内のセンサデータを収集する際、１ＳＢ当たり５０個以上のハードウェアデバイスにアクセスすることもある。この場合、非Ｈｏｍｅ  ＳＢからのデータ収集に時間がかかることが原因で、エージェントソフトウェアの起動タイムアウトが稀に発生する。
【００４２】
したがって、ＯＳ又はＯＳ上で動作するエージェントソフトウェアが非Ｈｏｍｅ  ＳＢ上のハードウェアのセンサデータを取得する時間を短縮することが望まれる。
【００４３】
図５は、実施形態の情報処理装置の構成例を示している。図５の情報処理装置５０１は、装置５１１−１〜装置５１１−Ｎ（Ｎは２以上の整数）を含み、装置５１１−ｉ（ｉ＝１〜Ｎ）は、ハードウェア５２１−ｉ、制御部５２２−ｉ、及びスイッチ部５２３−ｉを含む。
【００４４】
ハードウェア５２１−ｉは、情報を出力し、制御部５２２−ｉは、ハードウェア５２１−ｉを管理し、スイッチ部５２３−ｉは、ハードウェア５２１−ｉ、制御部５２２−ｉ、及び他の装置５１１−ｋ（ｋ≠ｉ）の間の接続を切り替える。
【００４５】
装置５１１−１内のスイッチ部５２３−１は、装置５１１−１内の制御部５２２−１を、装置５１１−１と装置５１１−２との間の信号線５３１に接続する制御を行う。装置５１１−２内のスイッチ部５２３−２は、装置５１１−２内のハードウェア５２１−２を信号線５３１に接続する制御を行う。そして、装置５１１−１内の制御部５２２−１は、装置５１１−２内のハードウェア５２１−２に接続された信号線５３１を介して、ハードウェア５２１−２が出力する情報を取得する。
【００４６】
図６は、図５の装置５１１−１内の制御部５２２−１が行う情報取得処理の例を示すフローチャートである。まず、制御部５２２−１は、制御部５２２−１を信号線５３１に接続するように、スイッチ部５２３−１を制御する（ステップ６０１）。信号線５３１は、各装置５１１−ｉに含まれるハードウェア５２１−ｉと接続する信号線のうち、識別情報により指定された装置５１１−２に対応する信号線である。そして、制御部５２２−１は、信号線５３１を介して、ハードウェア５２１−２が出力する情報を取得する（ステップ６０２）。
【００４７】
図５の情報処理装置５０１によれば、１つの装置の制御部が他の装置内のハードウェアから情報を直接取得することができる。
【００４８】
図７は、図５の情報処理装置５０１の具体例に対応するサーバの構成例を示している。図７のサーバ７０１は、ＳＢ＃０〜ＳＢ＃３、ＭＭＢ＃０、及びＭＭＢ＃１を含む。ＳＢ＃０〜ＳＢ＃３の各々は、図５の装置５１１−ｉに対応する。
【００４９】
パーティション＃０は、ＳＢ＃０及びＳＢ＃１を含み、パーティション＃１は、ＳＢ＃２のみを含む。ＳＢ＃０は、パーティション＃０のＨｏｍｅ  ＳＢであり、ＳＢ＃１は、非Ｈｏｍｅ  ＳＢである。ＳＢ＃２は、パーティション＃１のＨｏｍｅ  ＳＢである。ＳＢ＃３は、いずれのパーティションにも属さないＲｅｓｅｒｖｅｄ  ＳＢに設定されている。
【００５０】
ＳＢ＃ｉ（ｉ＝０〜３）は、ＢＭＣ７１２−ｉ、ハードウェア７１３−ｉ、及びスイッチ部７１４−ｉを含む。ＢＭＣ７１２−ｉ、ハードウェア７１３−ｉ、及びスイッチ部７１４−ｉは、図５の制御部５２２−ｉ、ハードウェア５２１−ｉ、及びスイッチ部５２３−ｉにそれぞれ対応する。ＭＭＢ＃ｊ（ｊ＝０，１）は、サーバ７０１全体の管理及び監視を行う管理装置に対応する。
【００５１】
ハードウェア７１３−ｉは、ＣＰＵ＃０、ＣＰＵ＃１、メモリ７２１−ｉ、電圧センサ７２２−ｉ等のハードウェアデバイスを含む。ＢＭＣ７１２−ｉは、ＩＰＭＩに準じて各ハードウェアデバイスの管理及び監視を行う。スイッチ部７１４−ｉは、スイッチ制御部７３１−ｉ、入力側スイッチ部７３２−ｉ、及び出力側スイッチ部７３３−ｉを含む。
【００５２】
入力側スイッチ部７３２−ｉは、Ｉ２Ｃ等の信号線で、ハードウェア７１３−ｉと出力側スイッチ部７３３−０〜出力側スイッチ部７３３−３に接続されている。出力側スイッチ部７３３−ｉは、Ｉ２Ｃ等の信号線で、ＢＭＣ７１２−ｉと入力側スイッチ部７３２−０〜入力側スイッチ部７３２−３に接続されている。スイッチ制御部７３１−ｉは、入力側スイッチ部７３２−ｉ及び出力側スイッチ部７３３−ｉを切り替えることで、信号線の接続を変更する。
【００５３】
ＢＭＣ７１２−ｉは、スイッチ制御部７３１−ｉとGeneral Purpose Input/Output（ＧＰＩＯ）等の信号線で接続されている。ＢＭＣ７１２−ｉは、スイッチ制御部７３１−ｉを介して、入力側スイッチ部７３２−ｉ及び出力側スイッチ部７３３−ｉを切り替えることで、ＳＢ＃０〜ＳＢ＃３のいずれのハードウェア７１３−ｉに対してもアクセスすることができる。
【００５４】
図８は、図７のＭＭＢ＃ｊの機能的構成例を示している。図８のＭＭＢ＃ｊは、通知部８０１−ｊを含み、サーバ７０１内のパーティション構成を示すパーティション情報８０２−ｊを保持する。パーティション情報８０２−ｊは、各パーティションに属するＳＢ＃ｉの識別情報と、各パーティションのＨｏｍｅ  ＳＢを示す識別情報とを含む。通知部８０１−ｊは、ＢＭＣ７１２−０〜ＢＭＣ７１２−３に対して、パーティション情報８０２−ｊを通知する。
【００５５】
図９は、図７のＢＭＣ７１２−ｉの機能的構成例を示している。図９のＢＭＣ７１２−ｉは、スイッチ処理部９０１−ｉを含み、センサ定義情報９０２−ｉ及びセンサデータ９０３−ｉを保持する。センサ定義情報９０２−ｉ及びセンサデータ９０３−ｉのデータ構造は、図２に示したセンサ定義情報２０１及びセンサデータ２０２−ｉと同様である。
【００５６】
ただし、Ｈｏｍｅ  ＳＢ上のＢＭＣのセンサデータには、パーティション内のすべてのＳＢ上のハードウェアが出力したデータが記録される。例えば、Ｈｏｍｅ  ＳＢであるＳＢ＃０上のＢＭＣ７１２−０のセンサデータ９０３−０には、ＳＢ＃０上のハードウェア７１３−０が出力したデータだけでなく、非Ｈｏｍｅ  ＳＢであるＳＢ＃１上のハードウェア７１３−１が出力したデータも記録される。
【００５７】
センサ定義情報９０２−ｉ及びセンサデータ９０３−ｉには、ＣＰＵ＃０及びＣＰＵ＃１の情報以外に、図７のメモリ７２１−ｉ、電圧センサ７２２−ｉ等の情報も記録される。ＣＰＵ＃０、ＣＰＵ＃１、及びメモリ７２１−ｉは、それらのハードウェアデバイスの状態を示すデータを出力する。ハードウェアデバイスの状態は、通常動作（Ｎｏｒｍａｌ）、警告、エラー等であってもよい。
【００５８】
電圧センサ７２２−ｉは、ＣＰＵ＃０及びＣＰＵ＃１の動作電圧又は供給電圧を示すデータを出力する。電圧センサ７２２−ｉは、動作電圧又は供給電圧が閾値を超えたか否かを示すデータを出力してもよい。
【００５９】
スイッチ処理部９０１−ｉは、ＭＭＢ＃ｊから通知されたパーティション情報８０２−ｊが示すパーティション構成に応じて、スイッチ制御部７３１−ｉに対する制御信号の設定を変更する。
【００６０】
図１０は、図７の入力側スイッチ部７３２−ｉ及び出力側スイッチ部７３３−ｉの構成例を示している。入力側スイッチ部７３２−ｉは、スイッチ１００１−ｉ〜スイッチ１００４−ｉを含む。スイッチ１００１−ｉは、ポートａとハードウェア７１３−ｉの間の接続を切り替え、スイッチ１００２−ｉは、ポートｂとハードウェア７１３−ｉの間の接続を切り替える。スイッチ１００３−ｉは、ポートｃとハードウェア７１３−ｉの間の接続を切り替え、スイッチ１００４−ｉは、ポートｄとハードウェア７１３−ｉの間の接続を切り替える。
【００６１】
出力側スイッチ部７３３−ｉは、スイッチ１０１１−ｉ〜スイッチ１０１４−ｉを含む。スイッチ１０１１−ｉは、ポートＡとＢＭＣ７１２−ｉの間の接続を切り替え、スイッチ１０１２−ｉは、ポートＢとＢＭＣ７１２−ｉの間の接続を切り替える。スイッチ１０１３−ｉは、ポートＣとＢＭＣ７１２−ｉの間の接続を切り替え、スイッチ１０１４−ｉは、ポートＤとＢＭＣ７１２−ｉの間の接続を切り替える。スイッチ１００１−ｉのポートａとスイッチ１０１１−ｉのポートＡは、装置内信号線によって接続されている。
【００６２】
ＢＭＣ７１２−ｉは、入力側スイッチ部７３２−ｉ及び出力側スイッチ部７３３−ｉを切り替える制御信号Ｇ１〜制御信号Ｇ４を、スイッチ制御部７３１−ｉへ出力する。制御信号Ｇ１及び制御信号Ｇ２は、出力側スイッチ部７３３−ｉを切り替える制御信号であり、制御信号Ｇ３及び制御信号Ｇ４は、入力側スイッチ部７３２−ｉを切り替える制御信号である。
【００６３】
スイッチ制御部７３１−ｉは、制御信号Ｇ１及び制御信号Ｇ２に基づいて、制御信号ＳＡ〜制御信号ＳＤをスイッチ１０１１−ｉ〜スイッチ１０１４−ｉへそれぞれ出力する。また、スイッチ制御部７３１−ｉは、制御信号Ｇ３及び制御信号Ｇ４に基づいて、制御信号Ｓａ〜制御信号Ｓｄをスイッチ１００１−ｉ〜スイッチ１００４−ｉへそれぞれ出力する。
【００６４】
図１１は、図１０の制御信号Ｇ１〜制御信号Ｇ４の例を示している。図１１（ａ）は、出力側スイッチ部７３３−ｉを切り替える制御信号Ｇ１及び制御信号Ｇ２の例を示している。例えば、制御信号Ｇ１及び制御信号Ｇ２がともに論理“０”である場合、スイッチ１０１１−ｉがＯＮに設定され、スイッチ１０１２−ｉ〜スイッチ１０１４−ｉがＯＦＦに設定される。したがって、ＢＭＣ７１２−ｉは、出力側スイッチ部７３３−ｉのポートＡに接続される。
【００６５】
同様にして、制御信号Ｇ１が論理“０”であり、制御信号Ｇ２が論理“１”である場合、ＢＭＣ７１２−ｉはポートＢに接続され、制御信号Ｇ１が論理“１”であり、制御信号Ｇ２が論理“０”である場合、ＢＭＣ７１２−ｉはポートＣに接続される。制御信号Ｇ１及び制御信号Ｇ２がともに論理“１”である場合、ＢＭＣ７１２−ｉはポートＤに接続される。
【００６６】
図１１（ｂ）は、入力側スイッチ部７３２−ｉを切り替える制御信号Ｇ３及び制御信号Ｇ４の例を示している。例えば、制御信号Ｇ３及び制御信号Ｇ４がともに論理“０”である場合、スイッチ１００１−ｉがＯＮに設定され、スイッチ１００２−ｉ〜スイッチ１００４−ｉがＯＦＦに設定される。したがって、ハードウェア７１３−ｉは、入力側スイッチ部７３２−ｉのポートａに接続される。
【００６７】
同様にして、制御信号Ｇ１が論理“０”であり、制御信号Ｇ２が論理“１”である場合、ハードウェア７１３−ｉはポートｂに接続され、制御信号Ｇ１が論理“１”であり、制御信号Ｇ２が論理“０”である場合、ハードウェア７１３−ｉはポートｃに接続される。制御信号Ｇ１及び制御信号Ｇ２がともに論理“１”である場合、ハードウェア７１３−ｉはポートｄに接続される。
【００６８】
図１０の構成によれば、スイッチ制御部７３１−ｉは、入力側スイッチ部７３２−ｉによってハードウェア７１３−ｉの接続先を切り替えることができ、出力側スイッチ部７３３−ｉによってＢＭＣ７１２−ｉの接続先を切り替えることができる。
【００６９】
図１２は、Ｈｏｍｅ  ＳＢ上のＢＭＣが同じＳＢ上のハードウェアにアクセスする場合のスイッチ制御の例を示している。各ＳＢ＃ｉのポートａ〜ポートｄは、入力側スイッチ部７３２−ｉのポートを表し、ポートＡ〜ポートＤは、出力側スイッチ部７３３−ｉのポートを表す。
【００７０】
ＳＢ＃０のポートＡは、ＳＢ＃０のポートａに接続されており、ポートＢは、ＳＢ＃１のポートｂに接続されており、ポートＣは、ＳＢ＃２のポートｃに接続されており、ポートＤは、ＳＢ＃３のポートｄに接続されている。
【００７１】
ＳＢ＃１のポートＡは、ＳＢ＃１のポートａに接続されており、ポートＢは、ＳＢ＃２のポートｂに接続されており、ポートＣは、ＳＢ＃３のポートｃに接続されており、ポートＤは、ＳＢ＃０のポートｄに接続されている。
【００７２】
ＳＢ＃２のポートＡは、ＳＢ＃２のポートａに接続されており、ポートＢは、ＳＢ＃３のポートｂに接続されており、ポートＣは、ＳＢ＃０のポートｃに接続されており、ポートＤは、ＳＢ＃１のポートｄに接続されている。
【００７３】
ＳＢ＃３のポートＡは、ＳＢ＃３のポートａに接続されており、ポートＢは、ＳＢ＃０のポートｂに接続されており、ポートＣは、ＳＢ＃１のポートｃに接続されており、ポートＤは、ＳＢ＃２のポートｄに接続されている。
【００７４】
各ＳＢ＃ｉ上のＢＭＣ７１２−ｉは、ＳＢ＃０〜ＳＢ＃３のポートＡ〜ポートＤとポートａ〜ポートｄとの間の接続関係を示す情報を保持している。
【００７５】
図１２の例では、パーティション＃０のＨｏｍｅ  ＳＢであるＳＢ＃０上のＢＭＣ７１２−０は、ポートＡに接続され、ハードウェア７１３−０は、ポートａに接続されている。したがって、ＢＭＣ７１２−０は、同じＳＢ＃０上のハードウェア７１３−０にアクセスして、各ハードウェアデバイスからデータを取得することができる。
【００７６】
例えば、ハードウェア７１３−０内の複数のハードウェアデバイスがバスに接続されている場合、ＢＭＣ７１２−０は、それらのハードウェアデバイスのアドレスを順番に指定することで、それぞれのハードウェアデバイスからデータを取得する。
【００７７】
図１３は、Ｈｏｍｅ  ＳＢ上のＢＭＣが非Ｈｏｍｅ  ＳＢ上のハードウェアにアクセスする場合のスイッチ制御の例を示している。この例では、ＳＢ＃０上のＢＭＣ７１２−０は、ポートＢに接続され、非Ｈｏｍｅ  ＳＢであるＳＢ＃１上のハードウェア７１３−１は、ポートｂに接続されている。したがって、ＢＭＣ７１２−０は、ＳＢ＃１上のハードウェア７１３−１にアクセスして、各ハードウェアデバイスからデータを取得することができる。
【００７８】
図１４は、パーティション＃０の構築時に入力側スイッチ部を切り替える第１のスイッチ制御処理のシーケンスの例を示している。まず、ＭＭＢ＃０の通知部８０１−０は、Ｈｏｍｅ  ＳＢであるＳＢ＃０上のＢＭＣ７１２−０に対して、パーティション＃０に属するＳＢの識別情報を通知する（ステップ１４０１）。これにより、パーティション＃０に属するＳＢの識別情報として、“ＳＢ＃０”及び“ＳＢ＃１”が通知される。
【００７９】
次に、通知部８０１−０は、ＢＭＣ７１２−０に対して、ＳＢ＃０がパーティション＃０のＨｏｍｅ  ＳＢであることを通知する（ステップ１４０２）。Ｈｏｍｅ  ＳＢであることを通知されたＢＭＣ７１２−０のスイッチ処理部９０１−０は、制御信号（Ｇ３，Ｇ４）を（０，０）に設定して、スイッチ制御部７３１−０へ出力する（ステップ１４０３）。
【００８０】
スイッチ制御部７３１−０は、制御信号Ｓａによりスイッチ１００１−０をＯＮに設定し、制御信号Ｓｂ〜制御信号Ｓｄによりスイッチ１００２−０〜スイッチ１００４−０をＯＦＦに設定する。これにより、図１２に示したように、ＳＢ＃０上のハードウェア７１３−０が、入力側スイッチ部７３２−０のポートａを介して、出力側スイッチ部７３３−０のポートＡに接続される。
【００８１】
次に、通知部８０１−０は、非Ｈｏｍｅ  ＳＢであるＳＢ＃１上のＢＭＣ７１２−１に対して、Ｈｏｍｅ  ＳＢの識別情報“ＳＢ＃０”を通知する（ステップ１４０４）。識別情報“ＳＢ＃０”を通知されたＢＭＣ７１２−１のスイッチ処理部９０１−１は、制御信号（Ｇ３，Ｇ４）を（０，１）に設定して、スイッチ制御部７３１−１へ出力する（ステップ１４０５）。
【００８２】
スイッチ制御部７３１−１は、制御信号Ｓｂによりスイッチ１００２−１をＯＮに設定し、制御信号Ｓａ、制御信号Ｓｃ、及び制御信号Ｓｄにより、スイッチ１００１−１、スイッチ１００３−１、及びスイッチ１００４−１をＯＦＦに設定する。これにより、図１２に示したように、ＳＢ＃１上のハードウェア７１３−１が、入力側スイッチ部７３２−１のポートｂを介して、ＳＢ＃０上の出力側スイッチ部７３３−０のポートＢに接続される。
【００８３】
このように、通知部８０１−０がＨｏｍｅ  ＳＢであるＳＢ＃０の識別情報をＢＭＣ７１２−１に通知することで、ＢＭＣ７１２−１は、ハードウェア７１３−１がＳＢ＃０に接続されるように、入力側スイッチ部７３２−１を切り替えることができる。
【００８４】
図１５は、パーティション＃０におけるセンサデータ収集時に出力側スイッチ部を切り替える第２のスイッチ制御処理のシーケンスの例を示している。まず、ＯＳ７１１−０は、Ｈｏｍｅ  ＳＢであるＳＢ＃０上のＢＭＣ７１２−０に対して、パーティション＃０のハードウェアのセンサデータを取得する取得依頼を発行する（ステップ１５０１）。
【００８５】
ＢＭＣ７１２−０のスイッチ処理部９０１−０は、制御信号（Ｇ１，Ｇ２）を（０，０）に設定して、スイッチ制御部７３１−０へ出力する（ステップ１５０２）。そして、スイッチ制御部７３１−０は、制御信号ＳＡによりスイッチ１０１１−０をＯＮに設定し、制御信号ＳＢ〜制御信号ＳＤによりスイッチ１０１２−０〜スイッチ１０１４−０をＯＦＦに設定する。これにより、図１２に示したように、ＢＭＣ７１２−０が、出力側スイッチ部７３３−０のポートＡを介して、ハードウェア７１３−０に接続される。
【００８６】
次に、ＢＭＣ７１２−０は、ハードウェア７１３−０にアクセスして（ステップ１５０３）、ハードウェア７１３−０からデータを取得し、取得したデータをセンサデータ９０３−０に記録する（ステップ１５０４）。これにより、センサデータ９０３−０が更新される。
【００８７】
次に、スイッチ処理部９０１−０は、制御信号（Ｇ１，Ｇ２）を（０，１）に設定して、スイッチ制御部７３１−０へ出力する（ステップ１５０５）。そして、スイッチ制御部７３１−０は、制御信号ＳＢによりスイッチ１０１２−０をＯＮに設定し、制御信号ＳＡ、制御信号ＳＣ、及び制御信号ＳＤにより、スイッチ１０１１−０、スイッチ１０１３−０、及びスイッチ１０１４−０をＯＦＦに設定する。これにより、図１３に示したように、ＢＭＣ７１２−０が、出力側スイッチ部７３３−０のポートＢを介して、ＳＢ＃１上のハードウェア７１３−１に接続される。
【００８８】
このように、通知部８０１−０が非Ｈｏｍｅ  ＳＢであるＳＢ＃１の識別情報をＢＭＣ７１２−０に通知することで、ＢＭＣ７１２−０は、ＢＭＣ７１２−０がＳＢ＃１に接続されるように、出力側スイッチ部７３３−０を切り替えることができる。
【００８９】
次に、ＢＭＣ７１２−０は、ハードウェア７１３−１にアクセスして（ステップ１５０６）、ハードウェア７１３−１からデータを取得し、取得したデータをセンサデータ９０３−０に記録する（ステップ１５０７）。これにより、センサデータ９０３−０が更新される。
【００９０】
次に、ＢＭＣ７１２−０は、取得したデータを、ＳＢ＃１上のＢＭＣ７１２−１へ送信し（ステップ１５０８）、ＢＭＣ７１２−１は、ＢＭＣ７１２−０から受信したデータを、センサデータ９０３−１に記録する（ステップ１５０９）。これにより、センサデータ９０３−１がセンサデータ９０３−０と同期する。そして、ＢＭＣ７１２−０は、ハードウェア７１３−０及びハードウェア７１３−１から取得したデータを、ＯＳ７１１−０へ返信する（ステップ１５１０）。
【００９１】
このように、図７の構成によれば、Ｈｏｍｅ  ＳＢのＢＭＣは、Ｈｏｍｅ  ＳＢ上のハードウェアだけでなく、非Ｈｏｍｅ  ＳＢ上のハードウェアからもセンサデータを直接取得することができる。したがって、ＯＳ又はＯＳ上で動作するエージェントソフトウェアからの取得依頼に対して、非Ｈｏｍｅ  ＳＢ上のＢＭＣを経由することなく、パーティション内のすべてのハードウェアのデータを返信することが可能になる。これにより、パーティション内のセンサデータを収集する時間が短縮される。
【００９２】
図１５のセンサデータ収集処理によれば、図３及び図４のセンサデータ収集処理と比較して、収集時間が約１０分の１に短縮され、単一のＳＢのみからなるサーバと同等の収集時間になることが期待できる。収集時間が短縮されることによって、ハイパーバイザのコマンドのタイムアウト、エージェントソフトウェアの起動タイムアウト等の発生が抑止される。
【００９３】
ところで、図７のパーティション＃０及びパーティション＃１の構成は、動的に変更することが可能である。例えば、パーティション＃０のＨｏｍｅ  ＳＢであるＳＢ＃０上でハードウェア７１３−０のエラーが検出された場合、Ｒｅｓｅｒｖｅｄ  ＳＢに設定されているＳＢ＃３を用いて、パーティション＃０が復旧される。この場合、ＳＢ＃３及びＳＢ＃１によってパーティション＃０が再構築され、Ｈｏｍｅ  ＳＢがＳＢ＃０からＳＢ＃３に変更される。
【００９４】
図１６は、再構築されたパーティション＃０において、ＳＢ＃３上のＢＭＣ７１２−３がＳＢ＃３上のハードウェア７１３−３にアクセスする場合のスイッチ制御の例を示している。ＢＭＣ７１２−３をポートＡに接続し、ハードウェア７１３−３をポートａに接続することで、ＢＭＣ７１２−３は、同じＳＢ＃３上のハードウェア７１３−３にアクセスして、各ハードウェアデバイスからデータを取得することができる。
【００９５】
図１７は、再構築されたパーティション＃０において、ＢＭＣ７１２−３が非Ｈｏｍｅ  ＳＢであるＳＢ＃１上のハードウェア７１３−１にアクセスする場合のスイッチ制御の例を示している。ＢＭＣ７１２−３をポートＣに接続し、ハードウェア７１３−１をポートｃに接続することで、ＢＭＣ７１２−３は、ＳＢ＃１上のハードウェア７１３−１にアクセスして、各ハードウェアデバイスからデータを取得することができる。
【００９６】
図１８は、パーティション＃０におけるエラー発生時にＨｏｍｅ  ＳＢを変更する再構築処理のシーケンスの例を示している。ＭＭＢ＃０は、サーバ７０１全体の監視を行っており、図１５と同様のシーケンスによって、各パーティションにおけるセンサデータを収集する（ステップ１８０１）。そして、ＭＭＢ＃０は、ＳＢ＃０上のハードウェア７１３−０に含まれるハードウェアデバイスのエラーを検出し（ステップ１８０２）、ＢＭＣ７１２−０に対して縮退処理を指示する（ステップ１８０３）。
【００９７】
ＢＭＣ７１２−０は、縮退処理を行って、ＭＭＢ＃０へ応答を返信する（ステップ１８０４）。これ以降、ＢＭＣ７１２−０は、ＳＢ＃０上のハードウェア７１３−０にのみアクセスする。
【００９８】
次に、ＭＭＢ＃０は、ＳＢ＃０をパーティション＃０から切り離し、ＳＢ＃３を新たなＨｏｍｅ  ＳＢとしてパーティション＃０に組み込んで、パーティション＃０を再起動する（ステップ１８０５）。このとき、ＭＭＢ＃０は、図１４と同様のシーケンスによって、パーティション＃０を再起動する。
【００９９】
まず、ＭＭＢ＃０の通知部８０１−０は、ＳＢ＃３上のＢＭＣ７１２−３に対して、パーティション＃０に属するＳＢの識別情報である“ＳＢ＃３”及び“ＳＢ＃１”を通知する。次に、通知部８０１−０は、ＢＭＣ７１２−３に対して、ＳＢ＃３がパーティション＃０のＨｏｍｅ  ＳＢであることを通知する。
【０１００】
ＢＭＣ７１２−３のスイッチ処理部９０１−３は、制御信号（Ｇ３，Ｇ４）を（０，０）に設定して、スイッチ制御部７３１−３へ出力する。スイッチ制御部７３１−３は、制御信号Ｓａによりスイッチ１００１−３をＯＮに設定し、制御信号Ｓｂ〜制御信号Ｓｄによりスイッチ１００２−３〜スイッチ１００４−３をＯＦＦに設定する。これにより、図１６に示したように、ＳＢ＃３上のハードウェア７１３−３が、入力側スイッチ部７３２−３のポートａを介して、出力側スイッチ部７３３−３のポートＡに接続される。
【０１０１】
次に、通知部８０１−０は、ＳＢ＃１上のＢＭＣ７１２−１に対して、Ｈｏｍｅ  ＳＢの識別情報“ＳＢ＃３”を通知する。ＢＭＣ７１２−１のスイッチ処理部９０１−１は、制御信号（Ｇ３，Ｇ４）を（１，０）に設定して、スイッチ制御部７３１−１へ出力する。
【０１０２】
スイッチ制御部７３１−１は、制御信号Ｓｃによりスイッチ１００３−１をＯＮに設定し、制御信号Ｓａ、制御信号Ｓｂ、及び制御信号Ｓｄにより、スイッチ１００１−１、スイッチ１００２−１、及びスイッチ１００４−１をＯＦＦに設定する。これにより、図１６に示したように、ＳＢ＃１上のハードウェア７１３−１が、入力側スイッチ部７３２−１のポートｃを介して、ＳＢ＃３上の出力側スイッチ部７３３−３のポートＣに接続される。
【０１０３】
その後、ＳＢ＃３上のＢＭＣ７１２−３は、ＳＢ＃１上のハードウェア７１３−１のセンサデータ９０３−１を引き継ぐため、ＢＭＣ７１２−１に対して、センサデータ９０３−１を要求する（ステップ１８０６）。そして、ＢＭＣ７１２−１は、センサデータ９０３−１をＢＭＣ７１２−３へ送信する。ＢＭＣ７１２−３は、ＢＭＣ７１２−１から受信したセンサデータ９０３−１を、センサデータ９０３−３に記録する（ステップ１８０７）。これにより、センサデータ９０３−３にセンサデータ９０３−１が追加される。
【０１０４】
パーティション＃０が再起動された後、ＯＳ７１１−０は、図１５と同様のシーケンスによって、パーティション＃０におけるセンサデータを収集する。まず、ＯＳ７１１−０は、ＢＭＣ７１２−３に対して、パーティション＃０のハードウェアのセンサデータを取得する取得依頼を発行する。
【０１０５】
ＢＭＣ７１２−３のスイッチ処理部９０１−３は、制御信号（Ｇ１，Ｇ２）を（０，０）に設定して、スイッチ制御部７３１−３へ出力する。そして、スイッチ制御部７３１−３は、制御信号ＳＡによりスイッチ１０１１−３をＯＮに設定し、制御信号ＳＢ〜制御信号ＳＤによりスイッチ１０１２−３〜スイッチ１０１４−３をＯＦＦに設定する。これにより、図１６に示したように、ＢＭＣ７１２−３が、出力側スイッチ部７３３−３のポートＡを介して、ハードウェア７１３−３に接続される。
【０１０６】
次に、ＢＭＣ７１２−３は、ハードウェア７１３−３にアクセスして、ハードウェア７１３−３からデータを取得し、取得したデータをセンサデータ９０３−３に記録する。
【０１０７】
次に、スイッチ処理部９０１−３は、制御信号（Ｇ１，Ｇ２）を（１，０）に設定して、スイッチ制御部７３１−３へ出力する。そして、スイッチ制御部７３１−３は、制御信号ＳＣによりスイッチ１０１３−３をＯＮに設定し、制御信号ＳＡ、制御信号ＳＢ、及び制御信号ＳＤにより、スイッチ１０１１−３、スイッチ１０１２−３、及びスイッチ１０１４−３をＯＦＦに設定する。これにより、図１７に示したように、ＢＭＣ７１２−３が、出力側スイッチ部７３３−３のポートＣを介して、ＳＢ＃１上のハードウェア７１３−１に接続される。
【０１０８】
次に、ＢＭＣ７１２−３は、ハードウェア７１３−１にアクセスして、ハードウェア７１３−１からデータを取得し、取得したデータをセンサデータ９０３−３に記録する。
【０１０９】
次に、ＢＭＣ７１２−３は、取得したデータを、ＳＢ＃１上のＢＭＣ７１２−１へ送信し、ＢＭＣ７１２−１は、ＢＭＣ７１２−３から受信したデータを、センサデータ９０３−１に記録する。そして、ＢＭＣ７１２−３は、ハードウェア７１３−３及びハードウェア７１３−１から取得したデータを、ＯＳ７１１−０へ返信する。
【０１１０】
図１のサーバ１０１及び図７のサーバ７０１の構成は一例に過ぎず、サーバの用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。例えば、ＳＢの個数は４個に限られず、サーバは任意の個数のＳＢを含むことができる。パーティションの個数は２個に限られず、サーバは任意の個数のパーティションを含むことができる。１つのパーティションに属するＳＢの個数は、３個以上であってもよい。冗長構成のＭＭＢを用いない場合は、ＭＭＢ＃０又はＭＭＢ＃１を省略することができる。
【０１１１】
各ＳＢ上には、ＣＰＵ、メモリ、及び電圧センサ以外のハードウェアデバイスが搭載されていてもよい。例えば、ハードウェアデバイスとして温度センサが搭載されている場合、温度センサは、ＣＰＵの温度を示すデータ、又はＣＰＵの温度が閾値を超えたか否かを示すデータを出力する。ハードウェアデバイスが出力するデータは、そのハードウェアデバイスの状態、電圧、及び温度に限られず、ＳＢの識別情報等であってもよい。
【０１１２】
図５の情報処理装置５０１の構成は一例に過ぎず、情報処理装置５０１の用途又は条件に応じて、一部の構成要素を省略又は変更してもよい。
【０１１３】
図８のＭＭＢの構成は一例に過ぎず、サーバ７０１の構成又は条件に応じて、一部の構成要素を省略又は変更してもよい。図９のＢＭＣの構成は一例に過ぎず、サーバ７０１の構成又は条件に応じて、一部の構成要素を省略又は変更してもよい。
【０１１４】
図１０の入力側スイッチ部７３２−ｉ及び出力側スイッチ部７３３−ｉの構成は一例に過ぎず、サーバ７０１の構成又は条件に応じて、一部の構成要素を省略又は変更してもよい。入力側スイッチ部７３２−ｉ及び出力側スイッチ部７３３−ｉのポートの個数は、サーバ７０１内のＳＢの個数に応じて変更される。
【０１１５】
図６のフローチャートは一例に過ぎず、情報処理装置５０１の構成又は条件に応じて一部の処理を省略又は変更してもよい。図３、図１４、図１５、及び図１８のシーケンスは一例に過ぎず、サーバの構成又は条件に応じて一部の処理を省略又は変更してもよい。
【０１１６】
図２のセンサ定義情報及びセンサデータと図３のコマンド及び応答は一例に過ぎず、これらの情報は、サーバ１０１の構成又は条件に応じて変化する。図１１の制御信号は一例に過ぎず、ＢＭＣ７１２−ｉ及びスイッチ制御部７３１−ｉの仕様に応じて、別の制御信号を用いてもよい。
【０１１７】
図１２、図１３、図１６、及び図１７のポート間の接続は一例に過ぎず、ポート間の接続は、入力側スイッチ部７３２−ｉ及び出力側スイッチ部７３３−ｉのポートの個数に応じて変化する。
【０１１８】
図１９は、図７のＢＭＣ７１２−ｉとして用いられる情報処理装置（コンピュータ）のハードウェア構成例を示している。図１９のＢＭＣ７１２−ｉは、ＣＰＵ１９０１、メモリ１９０２、及びインタフェース回路１９０３〜インタフェース回路１９０５を含む。
【０１１９】
メモリ１９０２は、例えば、Read Only Memory（ＲＯＭ）、Random Access Memory（ＲＡＭ）、フラッシュメモリ等の半導体メモリであり、処理に用いられるプログラム及びデータを格納する。メモリ１９０２は、図９のセンサ定義情報９０２−ｉ及びセンサデータ９０３−ｉを記憶することができる。
【０１２０】
ＣＰＵ１９０１（プロセッサ）は、例えば、メモリ１９０２を利用してプログラムを実行することにより、ハードウェア７１３−ｉの管理及び監視を行う。ＣＰＵ１９０１は、プログラムを実行することにより、図９のスイッチ処理部９０１−ｉとしても動作する。
【０１２１】
オペレータ又はユーザは、不図示の可搬型記録媒体にプログラム及びデータを格納しておき、それらをメモリ１９０２にロードして使用することができる。可搬型記録媒体としては、メモリデバイス、フレキシブルディスク、光ディスク、光磁気ディスク等が用いられる。可搬型記録媒体は、Compact Disk Read Only Memory（ＣＤ−ＲＯＭ）、Digital Versatile Disk（ＤＶＤ）、Universal Serial Bus（ＵＳＢ）メモリ等であってもよい。
【０１２２】
このように、処理に用いられるプログラム及びデータを格納するコンピュータ読み取り可能な記録媒体は、メモリ１９０２又は可搬型記録媒体のような、物理的な（非一時的な）記録媒体である。
【０１２３】
インタフェース回路１９０３は、プライベートローカルエリアネットワーク等の通信ネットワークに接続され、ＭＳＢ＃ｊ又は他のＢＭＣ７１２−ｋ（ｋ≠ｉ）と通信する。ＢＭＣ７１２−ｉは、プログラム及びデータを外部の装置からインタフェース回路１９０３を介して受信し、それらをメモリ１９０２にロードして使用することができる。
【０１２４】
インタフェース回路１９０４は、ＫＣＳインタフェース等の信号線に接続され、ＯＳ又はＯＳ上で動作するエージェントソフトウェア等と通信する。インタフェース回路１９０５は、Ｉ２Ｃ等の信号線を介して出力側スイッチ部７３３−ｉに接続され、ハードウェア７１３−ｉ又はハードウェア７１３−ｋ（ｋ≠ｉ）と通信する。インタフェース回路１９０６は、ＧＰＩＯ等の信号線に接続され、スイッチ制御部７３１−ｉと通信する。
【０１２５】
なお、図１９のＢＭＣ７１２−ｉの構成は一例に過ぎず、サーバ７０１の構成又は条件に応じて一部の構成要素を省略又は変更してもよい。
【０１２６】
開示の実施形態とその利点について詳しく説明したが、当業者は、特許請求の範囲に明確に記載した本発明の範囲から逸脱することなく、様々な変更、追加、省略をすることができるであろう。
【符号の説明】
【０１２７】
１０１、７０１  サーバ
１１１−０、１１１−１  ＯＳ
１１２−０〜１１２−３  ＢＭＣ
１１３−０〜１１３−３、５２１−１〜５２１−Ｎ、７１３−０〜７１３−３  ハードウェア
１１４−０〜１１４−３、７２１−０〜７２１−３  メモリ
１１５−０〜１１５−３、７２２−０〜７２２−３  電圧センサ
２０１、９０２−ｉ  センサ定義情報
２０２−０、２０２−１、９０３−ｉ  センサデータ
４０１、４０３、４０６、４０８、４１０  コマンド
４０２、４０４、４０７、４０９、４１１  応答
４０５  通知
５０１  情報処理装置
５１１−１〜５１１−Ｎ  装置
５２２−１〜５２２−Ｎ  制御部
５２３−１〜５２３−Ｎ、７１４−０〜７１４−３  スイッチ部
５３１  信号線
７３１−０〜７３１−３  スイッチ制御部
７３２−０〜７３２−３  入力側スイッチ部
７３３−０〜７３３−３  出力側スイッチ部
８０１−ｊ  通知部
８０２−ｊ  パーティション情報
９０１−ｉ  スイッチ処理部
１００１−ｉ〜１００４−ｉ、１０１１−ｉ〜１０１４−ｉ  スイッチ
１９０１  ＣＰＵ
１９０２  メモリ
１９０３〜１９０６  インタフェース回路
【図１】
2018200514.tif 000003
【図２】
2018200514.tif 000004
【図３】
2018200514.tif 000005
【図４】
2018200514.tif 000006
【図５】
2018200514.tif 000007
【図６】
2018200514.tif 000008
【図７】
2018200514.tif 000009
【図８】
2018200514.tif 000010
【図９】
2018200514.tif 000011
【図１０】
2018200514.tif 000012
【図１１】
2018200514.tif 000013
【図１２】
2018200514.tif 000014
【図１３】
2018200514.tif 000015
【図１４】
2018200514.tif 000016
【図１５】
2018200514.tif 000017
【図１６】
2018200514.tif 000018
【図１７】
2018200514.tif 000019
【図１８】
2018200514.tif 000020
【図１９】
2018200514.tif 000021