(57)【要約】【課題】ディスクコピー時における処理効率の向上を図ること。【解決手段】コピー元コンピュータ１００は、ハードディスク１０２における空き領域のアドレスを解析するためのダミーファイルを作成するコピープログラム１１２と、ダミーファイルが作成されたアドレスを検出し、メモリテーブル１１６に書き込むとともに、書き込まれたアドレスに基づいて、ハードディスク１０２に記録されたデータのアドレスを判定するフィルタドライバ１０８と、判定されたアドレスに記録されたデータ、及び判定されたアドレスをコピー先コンピュータ２００へ送信する送信用デーモン１１０とを備える。一方、コピー先コンピュータ２００は、送信用デーモン１１０から送信されたデータ及びアドレスを受信する受信用デーモン２１０と、受信したアドレスと同じハードディスク２０２内のアドレスに、受信したデータを書き込むフィルタドライバ２０８を備える。【選択図】      図１
2008234355.tif 000002
【特許請求の範囲】
【請求項１】
第１のコンピュータによって読み書き制御される第１のハードディスクに記録されているデータを、第２のコンピュータによって読み書き制御される第２のハードディスクに、アドレスを一致させた状態でコピーするディスクコピー装置であって、
前記第１のハードディスクにおいてデータが格納されていない空き領域のアドレスを解析するためのダミーファイルを、前記第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、前記空き領域に作成する手段と、
前記ダミーファイルが作成されたアドレスを検出する手段と、
前記検出されたアドレスを、メモリテーブルに書き込む手段と、
前記メモリテーブルに書き込まれたアドレスに基づいて、前記第１のハードディスクに記録されているデータのアドレスを判定する手段と、
前記判定されたアドレスに記録されているデータ、及び前記判定されたアドレスを、前記第２のコンピュータへ送信する手段と
を備える前記第１のコンピュータと、
前記第１のコンピュータから送信されたデータ及びアドレスを受信する手段と、
前記受信したアドレスと同じ前記第２のハードディスク内のアドレスに、前記受信したデータを書き込む手段と
を備える前記第２のコンピュータと
からなるディスクコピー装置。
【請求項２】
第１のコンピュータによって読み書き制御される第１のハードディスクに記録されているデータを、第２のコンピュータによって読み書き制御される第２のハードディスクに、アドレスを一致させた状態でコピーするディスクコピー装置であって、
前記第１のハードディスクにおいてデータが格納されていない空き領域のアドレスを解析するためのダミーファイルを、前記第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、前記空き領域に作成する手段と、
前記ダミーファイルへの書き込みをメモリに切り替える手段と、
前記ダミーファイルへ任意の値の書き込みを試みる手段と、
前記ダミーファイルへ任意の値の書き込みが試みられる毎に、前記ダミーファイルが作成されたアドレスを検出する手段と、
前記検出されたアドレスを、メモリテーブルに書き込む手段と、
前記メモリテーブルに書き込まれたアドレスに基づいて、前記第１のハードディスクに記録されているデータのアドレスを判定する手段と、
前記判定されたアドレスに記録されているデータ、及び前記判定されたアドレスを、前記第２のコンピュータへ送信する手段と
を備える前記第１のコンピュータと、
前記第１のコンピュータから送信されたデータ及びアドレスを受信する手段と、
前記受信したアドレスと同じ前記第２のハードディスク内のアドレスに、前記受信したデータを書き込む手段と
を備える前記第２のコンピュータと
からなるディスクコピー装置。
【請求項３】
第１のコンピュータによって読み書き制御される第１のハードディスクに記録されているデータを、第２のコンピュータによって読み書き制御される第２のハードディスクに、アドレスを一致させた状態でコピーするディスクコピー装置であって、
前記第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、前記第１のハードディスクの空き領域にダミーファイルを作成する手段と、
前記ダミーファイルへ、予め定めた値を書き込む手段と、
前記第１のハードディスクに記録されている全てのデータに対して、先頭アドレスから順に所定量ずつ圧縮コピーを作成し、作成した各圧縮コピーを前記第２のコンピュータへ順次送信する手段と
を備える前記第１のコンピュータと、
前記第１のコンピュータから送信された各圧縮コピーを順次解凍することにより、前記第１のハードディスクに記録されているデータを順次復元する手段と、
前記順次復元されたデータを、前記第２のハードディスクに順次書き込む手段と
を備える前記第２のコンピュータと
からなるディスクコピー装置。
【請求項４】
第１のコンピュータによって読み書き制御される第１のハードディスクに記録されているデータを、第２のコンピュータによって読み書き制御される第２のハードディスクに、アドレスを一致させた状態でコピーするプログラムであって、
前記第１のハードディスクにおいてデータが格納されていない空き領域のアドレスを解析するためのダミーファイルを、前記第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、前記空き領域に作成する機能、
前記ダミーファイルが作成されたアドレスを検出する機能、
前記検出されたアドレスを、メモリテーブルに書き込む機能、
前記メモリテーブルに書き込まれたアドレスに基づいて、前記第１のハードディスクに記録されているデータのアドレスを判定する機能、
前記判定されたアドレスに記録されているデータ、及び前記判定されたアドレスを、前記第２のコンピュータへ送信する機能
を前記第１のコンピュータに実現させ、
前記第１のコンピュータから送信されたデータ及びアドレスを受信する機能、
前記受信したアドレスと同じ前記第２のハードディスク内のアドレスに、前記受信したデータを書き込む機能
を前記第２のコンピュータに実現させるためのプログラム。
【請求項５】
第１のコンピュータによって読み書き制御される第１のハードディスクに記録されているデータを、第２のコンピュータによって読み書き制御される第２のハードディスクに、アドレスを一致させた状態でコピーするプログラムであって、
前記第１のハードディスクにおいてデータが格納されていない空き領域のアドレスを解析するためのダミーファイルを、前記第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、前記空き領域に作成する機能、
前記ダミーファイルへの書き込みをメモリに切り替える機能、
前記ダミーファイルへ任意の値の書き込みを試みる機能、
前記ダミーファイルへ任意の値の書き込みが試みられる毎に、前記ダミーファイルが作成されたアドレスを検出する機能、
前記検出されたアドレスを、メモリテーブルに書き込む機能、
前記メモリテーブルに書き込まれたアドレスに基づいて、前記第１のハードディスクに記録されているデータのアドレスを判定する機能、
前記判定されたアドレスに記録されているデータ、及び前記判定されたアドレスを、前記第２のコンピュータへ送信する機能
を前記第１のコンピュータに実現させ、
前記第１のコンピュータから送信されたデータ及びアドレスを受信する機能、
前記受信したアドレスと同じ前記第２のハードディスク内のアドレスに、前記受信したデータを書き込む機能
を前記第２のコンピュータに実現させるためのプログラム。
【請求項６】
第１のコンピュータによって読み書き制御される第１のハードディスクに記録されているデータを、第２のコンピュータによって読み書き制御される第２のハードディスクに、アドレスを一致させた状態でコピーするプログラムであって、
前記第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、前記第１のハードディスクの空き領域にダミーファイルを作成する機能、
前記ダミーファイルへ、予め定めた値を書き込む機能、
前記第１のハードディスクに記録されている全てのデータに対して、先頭アドレスから順に所定量ずつ圧縮コピーを作成し、作成した各圧縮コピーを前記第２のコンピュータへ順次送信する機能
を前記第１のコンピュータに実現させ、
前記第１のコンピュータから送信された各圧縮コピーを順次解凍することにより、前記第１のハードディスクに記録されているデータを順次復元する機能、
前記順次復元されたデータを、前記第２のハードディスクに順次書き込む機能
を前記第２のコンピュータに実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、ディスクコピー技術に関し、特に、コピー元のハードディスクからコピー先のハードディスクへ、アドレスまで一致させた状態でコピーするための装置及びプログラムに関する。
【背景技術】
【０００２】
従来、クラスタシステムのリモートディスクミラーリング機能（非共有ディスク方式）では、コピー元のデータとコピー先のデータとの整合性を持たせるために組み込みコピー（パーティション全体の一括コピー）を行っている（たとえば、非特許文献１参照）。リモートディスクミラーリングの制御を行うプログラムは、ディスクに配置されているデータのアドレスでデータの制御を行っているため、組み込みコピーでは、コピー元のデータをコピー先のディスクの同一アドレスに書き込む必要がある。そのため、組み込みコピーでは、パーティション内の全てのデータを先頭から順番にコピーしている。
【０００３】
ハードディスクのパーティションのデータ領域内には、ファイルとして割り当てられている実データと、割り当てられていない所謂ごみデータとが存在するが、組み込みコピーでは、アドレス単位でコピーを行うため、これらのデータについて区別せず、同様にコピーされる。
【０００４】
また、組み込みコピーでは、コピー中でもコピー元でのデータの更新が可能である。データの更新が発生した場合、以下の処理が行われる。
【０００５】
（１）組み込みコピーが行われる前のディスク領域に、データが更新される場合は、そのまま組み込みコピー処理でデータをコピーする。
【０００６】
（２）組み込みコピーが行われた後のディスク領域に、データが更新される場合は、組み込みコピーとは別のプロセスが更新コピーを行う。
【０００７】
このような一括コピーは、ディスクのバックアップツール／装置でも行われている。
【非特許文献１】http://pf.toshiba-sol.co.jp/prod/cluster/lineup/merit/flexible.htm
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、このような従来のコピー方法では、以下のような問題がある。
【０００９】
すなわち、従来のコピー方法では、全てのデータを転送するので、意味のないごみデータも転送してしまい、無駄が発生しているという問題がある。
【００１０】
本発明はこのような事情に鑑みてなされたものであり、ディスクコピー時におけるデータ転送量を低減することによって、ディスクコピー時における処理効率の向上を図ることが可能なディスクコピー装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成するために、本発明では、以下のような手段を講じる。
【００１２】
すなわち、上記の目的を達成するためには、実データのみコピーする方法や、データを圧縮してコピーする等により、ごみデータの転送をしない、若しくは低減する必要がある。
【００１３】
しかし、実データのみコピーする場合、ファイルシステムが実データとごみデータのアドレスを管理しており、ファイルシステムの上位からも下位からもデータのアドレスを取得することができない。一方、データを圧縮してコピーする場合、さまざまな種類のデータがあるため、汎用的な圧縮を行うことになるが、全データを圧縮しても低い圧縮率しか得られない可能性が高い。
【００１４】
本発明の請求項１の発明は、第１のコンピュータによって読み書き制御される第１のハードディスクに記録されているデータを、第２のコンピュータによって読み書き制御される第２のハードディスクに、アドレスを一致させた状態でコピーするディスクコピー装置である。そして、第１のコンピュータは、第１のハードディスクにおいてデータが格納されていない空き領域のアドレスを解析するためのダミーファイルを、第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、空き領域に作成する手段と、ダミーファイルが作成されたアドレスを検出する手段と、検出されたアドレスを、メモリテーブルに書き込む手段と、メモリテーブルに書き込まれたアドレスに基づいて、第１のハードディスクに記録されているデータのアドレスを判定する手段と、判定されたアドレスに記録されているデータ、及び判定されたアドレスを、第２のコンピュータへ送信する手段とを備えている。また、第２のコンピュータは、第１のコンピュータから送信されたデータ及びアドレスを受信する手段と、受信したアドレスと同じ第２のハードディスク内のアドレスに、受信したデータを書き込む手段とを備えている。
【００１５】
また、本発明の請求項２の発明は、第１のコンピュータが、第１のハードディスクにおいてデータが格納されていない空き領域のアドレスを解析するためのダミーファイルを、第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、空き領域に作成する手段と、ダミーファイルへの書き込みをメモリに切り替える手段と、ダミーファイルへ任意の値の書き込みを試みる手段と、ダミーファイルへ任意の値の書き込みが試みられる毎に、ダミーファイルが作成されたアドレスを検出する手段と、検出されたアドレスを、メモリテーブルに書き込む手段と、メモリテーブルに書き込まれたアドレスに基づいて、第１のハードディスクに記録されているデータのアドレスを判定する手段と、判定されたアドレスに記録されているデータ、及び判定されたアドレスを、第２のコンピュータへ送信する手段とを備えている。また、第２のコンピュータが、第１のコンピュータから送信されたデータ及びアドレスを受信する手段と、受信したアドレスと同じ第２のハードディスク内のアドレスに、受信したデータを書き込む手段とを備えている。
【００１６】
更に、本発明の請求項３の発明は、第１のコンピュータが、第１のコンピュータ上で動作するアプリケーションが使用する領域を残して、第１のハードディスクの空き領域にダミーファイルを作成する手段と、ダミーファイルへ、予め定めた値を書き込む手段と、第１のハードディスクに記録されている全てのデータに対して、先頭アドレスから順に所定量ずつ圧縮コピーを作成し、作成した各圧縮コピーを第２のコンピュータへ順次送信する手段とを備えている。また、第２のコンピュータが、第１のコンピュータから送信された各圧縮コピーを順次解凍することにより、第１のハードディスクに記録されているデータを順次復元する手段と、順次復元されたデータを、第２のハードディスクに順次書き込む手段とを備えている。
【００１７】
更にまた、本発明の請求項４乃至６の発明は、上述した請求項１乃至３の発明にそれぞれ対応するプログラムである。
【発明の効果】
【００１８】
本発明によれば、ディスクコピー時におけるデータ転送量を低減することによって、ディスクコピー時における処理効率の向上を図ることが可能なディスクコピー装置及びプログラムを実現することができる。
【発明を実施するための最良の形態】
【００１９】
以下に、本発明を実施するための最良の形態について図面を参照しながら説明する。
【００２０】
（第１の実施の形態）
図１は、第１の実施の形態に係るディスコピー装置の構成例を示す機能ブロック図である。
【００２１】
すなわち、本実施の形態に係るディスクコピー装置は、コピー元コンピュータ１００によって読み書き制御されるコピー元ハードディスク１０２に記録された実データ１０４を、コピー先コンピュータ２００によって読み書き制御されるコピー先ハードディスク２０２に、アドレスを一致させた状態でコピーするディスクコピー装置である。
【００２２】
このディスクコピー装置において、コピー元コンピュータ１００は、コピー元ハードディスク１０２の他に、ファイルシステム１０６、フィルタドライバ１０８、送信用デーモン１１０、コピープログラム１１２、他のアプリケーション１１４、及びメモリテーブル１１６を備えている。
【００２３】
また、コピー先コンピュータ２００は、コピー先ハードディスク２０２の他に、ファイルシステム２０６、フィルタドライバ２０８、受信用デーモン２１０、及びメモリテーブル２１６を備えている。
【００２４】
コピー元コンピュータ１００とコピー先コンピュータ２００とは、ネットワーク３００で接続されており、コピー元コンピュータ１００のハードディスク１０２のパーティションと、コピー先コンピュータ２００のハードディスク２０２のパーティションとは同一容量である。そして、ハードディスク１０２には、コピー対象となる実データ１０４とコピー対象外となるごみデータ１０５とが存在し、ハードディスク２０２には実データは存在せず、ごみデータ２０５のみが存在する。
【００２５】
なお、ネットワーク３００は、イーサネット（登録商標）等のＬＡＮ、あるいは公衆回線や専用回線を介して複数のＬＡＮが接続されるＷＡＮ等からなる。ＬＡＮの場合には、必要に応じてルータを介した多数のサブネットから構成される。また、ＷＡＮの場合には、公衆回線に接続するためのファイアウォール等を適宜備えているが、ここではその図示及び詳細説明を省略する。
【００２６】
本実施の形態では、このような構成をなすディスクコピー装置を用いてリモートディスクミラーリングの組み込みコピーを行う。この場合、アドレスの解析では、ハードディスク１０２への書き込みを行わず、メモリを使用する方法でアドレスを取得する。
【００２７】
この方法でディスクコピーを行う場合、先ず、コピープログラム１１２が、フィルタドライバ１０８に対してデータ転送命令を送るとともに、ハードディスク１０２においてデータが格納されていない空き領域のアドレスを解析するためのダミーファイルを、他のアプリケーション１１４が使用する領域を残して、すなわち、他のアプリケーション１１４もハードディスク１０２を使用することを考慮して、ディスク不足とならないくらいの容量を残して空き領域に作成する。また、ダミーファイルへの書き込みをメモリに切り替える。ダミーファイルをハードディスク１０２に直接書き込むことも可能であるが、ハードディスク１０２への直接書き込みは時間がかかるため、ここでは、ダミーファイルへの書き込みをメモリに切り替えている。
【００２８】
このようにダミーファイルが作成されると、ファイルシステム１０６は、ダミーファイルへ任意の値（例えば、全てゼロ）の書き込みを試みるようにフィルタドライバ１０８へ書込命令を送る。
【００２９】
フィルタドライバ１０８は、ファイルシステム１０６から書込命令が送られると、ダミーファイルが作成されたアドレスをハードディスク１０２から取得し、取得したアドレスの範囲をメモリテーブル１１６に記録する。
【００３０】
なお、メモリテーブル１１６は、コピー元コンピュータ１００のメモリ上に存在し、フィルタドライバ１０８から送られるダミーファイルのアドレス範囲（ファイルを構成するすべての先頭アドレスと終端アドレス）を記録する部位である。
【００３１】
フィルタドライバ１０８は更に、メモリテーブル１１６に書き込まれたアドレスに基づいて、ハードディスク１０２に記録された実データ１０４のアドレスを判定する。メモリテーブル１１６には、ダミーファイルのアドレスが記録されている訳であるから、フィルタドライバ１０８は、それ以外のアドレスを、実データ１０４のアドレスとして判定することができる。そして、コピープログラム１１２から送られたデータ転送命令に従って、判定した実データ１０４のアドレスに記録された実データ１０４をハードディスク１０２から取得し、判定した実データ１０４のアドレス、メモリテーブル１１６に記録されたダミーファイルのアドレスとともに送信用デーモン１１０に送る。
【００３２】
送信用デーモン１１０は、フィルタドライバ１０８から送られた実データ１０４、実データ１０４のアドレス、及びダミーファイルのアドレスを、ネットワーク３００を介してコピー先コンピュータ２００に向けて送信する。
【００３３】
このようにして送信用デーモン１１０から送信された情報は、コピー先コンピュータ２００の受信用デーモン２１０が受信し、フィルタドライバ２０８に渡す。
【００３４】
フィルタドライバ２０８は、渡された実データ１０４のアドレスと同じハードディスク２０２内のアドレスに、渡された実データ１０４を書き込む。また、渡されたダミーファイルのアドレスを、メモリテーブル２１６に書き込む。
【００３５】
なお、メモリテーブル２１６は、コピー先コンピュータ２００のメモリ上に存在し、フィルタドライバ２０８から送られるダミーファイルのアドレス範囲（ファイルを構成するすべての先頭アドレスと終端アドレス）を記録する部位である。
【００３６】
これによって、コピー元コンピュータ１００のハードディスク１０２から、コピー先コンピュータ２００のハードディスク２０２へのディスクコピー時に、所謂ごみデータ１０５のような意味のないデータを転送することなく、実データ１０４のみを転送してコピーを完了する。同時に、両コンピュータ１００，２００のメモリテーブル１１６，２１６同士もその内容が同一化される。
【００３７】
このようなディスクコピー装置は、例えば磁気ディスク等の記録媒体に記録された図示しないプログラムや、インターネット等の通信ネットワークを介してダウンロードした図示しないプログラムを読み込み、このプログラムによって動作が制御されるコピー元コンピュータ１００及びコピー先コンピュータ２００によって実現される。
【００３８】
また、このプログラムは、コンピュータ１００，２００に実行させることができるものであって、例えば磁気ディスク（フロッピー（登録商標）ディスク、ハ一ドディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリ等の記録媒体に格納し、またインターネット等の通信媒体により伝送して頒布することもできる。
【００３９】
なお、この記録媒体に格納されるプログラムは、コンピュータ１００，２００に実行させるソフトウエア手段（実行プログラムのみならずテーブルやデータ構造も含む）をコンピュータ１００，２００内に構成させる設定プログラムをも含む。
【００４０】
また、このプログラムは、記録媒体から、あるいは通信媒体からコンピュータ１００，２００に読み込まれると、コンピュータ１００，２００を動作させることによって上述した処理を実行させる。
【００４１】
次に、以上のように構成した本実施の形態に係るディスクコピー装置の動作の一例を図２に示すフローチャートを用いて説明する。
【００４２】
本実施の形態に係るディスクコピー装置を用いてディスクコピーを行う場合、先ず、コピープログラム１１２によって、フィルタドライバ１０８に対してデータ転送命令が送られるとともに、ハードディスク１０２の空き領域にダミーファイルが、他のアプリケーション１１４が使用する領域を残して作成される（Ｓ１）。ダミーファイルは、ハードディスク１０２においてデータが格納されていない空き領域を解析するためのものである。
【００４３】
更に、コピープログラム１１２によって、ダミーファイルへの書き込みがメモリに切り替えられる(Ｓ２)。
【００４４】
ダミーファイルが作成されると、ファイルシステム１０６によって、ダミーファイルへ任意の値（例えば、全てゼロ）の書き込みを試みるようにフィルタドライバ１０８へ書込命令が送られる（Ｓ３）。
【００４５】
そして、フィルタドライバ１０８では、ファイルシステム１０６から書込命令が送られると、ハードディスク１０２内のダミーファイルが作成されたアドレスを取得し、取得したアドレスの範囲をメモリテーブル１１６に記録する。更に、メモリテーブル１１６に書き込まれたアドレスに基づいて、ハードディスク１０２に記録された実データ１０４のアドレスが判定されメモリテーブル１１６に書き込まれる。この動作の詳細を図３のフローチャートを用いて説明する。
【００４６】
すなわち、フィルタドライバ１０８では、ファイルシステム１０６からのＩ／Ｏ（書込命令）を検出し（Ｓ３１）、更にそれがコピープログラム１１２からのＩ／Ｏ（データ転送命令）に基づくものであり（Ｓ３２：Ｙｅｓ）、書込先がハードディスク１０２になっていない（Ｓ３３：Ｎｏ）のであれば、ハードディスク１０２においてダミーファイルが作成されたアドレスが把握され、把握されたアドレスの範囲がメモリテーブル１１６に記録され（Ｓ３４）、ステップＳ３１の処理に戻る。
【００４７】
一方、ステップＳ３３において、書込先がハードディスク１０２になっている（Ｓ３３：Ｙｅｓ）のであれば、処理を終了する。また、ステップＳ３２において、コピープログラム１１２からのＩ／Ｏ（データ転送命令）に基づくものでない場合（Ｓ３２：Ｎｏ）には、ハードディスク１０２に対してＩ／Ｏが実行される（Ｓ３５）。すなわち、他のアプリケーション１１４からの命令であった場合は、フィルタドライバ１０８は何もせず、そのままハードディスク１０２に対して行われる。これにより、アドレス解析中でも他のアプリケーション１１４でのファイル更新が可能となる。ステップＳ３５の処理の後、ステップＳ３１の処理に戻る。
【００４８】
再び図２に示すように、ステップＳ４では、コピープログラム１１２によって、コピープログラム１１２からの書き込み先が、コピー先コンピュータ２００のハードディスク２０２となるようにフィルタドライバ１０８へ通知される（Ｓ４）。
【００４９】
次に、ステップＳ３４において空き領域のアドレスが把握されたことに伴い、フィルタドライバ１０８によって、メモリテーブル１１６に記録されたダミーファイルのアドレスからそれ以外のアドレスが、実データのアドレスとして判定される。そして、ステップＳ５では、コピープログラム１１２によって、ハードディスク１０２内のダミーファイルが削除される（Ｓ５）。
【００５０】
そして、コピープログラム１１２からフィルタドライバ１０８に、データ転送命令が送られると（Ｓ６）、フィルタドライバ１０８によって、判定した実データ１０４のアドレスに記録された実データ１０４がハードディスク１０２からコピーされ、判定した実データ１０４のアドレス、メモリテーブル１１６に記録されたダミーファイルのアドレスとともに送信用デーモン１１０に送られ、更に送信用デーモン１１０によって、これら情報がコピー先コンピュータ２００に向けて送信される。これによって、データ転送に必要な情報がコピー先コンピュータ２００に転送される（Ｓ７）。
【００５１】
このようにして送信用デーモン１１０から送信された情報は、コピー先コンピュータ２００の受信用デーモン２１０によって受信され、更にフィルタドライバ２０８へ渡される。そして、フィルタドライバ２０８によって、渡された実データ１０４のアドレスと同じハードディスク２０２内のアドレスに、渡された実データ１０４が書き込まれる。また、渡されたダミーファイルのアドレスが、メモリテーブル２１６に書き込まれる（Ｓ８）。
【００５２】
これによって、コピー元コンピュータ１００のハードディスク１０２から、コピー先コンピュータ２００のハードディスク２０２へのディスクコピー時に、所謂ごみデータ１０５のような意味のないデータを転送することなく、実データ１０４のみが転送されコピーが完了する。同時に、両コンピュータ１００，２００のメモリテーブル１１６，２１６同士もその内容が同一化される。
【００５３】
なお、上述したような組み込みコピー中に、すでに転送が終わったディスク領域にアプリケーション１１４の書き込みがあった場合は、図示しないリモートディスクミラーリングのプログラムが更新コピーを行い、コピー先のハードディスク２０２を上書きする。
【００５４】
また、転送前のディスク領域でダミーファイルがあった領域に書き込みがあった場合は、組み込みコピー中にリモートディスクミラーリングのプログラムが更新コピーを行い、コピー先のハードディスク２０２に書き込みを行うが、組み込みコピーでは、ダミーファイルがあった領域であるため、上書きされない。
【００５５】
更に、転送前のハードディスク１０２内の領域で、実データ１０４のある領域に書き込みがあった場合は、そのまま組み込みコピー処理でコピーされる。
【００５６】
このように、本実施の形態に係るディスクコピー装置は、従来技術と同様に、組み込みコピー中でも更新が可能で、更新処理を行ってもデータの整合性は保たれる。
【００５７】
上述したように、本実施の形態に係るディスクコピー装置においては、上記のような作用により、実データ１０４のみを転送するため、コピー元コンピュータ１００からコピー先コンピュータ２００へ転送されるデータ量を低減することができる。また、それにより、コピー時間を短縮することが可能となる。特に、実データ１０４のサイズが小さく、ごみデータ１０５のサイズが大きい場合は、この効果は顕著となる。
【００５８】
また、ファイルシステム１０６の上位からハードディスク１０２の書き込みを行い、ファイルシステム１０６の下のドライバレベルでダミーファイルのアドレス取得を実行しているため、ファイルシステム１０６に依存することなく実現することが可能である。
【００５９】
更に、ダミーファイルのアドレスを解析する際に、他のアプリケーション１１４で使用するディスク容量を残しておくため、アドレス解析中でもコピー元のファイルを更新することが可能である。
【００６０】
更にまた、ダミーファイルのアドレスの書き込みが、ハードディスク１０２に対して行われるのではなく、メモリテーブル１１６に対して行われるので、迅速に完了することができる。
【００６１】
このように、本実施の形態に係るディスクコピー装置は、ディスクコピー時に、ごみデータ１０５のような意味のないデータを転送せず、データ転送量を低減することができるので、ディスクコピー時における処理効率の向上を図ることが可能となる。
【００６２】
（第２の実施の形態）
第２の実施の形態に係るディスクコピー装置は、第１の実施の形態に係るディスクコピー装置の変形例である。そして、本実施の形態に係るディスクコピー装置も、その構成は、図１に示す機能ブロック図と同じである。したがって、以下の説明では、第１の実施の形態と同一部位については、同一符番を用いることにより簡単な説明にとどめ、異なる点について重点的に説明する。
【００６３】
すなわち、第１の実施の形態に係るディスクコピー装置では、フィルタドライバ１０８が、ダミーファイルが作成されたアドレスを取得し、取得したアドレスの範囲をメモリテーブル１１６に記録していたが、本実施の形態に係るディスクコピー装置では、コピープログラム１１２が、ダミーファイルを作成すると、ダミーファイルのアドレスを管理するファイル管理情報も作成される。そして、フィルタドライバ１０８は、ファイルシステム１０６から書込命令が送られると、ファイル管理情報を読み取ることによって、ダミーファイルが作成されたアドレスを把握し、把握したアドレスの範囲をメモリテーブル１１６に記録する。
【００６４】
次に、以上のように構成した本実施の形態に係るディスクコピー装置の動作の一例を図４に示すフローチャートを用いて説明する。
【００６５】
まず、ダミーファイルのアドレス情報をメモリテーブル１１６に書き込むために、コピープログラム１１２によって、コピープログラム１１２からの書き込み先がメモリとなるようにフィルタドライバ１０８へ通知される（Ｓ１１）。
【００６６】
次に、コピープログラム１１２によって、ハードディスク１０２内の空き領域のアドレスを解析するために、空き領域にダミーファイルが作成される。ただし、他のアプリケーション１１４がハードディスク１０２を使用することを考慮して、ディスク不足とならないくらいの容量を残しておく。このようにしてダミーファイルが作成されると、ハードディスク１０２に、ダミーファイルのアドレスを記録したアドレス管理情報が作成される（Ｓ１２）。
【００６７】
そして、フィルタドライバ１０８では、アドレス管理情報を読み取ることによって、ハードディスク１０２内のダミーファイルが作成されたアドレスが把握され、把握されたアドレスの範囲がメモリテーブル１１６に記録される。更に、メモリテーブル１１６に書き込まれたアドレスに基づいて、ハードディスク１０２に記録された実データ１０４のアドレスが判定されメモリテーブル１１６に書き込まれる。この動作の詳細は、図３のフローチャートを用いて説明した通りである。
【００６８】
再び図４に示すように、ステップＳ１３では、コピープログラム１１２によって、コピープログラム１１２からの書き込み先が、コピー先コンピュータ２００のハードディスク２０２となるようにフィルタドライバ１０８へ通知される（Ｓ１３）。
【００６９】
次に、ステップＳ３４において空き領域のアドレスが把握されたことに伴い、フィルタドライバ１０８によって、メモリテーブル１１６に記録されたダミーファイルのアドレスから、それ以外のアドレスが実データのアドレスとして判定される。そして、ステップＳ１４では、コピープログラム１１２によって、ハードディスク１０２内のダミーファイルが削除される（Ｓ１４）。
【００７０】
そして、コピープログラム１１２からフィルタドライバ１０８に、データ転送命令が送られると（Ｓ１５）、フィルタドライバ１０８によって、判定した実データ１０４のアドレスに記録された実データ１０４がハードディスク１０２からコピーされ、判定した実データ１０４のアドレス、メモリテーブル１１６に記録されたダミーファイルのアドレスとともに送信用デーモン１１０に送られ、更に送信用デーモン１１０によって、これら情報がコピー先コンピュータ２００に向けて送信される。これによって、データ転送に必要な情報がコピー先コンピュータ２００に転送される（Ｓ１６）。
【００７１】
このようにして送信用デーモン１１０から送信された情報は、コピー先コンピュータ２００の受信用デーモン２１０によって受信され、更にフィルタドライバ２０８へ渡される。そして、フィルタドライバ２０８によって、渡された実データ１０４のアドレスと同じハードディスク２０２内のアドレスに、渡された実データ１０４が書き込まれる。また、渡されたダミーファイルのアドレスが、メモリテーブル２１６に書き込まれる（Ｓ１７）。
【００７２】
上述したような本実施の形態に係るディスクコピー装置もまた、第１の実施の形態と同様に、ディスクコピー時に、ごみデータ１０５のような意味のないデータを転送せず、データ転送量を低減することができるので、ディスクコピー時における処理効率の向上を図ることが可能となる。
【００７３】
（第３の実施の形態）
第３の実施の形態に係るディスクコピー装置もまた、第１の実施の形態に係るディスクコピー装置の変形例であり、図５に示すように、コピー元コンピュータ１０１は、図１に示すようなコピー元コンピュータ１００とは異なり、メモリテーブル１１６を備えておらず、コピー先コンピュータ２０１は、コピー先コンピュータ２００とは異なり、メモリテーブル２１６を備えていない点が、第１の実施の形態の構成と異なっている。したがって、以下の説明では、第１の実施の形態と同一部位については、同一符番を用いることにより簡単な説明にとどめ、異なる点について重点的に説明する。
【００７４】
すなわち、第１の実施の形態に係るディスクコピー装置では、ハードディスク１０２に作成されたダミーファイルに対してデータの書き込みは行っていなかったが、本実施の形態に係るディスクコピー装置では、ハードディスク１０２に作成されたダミーファイルに対して、例えば全てゼロなどの、予め定めた値を書き込むようにしている。このように、全てゼロなどの値でダミーファイルを埋めるため、ハードディスク１０２に書き込まれている全てのデータ（ダミーファイルと実データ１０４とを含む）を圧縮した場合、高い圧縮効率で圧縮することができる。そのため、メモリテーブル１１６，２１６を省略することができる。そして、このように圧縮したデータを、コピー先コンピュータ２０１に転送し、ハードディスク２０２に書き込むことによってディスクコピーを行うようにしている。
【００７５】
このような本実施の形態に係るディスクコピー装置を実現するために、コピープログラム１１２は、他のアプリケーション１１４が使用する領域を残して、ハードディスク１０２の空き領域にダミーファイルを作成する。そして、ダミーファイルへ、例えば全てゼロのような予め定めた値を書き込む。その後、ダミーファイルを削除した後に、フィルタドライバ１０８に対して、データ圧縮転送命令を送る。
【００７６】
フィルタドライバ１０８は、ハードディスク１０２に記録されている全てのデータに対して、先頭アドレスから順に所定量（例えば数ＭＢ）ずつ圧縮して圧縮データを作成し、作成した各圧縮データを送信用デーモン１１０に送る。
【００７７】
送信用デーモン１１０は、フィルタドライバ１０８から送られた各圧縮データを、ネットワーク３００を介してコピー先コンピュータ２００に向けて順次送信する。
【００７８】
このようにして送信用デーモン１１０から順次送信された圧縮データは、コピー先コンピュータ２００の受信用デーモン２１０が受信し、フィルタドライバ２０８に渡す。
【００７９】
フィルタドライバ２０８は、渡された各圧縮データを順次解凍することにより、ハードディスク１０２に記録されているデータを順次復元する。そして、このようにして復元したデータを、ハードディスク２０２に順次書き込む。
【００８０】
次に、以上のように構成した本実施の形態に係るディスクコピー装置の動作の一例を図６に示すフローチャートを用いて説明する。
【００８１】
本実施の形態に係るディスクコピー装置を用いてディスクコピーを行う場合、先ず、コピープログラム１１２によって、他のアプリケーション１１４が使用する領域を残して（すなわち、他のアプリケーション１１４による使用時にディスク不足にならないように）、ハードディスク１０２の空き領域にダミーファイルが作成される（Ｓ２１）。更に、コピープログラム１１２によって、ダミーファイルへ、例えば全てゼロのような予め定めた値が書き込まれる（Ｓ２２）。更にその後、作成したダミーファイルが削除され（Ｓ２３）た後に、コピープログラム１１２からフィルタドライバ１０８に対して、データ圧縮転送命令が送られる。
【００８２】
そして、ハードディスク１０２に記録されている全てのデータが、フィルタドライバ１０８によって、先頭アドレスから順に所定量（例えば数ＭＢ）ずつ圧縮され、圧縮データが作成される。このようにして作成された各圧縮データは、フィルタドライバ１０８から順次送信用デーモン１１０へ送られる。
【００８３】
フィルタドライバ１０８から送信用デーモン１１０へ送られた各圧縮データは、送信用デーモン１１０から、ネットワーク３００を介してコピー先コンピュータ２００に向けて順次送信される（Ｓ２４）。
【００８４】
このようにして送信用デーモン１１０から順次送信された圧縮データは、コピー先コンピュータ２００の受信用デーモン２１０によって受信され、更にフィルタドライバ２０８へ送られる。そして、フィルタドライバ２０８によって、各圧縮データが順次解凍され、もって、ハードディスク１０２に記録されているデータが順次復元される。このようにして復元されたデータは更に、フィルタドライバ２０８によってハードディスク２０２に順次書き込まれる（Ｓ２５）。
【００８５】
上述したように、本実施の形態に係るディスクコピー装置においては、上記のような作用により、第１の実施の形態に係るディスクコピー装置で奏される作用効果に加えて、以下のような独自の作用効果を奏することが可能となる。
【００８６】
すなわち、本実施の形態に係るディスクコピー装置は、ファイルシステム１０６に依存することなく、例えば全てゼロのような任意の値でごみデータ１０５を埋めた後に、ハードディスク１０２内の全てのデータを圧縮するために、効率良く圧縮することができ、もって、コピー元コンピュータ１０１からコピー先コンピュータ２０１へ転送するデータ量を削減することができる。その結果、ディスクコピーに要する時間を短縮することが可能となる。特に、実データ１０４のサイズが小さく、ごみデータ１０５のサイズが大きい場合には、その効果はより顕著となる。
【００８７】
また、メモリテーブル１１６，２１６を備える必要がないため、構成が簡素化されるとともに、取り扱うデータ量も少なくなることから、ディスクコピー時における処理効率を更に高めることが可能となる。
【００８８】
以上、本発明を実施するための最良の形態について、添付図面を参照しながら説明したが、本発明はかかる構成に限定されない。特許請求の範囲の発明された技術的思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の技術的範囲に属するものと了解される。
【図面の簡単な説明】
【００８９】
【図１】第１の実施の形態に係るディスコピー装置の構成例を示す機能ブロック図。
【図２】第１の実施の形態に係るディスクコピー装置の動作の一例を示すフローチャート。
【図３】実データのアドレスが判定されメモリテーブルに書き込まれる動作の詳細を示すフローチャート。
【図４】第２の実施の形態に係るディスクコピー装置の動作の一例を示すフローチャート。
【図５】第３の実施の形態に係るディスコピー装置の構成例を示す機能ブロック図。
【図６】第３の実施の形態に係るディスクコピー装置の動作の一例を示すフローチャート。
【符号の説明】
【００９０】
１００，１０１…コピー元コンピュータ、１０２…コピー元ハードディスク、１０４…実データ、１０５…ごみデータ、１０６…ファイルシステム、１０８…フィルタドライバ、１１０…送信用デーモン、１１２…コピープログラム、１１４…他のアプリケーション、１１６…メモリテーブル、２００，２０１…コピー先コンピュータ、２０２…コピー先ハードディスク、２０５…ごみデータ、２０６…ファイルシステム、２０８…フィルタドライバ、２１０…受信用デーモン、２１６…メモリテーブル、３００…ネットワーク
【図１】
2008234355.tif 000003
【図２】
2008234355.tif 000004
【図３】
2008234355.tif 000005
【図４】
2008234355.tif 000006
【図５】
2008234355.tif 000007
【図６】
2008234355.tif 000008