(57)【特許請求の範囲】
【請求項１】
処理を実行する情報処理手段と、
前記情報処理手段に制御されて前記情報処理手段の処理に必要な入力処理及び／又は出力処理を実行する主入出力処理手段と前記主入出力処理手段とは異なる入力処理及び／又は出力処理を実行する副入出力処理手段とを含む入出力処理手段と、
前記入出力処理手段が故障のために情報処理システムから切り離なされている場合に、前記主入出力処理手段の故障の状態を確認し、前記主入出力処理手段が故障でない場合、前記主入出力処理手段を情報処理システムに組み込む切替え制御手段と
を含む情報処理装置を複数含み、
前記切替え制御手段が、
前記情報処理手段に、組み込まれた前記主入出力処理手段を用いた動作を実行するように指示し、
前記情報処理手段が、組み込まれた前記主入出力処理手段を用いた動作を開始した後、
前記切替え制御手段が、
他の情報処理装置の前記切替え制御手段に、前記他の情報処理装置の前記入出力処理手段を情報処理システムから切り離すように指示する
情報処理システム。
【請求項２】
前記他の情報処理装置が、前記他の情報処理装置の前記入出力処理手段を情報処理システムから切り離し、前記入出力処理手段が交換された後に、交換された前記入出力処理手段を情報処理システムに組み込んだ場合、
前記切替え制御手段が、
前記情報処理手段に、組み込まれた前記他の情報処理装置の前記入出力処理手段を用いて動作するように指示する
請求項１に記載の情報処理システム。
【請求項３】
処理を実行する情報処理手段と、
前記情報処理手段に制御されて前記情報処理手段の処理に必要な入力処理及び／又は出力処理を実行する主入出力処理手段と前記主入出力処理手段とは異なる入力処理及び／又は出力処理を実行する副入出力処理手段とを含む入出力処理手段と、
前記入出力処理手段が故障のために情報処理システムから切り離なされている場合に、前記主入出力処理手段の故障の状態を確認し、前記主入出力処理手段が故障でない場合、前記主入出力処理手段を情報処理システムに組み込む切替え制御手段と
を含む情報処理装置を複数含む情報処理システムにおいて
前記切替え制御手段が、
前記情報処理手段に、組み込まれた前記主入出力処理手段を用いた動作を実行するように指示し、
前記情報処理手段が、組み込まれた前記主入出力処理手段を用いた動作を開始した後、
前記切替え制御手段が、
他の情報処理装置の前記切替え制御手段に、前記他の情報処理装置の前記入出力処理手段を情報処理システムから切り離すように指示する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムに関し、特に、情報報理システムにおける構成を切り替える情報処理システム、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
高度な信頼性を提供する情報処理システムとして、フォールト・トレラント・システム（ＦＴＳ：Fault Tolerant system）がある（例えば、特許文献１を参照）。
【０００３】
フォールト・トレラント・システムは、次のような構成を用いて、信頼性を確保している。
【０００４】
まず、フォールト・トレラント・システムは、システムを構成するハードウェアとして、多重化したハードウェアを用いる。なお、交換可能なハードウェア単位を、モジュールと呼ぶ場合もある。つまり、フォールト・トレラント・システムは、ハードウェアの多重化として、モジュールを多重化してもよい。
【０００５】
そして、フォールト・トレラント・システムは、多重化した全てのハードウェア（モジュール）を、同期して動作させる。そして、システムに含まれる部位（ハードウェア又はハードウェアの一部）に故障が発生した場合、フォールト・トレラント・システムは、発生した故障に関連するハードウェア（モジュール）をシステムから切り離す。そして、フォールト・トレラント・システムは、故障が発生していない正常なハードウェア（モジュール）を用いて、処理を続行する。このような仕組みを用いて、フォールト・トレラント・システムは、耐故障性を向上させている。
【０００６】
フォールト・トレラント・システムについて、図面を参照して説明する。
【０００７】
図４は、一般的なフォールト・トレラント・システム９０の構成の一例を示すブロック図である。
【０００８】
図４に示されているフォールト・トレラント・システム９０は、二台の情報処理装置９１０（情報処理装置９１０ａと情報処理装置９１０ｂ）を含む。情報処理装置９１０ａと情報処理装置９１０ｂとは、同様の構成を含み、同様に動作する。そのため、以下の説明において、情報処理装置９１０ａと情報処理装置９１０ｂとを区別した説明において、各構成の符号としてアルファベット（ａ又はｂ）を付した符号を用いる。一方、共通の説明において、各構成の符号としてアルファベットを省略した符号を用いる。
【０００９】
各情報処理装置９１０は、それぞれが、各処理系となっている。以下の説明において、情報処理装置９１０ａを、「系１」とし、情報処理装置９１０ｂを、「系２」とする。例えば、情報処理装置９１０ａに含まれる構成は、系１の構成である。
【００１０】
情報処理装置９１０は、それぞれ、情報処理部９３０と、切替え制御部９２０と、入出力処理部９４０とを含む。ここで、例えば、情報処理部９３０及び入出力処理部９４０が、ハードウェアである。
【００１１】
情報処理部９３０は、情報の処理を実行する。情報処理部９３０は、例えば、１つのＣＰＵ（Central Processing Unit）又は複数のＣＰＵ（ＣＰＵ群）と、メモリ（例えば、メインメモリ）とを含む。ここで、例えば、ＣＰＵ及びメモリが、モジュールである。フォールト・トレラント・システム９０において、二つの情報処理部９３０（情報処理部９３０ａと情報処理部９３０ｂ）は、ＣＰＵサブシステムを構成している。ただし、ＣＰＵサブシステムは、切替え制御部９２０の一部を含む場合もある。
【００１２】
入出力処理部９４０は、情報の出力、及び／又は、情報の受信を実行する。入出力処理部９４０は、例えば、情報を出力する出力装置、又は、情報を受信する入力装置（以下まとめて、入出力装置と呼ぶ）である。フォールト・トレラント・システム９０において、二つの入出力処理部９４０（入出力処理部９４０ａ及び入出力処理部９４０ｂ）は、Ｉ／Ｏ（Input Output）サブシステムを構成している。ただし、Ｉ／Ｏサブシステムは、切替え制御部９２０の一部を含む場合もある。
【００１３】
このように、ＣＰＵサブシステムとＩ／Ｏサブシステムとは、ハードウェア（モジュール）が二重化された構成となっている。
【００１４】
切替え制御部９２０は、情報処理部９３０と入出力処理部９４０との間に位置し、各サブシステム（ＣＰＵサブシステム、及び、Ｉ／Ｏサブシステム）を制御する。そして、切替え制御部９２０は、他系の切替え制御部９２０と連携して、ＣＰＵサブシステムにおける両系の同期動作の維持、各サブシステムにおける故障の検出、及び、故障したハードウェア（モジュール）の切離しの制御を実行する。切替え制御部９２０は、他系の切替え制御部９２０との通信として、交差結合（cross-link）を用いている。
【００１５】
次に、故障が発生した場合について、図面を参照して説明する。
【００１６】
図５は、図４に示されているフォールト・トレラント・システム９０において、１つの情報処理部９３０に故障が発生した場合を示す図である。
【００１７】
図５に示されているように、いずれかの情報処理部９３０で故障が発生した場合、故障が発生した情報処理部９３０に接続されている切替え制御部９２０は、故障が発生した情報処理部９３０を、システムから論理的に切り離す。その結果、フォールト・トレラント・システム９０は、片系の情報処理部９３０を含むＣＰＵサブシステムと、正常な二台の入出力処理部９４０を含むＩ／Ｏサブシステムとを用いて動作を継続する。
【００１８】
このように、フォールト・トレラント・システム９０は、情報処理部９３０における故障において、二重化されている情報処理部９３０における切替え制御を実現している。
【００１９】
図６は、図４に示されているフォールト・トレラント・システム９０において、１つの入出力処理部９４０に故障が発生した場合を示す図である。
【００２０】
Ｉ／Ｏサブシステムに含まれるいずれかの入出力処理部９４０が故障の場合、切替え制御部９２０は、故障した入出力処理部９４０を制御している情報処理部９３０に対し、故障（エラー）を通知する。情報処理部９３０は、その通知を基に、入出力処理部９４０を切り替える。
【００２１】
より具体的な例を用いて説明する。情報処理部９３０ｂが、入出力処理部９４０ｂを制御していたとする。切替え制御部９２０ｂが、入出力処理部９４０ｂの故障を検出した場合、切替え制御部９２０ｂは、情報処理部９３０ｂに故障を通知する。その結果、情報処理部９３０ｂは、故障した入出力処理部９４０ｂの使用を中止し、他系の入出力処理部９４０ａの使用に切り替える。情報処理部９３０ｂが、入出力処理部９４０ａへの切替えを完了すると、切替え制御部９２０ｂは、故障した入出力処理部９４０ｂをシステムから論理的に切り離す。
【００２２】
このように、フォールト・トレラント・システム９０は、入出力処理部９４０における故障において、二重化されている入出力処理部９４０における切替え制御を実現している。
【００２３】
なお、図５に示されている故障が発生した場合、フォールト・トレラント・システム９０において、情報処理装置９１０ａが停止しても、情報処理装置９１０ｂが動作可能である。そのため、フォールト・トレラント・システム９０は、運用を停止しないで情報処理部９３０ａを交換することができる。そして、フォールト・トレラント・システム９０は、交換後の情報処理部９３０ａをシステムに組み込み、二重化を再開する。
【００２４】
また、図６に示されている故障が発生した場合、フォールト・トレラント・システム９０において、情報処理装置９１０ｂが停止しても、情報処理装置９１０ａが動作可能である。そのため、フォールト・トレラント・システム９０は、運用を停止しないで入出力処理部９４０ｂを交換することができる。そして、フォールト・トレラント・システム９０は、交換後の入出力処理部９４０ｂをシステムに組み込み、二重化を再開する。
【００２５】
このように、フォールト・トレラント・システム９０は、単一の故障が発生した場合、システムから故障したハードウェア（例えば、上記の処理部）を切り離して運用を継続する。そして、故障したハードウェアが、新しいハードウェアに交換されると、フォールト・トレラント・システム９０は、新しいハードウェアをシステムに組み込み、二重化状態に復帰する。このような動作を基に、フォールト・トレラント・システム９０は、いずれかのハードウェアが故障しても、システムの運用を停止することなく、故障状態から復帰を実現している。
【先行技術文献】
【特許文献】
【００２６】
【特許文献１】特開２００６−１７８５７号公報
【発明の概要】
【発明が解決しようとする課題】
【００２７】
しかし、故障は、確率的に発生する。そのため、確率的には低いが、フォールト・トレラント・システム９０において、二重故障が、発生する場合がある。
【００２８】
ここで、二つの情報処理部９３０が故障した場合、フォールト・トレラント・システム９０は、処理を継続できないため、システム運用を停止する。また、同様に、二つの入出力処理部９４０が故障した場合、フォールト・トレラント・システム９０は、処理を継続できないため、システム運用を停止する。
【００２９】
一方、１つの情報処理装置９１０に含まれる情報処理部９３０と入出力処理部９４０とが故障した場合、残りの情報処理装置９１０が、単体の装置として、システム運用を継続できる。
【００３０】
さらに、片系の情報処理部９３０と、他系の入出力処理部９４０とが故障の場合、フォールト・トレラント・システム９０は、システムの運用を継続できる。
【００３１】
図７は、１つの情報処理部９３０と、その情報処理部９３０に対して他系となっている入出力処理部９４０とに故障が発生した場合を示す図である。
【００３２】
図７に示されているように、系１の情報処理部９３０ａと系２の入出力処理部９４０ｂとに故障が発生した場合、フォールト・トレラント・システム９０は、系２の情報処理部９３０ｂと系１の入出力処理部９４０ａとを用いて、システムの運用を継続できる。
【００３３】
しかし、故障部品を交換するためには、部品を含む情報処理装置９１０を停止することが必要である。例えば、系１の情報処理装置９１０ａの情報処理部９３０ａを交換のためには、情報処理装置９１０ａを停止することが必要である。
【００３４】
しかし、今の場合、フォールト・トレラント・システム９０において動作している入出力処理部９４０ａは、情報処理装置９１０ａに搭載されている。つまり、故障部品を交換するために情報処理装置９１０ａを停止すると、情報処理部９３０ｂは、入出力処理部９４０ａを用いた動作が実行できなくなる。その結果、フォールト・トレラント・システム９０は、部品交換において、システム運用を停止する必要がある。
【００３５】
フォールト・トレラント・システムは、ユーザに対して、高可用性を提供するシステムである。つまり、部品交換においても、システムの運用を停止することは、できる限り避けることが望まれている。
【００３６】
しかし、上記のように特許文献１に記載の発明は、故障部品の交換において、システム運用を停止することが必要であるという問題点があった。
【００３７】
本発明の目的は、上記問題点を解決し、システムの運用を停止しないで、故障部品の交換を実現する情報処理装置、情報処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００３８】
本発明の一形態における情報処理システムは、処理を実行する情報処理手段と、情報処理手段に制御されて情報処理手段の処理に必要な入力処理及び／又は出力処理を実行する主入出力処理手段と主入出力処理手段とは異なる入力処理及び／又は出力処理を実行する副入出力処理手段とを含む入出力処理手段と、入出力処理手段が故障のために情報処理システムから切り離なされている場合に、主入出力処理手段の故障の状態を確認し、主入出力処理手段が故障でない場合、主入出力処理手段を情報処理システムに組み込む切替え制御手段とを含む複数の情報処理装置を含む。
【００３９】
本発明の一形態における情報処理方法は、処理を実行する情報処理手段と、情報処理手段に制御されて情報処理手段の処理に必要な入力処理及び／又は出力処理を実行する主入出力処理手段と主入出力処理手段とは異なる入力処理及び／又は出力処理を実行する副入出力処理手段とを含む入出力処理手段とを含む複数の情報処理装置を含む情報処理システムにおいて、入出力処理手段が故障のために情報処理システムから切り離なされている場合に、主入出力処理手段の故障の状態を確認し、主入出力処理手段が故障でない場合、主入出力処理手段を情報処理システムに組み込む。
【００４０】
本発明の一形態におけるプログラムは、処理を実行する情報処理手段と、情報処理手段に制御されて情報処理手段の処理に必要な入力処理及び／又は出力処理を実行する主入出力処理手段と主入出力処理手段とは異なる入力処理及び／又は出力処理を実行する副入出力処理手段とを含む入出力処理手段とを含む複数の情報処理装置を含む情報処理システムにおいて、入出力処理手段が故障のために情報処理システムから切り離なされている場合に、主入出力処理手段の故障の状態を確認する処理と、主入出力処理手段が故障でない場合、主入出力処理手段を情報処理システムに組み込む処理とをコンピュータに実行させる。
【発明の効果】
【００４１】
本発明に基づけば、システムの運用を停止しないで、故障部品の交換を実現するとの効果を奏することができる。
【図面の簡単な説明】
【００４２】
【図１】図１は、本発明における第１の実施形態に係る情報処理システムの構成の一例を示すブロック図である。
【図２】図２は、第１の実施形態に係る情報処理システムの動作を説明するための図である。
【図３】図３は、第１の実施形態に係る情報処理システムに含まれる情報処理装置の構成の一例を示すブロック図である。
【図４】図４は、一般的なフォールト・トレラント・システムの構成の一例を示すブロック図である。
【図５】図５は、１つの情報処理部に故障が発生した場合を示す図である。
【図６】図６は、１つの入出力処理部に故障が発生した場合を示す図である。
【図７】図７は、片系の情報処理部と他系の入出力装置に故障が発生した場合を示す図である。
【発明を実施するための形態】
【００４３】
次に、本発明の実施形態について図面を参照して説明する。
【００４４】
なお、各図面は、本発明の実施形態を説明するものである。ただし、本発明は、各図面の記載に限られるわけではない。また、各図面の同様の構成には、同じ番号を付し、その繰り返しの説明を省略する場合がある。また、以下の説明に用いる図面において、本発明の説明に関係しない部分の構成については、記載を省略し、図示しない場合もある。また、図面中の矢印の方向は、一例を示すものであり、ブロック間の信号の向きを限定するものではない。
【００４５】
＜第１の実施形態例＞
本発明における第１の実施形態について、図面を参照して説明する。
【００４６】
［構成の説明］
まず、第１の実施形態に係る情報処理システム１０の構成について説明する。
【００４７】
図１は、本発明における第１の実施形態に係る情報処理システム１０の構成の一例を示す図である。
【００４８】
図１に示されているとおり、情報処理システム１０は、複数の情報処理装置１００を含む。情報処理システム１０は、複数であれば、情報処理装置１００の数を制限されない。図１は、一例として、２台の情報処理装置１００を含む場合を示している。ただし、情報処理システム１０は、３台以上の情報処理装置１００を含んでもよい。
【００４９】
２台の情報処理装置１００は、同じ構成を含む。そのため、情報処理装置１００及び情報処理装置１００に含まれる構成において共通の説明の場合、符号は、数字とする。一方、各情報処理装置１００に関する個別の説明の場合、符号は、数値に下付アルファベットを付すとする。例えば、図１において左側の情報処理装置１００の説明は、情報処理装置１００ａを用いるとする。
【００５０】
また、各情報処理装置１００は、各処理系を実現している。処理系を区別する場合、以下の説明では、図１の左側の情報処理装置１００ａを「系１」とする。また、右側の情報処理装置１００ｂを「系２」とする。
【００５１】
次に、情報処理装置１００の構成について説明する。
【００５２】
情報処理装置１００は、切替え制御部２００と、情報処理部３００と、入出力処理部４００とを含む。
【００５３】
情報処理部３００は、情報処理装置１００における一般的な処理を実行する。例えば、情報処理部３００は、入出力処理部４００における入力処理及び／又は出力処理を制御する。情報処理部３００は、例えば、ＣＰＵ及びメモリを含む回路を用いて実現される。
【００５４】
入出力処理部４００は、情報処理部３００の制御に基づいて、図示しない装置、又は、設備（例えば、通信網）との入力処理及び／又は出力処理を実行する。入出力処理部４００は、例えば、入力機器（例えば、キーボード）又は出力機器（プリンター）である。あるいは、入出力処理部４００は、入力及び出力を実行する機器（例えば、通信機器又は記憶装置）である。
【００５５】
入出力処理部４００は、主入出力処理部４０１と副入出力処理部４０２とを含む。
【００５６】
主入出力処理部４０１は、情報処理部３００の動作における基本的な機能を実現する。例えば、主入出力処理部４０１は、情報処理部３００において動作するＯＳ（Operation System）の起動に必要な機能を実現する。具体的には、主入出力処理部４０１は、例えば、ＯＳを記録している記憶装置（例えば、ＨＤＤ（Hard Disk Drive））である。つまり、情報処理部３００は、主入出力処理部４０１を用いて、情報処理システム１０の運用に必要な機能を実現できる。
【００５７】
一方、副入出力処理部４０２は、情報処理部３００の動作において、主入出力処理部４０１との異なる機能、つまり追加的な機能を実現する。例えば、副入出力処理部４０２は、情報処理部３００の動作において、一時的に停止可能な機能を実現する。例えば、副入出力処理部４０２は、プリンターである。
【００５８】
切替え制御部２００は、情報処理部３００及び入出力処理部４００を監視し、情報処理部３００及び入出力処理部４００の切替えを制御する。より詳細には、切替え制御部２００は、他系の切替え制御部２００と連携して、情報処理部３００及び入出力処理部４００における冗長機能などの同期動作の維持、故障の検出、並びに、故障箇所の切離し及び組み込みを制御する。そのため、切替え制御部２００は、他系の切替え制御部２００と通信する。この通信は、特に制限されない。例えば、切替え制御部２００は、この通信として、交差結合又はＬＡＮ（Local Area Network）を用いてもよい。
【００５９】
情報処理システム１０は、故障が片系の情報処理装置１００の範囲内の場合、一般的なフォールト・トレラント・システムと同様な動作を用いて、故障部分の交換を実現する。
【００６０】
さらに、情報処理システム１０は、片系の情報処理部３００と、他系の入出力処理部４００との故障（二重故障）対して、後ほど説明する動作を基に、故障した情報処理部３００及び入出力処理部４００の交換を実現する。
【００６１】
［動作の説明］
次に、図面を参照して、第１の実施形態に係る情報処理システム１０における動作を説明する。
【００６２】
図２は、第１の実施形態に係る情報処理システム１０の動作を説明するための図である。
【００６３】
以下の説明では、図２に示されているように、情報処理装置１００ａ（系１）の情報処理部３００ａにおいて、故障が発生したとする。さらに、情報処理装置１００ｂ（系２）の副入出力処理部４０２ｂにおいて、故障が発生したとする。ただし、副入出力処理部４０２ｂは、既に説明しているように、情報処理部３００ｂの動作において追加的な機能を実現する処理部である。つまり、主入出力処理部４０１ｂが、情報処理部３００ｂの動作に必要な機能を実現する。
【００６４】
情報処理システム１０において、系２の情報処理部３００ｂは、通常の処理としては、系１の入出力処理部４００ａ（主入出力処理部４０１ａ及び副入出力処理部４０２ａ）を用いて動作する。つまり、系２の入出力処理部４００ｂ（主入出力処理部４０１ｂ及び副入出力処理部４０２ｂ）は、システムから切り離されている。
【００６５】
まず、故障している情報処理部３００ａを交換する場合について説明する。
【００６６】
以下で説明する動作は、例えば、図示しない情報処理システム１０の保守装置からの指示を基に開始される。
【００６７】
まず、正常に動作している情報処理部３００ｂと同じ系の切替え制御部２００ｂは、切り離されている自系の入出力処理部４００ｂの状況を確認する。より詳細には、切替え制御部２００ｂは、主入出力処理部４０１ｂの故障の状況を確認する。
【００６８】
主入出力処理部４０１ｂが故障している場合、情報処理システム１０は、以下で説明する処理を実行せずに、一般的な、保守作業における動作を進める。この場合の動作は、一般的なフォールト・トレラント・システムにおける保守動作のため、詳細な説明を省略する。
【００６９】
主入出力処理部４０１ｂが正常（動作可能）な場合、情報処理システム１０は、以下で説明する動作を基に、システムの運用を停止しないで、故障部品の交換を実現する。
【００７０】
なお、副入出力処理部４０２ｂは、正常でも故障でもよい。そのため、切替え制御部２００ｂは、副入出力処理部４０２ｂの状況を確認しなくてもよい。ただし、切替え制御部２００ｂは、副入出力処理部４０２ｂの状況を確認してもよい。例えば、情報処理装置１００ｂが複数の副入出力処理部４０２ｂを含む場合、切替え制御部２００ｂは、動作可能な副入出力処理部４０２ｂと故障となっている副入出力処理部４０２ｂとを判別してもよい。そして、切替え制御部２００ｂは、後ほど説明する主入出力処理部４０１ｂをシステムに組み込むときに、正常な副入出力処理部４０２ｂをシステムに組み込んでもよい。この場合、情報処理部３００ｂは、以下で説明する動作において、制限される機能が少なくなる。
【００７１】
切替え制御部２００ｂは、主入出力処理部４０１ｂをシステムに組み込む。そして、切替え制御部２００ｂは、情報処理部３００ｂに対して、主入出力処理部４０１ｂを用いた動作を実行するように指示する。つまり、切替え制御部２００ｂは、情報処理部３００ｂに対して、予め定義されている動作（主入出力処理部４０１ｂを用いた動作）を実行するように指示する。主入出力処理部４０１ｂは、情報処理部３００ｂにおけるシステム運用に必要な機能を実現する。そのため、情報処理部３００ｂは、ある程度の機能制限（副入出力処理部４０２ｂに関連する機能の制限）を受けるが、システムを運用するために必要な動作を実行できる。
【００７２】
そして、切替え制御部２００ｂは、切替え制御部２００ａと連携して、入出力処理部４００ａをシステムから切り離す。
【００７３】
その結果、情報処理装置１００ａは、情報処理システム１０における運用を停止しないで、停止することが可能となる。
【００７４】
そこで、情報処理システム１０の保守員などが、故障した情報処理部３００ａを交換する。そして、情報処理装置１００ａが、情報処理部３００ａの交換後に立ち上がると、切替え制御部２００ａ及び切替え制御部２００ｂは、立ち上がった情報処理装置１００ａの情報処理部３００ａと入出力処理部４００ａとを、システムに組み込む。その結果、情報処理システム１０は、情報処理部３００における二重化を回復する。
【００７５】
そして、切替え制御部２００ｂは、情報処理部３００ｂに、入出力処理部４００ａの使用再開を指示する。情報処理部３００ｂは、入出力処理部４００ａを用いて、通常動作を再開する。情報処理部３００ｂにおける動作再開後、切替え制御部２００ｂは、入出力処理部４００ｂ（詳細には、主入出力処理部４０１ｂ、及び、主入出力処理部４０１ｂとともに組み込まれた副入出力処理部４０２ｂ）を情報処理システム１０から切り離す。
【００７６】
このように、第１の実施形態に係る情報処理システム１０は、情報処理システム１０の運用を停止しないで、故障部品、具体的には、情報処理部３００を交換することができる。
【００７７】
次に、故障している入出力処理部４００ｂを交換する場合について説明する。
【００７８】
上記のとおり、情報処理部３００の二重化が回復した場合、情報処理システム１０は、片系の故障、具体的には、入出力処理部４００ｂの単独故障状態となる。
【００７９】
片系の故障（単独故障）のため、情報処理システム１０は、一般的なフォールト・トレラント・システムと同様に、システムの運用を停止しないで、故障した入出力処理部４００ｂ（具体的には、副入出力処理部４０２ｂ）を交換することができる。
【００８０】
［効果の説明］
次に、第１の実施形態の効果について説明する。
【００８１】
第１の実施形態に係る情報処理システム１０は、システムの運用を停止しないで、故障部品の交換を実現するとの効果を奏することができる。
【００８２】
その理由は、次のとおりである。
【００８３】
切替え制御部２００は、入出力処理部４００が、故障のため情報処理システム１０から切り離されている場合に、主入出力処理部４０１の故障の状態を確認する。そして、主入出力処理部４０１が故障でない場合、切替え制御部２００は、主入出力処理部４０１を情報処理システム１０に組み込む。そして、切替え制御部２００は、情報処理部３００に、主入出力処理部４０１を用いた動作を指示する。
【００８４】
その結果、情報処理部３００は、主入出力処理部４０１を用いて、システムの運用に必要な所定の動作を実現できる。
【００８５】
そのため、情報処理システム１０は、システムの運用を停止しないで、情報処理部３００が故障している情報処理装置１００を停止することができる。その結果、保守員は、情報処理部３００が故障している情報処理装置における故障部品（情報処理部３００）を交換することができる。
【００８６】
このように、情報処理システム１０は、故障している情報処理部３００を含む情報処理装置１００を停止して、部品を交換できるためである。
【００８７】
［発明の概要］
第１の実施形態に係る情報処理システム１０の概要は、次のとおりである。
【００８８】
情報処理システム１０は、複数の情報処理装置１００を含む。
【００８９】
情報処理装置１００は、切替え制御部２００と、情報処理部３００と、入出力処理部４００とを含む。
【００９０】
情報処理部３００は、処理を実行する。
【００９１】
入出力処理部４００は、情報処理部３００の動作に必要な入力処理及び／又は出力処理を実行する主入出力処理部４０１と、主入出力処理部４０１とは異なる入力処理及び／又は出力処理を実現する副入出力処理部４０２とを含む。
【００９２】
切替え制御部２００は、入出力処理部４００が、故障のため情報処理システム１０から切り離されている場合に、主入出力処理部４０１の故障の状態を確認し、主入出力処理部４０１が故障でない場合、主入出力処理部４０１を情報処理システム１０に組み込む。
【００９３】
このような動作を基に、情報処理システム１０は、上記の効果を実現できる。
【００９４】
このように、図１に示されている情報処理システム１０は、本発明の最小構成でもある。
【００９５】
［変形例］
以上の説明した情報処理装置１００は、次のように構成される。
【００９６】
例えば、情報処理装置１００の各構成部は、ハードウェア回路で構成されてもよい。
【００９７】
また、情報処理装置１００において、各構成部は、ネットワークを介して接続した複数の装置を用いて、構成されてもよい。
【００９８】
また、情報処理装置１００において、複数の構成部は、１つのハードウェアで構成されてもよい。
【００９９】
また、情報処理装置１００は、ＣＰＵ（Central Processing Unit）と、ＲＯＭ（Read Only Memory）と、ＲＡＭ（Random Access Memory）とを含むコンピュータ装置として実現されてもよい。情報処理装置１００は、上記構成に加え、さらに、入出力接続回路（ＩＯＣ：Input / Output Circuit）と、ネットワークインターフェース回路（ＮＩＣ：Network Interface Circuit）とを含むコンピュータ装置として実現されてもよい。
【０１００】
図３は、本変形例に係る情報処理装置６００の構成の一例を示すブロック図である。
【０１０１】
情報処理装置６００は、ＣＰＵ６１０と、ＲＯＭ６２０と、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを含み、コンピュータ装置を構成している。
【０１０２】
ＣＰＵ６１０は、ＲＯＭ６２０からプログラムを読み込む。そして、ＣＰＵ６１０は、読み込んだプログラムに基づいて、ＲＡＭ６３０と、内部記憶装置６４０と、ＩＯＣ６５０と、ＮＩＣ６８０とを制御する。そして、ＣＰＵ６１０を含むコンピュータは、これらの構成を制御し、図１に示されている、切替え制御部２００と、情報処理部３００と、入出力処理部４００しての各機能を実現する。
【０１０３】
ＣＰＵ６１０は、各機能を実現する際に、ＲＡＭ６３０又は内部記憶装置６４０を、プログラムの一時記憶媒体として使用してもよい。
【０１０４】
また、ＣＰＵ６１０は、コンピュータで読み取り可能にプログラムを記憶した記憶媒体７００が含むプログラムを、図示しない記憶媒体読み取り装置を用いて読み込んでもよい。あるいは、ＣＰＵ６１０は、ＮＩＣ６８０を介して、図示しない外部の装置からプログラムを受け取り、ＲＡＭ６３０に保存して、保存したプログラムを基に動作してもよい。
【０１０５】
ＲＯＭ６２０は、ＣＰＵ６１０が実行するプログラム及び固定的なデータを記憶する。ＲＯＭ６２０は、例えば、Ｐ−ＲＯＭ（Programmable-ROM）又はフラッシュＲＯＭである。
【０１０６】
ＲＡＭ６３０は、ＣＰＵ６１０が実行するプログラム及びデータを一時的に記憶する。ＲＡＭ６３０は、例えば、Ｄ−ＲＡＭ（Dynamic-RAM）である。
【０１０７】
内部記憶装置６４０は、情報処理装置６００が長期的に保存するデータ及びプログラムを記憶する。また、内部記憶装置６４０は、ＣＰＵ６１０の一時記憶装置として動作してもよい。内部記憶装置６４０は、例えば、ハードディスク装置、光磁気ディスク装置、ＳＳＤ（Solid State Drive）又はディスクアレイ装置である。
【０１０８】
ここで、ＲＯＭ６２０と内部記憶装置６４０は、不揮発性（non-transitory）の記憶媒体である。一方、ＲＡＭ６３０は、揮発性（transitory）の記憶媒体である。そして、ＣＰＵ６１０は、ＲＯＭ６２０、内部記憶装置６４０、又は、ＲＡＭ６３０に記憶されているプログラムを基に動作可能である。つまり、ＣＰＵ６１０は、不揮発性記憶媒体又は揮発性記憶媒体を用いて動作可能である。
【０１０９】
ＩＯＣ６５０は、ＣＰＵ６１０と、入力機器６６０及び表示機器６７０とのデータを仲介する。ＩＯＣ６５０は、例えば、ＩＯインターフェースカード又はＵＳＢ（Universal Serial Bus）カードである。さらに、ＩＯＣ６５０は、ＵＳＢのような有線に限らず、無線を用いてもよい。
【０１１０】
入力機器６６０は、情報処理装置６００の操作者からの入力指示を受け取る機器である。入力機器６６０は、例えば、キーボード、マウス又はタッチパネルである。
【０１１１】
表示機器６７０は、情報処理装置６００の操作者に情報を表示する機器である。表示機器６７０は、例えば、液晶ディスプレイである。
【０１１２】
ＮＩＣ６８０は、ネットワークを介した図示しない外部の装置とのデータのやり取りを中継する。ＮＩＣ６８０は、例えば、他系の切替え制御部２００との接続を実現する。ＮＩＣ６８０は、例えば、Ｃｒｏｓｓｌ−ｉｎｋ又はＬＡＮカードである。さらに、ＮＩＣ６８０は、有線に限らず、無線を用いてもよい。
【０１１３】
このように構成された情報処理装置６００は、情報処理装置１００と同様の効果を得ることができる。
【０１１４】
その理由は、情報処理装置６００のＣＰＵ６１０が、プログラムに基づいて情報処理装置１００と同様の機能を実現できるためである。
【０１１５】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成及び詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【０１１６】
本発明は、高度な信頼性を要求されるコンピュータ・システムに適用可能である。
【符号の説明】
【０１１７】
１０    情報処理システム
９０    フォールト・トレラント・システム
１００    情報処理装置
２００    切替え制御部
３００    情報処理部
４００    入出力処理部
４０１    主入出力処理部
４０２    副入出力処理部
６００    情報処理装置
６１０    ＣＰＵ
６２０    ＲＯＭ
６３０    ＲＡＭ
６４０    内部記憶装置
６５０    ＩＯＣ
６６０    入力機器
６７０    表示機器
６８０    ＮＩＣ
７００    記憶媒体
９１０    情報処理装置
９２０    切替え制御部
９３０    情報処理部
９４０    入出力処理部
【図１】
0006642040.tif 000002
【図２】
0006642040.tif 000003
【図３】
0006642040.tif 000004
【図４】
0006642040.tif 000005
【図５】
0006642040.tif 000006
【図６】
0006642040.tif 000007
【図７】
0006642040.tif 000008