(57)【要約】【課題】  照合処理装置の障害時に業務を停止することなく、最小限の性能低下で運用を継続させる。【解決手段】  制御系ＣＰＵ９が‘照合系＃０’１１の照合系‘ＣＰＵ＃０’１の障害を検出すると、故障した‘照合系＃０’１１とは別の‘照合系＃１’１２の照合系‘ＣＰＵ＃２’３が処理を引き継ぐ。この時、制御系ＣＰＵ９は、故障した照合系‘ＣＰＵ＃０’１のＭｅｍｏｒｙ５が、処理を引き継いだ照合系‘ＣＰＵ＃２’３から直接見ることができるようにメモリマップを切り替える。メモリマップが切り替わると、業務を引き継いだ照合系‘ＣＰＵ＃２’３は、参照しているＭｅｍｏｒｙ５のデータを直接使い照合処理を引き継ぐ。引き継いだ照合系‘ＣＰＵ＃２’３が照合を肩代わりしている間に、制御系ＣＰＵ９は、故障した照合系‘ＣＰＵ＃０’１にリセットをかけ、復旧を試みる。【選択図】      図１
2006260007.tif 000002
【特許請求の範囲】
【請求項１】
照合処理中に照合プロセッサで障害が発生すると、別のノードのプロセッサが障害プロセッサをスヌープできるようにメモリマップ切り替える手段を備えたことを特徴とする照合処理装置。
【請求項２】
故障ＣＰＵを検出し自動でメモリマップを切り替えて、別ノードのプロセッサからローカルメモリを直接参照して照合処理を肩代わりして継続することを特徴とする照合処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、照合処理装置に関し、特に、データ照合における障害処理を行う照合処理装置に関する。
【背景技術】
【０００２】
従来の照合装置ではソフトエラーなどによる間欠の障害が発生したとき、照合していた処理は中断され、障害が発生したノードは切り離されて縮退運転をする方式をとっていた。しかし、マルチＣＰＵ構成である照合系の１ＣＰＵに障害が発生すると、正常なＣＰＵも含めて切り離されてしまうため、効率が悪く、性能低下も大きかった。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の照合処理装置は、照合処理中にあるプロセッサがソフトエラーなどの原因により間欠の障害が発生した場合には、照合処理は中断しレジスタダンプ・メモリダンプを出した後にリセットを掛けることにより復旧を試みていた。しかし、障害が発生した時の照合処理は中断してデータは廃棄され、ＣＰＵのリセット立上げが完了した後に、再度障害が発生したデータから再度照合をやり直していた。本方式では、ＣＰＵにリセットがかかると、立ち上がるまで処理を中断し、また立ち上がってからも再度エラーが発生したデータまで戻って再照合を行わなければならないため、復旧までには時間がかかっていた。
【０００４】
本発明は、マルチＣＰＵ構成での正常なＣＰＵを生かしたまま障害が発生したＣＰＵのみにリセットをかけ、かつ中断した処理を破棄・再試行することなく、別のノードに肩代わりさせて処理を継続することで、アプリケーションは意識しなくても性能低下を最小限にとどめ、自律的に障害を復旧させる方式を組み込んだ障害処理装置をするものである。
【課題を解決するための手段】
【０００５】
本発明の第１の照合処理装置は、照合処理中に照合プロセッサで障害が発生すると、別のノードのプロセッサが障害プロセッサをスヌープできるようにメモリマップ切り替える機構を備える。
【０００６】
本発明の第２の照合処理装置は、故障ＣＰＵを検出し自動でメモリマップを切り替えて、別ノードのプロセッサからローカルメモリを直接参照して照合処理を肩代わりして継続する。
【発明の効果】
【０００７】
第１の効果は、多数プロセッサからなる本システムにおいて、障害プロセッサで行っている処理を別のプロセッサが肩代わりして処理を継続することにより、障害時に業務を停止することなく、最小限の性能低下で運用を継続できることである。
【０００８】
第２の効果は、上位アプリケーションが意識しなくても、自動的に復旧処理を行うので可容性を向上することができる点である。
【発明を実施するための最良の形態】
【０００９】
次に、本発明を実施するための最良の形態について図面を参照して詳細に説明する。
【００１０】
図１を参照すると、本装置は照合動作をする‘照合系＃０’１１，‘照合系＃１’１２，…，‘照合系＃ｎ’１ｎと装置全体を制御する制御系２１からなる。また、各‘照合系＃０’１１，‘照合系＃１’１２，…，‘照合系＃ｎ’１ｎはＨＯＳＴ−ＰＣＩブリッジ７，８，…を介してマルチＣＰＵ構成となっており、各々ＰＣＩバスで制御系２１と接続されている。
【００１１】
制御系２１は‘照合系＃０’１１，‘照合系＃１’１２，…，‘照合系＃ｎ’１ｎのメモリマップをテーブルとして保持している。また、各‘照合系＃０’１１，‘照合系＃１’１２，…，‘照合系＃ｎ’１ｎのＨＯＳＴ−ＰＣＩブリッジ７，８，…は、ＰＣＩコンフィグアクセスにより内部レジスタを設定できるものとし、この設定によってアドレスマップを変換できるようになっている。照合系‘ＣＰＵ＃０’１，‘ＣＰＵ＃１’２，‘ＣＰＵ＃２’３，‘ＣＰＵ＃３’４，…がソフトエラーなど間欠のエラーが発生したとき、Ｍｅｍｏｒｙ５のログエリアにレジスタダンプを吐き出し処理を停止する。制御系ＣＰＵ９は、各照合系ＣＰＵの状態をウォッチドッグタイマーで監視する。
【００１２】
障害などで処理が中断した場合、制御系プロセッサ９は、ローカルＭｅｍｏｒｙ５，ローカルＭｅｍｏｒｙ６，…（メモリ）のログエリアに吐き出されたダンプを採取する。ダンプを採取した後に、制御系プロセッサ９は障害が発生した照合系ＣＰＵのＭｅｍｏｒｙをＰＣＩメモリ空間にリマップするように設定を変更する。障害が発生した照合系のＭｅｍｏｒｙをＰＣＩメモリ空間にマップした後に、今まで行っていた照合処理を別の照合系ＣＰＵへ切り替える指示をだす。
【００１３】
切り替え指示を受け取った別の照合系ＣＰＵは、ＰＣＩメモリ空間を通じて、リマップされた障害照合系ＣＰＵのＭｅｍｏｒｙを直接参照し、中断した照合処理から照合を肩代わりして継続する。照合処理を別の照合系へ肩代わりさせて継続させると、制御系ＣＰＵ９は障害の起きている照合系ＣＰＵにリセットを発行し、復旧を試みる。リセットを受けたＣＰＵが正常に立ち上がると、次の照合より縮退を解除して復旧する。
【００１４】
次に、本発明を実施するための最良の形態の動作について図面を参照して説明する。
【００１５】
次に、図１の動作について、図２の切り替え図と図３の切り替えフローを用いて説明する。Ｓｔｅｐ．１で‘照合系＃０’１１のノードにおける照合系‘ＣＰＵ＃０’１に障害が発生すると、照合系‘ＣＰＵ＃０’１はＭｅｍｏｒｙ５のログエリアにレジスタをダンプして停止する。
【００１６】
制御系ＣＰＵ９はウォッチドッグタイマーにて障害を検出すると、‘照合系＃０’１１のＨＯＳＴ−ＰＣＩブリッジ７のメモリマップ設定レジスタにＰＣＩコンフィグアクセスにてアクセスし、障害が起きた照合系‘ＣＰＵ＃０’１のローカルＭｅｍｏｒｙを、ＰＣＩメモリ空間にマッピングするようにメモリマップを変更する（Ｓｔｅｐ．２）。Ｓｔｅｐ．３で、制御系ＣＰＵ９は別のノードである‘照合系＃１’１２の‘ＣＰＵ＃２’３にシステムコール割り込みにて、参照するＭｅｍｏｒｙのアドレスをローカルＭｅｍｏｒｙからＰＣＩメモリ空間へと切り替えを行い、照合処理の引継ぎを指示する。
【００１７】
Ｓｔｅｐ．３で制御系ＣＰＵ９から引継ぎ指示を受けた照合系‘ＣＰＵ＃２’３は、ＰＣＩメモリ空間にマップされた‘ＣＰＵ＃０’１のローカルＭｅｍｏｒｙをダイレクトにアクセスし、このＭｅｍｏｒｙのデータを使い中断した照合処理を再開する。障害が発生して中断した照合処理を‘ＣＰＵ＃２’３に引き継ぐと、制御系ＣＰＵ９は障害が発生した照合系‘ＣＰＵ＃０’１に対しリセットを発行する（Ｓｔｅｐ．４）。
【００１８】
再立ち上げが成功し、‘ＣＰＵ＃０’１がＲｅａｄｙになると、制御系ＣＰＵ９は‘ＣＰＵ＃２’３の照合を停止し、以降の照合を‘ＣＰＵ＃０’１に引き継ぐ。‘ＣＰＵ＃０’１が引き継ぎを完了すると、制御系ＣＰＵ９は‘照合系＃０’１１のＨＯＳＴ−ＰＣＩブリッジ７のメモリマップ設定レジスタに再度ＰＣＩコンフィグアクセスにてアクセスし、ＰＣＩメモリ空間にマッピングされている‘ＣＰＵ＃０’１のローカルＭｅｍｏｒｙを解除する。
【００１９】
引継ぎが完了すると、制御系ＣＰＵ９は再度‘ＣＰＵ＃２’３へシステムコール割り込みを発行し、再度参照するＭｅｍｏｒｙのアドレスをローカルＭｅｍｏｒｙへ変更する。この方式にすることにより、障害発生時に中断していた照合を中断することなく、影響度が処理切り替え時のオーバヘッドと縮退運転による性能低下程度にとどめることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明を実施するための最良の形態の構成を示すブロック図。
【図２】復旧の手順を示す説明図。
【図３】本発明を実施するための最良の形態の動作を示すシーケンス図。
【図４】メモリマップの変更例の説明図。
【符号の説明】
【００２１】
１    ‘ＣＰＵ＃０’
２    ‘ＣＰＵ＃１’
３    ‘ＣＰＵ＃２’
４    ‘ＣＰＵ＃３’
５    Ｍｅｍｏｒｙ
６    Ｍｅｍｏｒｙ
７，８，…    ＨＯＳＴ−ＰＣＩブリッジ
９    制御系ＣＰＵ
１１    ‘照合系＃０’
１２    ‘照合系＃１’
１ｎ    ‘照合系＃ｎ’
２１    制御系
【図１】
2006260007.tif 000003
【図２】
2006260007.tif 000004
【図３】
2006260007.tif 000005
【図４】
2006260007.tif 000006