(57)【要約】  情報処理システム（１）は、複数のクラスタ及び複数のクラスタ上で動作するプログラムが共有する共有メモリを有する共有メモリ装置（３０）を有し、共有メモリ装置（３０）が、システム運用中に、複数のクラスタが共有する共有メモリの記憶領域のうち所定の記憶領域を割り当てられた全てのクラスタ上で動作するプログラムが停止したことを検知するＯＳ停止検知部（３４１）と、所定の記憶領域を割り当てられた全てのクラスタ上で動作するプログラムの停止がＯＳ停止検知部（３４１）によって検知されたとき、所定の記憶領域に記憶されたデータを不揮発性の記憶領域に保存するＳＳＤ制御部（３５）と、を備えることとしたので、停電発生時に、共有メモリ装置（３０）のメモリ領域上のデータを保存するのにかかる時間を短縮することができる。
2012127636.tif 000002
【特許請求の範囲】
【請求項１】
複数の情報処理装置及び前記複数の情報処理装置上で動作するプログラムが共有する共有メモリを有する共有メモリ装置を有する情報処理システムにおいて、
前記共有メモリ装置は、
システム運用中に、前記複数の情報処理装置が共有する共有メモリの記憶領域のうち所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムが停止したことを検知する検知部と、
所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムの停止が前記検知部によって検知されたとき、前記所定の記憶領域に記憶されたデータを不揮発性の記憶領域に保存する保存部と
を有することを特徴とする情報処理システム。
【請求項２】
前記保存部は、
停電が発生したとき、バックアップ電源により前記共有メモリ装置への電源を供給し、前記所定の記憶領域と異なる記憶領域に記憶されたデータを前記不揮発性の記憶領域に保存する
ことを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記情報処理装置は、
前記情報処理装置上で動作するプログラムの停止命令を取得すると、自己と同じ所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムが動作中であるか否かを判定し、前記全ての情報処理装置上で動作するプログラムが全て動作中でないと判定した場合に、前記所定の記憶領域に記憶されたデータを前記不揮発性の記憶領域に保存する保存指示を前記共有メモリ装置に送信する制御部を有し、
前記検知部は、
前記制御部によって送信された保存指示を取得することにより、前記所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムが停止したことを検知することを特徴とする請求項１に記載の情報処理システム。
【請求項４】
情報処理装置上で動作するプログラムの動作状態を監視する監視部を有し、
前記検知部は、
前記監視部に対して情報処理装置上で動作するプログラムの動作状態を問い合わせ、前記所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムの動作状態が停止中であることを検知することを特徴とする請求項１に記載の情報処理システム。
【請求項５】
複数の情報処理装置上で動作するプログラムが共有する共有メモリと、
システムの運用中に、前記複数の情報処理装置が共有する共有メモリの記憶領域のうち所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムが停止したことを検知する検知部と、
所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムの停止が前記検知部によって検知されたとき、前記所定の記憶領域に記憶されたデータを不揮発性の記憶領域に保存する保存部と
を有することを特徴とする共有メモリ装置。
【請求項６】
複数の情報処理装置及び前記複数の情報処理装置上で動作するプログラムが共有する共有メモリを有する情報処理システムが実行するメモリデータ保存方法であって、
システムの運用中に、前記複数の情報処理装置が共有する共有メモリの記憶領域のうち所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムが停止したことを検知し、
所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムの停止が該検知によって検知されたとき、前記所定の記憶領域に記憶されたデータを不揮発性の記憶領域に保存する
ことを特徴とするメモリデータ保存方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、共有メモリ装置及びメモリデータ保存方法に関する。
【背景技術】
【０００２】
複数のサーバ装置と共有メモリ装置とを備える情報処理システムがある。情報処理システムの共有メモリ装置は、複数の論理的な区画（以降、セクションという。）に分けられた揮発性のメモリ領域を備える。そして、各セクションのメモリ領域は、各セクションに割り当てられたサーバ装置によって使用される。【０００３】
ここで、停電が発生し電力供給が絶たれたとき、共有メモリ装置は、メモリ領域上のデータを保持できない。このため、共有メモリ装置は、停電発生時に補助電源（ＵＰＳ：Uninterruptible  Power  Supply）からの電源供給を受けてメモリ領域上のデータを保持し、全セクションのデータを不揮発性の記憶装置にバックアップする。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−９２７３８号公報
【特許文献２】特開平２−２７８４５７号公報
【特許文献３】特開平４−２８３８１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、共有メモリ装置は、停電発生時に、メモリ領域上の全セクションのデータを不揮発性の記憶装置にバックアップするのに時間がかかるという問題があった。【０００６】
開示の技術は、上記に鑑みてなされたものであって、停電発生時に、共有メモリ装置のメモリ領域上のデータをバックアップするのにかかる時間を短縮する情報処理システムなどを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本願の開示する情報処理システムは、一つの態様において、複数の情報処理装置及び前記複数の情報処理装置上で動作するプログラムが共有する共有メモリを有する共有メモリ装置を有する情報処理システムにおいて、前記共有メモリ装置は、システム運用中に、前記複数の情報処理装置が共有する共有メモリの記憶領域のうち所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムが停止したことを検知する検知部と、所定の記憶領域を割り当てられた全ての情報処理装置上で動作するプログラムの停止が前記検知部によって検知されたとき、前記所定の記憶領域に記憶されたデータを不揮発性の記憶領域に保存する保存部とを有する。
【発明の効果】
【０００８】
本願の開示する情報処理システムの一つの態様によれば、停電発生時に、共有メモリ装置のメモリ領域上のデータをバックアップするのにかかる時間を短縮することができるという効果を奏する。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施例１に係る情報処理システムの構成を示す機能ブロック図である。
【図２】図２は、実施例１に係るＯＳ停止時のＣＬ制御部（ＣＬ−ＳＶＰ）の処理手順を示すフローチャートである。
【図３】図３は、実施例１に係るＯＳ停止時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順を示すフローチャートである。
【図４】図４は、実施例１に係る停電発生時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順を示すフローチャートである。
【図５】図５は、実施例１に係るＯＳ停止時のデータフローを説明する図である。
【図６】図６は、実施例１に係る停電発生時のデータフローを説明する図である。
【図７】図７は、実施例１に係るＯＳ停止時のシーケンスを示す図である。
【図８】図８は、実施例２に係る情報処理システムの構成を示す機能ブロック図である。
【図９】図９は、実施例２に係るＯＳ停止時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順を示すフローチャートである。
【図１０】図１０は、実施例２に係る停電発生時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順を示すフローチャートである。
【図１１】図１１は、実施例２に係るＯＳ停止時のデータフローを説明する図である。
【図１２】図１２は、実施例２に係る停電発生時のデータフローを説明する図である。
【図１３】図１３は、実施例２に係るＯＳ停止時のシーケンスを示す図である。
【発明を実施するための形態】
【００１０】
以下に、本願の開示する情報処理システム、共有メモリ装置及びメモリデータ保存方法の実施例を図面に基づいて詳細に説明する。なお、以下の実施例では、複数の大型サーバ装置（以下、クラスタという。）及び共有メモリ装置を搭載した情報処理システムに適用した場合を示す。しかし、本実施例によりこの発明が限定されるものではなく、本発明は、大規模並列コンピュータシステムやスーパーコンピュータシステムにも適用可能である。
【実施例１】
【００１１】
［実施例１に係る情報処理システムの構成］
図１は、本実施例１に係る情報処理システム１の構成を示す機能ブロック図である。図１に示すように、情報処理システム１は、複数のクラスタ１０−１〜１０−ｎ（ｎは１より大きい整数、以下同じ）と、監視装置２０と、共有メモリ装置３０とを有する。複数のクラスタ１０−１〜１０−ｎと共有メモリ装置３０とは、データ通信用回線（ＸＡＵＩ：10  Gigabit  Ethernet（登録商標）  Attachment  Unit  Interface）４０で接続される。【００１２】
クラスタ１０−１〜１０−ｎは、大型サーバ装置である。各クラスタ１０−１〜１０−ｎは、共有メモリ装置３０の共有メモリ（ＤＩＭＭ:Dual  Inline  Memory  Module）３１に割り当てられた記憶領域を使用する。共有メモリ３１は、セクションと呼ばれる複数の記憶領域に区切られている。すなわち、各クラスタ１０−１〜１０−ｎは、共有メモリ３１について、それぞれ割り当てられたセクションを使用する。【００１３】
さらに、クラスタ１０−１〜１０−ｎは、記憶部１１とＣＬ制御部（ＣＬ−ＳＶＰ：Cluster−Service  Processor）１２とを有する。記憶部１１は、セクション−ＣＬ情報１１ａを有する。セクション−ＣＬ情報１１ａとは、クラスタ１０−１〜１０−ｎ毎に使用が割り当てられているセクションを対応付けた情報である。一例として、セクション−ＣＬ情報１１ａは、クラスタ１０−１〜１０−ｎの識別番号毎に使用が割り当てられているセクションの識別番号を対応付けて記憶する。そして、クラスタに使用が割り当てられるセクションは、クラスタ毎に全く異なるものであっても良いし、異なるクラスタであっても同じものとなっても良い。以降では、クラスタに使用が割り当てられるセクションは、異なるクラスタであっても同じものとなっても良い場合について説明する。なお、記憶部１１は、例えば、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（flash  memory）などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。【００１４】
また、ＣＬ制御部１２は、クラスタ本体を制御する。例えば、ＣＬ制御部１２は、ＯＳ（Operating  System）の停止命令を受けると、セクション−ＣＬ情報１１ａに基づいて、自クラスタと同じセクションを割り当てられた全てのクラスタ１０に対し、ＯＳが動作中であるか否かを問い合わせる。さらに、ＣＬ制御部１２は、自クラスタと同じセクションを割り当てられた全てのクラスタ１０のＯＳが全て停止している場合には、このセクションのバックアップ指示を共有メモリ装置３０に送信する。一方、ＣＬ制御部１２は、自クラスタと同じセクションを割り当てられたクラスタ１０のうち１台でもＯＳが動作中である場合には、このセクションのバックアップ指示を送信しない。そして、ＣＬ制御部１２は、自クラスタ上で動作するＯＳを停止する。【００１５】
なお、ＣＬ制御部１２の機能は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路により実現することができ、所定のプログラムがＣＰＵ（Central  Processing  Unit）を機能させることで実現することができる。【００１６】
監視装置（ＳＶＰＭ：Service  Processor  Manager）２０は、複数のクラスタ１０−１〜１０−ｎ及び共有メモリ装置３０とそれぞれ保守用回線（ＬＡＮ：Local  Area  Network）５０で接続される。監視装置２０は、情報処理システム１全体を制御するとともに、複数のクラスタ１０−１〜１０−ｎ及び共有メモリ装置３０の動作状態を監視する。例えば、監視装置２０は、特定のクラスタ１０に対してＯＳの停止命令を送信する。【００１７】
共有メモリ装置（ＳＳＵ：System  Storage  Unit）３０は、複数のクラスタ１０−１〜１０−ｎ上で動作するＯＳが共有する共有メモリを備える装置である。さらに、共有メモリ装置３０は、共有メモリ（ＤＩＭＭ）３１と、不揮発性記憶部３２と、補助電源３３と、ＳＳＵ制御部３４と、ＳＳＤ制御部３５を有する。共有メモリ３１は、停電が発生して電源から給電されなくなると記憶されたデータを失う揮発性メモリである。共有メモリ３１は、複数の論理的なメモリ領域（セクション）に区切られている。各セクションのメモリ領域は、セクションに割り当てられたクラスタ１０のみが使用できる。ここで、所定のセクションに割り当てられた全てのクラスタ１０のＯＳが動作を停止した場合、このセクションのメモリ領域はアクセスされないので、データは書き変わらない。そこで、共有メモリ装置３０は、所定のセクションに割り当てられた全てのクラスタ１０のＯＳが動作を停止したタイミングで、このセクションのメモリ領域のデータを、不揮発性の記憶領域にバックアップする。これにより、共有メモリ装置３０は、停電が発生したときに共有メモリ３１に記憶されたデータについて、バックアップするデータ量を削減できる。【００１８】
不揮発性記憶部（ＳＳＤ：Solid  State  Drive）３２は、電源から給電されなくても記憶されたデータを失わない記憶領域である。例えば、不揮発性記憶部３２は、フラッシュメモリ（flash  memory）などの半導体メモリ素子、またはハードディスク、光ディスクなどの記憶媒体を含む。補助電源３３は、停電が発生したときに主電源の代わりに補助的に給電する。例えば、補助電源３３は、無停電電源装置（ＵＰＳ：Uninterruptible  Power  Supply）を含む。【００１９】
ＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４は、ＳＳＵ３０本体を制御する。さらに、ＳＳＵ制御部３４は、ＯＳ停止検知部３４１と、バックアップ依頼部３４２と、バックアップ実行中フラグ３４ａと、バックアップ完了フラグ３４ｂと、セクション−ＣＬ情報３４ｃとを有する。なお、ＳＳＵ制御部３４の機能は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路により実現することができ、所定のプログラムがＣＰＵ（Central  Processing  Unit）を機能させることで実現することができる。【００２０】
ＯＳ停止検知部３４１は、システムの運用中に、複数のクラスタ１０−１〜１０−ｎが共有する共有メモリ３１のセクションのうち所定のセクションを割り当てられた全てのクラスタ１０上で動作するＯＳが停止したことを検知する。例えば、ＯＳ停止検知部３４１は、いずれかのクラスタ１０からセクションのバックアップ指示を受信する。この結果、ＯＳ停止検知部３４１は、バックアップを指示したクラスタ１０に割り当てられたセクションと同じセクションを割り当てられた全てのクラスタ１０のＯＳが停止したことを検知する。【００２１】
バックアップ依頼部３４２は、検知に関わるセクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂに基づいて、当該セクションのバックアップをＳＳＤ制御部３５に依頼する。ここで、バックアップ実行中フラグ３４ａとは、セクション毎にバックアップが実行中であるか否かを判定する際に用いられる情報である。一例として、バックアップ実行中フラグ３４ａは、セクションの識別番号毎にバックアップが実行中であるか否かを示すフラグを対応付けて記憶する。バックアップが実行中（保存中）であればフラグに「ＯＮ」が記憶される。バックアップが実行中でなければフラグに「ＯＦＦ」が記憶される。また、バックアップ完了フラグ３４ｂとは、セクション毎にバックアップが完了しているか否かを判定する際に用いられる情報である。一例として、バックアップ完了フラグ３４ｂは、セクションの識別番号毎にバックアップが完了しているか否かを示すフラグを対応付けて記憶する。バックアップが完了していればフラグに完了済み（保存済み）である「ＯＮ」が記憶される。バックアップが完了していなければフラグに「ＯＦＦ」が記憶される。【００２２】
例えば、バックアップ依頼部３４２は、バックアップ指示があったセクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが両方共ＯＦＦの場合に、バックアップ実行中フラグ３４ａを「ＯＮ」に設定する。そして、バックアップ依頼部３４２は、バックアップ指示があったセクションのバックアップをＳＳＤ制御部３５に指示する。そして、バックアップ依頼部３４２は、ＳＳＤ制御部３５からバックアップの完了通知を受信すると、バックアップが完了したセクションのバックアップ実行フラグ３４ａを「ＯＦＦ」に設定する。また、バックアップ依頼部３４２は、バックアップが完了したセクションのバックアップ完了フラグ３４ｂを「ＯＮ」に設定する。【００２３】
また、バックアップ依頼部３４２は、停電を感知した旨の通知を受信した場合、補助電源３３を起動する。この結果、共有メモリ装置３０は、停電中であっても補助電源３３によって給電される。また、バックアップ依頼部３４２は、全てのセクションのバックアップ実行フラグ３４ａ及びバックアップ完了フラグ３４ｂに基づいて、該当するセクションのバックアップをＳＳＤ制御部３５に依頼する。例えば、バックアップ依頼部３４２は、バックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが両方共ＯＦＦのセクションについて、バックアップ実行中フラグ３４ａを「ＯＮ」に設定する。そして、バックアップ依頼部３４２は、「ＯＮ」に設定したセクションのバックアップをＳＳＤ制御部３５に指示する。そして、バックアップ依頼部３４２は、ＳＳＤ制御部３５からバックアップの完了通知を受信すると、バックアップが完了したセクションのバックアップ実行フラグ３４ａを「ＯＦＦ」に設定する。また、バックアップ依頼部３４２は、バックアップが完了したセクションのバックアップ完了フラグ３４ｂを「ＯＮ」に設定する。【００２４】
セクション−ＣＬ情報３４ｃは、クラスタ毎に使用が割り当てられているセクションを対応付けた情報である。このセクション−ＣＬ情報３４ｃは、クラスタ１０−１〜１０−ｎのそれぞれの記憶部１１に記憶されたセクション−ＣＬ情報１１ａと同一の情報であり、例えばシステムの運用開始時に設定される。【００２５】
ＳＳＤ制御部（ＭＡＣ）３５は、バックアップ依頼部３４２から依頼された、セクションのバックアップを実行する。具体的には、ＳＳＤ制御部３５は、バックアップ依頼部３４２からバックアップの依頼を受けると、依頼されたバックアップ対象のセクションについて、共有メモリ３１からデータを読み出し、読み出したデータを不揮発性記憶部３２に格納する。そして、ＳＳＤ制御部３５は、バックアップが完了したセクションについて、バックアップの完了をバックアップ依頼部３４２に通知する。【００２６】
［実施例１に係るＯＳ停止時のＣＬ制御部（ＣＬ−ＳＶＰ）の処理手順］
次に、実施例１に係るＯＳ停止時のＣＬ制御部（ＣＬ−ＳＶＰ）１２の処理手順を、図２を参照して説明する。図２は、実施例１に係るＯＳ停止時のＣＬ制御部（ＣＬ−ＳＶＰ）の処理手順を示すフローチャートである。【００２７】
まず、ＣＬ−ＳＶＰ１２は、監視装置（ＳＶＰＭ）２０からＯＳの停止命令を受信したか否かを判定する（ステップＳ１１）。ＯＳの停止命令を受信しなかったと判定した場合（ステップＳ１１；Ｎｏ）、ＣＬ−ＳＶＰ１２は、ＯＳの停止命令を受信するまで判定処理を繰り返す。一方、ＯＳの停止命令を受信したと判定した場合（ステップＳ１１；Ｙｅｓ）、ＣＬ−ＳＶＰ１２は、自クラスタ（以降、「ＣＬ」と略記する。）と同じセクションを使用する全てのＣＬのＣＬ−ＳＶＰ１２に対し、ＯＳの動作状態を問い合わせる（ステップＳ１２）。【００２８】
そして、ＣＬ−ＳＶＰ１２は、問い合わせをした全てのＣＬのＣＬ−ＳＶＰ１２からＯＳの動作状態が返信されたか否かを判定する（ステップＳ１３）。全てのＣＬのＣＬ−ＳＶＰ１２からＯＳの動作状態が返信されていないと判定した場合（ステップＳ１３；Ｎｏ）、ＣＬ−ＳＶＰ１２は、全てのＣＬのＣＬ−ＳＶＰ１２から返信されるまで判定処理を繰り返す。【００２９】
一方、全てのＣＬのＣＬ−ＳＶＰ１２からＯＳの動作状態が返信されたと判定した場合（ステップＳ１３；Ｙｅｓ）、ＣＬ−ＳＶＰ１２は、問い合わせをしたＣＬのうちＯＳが動作中のＣＬが無かったか否かを判定する（ステップＳ１４）。ＯＳが動作中のＣＬが有ったと判定した場合（ステップＳ１４；Ｎｏ）、ＣＬ−ＳＶＰ１２は、セクションのバックアップ指示を送信しない。【００３０】
一方、ＯＳが動作中のＣＬが無かったと判定した場合（ステップＳ１４；Ｙｅｓ）、ＣＬ−ＳＶＰ１２は、共有メモリ装置（ＳＳＵ）３０に対し、対象となるセクションのバックアップ指示を送信する（ステップＳ１５）。そして、ＣＬ−ＳＶＰ１２は、ＯＳの停止を完了する（ステップＳ１６）。【００３１】
［実施例１に係るＯＳ停止時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順］
次に、実施例１に係るＯＳ停止時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４の処理手順を、図３を参照して説明する。図３は、実施例１に係るＯＳ停止時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順を示すフローチャートである。【００３２】
まず、ＳＳＵ−ＳＶＰ３４のＯＳ停止検知部３４１は、ＣＬ−ＳＶＰ１２からセクションのバックアップ指示を受信したか否かを判定する（ステップＳ２１）。セクションのバックアップ指示を受信しなかったと判定した場合（ステップＳ２１；Ｎｏ）、ＯＳ停止検知部３４１は、セクションのバックアップ指示を受信するまで判定処理を繰り返す。一方、セクションのバックアップ指示を受信したと判定した場合（ステップＳ２１；Ｙｅｓ）、ＯＳ停止検知部３４１は、当該セクションを割り当てられた全てのクラスタ１０のＯＳが停止したことを検知する。【００３３】
続いて、バックアップ依頼部３４２は、バックアップ指示があったセクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが両方共ＯＦＦであるか否かを判定する（ステップＳ２２）。両方共ＯＦＦでない場合（ステップＳ２２；Ｎｏ）、バックアップ依頼部３４２は、バックアップが実行中であるか、またはバックアップが完了したので、処理を終了する。【００３４】
一方、両方共ＯＦＦである場合（ステップＳ２２；Ｙｅｓ）、バックアップ依頼部３４２は、バックアップ指示があったセクションのバックアップ実行中フラグ３４ａを「ＯＮ」に設定する（ステップＳ２３）。そして、バックアップ依頼部３４２は、バックアップ指示があったセクションのバックアップをＳＳＤ制御部３５に依頼する（ステップＳ２４）。【００３５】
その後、バックアップ依頼部３４２は、バックアップ対象であったセクションのバックアップの完了通知を受信したか否かを判定する（ステップＳ２５）。バックアップの完了通知を受信しなかったと判定した場合（ステップＳ２５；Ｎｏ）、バックアップ依頼部３４２は、バックアップの完了通知を受信するまで判定処理を繰り返す。一方、バックアップの完了通知を受信したと判定した場合（ステップＳ２５；Ｙｅｓ）、バックアップ依頼部３４２は、バックアップ対象であったセクションのバックアップ完了フラグを「ＯＮ」に設定する（ステップＳ２６）。そして、バックアップ依頼部３４２は、バックアップ対象であったセクションのバックアップ実行中フラグを「ＯＦＦ」に設定する（ステップＳ２７）。【００３６】
［実施例１に係る停電発生時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順］
次に、実施例１に係る停電発生時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４の処理手順を、図４を参照して説明する。図４は、実施例１に係る停電発生時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順を示すフローチャートである。【００３７】
まず、ＳＳＵ−ＳＶＰ３４のバックアップ依頼部３４２は、停電を感知した旨の通知を受信したか否かを判定する（ステップＳ３１）。停電を感知した旨の通知を受信しなかったと判定した場合（ステップＳ３１；Ｎｏ）、バックアップ依頼部３４２は、停電を感知した旨の通知を受信するまで判定処理を繰り返す。【００３８】
一方、停電を感知した旨の通知を受信したと判定した場合（ステップＳ３１；Ｙｅｓ）、バックアップ依頼部３４２は、補助電源３３を起動し、起動後、バックアップ対象のセクションの識別番号を取得する（ステップＳ３２）。例えば、バックアップ依頼部３４２は、バックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが両方共「ＯＦＦ」であるセクションの識別番号を取得する。【００３９】
そして、バックアップ依頼部３４２は、取得した識別番号に対応するセクション（バックアップ対象セクション）のバックアップ実行中フラグを「ＯＮ」に設定する（ステップＳ３３）。そして、バックアップ依頼部３４２は、バックアップ対象セクションのバックアップをＳＳＤ制御部（ＭＡＣ）３５に依頼する（ステップＳ３４）。【００４０】
その後、バックアップ依頼部３４２は、バックアップ対象セクションのバックアップの完了通知を受信したか否かを判定する（ステップＳ３５）。バックアップの完了通知を受信しなかったと判定した場合（ステップＳ３５；Ｎｏ）、バックアップ依頼部３４２は、バックアップの完了通知を受信するまで判定処理を繰り返す。一方、バックアップの完了通知を受信したと判定した場合（ステップＳ３５；Ｙｅｓ）、バックアップ依頼部３４２は、バックアップ対象セクションのバックアップ完了フラグを「ＯＮ」に設定する（ステップＳ３６）。【００４１】
そして、バックアップ依頼部３４２は、バックアップ対象セクションのバックアップ実行中フラグを「ＯＦＦ」に設定する（ステップＳ３７）。その後、バックアップ依頼部３４２は、ＳＳＵの動作停止処理を実行する（ステップＳ３８）。【００４２】
［実施例１に係るＯＳ停止時のデータフロー］
次に、実施例１に係るＯＳ停止時のデータフローについて、図５を参照して説明する。図５は、実施例１に係るＯＳ停止時のデータフローを説明する図である。図５の例では、クラスタ１０−１（ＣＬ＃０）及びクラスタ１０−２（ＣＬ＃１）は、共有メモリ３１の同じセクション１（Ｓｅｃ．１）が割り当てられている。また、全セクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂは「ＯＦＦ」であるものとする。【００４３】
まず、監視装置（ＳＶＰＭ）２０が、クラスタ１０−１（ＣＬ＃０）及びクラスタ１０−２（ＣＬ＃１）のＣＬ制御部（ＣＬ−ＳＶＰ）１２に対し、ＯＳの停止命令を送信する（ｓ１）。すると、ＣＬ＃０のＣＬ−ＳＶＰ１２は、自ＣＬと同じセクションを割り当てられた全てのＣＬに対し、ＯＳが動作中であるか否かを問い合わせる（ｓ２）。ここでは、ＣＬ＃０のＣＬ−ＳＶＰ１２は、同じセクション１を割り当てられているＣＬ＃１に対しＯＳが動作中であるか否かを問い合わせ、ＣＬ＃１のＯＳが動作中であることを確認する。その後、ＣＬ＃０のＣＬ−ＳＶＰ１２は、ＯＳを停止する。【００４４】
そして、ＣＬ＃１のＣＬ−ＳＶＰ１２は、自ＣＬと同じセクションを割り当てられた全てのＣＬに対し、ＯＳが動作中であるか否かを問い合わせる（ｓ３）。ここでは、ＣＬ＃１のＣＬ−ＳＶＰ１２は、同じセクション１を割り当てられているＣＬ＃０に対しＯＳが動作中であるか否かを問い合わせ、ＣＬ＃０のＯＳが停止済みであることを確認する。この結果、以降、共有メモリ３１のセクション１のデータは、アクセスされない。そして、ＣＬ＃１のＣＬ−ＳＶＰ１２は、セクション１のバックアップ指示を、ＳＶＰＭ２０を介して共有メモリ装置（ＳＳＵ）３０に送信する（ｓ４、ｓ５）。その後、ＣＬ＃１のＣＬ−ＳＶＰ１２は、ＯＳを停止する。【００４５】
続いて、ＳＳＵ３０のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４は、ＣＬ＃１からセクション１のバックアップ指示を受信すると、セクション１のバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが「ＯＦＦ」であることを確認する。ここでは、セクション１のバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが「ＯＦＦ」であるので、ＳＳＵ−ＳＶＰ３４は、セクション１のバックアップ実行中フラグ３４ａを「ＯＮ」に設定する。そして、ＳＳＵ−ＳＶＰ３４は、セクション１のバックアップ指示をＳＳＤ制御部（ＭＡＣ）３５に送信する（ｓ６）。【００４６】
続いて、ＭＡＣ３５は、セクション１のバックアップ指示を受けると、共有メモリ３１のセクション１のデータを不揮発性記憶部（ＳＳＤ）３２にバックアップする（ｓ７）。そして、ＭＡＣ３５は、バックアップ完了後、セクション１のバックアップ完了通知をＳＳＵ−ＳＶＰ３４に返信する（ｓ８）。そして、ＭＡＣ３５は、バックアップ完了通知を受信後、セクション１のバックアップ完了フラグ３４ｂを「ＯＮ」に設定するとともに、バックアップ実行中フラグ３４ａを「ＯＦＦ」に設定する。【００４７】
［実施例１に係る停電発生時のデータフロー］
次に、実施例１に係る停電発生時のデータフローについて、図６を参照して説明する。図６は、実施例１に係る停電発生時のデータフローを説明する図である。図６の例では、セクション１（Ｓｅｃ．１）のバックアップ完了フラグ３４ｂは「保存済」を示す「ＯＮ」であり、セクション１以外のセクションのバックアップ完了フラグ３４ｂは「ＯＦＦ」であるものとする。また、全セクションのバックアップ実行中フラグ３４ａは「ＯＦＦ」であるものとする。【００４８】
停電が発生すると、ＳＳＵ３０のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４は、停電を感知した旨の通知を受信する。すると、セクション１以外のセクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが「ＯＦＦ」であるので、ＳＳＵ−ＳＶＰ３４は、セクション１を除くセクション２、３、４を取得する。そして、ＳＳＵ−ＳＶＰ３４は、セクション２、３、４のバックアップ実行中フラグ３４ａを「ＯＮ」に設定し、これらのセクションのバックアップ指示をＳＳＤ制御部（ＭＡＣ）３５に送信する（ｓ１０）。【００４９】
続いて、ＭＡＣ３５は、セクション２、３、４のバックアップ指示を受けると、これらセクションのデータを共有メモリ３１から読み出し、読み出したデータをデータ不揮発性記憶部（ＳＳＤ）３２にバックアップする（ｓ１１）。そして、ＭＡＣ３５は、バックアップ完了後、セクション２、３、４のバックアップ完了通知をＳＳＵ−ＳＶＰ３４に返信する（ｓ１２）。そして、ＭＡＣ３５は、バックアップ完了通知を受信後、セクション２、３、４のバックアップ完了フラグ３４ｂを「ＯＮ」に設定するとともに、バックアップ実行中フラグ３４ａを「ＯＦＦ」に設定する。その後、ＳＳＵ−ＳＶＰ３４は、動作を停止させる。【００５０】
［実施例１に係るＯＳ停止時のシーケンス］
次に、実施例１に係るＯＳ停止時のシーケンスについて、図７を参照して説明する。図７は、実施例１に係るＯＳ停止時のシーケンスを示す図である。図７の例では、クラスタ（ＣＬ）＃０及びクラスタ（ＣＬ）＃１は、共有メモリ３１の同じセクション１（Ｓｅｃ．１）に割り当てられている。また、全セクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂは「ＯＦＦ」であるものとする。【００５１】
まず、ＳＶＰＭ２０は、ＣＬ＃０のＣＬ制御部（ＣＬ−ＳＶＰ）１２に対して、ＯＳの停止命令を送信する（ｓ２１）。停止命令を受信したＣＬ＃０のＣＬ−ＳＶＰ１２は、同じセクションが割り当てられているＣＬ＃１のＣＬ−ＳＶＰ１２に対して、ＯＳ動作状態を問い合わせる（ｓ２２）。このとき、ＣＬ＃１のＣＬ−ＳＶＰ１２は、ＯＳが動作中であるので、“ＯＳ動作中”のレスポンスを、ＣＬ＃１に対して返信する（ｓ２３）。その後、ＣＬ＃０のＣＬ−ＳＶＰ１２は、ＯＳの停止を完了する。【００５２】
続いて、ＳＶＰＭ２０は、ＣＬ＃１のＣＬ制御部（ＣＬ−ＳＶＰ）１２に対して、ＯＳの停止命令を送信する（ｓ２４）。停止命令を受信したＣＬ＃１のＣＬ−ＳＶＰ１２は、同じセクションが割り当てられているＣＬ＃０のＣＬ−ＳＶＰ１２に対して、ＯＳ動作状態を問い合わせる（ｓ２５）。このとき、ＣＬ＃０のＣＬ−ＳＶＰ１２は、ＯＳが停止しているので、“ＯＳ非動作中”のレスポンスを、ＣＬ＃１に対して返信する（ｓ２６）。その後、ＣＬ＃１のＣＬ−ＳＶＰ１２は、ＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４に対してセクション１のバックアップ指示を、保守用回線５０を介して送信する（ｓ２７）。その後、ＣＬ＃１のＣＬ−ＳＶＰ１２は、ＯＳの停止を完了する。【００５３】
セクション１のバックアップ指示を受信したＳＳＵ−ＳＶＰ３４は、セクション１のバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが「ＯＦＦ」であるので、セクション１のバックアップをＳＳＤ制御部（ＭＡＣ）３５に指示する（ｓ２８）。そして、ＭＡＣ３５は、指示されたセクション１のバックアップを実行し、バックアップ完了後、セクション１のバックアップ完了通知をＳＳＵ−ＳＶＰ３４に送信する（ｓ２９）。セクション１のバックアップ完了通知を受信したＳＳＵ−ＳＶＰ３４は、セクション１のバックアップ完了フラグ３４ｂを「ＯＮ」に設定するとともに、バックアップ実行中フラグ３４ａを「ＯＦＦ」に設定する。この結果、セクション１のバックアップが完了した。【００５４】
その後、停電が発生すると、ＳＳＵ−ＳＶＰ３４は、停電を感知した旨の通知を受信し、補助電源３３を起動する。そして、ＳＳＵ−ＳＶＰ３４は、バックアップが完了したセクション１を除くセクション２〜４のバックアップをＭＡＣ３５に指示する（ｓ３０）。そして、ＭＡＣ３５は、指示されたセクション２〜４のバックアップを実行し、バックアップ完了後、セクション２〜４のバックアップ完了通知をＳＳＵ−ＳＶＰ３４に送信する（ｓ３１）。セクション２〜４のバックアップ完了通知を受信したＳＳＵ−ＳＶＰ３４は、セクション２〜４のバックアップ完了フラグ３４ｂを「ＯＮ」に設定するとともに、バックアップ実行中フラグ３４ａを「ＯＦＦ」に設定する。この結果、共有メモリ３１の全セクションのバックアップが完了し、ＳＳＵ−ＳＶＰ３４は、共有メモリ装置（ＳＳＵ）３０の動作を停止させる。【００５５】
［実施例１の効果］
上記実施例１によれば、情報処理システム１は、複数のクラスタ１０−１〜１０−ｎ及び複数のセクションを備える共有メモリ装置３０を有する。そして、共有メモリ装置３０は、システムの運用中に、複数のクラスタ１０−１〜１０−ｎに割り当てられた共有メモリ３１のセクションのうち所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳが停止したことを検知する。さらに、共有メモリ装置３０は、所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳが停止したことを検知したとき、所定のセクションに記憶されたデータを不揮発性記憶部３２にバックアップする。かかる構成によれば、情報処理システム１は、所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳが停止したことを検知すると、検知後当該セクションにアクセスされることはないので、当該セクションのデータを書き換えられないこととなる。このため、情報処理システム１は、システムの運用中の段階で、書き換えがない当該セクションのデータを不揮発性記憶部３２に予めバックアップしておくことで、後に停電が発生した場合にバックアップするデータ量を削減できる。すなわち、情報処理システム１は、停電の発生時に全てのセクションのデータをバックアップする場合と比較して、停電発生時にバックアップするデータ量を削減できる。【００５６】
また、上記実施例１によれば、情報処理システム１は、停電が発生したとき、補助電源３３をにより共有メモリ装置３０への電源を供給し、所定のセクションと異なるセクションに記憶されたデータを不揮発性記憶部３２にバックアップする。かかる構成によれば、情報処理システム１は、停電が発生したとき、補助電源３３からの給電により所定のセクションと異なるセクションに記憶されたデータを不揮発性記憶部３２にバックアップすることとした。この結果、情報処理システム１は、停電が発生したときにバックアップするデータのデータ量を、所定のセクションに記憶されたデータのデータ量だけ削減できる。この結果、情報処理システム１は、停電が発生したときにバックアップする処理時間を短縮できる。【００５７】
また、上記実施例１によれば、クラスタ１０−１は、ＯＳの停止命令を取得すると、自己と同じ所定のセクションを割り当てられた全てのクラスタに対しＯＳが動作中であるか否かを判定する。そして、クラスタ１０−１は、自己と同じ所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳが全て動作中でないと判定した場合に、所定のセクションのバックアップ指示を共有メモリ装置３０に送信する。そして、共有メモリ装置３０は、クラスタ１０−１によって送信された所定のセクションのバックアップ指示を取得することにより、所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳが停止したことを検知する。かかる構成によれば、ＯＳの停止命令を取得したクラスタ１０−１が、自己と同じ所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳが全て動作中でないと判定したときに所定のセクションのバックアップ指示を共有メモリ装置３０に送信する。このため、共有メモリ装置３０は、所定のセクションのデータが書き換えられなくなったと同時に当該セクションのバックアップをすることができるので、停電前の早い段階に確実にバックアップすることができる。【００５８】
なお、上記実施例１では、共有メモリ装置３０は、システムの運用中に、共有メモリ３１のセクションのうち所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳが停止したことを検知するものとして説明した。しかしながら、共有メモリ装置３０は、ＯＳに限定されず、共有メモリ３１のセクションのうち所定のセクションを割り当てられた全てのクラスタ上で動作するプログラムが停止したことを検知するものとしても良い。すなわち、共有メモリ３１は、複数のクラスタ上で動作するプログラムが共有するメモリであっても良い。この場合、共有メモリ装置３０は、所定のセクションを割り当てられた全てのクラスタ上で動作するプログラムが停止したことを検知したとき、所定のセクションに記憶されたデータを不揮発性記憶部３２にバックアップすることとなる。
【実施例２】
【００５９】
［実施例２に係る情報処理システムの構成］
ところで、実施例１の情報処理システム１は、ＯＳ停止命令があったクラスタと同じ所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳが全て停止したときに、当該セクションのバックアップを実行する場合について説明した。しかしながら、情報処理システム１は、これに限定されず、監視装置２０に対してクラスタのＯＳの動作状態を問い合わせ、所定のセクションを割り当てられた全てのクラスタのＯＳの動作状態が停止中であるときに、当該セクションのバックアップを実行しても良い。【００６０】
そこで、実施例２では、情報処理システム２が、監視装置２０に対してクラスタのＯＳの動作状態を問い合わせ、所定のセクションを割り当てられた全てのクラスタのＯＳの動作状態が停止中であるときに、当該セクションのバックアップを実行する場合を説明する。【００６１】
［実施例２に係る情報処理システムの構成］
図８は、実施例２に係る情報処理システム２の構成を示す機能ブロック図である。なお、図１に示す情報処理システム１と同一の構成については同一符号を示すことで、その重複する構成及び動作の説明については省略する。実施例１と実施例２とが異なるところは、監視装置２０に装置動作状態情報４０１を追加した点にある。また、実施例１と実施例２とが異なるところは、ＳＳＵ制御部３４にＣＬ動作状態問合せ部４０２を追加した点にある。【００６２】
装置動作状態情報４０１は、装置毎に動作状態を対応付けた情報である。一例として、装置動作状態情報４０１は、全てのクラスタ１０−１〜１０−ｎ及び共有メモリ装置３０について、電源が投入されている状態（「Power  Ready状態」という。）であるか否かの情報を記憶する。なお、監視装置２０が、定期的に全てのクラスタ１０−１〜１０−ｎ及び共有メモリ装置３０のPower  Ready状態を監視し、各装置についてPower  Ready状態であるか否かの情報を装置動作状態情報４０１に格納する。【００６３】
ＣＬ動作状態問合せ部４０２は、監視装置２０に対して、クラスタのＯＳの動作状態を定期的に問い合わせる。【００６４】
ＯＳ停止検知部３４１は、システムの運用中に、所定のセクションを割り当てられた全てのクラスタのＯＳの動作状態が停止中であることを検知する。例えば、ＯＳ停止検知部３４１は、ＣＬ動作状態問合せ部４０２によってクラスタのＯＳの動作状態を問い合わせた結果、クラスタのＯＳの動作状態及びセクション−ＣＬ情報３４ｃに基づいて、所定のセクションを使用する全てのクラスタが停止中であることを検知する。すなわち、ＯＳ停止検知部３４１は、所定のセクションを使用する全てのクラスタがPower  Ready状態でない電源切断状態であることを検知する。そして、バックアップ依頼部３４２が、検知に関わるセクションのバックアップの依頼処理を行うこととなる。【００６５】
［実施例２に係るＯＳ停止時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順］
次に、実施例２に係るＯＳ停止時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４の処理手順を、図９を参照して説明する。図９は、実施例２に係るＯＳ停止時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順を示すフローチャートである。【００６６】
まず、ＳＳＵ−ＳＶＰ３４のＣＬ動作状態問合せ部４０２は、監視装置（ＳＶＰＭ）２０に対して、クラスタ（ＣＬ）１０−１〜１０−ｎの動作状態を定期的に問い合わせる（ステップＳ４１）。そして、ＯＳ停止検知部３４１は、あるセクションを使用する全クラスタ１０が動作停止したか否かを判定する（ステップＳ４２）。例えば、ＯＳ停止検知部３４１は、クラスタ１０の動作状態を問い合わせた結果、クラスタ１０の動作状態及びセクション−ＣＬ情報３４ｃに基づいて、あるセクションを使用する全てのクラスタ１０が停止中であるか否かを判定する。【００６７】
あるセクションを使用するいずれかのクラスタ１０が停止中でないと判定した場合（ステップＳ４２；Ｎｏ）、ＯＳ停止検知部３４１は、継続してクラスタ１０の動作状態を問い合わせるべく、ステップＳ４１に移行する。一方、あるセクションを使用する全てのクラスタ１０が停止中であると判定した場合（ステップＳ４２；Ｙｅｓ）、ＯＳ停止検知部３４１は、あるセクションを使用する全てのクラスタ１０が停止中であることを検知する。【００６８】
続いて、バックアップ依頼部３４２は、該当するセクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが両方共ＯＦＦであるか否かを判定する（ステップＳ４３）。両方共ＯＦＦでない場合（ステップＳ４３；Ｎｏ）、バックアップ依頼部３４２は、バックアップが実行中であるか、またはバックアップが完了したので、処理を終了する。【００６９】
一方、両方共ＯＦＦである場合（ステップＳ４３；Ｙｅｓ）、バックアップ依頼部３４２は、バックアップ指示があったセクションのバックアップ実行中フラグ３４ａを「ＯＮ」に設定する（ステップＳ４４）。そして、バックアップ依頼部３４２は、該当するセクションのバックアップをＳＳＤ制御部３５に依頼する（ステップＳ４５）。【００７０】
その後、バックアップ依頼部３４２は、バックアップ対象であったセクションのバックアップの完了通知を受信したか否かを判定する（ステップＳ４６）。バックアップの完了通知を受信しなかったと判定した場合（ステップＳ４６；Ｎｏ）、バックアップ依頼部３４２は、バックアップの完了通知を受信するまで判定処理を繰り返す。一方、バックアップの完了通知を受信したと判定した場合（ステップＳ４６；Ｙｅｓ）、バックアップ依頼部３４２は、バックアップ対象であったセクションのバックアップ完了フラグを「ＯＮ」に設定する（ステップＳ４７）。そして、バックアップ依頼部３４２は、バックアップ対象であったセクションのバックアップ実行中フラグを「ＯＦＦ」に設定する（ステップＳ４８）。【００７１】
［実施例２に係る停電発生時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順］
図１０は、実施例２に係る停電発生時のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）の処理手順を示すフローチャートである。なお、実施例２に係る停電発生時のＳＳＵ−ＳＶＰの処理手順は、実施例１に係る停電発生時のＳＳＵ−ＳＶＰの処理手順と同一であるので、処理手順の説明については省略する。【００７２】
［実施例２に係るＯＳ停止時のデータフロー］
次に、実施例２に係るＯＳ停止時のデータフローについて、図１１を参照して説明する。図１１は、実施例２に係るＯＳ停止時のデータフローを説明する図である。図１１の例では、共有メモリ３１の同じセクション２（Ｓｅｃ．２）が割り当てられたクラスタ１０−３（ＣＬ＃２）及びクラスタ１０−４（ＣＬ＃３）が、突然部分停電により、動作停止になったものとする。また、全セクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂは「ＯＦＦ」であるものとする。【００７３】
まず、ＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４が、監視装置（ＳＶＰＭ）２０に対して、クラスタ１０−１〜１０−７の動作状態を定期的に問い合わせる（ｓ４１）。すると、ＳＶＰＭ２０は、ＳＳＵ−ＳＶＰ３４の問い合わせに対し、ＣＬ＃２及びＣＬ＃３が停止中であることを返信する（ｓ４２）。【００７４】
続いて、ＳＳＵ−ＳＶＰ３４は、ＣＬ＃２及びＣＬ＃３が停止中であることを受信し、ＣＬ＃２及びＣＬ＃３に割り当てられたセクション２のＯＳが全て停止していることを確認する。この結果、以降、共有メモリ３１のセクション２のデータは、アクセスされない。【００７５】
続いて、ＳＳＵ−ＳＶＰ３４は、セクション２のバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが「ＯＦＦ」であることを確認する。ここでは、セクション２のバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが「ＯＦＦ」であるので、ＳＳＵ−ＳＶＰ３４は、セクション２のバックアップ実行中フラグ３４ａを「保存中」を示す「ＯＮ」に設定する。そして、ＳＳＵ−ＳＶＰ３４は、セクション２のバックアップ指示をＳＳＤ制御部（ＭＡＣ）３５に送信する（ｓ４３）。【００７６】
続いて、ＭＡＣ３５は、セクション２のバックアップ指示を受けると、共有メモリ３１のセクション２のデータを共有メモリ３１から読み出し、読み出したデータを不揮発性記憶部（ＳＳＤ）３２にバックアップする（ｓ４４）。そして、ＭＡＣ３５は、バックアップ完了後、セクション２のバックアップ完了通知をＳＳＵ−ＳＶＰ３４に返信する（ｓ４５）。そして、ＭＡＣ３５は、バックアップ完了通知を受信後、セクション２のバックアップ完了フラグ３４ｂを「ＯＮ」に設定するとともに、バックアップ実行中フラグ３４ａを「ＯＦＦ」に設定する。【００７７】
［実施例２に係る停電発生時のデータフロー］
次に、実施例２に係る停電発生時のデータフローについて、図１２を参照して説明する。図１２は、実施例２に係る停電発生時のデータフローを説明する図である。図１２の例では、セクション２（Ｓｅｃ．２）のバックアップ完了フラグ３４ｂは「保存済み」を示す「ＯＮ」であり、セクション２以外のセクションのバックアップ完了フラグ３４ｂは「ＯＦＦ」であるものとする。また、全セクションのバックアップ実行中フラグ３４ａは「ＯＦＦ」であるものとする。【００７８】
停電が発生すると、ＳＳＵ３０のＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４は、停電を感知した旨の通知を受信する。すると、セクション２以外のセクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが「ＯＦＦ」であるので、ＳＳＵ−ＳＶＰ３４は、セクション２を除くセクション１、３、４を取得する。そして、ＳＳＵ−ＳＶＰ３４は、セクション１、３、４のバックアップ実行中フラグ３４ａを「保存中」を示す「ＯＮ」に設定し、これらのセクションのバックアップ指示をＳＳＤ制御部（ＭＡＣ）３５に送信する（ｓ５１）。【００７９】
続いて、ＭＡＣ３５は、セクション１、３、４のバックアップ指示を受けると、これらセクションのデータを共有メモリ３１から読み出し、読み出したデータを不揮発性記憶部（ＳＳＤ）３２にバックアップする（ｓ５２）。そして、ＭＡＣ３５は、バックアップ完了後、セクション１、３、４のバックアップ完了通知をＳＳＵ−ＳＶＰ３４に返信する（ｓ５３）。そして、ＭＡＣ３５は、バックアップ完了通知を受信後、セクション１、３、４のバックアップ完了フラグ３４ｂを「ＯＮ」に設定するとともに、バックアップ実行中フラグ３４ａを「ＯＦＦ」に設定する。その後、ＳＳＵ−ＳＶＰ３４は、動作を停止させる。【００８０】
［実施例２に係るＯＳ停止時のシーケンス］
次に、実施例２に係るＯＳ停止時のシーケンスについて、図１３を参照して説明する。図１３は、実施例２に係るＯＳ停止時のシーケンスを示す図である。図１３の例では、クラスタ（ＣＬ）＃２及びクラスタ（ＣＬ）＃３は、共有メモリ３１の同じセクション２（Ｓｅｃ．２）に割り当てられている。また、全セクションのバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂは「ＯＦＦ」であるものとする。【００８１】
まず、全ＣＬが動作しているものとする。ＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４は、監視装置（ＳＶＰＭ）２０に対し、全ＣＬの動作状態を問い合わせる（ｓ６１）。ＳＶＰＭ２０は、全ＣＬが動作しているので、全ＣＬが動作中である旨のレスポンスを返信する（ｓ６２）。【００８２】
ここで、全ＣＬのうちＣＬ＃２及びＣＬ＃３の動作が停止したものとする。ＳＳＵ制御部（ＳＳＵ−ＳＶＰ）３４は、監視装置（ＳＶＰＭ）２０に対し、全ＣＬの動作状態を問い合わせる（ｓ６３）。ＳＶＰＭ２０は、ＣＬ＃２及びＣＬ＃３の動作が停止しているので、ＣＬ＃２及びＣＬ＃３が停止中である旨のレスポンスを返信する（ｓ６４）。【００８３】
ＣＬ＃２及びＣＬ＃３が停止中である旨のレスポンスを受信したＳＳＵ−ＳＶＰ３４は、セクション２を使用する全てのクラスタが停止中であることを検知する。そして、ＳＳＵ−ＳＶＰ３４は、セクション２のバックアップ実行中フラグ３４ａ及びバックアップ完了フラグ３４ｂが「ＯＦＦ」であるので、セクション２のバックアップをＳＳＤ制御部（ＭＡＣ）３５に指示する（ｓ６５）。そして、ＭＡＣ３５は、指示されたセクション２のバックアップを実行し、バックアップ完了後、セクション２のバックアップ完了通知をＳＳＵ−ＳＶＰ３４に送信する（ｓ６６）。セクション２のバックアップ完了通知を受信したＳＳＵ−ＳＶＰ３４は、セクション２のバックアップ完了フラグ３４ｂを「ＯＮ」に設定するとともに、バックアップ実行中フラグ３４ａを「ＯＦＦ」に設定する。この結果、セクション２のバックアップが完了した。【００８４】
その後、停電が発生すると、ＳＳＵ−ＳＶＰ３４は、停電を感知した旨の通知を受信し、補助電源３３を起動する。そして、ＳＳＵ−ＳＶＰ３４は、バックアップが完了したセクション２を除くセクション１、３、４のバックアップをＭＡＣ３５に指示する（ｓ６７）。そして、ＭＡＣ３５は、指示されたセクション１、３、４のバックアップを実行し、バックアップ完了後、セクション１、３、４のバックアップ完了通知をＳＳＵ−ＳＶＰ３４に送信する（ｓ６８）。セクション１、３、４のバックアップ完了通知を受信したＳＳＵ−ＳＶＰ３４は、セクション１、３、４のバックアップ完了フラグ３４ｂを「ＯＮ」に設定するとともに、バックアップ実行中フラグ３４ａを「ＯＦＦ」に設定する。この結果、共有メモリ３１の全セクションのバックアップが完了し、ＳＳＵ−ＳＶＰ３４は、共有メモリ装置（ＳＳＵ）３０の動作を停止させる。【００８５】
［実施例２の効果］
上記実施例２によれば、情報処理システム２は、複数のクラスタ１０−１〜１０−ｎ及び複数のセクションを備える共有メモリ装置３０を有する。また、情報処理システム２は、クラスタ１０−１〜１０−ｎ上で動作するＯＳの動作状態を監視する監視装置２０を有する。そして、共有メモリ装置３０は、監視装置２０に対してクラスタ上で動作するＯＳの動作状態を問い合わせ、所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳの動作状態が停止中であることを検知する。さらに、共有メモリ装置３０は、所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳの動作状態が停止中であることを検知したとき、所定のセクションに記憶されたデータを不揮発性記憶部３２にバックアップする。かかる構成によれば、情報処理システム２は、所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳの動作状態が停止中であることを検知すると、検知後当該セクションにアクセスされることはないので、当該セクションのデータを書き換えられないこととなる。このため、情報処理システム２は、システムの運用中の段階で、書き換えのない当該セクションのデータを不揮発性記憶部３２に予めバックアップしておくことで、後に停電が発生した場合にバックアップするデータ量を削減できる。すなわち、情報処理システム２は、停電の発生時に全てのセクションのデータをバックアップする場合と比較して、停電発生時にバックアップするデータ量を削減できる。【００８６】
なお、上記実施例２では、共有メモリ装置３０は、監視装置２０に対してクラスタ上で動作するＯＳの動作状態を問い合わせ、所定のセクションを割り当てられた全てのクラスタ上で動作するＯＳの動作状態が停止中であることを検知するものとして説明した。しかしながら、共有メモリ装置３０は、ＯＳに限定されず、監視装置２０に対してクラスタ上で動作するプログラムの動作状態を問い合わせ、所定のセクションを割り当てられた全てのクラスタ上で動作するプログラムの動作状態が停止中であることを検知するものとしても良い。この場合、共有メモリ装置３０は、所定のセクションを割り当てられた全てのクラスタ上で動作するプログラムの動作状態が停止中であることを検知したとき、所定のセクションに記憶されたデータを不揮発性記憶部３２にバックアップすることとなる。【００８７】
［その他］
なお、クラスタ１０−１〜１０−ｎは、既知のパーソナルコンピュータ、ワークステーションなどの情報処理装置に、上記したＣＬ制御部１２などの各機能を搭載することによって実現することができる。また、共有メモリ装置３０は、既知のパーソナルコンピュータ、ワークステーションなどの情報処理装置に、上記したＯＳ停止検知部３４１及びバックアップ依頼部３４２などの各機能を搭載することによって実現することができる。また、監視装置２０は、既知のパーソナルコンピュータ、ワークステーションなどの情報処理装置に、上記した各機能を搭載することによって実現することができる。さらに、クラスタ１０−１〜１０−ｎ、共有メモリ装置３０、監視装置２０を実現する情報処理装置は、ＣＰＵ、ＲＡＭやハードディスク等の記録装置、ネットワークインタフェース、媒体読取装置等を有する。【００８８】
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、ＯＳ停止検知部３４１とバックアップ依頼部３４２とを１個の部として統合しても良い。一方、バックアップ依頼部３４２を、バックアップ指示があったセクションのバックアップをＳＳＤ制御部３５に依頼する第１の依頼部と、停電を感知後該当するセクションのバックアップをＳＳＤ制御部３５に依頼する第２の依頼部とに分散しても良い。また、不揮発性記憶部３２を共有メモリ装置３０の外部装置としてネットワーク経由で接続するようにしても良い。【００８９】
また、情報処理システム１、２にて行われる各処理機能は、その全部または任意の一部が、ＣＰＵ（またはＭＰＵ、ＭＣＵ（Micro  Controller  Unit）などのマイクロ・コンピュータ）あるいは、ワイヤードロジックによるハードウェアとして実現されても良い。また、情報処理システム１、２にて行われる各処理機能は、その全部または任意の一部が、ＣＰＵ（またはＭＰＵ、ＭＣＵなどのマイクロ・コンピュータ）にて解析実行されるプログラムにて実現されても良い。
【符号の説明】
【００９０】
１、２  情報処理システム
１０−１〜１０−ｎ  クラスタ
１１  記憶部
１１ａ  セクション−ＣＬ情報
１２  ＣＬ制御部（ＣＬ−ＳＶＰ）
２０  監視装置（ＳＶＰＭ）
３０  共有メモリ装置（ＳＳＵ）
３１  共有メモリ（ＤＩＭＭ）
３２  不揮発性記憶部（ＳＳＤ）
３３  補助電源
３４  ＳＳＵ制御部（ＳＳＵ−ＳＶＰ）
３４１  ＯＳ停止検知部
３４２  バックアップ依頼部
３４ａ  バックアップ実行中フラグ
３４ｂ  バックアップ完了フラグ
３４ｃ  セクション−ＣＬ情報
３５  ＳＳＤ制御部（ＭＡＣ）
４０１  装置動作状態情報
４０２  ＣＬ動作状態問合せ部
【図１】
2012127636.tif 000003
【図２】
2012127636.tif 000004
【図３】
2012127636.tif 000005
【図４】
2012127636.tif 000006
【図５】
2012127636.tif 000007
【図６】
2012127636.tif 000008
【図７】
2012127636.tif 000009
【図８】
2012127636.tif 000010
【図９】
2012127636.tif 000011
【図１０】
2012127636.tif 000012
【図１１】
2012127636.tif 000013
【図１２】
2012127636.tif 000014
【図１３】
2012127636.tif 000015
【国際調査報告】
2012127636.tif 000016
2012127636.tif 000017