(57)【要約】【課題】安定性を向上させることができる処理装置、二重化システム、処理方法、および処理プログラムを得ること。【解決手段】実施の形態の処理装置は、処理部と、監視部と、系切替部と、再起動部とを備えることを特徴とする。処理部は、現用系の処理を実行する。監視部は、処理部の状態を監視する。系切替部は、監視部の監視結果に基づいて、処理部の設定を現用系と待機系との間で切り替える。再起動部は、系切替部によって処理部が待機系に切り替えられた場合、および監視部の監視結果が再起動条件を満たす場合のうち少なくともいずれか一方の場合に、処理部を再起動する。【選択図】図１
2018133766.tif 000002
【特許請求の範囲】
【請求項１】
現用系の処理を実行する処理部と、
前記処理部の状態を監視する監視部と、
前記監視部の監視結果に基づいて、前記処理部の設定を前記現用系と待機系との間で切り替える系切替部と、
前記系切替部によって前記処理部が前記待機系に切り替えられた場合、および前記処理部の設定が前記待機系であり且つ前記監視部の監視結果が再起動条件を満たす場合のうち少なくとも一方の場合に、前記処理部を再起動する再起動部と、を備える
ことを特徴とする処理装置。
【請求項２】
前記監視部は、
前記処理部の状態に基づく第１の評価値を演算すると共に、前記現用系の処理を実行する他の処理装置の状態に基づく第２の評価値を前記他の処理装置から取得し、
前記系切替部は、
前記第１の評価値と前記第２の評価値とに基づいて、前記現用系と前記待機系との間で前記処理部の設定を切り替える
ことを特徴とする請求項１に記載の処理装置。
【請求項３】
前記系切替部は、
前記処理部が前記現用系として設定されている場合に、前記第１の評価値が第１の閾値未満である場合に、前記処理部の設定を前記現用系から前記待機系へ切り替え、
前記再起動部は、
前記系切替部によって前記処理部の設定が前記現用系から前記待機系へ切り替えられた後に、前記処理部を再起動する
ことを特徴とする請求項２に記載の処理装置。
【請求項４】
前記再起動部は、
前記処理部が前記待機系として設定され、かつ、前記第１の評価値が第４の閾値未満である場合に、前記処理部を再起動する
ことを特徴とする請求項２に記載の処理装置。
【請求項５】
前記系切替部は、
前記第１の評価値と前記第２の評価値とを比較し、比較した結果に基づいて、前記現用系と前記待機系との間で前記処理部を切り替える
ことを特徴とする請求項２に記載の処理装置。
【請求項６】
前記系切替部は、
前記処理部が前記現用系に設定されている場合、前記第１の評価値が前記第２の評価値未満かつ前記第１の評価値と前記第２の評価値との差が第３の閾値以上である場合に、前記処理部の設定を前記現用系から前記待機系へ切り替える
ことを特徴とする請求項５に記載の処理装置。
【請求項７】
前記再起動部は、
前記第１の評価値が第４の閾値未満の場合に、前記処理部を再起動する
ことを特徴とする請求項６に記載の処理装置。
【請求項８】
第１の処理部および第２の処理部のうち一方を現用系に設定し他方を待機系に設定して動作する二重化システムにおいて、
前記第１の処理部の状態を監視する第１の監視部と、
前記第２の処理部の状態を監視する第２の監視部と、
前記第１の監視部および前記第２の監視部のうち少なくとも一方の監視結果に基づいて、前記第１の処理部の設定を前記現用系と前記待機系との間で切り替える系切替部と、
前記系切替部によって前記第１の処理部が前記待機系に切り替えられた場合、および前記第１の処理部の設定が前記待機系であり且つ前記監視結果が再起動条件を満たす場合のうち少なくとも一方の場合に、前記第１の処理部を再起動させる再起動部と、を備える
ことを特徴とする二重化システム。
【請求項９】
現用系の処理を実行する処理部の状態を監視する監視ステップと、
前記監視ステップにおける監視結果に基づいて、前記処理部の設定を前記現用系と待機系との間で切り替える切替ステップと、
前記切替ステップによって前記処理部が前記待機系に切り替えられた場合、および前記処理部の設定が前記待機系であり且つ前記監視ステップの監視結果が再起動条件を満たす場合のうち少なくとも一方の場合に、前記処理部を再起動する再起動ステップと、を含む
ことを特徴とする処理方法。
【請求項１０】
現用系の処理を実行する処理部の状態を監視する監視ステップと、
前記監視ステップにおける監視結果に基づいて、前記処理部の設定を前記現用系と待機系との間で切り替える切替ステップと、
前記切替ステップによって前記処理部が前記待機系に切り替えられた場合、および前記処理部の設定が前記待機系であり且つ前記監視ステップの監視結果が再起動条件を満たす場合のうち少なくとも一方の場合に、前記処理部を再起動する再起動ステップと、
をコンピュータに実行させることを特徴とする処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理装置、二重化システム、処理方法、および処理プログラムに関する。
【背景技術】
【０００２】
従来、複数の処理装置の一方を現用系とし他方を待機系として運用する二重化システムが知られている。かかる二重化システムは、現用系の処理装置に重大な障害が発生した場合に、現用系の処理装置を待機系へ切り替え、待機系の処理装置を現用系へ切り替える（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２０７２１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記従来の二重化システムでは、処理装置における障害の要因に応じて現用系と待機系とを切り替えるものであるが、二重化システムの安定性を図る観点から、さらなる改善を行うことが望ましい。
【０００５】
本発明は、上記に鑑みてなされたものであって、二重化システムの安定性を向上させることができる処理装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明の処理装置は、処理部と、監視部と、系切替部と、再起動部とを備えることを特徴とする。前記処理部は、現用系の処理を実行する。前記監視部は、前記処理部の状態を監視する。前記系切替部は、前記監視部の監視結果に基づいて、前記処理部の設定を前記現用系と待機系との間で切り替える。前記再起動部は、前記系切替部によって前記処理部が待機系に切り替えられた場合、および前記処理部の設定が前記待機系であり且つ前記監視部の監視結果が再起動条件を満たす場合のうち少なくとも一方の場合に、前記処理部を再起動する。
【発明の効果】
【０００７】
本発明によれば、二重化システムの安定性を向上させることができる、という効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態１にかかる二重化システムの構成の一例を示す図
【図２】実施の形態１にかかる処理装置の構成の一例を示す図
【図３】実施の形態１にかかる第１のスコア判定テーブルの一例を示す図
【図４】実施の形態１にかかる第２のスコア判定テーブルの一例を示す図
【図５】実施の形態１にかかる現用系の系切替部による系切替条件と第１の評価値との関係を示す図
【図６】実施の形態１にかかる監視部および管理部の処理の一例を示すフローチャート
【図７】図６に示すステップＳ１４の処理の一例を示すフローチャート
【図８】図７に示すステップＳ２６の処理の一例を示すフローチャート
【図９】図６に示すステップＳ１５の処理の一例を示すフローチャート
【図１０】実施の形態１にかかる処理装置のハードウェア構成の一例を示す図
【図１１】本発明の実施の形態２にかかる監視部および管理部の処理の一例を示すフローチャート
【図１２】本発明の実施の形態３にかかる二重化システムの処理装置の構成の一例を示す図
【図１３】実施の形態３にかかる処理装置の管理部の現用系管理処理の一例を示すフローチャート
【図１４】実施の形態３にかかる処理装置の管理部の待機系管理処理の一例を示すフローチャート
【発明を実施するための形態】
【０００９】
以下に、本発明の実施の形態にかかる処理装置、二重化システム、処理方法、および処理プログラムを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１０】
実施の形態１．
図１は、本発明の実施の形態１にかかる二重化システムの構成の一例を示す図である。図１に示すように、実施の形態１にかかる二重化システム１は、処理装置２１と処理装置２２とを備える。二重化システム１では、処理装置２１および処理装置２２の一方が現用系として動作し、他方が待機系に設定されており、現用系と待機系とを切り替え可能である。
【００１１】
二重化システム１は、駅内に設置されており、駅内のネットワーク４に接続された複数の駅装置３とネットワーク６に接続された中央管理装置５との間の情報の送受信を行う通信端末システムである。なお、駅装置３は、旅券発行端末、自動改札機、および発車案内板といった駅内に設置される装置である。また、二重化システム１は、通信端末システムに限定されず、種々のシステムに適用することができ、設置場所も駅内に限定されない。
【００１２】
処理装置２１および処理装置２２は、互いに同一の構成であり、以下においては、処理装置２１および処理装置２２を総称して処理装置２と記載する場合がある。処理装置２は、処理部２０と、監視部２１と、系切替部４１と、再起動部４２とを備える。処理装置２１の処理部２０が第１の処理部の一例であり、処理装置２２の処理部２０が第２の処理部の一例である。また、処理装置２１の監視部２１が第１の監視部の一例であり、処理装置２２の監視部２１が第２の監視部の一例である。
【００１３】
処理部２０は、現用系に設定されている場合に、現用系の処理を実行する。現用系の処理は、上述したように、複数の駅装置３と中央管理装置５との間の情報の送受信処理であるが、送受信処理以外の情報処理であってもよく、送受信処理に限定されない。
【００１４】
監視部２１は、処理部２０の状態を監視する。監視部２１は、処理部２０を構成するデバイス、処理部２０の電源電圧、処理部２０の温度、不図示のファンのうち少なくとも１つの状態を処理部２０の状態として監視することができる。処理部２０を構成するデバイスは、ＣＰＵ、ＨＤＤ、メモリといったデバイスであり、処理部２０の温度は、処理部２０の内部温度または処理部２０の周辺温度である。
【００１５】
また、監視部２１は、処理部２０が現用系に設定されて動作した期間を処理部２０の状態として監視することもできる。以下、処理部２０が現用系に設定されて動作した積算時間を積算稼動期間と記載する場合がある。
【００１６】
監視部２１は、処理部２０を構成するデバイス、処理部２０の電源電圧、処理部２０の温度、ファンおよび積算稼動期間のうち少なくとも１つ以上の状態に基づいて、処理部２０の評価値Ｓｓを演算することができる。評価値Ｓｓは、処理部２０の状態が現用系の処理を実行できなくなる状態に近づくほど小さくなるように設定される。
【００１７】
系切替部４１は、監視部２１の監視結果に基づいて、現用系の処理を実行している処理部２０の状態が予め設定された系切替条件を満たす場合に、処理部２０の設定を現用系と待機系との間で切り替える。監視部２１が上述した評価値Ｓｓを演算する場合、上述した系切替条件を、監視部２１で演算される評価値Ｓｓが閾値Ｓｔｈ未満であるという条件にすることができる。
【００１８】
閾値Ｓｔｈは、重度の異常が発生する前に評価値Ｓｓが下回るように設定される。重度の異常とは、処理部２０の状態が現用系の処理を実行できなくなる状態を示す。以下においては、処理部２０が正常状態ではないものの処理部２０の状態が現用系の処理を実行できる状態を軽度の異常という場合があり、また、処理部２０の性能が正常状態よりも低下している状態を性能低下という場合がある。
【００１９】
評価値Ｓｓが閾値Ｓｔｈ未満であるという条件を系切替条件にすることで、系切替部４１は、重度の異常が処理部２０に発生する前に、系切り替え、すなわち、現用系と待機系との間の切り替えを行うことができる。したがって、現用系の処理部２０が動作中に系切り替えを行うことができ、重度の異常が発生した後に系切り替えを行う場合に比べ、系切り替えに要する時間を抑えることができ、現用系の処理への影響を低減することができる。なお、重度の異常が発生する前に処理部２０の設定を現用系と待機系との間で切り替えることができればよく、評価値Ｓｓによる系切り替えに限定されない。
【００２０】
また、再起動部４２は、処理部２０が待機系に設定されている場合に、監視部２１の監視結果に基づいて、処理部２０を再起動する。処理部２０の処理を実行するＯＳ（Operating  System）およびＯＳ上で稼動するプログラムの不具合が生じたような場合、再起動により処理部２０の状態を正常な状態に戻すことができる。したがって、待機系に設定されている処理部２０を現用系に切り替え可能な状態にすることができ、二重化システム１の安定性を向上させることができる。
【００２１】
ここで、処理装置２１の処理部２０が現用系に設定され、処理装置２２の処理部２０が待機系に設定されているとする。そして、処理装置２１の系切替部４１が処理装置２１の処理部２０の設定を現用系から待機系へ切り替え、処理装置２２の系切替部４１が処理装置２２の処理部２０の設定を待機系から現用系へ切り替えたとする。
【００２２】
処理装置２１の再起動部４２は、処理装置２１の処理部２０の設定が現用系から待機系へ切り替えられた後に、処理装置２１の処理部２０を再起動することができる。これにより、系切り替え後に、処理装置２１の処理部２０の状態を正常な状態に戻して、次回の系切り替えを可能にすることができ、二重化システム１の安定性を向上させることができる。以下、処理装置２の構成および処理について具体的に説明する。
【００２３】
図２は、実施の形態１にかかる処理装置２の構成の一例を示す図である。図２に示すように、実施の形態１にかかる処理装置２は、通信部１０と、電源部１１と、ファン１２と、制御部１３とを備える。
【００２４】
通信部１０は、第１の通信部１６と、第２の通信部１７とを備える。第１の通信部１６は、ネットワーク４を介して他の処理装置２および複数の駅装置３との間で情報の送受信を行う。第２の通信部１７は、ネットワーク６を介して中央管理装置５との間で情報の送受信を行う。ネットワーク４およびネットワーク６は、イントラネットであるが、イントラネット以外のネットワークであってもよい。
【００２５】
電源部１１は、通信部１０および制御部１３に供給する電圧を生成し、通信部１０および制御部１３へ出力する。ファン１２は、制御部１３から出力される駆動電圧に基づいて、制御部１３の内部を冷却する。
【００２６】
制御部１３は、処理部２０と、監視部２１と、管理部２２とを備える。処理部２０は、現用系に設定されている場合、現用系の処理である送受信処理を実行する。なお、上述したように、現用系の処理は、送受信処理に限定されず、他の処理を実行してもよい。
【００２７】
監視部２１は、デバイス監視部３１と、ＲＡＳ（Reliability  Availability  Serviceability）監視部３２と、評価値演算部３３とを備える。デバイス監視部３１は、処理部２０を構成するデバイスの状態を監視する。処理部２０を構成するデバイスには、ＣＰＵ（Central  Processing  Unit）、ＨＤＤ（Hard  Disk  Drive）、およびメモリが含まれる。ＣＰＵ、メモリ、およびＨＤＤは、後述する図１０のプロセッサ１０１、メモリ１０２、およびＨＤＤ１０３である。メモリは、ＣＰＵがプログラムを実行する際にデータを一時的に記憶するＣＰＵの作業領域である。
【００２８】
デバイス監視部３１は、ＣＰＵ状態検出部３４と、ＨＤＤ状態検出部３５と、メモリ状態検出部３６とを備え、処理部２０を構成するデバイスの性能の低下度合いを監視することができる。ＣＰＵ状態検出部３４は、ＣＰＵの状態が正常状態、注意状態、および警告状態の３つの状態のうちいずれであるかを検出する。警告状態は、注意状態よりも悪い状態であるが、ＣＰＵが動作していない故障状態よりも良い状態である。
【００２９】
ＣＰＵ状態検出部３４は、ＣＰＵの使用率に基づいてＣＰＵの状態を検出することができる。ＣＰＵの使用率は、単位時間あたりにＣＰＵが何らかの処理を行っている時間の割合を意味し、ＣＰＵの負荷率とも呼ばれる。ＣＰＵの使用率が高いほどＣＰＵの負荷が大きくなり、ＣＰＵの処理速度が遅くなってＣＰＵの処理が遅延する可能性が高くなる。ＣＰＵ状態検出部３４は、ＣＰＵの使用率が高くなるほどＣＰＵの状態が悪いと判定する。
【００３０】
具体的には、ＣＰＵ状態検出部３４は、ＣＰＵの使用率が第１閾値Ｒｔｈ１未満である場合、ＣＰＵが正常状態であると判定し、ＣＰＵの使用率が第１閾値Ｒｔｈ１以上かつ第２閾値Ｒｔｈ２未満である場合にＣＰＵが注意状態であると判定する。また、ＣＰＵ状態検出部３４は、ＣＰＵの使用率が第２閾値Ｒｔｈ２以上である場合、ＣＰＵが警告状態であると判定する。
【００３１】
また、ＣＰＵ状態検出部３４は、ＣＰＵが動作しない場合、または、ＣＰＵの使用率が第２閾値Ｒｔｈ２よりも高い第３閾値Ｒｔｈ３以上である状態が継続した場合に、ＣＰＵが故障状態であることを検出することもできる。
【００３２】
ＨＤＤ状態検出部３５は、ＳＭＡＲＴ(Self-Monitoring  Analysis  and  Reporting  Technology)情報をＨＤＤから取得し、取得したＳＭＡＲＴ情報に基づいて、ＨＤＤの状態を検出する。ＳＭＡＲＴ情報には、ＣＰＵによるＨＤＤからのデータの読み込み時のエラー割合、スループット能力値、通算通電時間、ＨＤＤの全体的な処理能力値、およびＨＤＤの温度といった情報が含まれる。
【００３３】
ＨＤＤ状態検出部３５は、ＳＭＡＲＴ情報に基づいて、ＨＤＤの状態が正常状態、注意状態、および警告状態の３つの状態のうちいずれであるかを検出する。ＨＤＤ状態検出部３５は、ＳＭＡＲＴ情報を構成する各情報に重み付けを行い、重み付け後の値を合算することで、ＨＤＤの性能の劣化状態を数値化することができる。
【００３４】
ＨＤＤ状態検出部３５は、演算した数値に基づいて、ＣＰＵの場合と同様に、ＨＤＤの状態を３つの状態のいずれであるかを判定する。なお、ＨＤＤの性能は、エラー割合が高いほど悪くなり、通算通電時間が長いほど悪くなり、スループット能力値が下がるほど悪くなる。また、ＨＤＤ状態検出部３５は、ＨＤＤが故障して動作しなくなった場合、ＨＤＤが故障状態であることを検出することができる。
【００３５】
メモリ状態検出部３６は、メモリの状態を検出する。メモリ状態検出部３６は、メモリの使用率および故障セクタの割合に基づいて、メモリの状態を検出することができる。メモリの使用率は、メモリの記憶容量全体のうちＣＰＵが使用しているメモリの割合を意味する。
【００３６】
メモリ状態検出部３６は、メモリの使用率と故障セクタの割合とに重み付けを行い、重み付け後の値を合算することで、メモリの状態を数値化することができる。メモリ状態検出部３６は、演算した数値に基づいて、ＣＰＵの場合と同様に、メモリの状態を３つの状態のいずれであるかを判定することができる。また、メモリ状態検出部３６は、メモリが動作しなくなった場合、メモリが故障状態であることを検出することができる。
【００３７】
ＲＡＳ監視部３２は、処理部２０の温度、処理部２０の電源電圧、およびファン１２の状態を監視する。ＲＡＳ監視部３２は、温度状態検出部３７と、電圧状態検出部３８と、ファン状態検出部３９とを備える。
【００３８】
温度状態検出部３７は、処理部２０の温度状態を検出する。温度状態検出部３７は、処理部２０の温度Ｔｃが高いほど処理部２０の温度状態が悪いと判定する。具体的には、温度状態検出部３７は、処理部２０の温度Ｔｃが第１閾値Ｔｃｔｈ１未満である場合、処理部２０の温度状態が正常状態であると判定し、処理部２０の温度Ｔｃが第１閾値Ｔｃｔｈ１以上かつ第２閾値Ｔｃｔｈ２未満である場合に処理部２０の温度状態が注意状態であると判定する。
【００３９】
また、温度状態検出部３７は、処理部２０の温度Ｔｃが第２閾値Ｔｃｔｈ２以上かつ第３閾値Ｔｃｔｈ３未満である場合、処理部２０の温度状態が警告状態であると判定し、処理部２０の温度Ｔｃが第３閾値Ｔｃｔｈ３以上である場合、処理部２０の温度状態が故障状態であると判定する。第３閾値Ｔｃｔｈ３は、処理装置２の定格温度Ｔｏ以上に設定される。
【００４０】
電圧状態検出部３８は、処理部２０に供給される電源電圧Ｖｃの状態を検出する。電圧状態検出部３８は、処理部２０に供給される電源電圧Ｖｃが低いほど電源電圧Ｖｃの状態が悪いと判定する。具体的には、電圧状態検出部３８は、電源電圧Ｖｃが第１閾値Ｖｃｔｈ１以上である場合、電源電圧Ｖｃの状態が正常状態であると判定し、電源電圧Ｖｃが第１閾値Ｖｃｔｈ１未満かつ第２閾値Ｖｃｔｈ２以上である場合に電源電圧Ｖｃの状態が注意状態であると判定する。
【００４１】
また、電圧状態検出部３８は、電源電圧Ｖｃが第２閾値Ｖｃｔｈ２未満かつ第３閾値Ｖｃｔｈ３以上である場合、電源電圧Ｖｃの状態が警告状態であると判定し、電源電圧Ｖｃが第３閾値Ｖｃｔｈ３未満である場合、電源電圧Ｖｃの状態が故障状態であると判定する。
【００４２】
ファン状態検出部３９は、ファン１２の状態を検出する。ファン状態検出部３９は、ファン１２の停止時間Ｔｓが長いほどファン１２の状態が悪いと判定することができる。ファン１２の停止時間Ｔｓとは、稼動すべきファン１２が何らかの要因で停止している時間であり、ファン１２の継続停止時間または単位時間当たりのファン１２の停止時間である。
【００４３】
ファン状態検出部３９は、ファン１２の停止時間Ｔｓが第１閾値Ｔｓｔｈ１未満である場合にファン１２の状態が正常状態であると判定し、ファン１２の停止時間Ｔｓが第１閾値Ｔｓｔｈ１以上かつ第２閾値Ｔｓｔｈ２未満である場合にファン１２の状態が注意状態であると判定する。また、ファン状態検出部３９は、ファン１２の停止時間Ｔｓが第２閾値Ｔｓｔｈ２以上かつ第３閾値Ｔｓｔｈ３未満である場合にファン１２の状態が警告状態であると判定する。
【００４４】
ファン状態検出部３９は、ファン１２の停止時間Ｔｓが第３閾値Ｔｓｔｈ３以上である場合にファン１２の状態が故障状態であると判定する。なお、ファン状態検出部３９は、停止時間Ｔｓに加えて、または、停止時間Ｔｓに代えて、ファン１２の累積稼動時間が長いほどファン１２の状態が悪いと判定することもできる。
【００４５】
評価値演算部３３は、監視部２１による監視結果に基づいて、評価値Ｓｓを演算する。評価値Ｓｓは、上述したように、処理部２０の状態が現用系の処理を実行できなくなる状態に近づくほど小さくなるように設定される。
【００４６】
評価値演算部３３は、第１のスコア判定テーブル５０と、第２のスコア判定テーブル５１を有しており、第１のスコア判定テーブル５０と第２のスコア判定テーブル５１とに基づいて、評価値Ｓｓを算出することができる。
【００４７】
図３は、第１のスコア判定テーブル５０の一例を示す図である。図３に示すように、第１のスコア判定テーブル５０は、ＣＰＵの状態、ＨＤＤの状態、およびメモリの状態と３つのスコアＳａ，Ｓｂ，Ｓｃとの関係を規定するテーブルである。
【００４８】
図３に示す例では、ＣＰＵの状態が正常状態である場合、「１００」の値が割り当てられ、ＣＰＵの状態が注意状態である場合、「６０」の値が割り当てられ、ＣＰＵの状態が警告状態である場合、「３０」の値が割り当てられる。また、ＣＰＵの重み付けとして、「１．０」が設定される。
【００４９】
ＣＰＵのスコアＳａは、ＣＰＵの状態とＣＰＵの重み付けとに基づいて演算される。ＣＰＵの状態が正常状態である場合、Ｓａ＝１００×１．０＝１００であり、ＣＰＵの状態が注意状態である場合、Ｓａ＝６０×１．０＝６０であり、ＣＰＵの状態が警告状態である場合、Ｓａ＝３０×１．０＝３０である。
【００５０】
同様に、ＨＤＤのスコアＳｂは、ＨＤＤの状態と重み付けとに基づいて演算される。ＨＤＤの状態が正常状態である場合、Ｓｂ＝１００×０．５＝５０であり、ＨＤＤの状態が注意状態である場合、Ｓｂ＝５５×０．５＝２７．５であり、ＨＤＤの状態が警告状態である場合、Ｓｂ＝２０×０．５＝１０である。
【００５１】
同様に、メモリのスコアＳｃは、メモリの状態と重み付けとに基づいて演算される。メモリの状態が正常状態である場合、Ｓｃ＝１００×０．５＝５０であり、メモリの状態が注意状態である場合、Ｓｃ＝５０×０．５＝２５であり、メモリの状態が警告状態である場合、Ｓｃ＝１０×０．５＝５である。
【００５２】
図４は、第２のスコア判定テーブル５１の一例を示す図である。図４に示すように、第２のスコア判定テーブル５１は、処理部２０の温度状態、電源電圧Ｖｃの状態、およびファン１２の状態と３つのスコアＳｄ，Ｓｅ，Ｓｆとの関係を規定するテーブルである。
【００５３】
温度のスコアＳｄは、上述したスコアＳａ〜Ｓｃの場合と同様に、温度状態と重み付けとに基づいて演算される。温度の状態が正常状態である場合、Ｓｄ＝１００×０．７５＝７５であり、温度の状態が注意状態である場合、Ｓｄ＝６０×０．７５＝４５であり、温度の状態が警告状態である場合、Ｓｄ＝３０×０．７５＝２２．５である。
【００５４】
同様に、電源電圧ＶｃのスコアＳｅは、電源電圧Ｖｃの状態と重み付けとに基づいて演算される。電源電圧Ｖｃの状態が正常状態である場合、Ｓｅ＝１００×１．０＝１００であり、電源電圧Ｖｃの状態が注意状態である場合、Ｓｅ＝７０×１．０＝７０であり、電源電圧Ｖｃの状態が警告状態である場合、Ｓｅ＝４０×１．０＝４０である。
【００５５】
同様に、ファン１２のスコアＳｆは、ファン１２の状態と重み付けとに基づいて演算される。ファン１２の状態が正常状態である場合、Ｓｆ＝１００×０．５＝５０であり、ファン１２の状態が注意状態である場合、Ｓｆ＝５０×０．５＝２５であり、ファン１２の状態が警告状態である場合、Ｓｆ＝１０×０．５＝５である。
【００５６】
評価値演算部３３は、下記式（１）に示すように、上述した６つのスコアＳａ〜Ｓｆの合計値であるスコア合計値Ｓｔを演算する。
Ｓｔ＝Ｓａ＋Ｓｂ＋Ｓｃ＋Ｓｄ＋Ｓｅ＋Ｓｆ    ・・・（１）
【００５７】
そして、評価値演算部３３は、下記式（２）に示すように、正常状態である場合のスコアＳａ〜Ｓｆの合計値である正常時合計Ｓｔｎでスコア合計値Ｓｔを除算することで、評価値Ｓｓを求める。なお、第１のスコア判定テーブル５０および第２のスコア判定テーブル５１が図３および図４に示す状態である場合、Ｓｔｎ＝１００＋５０＋５０＋７５＋１００＋５０＝４２５である。
Ｓｓ＝Ｓｔ／Ｓｔｎ      ・・・（２）
【００５８】
各スコア判定テーブル５０，５１は、外部からの設定要求があった場合に設定要求に含まれる値が監視部２１によって設定される。これにより、各スコア判定テーブル５０，５１を容易に更新することができる。
【００５９】
また、各スコア判定テーブル５０，５１は、評価値演算部３３に複数設けられてもよく、評価値演算部３３は、時間帯、季節、および湿度のうち少なくとも１つによって各スコア判定テーブル５０，５１を切り替えることで、評価値Ｓｓの判定精度をより向上させることができる。
【００６０】
なお、評価値Ｓｓの算出は、上述した演算方法に限定されない。検出部３４〜３９においてスコアＳａ〜Ｓｆを演算することができる。この場合、評価値演算部３３は、検出部３４〜３９から通知されるスコアＳａ〜Ｓｆに基づいて評価値Ｓｓを演算することもできる。
【００６１】
また、監視部２１は、上述した処理の一部を行うこともできる。監視部２１は、６つのスコアＳａ〜Ｓｆのうち５つ以下のスコアを用いて評価値Ｓｓを演算することもできる。また、各スコア判定テーブル５０，５１において、上述したような正常状態、注意状態、および警告状態の３つの状態に各々異なる値を割り当てるものでなくてもよく、４つ以上の状態に各々異なる値を割り当てることもできる。
【００６２】
評価値演算部３３は、定期的に評価値Ｓｓを算出しており、評価値Ｓｓを算出する毎に、算出した評価値Ｓｓを管理部２２へ通知することができる。また、評価値演算部３３は、算出した評価値Ｓｓを他の処理装置２へ通知することができる。具体的には、処理装置２１の評価値演算部３３は、算出した評価値Ｓｓを通信部１０およびネットワーク４を介して処理装置２２へ通知することができる。また、処理装置２２の評価値演算部３３は、算出した評価値Ｓｓを通信部１０およびネットワーク４を介して処理装置２１へ通知することができる。
【００６３】
また、監視部２１は、ＣＰＵの状態、ＨＤＤの状態、メモリの状態、処理部２０の温度状態、電源電圧Ｖｃの状態、およびファン１２の状態が上述した故障状態になった場合、故障状態を示す情報を系切替部４１へ通知することができる。
【００６４】
図２に示す制御部１３の管理部２２は、系切替部４１と、再起動部４２とを備える。系切替部４１は、監視部２１から通知される故障状態を示す情報、監視部２１から通知される評価値Ｓｓ、および他の処理装置２から通知される評価値Ｓｓに基づいて、現用系の処理を実行している処理部２０の設定を待機系へ変更する。また、系切替部４１は、他の処理装置２から系切替要求があった場合に、処理部２０の設定を待機系から現用系へ変更する。
【００６５】
ここで、説明の便宜上、処理部２０が現用系に設定されている処理装置２を現用系の処理装置２とし、処理部２０が待機系に設定されている処理装置２を待機系の処理装置２とする。現用系の処理装置２の監視部２１、系切替部４１、および再起動部４２を現用系の監視部２１、系切替部４１、および再起動部４２とする。待機系の処理装置２の監視部２１、系切替部４１、および再起動部４２を待機系の監視部２１、系切替部４１、および再起動部４２とする。
【００６６】
現用系の系切替部４１は、現用系の監視部２１から故障状態を示す情報が通知された場合に、現用系に設定された処理部２０の設定を待機系へ変更する系切り替えを行うことができる。これにより、現用系に設定された処理部２０が現用系の処理を継続できない状況になった場合に、系切り替えを行うことができる。
【００６７】
現用系の系切替部４１は、系切り替えを行う場合、待機系の系切替部４１へ系切替要求を通信部１０およびネットワーク４を介して送信する。待機系の系切替部４１は、待機系に設定されている処理部２０を現用系に切り替える処理を実行し、切り替え処理が終了した場合に、現用系の系切替部４１へ切替応答を送信する。現用系の系切替部４１は、切替応答を受信した後、現用系に設定されている処理部２０を待機系へ切り替えることで、系切り替えを完了する。
【００６８】
また、現用系の系切替部４１は、現用系の監視部２１から通知される評価値Ｓｓと、待機系の監視部２１から通知される評価値Ｓｓとに基づいて、系切り替えを行うことができる。以下においては、現用系の監視部２１から通知される評価値Ｓｓを第１の評価値Ｓｓ１とし、待機系の監視部２１から通知される評価値Ｓｓを第２の評価値Ｓｓ２とする。
【００６９】
系切替部４１は、第１の閾値Ｓｔｈ１の情報および第２の閾値Ｓｔｈ２の情報を記憶しており、第１の評価値Ｓｓ１、第２の評価値Ｓｓ２、第１の閾値Ｓｔｈ１、および第２の閾値Ｓｔｈ２に基づいて、上述した系切り替えを行うことができる。第１の閾値Ｓｔｈ１と第２の閾値Ｓｔｈ２との関係は、Ｓｔｈ１＞Ｓｔｈ２である。
【００７０】
図５は、現用系の系切替部４１による系切替条件と第１の評価値Ｓｓ１との関係を示す図である。図５に示すように、現用系の系切替部４１は、第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１以上である場合、系切り替えを行わず、現用系の処理を実行している処理部２０の設定を維持する。
【００７１】
また、現用系の系切替部４１は、第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１未満である場合に、系切り替えを行う。これにより、処理部２０の状態が現用系の処理を実行できなくなる状態になる前に系切り替えを行うことができ、処理部２０を故障状態になった後に系切り替えを行う場合に比べて、現用系の処理への影響を低減することができる。
【００７２】
現用系の系切替部４１は、第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１未満かつ第２の閾値Ｓｔｈ２以上である場合、指定時間に系切り替えを行う。指定時間は、予め設定された時間であり、現用系の処理が実行されない時間帯または現用系の処理が少ない時間帯の中から指定される。これにより、処理部２０の状態が現用系の処理を実行できなくなる可能性が高くない状態では、現用系の処理への影響が少ない時間帯で系切り替えを行うことができ、現用系の処理への影響を低減することができる。したがって、二重化システム１の安定性を向上させることができる。
【００７３】
また、現用系の系切替部４１は、第１の評価値Ｓｓ１が第２の閾値Ｓｔｈ２未満である場合、指定時間であるか否かにかかわらず、直ちに系切り替えを行う。これにより、処理部２０の状態が現用系の処理を実行できなくなる可能性が高い状態では、直ちに系切り替えを行うことができ、現用系の処理への影響を低減することができる。したがって、二重化システム１の安定性を向上させることができる。
【００７４】
なお、系切替部４１は、Ｓｓ１＜Ｓｔｈ１である場合であっても、第２の評価値Ｓｓ２が第１の閾値Ｓｔｈ１以上でない場合には、系切り替えを行わないことができる。また、系切替部４１は、Ｓｓ１＜Ｓｔｈ１である場合であっても、第１の評価値Ｓｓ１が第２の評価値Ｓｓ２よりも小さく且つ第１の評価値Ｓｓ１と第２の評価値Ｓｓ２との差ΔＳｓが第３の閾値Ｓｔｈ３未満である場合には、系切り替えを行わないことができる。これにより、待機系の処理部２０の状態が悪い状態である場合に、系切り替えが行われることを抑制でき、二重化システム１の安定性を向上させることができる。
【００７５】
図２に示す再起動部４２は、待機系に設定された処理部２０を再起動する。処理部２０の再起動には、処理部２０において動作するＯＳの再起動またはＯＳ上で動作するプログラムの再起動である。なお、処理部２０の再起動は、ＯＳおよびＯＳ上で動作するプログラムのうち少なくとも一つの初期化処理を含んでもよい。
【００７６】
再起動部４２は、系切替部４１によって処理部２０の設定が現用系から待機系へ切り替えられた後に、待機系に切り替えられた処理部２０を再起動する。再起動により処理部２０の状態を正常な状態に戻して待機系へ変更された処理部２０を現用系に切り替え可能な状態にすることができ、二重化システム１の安定性を向上させることができる。
【００７７】
また、Ｓｔｈ１＞Ｓｓ≧Ｓｔｈ２の場合に、指定時間に系切り替えが行われるため、再起動部４２は、系切り替え後に再起動を行うことで、現用系の処理が実行されない時間帯または現用系の処理が少ない時間帯に再起動を行うことができる。したがって、指定時間に系切り替えが行われた直後に再度系切り替えが必要になった場合であっても、現用系の処理への影響を抑えることができ、二重化システム１の安定性を向上させることができる。
【００７８】
つづいて、処理装置２における監視部２１および管理部２２の動作を、フローチャートを用いて説明する。図６は、実施の形態１にかかる監視部２１および管理部２２の処理の一例を示すフローチャートであり、図６のフローチャートに記載された一連の処理が繰り返し実行される。
【００７９】
図６に示すように、監視部２１は、デバイス監視情報を生成し（ステップＳ１０）、ＲＡＳ監視情報を生成する（ステップＳ１１）。デバイス監視情報は、上述したＣＰＵの状態、ＨＤＤの状態、およびメモリの状態を示す情報であり、ＲＡＳ監視情報は、上述した処理部２０の温度状態、電源電圧Ｖｃの状態、およびファン１２の状態を示す情報である。監視部２１は、生成したデバイス監視情報およびＲＡＳ監視情報に基づいて、上述した評価値Ｓｓを演算する（ステップＳ１２）。
【００８０】
次に、管理部２２は、処理部２０が現用系に設定されているか否かを判定する（ステップＳ１３）。管理部２２は、処理部２０が現用系に設定されていると判定した場合（ステップＳ１３：Ｙｅｓ）、現用系管理処理を実行して（ステップＳ１４）、図６に示す処理を終了する。ステップＳ１４の処理は、図７に示すステップＳ２０〜Ｓ３０の処理であり、後で詳述する。
【００８１】
また、管理部２２は、処理部２０が現用系に設定されていないと判定した場合（ステップＳ１３：Ｎｏ）、待機系管理処理を実行し（ステップＳ１５）、図６に示す処理を終了する。ステップＳ１５の処理は、図９に示すステップＳ４０〜Ｓ５０の処理であり、後で詳述する。
【００８２】
図７は、図６に示すステップＳ１４の処理の一例を示すフローチャートである。図７に示すように、管理部２２は、待機系の処理装置２から評価値要求を受信したか否かを判定する（ステップＳ２０）。管理部２２は、評価値要求を受信したと判定した場合（ステップＳ２０：Ｙｅｓ）、通信部１０およびネットワーク４を介して待機系の処理装置２へ第１の評価値Ｓｓ１を送信する（ステップＳ２１）。
【００８３】
ステップＳ２１の処理後、管理部２２は、待機系の処理装置２から系切替要求を受信したか否かを判定する（ステップＳ２２）。管理部２２は、系切替要求を受信したと判定した場合（ステップＳ２２：Ｙｅｓ）、処理部２０の設定を現用系から待機系へ切り替え（ステップＳ２３）、切替応答を系切替要求の送信元の処理装置２へ送信する（ステップＳ２４）。なお、系切り替えは、現用系の処理が中断しないようにまたは現用系の処理の中断が短時間になるように現用系の処理部２０と待機系の処理部２０とで系切り替えの処理が行われる。
【００８４】
管理部２２は、評価値要求を受信していないと判定した場合（ステップＳ２０：Ｎｏ）、待機系の処理装置２から第２の評価値Ｓｓ２を取得する（ステップＳ２５）。次に、管理部２２は、系切替条件を満たすか否かを判定する（ステップＳ２６）。ステップＳ２６の処理は、図８に示すステップＳ３１〜Ｓ３９の処理であり、後で詳述する。
【００８５】
管理部２２は、系切替条件を満たすと判定した場合（ステップＳ２６：Ｙｅｓ）、通信部１０およびネットワーク４を介して待機系である他の処理装置２へ系切替要求を送信する（ステップＳ２７）。つづいて、管理部２２は、他の処理装置２から切替応答を受信したか否かを判定する（ステップＳ２８）。
【００８６】
管理部２２は、切替応答を受信していない場合（ステップＳ２８：Ｎｏ）、ステップＳ２８の処理を繰り返す。管理部２２は、切替応答を受信した場合（ステップＳ２８：Ｙｅｓ）、処理部２０の設定を現用系から待機系へ切り替え（ステップＳ２９）、処理部２０の再起動を実行する（ステップＳ３０）。なお、以下において、ステップＳ３０の再起動を系切替後再起動と記載する場合がある。
【００８７】
図８は、図７に示すステップＳ２６の処理の一例を示すフローチャートである。図８に示すように、管理部２２は、第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１以上であるか否かを判定する（ステップＳ３１）。管理部２２は、第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１以上ではないと判定した場合（ステップＳ３１：Ｎｏ）、第２の評価値Ｓｓ２が第１の閾値Ｓｔｈ１以上であるか否かを判定する（ステップＳ３２）。
【００８８】
管理部２２は、第２の評価値Ｓｓ２が第１の閾値Ｓｔｈ１以上ではないと判定した場合（ステップＳ３２：Ｎｏ）、第２の評価値Ｓｓ２が第２の閾値Ｓｔｈ２以上であるか否かを判定する（ステップＳ３３）。管理部２２は、第２の評価値Ｓｓ２が第２の閾値Ｓｔｈ２以上であると判定した場合（ステップＳ３３：Ｙｅｓ）、第１の評価値Ｓｓ１と第２の評価値Ｓｓ２との評価値差ΔＳｓが第３の閾値Ｓｔｈ３以上であるか否かを判定する（ステップＳ３４）。なお、ΔＳｓ＝Ｓｓ２−Ｓｓ１である。
【００８９】
管理部２２は、Ｓｓ２≧Ｓｔｈ１であると判定した場合（ステップＳ３２：Ｙｅｓ）、または、ΔＳｓ≧Ｓｔｈ３であると判定した場合（ステップＳ３４：Ｙｅｓ）、第１の評価値Ｓｓ１が第２の閾値Ｓｔｈ２以上であるか否かを判定する（ステップＳ３７）。
【００９０】
管理部２２は、Ｓｓ１≧Ｓｔｈ２であると判定した場合（ステップＳ３７：Ｙｅｓ）、予め設定された指定時間が到来しているか否かを判定する（ステップＳ３８）。管理部２２は、Ｓｓ１≧Ｓｔｈ２ではないと判定した場合（ステップＳ３７：Ｎｏ）、または、予め設定された指定時間が到来していると判定した場合（ステップＳ３８：Ｙｅｓ）、系切替条件を満たすと判定する（ステップＳ３９）。
【００９１】
管理部２２は、Ｓｓ１≧Ｓｔｈ１であると判定した場合（ステップＳ３１：Ｙｅｓ）、Ｓｓ２≧Ｓｔｈ２ではないと判定した場合（ステップＳ３３：Ｎｏ）、ΔＳｓ≧Ｓｔｈ３ではないと判定した場合（ステップＳ３４：Ｎｏ）、指定時間が到来していないと判定した場合（ステップＳ３８：Ｎｏ）、系切替条件を満たさないと判定する（ステップＳ３５）。
【００９２】
図９は、図６に示すステップＳ１５の処理の一例を示すフローチャートである。図９に示すように、管理部２２は、系切替後再起動の直後であるか否かを判定する（ステップＳ４０）。管理部２２は、系切替後再起動の直後ではないと判定した場合（ステップＳ４０：Ｎｏ）、通信部１０およびネットワーク４を介して現用系の処理装置２へ第２の評価値Ｓｓ２を送信する（ステップＳ４１）。
【００９３】
つづいて、管理部２２は、現用系の処理装置２から系切替要求を受信したか否かを判定する（ステップＳ４２）。系切替要求を受信したと判定した場合（ステップＳ４２：Ｙｅｓ）、処理部２０を待機系から現用系へ切り替えを行い（ステップＳ４３）、系切替要求の送信元の処理装置２へ切替応答を送信する（ステップＳ４４）。
【００９４】
管理部２２は、ステップＳ４０において、系切替後再起動の直後であると判定した場合（ステップＳ４０：Ｙｅｓ）、現用系の処理装置２へ評価値要求を行い、現用系の処理装置２から第１の評価値Ｓｓ１を取得する（ステップＳ４５）。そして、管理部２２は、ステップＳ２６の処理と同様に、系切替条件を満たすか否かを判定する（ステップＳ４６）。
【００９５】
管理部２２は、系切替条件を満たすと判定した場合（ステップＳ４６：Ｙｅｓ）、処理部２０の現用系へ切り替えの準備を行い（ステップＳ４７）、通信部１０およびネットワーク４を介して現用系の処理装置２へ系切替要求を送信する（ステップＳ４８）。つづいて、管理部２２は、系切替要求の送信先の処理装置２から切替応答を受信したか否かを判定する（ステップＳ４９）。管理部２２は、切替応答を受信していないと判定した場合（ステップＳ４９：Ｎｏ）、ステップＳ４９の処理を繰り返す。
【００９６】
管理部２２は、切替応答を受信したと判定した場合（ステップＳ４９：Ｙｅｓ）、処理部２０の設定を現用系へ切り替えて、処理部２０に現用系の処理の実行を開始させる（ステップＳ５０）。管理部２２は、ステップＳ４４の処理が終了した場合、ステップＳ５０の処理が終了した場合、系切替要求を受信していないと判定した場合（ステップＳ４２：Ｎｏ）、系切替条件を満たさないと判定した場合（ステップＳ４６：Ｎｏ）、図９に示す処理を終了する。
【００９７】
図１０は、実施の形態１にかかる処理装置２のハードウェア構成の一例を示す図である。図１０に示すように、処理装置２は、プロセッサ１０１と、メモリ１０２と、ＨＤＤ１０３と、インタフェース回路１０４とを備えるコンピュータである。プロセッサ１０１、メモリ１０２、ＨＤＤ１０３、およびインタフェース回路１０４は、バス１０５によって互いにデータの送受信が可能である。通信部１０は、インタフェース回路１０４によって実現される。
【００９８】
プロセッサ１０１は、ＨＤＤ１０３に記憶されたＯＳおよび処理プログラムを読み出して実行することによって、処理部２０、監視部２１、および管理部２２の機能を実行する。なお、プロセッサ１０１は、磁気ディスク、ＵＳＢ（Universal  Serial  Bus）メモリ、光ディスク、コンパクトディスク、およびＤＶＤ（Digital  Versatile  Disc）のうち一つ以上の記憶媒体から不図示のインタフェースを介してＯＳおよび処理プログラムを読み出しＨＤＤ１０３に記憶して実行することもできる。
【００９９】
プロセッサ１０１は、処理回路の一例であり、ＣＰＵ、ＤＳＰ（Digital  Signal  Processer）、およびシステムＬＳＩ（Large  Scale  Integration）のうち一つ以上を含む。メモリ１０２は、プロセッサ１０１の作業領域として用いられる記憶領域であり、ＲＡＭ（Random  Access  Memory）に代表される不揮発性または揮発性の半導体メモリである。
【０１００】
以上のように、実施の形態１にかかる処理装置２は、処理部２０と、監視部２１と、系切替部４１と、再起動部４２とを備える。処理部２０は、現用系の処理を実行する。監視部２１は、処理部２０の状態を監視する。系切替部４１は、監視部２１の監視結果に基づいて、処理部２０の設定を現用系と待機系との間で切り替える。再起動部４２は、系切替部４１によって処理部２０が待機系に切り替えられた場合、または、監視部２１の監視結果が再起動条件を満たす場合に、処理部２０を再起動する。処理部２０の再起動によって、状態が悪くなった処理部２０の状態が正常な状態に戻る可能性を増加させることができ、二重化システム１の安定性を向上させることができる。
【０１０１】
また、監視部２１は、処理部２０の状態に基づく第１の評価値Ｓｓ１を演算すると共に、他の処理装置２における処理部２０の状態に基づく第２の評価値Ｓｓ２を他の処理装置２から取得する。系切替部４１は、第１の評価値Ｓｓ１と第２の評価値Ｓｓ２とに基づいて、現用系と待機系との間で処理部２０の設定を切り替える。現用系の評価値と待機系の評価値を用いることで、現用系の処理部２０の状態と待機系の処理部２０の状態とを容易かつ適切に比較することができ、二重化システム１の安定性を向上させることができる。
【０１０２】
また、系切替部４１は、処理部２０が現用系として設定されている場合に、第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１未満である場合に、処理部２０の設定を現用系から待機系へ切り替える。再起動部４２は、系切替部４１によって処理部２０の設定が現用系から待機系へ切り替えられた後に、処理部２０を再起動する。第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１未満である場合に、処理部２０の設定を現用系から待機系へ切り替えることから、第１の閾値Ｓｔｈ１を適切に設定することで、現用系の処理への影響を抑えつつ、系切り替えを行うことができる。
【０１０３】
また、系切替部４１は、処理部２０が現用系として設定されている状態で、第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１未満であり且つ第２の閾値Ｓｔｈ２以上であると判定した場合、予め設定された時間に到達した場合に処理部２０の設定を現用系から待機系へ切り替える。予め設定された時間に系切り替えを行うことから、処理部２０の状態が現用系の処理を実行できなくなる可能性がそれほど高くない状態においては、現用系の処理への影響が少ない時間帯で系切り替えを行うことができ、現用系の処理への影響を低減することができる。
【０１０４】
また、系切替部４１は、処理部２０が現用系として設定されている状態で、第１の評価値Ｓｓ１が第２の閾値Ｓｔｈ２未満であると判定した場合、予め設定された時間に到達したか否かにかかわらず処理部２０の設定を現用系から待機系へ切り替える。これにより、処理部２０の状態が現用系の処理を実行できなくなる可能性が高い状態では、すぐに系切り替えを行うことができ、現用系の処理への影響を低減することができる。
【０１０５】
また、系切替部４１は、処理部２０が現用系に設定されている場合、第１の評価値Ｓｓ１が第２の評価値Ｓｓ２よりも低く第１の評価値Ｓｓ１と第２の評価値Ｓｓ２との差ΔＳｓが第３の閾値Ｓｔｈ３以上である場合に、処理部２０の設定を現用系から待機系へ切り替える。これにより、現用系の処理装置２と評価値Ｓｓにあまり差が無い待機系の処理装置２へ系切り替えが行われることを抑制することができ、系切り替えが頻繁に行われることを防止し、二重化システム１の安定性を向上させることができる。
【０１０６】
また、監視部２１は、処理部２０を構成するデバイス、処理部２０の電源電圧、および
処理部２０の温度の少なくとも１つの状態を処理部２０の状態として監視する。
【０１０７】
実施の形態２．
実施の形態２の二重化システムは、処理装置２の再起動部４２が第１の評価値Ｓｓ１と第２の評価値Ｓｓ２とに基づいて、再起動を実行する処理が追加される点で、実施の形態１の二重化システム１と異なる。なお、実施の形態２における二重化システムの処理装置は、再起動部の処理が一部異なる以外は、実施の形態１における処理装置２と同様の構成かつ同様の処理を行うことから、同一符号を用いることとし、実施の形態１と異なる処理について主に説明する。
【０１０８】
実施の形態２にかかる二重化システム１は、待機系に設定されている処理装置２の再起動部４２が、第２の評価値Ｓｓ２に基づいて、待機系の処理部２０を再起動する。
【０１０９】
具体的には、待機系の再起動部４２は、第２の評価値Ｓｓ２が第４の閾値Ｓｔｈ４未満である場合に、待機系の処理部２０を再起動することができる。これにより、待機系の処理部２０が現用系へ系切り替えされたとしたら現用系の処理を実行できなくなる可能性がある場合に、待機系の再起動によって、処理部２０の状態が正常な状態に回復する可能性を高めることができ、二重化システム１の安定性を向上させることができる。
【０１１０】
また、待機系の再起動部４２は、第２の評価値Ｓｓ２が第４の閾値Ｓｔｈ４未満である場合であっても、第１の評価値Ｓｓ１が第２の評価値Ｓｓ２よりも大きく且つ第１の評価値Ｓｓ１と第２の評価値Ｓｓ２との差ΔＳｓが第５の閾値Ｓｔｈ５以上でなければ、待機系の処理部２０を再起動させないこともできる。これにより、現用系の処理部２０の状態がよい場合に待機系の処理部２０の再起動を行うことができる。したがって、現用系の処理部２０と待機系の処理部２０とが同時期に再起動することを回避することができ、二重化システム１の安定性を向上させることができる。
【０１１１】
待機系の再起動部４２は、第１の評価値Ｓｓ１が第１の閾値Ｓｔｈ１未満かつ第２の閾値Ｓｔｈ２以上であって、かつ、指定時間までの期間が予め設定された期間Ｔ１よりも短い場合、第２の評価値Ｓｓ２が第４の閾値Ｓｔｈ４未満でであっても、待機系の処理部２０を再起動させないこともできる。これにより、現用系の処理部２０と待機系の処理部２０とが同時期に再起動することを回避することができ、二重化システム１の安定性を向上させることができる。
【０１１２】
図１１は、実施の形態２にかかる監視部２１および管理部２２の処理の一例を示すフローチャートである。図１１に示すステップＳ４０〜Ｓ５０は、図９のステップＳ４０〜Ｓ５０の処理であるため、説明を省略する。
【０１１３】
図１１に示すように、管理部２２は、系切替要求を受信していないと判定した場合（ステップＳ４２：Ｎｏ）、現用系の処理装置２から第１の評価値Ｓｓ１を取得する（ステップＳ５１）。そして、管理部２２は、第２の評価値Ｓｓ２、または、第１の評価値Ｓｓ１および第２の評価値Ｓｓ２に基づき、再起動条件を満たすか否かを判定する（ステップＳ５２）。
【０１１４】
管理部２２は、再起動条件を満たすと判定した場合（ステップＳ５２：Ｙｅｓ）、処理部２０の再起動を実行する（ステップＳ５３）。管理部２２は、再起動条件を満たさないと判定した場合（ステップＳ５２：Ｎｏ）、図１１に示す処理を終了する。
【０１１５】
以上のように、実施の形態２にかかる処理装置２の再起動部４２は、処理部２０が待機系として設定されている場合に、第２の評価値Ｓｓ２が第４の閾値Ｓｔｈ４未満である場合に、処理部２０を再起動する。これにより、待機系の処理部２０が現用系へ系切り替えされたとしたら現用系の処理を実行できなくなる可能性がある場合に、待機系の再起動によって、処理部２０の状態が正常な状態に回復する可能性を高めることができ、二重化システム１の安定性を向上させることができる。
【０１１６】
実施の形態３．
実施の形態１，２にかかる二重化システム１は、第１の閾値Ｓｔｈ１および第２の閾値Ｓｔｈ２を用いて、系切り替え処理および再起動処理を行ったが、実施の形態３にかかる二重化システムは、第１の閾値Ｓｔｈ１および第２の閾値Ｓｔｈ２を用いない点で、実施の形態１，２の二重化システム１と異なる。なお、以下において、実施の形態１，２における処理装置２と同様の構成については、同一符号を用いて説明を省略し、実施の形態１，２と異なる処理について主に説明する。
【０１１７】
図１２は、実施の形態３にかかる二重化システム１Ａの処理装置２Ａの構成の一例を示す図である。図１２に示すように、処理装置２Ａは、通信部１０と、電源部１１と、ファン１２と、制御部１３Ａとを備える。制御部１３Ａは、処理部２０と、監視部２１と、管理部２２Ａとを備える。管理部２２Ａは、系切替部４１Ａと、再起動部４２とを備える。処理装置２Ａは、処理装置２と同様のハードウェア構成であり、図１０に示すハードウェア構成と同様の構成である。
【０１１８】
現用系の系切替部４１Ａは、第１の評価値Ｓｓ１と第２の評価値Ｓｓ２とを比較し、かかる比較結果に基づいて、系切り替え処理を実行する。具体的には、現用系の系切替部４１Ａは、第１の評価値Ｓｓ１と第２の評価値Ｓｓ２との評価値差ΔＳｓが第６の閾値Ｓｔｈ６以上である場合に、系切替条件を満たすと判定し、系切り替え処理を実行する。これにより、評価値Ｓｓが第６の閾値Ｓｔｈ６以上高い方の処理部２０が現用系として用いられることから、二重化システム１Ａの安定性を向上させることができる。なお、ΔＳｓ＝Ｓｓ２−Ｓｓ１である。
【０１１９】
また、再起動部４２は、現用系から待機系へ切り替えられた処理部２０を再起動する。かかる再起動により処理部２０の状態を正常な状態に戻して次の系切替時までに処理部２０の状態を改善することができ、二重化システム１Ａの安定性を向上させることができる。
【０１２０】
また、実施の形態３にかかる二重化システム１Ａにおいては、第２の評価値Ｓｓ２が第１の評価値Ｓｓ１よりも第６の閾値Ｓｔｈ６以上になる毎に、系切り替えが実行される。したがって、第６の閾値Ｓｔｈ６を小さく設定することで、処理部２０の状態を近づけることができ、二重化システム１Ａの安定性を向上させることができる。
【０１２１】
実施の形態３にかかる処理装置２Ａは、処理装置２と同様に、図６の処理を行うが、ステップＳ１４，Ｓ１５の処理が処理装置２と一部異なる。図１３は、実施の形態３にかかる処理装置２Ａの管理部２２Ａの現用系管理処理の一例を示すフローチャートであり、図７に対応するフローチャートである。図１３に示すステップＳ２５，Ｓ２７〜Ｓ３０は、図７に示すステップＳ２５，Ｓ２７〜Ｓ３０と同じである。図１３に示す処理では、図７に示すステップＳ２０〜Ｓ２４の処理は行われず、図１３に示すステップＳ２６Ａの処理が図７に示すステップＳ２６の処理と異なる。
【０１２２】
図１３に示すように、管理部２２Ａは、ステップＳ２６Ａにおいて、第１の評価値Ｓｓ１と第２の評価値Ｓｓ２との評価値差ΔＳｓが第６の閾値Ｓｔｈ６以上であるか否かを判定する。管理部２２Ａは、評価値差ΔＳｓが第６の閾値Ｓｔｈ６以上であると判定した場合（ステップＳ２６Ａ：Ｙｅｓ）に、処理をステップＳ２７に移行し、評価値差ΔＳｓが第６の閾値Ｓｔｈ６以上ではないと判定した場合（ステップＳ２６Ａ：Ｎｏ）に、図１３に示す処理を終了する。
【０１２３】
図１４は、実施の形態３にかかる処理装置２Ａの管理部２２Ａの待機系管理処理の一例を示すフローチャートであり、図９に対応するフローチャートである。図１４に示すステップＳ４０〜Ｓ４５，Ｓ４７〜Ｓ５０は、図９に示すステップＳ４０〜Ｓ４５，Ｓ４７〜Ｓ５０と同じであるが、図１４に示すステップＳ４６Ａの処理が図９に示すステップＳ４６の処理と異なる。
【０１２４】
図１４に示すように、管理部２２Ａは、ステップＳ４６Ａにおいて系切替条件を満たすか否かを判定するが、系切替条件は、ステップＳ２４Ａの処理と同じである。すなわち、管理部２２Ａは、評価値差ΔＳｓが第６の閾値Ｓｔｈ６以上である場合に、系切替条件を満たすと判定し（ステップＳ４６Ａ：Ｙｅｓ）、評価値差ΔＳｓが第６の閾値Ｓｔｈ６以上でない場合に系切替条件を満たさないと判定する（ステップＳ４６Ａ：Ｎｏ）。
【０１２５】
なお、第１の評価値Ｓｓ１と第２の評価値Ｓｓ２は、積算稼動期間の値とすることができる。これにより、２つの処理装置２の処理部２０間の積算稼動期間に一定時間以上の差がある場合に、系切り替え処理が行われる。したがって、２つの処理部２０を現用系と待機系とで交互に切り替えることができ、積算稼動期間の平滑化を行うことができ、処理部２０が待機系として継続して稼動しないことによる影響で動作しない状態になることを回避することができる。また、複数の処理装置２のうち評価値Ｓｓが高い処理装置２を優先して使用することで、安定度の高い処理装置２で現用系の処理を実行させることができる。したがって、二重化システム１Ａの安定性を向上させることができる。
【０１２６】
以上のように、実施の形態３にかかる処理装置２Ａの系切替部４１Ａは、第１の評価値Ｓｓ１が第２の評価値Ｓｓ２よりも低く第１の評価値Ｓｓ１と第２の評価値Ｓｓ２との差ΔＳｓが第６の閾値Ｓｔｈ６以上である場合に、処理部２０の設定を現用系から待機系へ切り替える。したがって、評価値Ｓｓが第６の閾値Ｓｔｈ６以上高い方の処理部２０が現用系として用いられることから、二重化システム１Ａの安定性を向上させることができる。
【０１２７】
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
【符号の説明】
【０１２８】
１，１Ａ  二重化システム、２，２Ａ  処理装置、３  駅装置、４，６  ネットワーク、５  中央管理装置、１０  通信部、１１  電源部、１２  ファン、１３，１３Ａ  制御部、１６  第１の通信部、１７  第２の通信部、２０  処理部、２１  監視部、２２，２２Ａ  管理部、３１  デバイス監視部、３２  ＲＡＳ監視部、３３  評価値演算部、３４  ＣＰＵ状態検出部、３５  ＨＤＤ状態検出部、３６  メモリ状態検出部、３７  温度状態検出部、３８  電圧状態検出部、３９  ファン状態検出部、４１，４１Ａ  系切替部、４２  再起動部、５０  第１のスコア判定テーブル、５１  第２のスコア判定テーブル。
【図１】
2018133766.tif 000003
【図２】
2018133766.tif 000004
【図３】
2018133766.tif 000005
【図４】
2018133766.tif 000006
【図５】
2018133766.tif 000007
【図６】
2018133766.tif 000008
【図７】
2018133766.tif 000009
【図８】
2018133766.tif 000010
【図９】
2018133766.tif 000011
【図１０】
2018133766.tif 000012
【図１１】
2018133766.tif 000013
【図１２】
2018133766.tif 000014
【図１３】
2018133766.tif 000015
【図１４】
2018133766.tif 000016