(57)【要約】【課題】二重化構成を保証しつつ、同期条件を有する複数の装置のファームウェアを更新できる二重化システムにおけるファームウェア更新方法を提供する。【解決手段】ファームウェア更新方法は、第１装置におけるファームウェアと第２装置におけるファームウェアとの双方を更新する場合に、更新後のファームウェアを第１装置および第２装置に設定する設定処理を行い、設定処理が終了したら、第１装置と第２装置との各々に設定された更新後のファームウェアを稼働ファームウェアとする切替処理を行う。【選択図】図１２
2016173636.tif 000002
【特許請求の範囲】
【請求項１】
二重化され稼働ファームウェアに基づいて制御処理を行う第１装置と二重化され稼働ファームウェアに基づいて制御処理を行う第２装置とが、第１パスと第２パスとで接続された二重化システムにおけるファームウェア更新方法であって、
前記第１装置におけるファームウェアと前記第２装置におけるファームウェアとの双方を更新する場合に、更新後のファームウェアを前記第１装置および前記第２装置に設定する設定処理を行い、
前記設定処理が終了したら、前記第１装置と前記第２装置との各々に設定された更新後のファームウェアを稼働ファームウェアとする切替処理を行う
ことを特徴とするファームウェア更新方法。
【請求項２】
第１装置における２系統の各々に２つのファームウェア格納部が設けられ、第２装置における２系統の各々に２つのファームウェア格納部が設けられた二重化システムにおけるファームウェア更新方法であり、
設定処理で、更新前ファームウェアが格納されている格納部でない方の格納部に更新後のファームウェアを設定する二重化再設定処理を行う
請求項１記載のファームウェア更新方法。
【請求項３】
切替処理の終了後に、更新前ファームウェアが格納されている格納部に更新後のファームウェアを設定する
請求項２記載のファームウェア更新方法。
【請求項４】
設定処理で、第１パスと第２パスとのうち運用系パスでない待機系パスを介して更新後のファームウェアを設定する
請求項１から請求項３のうちのいずれか１項に記載のファームウェア更新方法。
【請求項５】
設定処理中に、待機系パスで転送される更新後のファームウェアに基づく制御処理の実行を禁止する
請求項４記載の運用方法。
【請求項６】
二重化され稼働ファームウェアに基づいて制御処理を行う第１装置と二重化され稼働ファームウェアに基づいて制御処理を行う第２装置とが、第１パスと第２パスとで接続された二重化システムであって、
前記第１装置における２系統の各々に２つのファームウェア格納部が設けられ、
前記第２装置における２系統の各々に２つのファームウェア格納部が設けられ、
更新前ファームウェアが格納されている格納部でない方の格納部に更新後のファームウェアを設定する設定部と、
前記設定処理が終了したら、前記第１装置と前記第２装置との各々に設定された更新後のファームウェアを稼働ファームウェアとする切替処理を行う切替部とを備える
ことを特徴とする二重化システム。
【請求項７】
設定部は、切替処理の終了後に、更新前ファームウェアが格納されている格納部に更新後のファームウェアを設定する二重化再設定処理を行う
請求項６記載の二重化システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、二重化システムにおけるファームウェア更新方法および二重化システムに関する。
【背景技術】
【０００２】
運用システムを構成する装置の制御用ソフトウェアを更新する技術が、例えば特許文献１〜２に記載されている。
【０００３】
特許文献１には、二重化装置において通常運用を停止することなく、運用系のモジュールと、待機系のモジュールとを自動的にアップデートする自動アップデート方法が記載されている。
【０００４】
特許文献２には、システムの負荷を抑制しつつ、システムにおける連続運用が実現されるように、待機系のソフトウェアを更新する冗長システムが記載されている。
【０００５】
また、特許文献３には、装置内のファームウェア（ＦＷ）を更新する技術が記載されている。ファームウェアは、コンピュータなどに内蔵されるソフトウェアの一種である。ファームウェアは、コンピュータ内部の回路や装置などを制御する機能を有する。
【０００６】
特許文献３には、書き換え中にファームウェアが動作することを回避しつつ、短い時間でファームウェアを更新できるようにする情報処理装置が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００８−２１７２０１号公報
【特許文献２】特開２０１０−１４６０４４号公報
【特許文献３】特開２０１２−１９４７９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
複数の機器で構成されるシステムにおいて、機器に新機能を追加する時などには、複数の機器が連携を取れるように、複数の機器のファームウェアを同時に更新することが求められる場合がある。
【０００９】
例えば、システム内の一つの機器のファームウェアのみを更新した場合を考える。一つの機器のみが更新された後もシステムを通常通り運用させると、新ファームウェアが適用された機器（新機器）から旧ファームウェアが適用された機器（旧機器）に、新機能に関する命令が発行される場合がある。
【００１０】
しかし、旧機器において新機能に関する命令は未知の命令であるため、旧機器は、発行された命令を不正指示による命令とみなす。このように、一つの機器のファームウェアのみを更新すると、旧機器と新機器が連携を取れない状態に陥るため、システムの運用に支障が出る可能性がある。
【００１１】
上記のようにシステム内の機器間に同期条件が存在する時、機器のファームウェアを更新する際、管理者は、以下の方法でファームウェアを更新することを求められる。機器のファームウェアの更新のために、管理者は、一旦システムの運用を停止する。システムの運用を停止した後、管理者は、全ての機器のファームウェアを更新し、更新した後にシステムの運用を再開させるという方法である。
【００１２】
システムの運用を停止した後に全ての機器のファームウェアを更新しシステムの運用を再開させた場合、システム内の全ての機器には新ファームウェアが適用されているため、再開された運用において複数の機器が連携を取れない状態は発生しない。しかし、上記の方法では、ファームウェアの更新の際に必ずシステムの運用が一旦停止する。システムの提供するサービスによっては、可能な限りシステムの運用を停止させないことが求められる。
【００１３】
上記の特許文献１〜３に記載されている技術において、二重化構成を保証しつつ、システム内の同期条件が存在する複数の機器のファームウェアを同時に更新することは想定されていない。
【００１４】
そこで、本発明は、二重化構成を保証しつつ、同期条件を有する複数の装置のファームウェアを更新できる二重化システムにおけるファームウェア更新方法および二重化システムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明によるファームウェア更新方法は、二重化され稼働ファームウェアに基づいて制御処理を行う第１装置と二重化され稼働ファームウェアに基づいて制御処理を行う第２装置とが、第１パスと第２パスとで接続された二重化システムにおけるファームウェア更新方法であって、第１装置におけるファームウェアと第２装置におけるファームウェアとの双方を更新する場合に、更新後のファームウェアを第１装置および第２装置に設定する設定処理を行い、設定処理が終了したら、第１装置と第２装置との各々に設定された更新後のファームウェアを稼働ファームウェアとする切替処理を行うことを特徴とする。
【００１６】
本発明による二重化システムは、二重化され稼働ファームウェアに基づいて制御処理を行う第１装置と二重化され稼働ファームウェアに基づいて制御処理を行う第２装置とが、第１パスと第２パスとで接続された二重化システムであって、第１装置における２系統の各々に２つのファームウェア格納部が設けられ、第２装置における２系統の各々に２つのファームウェア格納部が設けられ、更新前ファームウェアが格納されている格納部でない方の格納部に更新後のファームウェアを設定する設定部と、設定処理が終了したら、第１装置と第２装置との各々に設定された更新後のファームウェアを稼働ファームウェアとする切替処理を行う切替部とを備えることを特徴とする。
【発明の効果】
【００１７】
本発明によれば、二重化構成を保証しつつ、同期条件を有する複数の装置のファームウェアを同時に更新できる。
【図面の簡単な説明】
【００１８】
【図１】本発明による運用システムの本実施形態の構成例を示すブロック図である。
【図２】装置１００、装置２００および装置３００のファームウェアを更新する際の同期条件を示す説明図である。
【図３】本実施形態における運用システムによる更新処理の動作を示すフローチャートである。
【図４】図１に示す運用システム１０００による更新処理の動作を示すフローチャートである。
【図５】運用システム１０００の他の構成例を示すブロック図である。
【図６】運用システム１０００の他の構成例を示すブロック図である。
【図７】運用システム１０００の他の構成例を示すブロック図である。
【図８】運用システム１０００の他の構成例を示すブロック図である。
【図９】運用システム１０００の他の構成例を示すブロック図である。
【図１０】運用システム１０００の他の構成例を示すブロック図である。
【図１１】運用システム１０００の他の構成例を示すブロック図である。
【図１２】本発明によるファームウェア更新方法の概要を示すフローチャートである。
【図１３】本発明による二重化システムの概要を示すブロック図である。
【発明を実施するための形態】
【００１９】
［構成の説明］
以下、本発明の実施形態を、図面を参照して説明する。図１は、本発明による運用システムの本実施形態の構成例を示すブロック図である。図１に示す運用システム１０００は、装置１００と、装置２００と、装置３００と、パス４００と、パス５００とを含む。なお、運用システム１０００に含まれる装置の数は、３つ以外でもよい。
【００２０】
装置１００は、パス４００、またはパス５００を介して装置２００、および装置３００と通信可能に接続する。装置２００、装置３００も、パス４００、またはパス５００を介して他の装置と通信可能に接続する。
【００２１】
運用システム１０００の通常の運用において、パス４００とパス５００のうちのいずれかが運用系のパスになり、運用系のパスではないパスが待機系のパスになる。図１に示す例では、パス４００が運用系のパスであり、パス５００が待機系のパスである。図１における二重線で示された箇所は、運用系の箇所であることを意味する。以下、他の図においても同様である。
【００２２】
装置１００は、制御部１１０と、制御部１２０とを含む。本実施形態において、装置１００は、運用システム１０００全体を管理する機能を有する。なお、運用システム１０００全体を管理する機能は装置１００ではなく、他の装置が有していてもよい。また、装置１００以外の構成要素が、ファームウェアを更新する機能を有していてもよい。
【００２３】
制御部１１０は、ＦＷ格納部１１１と、ＦＷ格納部１１２とを有する。制御部１１０は、ファームウェアに従って動作する。制御部１１０が従うファームウェアは、ＦＷ格納部１１１、およびＦＷ格納部１１２に格納される。制御部１１０は、ＦＷ格納部１１１とＦＷ格納部１１２のうちのいずれかを、使用中のファームウェアが格納される格納部として使用する。
【００２４】
また、制御部１１０は、使用中のファームウェアが格納される格納部として使用されない他のＦＷ格納部を、更新用ファームウェアが格納される格納部として使用する。図１に示す例では、ＦＷ格納部１１１が使用中のファームウェアが格納される格納部であり、ＦＷ格納部１１２が更新用ファームウェアが格納される格納部である。
【００２５】
図１に示す例において、ＦＷ格納部１１２には、予め更新用ファームウェアが格納されている。使用中のファームウェアが格納される格納部が、任意の時機にＦＷ格納部１１１からＦＷ格納部１１２に切り替えられることによって、制御部１１０が従うファームウェアが更新される。
【００２６】
ＦＷ格納部１１２が使用中のファームウェアが格納される格納部として使用されている場合、ＦＷ格納部１１１に更新用ファームウェアが格納される。使用中のファームウェアが格納される格納部が、任意の時機にＦＷ格納部１１２からＦＷ格納部１１１に切り替えられることによって、制御部１１０が従うファームウェアが更新される。
【００２７】
制御部１２０が従うファームウェアは、制御部１２０が有するＦＷ格納部１２１、およびＦＷ格納部１２２に格納される。制御部１２０は、制御部１１０と同様にＦＷ格納部を使用する。
【００２８】
装置１００は、制御部１１０、または制御部１２０により制御される。制御部１１０と制御部１２０の機能は同一である。制御部１１０と制御部１２０のうちのいずれかが運用系の制御部になり、運用系の制御部ではない制御部が待機系の制御部になる。図１に示す例では、制御部１１０が運用系の制御部であり、制御部１２０が待機系の制御部である。
【００２９】
例えば、運用系の制御部である制御部１１０に障害が発生した際、制御部１１０は、制御部１２０を運用系の制御部に切り替える。なお、制御部１１０と制御部１２０の、使用中のファームウェアが格納されるＦＷ格納部に格納されている各ファームウェアは、通常時、同一のファームウェアである。また、運用系の制御部に障害が発生したことを検知する障害制御部（図示せず）が設けられ、障害制御部が、運用系の制御部の障害が発生したことを検知したときに、運用系の制御部を非アクティブに設定するとともに待機系の制御部を起動するように構成されていてもよい。
【００３０】
制御部１１０は、パス４１１を介してパス４００と、パス５１１を介してパス５００とそれぞれ通信可能に接続する。制御部１２０は、パス４１２を介してパス４００と、パス５１２を介してパス５００とそれぞれ通信可能に接続する。図１に示すように、運用系の制御部である制御部１１０と運用系のパス４００とを接続するパス４１１が、運用系のパスになる。
【００３１】
本実施形態において、制御部とパス４００、およびパス５００とを接続するパスの接続モードとして、「通常モード」と「更新モード」をそれぞれ定義する。通常モードのパスを介して接続する場合、制御部は、全ての命令を送受信できる。更新モードのパスを介して接続する場合、制御部は、更新に関する命令のみ送受信できる。更新に関する命令は、例えば、ファームウェアの更新指示や、パスの接続モードの変更指示である。
【００３２】
なお、本実施形態において、更新モードのパスを介して接続する場合に制御部が使用する命令は、ファームウェアが更新されても変更されないとする。すなわち、更新モードのパスを介して接続する場合、例えば、装置Ａと装置Ｂの間に同期条件が存在する場合でも、新ファームウェアに従う装置Ａの制御部と、旧ファームウェアに従う装置Ｂの制御部は、同時に同一のパスに接続できる。なお、装置Ａの制御部と装置Ｂの制御部は、どちらかが更新モードのパスを介して対象のパスに接続すればよい。
【００３３】
装置２００は、制御部２１０と、制御部２２０とを含む。装置３００は、制御部３１０と、制御部３２０とを含む。装置２００および装置３００は、装置１００と同様に制御部に制御される。
【００３４】
制御部２１０はＦＷ格納部２１１〜２１２を、制御部２２０はＦＷ格納部２２１〜２２２をそれぞれ有する。また、制御部３１０はＦＷ格納部３１１〜３１２を、制御部３２０はＦＷ格納部３２１〜３２２をそれぞれ有する。制御部２１０、制御部２２０、制御部３１０および制御部３２０も、制御部１１０と同様にＦＷ格納部を使用する。
【００３５】
制御部２１０は、パス４２１を介してパス４００と、パス５２１を介してパス５００とそれぞれ通信可能に接続する。制御部２２０は、パス４２２を介してパス４００と、パス５２２を介してパス５００とそれぞれ通信可能に接続する。図１に示すように、運用系の制御部である制御部２１０と運用系のパス４００とを接続するパス４２１が、運用系のパスになる。
【００３６】
制御部３１０は、パス４３１を介してパス４００と、パス５３１を介してパス５００とそれぞれ通信可能に接続する。制御部３２０は、パス４３２を介してパス４００と、パス５３２を介してパス５００とそれぞれ通信可能に接続する。図１に示すように、運用系の制御部である制御部３１０と運用系のパス４００とを接続するパス４３１が、運用系のパスになる。
【００３７】
すなわち、図１に示す運用システム１０００において、装置１００は、制御部１１０およびパス４１１を使用してシステム運用（ファームウェアに基づく所定の制御処理）を行う。また、装置２００は、制御部２１０およびパス４２１を使用してシステム運用（ファームウェアに基づく所定の制御処理）を行う。また、装置３００は、制御部３１０およびパス４３１を使用してシステム運用（ファームウェアに基づく所定の制御処理）を行う。
【００３８】
また、図１に示す運用システム１０００において、システム運用における装置間の処理は、運用系であるパス４００を介して行われる。また、使用中のファームウェアが格納される格納部は、ＦＷ格納部１１１、ＦＷ格納部１２１、ＦＷ格納部２１１、ＦＷ格納部２２１、ＦＷ格納部３１１およびＦＷ格納部３２１である。
【００３９】
装置１００、装置２００および装置３００の間には、ファームウェアを更新する際の同期条件が存在する。ファームウェアを更新する際の同期条件を図２に示す。図２は、装置１００、装置２００および装置３００のファームウェアを更新する際の同期条件を示す説明図である。
【００４０】
以下、図２に示す同期条件の意味を説明する。装置１００の場合、同期条件として「新２００」と「旧３００／新３００」が示されている。すなわち、装置１００の同期条件は、装置１００の新ファームウェアに従う制御部を通常モードのパスを介して接続させるために、通常モードのパスを介して接続される装置２００の制御部が新ファームウェアに従うことが求められることを示す。
【００４１】
また、装置１００の同期条件は、装置１００の新ファームウェアに従う制御部を通常モードのパスを介して接続させる際、通常モードのパスを介して接続される装置３００の制御部が新ファームウェアまたは旧ファームウェアのいずれに従ってもよいことを示す。
【００４２】
装置２００の場合、同期条件として「新１００」と「新３００」が示されている。すなわち、装置２００の同期条件は、装置２００の新ファームウェアに従う制御部を通常モードのパスを介して接続させるために、通常モードのパスを介して接続される装置１００の制御部が新ファームウェアに従うことが求められることを示す。また、装置２００の同期条件は、通常モードのパスを介して接続される装置３００の制御部が新ファームウェアに従うことが求められることを示す。
【００４３】
装置３００の場合、同期条件として「旧１００／新１００」と「旧２００／新２００」が示されている。すなわち、装置３００の同期条件は、装置３００の新ファームウェアに従う制御部を通常モードのパスを介して接続させる際、通常モードのパスを介して接続される装置１００の制御部が新ファームウェアまたは旧ファームウェアのいずれに従ってもよいことを示す。また、装置３００の同期条件は、通常モードのパスを介して接続される装置２００の制御部が新ファームウェアまたは旧ファームウェアのいずれに従ってもよいことを示す。
【００４４】
［動作の説明］
以下、本実施形態の運用システム１０００による装置１００、装置２００および装置３００の制御部が従うファームウェアを旧ファームウェアから新ファームウェアに更新する動作を、図３〜図４を参照して説明する。図３は、本実施形態における運用システムによる更新処理の動作を示すフローチャートである。また、図４は、図１に示す運用システム１０００による更新処理の動作を示すフローチャートである。
【００４５】
図１に示す装置１００、装置２００および装置３００の状態は、制御部が従うファームウェアがまだ更新されていない初期状態である。図１に示す運用システムを、簡略的な構成図を用いて再度図５に示す。図５は、運用システム１０００の他の構成例を示すブロック図である。
【００４６】
図５に示す例では、簡単のため、ＦＷ格納部の記載が省略されている。図５に示す「制御部（旧）」は、制御部が旧ファームウェアに従って動作することを意味する。
【００４７】
装置１００は、予め各装置の制御部に対して更新用ファームウェアを配信する。更新用ファームウェアが配信されると、装置１００は、更新用ファームウェアが格納されるＦＷ格納部１１２およびＦＷ格納部１２２に、配信されたファームウェアを格納する。
【００４８】
同様に、装置２００は、ＦＷ格納部２１２およびＦＷ格納部２２２に、配信されたファームウェアを格納する。装置３００は、ＦＷ格納部３１２およびＦＷ格納部３２２に、配信されたファームウェアを格納する。
【００４９】
なお、配信されたファームウェアが格納された時点ではＦＷ格納部の役割の切り替えが行われないため、各制御部が従うファームウェアは、旧ファームウェアのままである。
【００５０】
図５に示すように、更新処理の動作の説明において、パス４００を旧系のパス、パス５００を新系のパスとそれぞれする。また、実線または二重線は通常モードのパスを意味し、破線は更新モードのパスを意味する。
【００５１】
装置１００は、運用システム１０００内の各装置への指示を、運用系のパスであるパス４００を介して送信する。装置１００は、運用システム１０００内の各装置に関して、ファームウェアを更新する際の同期条件の考慮が求められるか否かをそれぞれ確認する（ステップＳ１００）。
【００５２】
同期条件の考慮が求められない装置がある場合（ステップＳ１００におけるＮｏ）、装置１００は、同期条件の考慮が求められない装置の制御部が従うファームウェアを全て更新させる（ステップＳ１０４）。
【００５３】
図２を参照すると、同期条件の考慮が求められない装置は装置３００である。よって、装置１００は、装置３００の制御部３１０および制御部３２０が新ファームウェアに従って動作するように、ファームウェアを更新させる。
【００５４】
具体的には、装置１００は、使用中のファームウェアが格納される格納部を、ＦＷ格納部３１１およびＦＷ格納部３２１から、ＦＷ格納部３１２およびＦＷ格納部３２２に切り替える指示を送信する。装置１００は、装置３００に対する切り替え指示を、パス４００を介して送信する。
【００５５】
同期条件の考慮が求められる装置がある場合（ステップＳ１００におけるＹｅｓ）、装置１００は、同期条件の考慮が求められる装置の、制御部と新系のパス５００とを接続する全てのパスの接続モードを変更させる（ステップＳ１０１）。
【００５６】
図２を参照すると、同期条件の考慮が求められる装置は装置１００と装置２００である。よって、装置１００は、装置１００の制御部１１０および制御部１２０と新系のパス５００とを接続するパスの接続モードを更新モードに変更する指示を送信する。また、装置１００は、装置２００の制御部２１０および制御部２２０と新系のパス５００とを接続するパスの接続モードを更新モードに変更する指示を送信する。なお、パスの接続モードを更新モードにするということは、例えば、制御部２１０および制御部２２０を、パスを介して入力される命令に基づいて所定の制御処理を実行しないように指示することである。すなわち、パスで転送される更新後のファームウェアに基づく制御処理の実行を禁止することである。
【００５７】
各装置の待機系の制御部を更新モードのパスを介して新系のパスに接続させる理由は、待機系の制御部が新ファームウェアに従って動作するようにＦＷ格納部の役割を切り替える後続の処理に備えるためである。すなわち、１つの装置のＦＷ格納部の役割が切り替えられた際、旧ファームウェアに従う制御部と、他の装置の新ファームウェアに従う制御部が同時に新系のパスに通常モードのパスを介して接続することを防ぐためである。
【００５８】
また、各装置の運用系の制御部を更新モードのパスを介して新系のパスに接続させる理由は、運用系を新系のパスおよび待機系の制御部に切り替える後続の処理に備えるためである。すなわち、運用系が切り替えられた際、旧ファームウェアに従う制御部と、他の装置の新ファームウェアに従う制御部が同時に新系のパスに通常モードのパスを介して接続することを防ぐためである。
【００５９】
図６は、運用システム１０００の他の構成例を示すブロック図である。具体的には、図６に示すように、装置１００は、パス５１１、パス５１２、パス５２１およびパス５２２の接続モードをそれぞれ更新モードに変更する指示を送信する。なお、図６に示す「制御部（新）」は、制御部が新ファームウェアに従って動作することを意味する。
【００６０】
次いで、装置１００は、同期条件の考慮が求められる装置の待機系の制御部と旧系のパス４００とを接続する全てのパスの接続モードを変更させる（ステップＳ１０２）。
【００６１】
具体的には、装置１００は、待機系の制御部である装置１００の制御部１２０と旧系のパス４００とを接続するパスの接続モードを更新モードに変更する指示を送信する。また、装置１００は、待機系の制御部である装置２００の制御部２２０と旧系のパス４００とを接続するパスの接続モードを更新モードに変更する指示を送信する。
【００６２】
図７は、運用システム１０００の他の構成例を示すブロック図である。具体的には、図７に示すように、装置１００は、パス４１２およびパス４２２の接続モードをそれぞれ更新モードに変更する指示を送信する。
【００６３】
なお、各装置の待機系の制御部を更新モードのパスを介して旧系のパスに接続させる理由は、待機系の制御部が新ファームウェアに従って動作するようにＦＷ格納部の役割を切り替える後続の処理に備えるためである。すなわち、ＦＷ格納部の役割が切り替えられた際、旧ファームウェアに従う制御部と、他の装置の新ファームウェアに従う制御部が同時に旧系のパスに通常モードのパスを介して接続することを防ぐためである。
【００６４】
次いで、装置１００は、待機系の制御部が新ファームウェアに従って動作するように、ファームウェアを更新させる（ステップＳ１０３）。具体的には、装置１００は、装置１００の制御部１２０および装置２００の制御部２２０が新ファームウェアに従って動作するようにＦＷ格納部の役割を切り替える指示を送信する。
【００６５】
装置１００は、使用中のファームウェアが格納される格納部を、ＦＷ格納部１２１およびＦＷ格納部２２１から、ＦＷ格納部１２２およびＦＷ格納部２２２に切り替える指示を送信する。装置１００は、装置２００に対する切り替え指示を、パス４００を介して送信する。
【００６６】
次いで、装置１００は、全装置の待機系の制御部が全て、新ファームウェアに従って動作すること、すなわち使用中のファームウェアが格納されるＦＷ格納部の役割が切り替えられたことを確認する（ステップＳ１０５）。確認した後、装置１００は、新系のパス５００に通常モードのパスを介して接続していない待機系の制御部を、パス５００に通常モードのパスを介して接続させる指示を各装置に送信する（ステップＳ１０６）。
【００６７】
新系のパス５００に通常モードのパスを介して接続していない待機系の制御部は、具体的には、図７に示すように、更新モードのパスを介してパス５００に接続している、制御部１２０と制御部２２０である。装置１００は、制御部１２０とパス５００とを接続するパス５１２の接続モード、および制御部２２０とパス５００とを接続するパス５２２の接続モードを、それぞれ通常モードに変更する指示を送信する。
【００６８】
パス５１２とパス５２２の接続モードが通常モードに変更された後の運用システム１０００を図８に示す。図８は、運用システム１０００の他の構成例を示すブロック図である。
【００６９】
図８に示すように、旧系のパス４００には旧ファームウェアに従う制御部のみが通常モードのパスを介して接続された状態になる。また、新系のパス５００には新ファームウェアに従う制御部のみが通常モードのパスを介して接続された状態になる。図８に示す状態において、装置１００は、運用系を旧系のパス４００から新系のパス５００に切り替える指示を送信する（ステップＳ１０７）。
【００７０】
図９は、運用システム１０００の他の構成例を示すブロック図である。図９に示すように、ステップＳ１０７において、装置１００は、待機系の制御部である制御部１２０、制御部２２０、および制御部３２０を運用系に変更する指示を送信する。各制御部の運用系への変更に伴い、パス５１２、パス５２２、およびパス５３２も運用系に変更される。
【００７１】
以上の設定変更により、新系のパス５００が運用系に、旧系のパス４００が待機系にそれぞれ切り替えられる。切り替えられた後、運用システム１０００において、新ファームウェアに従う制御部が新系のパス５００を介してシステム運用を行う。設定変更において、運用システム１０００による運用は停止せず、継続したままである。
【００７２】
以後、装置１００は、運用システム１０００内の各装置への指示を、新たな運用系であるパス５００を介して送信する。パスの役割を切り替えた後、装置１００は、旧ファームウェアに従って動作する制御部が新ファームウェアに従って動作するための変更処理を行う。装置１００は、同期条件の考慮が求められる装置の、待機系に切り替えられた制御部と旧系のパス４００とを接続する全てのパスの接続モードを変更させる（ステップＳ１０８）。
【００７３】
図１０は、運用システム１０００の他の構成例を示すブロック図である。具体的には、図１０に示すように、装置１００は、待機系の制御部である装置１００の制御部１１０と旧系のパス４００とを接続するパスの接続モードを更新モードに変更する指示を送信する。
【００７４】
また、装置１００は、待機系の制御部である装置２００の制御部２１０と旧系のパス４００とを接続するパスの接続モードを更新モードに変更する指示を送信する。図１０に示すように、装置１００は、パス４１１およびパス４２１の接続モードをそれぞれ更新モードに変更する指示を送信する。
【００７５】
なお、各装置の待機系の制御部を更新モードのパスを介して旧系のパスに接続させる理由は、待機系の制御部が新ファームウェアに従って動作するようにＦＷ格納部の役割を切り替える後続の処理に備えるためである。すなわち、１つの装置のＦＷ格納部の役割が切り替えられた際、旧ファームウェアに従う制御部と、他の装置の新ファームウェアに従う制御部が同時に旧系のパスに通常モードのパスを介して接続することを防ぐためである。
【００７６】
次いで、装置１００は、待機系に切り替えられた制御部が新ファームウェアに従って動作するように、ファームウェアを更新させる（ステップＳ１０９）。具体的には、装置１００は、装置１００の制御部１１０および装置２００の制御部２１０が新ファームウェアに従って動作するようにＦＷ格納部の役割を切り替える指示を送信する。
【００７７】
装置１００は、使用中のファームウェアが格納される格納部を、ＦＷ格納部１１１およびＦＷ格納部２１１から、ＦＷ格納部１１２およびＦＷ格納部２１２に切り替える指示を送信する。装置１００は、装置２００に対する切り替え指示を、パス５００を介して送信する。
【００７８】
次いで、装置１００は、運用システム１０００内の全ての制御部が新ファームウェアに従って動作すること、すなわちＦＷ格納部の役割が全て切り替えられたことを確認する（ステップＳ１１０）。
【００７９】
確認した後、装置１００は、パスの接続モードを通常モードに変更する指示を送信する（ステップＳ１１１）。すなわち、装置１００は、旧系のパス４００および新系のパス５００と通常モードのパスを介して接続していない制御部を、それぞれのパスに通常モードのパスを介して接続させる指示を各装置に送信する。
【００８０】
旧系のパス４００に通常モードのパスを介して接続していない制御部は、具体的には、図１０に示すように、更新モードのパスを介してパス４００に接続している制御部１１０、制御部１２０、制御部２１０、および制御部２２０である。
【００８１】
装置１００は、制御部１１０とパス４００とを接続するパス４１１の接続モード、および制御部１２０とパス４００とを接続するパス４１２の接続モードをそれぞれ通常モードに変更する指示を送信する。また、装置１００は、制御部２１０とパス４００とを接続するパス４２１の接続モード、および制御部２２０とパス４００とを接続するパス４２２の接続モードをそれぞれ通常モードに変更する指示を送信する。
【００８２】
また、新系のパス５００に通常モードのパスを介して接続していない制御部は、具体的には、図１０に示すように、更新モードのパスを介してパス５００に接続している制御部１１０および制御部２１０である。装置１００は、制御部１１０とパス５００とを接続するパス５１１の接続モード、および制御部２１０とパス５００とを接続するパス５２１の接続モードをそれぞれ通常モードに変更する指示を送信する。
【００８３】
各パスの接続モードが通常モードに変更された後の運用システム１０００を図１１に示す。図１１は、運用システム１０００の他の構成例を示すブロック図である。図１１に示す状態が、運用システム１０００におけるファームウェアの更新処理が完了した状態である。各パスの接続モードを通常モードに変更した後、運用システム１０００は、更新処理を終了する。
【００８４】
以上の処理により、装置間にファームウェア更新に関する同期条件が存在する場合であっても、システムの運用が停止されることなく、全装置のファームウェアが更新される。複数の機器で構成される運用システム１０００は、システム運用を継続しながら、機器のファームウェアを更新できる。
【００８５】
［効果の説明］
本実施形態における複数の機器で構成される運用システムによれば、各機器のファームウェアの更新において、旧ファームウェアに制御される旧機器と、新ファームウェアに制御される新機器に同期条件が存在する場合であっても、システムの運用を停止することなく、ファームウェアを更新できる。
【００８６】
その理由は、本実施形態における運用システムは、二重化パスのうち、一方のパスを旧系パス、他方のパスを新系パスにする。また、装置の制御部とパスとの接続状態に関して、通常の接続状態になる「通常モード」と、更新処理に関する命令のみを受け付ける接続状態になる「更新モード」がそれぞれ定義される。
【００８７】
旧機器は、旧系パスに通常モードで接続され、新系パスに更新モードで接続される。また、新機器は、新系パスに更新モードで接続され、旧系パスに更新モードで接続される。このように旧機器と新機器の同期条件に抵触しない状態で新機器のファームウェアを更新するため、運用システムは、運用を継続しながらファームウェアを更新できる。
【００８８】
新機器のファームウェアが全て更新された後、新機器は新系パスに通常モードで接続され、運用系が旧系パスから新系パスに切り替えられる。切り替えられた後、旧機器のファームウェアが新ファームウェアに更新され、二重化状態が復旧される。
【００８９】
次に、本発明の概要を説明する。図１２は、本発明によるファームウェア更新の概要を示すフローチャートである。図１２に示すように、ファームウェア更新方法は、第１装置におけるファームウェアと第２装置におけるファームウェアとの双方を更新する場合に、更新後のファームウェアを第１装置および第２装置に設定する設定処理を行い（ステップＳ１１）、設定処理が終了したら、第１装置と前記第２装置との各々に設定された更新後のファームウェアを稼働ファームウェアとする切替処理を行う（ステップＳ１２）。
【００９０】
そのような構成により、二重化構成を保証しつつ、複数の装置のファームウェアを同時に更新できる。
【００９１】
ファームウェア更新方法は、第１装置における２系統の各々に２つのファームウェア格納部（例えば、ＦＷ格納部１１１，１１２とＦＷ格納部１２１，１２２）が設けられ、第２装置における２系統の各々に２つのファームウェア格納部（例えば、ＦＷ格納部２１１，２１２とＦＷ格納部２２１，２２２、またはＦＷ格納部３１１，３１２とＦＷ格納部３２１，３２２）が設けられた二重化システムにおけるファームウェア更新方法であって、設定処理で、更新前ファームウェアが格納されている格納部でない方の格納部に更新後のファームウェアを設定する二重化再設定処理を行うように構成されていてもよい。
【００９２】
そのような構成によれば、二重化構成を保証しつつ複数の装置のファームウェアを同時に更新する方法が容易に実現される。
【００９３】
切替処理の終了後に、更新前ファームウェアが格納されている格納部に更新後のファームウェアを設定するように構成されていてもよい。
【００９４】
そのような構成によれば、確実な二重化構成に戻すことができる。
【００９５】
設定処理で、第１パスと第２パスとのうち運用系パスでない待機系パスを介して更新後のファームウェアを設定するように構成されていてもよい。
【００９６】
そのような構成によれば、容易に、二重化構成を保証しつつ複数の装置のファームウェアを同時に更新できる。
【００９７】
設定処理中に、待機系パスで転送される更新後のファームウェアに基づく制御処理の実行を禁止するように構成されていてもよい。
【００９８】
そのような構成によれば、容易に、二重化構成を保証しつつ複数の装置のファームウェアを同時に更新できる。
【００９９】
図１３は、本発明による二重化システムの概要を示すブロック図である。図１３に示すように、二重化システムは、二重化され稼働ファームウェアに基づいて制御処理を行う第１装置１１（例えば、装置１００）と二重化され稼働ファームウェアに基づいて制御処理を行う第２装置１２（例えば、装置２００または装置３００）とが、第１パス１３（例えば、パス４００）と第２パス１４（例えば、パス５００）とで接続され、第１装置１１における２系統（例えば、制御部１１０，１２０）の各々に２つのファームウェア格納部１０１，１０２，１０３，１０４（例えば、ＦＷ格納部１１１，１１２とＦＷ格納部１２１，１２２）が設けられ、第２装置における２系統（例えば、制御部２１０，２２０または制御部３１０，３２０）の各々に２つのファームウェア格納部２０１，２０２，２０３，２０４（例えば、ＦＷ格納部２１１，２１２とＦＷ格納部２２１，２２２、またはＦＷ格納部３１１，３１２とＦＷ格納部３２１，３２２）が設けられ、更新前ファームウェアが格納されている格納部でない方の格納部に更新後のファームウェアを設定する設定部１５（例えば、制御部１１０または制御１２０で実現される）と、設定処理が終了したら、第１装置と第２装置との各々に設定された更新後のファームウェアを稼働ファームウェアとする切替処理を行う切替部１６（例えば、制御部１１０もしくは制御１２０、制御部２１０もしくは制御２２０または制御部３１０もしくは制御３２０で実現される。）とを備える。
【０１００】
そのような構成によれば、二重化構成を保証しつつ複数の装置のファームウェアを同時に更新する方法が容易に実現される
【０１０１】
設定部は、切替処理の終了後に、更新前ファームウェアが格納されている格納部に更新後のファームウェアを設定する二重化再設定処理を行うように構成されていてもよい。
【０１０２】
そのような構成によれば、確実な二重化構成に戻すことができる。
【符号の説明】
【０１０３】
１１  第１装置
１２  第２装置
１３  第１パス
１４  第２パス
１５  設定部
１６  切替部
１０１〜１０４、２０１〜２０４  ファームウェア格納部
１０、１０００  運用システム
２０  第１装置
２１、３１  第１制御部
２２、３２  第２制御部
３０  第２装置
４０  第１パス
５０  第２パス
１００、２００、３００  装置
１１０、１２０、２１０、２２０、３１０、３２０  制御部
１１１、１１２、１２１、１２２、２１１、２１２、２２１、２２２、３１１、３１２、３２１、３２２  ＦＷ格納部
４００、４１１、４１２、４２１、４２２、４３１、４３２、５００、５１１、５１２、５２１、５２２、５３１、５３２  パス
【図１】
2016173636.tif 000003
【図２】
2016173636.tif 000004
【図３】
2016173636.tif 000005
【図４】
2016173636.tif 000006
【図５】
2016173636.tif 000007
【図６】
2016173636.tif 000008
【図７】
2016173636.tif 000009
【図８】
2016173636.tif 000010
【図９】
2016173636.tif 000011
【図１０】
2016173636.tif 000012
【図１１】
2016173636.tif 000013
【図１２】
2016173636.tif 000014
【図１３】
2016173636.tif 000015