(57)【特許請求の範囲】
【請求項１】
電源障害発生時にメモリ内の情報を退避制御するメモリ退避制御手段と、このメモリ内の情報が退避される不揮発性の退避用記憶媒体を具備する情報処理装置において、
メモリの退避領域を複数の区分に分割し、この区分毎に変更認識フラグを用意して、ある区分が書き替えられたときそれに対応する変更認識フラグが更新される変更認識フラグテーブルと、
情報処理装置が初期化された後、通常運転に入る前にメモリの退避領域のデータを前記不揮発性の退避用記憶媒体に退避させ、通常運転のときは一定時間毎に前記変更認識フラグテーブルにおいて変更認識フラグが更新された区分のみを前記退避用記憶媒体に退避させるとともに更新された変更認識フラグを初期状態に戻し、電源障害発生時には前記変更認識フラグが更新されている区分のみを前記退避用記憶媒体に退避させるメモリ退避制御部を
具備したことを特徴とする情報処理装置。
【請求項２】
前記退避用記憶媒体の異常領域と、この異常領域に退避すべきデータの記入されたリザーブ領域とが記入されたディスク異常管理テーブルを設け、
メモリ退避処理中に前記退避用記憶媒体の一部に異常を検出したとき、この異常が発生した箇所を抜かして処理を実行し、この抜かした箇所を前記ディスク異常管理テーブルに記入してあるリザーブ領域に退避し、またこのディスク異常管理テーブルもこの退避用記憶媒体に退避させたことを特徴とする請求項１記載の情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、情報処理装置の停電時に、メモリの内容を任意の記憶媒体に退避させるようにしたメモリ退避処理装置に関する。
【０００２】
【従来の技術】
情報処理装置は、図６（Ａ）に示す如く、プロセッサ・モジュール２１、共有メモリ・モジュール２２、電源制御モジュール２３、これらを接続するバス２４等により構成されている。
【０００３】
プロセッサ・モジュール２１は、ＣＰＵ、キャッシュ記憶機構、共有メモリ・モジュール制御機構、ローカル・ストレイジ・ユニット等により構成される。そしてプロセッサ・モジュール２１はバス２４を介して他のプロセッサ・モジュール、共有メモリ・モジュール２２、電源制御モジュール２３等に接続される。
【０００４】
共有メモリ・モジュール２２は複数のプロセッサ・モジュールにより共有可能なメモリであり、後述するように、電源断のときその退避領域に記憶されているデータを他の記憶媒体、例えば退避用ディスクに退避するメモリ退避機構を備えている。
【０００５】
このような情報処理装置において、停電や電源系の障害が発生すると、まず電源関係を制御している電源制御モジュール２３がこれを検知して、プロセッサ・モジュール２１や共有メモリ・モジュール２２等の情報処理装置を構成している他のモジュールへ停電通知を送信する。
【０００６】
共有メモリ・モジュール２２には、図６（Ｂ）に示す如く、メモリ退避機構を有し、この電源制御モジュール２３からの停電通知を検出すると、メモリ退避の準備を行う。またプロセッサ・モジュール２１はこの停電通知を検出すると、共有メモリ・モジュール２２に対して、メモリ退避の指示を行う。これによりメモリ退避指示を受信した共有メモリ・モジュール２２は、後述するように、メモリ退避処理を開始する。
【０００７】
電源制御モジュール２３は、前記停電通知を送信した後、ある一定期間後に情報処理装置を構成しているプロセッサ・モジュール２１に対する電源供給を停止するが、メモリ退避処理を行っている共有メモリ・モジュール２２については、そのメモリ退避処理が終了するまで予備電源を供給する。
【０００８】
共有メモリ・モジュール２２は、メモリ退避を終了すると、電源制御モジュール２３に対して退避処理の終了を通知する。この電源制御モジュール２３は、この退避処理の終了通知を受信したとき、予備電源を含み情報処理装置内の全電源の供給を停止する。
【０００９】
共有メモリ・モジュール２２は、図６（Ｂ）に示す如く、メモリ２２−１、ＣＰＵ２２−２、ＣＰＵ２２−２を制御するファームウェアが格納されるＲＯＭ２２−３、メモリ制御部２２−４、割込み制御部２２−５、バス制御部２２−６、メモリ退避制御部２２−７、メモリ２２−１の退避領域のデータを退避するための退避用ディスク２２−８、内部バスＢ−１〜Ｂ−７等により構成されている。
【００１０】
停電が発生すると、電源制御モジュール２３からの停電通知は、バス２４に出力され、プロセッサモジュール２１と共有メモリ・モジュール２２に送出される。共有メモリ・モジュール２２では、図６（Ｂ）に示す、バス制御部２２−６で受信され、内部バスＢ−４を経由して割込み制御部２２−５に伝達されて、割込み制御部２２−５において割込み命令に変換される。そしてこの変換された割込み命令は、内部バスＢ−６によりメモリ退避部２２−７を通り、内部バスＢ−１を経由してＣＰＵ２２−２に伝達される。
【００１１】
ＣＰＵ２２−２は、ＲＯＭ２２−３の内部に格納されているファームウェアにより制御されるものであるが、ＣＰＵ２２−２がこの割込み命令を検出すると、内部バスＢ−１→メモリ退避部２２−７→内部バスＢ−５→メモリ制御部２２−４→内部バスＢ−７という経路を通り、割込み制御部２２−５に表示されるこの割込みレベルに対応する割込み要因を確認する。
【００１２】
ファームウェアにより制御されるＣＰＵ２２−２は、これにより割込み要因が停電通知を示していることを確認すると、メモリ退避制御部２２−７に対して、プロセッサ・モジュール２１からのメモリ退避指示に備えるように指示をする。この指示によりメモリ退避制御部２２−７は退避用ディスク２２−８が回転停止状態であればこれを回転状態に制御する。
【００１３】
プロセッサ・モジュール２１は、電源制御モジュール２３からの前記停電通知を検出すると、共有メモリ・モジュール２２に対してメモリ退避命令を発行する。共有メモリ・モジュール２２は、このプロセッサ・モジュール２１からのメモリ退避命令を、バス制御部２２−６→内部バスＢ−４→割込み制御部２２−５→内部バスＢ−６→メモリ退避制御部２２−７→ＣＰＵ２２−２（ファームウェア）→メモリ退避制御部２２−７→内部バスＢ−５→メモリ制御部２２−４→割込み制御部２２−５という経路で確認する。このメモリ退避命令の確認後、ＣＰＵ２２−２はＲＯＭ２２−３に格納されているファームウェアにより、メモリ制御部２２−４を介して、メモリ２２−１に対するメモリ退避処理を行う。
【００１４】
このメモリ退避処理を図７に示すフローチャートに基づき説明する。
（１）  ＣＰＵ２２−２は、このプロセッサ・モジュール２１から送出されたメモリ退避命令を検出すると、メモリ退避制御部２２−７に対して退避用ディスク２２−８が動作状態つまりレディ状態にあるか否かチェックさせる。退避用ディスク２２−８は、前記電源制御モジュール２３からの停電通知を受信したとき、前記の如く、停止状態であれば回転状態に制御されており、レディ状態になる。
【００１５】
（２）  退避用ディスク２２−８がレディ状態つまりアクセス可能状態であれば、ＲＯＭ２２−３に格納されたファームウェアにより制御されたＣＰＵ２２−２はメモリ退避制御部２２−７に対して退避用ディスク２２−８のセクタ番号、シリンダ番号、ヘッド番号、転送モード等の各種の設定を行う。
【００１６】
（３）  メモリ退避制御部２２−７は、これらの設定後、この設定処理の終了報告をＣＰＵ２２−２に対して行う。ＣＰＵ２２−２は、この報告により前記設定処理が終了して退避ディスクがレディ状態であることを確認すると、メモリ退避開始指示等を行う。メモリ退避制御部２２−７は、ＣＰＵ２２−２からの前記設定指示を受信すると、退避用ディスクに対して、セクタ番号、シリンダ番号、ヘッド番号、転送モード等を設定し、メモリ退避開始指示を受信するとメモリ制御部２２−４に対し、ＣＰＵ２２−２から指示された退避されるデータであるメモリブロックアドレスのデータのリードを指示する。
【００１７】
（４）  メモリ制御部２２−４は、このメモリ退避制御部２２−７からの指示により、メモリ２２−１から該当アドレスのデータをリードし、メモリ退避制御部２２−７に対し、この退避すべきデータを転送する。メモリ退避制御部２２−７は、受信したメモリ制御部２２−４からのリードデータを退避用ディスク２２−８に転送する。
【００１８】
（５）  退避用ディスク２２−８への転送を終了し、正常に退避用ディスク２２−８にデータが書き込まれた場合、退避用ディスク２２−８はメモリ退避制御部２２−７に対して転送完了通知を返送し、転送の完了確認を行う。
【００１９】
（６）  メモリ退避制御部２２−７はこの転送完了通知を検出すると、ＣＰＵ２２−２に対して完了通知を送信する。ＣＰＵ２２−２は退避すべきメモリ２２−１の領域が残っている場合には、この残っているメモリ２２−１のデータに対して、同様にメモリ退避処理を続行する。このようにしてメモリ２２−１における退避領域の全データにメモリ退避処理が行われる。
【００２０】
（７）  メモリ２２−１における退避領域の全データに対して退避処理が完了すると、共有メモリ・モジュールのＣＰＵ２２−２は電源モジュール２３に対してメモリ退避完了通知を報告し、退避用ディスク２２−８に対する退避用データの転送処理が終了する。
【００２１】
【発明が解決しようとする課題】
ところで、従来の技術では、前記の如きメモリ退避処理が行われる契機は、停電による情報処理装置の停止によるものである。従ってこのメモリ退避処理を行っている期間は停電状態であり、従ってこのメモリ退避処理は情報処理装置に予め用意されている予備電源により行われる。
【００２２】
しかし従来の技術では、予備電源の電源容量は一定の限界があり、この予備電源によるメモリ退避処理における電源供給時間は予め決められている。そのため今後情報処理装置における使用メモリの大容量化にともなうメモリ退避処理時間の増大化に対応できなくなるという問題の発生することが予想される。
【００２３】
従って本発明の目的は、メモリが大容量されてもメモリ退避処理時間が増大しないようにしたメモリ退避処理装置を提供することである。
【００２４】
【課題を解決するための手段】
前記目的を達成するため、本発明では、図１（Ａ）に示す如く、共有メモリ・モジュール２のメモリ退避制御部２−７に定期的退避処理部２−９を設ける。なお図１（Ａ）において、１はプロセッサ・モジュール、３は電源制御モジュール、４はバス、２−１はメモリ、２−２はＣＰＵ、２−３はＲＯＭ、２−４はメモリ制御部、２−５は割込み制御部、２−６はバス制御部、２−８は退避用ディスクである。
【００２５】
本発明では、停電時にメモリの退避領域の全データを退避させるのではなく、情報処理装置の運転時において一定期間毎にその書き替えられた部分だけ退避処理を行うようにし、停電時でも前回の退避処理時から書き替えられたところだけ退避する。
【００２６】
このため、本発明では、図１（Ｂ）に示す如く、情報処理装置の立上がりである電源投入時Ｔ０  に初期化が行われ時刻Ｔ１  に初期化が終了すると、定期的退避処理部２−９がメモリ２−１の退避領域の全データを退避用ディスク２−８に退避処理し、その退避処理した時刻Ｔ２  より情報処理装置の通常運転を行う。
【００２７】
以下一定時間毎の時刻Ｔ３  、Ｔ４  ・・・毎にメモリ２−１の退避領域の書き替えられた部分だけを退避用ディスク２−８に順次退避処理する。
そして時刻Ｔ６  において、電源制御モジュール３からの停電通知を受け、またプロセッサ・モジュール１からメモリ退避命令を受けたとき、定期的退避処理部２−９はその前回のメモリ退避処理を行った時刻Ｔ５  以降に書き替えられたメモリの退避領域の内容に対して退避用ディスク２−８に退避処理を行う。
【００２８】
これにより、従来の場合は、図１（Ｂ）に示す如く、時刻Ｔ６  において電源制御モジュール３からの停電通知を受け、またプロセッサ・モジュール１からメモリ退避命令を受けたとき、メモリ退避領域全体を退避するため退避処理が終了して情報処理装置の停止が時刻Ｔ８  になるのに比べて、本発明では退避すべきデータ量を少なくすることができるため、時刻Ｔ８  よりも早い時刻Ｔ７  で退避処理を終了し、情報処理装置を停止することができる。
【００２９】
なお、退避処理中に退避用ディスク２−８の異常を検出した場合、比較的に時間の要する該退避用ディスク２−８に用意される代替機能は使用せず、異常部分をとばして退避処理を続行させる。これにより停電時のメモリ退避処理時間の短縮化が可能となる。
【００３０】
【発明の実施の形態】
本発明の一実施の形態を図２〜図５に基づき他図を参照して説明する。図２は本発明の一実施の形態構成図、図３は本発明の動作説明図（その１）でありメモリ退避処理指示が検出されたときの動作を説明するもの、図４は本発明の動作説明図（その２）であり図３におけるメモリの退避処理の動作を説明するもの、図５は本発明の動作説明図（その３）であり図３におけるメモリの退避処理動作において退避先に異常が発生した場合の動作を説明するものである。
【００３１】
図２において他図と同符号部は同一部を示し、１−１はタイマ、２−１２は変更認識フラグテーブル、２−１３はディスク異常管理テーブルである。
タイマ１−１は、図１（Ｂ）に示す如く、情報処理装置が通常運転に入ってからメモリ退避処理を行うための一定間隔毎に出力を生じるものであり、例えば時刻Ｔ３  、Ｔ４  ・・・等の一定間隔に出力を生ずるものである。
【００３２】
読出部２−１１は変更認識フラグテーブル２−１２を読み出し、認識フラグＦを認識してその認識フラグＦがオンのメモリブロックを検知するものであり、この検出動作はプロセッサ・モジュール１よりタイマ１−１にもとづく一定時間毎に出力されるメモリ退避処理指示、或いは停電時のメモリ退避処理指示に応じて行われる。
【００３３】
変更認識フラグテーブル２−１２は、前回のメモリ退避処理後に書き替えられたメモリ退避領域を示すものであり、メモリの退避領域を複数のブロックに区切り、各ブロックが書き替えられたことを示すフラグＦが設けられるものである。例えば図２（Ｂ）に示す如く、複数に区切られたブロックの先頭アドレス対応にフラグＦを設けておき、書き替えの行われた領域の存在するブロックのフラグＦをオン（例えば「１」）にして、書き替えられたブロックを示す。同じアドレスのブロックに複数回書き替えが行われても、フラグＦは最初の書き替えのときオンにされ、あとの書き替えのときはフラグＦの制御は行わず、オンの状態が保持される。
【００３４】
ディスク異常管理テーブル２−１３は、異常領域とリザーブ領域の対応を示すものである。本発明では例えば電源投入の初期化直後のメモリ退避処理において、あるいは通常運転時の一定時間毎に行うメモリ退避処理において、または停電時におけるメモリ退避処理において、退避すべきメモリ領域のデータを退避用ディスク２−８に退避中に、この退避用ディスクの記憶媒体の一部に何らかの異常を検出したとき、代替処理による置き換えを行わず、異常処理用にリザーブされている領域にこれを転送する。この場合、ディスク異常管理テーブル２−１２は異常が検出された領域である異常領域と、そのデータの格納先であるリザーブ領域を示す。なおこれらの領域は、セクタ番号、シリンダ番号、ヘッド番号等により表示される。
【００３５】
そしてこれら読出部２−１１、変更認識フラグテーブル２−１２、ディスク異常管理テーブル２−１３等が、図１に示す定期的退避処理部２−９を構成している。
【００３６】
本発明の動作について説明する。
先ず変更認識フラグテーブル２−１２について説明する。
通常、情報処理において共有メモリ・モジュール２のメモリ２−１のデータがプロセッサ・モジュール１によりフェッチ・アクセスされる場合、先ず、プロセッサ・モジュール１に搭載されているキャッシュに対しアクセスされる。
【００３７】
共有メモリ・モジュール２に対するライト・アクセスが発生した場合、そのプロセッサ・モジュールは、キャッシュの等価性を保証するために、そのライト・アクセスが行われているメモリのブロックを保持しているキャッシュを持つ他のプロセッサ・モジュールに対してパージ・コマンドを発行してそのブロックを無効化する。
【００３８】
本発明では、従来各プロセッサ・モジュールに対してのみ発行されていたパージ・コマンドを共有メモリ・モジュール２のメモリ退避制御部２−７に対しても発行させる。このパージ・コマンドをメモリ退避制御部２−７で検出すると、変更認識フラグテーブル２−１２の、このパージ・コマンドに記入されたメモリブロックに対応するブロックの認識フラグＦをオン（例えば「１」）にして、このメモリブロックに書き替えが行われたことを表示する。
【００３９】
メモリ退避制御部２−７は、パージ・コマンドの検出により認識フラグＦが一度オンになると、同じメモリブロックに再び対応するパージ・コマンドが発行されてきてもこのコマンドを無視する。
【００４０】
認識フラグは電源投入後の情報処理装置の初期化後に行われるメモリ退避処理後に、及び通常動作中においてある一定のサイクルで行われるメモリ退避処理後に初期化される。
【００４１】
次に本発明の特徴とするメモリ退避処理について説明する。本発明において、退避処理は、電源投入後の初期化直後の退避処理と、通常運転に移行したあとの一定時間毎に行われる退避処理と、停電時における退避処理がある。
【００４２】
図１（Ｂ）に示す時刻Ｔ０  において、情報処理装置の電源投入が行われると、初期化が開始され、時刻Ｔ１  において初期化が終了する。この初期化終了後、プロセッサ・モジュール１からコマンドが出力され、メモリ退避制御部２−７では、このときメモリ２−１のメモリ退避領域の初期状態の全データを退避用ディスク２−８に格納処理を行い、その退避処理が終了すると、時刻Ｔ２  より情報処理装置の通常運転に入る。
【００４３】
通常運転に入ると、プロセッサ・モジュール１ではタイマ１−１からの一定時間毎の信号によりメモリ退避処理指示コマンドを共有メモリ・モジュール２に出力する。共有メモリ・モジュール２では、ＲＯＭ２−３に格納されているファームウエアにより制御されるＣＰＵ２−２がこれを検知し、メモリ退避制御部２−７に対してメモリ退避を指示する。これによりメモリ退避制御部２−７では図３に示す処理が行われる。
【００４４】
Ｓ１、例えば図１（Ｂ）の時刻Ｔ３  において、プロセッサ・モジュール１からメモリ退避処理指示コマンドが出力されると、共有メモリ・モジュール２ではＣＰＵ２−２がこれを検出し、メモリ退避制御部２−７に対してこれを通知する。これによりメモリ退避制御部２−７では読出部２−１１が変更認識フラグテーブル２−１２を順次アクセスし、認識フラグＦのオンすなわちフラグが反転されているブロックを検索する。
【００４５】
Ｓ２、そしてフラグが反転すなわち認識フラグＦがオンになったものを検知するとそれに対応するメモリのブロックに対する退避処理を実行する。この退避処理は、後述する図４または図５に示す動作により行われる。
【００４６】
Ｓ３、このように認識フラグＦがオンのものを順次検知してそれに対応するメモリの退避処理を行い、変更認識フラグテーブル２−１２の全フラグを確認してそれに対応する処理が行われた後、共有メモリ・モジュール２は電源制御モジュール３に対してメモリ退避終了を通知する。このようにしてメモリの退避処理が終了する。
【００４７】
なお図３の動作は、図１（Ｂ）の時刻Ｔ３  、Ｔ４  等の一定時間毎のメモリ退避処理及び時間Ｔ６  における停電時のメモリ退避処理について行われるものである。
【００４８】
次に図４の動作について説明する。
Ｓ１０、共有メモリ・モジュール２のＣＰＵ２−２では、電源制御モジュール３からの停電通知または、プロセッサ・モジュール１からのメモリ退避処理指示にもとづき、メモリ退避制御部２−７は、退避用ディスク２−８が回転停止状態であれば、これを回転状態つまりレディ状態に制御する。
【００４９】
Ｓ１１、ＣＰＵ２−２は退避用ディスク２−８がレディ状態であることを確認すると、メモリ退避制御部２−７に対して、退避用のための退避用ディスク２−８のセクタ番号、シリンダ番号、ヘッド番号、リード／ライト信号等を設定する。またメモリ制御部２−４に対し、前記認識フラグＦがオンになったブロックのアドレスを送出し、退避すべきデータのリードを指示する。
【００５０】
Ｓ１２、メモリ退避制御部２−７は、これらの設定後、この設定処理の終了報告をＣＰＵ２−２に行う。ＣＰＵ２−２はこの報告により設定処理が終了し退避用ディスク２−８がレディ状態であることを確認すると、メモリ退避開始指示等を行う。
【００５１】
Ｓ１３、メモリ制御部２−４は、このメモリ退避開始指示により、メモリ２−１から該当アドレスのデータを読み出し、メモリ退避制御部２−７にこの退避すべきデータを転送する。メモリ退避制御部２−７は、受信したメモリ制御部２−４からのデータを退避用ディスク２−８の前記設定先の領域に格納する。このようにして退避フラグＦがオンの１つのブロックの退避が終了すると、メモリ退避制御部２−７ではその認識フラグＦをオフにして初期化し、次にオンになっている認識フラグＦの検出処理を行う。
【００５２】
Ｓ１４、このようにして認識フラグＦがオンになっているメモリのブロックを全部退避用ディスク２−８に格納するまで退避データに対する転送処理が行われる。そして全認識フラグについてオンになっているか否か確認し、オンに対する退避が行われてオフとなっていることが確認終了するまで行われる。このようにして転送処理が終了する。
【００５３】
ところで、このようなメモリ退避処理において、メモリ退避制御部２−７から退避用ディスク２−８に対して退避データを転送しているときに、退避用ディスク内部に書き込み不能な異常が発生することがある。通常のディスク格納の場合、ディスクは一般的な異常処理として該当するセクタを代替処理により置き換えて処理を続行する。しかしこの代替処理は異常検出後に行われるリトライ処理後に行われるため、リトライ処理に長時間を必要とするので、この場合代替処理として数十秒の時間を必要とする。
【００５４】
このような異常処理時間を短縮するために、本発明では、ディスクにおける代替処理機能を不可としてこれを使用しない。この代替処理機能を不可とした代わりに、本発明ではメモリ退避制御部２−７において、ディスクの異常処理用の管理テーブルとしてディスク異常管理テーブル２−１３を設ける。このディスク異常管理テーブル２−１３は、図２（Ｃ）に示す如く、異常領域のセクタ番号Ｓ、シリンダ番号Ｓ、ヘッド番号Ｈと、それに対応するリザーブ領域のセクタ番号Ｓ、シリンダ番号Ｓ、ヘッド番号Ｈが記入されている。
【００５５】
退避用ディスク２−８に書込み不能な異常領域の存在する場合について、本発明の動作を図５にもとづき説明する。図５においてＳ２０〜Ｓ２４までは図４におけるＳ１０〜Ｓ１４と同じ処理が行われる。
【００５６】
Ｓ２０、共有メモリ・モジュール２のＣＰＵ２−２では、電源制御モジュール３からの停電通知または、プロセッサ・モジュール１からのメモリ退避処理指示にもとづき、メモリ退避制御部２−７は、退避用ディスク２−８が回転停止状態であれば、これを回転状態つまりレディ状態に制御する。
【００５７】
Ｓ２１、ＣＰＵ２−２は退避用ディスク２−８がレディ状態であることを確認すると、メモリ退避制御部２−７に対して、退避用のための、退避用ディスク２−８のセクタ番号、シリンダ番号、ヘッド番号、リード／ライト信号等を設定する。またメモリ制御部２−４に対し、前記認識フラグＦがオンになったブロックのアドレスを送出し、退避すべきデータのリードを指示する。
【００５８】
Ｓ２２、メモリ退避制御部２−７は、これらの設定後、この設定処理の終了報告をＣＰＵ２−２に行う。ＣＰＵ２−２はこの報告により設定処理が終了し、退避用ディスク２−８がレディ状態であることを確認すると、メモリ退避開始指示等を行う。
【００５９】
Ｓ２３、メモリ制御部２−４は、このメモリ退避開始指示により、メモリ２−１から該当アドレスのデータを読み出し、メモリ退避制御部２−７にこの退避すべきデータを転送する。メモリ退避制御部２−７は、受信したメモリ制御部２−４からのデータを退避用ディスク２−８の電気設定先の領域に格納する。このようにして退避フラグＦがオンの、１つのブロックの退避が終了すると、メモリ退避制御部２−７ではその認識フラグＦをオフにして初期化し、次にオンになっている認識フラグＦの検出処理を行う。
【００６０】
Ｓ２４、このようにして認識フラグＦがオンになっているメモリのブロックを全部退避用ディスク２−８に格納するまで退避データに対する転送処理が行われる。そして全領域フラグについてオンになっているか否か確認し、オンに対する退避が行われてオフとなっていることが確認終了するまで行われる。このようにして転送が終了する。
【００６１】
Ｓ２５、そしてこの転送が終了したあと格納先が正常終了すればそのまま転送処理終了となる。
Ｓ２６、しかし格納先が異常であれば、メモリ退避制御部２−７は、その異常領域に対して退避用ディスク２−８のリザーブ領域のセクタ番号、シリンダ番号、ヘッド番号、リード／ライト信号等を新しく設定し、これに退避データを転送する。すなわち、完了通知が異常ステータスであることにより、退避用ディスク２−８の異常を検出した場合、異常処理用にリザーブされている領域に退避データを転送する。このとき、異常発生時の退避用ディスク２−８のセクタ番号、シリンダ番号、セクタ番号、認識フラグアドレス等と、異常処理時のセクタ番号、シリンダ番号、ヘッド番号等をディスク異常管理テーブル２−１３に書き込んでおき、全退避データを退避後、メモリの退避データと同様に退避用ディスク２−８に退避する。このようにして転送処理を終了する。
【００６２】
また、ディスク異常管理テーブル２−１３で保持しているリザーブ領域がオーバーフローした場合、ディスク障害とみなしてメモリ退避を終了し、電源制御モジュール３に対し異常終了としてメモリ退避完了を通知する。
【００６３】
このようにして通常一定時間毎にメモリ退避領域に新しく書き込まれた領域のみ退避しているので、停電発生時においても、前回退避処理後に新しく書き込まれた領域のみ退避すればよく、全退避領域を退避することが必要でないため退避すべきデータ量を削減することが可能となり、従ってメモリ退避時間を大きく短縮することができ、また今後予想されるメモリ容量の増大化に対応できるものとなる。
【００６４】
なお、上記説明では、停電時のメモリ退避のことに関して説明したが、本発明は勿論これのみに限定されるものではなく、他の緊急な電源事故、救済不可の電源系の障害により情報処理装置が停止する場合においても同様に処理されるものである。
【００６５】
【発明の効果】
請求項１に記載された本発明によれば、通常運転のときにメモリの退避領域のうち、書き替えられた領域を退避用記憶媒体に予め退避しているので、電源障害時に退避すべきデータ量を少なくすることができ、短時間で退避処理を行うことができる。しかも変更認識フラグテーブルを設けたので転送すべき部分が容易に、短時間で判断することが出来、しかも認識フラグの初期化は電源投入後の初期化終了時と、通常運転時の一定期間毎に行われるメモリ退避処理後に行うので、この一定期間内に同じ区分に複数回書き替えが行われても１回のみ退避すればよい。
【００６６】
請求項２に記載された本発明によれば、退避先に異常領域が存在しても、これを抜かしてリザーブ領域に簡単に、短時間に退避することができる。しかもディスク異常管理テーブルまで退避するので、電源障害復旧後にその内容をロードすることにより、メモリの退避領域の内容を正しく復元することができる。
【図面の簡単な説明】
【図１】本発明の原理図である。
【図２】本発明の一実施の形態構成図である。
【図３】本発明の動作説明図（その１）である。
【図４】本発明の動作説明図（その２）である。
【図５】本発明の動作説明図（その３）である。
【図６】情報処理装置及び共有メモリ・モジュール構成図である。
【図７】従来のメモリ退避処理フロー図である。
【符号の説明】
１  プロセッサ・モジュール
２  共有メモリ・モジュール
３  電源制御モジュール
４  バス
２−１  メモリ
２−２  ＣＰＵ
２−３  ＲＯＭ
２−４  メモリ制御部
２−５  割込み制御部
２−６  バス制御部
２−７  メモリ退避制御部
２−８  退避用ディスク
２−９  定期的退避処理部
【図１】
0003550256.tif 000002
【図２】
0003550256.tif 000003
【図３】
0003550256.tif 000004
【図４】
0003550256.tif 000005
【図５】
0003550256.tif 000006
【図６】
0003550256.tif 000007
【図７】
0003550256.tif 000008