(57)【特許請求の範囲】
【請求項１】
コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーするコピー手段と、
このコピー手段によるコピー動作が完了前に前記コピー元メモリに対する書き込み要求が発生したとき、該書き込み要求が発生した領域を認識する認識手段と、
この認識手段により認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー手段によるコピー動作に優先して前記コピー先メモリにコピーする優先コピー手段と、
前記コピー元メモリにおける既にコピーした領域を認識する既コピー領域認識手段と、
この既コピー領域認識手段により認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外する手段と
を具備することを特徴とするデータコピーシステム。
【請求項２】
コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーする動作が完了前に前記コピー元メモリに対する書き込み要求が発生したときに該書き込み要求が発生した領域を認識し、該認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー動作に優先して前記コピー先メモリにコピーし、前記コピー元メモリにおける既にコピーした領域を認識し該認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外することを特徴とするデータコピー方法。
【請求項３】
前記コピー動作は定期的に繰り返されることを特徴とする請求項２項記載のデータコピー方法。
【請求項４】
コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーするコンピュタシステムに適用され、外部の記憶媒体から読み出したプログラムに従って所定の動作を実行するシステムに使用されるコンピュータ読み取り可能な前記記憶媒体であって、
コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーする動作が完了前に前記コピー元メモリに対する書き込み要求が発生したとき、該書き込み要求が発生した領域を認識するステップと、
このステップにより認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー動作に優先して前記コピー先メモリにコピーするステップと、
前記コピー元メモリにおける既にコピーした領域を認識し該認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外するステップと、
を実行させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリ上のデータを、同一のコンピュータ又は異なるコンピュータ間でコピーするデータコピーシステム、データコピー方法及び記憶媒体に関する。
【０００２】
に関する。
【０００３】
【従来の技術】
従来、メモリ上のデータを同一のコンピュータ又は異なるコンピュータ上の他のメモリ領域にコピーするときには、コピーを行っている最中にコピー元のメモリ上のデータが更新されないようにする必要がある。そのため、コピーが完了するまでの間、コピー元のメモリ領域全体をロックし、書き込み禁止するようにしていた。
【０００４】
【発明が解決しようとする課題】
上述したように、メモリ上のデータをコピーしている間は、メモリ上のデータが更新されないように、その領域全体に対する書き込みを禁止する必要があるため、コピーするメモリ領域のサイズが大きくなる程、書き込みができない時間が長くなる。この時間は、メモリ上のデータを他のコンピュータ上のメモリ領域にコピーするリモートコピーの場合、更に長くなる。
【０００５】
よって、大きなサイズのメモリ領域に対する更新とコピーを頻繁に繰り返すような処理を行った場合、メモリコピーの時間がボトルネックとなって、性能が上がらなくなってしまうという問題があった。
【０００６】
このように従来は、メモリ上のデータを別のメモリ領域にコピーする場合、従来はメモリ領域全体のコピーが完了するまで書き込みを禁止していたため、大きなサイズのメモリ領域に対する更新とコピーを繰り返すような処理を行った場合、コピー時間がネックになって性能が上がらなかった。
【０００７】
本発明の目的は、大きなサイズのメモリ上のデータをコピーする場合でも、コピー元のメモリ領域に対する書き込み禁止時間を短くすることによって、メモリコピーに伴う性能劣化を軽減することが可能なデータコピーシステム、データコピー方法及び記憶媒体を提供することにある。
【０００８】
【課題を解決するための手段】
上記目的を達成するために請求項１に係る発明は、コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーするコピー手段と、
このコピー手段によるコピー動作が完了前に前記コピー元メモリに対する書き込み要求が発生したとき、該書き込み要求が発生した領域を認識する認識手段と、
この認識手段により認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー手段によるコピー動作に優先して前記コピー先メモリにコピーする優先コピー手段と、
前記コピー元メモリにおける既にコピーした領域を認識する既コピー領域認識手段と、
この既コピー領域認識手段により認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外する手段と
を具備することを特徴とするデータコピーシステムである。
【０００９】
請求項２に係る発明は、コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーする動作が完了前に前記コピー元メモリに対する書き込み要求が発生したときに該書き込み要求が発生した領域を認識し、該認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー動作に優先して前記コピー先メモリにコピーし、前記コピー元メモリにおける既にコピーした領域を認識し該認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外することを特徴とするデータコピー方法である。
【００１０】
請求項３に係る発明は、請求項２項記載のデータコピー方法において、前記コピー動作は定期的に繰り返されることを特徴とする。
【００１１】
請求項４に係る発明は、コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーするコンピュタシステムに適用され、外部の記憶媒体から読み出したプログラムに従って所定の動作を実行するシステムに使用されるコンピュータ読み取り可能な前記記憶媒体であって、
コピー元メモリ上のコピー元領域のデータをコピー先メモリにコピーする動作が完了前に前記コピー元メモリに対する書き込み要求が発生したとき、該書き込み要求が発生した領域を認識するステップと、
このステップにより認識した書き込み要求が発生した領域が既にコピーした領域でないとき該領域のデータを前記コピー動作に優先して前記コピー先メモリにコピーするステップと、
前記コピー元メモリにおける既にコピーした領域を認識し該認識した前記コピー元メモリにおける既にコピーした領域を前記コピー元領域から除外するステップと、
を実行させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体、である。
【００１２】
上述した各請求項に係る発明によれば、コピーを開始したときにはコピー元メモリ上のデータをコピーし、該コピー動作が完了するまでの間に、既にコピーが完了した領域に対する書き込み要求があった場合はそれを許可し、まだコピーが完了していない領域に対する書き込み要求があった場合には、その領域を優先的にコピーして、当該領域のコピーは完了したものとして、それらのページの再度のコピーを抑止するので、コピー実行中の書き込み禁止時間を最低限に抑え、性能劣化を防ぐことが可能となる。
【００１３】
【発明の実施の形態】
図１は、本発明のデータコピーシステム、データコピー方法及び記憶媒体が適用されるシステムを示しており、該システムは、インターネット、公衆電話回線によるネットワークや構内ネットワーク等のネットワーク１０に、プライマリーコンピュータ２０と、バックアップコンピュータ３０とが接続された構成となっている。また、プライマリーコンピュータ２０は、後述するコピー方法を実施するハードウェア又はソフトウェアが装備されている。もちろん、このようなハードウェア又はソフトウェアが装備されない場合は、ネットワーク１０を介し又は直接にディスク４０に記憶されたプログラムがインストールされることにより後述する方法を実施することができるようになっている。
【００１４】
ここに、このコピー元とコピー先とが同一であるか相違するかは、コピー動作そのものに本質的な相違はないが、そのデータ動作には、プライマリーコンピュータ２０のデータベース等のメモリ上の一領域のデータを他の領域にコピーする場合、プライマリーコンピュータ２０のデータベース等のメモリ上の特定領域のデータをバックアップコンピュータ３０のデータベース等のメモリ上の特定領域にコピーする場合がある。
【００１５】
図２の（ａ）は、前者の例を示しており、プライマリーコンピュータ２０のデータベース２１上の一の領域２１Ａのデータを、同じくプライマリーコンピュータ２０のデータベース２１上の他の領域２１Ｂにコピーする場合を示している。
【００１６】
図２の（ｂ）は、後者の例を示しており、プライマリーコンピュータ２０のデータベース２１上の一の領域２１Ａのデータを、バックアップコンピュータ３０のデータベース３１上の領域３１Ａにコピーする場合を示している。
【００１７】
また、コピー動作には、一回限りのコピー動作、複数回の不定期なコピー動作、定期的な繰り返しコピーがあるが、これもコピー動作そのものに本質的な相違はない。
【００１８】
以降に説明する各実施形態は、上述した共通のデータコピー方法の下で、コピー先の異同とコピー動作の頻度に応じた構成となっている。
【００１９】
（第１実施形態）
図３は本発明の第１実施形態によるコピー方法及びシステムを示している。
【００２０】
本実施形態では、コピーを開始する前にコピー元のメモリ領域全体にライトプロテクトをかけ、コピー中に書き込み要求が発生した時に、書き込み要求認識手段２であるエクセプションハンドラが起動されるようにしておく。エクセプションハンドラは、ライトエクセプションが発生したアドレスから、書き込み要求の発生したページを認識するものである。
【００２１】
以下、図３を参照してメモリ領域Ａ上のデータを、全てメモリ領域Ｂにコピーするまでの流れを説明する。
【００２２】
先ず、最初に図３（ａ）に示すように、メモリコピー手段１により、メモリ領域Ａ上のデータをメモリ領域Ｂにページ単位でシーケンシャルにコピーしていく。この処理は、メモリ領域Ａ内のライトプロテクトが掛った全てのページをメモリ領域Ｂにコピーするまで続ける。ライトプロテクトの掛っていないページは、コピーの対象外になる。メモリコピー手段１は、コピーしたページのライトプロテクトを外す。
【００２３】
図３（ａ）に引き続き図３（ｂ）では、メモリコピー手段１によるデータコピーを行っている最中でも、既にコピーの終了したページに対する書き込みはそのまま許可する。
【００２４】
図３（ｂ）に引き続き図３（ｃ）では、メモリコピー手段１によるデータコピーが完了するまでの間に、まだコピーしていないページに対して書き込み要求があった場合、書き込み要求認識手段２はメモリコピー手段１の処理を中断した後、優先的メモリコピー手段３を起動してそのページを先にコピーする。コピー終了後、そのページのライトプロテクトを外して書き込みを許可し、メモリコピー手段１の処理を再開させる。
【００２５】
図３（ｃ）に引き続き図３（ｄ）では、メモリコピー手段１は、まだコピーしていない残りのページをコピーする。図３（ｃ）によって既にコピーされたページは、書き込み要求認識手段２によってライトプロテクトがはずされているため、メモリコピー手段１がこのページを再度コピーすることはない。
【００２６】
本実施形態では同様の方法で、メモリ領域Ｂのデータをメモリ領域Ａにコピーするように処理を反転させることも可能である。
【００２７】
次に、第１実施形態における通常のコピー処理を図４を参照して説明する。図４において、ステップＳ１では、コピー元のメモリ領域にライトプロテクトをかける。
【００２８】
ステップＳ２では、ライトプロテクトを設定したページに書き込みが行われた時のページフォールト処理を行う書き込み要求認識手段２であるエクセプションハンドラを設定する。
【００２９】
ステップＳ３では、メモリコピー手段１により、コピー元のメモリ領域のデータをコピー先のメモリ領域にシーケンシャルにコピーしていく。
【００３０】
ステップＳ４では、ステップＳ３において、次にコピーするページにライトプロテクトが掛っているか、否かを判断する。
【００３１】
ステップＳ５では、ステップＳ４のページにライトプロテクトが掛っている場合、メモリコピー手段１はそのページをコピーしてライトプロテクトを外す。
【００３２】
ステップＳ６では、全ページのコピーが完了したかを判断する。
【００３３】
ステップＳ７では、ステップＳ６で全ページをコピーしている場合はコピーを完了し、コピーしていないページが残っている場合はステップＳ３の処理を繰り返す。
【００３４】
次に第１実施形態におけるエクセプションが発生した場合の処理を図５を参照して説明する。図５において、ステップＳ８では、メモリコピー手段１はメモリコピー中にライトエクセプションが発生したことを検知する。
【００３５】
ステップＳ９では、書き込み要求認識手段２がエクセプションの発生したページを調べる。
【００３６】
ステップＳ１０では、エクセプションを発生したのがコピー中のメモリ領域内のページかを判断する。
【００３７】
ステップＳ１１では、ステップＳ１０のページがコピー中のメモリ領域内にある場合、優先的メモリコピー手段３によりこのページをコピーし、ライトプロテクトを外す。
【００３８】
ステップＳ１２で、エクセプション処理が完了したことになる。
【００３９】
以上のように本実施形態によれば、メモリ領域Ａ上のデータを、全てメモリ領域Ｂにコピーするに際して、コピーを開始したときにはコピー元メモリ上のデータをコピーし、該コピー動作が完了するまでの間に、既にコピーが完了した領域に対する書き込み要求があった場合はそれを許可し、まだコピーが完了していない領域に対する書き込み要求があった場合には、その領域を優先的にコピーして、当該領域のコピーは完了したものとして、それらのページの再度のコピーを抑止するので、コピー実行中の書き込み禁止時間を最低限に抑え、性能劣化を防ぐことが可能となる。
【００４０】
（第２実施形態）
図６は本発明の第２実施形態のコピー方法及びシステムを示している。
【００４１】
本実施形態では、コピーを開始する前にコピー元のメモリ領域全体にライトプロテクトをかけ、コピー中に書き込み要求が発生した時に書き込み要求認識手段２であるエクセプションハンドラが起動されるようにしておく。このエクセプションハンドラは、ライトエクセプションが発生したアドレスから、書き込み要求の発生したページを認識するものである。またコピーすべきページを指定するためのコピー対象ページ登録手段４を作成しておく。
【００４２】
以下、図６を参照して本実施形態における、メモリ領域Ａ上のデータを全てメモリ領域Ｂにコピーするまでの流れを説明する。
【００４３】
図６（ａ）では、メモリコピー手段１により、メモリ領域Ａ上のデータをメモリ領域Ｂにページ単位でシーケンシャルにコピーしていく。この処理は、コピー対象ページ登録手段４によって指定されたページを全てコピーし終るまで続ける。
【００４４】
メモリコピー手段１によってコピーされたページの情報は、コピー対象ページ登録手段４から削除する。
【００４５】
尚、コピー開始時点では、コピー対象ページ登録手段４には、メモリ領域Ａ内の全ページが登録されている。
【００４６】
図６（ｂ）では、メモリコピー手段１によるデータコピーが完了するまでの間に、既にコピーの終了したページに対して書き込み要求があった場合、書き込み要求認識手段２は即座にそのページのライトプロテクトを外し、書き込みを許可する。
【００４７】
図６（ｃ）では、メモリコピー手段１によるデータコピーが完了するまでの間に、まだコピーしていないページに対して書き込み要求があった場合、書き込み要求認識手段２はメモリコピー手段１の処理を中断した後、優先的メモリコピー手段３を起動してそのページを先にコピーし、そのページの情報をコピー対象ページ登録手段４から削除する。
【００４８】
コピー終了後、そのページのライトプロテクトを外して書き込みを許可し、メモリコピー手段１の処理を再開させる。
【００４９】
図６（ｄ）では、メモリコピー手段１は、まだコピーしていない残りのページをコピーする。図６（ｃ）によって既にコピーされたページは、コピー対象ページ登録手段４から削除されているため、メモリコピー手段１がこのページを再度コピーすることはない。
【００５０】
本実施形態では同様の方法で、メモリ領域Ｂのデータをメモリ領域Ａにコピーするように処理を反転させることも可能である。
【００５１】
次に第２実施形態における通常のコピー処理を図７を参照して説明する。ステップＴ１では、コピー元のメモリ領域にライトプロテクトをかける。
【００５２】
ステップＴ２では、ライトプロテクトを設定したページに書き込みが行われた時のページフォールト処理を行う書き込み要求認識手段２であるエクセプションハンドラを設定する。
【００５３】
ステップＴ３では、コピーすべきページを指定するための、コピー対象ページ登録手段４を作成する。
【００５４】
ステップＴ４では、メモリコピー手段１により、コピー対象ページ登録手段４によって指定されたページをコピーしていく。
【００５５】
ステップＴ５では、メモリコピー手段１は、コピーしたページの情報を、コピー対象ページ登録手段４から削除する。
【００５６】
ステップＴ６では、全ページのコピーが完了したか否かを判断する。
【００５７】
ステップＴ７では、ステップＴ６で全ページをコピーしている場合はコピーを完了し、コピーしていないページが残っている場合はステップＴ４の処理を繰り返す。
【００５８】
次に第２実施形態においてエクセプションが発生した場合の処理を図８を参照して説明する。ステップＴ８では、メモリコピー手段１がメモリコピー中にライトエクセプションの発生を検知する。
【００５９】
ステップＴ９では、書き込み要求認識手段２がエクセプションの発生したページを調べる。
【００６０】
ステップＴ１０では、エクセプションを発生したのがコピー中のメモリ領域内のページか否かを判断する。
【００６１】
ステップＴ１１では、ステップＴ１０のページがコピー中のメモリ領域内にある場合、そのページがコピー対象登録手段４に登録されているか否かを判断する。
【００６２】
ステップＴ１２では、ステップＴ１１のページコピー対象登録手段４に登録されている場合、優先的メモリコピー手段３によってこのページをコピーし、このページの情報をコピー対象登録手段４から削除する。
【００６３】
ステップＴ１３では、エクセプションを発生したページがコピー中のメモリ領域内のページである場合、このページのライトプロテクトを外す。
【００６４】
ステップＴ１４では、エクセプション処理を完了する。
【００６５】
以上のように本実施形態によれば、メモリ領域Ａ上のデータを、全てメモリ領域Ｂにコピーするに際して、コピーを開始したときにはコピー元メモリ上のデータをコピーし、該コピー動作が完了するまでの間に、既にコピーが完了した領域に対する書き込み要求があった場合はそれを許可し、まだコピーが完了していない領域に対する書き込み要求があった場合には、その領域を優先的にコピーして、当該領域のコピーは完了したものとして、それらのページの再度のコピーを抑止するので、コピー実行中の書き込み禁止時間を最低限に抑え、性能劣化を防ぐことが可能となる。
【００６６】
（第３実施形態）
図９は本発明の第３実施形態のコピー方法及びシステムを示している。
【００６７】
本実施形態では、コピー領域のデータを全てコピーするのではなく、前回コピーを開始した時から今回コピーを開始するまでの間に更新されたページａ、ｂ、ｃ、ｄのみをコピーの対象とするものである。
【００６８】
尚、更新ページは前回のコピー開始以降に書き込み要求認識手段２によってライトプロテクトをはずされたページであり、書き込みページ登録手段５に更新されたページ情報が登録されている。
【００６９】
またメモリ領域Ａからメモリ領域Ｂへのコピーを開始する前には、これらの更新ページに対しても再度ライトプロテクトをかけ、コピー中に書き込み要求がきたことを、書き込み要求認識手段２が認識できるようにしておく。
【００７０】
さらにコピーすべきページを指定するための、コピー対象ページ登録手段４を作成しておく。
【００７１】
以下、図９を参照して、前回のコピーを開始した時から今回のコピーを開始するまでの間に更新されたメモリ領域Ａ上のページａ、ｂ、ｃ、ｄをメモリ領域Ｂにコピーするまでの流れを説明する。
【００７２】
図９（ａ）では、メモリコピー手段１により、前回のコピーを開始した時から今回のコピーを開始するまでの間に更新されたメモリ領域Ａ上のページを、メモリ領域Ｂにページ単位でシーケンシャルにコピーしていく。この処理は、コピー対象ページ登録手段４によって指定されたページを全てコピーし終るまで続ける。メモリコピー手段１によってコピーされたページの情報は、コピー対象ページ登録手段４から削除する。
【００７３】
尚、コピー開始時点では、コピー対象登録手段４には、書き込みページ登録手段５に登録されていたページ情報が登録されている。
【００７４】
図９（ｂ）では、メモリコピー手段１によるデータコピーが完了するまでの間に、前回のコピー開始から更新されていないページ、又は既にコピーの終了したページに対して書き込み要求があった場合、書き込み要求認識手段２は即座にそのページのライトプロテクトを外し、書き込みを許可する。また、このページの情報を書き込みページ登録手段５に登録する。
【００７５】
図９（ｃ）では、メモリコピー手段１によるデータコピーが完了するまでの間に、まだコピーしていないページに対して書き込み要求があった場合、書き込み要求認識手段２はメモリコピー手段１の処理を中断した後、優先的メモリコピー手段３を起動してそのページを先にコピーし、そのページの情報をコピー対象ページ登録手段４から削除する。
【００７６】
コピー終了後、そのページのライトプロテクトを外して書き込みを許可し、メモリコピー手段１の処理を再開させる。また、このページの情報を書き込みページ登録手段５に登録する。
【００７７】
図９（ｄ）では、メモリコピー手段１は、まだコピーしていない残りのページをコピーする。図９（ｃ）によって既にコピーされたページは、コピー対象ページ登録手段４から削除されているため、メモリコピー手段１がこのページを再度コピーすることはない。
【００７８】
本実施形態では同様の方法で、メモリ領域Ｂのデータをメモリ領域Ａにコピーするように処理を反転させることも可能である。
【００７９】
次に、第３実施形態における通常のコピー処理を図１０を参照して説明する。
【００８０】
ステップＵ１では、（ｘ−１）回目のコピーを開始する。
【００８１】
ステップＵ２では、更新されたページ情報を、書き込みページ登録手段４に登録する。
【００８２】
ステップＵ３では、ｘ回目のコピーを開始する。
【００８３】
ステップＵ４では、コピー元のメモリ領域にライトプロテクトをかけ直す。
【００８４】
ステップＵ５では、書き込みページ登録手段５に登録されたページ情報から、コピーすべきページを指定するためのコピー対象ページ登録手段４を作成する。
【００８５】
ステップＵ６では、メモリコピー手段１により、コピー対象ページ登録手段４によって指定されたページをコピーしていく。
【００８６】
ステップＵ７では、メモリコピー手段１は、コピーしたページの情報を、コピー対象ページ登録手段４から削除する。
【００８７】
ステップＵ８では、全ページのコピーが完了したかを判断する。
【００８８】
ステップＵ９では、ステップＵ８で全ページをコピーしている場合はコピーを完了し、コピーしていないページが残っている場合はステップＵ６の処理を繰り返す。
【００８９】
次に、第３実施形態においてエクセプションが発生した場合の処理を図１１を参照して説明する。
【００９０】
ステップＵ１０では、メモリコピー手段１がメモリコピー中にライトエクセプションの発生を検知する。
【００９１】
ステップＵ１１では、書き込み要求認識手段２がエクセプションの発生したページを調べる。
【００９２】
ステップＵ１２では、エクセプションを発生したのがコピー中のメモリ領域内のページかを判断する。
【００９３】
ステップＵ１３では、ステップＵ１２のページがコピー中のメモリ領域内にある場合、そのページがコピー対象登録手段４に登録されているか、否かを判断する。
【００９４】
ステップＵ１４では、ステップＵ１３のページがコピー対象登録手段４に登録されている場合、優先的メモリコピー手段３によってこのページをコピーし、このページの情報をコピー対象登録手段４から削除する。
【００９５】
ステップＵ１５では、ステップＵ１３のページの情報を、書き込みページ登録手段５に登録する。
【００９６】
ステップＵ１６では、エクセプションを発生したページがコピー中のメモリ領域内のページである場合、このページのライトプロテクトを外す。
【００９７】
ステップＵ１７では、エクセプション処理を完了とする。
【００９８】
以上のように本実施形態によれば、コピー領域のデータを全てコピーするのではなく、前回コピーを開始した時から今回コピーを開始するまでの間に更新されたページａ、ｂ、ｃ、ｄのみをコピーの対象とすることによって、コピーするページ数を必要最低限に留め、コピーによる性能劣化を軽減することが可能となる。
【００９９】
（第４実施形態）
図１２（ａ）（ｂ）は、本発明のコピー方法及びシステムを高信頼性ミドルウェアのチェックポイント採取処理に適用したものであり、具体的なシステムへの適用例になっている。
【０１００】
ここに、高信頼性ミドルウェアの一例としては、ＡＲＴＥＭＩＳがある（白木原、平山、金井「高信頼性ミドルウェアＡＲＴＥＭＩＳの設計と実装」  情報処理学会ＯＳ研究会、１９９７年２月、白木原、平山、金井、佐藤「ARTEMIS:Advanced Reliable Dsitributed Middleware System」  proc.of lnt Cont PDATA'97,1997年６月）。
【０１０１】
このような高信頼性ミドルウェアは、プライマリコンピュータ２０上で動作しているプロセスのチェックポイント情報を定期的にバックアップコンピュータ３０に転送し、プライマリコンピュータ２０に障害が発生した時には、保存したチェックポイント情報を元にしてバックアップコンピュータ３０上でプロセスを復元することにより、プロセスの無停止運用を実現するものである。
【０１０２】
ここに、チェックポイント採取時には、様々なプロセス構成情報をバックアップコンピュータ３０に転送するが、まずはそれをプライマリコンピュータ２０上に用意したバッファにコピーする。メモリデータもその１つであり、従来は前回のチェックポイント採取時から更新されたページを全てプライマリコンピュータ２０上のバッファにコピーしている間、プロセスの処理を中断させていた。しかし大きなメモリ領域を頻繁に更新するようなアプリケーションにＡＲＴＥＭＩＳを適用した場合、チェックポイント採取時にプライマリコンピュータ２０上のバッファにコピーするデータ量が多くなるため、性能劣化を引き起こす要因になっていた。
【０１０３】
しかし、本実施形態の適用により、全更新ページを直接バックアップコンピュータ３０上のバッファにコピーし、しかもその完了を待たずにプロセスを再開させることができるようになるため、性能向上を見込むことができる。
【０１０４】
ここに、メモリデータをバックアップコンピュータ３０に転送する時間は、メモリデータをプライマリコンピュータ２０上のバッファにコピーする時間よりも長い。このため、従来は、メモリデータを直接バックアップコンピュータ３０に転送すると、その間プロセスの処理が中断されてしまうため、性能が大幅に低下してしまうに対し、本発明を適用することにより、プロセス処理の中断を最小限に抑えることになるので、性能低下を防止することが可能となる。
【０１０５】
尚、第４実施形態は、第３実施形態を高信頼性ミドルウェアに適用した場合について示しているため、メモリコピーの際の具体的な流れは第３実施形態を従っている。
【０１０６】
以下に、本実施形態をシステムに適用した際のチェックポイントの流れを図１２（ａ）（ｂ）を参照して説明する。
【０１０７】
ステップＶ１で、ｘ番目のチェックポイントから、ページＡ、Ｂを更新する。
【０１０８】
ステップＶ２で、ｘ＋１番目のチェックポイントを開始（ページＡ、Ｂが転送対象となる）し、ステップＶ３、ページＡをバックアップコンピュータ３０に転送する。
【０１０９】
ステップＶ４で、ページＣを更新する。
【０１１０】
ステップＶ５で、ページＢをバックアップコンピュータ３０に転送
ステップＶ６で、ｘ＋１番目のチェックポイント完了とし、ステップＶ７で、ページＡ、Ｄを更新する。
【０１１１】
ステップＶ８で、ｘ＋２番目のチェックポイント開始（ページＡ、Ｃ、Ｄが転送対象となる）し、ステップＶ９で、ページＣ、Ａをバックアップコンピュータ３０に転送する。
【０１１２】
ステップＶ１０で、ページＤの更新要求の発生を検知する。
【０１１３】
ステップＶ１１で、ページＤはｘ＋１番目のチェックポイント開始時から更新されており、ｘ＋２番目のチェックポイントでまだ転送されていないため、ステップＶ１０の要求をブロックし、先にページＤをバックアップコンピュータ３０に転送する。
【０１１４】
ステップＶ１２で、ｘ＋２番目のチェックポイント完了とし、ステップＶ１３で、ステップＶ１１によりブロックされていたページＤの更新要求を実行する。
【０１１５】
以上のように本実施形態では、高信頼性ミドルウェアにおいて、プライマリコンピュータ２０上で動作しているプロセスのチェックポイント情報を定期的にバックアップコンピュータ３０に転送し、プライマリコンピュータ２０に障害が発生した時には、保存したチェックポイント情報を元にしてバックアップコンピュータ３０上でプロセスを復元するようにしているので、プロセスを停止しないで必要なデータコピーの運用を行うことが可能となる。
【０１１６】
本発明は、上述し且つ図示した実施形態に限定されるものではなく、図１におけるディスク４０は、記憶媒体として磁気ディスク、フロッピーディスク、ハードディスク、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ等）、光磁気ディスク（ＭＯ等）、半導体メモリ等、プログラムを記憶でき、且つコンピュータが読み取り可能な有形の記憶媒体であれば、その記憶形式及び形状等は何れであっても良い。
【０１１７】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶又は一時記憶した記憶媒体も含まれる。
【０１１８】
また、記憶媒体は１つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０１１９】
尚、本発明におけるコンピュータは、コピー元メモリとしてデータベースや各種形態の記憶装置を含むものであり、記憶媒体に記憶されたプログラムに基づいて本実施形態における各処理を実行するものであって、一つのコンピュータからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０１２０】
また、本発明におけるコンピュータにあっては、情報処理機器に含まれる演算処理装置、パーソナルコンピュータ、マイクロコンピュータ等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０１２１】
【発明の効果】
以上のように本発明によれば、メモリコピー中にコピー元のメモリ領域に対する書き込みが発生した場合でも、書き込み対象が少ないページの広い範囲に渡る場合は、書き込みをブロックされる時間が短いため、大幅に性能向上を図ることが可能なデータコピーシステム、データコピー方法及び記憶媒体を提供することができる。
【図面の簡単な説明】
【図１】本発明が適用されるコンピュータを含むシステムの構成図。
【図２】本発明のデータコピー方法の適用形態を示す図。
【図３】本発明の第１実施形態の方法を示す図。
【図４】第１実施形態の通常処理時のフローチャートを示す図。
【図５】第１実施形態のエクセプション発生時のフローチャートを示す図。
【図６】本発明の第２実施形態の方法を示す図。
【図７】第２実施形態の通常処理時のフローチャートを示す図。
【図８】第２実施形態のエクセプション発生時のフローチャートを示す図。
【図９】本発明の第３実施形態の方法を示す図。
【図１０】第３実施形態の通常処理時のフローチャートを示す図。
【図１１】第３実施形態のエクセプション発生時のフローチャートを示す図。
【図１２】本発明の第４実施形態の方法を示し、高信頼性ミドルウェアのチェックポイント処理への適用を示す図。
【符号の説明】
１            メモリコピー手段
２            書込要求認識手段
３            優先的メモリコピー手段
４            コピー対象ページ登録手段
５            書き込みページ登録手段
１０          ネットワーク
２０          プライマリーコンピュータ
２１          データベース
３０          バックアップコンピュータ
３１          データベース
４０          ディスク
【図１】
0003822431.tif 000002
【図２】
0003822431.tif 000003
【図３】
0003822431.tif 000004
【図４】
0003822431.tif 000005
【図５】
0003822431.tif 000006
【図６】
0003822431.tif 000007
【図７】
0003822431.tif 000008
【図８】
0003822431.tif 000009
【図９】
0003822431.tif 000010
【図１０】
0003822431.tif 000011
【図１１】
0003822431.tif 000012
【図１２】
0003822431.tif 000013