(57)【特許請求の範囲】
【請求項１】
中央制御装置と、
この中央制御装置によって運用される複数のハードウェアモジュールと、
前記個々のハードウェアモジュールへの電源供給のオン／オフを個別に切り替えるスイッチ手段と、
障害が検出された前記ハードウェアモジュールをリセットするように前記スイッチ手段を制御するスイッチ制御手段とを有し、
前記スイッチ制御手段が、ハードウェアモジュール毎に決められた時間だけ電源供給をオフさせるように前記スイッチ手段を制御することを特徴とするハードウェアシステム。
【請求項２】
前記スイッチ手段が、個々の前記ハードウェアモジュール毎に電源との接続のオン／オフを切り替える複数のスイッチで構成されていることを特徴とする請求項１記載のハードウェアシステム。
【請求項３】
前記各ハードウェアモジュールの識別情報を申告する識別情報申告手段と、
前記各ハードウェアモジュールの前記識別情報申告手段よりそれぞれ申告された識別情報により前記各スイッチと前記各ハードウェアモジュールとの接続関係を管理するスイッチ接続管理手段とをさらに有し、
前記スイッチ制御手段は、前記スイッチ接続管理手段により管理された前記各スイッチと前記各ハードウェアモジュールとの接続関係に基づいて前記スイッチ手段を制御することを特徴とする請求項２記載のハードウェアシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、計算機システム等のハードウェアシステムに関する。
【０００２】
【従来の技術】
計算機システム等のハードウェアシステムに発生した一過性の障害のほとんどはシステム全体を再初期化（リセット）することによって解消される。ところが、一般にシステム全体のリセットはいくつもの工程を踏んで行われるため長い時間がかかる。そこで、チェックポイント／リカバリ方式のような短時間で障害を解消するための方式が存在する。
【０００３】
このチェックポイント／リカバリ方式においては、あるハードウェアモジュール（機器）に障害が発生したとき、そのモジュールに電源を入れたままリセット信号を与えることによって障害状態からの回復を試みる。しかしながら、この方式はモジュールの障害がリセット回路にまでは及んでいないことを前提としており、モジュールの障害がリセット回路に波及していた場合、リセットが正しく働かず障害を回復することができない。
【０００４】
【発明が解決しようとする課題】
このように計算機システム等のハードウェアシステムに障害が発生した場合の対策として、システム全体をリセットする方法と、障害を発生したモジュールを通電状態のままリセットさせる方法がある。ところが、システム全体をリセットする方法は確実であるもののリセット完了までに長い時間がかかり、また、障害を発生したモジュールを通電状態のままリセットさせる方法は確実性に欠くという課題があった。
【０００５】
本発明は、このような課題を解決するためのもので、ハードウェアモジュールの障害に起因するシステムの問題をより迅速にかつ確実に解消することのできるハードウェアシステムの提供を目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するために、この発明のハードウェアシステムは、中央制御装置と、この中央制御装置によって運用される複数のハードウェアモジュールと、前記個々のハードウェアモジュールへの電源供給のオン／オフを個別に切り替えるスイッチ手段と、障害が検出された前記ハードウェアモジュールをリセットするように前記スイッチ手段を制御するスイッチ制御手段とを有し、前記スイッチ制御手段が、ハードウェアモジュール毎に決められた時間だけ電源供給をオフさせるように前記スイッチ手段を制御することを特徴とする。
【０００７】
本発明は、障害が検出されたハードウェアモジュールだけをリセットするようにスイッチ手段を制御してそのハードウェアモジュールへの電源の供給を一旦停止した後、再度電源を供給することによって、システム全体をリセットする既知の方式に比べ高速にシステムを障害状態から回復させることができ、しかも障害発生モジュールを通電状態のままリセットさせる既知の方式よりも確実に障害を排除することができる。
【０００８】
また、ハードウェアモジュール毎に最適な時間だけ電源供給をオフさせるようにスイッチ手段を制御する構成を付加することで、より一層確実性の高いハードウェアモジュールのリセットが可能になる。
【０００９】
さらに、ハードウェアモジュールの識別情報を申告する識別情報申告手段と、各ハードウェアモジュールより申告された識別情報により各スイッチと各ハードウェアモジュールとの接続関係を管理するスイッチ接続管理手段を設けることで、ハードウェアモジュールを交換可能なシステムにおいても、各スイッチと各ハードウェアモジュールとの接続関係が明確になり、信頼性を維持することができる。
【００１０】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
【００１１】
図１に、本発明の実施形態に係るハードウェアシステムの構成を示す。
【００１２】
このハードウェアシステムは、例えば、システム全体の制御を行う中央制御装置であるプロセッサ１と、このプロセッサ１による制御下で運用される複数のハードウェアモジュール２（以下、単にモジュール２と呼ぶ。）と、システムに必要な電源を供給する電源装置３と、電源装置３から個々のモジュール２への電源供給のオン／オフを個別に切り替える電源スイッチ４と、各モジュール２の設定情報を記憶しておくモジュール設定情報記憶装置５と、障害の発生したモジュール２を特定するモジュールチェック装置６と、モジュール設定情報記憶装置５に記憶された設定情報によりモジュール２の再設定を行うモジュール再設定装置７と、各電源スイッチ４を制御する電源スイッチ制御装置８とを備えて構成される。
【００１３】
このハードウェアシステムは、モジュール２を各種Ｉ／Ｏデバイスとした計算機システムはもちろん、モジュール２を各種プロセス用の処理装置としたプロセスシステムなど、あらゆるシステムに適用することが可能である。
【００１４】
モジュール設定情報記憶装置５、モジュールチェック装置６、モジュール再設定装置７はそれぞれプロセッサ１により実行されるプログラムにより実現されたものでもよいし、それぞれプロセッサ１の制御下にある専用ハードウェアによって実現されたものであってよい。
【００１５】
次に、このハードウェアシステムの動作を説明する。
【００１６】
このハードウェアシステムの通常の運用時は、各電源スイッチ４がオンの状態になるようプロセッサ１から電源スイッチ制御装置８に制御信号が与えられ、これにより、電源装置３から電源スイッチ４を通じて各モジュール２へ電源が供給される。
【００１７】
いずれかのモジュール２に障害が発生した場合、プロセッサ１はモジュールチェック装置６により各モジュール２の状態のチェックを行う。モジュールチェック装置６によって障害の発生したモジュール２が判定されると、続いてプロセッサ１は、電源スイッチ制御装置８により、障害が発生したモジュール２への電源供給を切り替える電源スイッチ４をオフ状態に切り替えて当該モジュール２への電源供給を一定時間停止する。一定時間が経過した後、電源スイッチ制御装置８により電源スイッチ４をオン状態に切り替えて当該モジュール２への電源供給を再開する。
【００１８】
モジュール２が起動されると、プロセッサ１はモジュール再設定装置７によりモジュール設定情報記憶装置５に記憶されている当該モジュール用の設定情報をモジュール２に設定する。以上により、障害が発生したモジュール２のリセットが完了する。
【００１９】
このように、障害が発生したモジュール２への電源の供給だけを一旦停止した後再び電源供給を再開してそのモジュール２を単独にリセットすることによって、システム全体をリセットする既知の方式に比べ高速にシステムを障害状態から回復させることができ、しかも障害発生モジュール２を通電状態のままリセットさせる既知の方式よりも確実に障害を排除することができる。
【００２０】
次に、このハードウェアシステムをパーソナルコンピュータなどの計算機システムに適用した場合の実施形態を説明する。
【００２１】
図２に、この計算機システムの構成を示す。この計算機システムにおいて、図１のハードウェアシステムのモジュール設定情報記憶装置５、モジュールチェック装置６およびモジュール再設定装置７は、ＣＰＵ１１と、主記憶部１２にロードされたプログラムによって実現される。また、モジュール２として、ハードディスクドライブや光ディスクドライブ等のドライブ類、ディスプレイ、モデムやネットワークアダプタ等の通信機器などのＩ／Ｏデバイス１３と、このデバイス１３を制御するＩ／Ｏコントローラ１４が少なくとも存在している。
【００２２】
Ｉ／Ｏデバイス１３およびＩ／Ｏコントローラ１４はそれぞれ別個の電源スイッチ４ａ，４ｂを通じて電源装置３と接続され、それぞれ個別に電源供給のオン／オフの切り替えが電源スイッチ制御装置８によって行われる。電源スイッチ制御装置８の制御はプロセッサバス１５を通じてＣＰＵ１１から送られる制御信号に基づいている。なお、図では、Ｉ／Ｏデバイス１３とＩ／Ｏコントローラ１４が一組しか示されていないが、これらは複数組存在する。
【００２３】
システムに接続されているモジュール群のうちのあるＩ／Ｏデバイス１３に障害が発生した場合を考える。Ｉ／Ｏデバイス１３の障害の発生は、ＣＰＵ１１とＩ／Ｏデバイス１３との間での通信において、Ｉ／Ｏデバイス１３からの応答がなくなる、或いはＩ／Ｏデバイス１３からエラー発生信号が応答される、などによって判定することが可能である。Ｉ／Ｏデバイス１３に障害が発生したことが判定されると、ＣＰＵ１１から電源スイッチ制御装置８に、当該Ｉ／Ｏデバイス１３への電源の供給を停止するための制御信号が送られる。電源スイッチ制御装置８はこの制御信号を受けて、Ｉ／Ｏデバイス１３への電源供給を切り替えるスイッチ４ｂを制御することによってＩ／Ｏデバイス１３への電源供給を一定時間停止し、一定時間経過後、再びスイッチ４ｂをオン状態に切り替えてＩ／Ｏデバイス１３への電源供給を再開する。電源投入後、Ｉ／Ｏデバイス１３の設定が行われ、これでＩ／Ｏデバイス１３のリセットが完了する。
【００２４】
Ｉ／Ｏデバイス１３の障害はそのＩ／Ｏデバイス１３のみならずこれを制御しているＩ／Ｏコントローラ１４にも波及している場合がある。この場合、Ｉ／Ｏデバイス１３だけをリセットしてもシステムの問題は解消されない。
【００２５】
そこで、Ｉ／Ｏデバイス１３のリセット後に障害が解消されなかった場合は、再びＩ／Ｏデバイス１３への電源供給をオフするとともにこのＩ／Ｏデバイス１３のＩ／Ｏコントローラ１４への電源供給もオフし、一定時間が経過した後、Ｉ／Ｏデバイス１３およびＩ／Ｏコントローラ１４の両方の電源供給をオンにする。すなわち、Ｉ／Ｏデバイス１３とＩ／Ｏコントローラ１４の組をリセットする。これにより、Ｉ／Ｏデバイス１３の障害がＩ／Ｏコントローラ１４にも波及している場合でもシステムの障害を解消できる。さらに、Ｉ／Ｏデバイス１３とＩ／Ｏコントローラ１４との組をリセットしても障害が解消されない場合は、さらにその上位の制御系モジュールも合わせてリセットするようにしてもよい。システム全体のモジュールは木構造で接続されているから、問題が解消されるまで、リセットするモジュールの階層の範囲を末端側より広げて行くことで必要最小限の数のモジュールのリセットにより、効率的にかつ確実にシステムの問題を解消できる。
【００２６】
ところで、モジュールはその種類によってリセットのための最適な電源オフ時間が異なる。例えば、ネットワークアダプタの場合は１ｓ程度、ＳＣＳＩ機器の場合は５ｓ程度である。そこで、モジュール毎の最適な電源オフ時間の情報を登録したテーブルを予め用意しておき、このテーブルを参照して電源オフ時間を選択するようにすることが好ましい。このテーブルはユーザが手入力により作成してもよいし、或いはモジュール２に電源オフ時間の情報を何らかのかたちで記録しておき、システムがテーブル作成時にモジュール２からその情報を読み込んでテーブルを自動作成するようにしてもよい。
【００２７】
次に、モジュールとスイッチとの対応付けについて説明する。
【００２８】
前提として、計算機システムは、現在どんなモジュール２が接続されており、どのモジュール２に障害が起きているのかを認識できる機能をもっているとする。障害を起こしたモジュール２が判定されると、ＣＰＵ１１から電源スイッチ制御装置８にその障害を起こしたモジュール２が通知されるので、電源スイッチ制御装置８は、そのモジュール２が接続されている電源スイッチ４を調べてそのスイッチの切り替えを制御する。ところが、モジュール２の交換が可能な計算機システムの場合、電源スイッチ制御装置８は現在個々の電源スイッチ４に何のモジュール２が接続されているかを知っている必要がある。
【００２９】
そこで本実施形態では、図３に示すように、電源スイッチ制御装置８に電源スイッチ４とモジュール２との対応テーブル２１を用意しておき、ＣＰＵ１１から電源スイッチ制御装置８に障害を起こしたモジュール２が通知されたときに、そのモジュール２に接続された電源スイッチ４を前記対応テーブルを参照して調べることができるようにしている。この対応テーブル２１は、もちろん手入力によって作成することが可能であるが、本実施形態では自動的に対応テーブル２１を作成する機能を採用している。
【００３０】
図３に、この自動的なテーブル作成のための構成を示す。モジュール２にはＩＤ発生回路２２が設けられている。このＩＤ発生回路２２は、自モジュール２のＩＤ情報を含む高周波パルスによる変調信号を電源ライン２３に乗せる。電源スイッチ４には、電源ライン２３に乗せられた高周波パルスによる変調信号を電源スイッチ制御装置８のスイッチ制御ポート２４に伝達できるもの例えばパワー用のトランジスタやＦＥＴ等が使用されている。
【００３１】
電源スイッチ制御装置８にはそれぞれのスイッチ制御ポート２４毎にハイパスフィルタ２５とデコーダ２６が設けられている。ハイパスフィルタ２５はスイッチ制御ポート２４の信号から高周波成分を抽出してデコーダ２６に導入し、デコーダ２６はこれを復調して当該電源スイッチ４に接続されたモジュール２のＩＤ情報を得る。電源スイッチ制御装置８は、このようにして得られたモジュール２のＩＤ情報を用いて前記の対応テーブル２１を作成する。なお、モジュール２にはＩＤ発生回路２２から電源ライン２３に乗せられた高周波パルスをカットして後段の主要回路に供給するためのローパスフィルタ２７が必要である。
【００３２】
ここでは、電源ライン２３にモジュール２のＩＤ情報を高周波パルスとして乗せて電源スイッチ制御装置８に伝達する方法を説明したが、モジュール２から電源スイッチ制御装置８にＩＤ情報を通知できれば別の方法を用いても構わない。例えば、電源スイッチ４の番号をモジュール２の側で認識し、そのスイッチ番号とモジュール２のＩＤ情報をＣＰＵ１１を経由してスイッチ制御装置８に伝達するようにしてもよい。
【００３３】
さらに、本実施形態では、電源スイッチ制御装置８の中でスイッチ番号とモジュールのＩＤ情報との対応テーブルを管理するようにしたが、対応テーブルの管理はＣＰＵ１１で行うようにしてもよい。
【００３４】
【発明の効果】
以上説明したように、本発明によれば、システム全体をリセットする既知の方式に比べ高速にシステムを障害状態から回復させることができ、しかも障害発生モジュールを通電状態のままリセットさせる既知の方式よりも確実に障害を排除することができる。また、ハードウェアモジュール毎に最適な時間だけ電源供給をオフさせることで、より一層確実性の高いハードウェアモジュールのリセットが可能になる。さらに、各ハードウェアモジュールより申告された識別情報により各スイッチと各ハードウェアモジュールとの接続関係を管理することで、ハードウェアモジュールを交換可能なシステムにおいても、各スイッチと各ハードウェアモジュールとの接続関係が明確になり、信頼性を維持することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係るハードウェアシステムの構成を示す図
【図２】   図１のハードウェアシステムを計算機システムに適用した場合の実施形態を示す図
【図３】図２の計算機システムにおいて電源スイッチとモジュールとの対応テーブルを自動的に作成する構成を示す図
【符号の説明】
１…プロセッサ
２…ハードウェアモジュール
３…電源装置
４…電源スイッチ
５…モジュール設定情報記憶装置
６…モジュールチェック装置
７…モジュール再設定装置
８…電源スイッチ制御装置
１１…ＣＰＵ
１２…主記憶部
１３…Ｉ／Ｏデバイス
１４…Ｉ／Ｏコントローラ
１５…プロセッサバス
【図１】
0004068277.tif 000002
【図２】
0004068277.tif 000003
【図３】
0004068277.tif 000004