(57)【要約】【課題】  信号源に接続され、信号源からのデータを、バスを介してマスタ装置に送信する装置に障害が発生した場合でも、マスタ装置がその信号源からのデータを得ることができる、代替制御装置を提供する。【解決手段】  本発明の代替制御装置は、信号接続手段を介して信号源に接続されると共にバスに接続され、前記バスを介して、受信した命令に対して前記信号源からの信号に基づくデータを返送する複数のデバイスから、障害が生じている障害デバイスを検出する障害検出手段と、前記複数のデバイスのうち前記障害デバイス以外の特定デバイスであって、代替動作指示を受信すると前記障害デバイスに対する命令を受信して実行する代替デバイスに対して、前記代替動作指示を送信する代替指示手段と、切り替え指示を受信すると、前記障害デバイスに接続されている前記信号源を、前記代替デバイスに接続する前記信号接続手段に、前記切り替え指示を送信する接続制御手段と、を含む。【選択図】      図１３
2015011371.tif 000002
【特許請求の範囲】
【請求項１】
信号接続手段を介して信号源に接続されると共にバスに接続され、前記バスを介して、受信した命令に対して前記信号源からの信号に基づくデータを返送する複数のデバイスから、障害が生じている障害デバイスを検出する障害検出手段と、
前記複数のデバイスのうち前記障害デバイス以外の特定デバイスであって、代替動作指示を受信すると前記障害デバイスに対する命令を受信して実行する代替デバイスに対して、前記代替動作指示を送信する代替指示手段と、
切り替え指示を受信すると、前記障害デバイスに接続されている前記信号源を、前記代替デバイスに接続する前記信号接続手段に、前記切り替え指示を送信する接続制御手段と、
を含む代替制御装置。
【請求項２】
前記応答が返信されない前記命令を命令記憶手段に格納し、前記障害デバイスが検出されて前記動作変更指示が送信され前記切り替え指示が送信されたた場合、前記命令記憶手段に記憶された、前記障害デバイスに対する前記命令を、前記バスを介して送信する命令送信手段と、
前記命令記憶手段と、
を含む請求項１に記載の代替制御装置。
【請求項３】
前記複数のデバイスは、バス接続手段を介して前記バスに、前記信号接続手段を介して互いに異なる信号源に接続され、
前記接続制御手段は、さらに、切断指示を受信すると前記バスと前記障害デバイスとの間の接続を切断する前記バス接続手段に対して、前記障害デバイスが検出された場合に前記切断指示を送信し、
前記信号接続手段は、前記切り替え指示を受信すると、さらに、前記切り替え指示を受信する前に前記代替デバイスに接続されていた信号源を、前記障害デバイスに接続し、
前記代替制御装置は、リセット信号を受信すると初期状態に戻る前記障害デバイスに、前記リセット信号を送信するリセット手段を含み、
前記障害検出手段は、さらに、前記リセット信号が送信された場合、前記障害デバイスにおける障害の解消を検出し、
前記代替指示手段は、前記障害デバイスにおける障害の解消が検出された場合、前記代替動作指示を受信すると前記代替デバイスとして動作する前記障害デバイスに対して、前記代替動作指示を送信し、
前記接続制御手段は、前記障害デバイスにおける障害の解消が検出された場合、接続指示を受信すると前記障害デバイスを前記バスに接続する前記バス接続手段に、前記接続指示を送信する
請求項１又は２に記載の代替制御装置。
【請求項４】
前記複数のデバイスと、
前記命令を送信し、前記データを受信する制御装置と、
請求項１乃至３のいずれかに記載の代替制御装置と
を含む情報処理システム。
【請求項５】
信号接続手段を介して信号源に接続されると共にバスに接続され、前記バスを介して、受信した命令に対して前記信号源からの信号に基づくデータを返送する複数のデバイスから、障害が生じている障害デバイスを検出し、
前記複数のデバイスのうち前記障害デバイス以外の特定デバイスであって、代替動作指示を受信すると前記障害デバイスに対する命令を受信して実行する代替デバイスに対して、前記代替動作指示を送信し、
切り替え指示を受信すると、前記障害デバイスに接続されている前記信号源を、前記代替デバイスに接続する前記信号接続手段に、前記切り替え指示を送信する、
代替制御方法。
【請求項６】
前記応答が返信されない前記命令を命令記憶手段に格納し、前記障害デバイスが検出されて前記動作変更指示が送信され前記切り替え指示が送信されたた場合、前記命令記憶手段に記憶された、前記障害デバイスに対する前記命令を、前記バスを介して送信する、
請求項５に記載の代替制御方法。
【請求項７】
前記複数のデバイスを、バス接続手段を介して前記バスに、前記信号接続手段を介して互いに異なる信号源に接続し、
さらに、切断指示を受信すると前記バスと前記障害デバイスとの間の接続を切断する前記バス接続手段に対して、前記障害デバイスが検出された場合に前記切断指示を送信し、
前記切り替え指示を受信すると、さらに、前記切り替え指示を受信する前に前記代替デバイスに接続されていた信号源を、前記障害デバイスに接続し、
リセット信号を受信すると初期状態に戻る前記障害デバイスに、前記リセット信号を送信し、
さらに、前記リセット信号が送信された場合、前記障害デバイスにおける障害の解消を検出し、
前記障害デバイスにおける障害の解消が検出された場合、前記代替動作指示を受信すると前記代替デバイスとして動作する前記障害デバイスに対して、前記代替動作指示を送信し、
前記障害デバイスにおける障害の解消が検出された場合、接続指示を受信すると前記障害デバイスを前記バスに接続する前記バス接続手段に、前記接続指示を送信する
請求項５又は６に記載の代替制御方法。
【請求項８】
コンピュータを、
信号接続手段を介して信号源に接続されると共にバスに接続され、前記バスを介して、受信した命令に対して前記信号源からの信号に基づくデータを返送する複数のデバイスから、障害が生じている障害デバイスを検出する障害検出手段と、
前記複数のデバイスのうち前記障害デバイス以外の特定デバイスであって、代替動作指示を受信すると前記障害デバイスに対する命令を受信して実行する代替デバイスに対して、前記代替動作指示を送信する代替指示手段と、
切り替え指示を受信すると、前記障害デバイスに接続されている前記信号源を、前記代替デバイスに接続する前記信号接続手段に、前記切り替え指示を送信する接続制御手段と、
して動作させる代替制御プログラム。
【請求項９】
コンピュータを、
前記応答が返信されない前記命令を命令記憶手段に格納し、前記障害デバイスが検出されて前記動作変更指示が送信され前記切り替え指示が送信されたた場合、前記命令記憶手段に記憶された、前記障害デバイスに対する前記命令を、前記バスを介して送信する命令送信手段と、
前記命令記憶手段と、
して動作させる請求項８に記載の代替制御プログラム。
【請求項１０】
コンピュータを、
バス接続手段を介して前記バスに、前記信号接続手段を介して互いに異なる信号源に接続された前記複数のデバイスから、前記障害デバイスを検出する前記障害検出手段と、
さらに、切断指示を受信すると前記バスと前記障害デバイスとの間の接続を切断する前記バス接続手段に対して、前記障害デバイスが検出された場合に前記切断指示を送信する前記接続制御手段と、
前記切り替え指示を受信すると、さらに、前記切り替え指示を受信する前に前記代替デバイスに接続されていた信号源を、前記障害デバイスに接続する前記信号接続手段と、
リセット信号を受信すると初期状態に戻る前記障害デバイスに、前記リセット信号を送信するリセット手段と、
さらに、前記リセット信号が送信された場合、前記障害デバイスにおける障害の解消を検出する前記障害検出手段と、
前記障害デバイスにおける障害の解消が検出された場合、前記代替動作指示を受信すると前記代替デバイスとして動作する前記障害デバイスに対して、前記代替動作指示を送信する前記代替指示手段と、
前記障害デバイスにおける障害の解消が検出された場合、接続指示を受信すると前記障害デバイスを前記バスに接続する前記バス接続手段に、前記接続指示を送信する前記接続制御手段と、
して動作させる請求項８又は９に記載の代替制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、障害が発生した装置を代替する技術に関する。
【背景技術】
【０００２】
特許文献１には、複数のスレーブ装置と、マスタ装置とを含むシリアルバスシステムが記載されている。それらの、マスタ装置と複数の複数のスレーブ装置は、同一のシリアルバスに接続されている。このマスタ装置は、ハングアップしたスレーブ装置を特定する。そして、このマスタ装置は、リセット信号を送信することにより、特定されたスレーブ装置をリセットする。
【０００３】
引用文献２には、マスタ装置と、複数のスレーブ装置を含むバスシステムが記載されている。そのマスタ装置は、２本のＩ２Ｃ（Ｉｎｔｅｒ−Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）バスに接続されている。Ｉ２Ｃバスに障害が検出されていない場合、各スレーブ装置は、接続先のＩ２Ｃバスを決めるスイッチを介して、２本のＩ２Ｃバスの一方に接続される。Ｉ２Ｃバスに障害が検出された場合、そのマスタ装置は、他方のＩ２Ｃバスに、１個ずつスレーブ装置を接続することにより、障害の原因であるスレーブ装置を特定する。マスタ装置は、特定されたスレーブ装置に対して、特定されたスレーブ装置と電源との間の接続を切断して再び接続するリセットを行うことにより、そのスレーブ装置の回復を試みる。そのスレーブ装置が回復した場合、マスタ装置は、そのスレーブ装置を、再び元のＩ２Ｃバスに接続する。そのスレーブ装置が回復しない場合、マスタ装置は、そのスレーブ装置と電源との間の接続を切断する。
【０００４】
特許文献３には、スレーブ装置である周辺部品とＩ２Ｃバスとの間に接続されるバス接続回路が記載されている。そのバス接続回路は、そのバス接続回路に接続された周辺部品が異常状態であるか否かを検出する。そのバス接続回路に接続された周辺部品が異常状態であることが検出された場合、そのバス接続回路は、その周辺部品をＩ２Ｃバスから切り離す。
【０００５】
特許文献４には、Ｉ２Ｃバスがフリーズした場合、スレーブアドレスに基づいて、フリーズの原因であるスレーブ装置を特定するＩ２Ｃバス通信制御システムが記載されている。そのＩ２Ｃバス通信制御システムは、特定されたスレーブ装置のみに対してリセットをかけることにより、Ｉ２Ｃバスをフリーズから復帰させる。
【０００６】
特許文献５には、バスを経由してプロセッサに接続された、基本装置とバックアップ装置によって構成される二重化装置が記載されている。プロセッサは、基本装置とバックアップ装置を、それぞれ一意の装置アドレスによって識別し制御する。基本装置に障害が発生した場合、そのバックアップ装置は、そのバックアップ装置の装置アドレスを、基本装置の装置アドレスに変換する。
【０００７】
特許文献６には、１３９４シリアルバスによって、マスタ装置である画像供給デバイスに接続されている、スレーブ装置であるプリンタが記載されている。その画像供給デバイスは、画像のデータをプリンタに送信する。データの転送においてエラーが検出された場合、その画像供給デバイスは、データを再送する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１０−０５５４７２号公報
【特許文献２】特開２００３−２４２０４８号公報
【特許文献３】特開２０１２−０６８９０７号公報
【特許文献４】特開２０１２−１５０７４９号公報
【特許文献５】特開平０１−１６２９４２号公報
【特許文献６】特開平１０−３２２４１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
バスを介してマスタ装置に接続されるスレーブ装置には、そのスレーブ装置に接続されている、センサや他の信号源からの信号を表すデータを、バスを介してマスタ装置に送信するスレーブ装置がある。
【００１０】
特許文献１のマスタ装置は、スレーブ装置に障害が検出された場合、そのスレーブ装置にリセット信号を送信する。しかし、リセットされたスレーブ装置が正常に動作を開始するまでの間、マスタ装置は、そのスレーブ装置に接続されている信号源からのデータを得ることはできない。また、そのスレーブ装置が、リセットされても正常に動作しない場合、マスタ装置は、そのスレーブ装置に接続されている信号源からのデータを得ることはできない。
【００１１】
特許文献２のマスタ装置は、スレーブ装置に障害が検出された場合、そのスレーブ装置のリセットを行う。従って、リセットされたスレーブ装置が正常に動作を開始するまでの間、マスタ装置は、そのスレーブ装置に接続されている信号源からのデータを得ることはできない。また、そのスレーブ装置が、リセットされても正常に動作しない場合、マスタ装置は、そのスレーブ装置と電源との接続を切断する。従って、この場合、そのマスタ装置は、そのスレーブ装置に接続されている信号源からのデータを得ることはできない。
【００１２】
特許文献３のバス接続回路は、スレーブ装置に障害が検出された場合、そのスレーブ装置をＩ２Ｃバスから切り離す。従って、そのＩ２Ｃバスに接続されているマスタ装置は、そのスレーブ装置に接続されている信号源からのデータを得ることはできない。
【００１３】
特許文献４のＩ２Ｃバス通信制御システムは、バスのフリーズの原因として特定されたスレーブ装置のみに対してリセットをかける。従って、リセットされたスレーブ装置が正常に動作を開始するまでの間、バスに接続されているマスタ装置は、そのスレーブ装置に接続されている信号源からのデータを得ることはできない。また、そのスレーブ装置が、リセットされても正常に動作しない場合、そのマスタ装置は、そのスレーブ装置に接続されている信号源からのデータを得ることはできない。
【００１４】
特許文献５のバックアップ装置は、基本装置が故障した場合、そのバックアップ装置の基本装置のアドレスに変換して動作する。従って、基本装置に障害が発生した場合、プロセッサは、その基本装置に接続されている信号源からのデータを得ることはできない。
【００１５】
特許文献６の画像供給デバイスは、データの転送においてエラーが検出された場合、そのデータをプリンタに再送する。しかし、画像供給デバイスが故障した場合、プリンタは、その画像供給デバイスからデータを得ることはできない。
【００１６】
このように、特許文献１乃至６の技術では、バスを介してマスタ装置に接続されるスレーブ装置に障害が発生した場合、そのマスタ装置は、障害が発生したスレーブ装置に接続されている信号源からの信号を表すデータを得ることができない。
【００１７】
本発明の目的の一つは、信号源に接続され、信号源からのデータを、バスを介してマスタ装置に送信する装置に障害が発生した場合でも、マスタ装置がその信号源からのデータを得ることができる、代替制御装置を提供することにある。
【課題を解決するための手段】
【００１８】
本発明の代替制御装置は、信号接続手段を介して信号源に接続されると共にバスに接続され、前記バスを介して、受信した命令に対して前記信号源からの信号に基づくデータを返送する複数のデバイスから、障害が生じている障害デバイスを検出する障害検出手段と、前記複数のデバイスのうち前記障害デバイス以外の特定デバイスであって、代替動作指示を受信すると前記障害デバイスに対する命令を受信して実行する代替デバイスに対して、前記代替動作指示を送信する代替指示手段と、切り替え指示を受信すると、前記障害デバイスに接続されている前記信号源を、前記代替デバイスに接続する前記信号接続手段に、前記切り替え指示を送信する接続制御手段と、を含む。
【００１９】
本発明の代替制御方法は、信号接続手段を介して信号源に接続されると共にバスに接続され、前記バスを介して、受信した命令に対して前記信号源からの信号に基づくデータを返送する複数のデバイスから、障害が生じている障害デバイスを検出し、前記複数のデバイスのうち前記障害デバイス以外の特定デバイスであって、代替動作指示を受信すると前記障害デバイスに対する命令を受信して実行する代替デバイスに対して、前記代替動作指示を送信し、切り替え指示を受信すると、前記障害デバイスに接続されている前記信号源を、前記代替デバイスに接続する前記信号接続手段に、前記切り替え指示を送信する。
【００２０】
本発明の代替制御プログラムは、コンピュータを、信号接続手段を介して信号源に接続されると共にバスに接続され、前記バスを介して、受信した命令に対して前記信号源からの信号に基づくデータを返送する複数のデバイスから、障害が生じている障害デバイスを検出する障害検出手段と、前記複数のデバイスのうち前記障害デバイス以外の特定デバイスであって、代替動作指示を受信すると前記障害デバイスに対する命令を受信して実行する代替デバイスに対して、前記代替動作指示を送信する代替指示手段と、切り替え指示を受信すると、前記障害デバイスに接続されている前記信号源を、前記代替デバイスに接続する前記信号接続手段に、前記切り替え指示を送信する接続制御手段と、して動作させる。
【発明の効果】
【００２１】
本発明には、信号源に接続され、信号源からのデータを、バスを介してマスタ装置に送信する装置に障害が発生した場合でも、マスタ装置がその信号源からのデータを得ることができるという効果がある。
【図面の簡単な説明】
【００２２】
【図１】図１は、第１の実施形態の情報処理システムの構成を表すブロック図である。
【図２】図２は、第１の実施形態の情報処理システム１００の構成の他の例を表すブロック図である。
【図３】図３は、バス接続部３１の構成の一例を表すブロック図である。
【図４】図４は、バス接続部３１の構成の一例を表すブロック図である。
【図５】図５は、バス接続部３１の構成の他の例を表すブロック図である。
【図６】図６は、信号接続部３３の構成の一例を表すブロック図である。
【図７】図７は、信号接続部３３の構成の一例を表すブロック図である。
【図８】図８は、信号接続部３３の構成の他の例を表すブロック図である。
【図９】図９は、バス２がＩ２Ｃバスである場合の、バス２とバス２に接続されている装置の、具体的な接続の例を表す図である。
【図１０】図１０は、第１、第２の本実施形態の代替制御装置１の、障害デバイス検出時の動作の一例を表すフローチャートである。
【図１１】図１１は、第２の実施形態の情報処理システム１００Ａの構成の例を表すブロック図である。
【図１２】図１２は、第２の実施形態の代替制御装置１Ａの、障害デバイス復帰処理時の動作を表すフローチャートである。
【図１３】図１３は、第３の実施形態の代替制御装置１Ｂの構成の例を表すブロック図である。
【図１４】図１４は、代替制御装置１、代替制御装置１Ａ、代替制御装置１Ｂを実現するために使用される、コンピュータ１０００の構成の一例を表す図である。
【発明を実施するための形態】
【００２３】
次に、本発明の第１の実施の形態について図面を参照して詳細に説明する。
【００２４】
図１は、本実施形態の情報処理システム１００の構成の例を表すブロック図である。
【００２５】
図１を参照すると、情報処理システム１００は、代替制御装置１と、デバイス３２Ａと、デバイス３２Ｂと、制御装置４を含む。図１の例では、デバイスの数は２個であるが、デバイスの数は、図１の例に限られない。デバイスの数は、３個以上であってもよい。代替性御装置１は、バス２に接続されている。各デバイスは、バス接続部３１を介して、バス２に接続されている。また、各デバイスは、信号接続部３３を介して、信号源に接続されている。図１の例では、信号源は、信号源３４Ａと信号源３４Ｂである。バス接続部３１は、代替制御装置１に含まれていてもよい。信号接続部３３も、代替制御装置１に含まれていてもよい。図１の例では、制御装置４は、代替制御装置１を介して、バス２に接続されている。
【００２６】
代替制御装置１は、障害検出部１０と、接続制御部１１と、代替指示部１２と、命令送信部１３と、命令記憶部１４とを含む。
【００２７】
信号源は、例えば、温度センサ、ファンの回転数を計測するセンサ、あるいは他のセンサである。信号源は、例えば、何らかのデータを記憶した記憶装置であってもよい。
【００２８】
デバイスは、そのデバイスに接続されている信号源からの信号を、データに変換する。そして、デバイスは、そのデバイスに対する、制御装置４からのデータの読み出し命令を、バス２を介して受信すると、信号源からの信号を表すデータを、バス２に出力する。データの読み出し命令を、以下では単に命令と表記する。命令は、バス２に接続されている各装置に送信される。命令には、その命令が対象とするデバイスのアドレスが含まれる。命令を受信したデバイスは、受信した命令に、そのデバイスのアドレスとして設定されているアドレスが含まれる場合、受信した命令に対する応答を返信する。デバイスは、命令を受信しても、受信した命令にそのデバイスに設定されているアドレスが含まれない場合、受信した命令を実行しない。デバイスのアドレスは、あらかじめ設定されていていればよい。また、後述されるように、代替指示部１２は、デバイスのアドレスを変更することができる。
【００２９】
図２は、本実施形態の情報処理システム１００の構成の他の例を表すブロック図である。図２の例では、制御装置４がバス２に直接接続されている。このように、制御装置４は、バス２に直接接続されていてもよい。
【００３０】
バス接続部３１は、初期状態では、各デバイスとバス２との間を接続する。さらに、バス接続部３１は、接続制御部１１からの指示に基づき、各デバイスとバス２との間の接続を、個別に切断する。また、バス接続部３１は、接続制御部１１からの指示に基づき、バス２に接続されていないデバイスとバス２を、接続する。
【００３１】
図３は、バス接続部３１の構成の一例を表すブロック図である。図３の例では、バス接続部３１は、スイッチ３１１Ａとスイッチ３１１Ｂを含む。図３の例では、デバイスの数と同じ数のスイッチが存在する。そして、各スイッチは、いずれかのデバイスとバス２に接続される。すなわち、全てのデバイスが、いずれかのスイッチに接続されている。なお、スイッチの数は、デバイスの数と異なっていてもよい。例えば、バス接続部３１を介さずにバス２に接続されているデバイスが存在してもよい。ただし、バス２に直接接続されているデバイスに障害が検出された場合、後述の図１０に示されるステップＳ１０４の動作は行われない。スイッチが接続状態である場合、そのスイッチに接続されているデバイスとバス２は接続される。スイッチが開放状態である場合、そのスイッチに接続されているデバイスとバス２との間の接続は、切断される。図３の例では、全てのスイッチが接続状態である。バス接続部３１は、接続制御部１１からの指示に基づき、スイッチが接続状態であるか、開放状態であるかを、スイッチ毎に制御する。
【００３２】
例えば、スイッチ３１１Ａは、デバイス３２Ａとバス２に接続されている。スイッチ３１１Ａが接続状態である場合、デバイス３２Ａとバス２は接続される。スイッチ３１１Ａが開放状態である場合、そのスイッチ３１１Ａに接続されているデバイス３２Ａとバス２との間の接続は、切断される。スイッチ３１１Ｂは、デバイス３２Ｂとバス２に接続されている。スイッチ３１１Ｂが接続状態である場合、デバイス３２Ｂとバス２は接続される。スイッチ３１１Ｂが開放状態である場合、そのスイッチ３１１Ｂに接続されているデバイス３２Ａとバス２との間の接続は、切断される。
【００３３】
図４は、バス接続部３１の構成の一例を表すブロック図である。図４に示されるバス接続部３１の構成は、図３に示されるバス接続部３１の構成と同じである。ただし、図４の例では、デバイス３２Ａに接続されているスイッチ３１１Ａが開放状態である。
【００３４】
図５は、バス接続部３１の構成の他の例を表すブロック図である。図５の例では、バス接続部３１は、バス接続部３１Ａとバス接続部３１Ｂによって実現されている。このように、バス接続部３１は、複数の部分に分かれたバス接続部によって実現されてもよい。そして、図５に示す例のように、一つのバス接続部が、一つのデバイスとバス２に接続されていてもよい。図５に示す例では、スイッチ３１１Ａを含むバス接続部３１Ａが、デバイス３２Ａとバス２に接続される。また、スイッチ３１１Ｂを含むバス接続部３１Ｂが、デバイス３２Ｂとバス２に接続される。
【００３５】
信号接続部３３は、初期状態では、デバイスとそのデバイスに割り当てられている信号源との間を接続する。さらに、信号接続部３３は、接続制御部１１からの指示に基づき、デバイスに接続される信号源を、他の信号源に切り替える。
【００３６】
図６は、信号接続部３３の構成の一例を表すブロック図である。図６に示す例では、信号接続部３３は、スイッチ３３１Ａとスイッチ３３１Ｂを含む。スイッチ３３１Ａは、デバイス３２Ａと、信号源３４Ａと、信号源３４Ｂに接続されている。スイッチ３３１Ａは、信号源３４Ａと信号源３４Ｂのいずれかを、デバイス３２Ａに接続する。スイッチ３３１Ｂは、デバイス３２Ｂと、信号源３４Ａと、信号源３４Ｂに接続されている。スイッチ３３１Ｂは、信号源３４Ａと信号源３４Ｂのいずれかを、デバイス３２Ｂに接続する。信号接続部３３が含むスイッチの数は、３個以上であってもよい。一つのスイッチに接続される信号源の数は、３個以上であってもよい。それぞれのスイッチは、そのスイッチに接続される信号源のいずれかを、そのスイッチに接続されているデバイスに接続する。それぞれのスイッチは、信号源をデバイスに接続しない開放状態であってもよい。信号接続部３３は、接続制御部１１から受信する信号の基づき、各スイッチの状態を制御する。
【００３７】
初期状態では、信号接続部３３は、例えば図６に示す例のように、信号源３４Ａをデバイス３２Ａに接続する。また、信号接続部３３は、信号源３４Ｂをデバイス３２Ｂに接続する。
【００３８】
図７は、信号接続部３３の構成の一例を表すブロック図である。図７の例では、信号接続部３３は、信号源３４Ａをデバイス３２Ｂに接続する。また、信号接続部３３は、信号源３４Ｂをデバイス３２Ａに接続する。信号接続部３３は、接続制御部１１から受信する信号の基づき、図６に示す状態と、図７に示す状態を切り替えてもよい。
【００３９】
図８は、信号接続部３３の構成の他の例を表すブロック図である。図８の例では、信号接続部３３は、スイッチ３３１Ａを含む信号接続部３３Ａと、スイッチ３３１Ｂを含む信号接続部３３Ｂによって実現される。このように、信号接続部３３は、複数の部分に分かれた信号接続部によって実現されていてもよい。
【００４０】
バス２は、例えば、Ｉ２Ｃバスによって実現されるバスである。バス２は、マスタ装置として動作する装置と、スレーブ装置として動作する複数の装置が接続されるバスであれば、他のバスであってもよい。
【００４１】
図９は、バス２がＩ２Ｃバスである場合の、バス２とバス２に接続されている装置の、具体的な接続の例を表す図である。バス２は、シリアルデータ線であるＳＤＡ（Ｓｅｒｉａｌ  Ｄａｔａ）２Ａと、シリアルクロック線であるＳＣＬ（Ｓｅｒｉａｌ  Ｃｌｏｃｋ）２Ｂにより実現される。代替制御装置１は、ＳＤＡ２ＡとＳＣＬ２Ｂに接続される。また、各デバイスは、バス接続部を介して、ＳＤＡ２ＡとＳＣＬ２Ｂに接続される。なお、図９の例では、一つのデバイスは、一つのバス接続部を介して、ＳＤＡ２ＡとＳＣＬ２Ｂに接続されている。ＳＤＡ２ＡとＳＣＬ２Ｂは、バス２の不使用時に信号をｈｉｇｈに保つために、電源ＶＤＤによってプルアップされている。
【００４２】
制御装置４は、バス２に接続されている各デバイスと通信することができる。制御装置４は、命令をバス２に出力する。命令には、命令を実行するデバイスのアドレスが含まれる。例えば、バス２がＩ２Ｃバスである場合、命令はＩ２Ｃコマンドである。そして、命令は、バス２に接続されている全てのデバイスに送信される。
【００４３】
命令を受信したデバイスは、そのデバイスのアドレスが受信した命令に含まれる場合、命令に対する応答をバス２を介して送信する。前述のように、本実施形態では、制御装置４が送信するデバイスに対する命令は、そのデバイスに接続されている信号源からの信号を表すデータの読み出し命令である。図１の例では、各デバイスは、そのデバイスに接続されている信号源からの信号を表すデータを、応答としてバス２に送信する。
【００４４】
制御装置４は、命令を送信したデバイスから、命令に対する応答を受信する。
【００４５】
図１の例のように、制御装置４が代替制御装置１を介してバス２に接続されている場合、例えば、代替制御装置１の命令送信部１３が、制御装置４から命令を受信する。そして、命令送信部１３は、受信した命令を命令記憶部１４に格納する。さらに、命令送信部１３は、受信した命令を、バス２に対して出力する。命令送信部１３は、出力した命令に対する応答をバス２から受信すると、受信した応答を制御装置４に送信する。
【００４６】
図２の例のように、制御装置４がバス２に接続されている場合、制御装置４は、バス２に命令を直接出力する。また、制御装置４は、バス２から応答を直接受信する。そして、命令送信部１３は、制御装置４がバス２に出力した命令を、バス２から受信する。そして、命令送信部１３は、受信した命令を、命令記憶部１４に格納する。
【００４７】
また、命令送信部１３は、バス２に送信された命令に対する応答を検出してもよい。そして、命令送信部１３は、応答が検出された命令を、命令記憶部１４から削除してもよい。
【００４８】
命令記憶部１４は、制御装置４が送信した命令を記憶する。
【００４９】
障害検出部１０は、各デバイスから、障害が生じているデバイスを検出する。本実施形態及び他の実施形態の説明において、障害検出部１０により検出されたデバイスを、検出デバイスと表記する。
【００５０】
代替指示部１２は、代替デバイスに対して、代替動作指示を送信する。代替デバイスは、検出されたデバイスである検出デバイス以外のデバイスである。代替デバイスは、代替動作指示を受信すると検出デバイスに対する命令を受信して実行する。
【００５１】
接続制御部１１は、信号接続部３３に、切り替え指示を送信する。信号接続部３３は、切り替え指示を受信すると、検出デバイスに接続されている信号源を、代替デバイスに接続する。また、検出デバイスが検出された場合、接続制御部１１は、バス接続部３１に対して、切断指示を送信する。バス接続部３１は、切断指示を受信すると、バス２と検出デバイスとの間の接続を切断する。
【００５２】
命令送信部１３は、代替動作指示及び切り返し時が送信された場合、命令記憶部１４に格納されている、検出デバイスに対する命令を、バス２に対して出力する。
【００５３】
次に、本実施形態の動作について説明する。
【００５４】
図１０は、本実施形態の代替制御装置１の、障害デバイス検出時の動作の一例を表すフローチャートである。
【００５５】
命令送信部１３は、制御装置４によってバス２に送信された命令を、命令記憶部１４に格納する（ステップＳ１０１）。
【００５６】
前述のように、制御装置４が命令送信部１３を介してバス２に命令を送信する場合、命令送信部１３は、制御装置４から受信した命令を、命令記憶部１４に格納する。また、制御装置４がバス２に命令を直接送信する場合、命令送信部１３は、バス２に送信される命令を受信して、命令記憶部１４に格納すればよい。
【００５７】
次に、障害検出部１０が、障害が発生したデバイスを検出する（ステップＳ１０２）。
【００５８】
例えば、障害検出部１０は、命令が送信されてからの時間をタイマにより計測する。その際、例えば、命令送信部１３が、送信された命令に対する応答の検出を行えばよい。そして、障害検出部１０は、命令が送信されてから所定時間内に、その命令に対する応答が検出されない場合、その命令にアドレスが含まれるデバイスに障害が発生したと判定する。
【００５９】
命令が送信されてから所定時間内に、その命令に対する応答が検出された場合、その命令にアドレスが含まれるデバイスに、障害は発生していない。この場合、障害デバイスは検出されない。さらに、この場合、命令送信部１３は、命令記憶部１４に格納されている、応答が検出された命令に対して、応答が検出されたことを表すデータを関連付けてもよい。あるいは、命令送信部１３は、応答が検出された命令を命令記憶部１４から削除してもよい。
【００６０】
障害デバイスが検出されない場合（ステップＳ１０３でＮｏ）、命令送信部１３は、次に命令が送信されるまで待機する。
【００６１】
障害デバイスが検出された場合（ステップＳ１０３でＹｅｓ）、接続制御部１１は、障害デバイスをバスから切り離す切断指示を、バス接続部３１に送信する。
【００６２】
切断指示は、障害デバイスの識別子を含んでいてもよい。切断指示を受信したバス接続部３１は、バス２と障害デバイスとの間の接続を切断する。バス接続部３１が、デバイスの識別子を受信するたびに、その識別子に関連付けられているスイッチを接続状態と切断状態の間で切り替えるよう構成されている場合、切断指示は、障害デバイスの識別子そのものであってもよい。図５のように、一つのデバイスに一つのバス接続部が接続されている場合、接続制御部１１は、障害デバイスに接続されているバス接続部に対して、切断指示を表す信号を送信すればよい。切断指示を受信したバス接続部３１は、例えばバス２と障害デバイスを接続するスイッチを切断状態にすることにより、バス２と障害デバイスとの間の接続を切断する。
【００６３】
デバイス３２Ａに障害が検出された場合、接続制御部１１は、例えば、デバイス３２Ａの識別子を含む切断指示を、バス接続部３１に送信する。切断指示を受信したバス接続部３１は、例えばスイッチ３１１Ａを切断状態にすることにより、バス２とデバイス３２Ａとの間の接続を切断する。バス接続部３１が、図３に示す例のように構成されている場合、切断指示を受信したバス接続部３１の状態は、図３に示す状態から、図４に示す状態になる。
【００６４】
例えば、障害デバイスに、ＳＤＡやＳＣＬをｌｏｗ状態にするような故障している場合、障害デバイスとバス２が接続されていると、制御装置４と他のデバイスとの間の、バス２を介した通信ができなくなる。バス接続部３１が、障害デバイスをバス２から切り離すことにより、そのような故障が発生している場合であっても、制御装置４と他のデバイスとの間の、バス２を介した通信が可能になる。各デバイスが、ＳＤＡやＳＣＬをｌｏｗ状態にしないよう設計されている場合、代替制御装置１は、ステップＳ１０４の動作を行わなくてもよい。
【００６５】
次に、代替指示部１２が、障害デバイスでないデバイスを、代替デバイスとして選択する。そして、代替指示部１２は、代替デバイスに対して、障害デバイスへの命令を実行させる指示である代替動作指示を送信する（ステップＳ１０５）。代替動作指示を受信した代替デバイスは、障害デバイスへの命令に対して応答する。すなわち、障害デバイスに割り当てられていたアドレスを含む命令に対して、応答する。
【００６６】
代替動作指示は、例えば、デバイスに割り当てられているアドレスを変更する指示を表す信号である。代替指示部１２は、代替デバイスに対して、代替動作指示として、例えば、アドレスを、障害デバイスに割り当てられていたアドレスに変更する指示を表す信号を送信する。代替動作指示を受信したデバイスは、そのデバイスのアドレスを変更する。そして、そのデバイスは、変更されたアドレスを含む命令に対して、応答する。以下では、デバイスに対して、デバイスに割り当てられているアドレスを変更する指示を表す信号を送信することを、デバイスにアドレスを設定するとも表記する。
【００６７】
代替指示部１２は、あらかじめ、アドレスを変更することにより同じ動作をするデバイスのグループを表す情報を保持していればよい。アドレスを変更することにより同じ動作をするデバイスは、例えば、信号源からの信号に対して同じ変換を行ってデータを生成し、生成されたデータを応答として返信するデバイスである。デバイスのグループを表す情報は、例えば、デバイスの識別子の組である。代替指示部１２は、障害デバイスが検出された場合、その障害デバイスと同じグループに含まれるデバイスから、任意の方法で代替デバイスを選択すればよい。
【００６８】
例えば、制御装置４が、各デバイスに対して順次命令を送信するよう構成されている場合、代替指示部１２は、各デバイスに対する命令が送信された時刻を記憶していてもよい。そして、代替指示部１２は、直近の命令が送信されてから経過した時間が最も短いデバイスを、代替デバイスとして選択してもよい。代替指示部１２は、過去の所定時間内にデバイスに対する命令が送信された回数をデバイス毎にカウントしてもよい。代替指示部１２は、カウントされた回数を、デバイス毎に記憶していてもよい。そして、代替指示部１２は、命令が送信された回数が最も少ないデバイスを、代替デバイスとして選択してもよい。代替指示部１２は、過去の所定時間内において、デバイスに対して命令が送信されてから、同じデバイスに対して命令が送信されるまでの平均時間を、デバイス毎に算出してもよい。代替指示部１２は、算出されたデバイス毎の平均時間を記憶していてもよい。そして、代替指示部１２は、直近に命令が送信されてから平均時間が経過する時刻が、現在の時刻から最も遠いデバイスを、代替デバイスとして選択してもよい。これらの場合、例えば、命令送信部１３が、各デバイスに対する命令を検出すればよい。そして命令送信部１３が、デバイスの識別子とそのデバイスに対する命令が検出された時刻の組を、代替指示部１２に送信すればよい。
【００６９】
次に、接続制御部１１は、信号接続部３３に対して、障害デバイスに接続されている信号源を、代替デバイスに接続させる指示である切り替え指示を送信する（ステップＳ１０６）。
【００７０】
切り替え指示の送信時に、代替デバイスに信号源が接続されている場合、切り替え指示を受信した信号接続部３３は、代替デバイスに接続されている信号源を、代替デバイスから切り離す。信号接続部３３は、障害デバイスに接続されている信号源を、障害デバイスから切り離す。そして、信号接続部３３は、障害デバイスから切り離された信号源を、代替デバイスに接続する。信号接続部３３は、代替デバイスから切り離された信号源を、障害デバイスに接続してもよい。
【００７１】
切り替え指示は、例えば、障害デバイスの識別子と代替デバイスの識別子の組み合わせを含む信号である。その場合、信号接続部３３は、識別子が組み合わせに含まれる２つのデバイスに接続される信号源が入れ替わるよう、デバイスと信号源を接続するスイッチの接続状態を変更する。
【００７２】
切り替え指示は、例えば、デバイスの識別子とそのデバイスに接続される信号源の識別子の組み合わせを表す信号であってもよい。その場合、接続制御部１１は、代替デバイスの識別子と障害デバイスに接続されている信号源の識別子の組み合わせを表す信号を、信号接続部３３に送信する。接続制御部１１は、さらに、障害デバイスの識別子を表す信号と、信号源が接続されないことを表す信号を、信号接続部３３に送信してもよい。接続制御部１１は、障害デバイスの識別子と代替デバイスに接続されている信号源の識別子の組み合わせを表す信号を、信号接続部３３に送信してもよい。
【００７３】
例えば、デバイス３２Ｂが代替デバイスであり、障害デバイスが検出されたときの信号接続部３３の状態が、図６に示す状態である場合、切り替え指示を受信した信号接続部の状態は、例えば図７に示す状態になる。
【００７４】
ステップＳ１０４からステップＳ１０６までの動作の順番は、図１０に示す順番に限られない。代替制御装置１は、ステップＳ１０４、ステップＳ１０５、及びステップＳ１０６の動作を、図１０に示す順番と異なる順番で行ってもよい。
【００７５】
次に、命令送信部１３が、障害デバイスに対する命令を、命令記憶部１４から読み出す（ステップＳ１０７）。
【００７６】
命令送信部１３は、応答が送信されていない命令だけを、命令記憶部１４から読み出すのが望ましい。障害デバイスに対する命令が、複数、命令記憶部１４に格納されている場合、命令記憶部１４は、それらの複数の命令を命令記憶部１４から読み出す。
【００７７】
次に、命令送信部１３は、読み出された命令を、バス２に対して送信する（ステップＳ１０８）。
【００７８】
複数の命令が読み出された場合、命令送信部１３は、それらの命令を、それらの命令が送信された順番で、バス２に対して送信してもよい。
【００７９】
送信された、障害デバイスに対する命令に対して、代替デバイスが応答する。前述のように、送信される命令が、デバイスに接続されている信号源からの信号を表すデータを送信する命令である場合、代替デバイスは、代替デバイスに接続されている信号を表すデータを、応答として送信する。代替デバイスに接続されている信号源は、障害デバイスが検出された時に、障害デバイスに接続されていた信号源である。従って、障害デバイスに対する命令を受信した代替デバイスは、障害デバイスに接続されていた信号源からの信号を表すデータを、応答として送信する。このことにより、制御装置４は、命令に対して応答を行わない障害デバイスに接続されている信号源からの信号を表すデータを取得することができる。
【００８０】
なお、例えばステップＳ１０８の動作の後、障害デバイスが検出された際代替デバイスに設定されていたアドレスを含む命令が送信された場合、代替制御装置１は、再び図１０の動作を行えばよい。その場合の障害デバイスのアドレスは、最初の図１０の動作において、障害デバイスが検出された際、代替デバイスに設定されていたアドレスである。その結果、例えば、最初の図１０の動作における代替デバイス以外に代替デバイスとして動作するデバイスが存在しなければ、その代替デバイスに当初設定されていたアドレスが設定される。最初の図１０の動作における代替デバイス以外にも、代替デバイスとして動作するデバイスが存在する場合、最初の図１０の動作における代替デバイスと代替デバイスとして動作する他のデバイスから、新たな代替デバイスが選択される。
【００８１】
以上で説明した本実施形態には、信号源に接続され、信号源からのデータを、バスを介してマスタ装置である制御装置４に送信するデバイスに障害が発生した場合でも、制御装置４がその信号源からのデータを得ることができるという第１の効果がある。
【００８２】
その理由は、障害検出部１０により障害デバイスが検出された場合、代替指示部１２が、選択された代替デバイスに対して、障害デバイスとして動作する指示を送信するからである。このことにより、代替デバイスが、障害デバイスに対する命令に応答する。そして、さらに、接続制御部１１が、障害デバイスに接続されていた信号源を、代替デバイスに接続するからである。このことにより、制御装置４が、障害デバイスに対する、障害デバイスに接続されていた信号源からの信号を表すデータを送信する命令を送信した場合、代替デバイスが、応答することができる。すなわち、代替デバイスが、障害デバイスに接続されていた信号源からの信号を表すデータを送信することができる。
【００８３】
本実施形態には、さらに、制御装置４が、デバイスに障害が検出された際に送信されていた、障害デバイスに対する命令を再送しなくても、その命令に対する応答を得ることができるという効果がある。
【００８４】
その理由は、命令送信部１３が、各デバイスが接続されたバス２に送信された命令を、命令記憶部１４に格納するからである。代替デバイスが障害デバイスとして動作をし始めた後、命令送信部１３が、応答が検出されていない、障害デバイスに対する命令を、命令記憶部１４から読み出して送信するからである。
【００８５】
次に、本発明の第２の実施形態について、図面を参照して詳細に説明する。
【００８６】
図１１は、本実施形態の情報処理システム１００Ａの構成を表す図である。
【００８７】
図１に示される第１の実施形態の情報処理システム１００の構成と比較すると、情報処理システム１００Ａは、代替制御装置１の代わりに代替制御装置１Ａを含む。
【００８８】
代替制御装置１Ａは、代替制御装置１の各構成要素に加えて、リセット部１５を含む。
【００８９】
リセット部１５は、障害デバイスに対して、リセットを指示する信号である、リセット信号を送信する。
【００９０】
各デバイスは、リセット信号を受信すると、リセットされる。すなわち、各デバイスは、リセット信号を受信すると、初期状態に戻る。デバイスが初期状態に戻るとは、例えば、そのデバイスの内部状態が初期状態に戻ることである。各デバイスは、例えば再起動することにより、初期状態に戻る。
【００９１】
情報処理システム１００Ａの他の構成要素は、第１の実施形態の情報処理システム１００の、同じ番号が付与された構成要素と同じである。
【００９２】
次に、本実施形態の代替制御装置１Ａの動作について、図面を参照して詳細に説明する。
【００９３】
代替制御装置１Ａの、障害デバイス検出時の動作は、図１０に示す、第１の実施形態の代替制御装置１の、障害デバイス検出時の動作と同じである。
【００９４】
図１２は、本実施形態の代替制御装置１Ａの、障害デバイス復帰処理時の動作を表すフローチャートである。
【００９５】
本実施形態では、代替制御装置１Ａは、図１０に示す動作の後、障害デバイスがバス２から切り離された状態で、図１２の動作を開始する。
【００９６】
まず、リセット部１５が、リセット信号を障害デバイスに送信する（ステップＳ２０１）。
【００９７】
障害デバイスが何らかの原因でハングアップしている場合、リセット信号を受信した障害デバイスは、リセットされる。すなわち、障害デバイスは、初期状態に戻る。例えば、障害デバイスが何らかの原因でハングアップしている場合、リセット信号を受信した障害デバイスは、再起動することにより、初期状態に戻る。障害デバイスが故障しており、正常に動作しない場合、障害デバイスは、リセット信号を受信してもリセットされない場合がある。例えば、障害デバイスが故障しており、正常に動作しない場合、障害デバイスは、リセット信号を受信しても、再起動せず、初期状態に戻らない場合がある。
【００９８】
次に、接続制御部１１は、障害デバイスをバス２に接続する指示である接続指示を、バス接続部３１に送信する（ステップＳ２０２）。接続指示は、例えば、障害デバイスとバス２が接続されているスイッチを接続状態にする信号である。
【００９９】
ステップＳ２０２の動作は、障害デバイスに生じた障害が、リセット信号の送信によって解消されたか否かを確認するための準備動作である。
【０１００】
ステップＳ２０２の動作が行われるまでに、代替指示部１２は、障害デバイスに対して、障害デバイスに割り当てられているアドレスを、例えば障害デバイスが検出された際に代替デバイスに設定されていたアドレスに変更する指示を表す信号を送信する。障害デバイスに割り当てられるアドレスは、他のデバイスに割り当てられているアドレスと異なるアドレスであれば、他のアドレスであってもかまわない。このことにより、障害デバイスの障害が解消されていれば、障害デバイスに割り当てられているアドレスは、変更される。
【０１０１】
また、ステップＳ２０２の動作が行われるまでに、接続制御部１１は、信号接続部３３に対して、障害デバイスに、例えば、障害デバイスが検出された際代替デバイスに接続されていた信号源を接続する指示を送信してもよい。接続制御部１１は、障害デバイスに、障害デバイスが検出された際代替デバイスに接続されていた信号源を接続する指示の送信を、例えば、後述のステップＳ２０４でＮｏである場合に行ってもよい。
【０１０２】
次に、障害検出部１０が、障害デバイスに障害があるか否かを検出する（ステップＳ２０３）。
【０１０３】
障害検出部１０は、まず、障害デバイスに割り当てられているアドレスが指定されている命令、すなわち、障害デバイスに割り当てられているアドレスを含む命令を生成する。次に、障害検出部１０は、生成された命令を、バス２に送信する。障害検出部１０は、命令送信部１３を介して、生成された命令を送信してもよい。前述のように、障害デバイスに割り当てられているアドレスは、他のデバイスに割り当てられているアドレスと異なるアドレスである。バス２に送信された命令は、バス２に接続されている全てのデバイスに送信される。障害デバイスに発生していた障害が解消していれば、障害デバイスは、障害検出部１０が生成した命令に対して、応答を行う。障害検出部１０は、障害検出部１０が生成した命令に対して、所定時間内に応答があった場合、障害デバイスに生じていた障害は解消したことを検出する。障害検出部１０は、障害検出部１０が生成した命令に対して、所定時間内に応答がない場合、障害デバイスに生じていた障害は解消されておらず、依然として障害デバイスに障害があることを検出する。
【０１０４】
障害検出部１０が障害があることを検出した場合（ステップＳ２０４においてＹｅｓ）、接続制御部１１は、障害デバイスとバス２の間の接続を切り離す切断指示を、バス接続部３１に送信する。そして、代替制御装置１は、ステップＳ２０１からの動作を繰り返してもよい。あるいは、代替制御装置１は、障害デバイスに、例えば再起動することによって回復する障害ではない故障が生じたと判断し、図１２の動作を終了してもよい。あるいは、代替制御装置１は、ステップＳ２０１からステップＳ２０５までの動作を、所定回数繰り返した後、図１２の動作を終了してもよい。
【０１０５】
障害検出部１０が、障害が解消されたことを検出した場合（ステップＳ２０４においてＮｏ）、接続制御装置１は、図１２の動作を終了する。
【０１０６】
ステップＳ２０３の動作の際に、障害デバイスに割り当てられているアドレスが、障害デバイスが検出された時に代替デバイスに割り当てられていたアドレスあれば、接続制御装置１は、そのまま図１２の動作を終了する。
【０１０７】
そうでない場合、代替指示部１２は、障害デバイスが検出された時に代替デバイスに割り当てられていたアドレスを、障害デバイスに割り当ててもよい。そして、接続制御装置１は、そのまま図１２の動作を終了する。
【０１０８】
あるいは、代替指示部１２は、代替指示部１２は、障害デバイスが検出された時に代替デバイスに割り当てられていたアドレスを、代替デバイスに割り当ててもよい。この場合、代替指示部１２は、さらに、障害デバイスが検出された時に障害デバイスに割り当てられていたアドレスを、障害デバイスに割り当てる。そして、接続制御装置１は、そのまま図１２の動作を終了する。
【０１０９】
以上で説明した本実施形態には、デバイスに発生した障害がリセットによって解消される障害である場合、障害デバイスを再び稼働させることができるという効果がある。
【０１１０】
その理由は、リセット部１５が障害デバイスにリセット信号を送信するからである。そして、障害デバイスに生じていた障害が解消されたことが検出された場合、障害デバイスが信号源とバス２に接続された状態に戻すからである。
【０１１１】
次に、本発明の第３の実施形態について、図面を参照して詳細に説明する。
【０１１２】
図１３は、本実施形態の代替制御装置１Ｂの構成の例を表すブロック図である。
【０１１３】
図１３を参照すると、本実施形態の代替制御装置１Ｂは、信号接続部３３を介して信号源に接続されると共にバス２に接続され、前記バス２を介して、受信した命令に対して前記信号源からの信号に基づくデータを返送する複数のデバイスから、障害が生じている障害デバイスを検出する障害検出部１０と、前記複数のデバイスのうち前記障害デバイス以外の特定デバイスであって、代替動作指示を受信すると前記障害デバイスに対する命令を受信して実行する代替デバイスに対して、前記代替動作指示を送信する代替指示部１２と、切り替え指示を受信すると、前記障害デバイスに接続されている前記信号源を、前記代替デバイスに接続する前記信号接続部３３に、前記切り替え指示を送信する接続制御部１１と、を含む。
【０１１４】
以上で説明した本実施形態には、第１の実施形態の第１の効果と同じ効果がある。
【０１１５】
その理由は、第１の実施形態の第１の効果と同じである。
【０１１６】
代替制御装置１、代替制御装置１Ａ、代替制御装置１Ｂは、それぞれ、コンピュータ及びコンピュータを制御するプログラム、専用のハードウェア、又は、コンピュータ及びコンピュータを制御するプログラムと専用のハードウェアの組合せにより実現することができる。
【０１１７】
図１４は、代替制御装置１、代替制御装置１Ａ、代替制御装置１Ｂを実現するために使用される、コンピュータ１０００の構成の一例を表す図である。図１４を参照すると、コンピュータ１０００は、プロセッサ１００１と、メモリ１００２と、記憶装置１００３と、Ｉ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）インタフェース１００４とを含む。また、コンピュータ１０００は、記録媒体１００５にアクセスすることができる。メモリ１００２と記憶装置１００３は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスクなどの記憶装置である。記録媒体１００５は、例えば、ＲＡＭ、ハードディスクなどの記憶装置、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、可搬記録媒体である。記憶装置１００３が記録媒体１００５であってもよい。プロセッサ１００１は、メモリ１００２と、記憶装置１００３に対して、データやプログラムの読み出しと書き込みを行うことができる。プロセッサ１００１は、Ｉ／Ｏインタフェース１００４を介して、例えば、バス２にアクセスすることができる。プロセッサ１００１は、記録媒体１００５にアクセスすることができる。記録媒体１００５には、コンピュータ１０００を代替制御装置１、代替制御装置１Ａ、あるいは代替制御装置１Ｂとして動作させるプログラムが格納されている。
【０１１８】
プロセッサ１００１は、記録媒体１００５に格納されている、コンピュータ１０００を代替制御装置１、代替制御装置１Ａ、あるいは代替制御装置１Ｂとして動作させるプログラムを、メモリ１００２にロードする。そして、プロセッサ１００１が、メモリ１００２にロードされたプログラムを実行することにより、コンピュータ１０００は代替制御装置１、代替制御装置１Ａ、あるいは代替制御装置１Ｂとして動作する。
【０１１９】
障害検出部１０、接続制御部１１、代替指示部１２、命令送信部１３、リセット部１５、バス接続部３１、バス接続部３１Ａ、バス接続部３１Ｂ、信号接続部３３、信号接続部３３Ａ、信号接続部３３Ｂは、例えば、プログラムを記憶する記録媒体１００５からメモリ１００２に読み込まれた、各部の機能を実現するための専用のプログラムと、そのプログラムを実行するプロセッサ１００１により実現することができる。また、命令記憶部１４は、コンピュータが含むメモリ１００２やハードディスク装置等の記憶装置１００３により実現することができる。あるいは、障害検出部１０、接続制御部１１、代替指示部１２、命令送信部１３、命令記憶部１４、リセット部１５、バス接続部３１、バス接続部３１Ａ、バス接続部３１Ｂ、信号接続部３３、信号接続部３３Ａ、信号接続部３３Ｂの一部又は全部を、各部の機能を実現する専用の回路によって実現することもできる。
【０１２０】
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０１２１】
１、１Ａ、１Ｂ    代替制御装置
２    バス
４    制御装置
１０    障害検出部
１１    接続制御部
１２    代替指示部
１３    命令送信部
１４    命令記憶部
１５    リセット部
３１、３１Ａ、３１Ｂ    バス接続部
３２Ａ、３２Ｂ    デバイス
３３、３３Ａ、３３Ｂ    信号接続部
３４Ａ、３４Ｂ    信号源
１００、１００Ａ    情報処理システム
１０００    コンピュータ
１００１    プロセッサ
１００２    メモリ
１００３    記憶装置
１００４    Ｉ／Ｏインタフェース
１００５    記録媒体
【図１】
2015011371.tif 000003
【図２】
2015011371.tif 000004
【図３】
2015011371.tif 000005
【図４】
2015011371.tif 000006
【図５】
2015011371.tif 000007
【図６】
2015011371.tif 000008
【図７】
2015011371.tif 000009
【図８】
2015011371.tif 000010
【図９】
2015011371.tif 000011
【図１０】
2015011371.tif 000012
【図１１】
2015011371.tif 000013
【図１２】
2015011371.tif 000014
【図１３】
2015011371.tif 000015
【図１４】
2015011371.tif 000016