(57)【要約】【課題】ファイルの移動やコピーにかかる時間を短くすることができる情報処理装置を提供する。【解決手段】常駐モジュール７２は、ＯＳ７０からデータの移動元またはコピー元の選択操作を検出した場合、対象データを読み出して、所定の場所に書き込みを開始する。その後、常駐モジュール７２は、ＯＳ７０からのデータの移動先またはコピー先の指示操作がなされた場合、データの移動先またはコピー先と同じボリュームの所定の場所から、データの移動先またはコピー先にデータの移動を行う。同じボリューム内でのデータ移動は、ファイルシステムの管理領域の書き換えだけで実現することができ、改めて書き込み処理を行う必要はなく、時間がかかることがない。【選択図】図２
2013114551.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置からデータを読み出し、前記記憶装置へのデータの書き込みを制御する制御部と、
ユーザの操作を受け付ける受付部と、
を備えた情報処理装置であって、
前記制御部は、前記受付部でデータの移動先またはデータのコピー先を指定する操作を受け付けるタイミングよりも前に、当該データを読み出して所定の場所に書き込む事前書き込み処理を行うことを特徴とする情報処理装置。
【請求項２】
前記制御部は、前記受付部でデータの移動元またはデータのコピー元を指定する操作を受け付けた場合に、前記事前書き込み処理を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記制御部は、前記受付部でデータを選択する操作を受け付けた場合に、その後データの移動またはデータのコピーが開始されると予測して、当該データを読み出して前記事前書き込み処理を行うことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記制御部は、前記受付部でデータの移動先またはデータのコピー先を指定する操作を受け付けた場合に、前記事前書き込み処理で書き込んだデータを、前記所定の場所から、前記受け付けた前記データの移動先または前記データのコピー先に移動させる移動処理を行うことを特徴とする請求項１乃至請求項３のいずれかに記載の情報処理装置。
【請求項５】
情報処理装置に実行されるプログラムであって、
データの移動先またはデータのコピー先を指定する操作を受け付けるタイミングよりも前に、当該データを読み出して所定の場所に書き込む事前書き込み処理を、前記情報処理装置に実行させることを特徴とするプログラム。
【請求項６】
データの移動元またはデータのコピー元を指定する操作を受け付けた場合に、前記事前書き込み処理を前記情報処理装置に実行させることを特徴とする請求項５に記載のプログラム。
【請求項７】
データを選択する操作を受け付けた場合に、その後データの移動またはデータのコピーが開始されると予測して、当該データを読み出して前記事前書き込み処理を前記情報処理装置に実行させることを特徴とする請求項５に記載のプログラム。
【請求項８】
データの移動先またはデータのコピー先を指定する操作を受け付けた場合に、前記事前書き込み処理で書き込んだデータを、前記所定の場所から、前記受け付けた前記データの移動先または前記データのコピー先に移動させる移動処理を、前記情報処理装置に実行させることを特徴とする請求項５乃至請求項７のいずれかに記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、データの移動やコピーを行う情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
近年、パーソナルコンピュータ（以下、ＰＣと言う。）等の情報処理装置では、データの移動やコピーを行うことが多い。データの移動やコピーを支援する手法としては、例えば特許文献１に示されているようなものがある。
【０００３】
特許文献１の方法では、一度「コピー」コマンドが実行されると、クリップボードにコピーされた内容を保持し続け、過去に「コピー」コマンドが実行されたものの中から、「貼り付け」となる対象データを選択することができるようになっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２４３４８３公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一方、ＰＣでは、内蔵ドライブのボリュームや外付けドライブのボリューム等、複数の異なるボリューム間でファイルの移動またはコピーを行う場合がある。この場合、移動先またはコピー先のボリュームにファイルを書き込む処理が発生する。あるいは同じボリューム内にファイルをコピーする場合であっても、当該ファイルを書き込む処理が発生する。そのため、書き込み先のボリュームに対する書き込み性能に応じた書き込み処理時間がかかる。
【０００６】
そこで、この発明は、ファイルの移動やコピーにかかる時間を短くすることができる情報処理装置、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の情報処理装置は、記憶装置からデータを読み出し、前記記憶装置へのデータの書き込みを制御する制御部と、ユーザの操作を受け付ける受付部と、を備えた情報処理装置であって、前記制御部は、前記受付部でデータの移動先またはデータのコピー先を指定する操作を受け付けるタイミングよりも前に、当該データを読み出して所定の場所に書き込む事前書き込み処理を行うことを特徴とする。
【０００８】
制御部は、例えば、ファイルの移動元の指定操作（例えばＷｉｎｄｏｗｓ（登録商標）では「切り取り」コマンドの実行、ＣＴＲＬ＋Ｘのキー入力等）またはファイルのコピー元の指定操作（例えば「コピー」コマンドの実行、ＣＴＲＬ＋Ｃのキー入力等）がなされた時点で対象ファイルを読み出して、所定の場所に書き込む事前書き込み処理を開始する。また、制御部は、例えば、ファイル操作アプリケーションでユーザがファイルを選択する操作を行った場合等、ファイルの移動またはコピーが行われると予測できる場合には、その段階で当該ファイルを読み出し、所定の場所に書き込む事前書き込み処理を開始する。また、制御部は、移動元またはコピー元のファイルが存在するディレクトリ（フォルダ）が選択された時点で、当該ディレクトリ（フォルダ）に含まれるファイルを読み出し、所定の場所に書き込む事前書き込み処理を開始してもよい。このように、ユーザがファイルの移動先またはコピー先の指定操作を行うよりも前に当該ファイルを所定の場所に書き込む事前書き込み処理を行うことで、ユーザの待ち時間を短くすることができる。
【０００９】
そして、制御部は、実際にファイルの移動先またはコピー先の指定操作（「貼り付け」コマンドの実行、ＣＴＲＬ＋Ｖのキー入力等）がなされた場合に、ファイルの移動先またはコピー先と同じボリュームの所定の場所から、ファイルの移動先またはコピー先に、事前書き込み処理で書き込んだ当該ファイルを移動する。同じボリューム内でのファイル移動は、ファイルシステムの管理領域の書き換えだけで実現することができ、改めてファイル書き込み処理を行う必要はなく、時間がかかることがない。
【００１０】
なお、所定の場所は、ボリュームが１つである場合には、同じボリューム内の別のディレクトリ（フォルダ）となる。ボリュームが複数存在する場合には、移動元またはコピー元のファイルが存在するボリュームとは異なるボリュームに設けてもよいし、移動元またはコピー元のファイルが存在するボリュームを含むいずれかのボリュームもしくは全てのボリュームに設けてもよい。
【００１１】
なお、仮に、ファイルの移動先またはコピー先と同じボリュームに所定の場所が設定されておらず、ファイルの移動先またはコピー先と異なるボリュームに所定の場所が設けられていた場合には、既に事前書き込み処理で書き込まれた当該ファイルを、ファイルの移動先またはコピー先に指定された場所に移動を行ってもよい。ファイルの移動元またはコピー元のボリュームに対する読み出し性能が低く、所定の場所が設けられているボリュームに対する読み出し性能が高い場合には、より高速な読み出し性能を示すボリュームも読み出し元にすることができるため、ファイルの移動先またはコピー先と異なるボリュームに所定の場所が設けられていた場合であっても、ファイルの移動やコピーにかかる時間を短くすることができる。
【発明の効果】
【００１２】
この発明によれば、ファイルの移動やコピーにかかる時間を短くすることができる。
【図面の簡単な説明】
【００１３】
【図１】情報処理装置のハードウェア構成を示すブロック図である。
【図２】情報処理装置のソフトウェア構成を示す機能ブロック図である。
【図３】常駐モジュールの動作を示すフローチャートである。
【図４】常駐モジュールの動作を示すフローチャートである（図３の続き）。
【図５】ファイルコピーモジュールの動作を示すフローチャートである。
【発明を実施するための形態】
【００１４】
図１は、本実施形態のハードウェア構成を示すブロック図である。本実施形態は、ＰＣ１および外付けドライブのボリューム２からなる。
【００１５】
ＰＣ１は、ＵＳＢインタフェース（Ｉ／Ｆ）５１、制御部５２、内蔵ドライブのボリューム５３、およびユーザＩ／Ｆ５４を備えている。ボリューム２の外付けドライブは、ＵＳＢＩ／Ｆ５１を介してＰＣ１と接続されている。ボリューム２の外付けドライブは、ＨＤＤ、ＳＳＤ、ＤＶＤ−ＲＡＭ等の読み書き可能な記憶デバイスである。ボリューム５３の内蔵ドライブは、ＨＤＤやＳＳＤ等の記憶デバイスである。
【００１６】
制御部５２は、ＣＰＵやメモリ（ＲＡＭ）を内蔵し、内蔵ドライブのボリューム５３に記憶されているプログラムを読み出し、内蔵メモリに展開することで種々の動作を行う。本実施形態では、ＰＣ１のＯＳとしてＷｉｎｄｏｗｓ（登録商標）を使用する場合について説明する。
【００１７】
制御部５２は、マウスやキーボード等からなるユーザＩ／Ｆ５４を介してユーザ操作を受け付けることより、本発明の受付部を実現する。制御部５２は、受け付けたユーザの操作に応じて、内蔵ドライブのボリューム５３からファイルを読み出して外付けドライブのボリューム２に書き込む、または外付けドライブのボリューム２からファイルを読み出して内蔵ドライブのボリューム５３に書き込む処理を行う。
【００１８】
通常、これらの書き込み処理は、ユーザがファイルの「切り取り」コマンドを実行、ＣＴＲＬ＋Ｘのキー入力、「コピー」コマンドの実行、またはＣＴＲＬ＋Ｃのキー入力がなされた後、「貼り付け」コマンドの実行、またはＣＴＲＬ＋Ｖのキー入力が行われた時点で開始される。あるいは、ユーザがファイルのドラッグ操作を行い、ドロップ操作が完了した時点で書き込み処理が開始される。このため、書き込み処理を開始してから完了するまでは、外付けドライブのボリューム２または内蔵ドライブのボリューム５３の性能に応じた処理時間がかかることになる。
【００１９】
本実施形態は、このようなファイルの移動またはコピーにおいて、ユーザの待ち時間を短くすることができる。
【００２０】
図２は、本実施形態に係るソフトウェアの構成を示す機能ブロック図である。図２に示すように、本実施形態は、ＯＳ７０、Ｗｉｎｄｏｗｓ（登録商標）に標準搭載されているアプリケーションプログラムのエクスプローラ７、エクスプローラ７のプラグイン（シェルエクステンション）のファイルコピーモジュール７１、常駐モジュール７２、およびＷｉｎｄｏｗｓ（登録商標）に標準搭載され、ＰＣ１内で一時的にデータを保存できる共有メモリ領域であるクリップボード７３を備えている。
【００２１】
本実施形態では、ファイルコピーモジュール７１をエクスプローラ７のプラグイン（シェルエクステンション）として実施しているが、専用のアプリケーションプログラム等、他の形態で実施してもよい。
【００２２】
ファイルコピーモジュール７１および常駐モジュール７２は、ＯＳ７０からＡＰＩ等のインタフェースを介してファイルのドラッグ操作およびドロップ操作を検出する。
【００２３】
また、常駐モジュール７２は、クリップボード７３を定期的（例えば１秒毎）に監視する。常駐モジュール７２は、ファイルの「切り取り」コマンドの実行、ＣＴＲＬ＋Ｘのキー入力、「コピー」コマンドの実行、またはＣＴＲＬ＋Ｃのキー入力がなされた場合に、該当ファイルの格納先（ファイルパス）をクリップボード７３にて取得することができる。常駐モジュール７２は、クリップボード７３のファイルパスが更新された場合に、上記ファイルの「切り取り」コマンドの実行、ＣＴＲＬ＋Ｘのキー入力、「コピー」コマンドの実行、またはＣＴＲＬ＋Ｃのキー入力がなされたと判断する。
【００２４】
以下、本実施形態では、ファイルの移動元またはコピー元の指定操作を「コピー元指定処理」と称する。また、ファイルの移動先またはコピー先の指定操作を「ファイルコピー開始処理」と称する。なお、コピー元指定処理は、「切り取り」コマンドの実行、ＣＴＲＬ＋Ｘのキー入力、「コピー」コマンドの実行、ＣＴＲＬ＋Ｃのキー入力、ドラッグ操作等である。ファイルコピー開始処理は、「貼り付け」コマンドの実行、ＣＴＲＬ＋Ｖのキー入力、ドロップ操作等である。
【００２５】
常駐モジュール７２は、コピー元指定処理を検出すると、当該ファイルを読み出し、所定の場所に書き込む事前書き込み処理を行う。図１では、例えば内蔵ドライブのボリューム５３に格納されているファイルについて、コピー元指定処理を検出すると、当該ファイルを外付けドライブのボリューム２の特定のフォルダ（例えば常駐モジュール７２が予め作成したテンポラリーフォルダ）にコピーする。もしくは、常駐モジュール７２は、外付けドライブのボリューム２に格納されているファイルについて、コピー元指定処理を検出した場合、当該ファイルを内蔵ドライブのボリューム５３の特定のフォルダ（例えば常駐モジュール７２が予め作成したテンポラリーフォルダ）にコピーする。
【００２６】
つまり、通常は、ファイルコピー開始処理が行われた時点で開始されるコピー処理を、本実施形態の常駐モジュール７２は、コピー元指定処理を検出した時点で行う。これにより、ファイルコピー開始処理がなされる前に、既に外付けドライブのボリューム２にファイルがコピーされた状態となる。あるいは、既に内蔵ドライブのボリューム５３にファイルがコピーされた状態となる。
【００２７】
そして、ファイルコピー開始処理が行われると、常駐モジュール７２は、テンポラリーフォルダにコピー済のファイルを、ファイルコピー開始処理の移動先またはコピー先に移動させる。このような同じボリューム内でのファイル移動は、ファイルシステムの管理領域の書き換えだけで実現することができ、改めて、外付けドライブのボリューム２、あるいは内蔵ドライブのボリューム５３にファイル書き込み処理を行う必要はない。したがって、ファイルコピー開始処理を行うと、即座にファイルコピーの処理が完了することになる。
【００２８】
次に、図３乃至図５のフローチャートを参照して、上記動作について詳細に説明する。図３および図４は、常駐モジュール７２の動作を示すフローチャートであり、図５は、ファイルコピーモジュール７１の動作を示すフローチャートである。
【００２９】
常駐モジュール７２は、コピー元指定処理を検出するまで待機する（Ｓ１１）。コピー元指定処理の検出は、上述のように、クリップボード７３の監視やＯＳ７０からのドラッグ操作の通知によって行われる。
【００３０】
常駐モジュール７２は、コピー元指定処理を検出すると、クリップボード７３に保存されているファイルパスの取得もしくは、ＯＳ７０から通知されるＡＰＩによって得られるファイルパスにより、移動元またはコピー元のファイルパスを取得し（Ｓ１２）、仮コピー先を決定する（Ｓ１３）。本実施形態では、内蔵ドライブのボリューム５３に移動元またはコピー元ファイルが存在し、外付けドライブのボリューム２のテンポラリーフォルダを仮コピー先とする。仮コピー先としたボリュームにテンポラリーフォルダが存在しない場合には、この仮コピー先を決定する処理（Ｓ１３）で作成する。
【００３１】
次に、常駐モジュール７２は、Ｓ１２で取得した移動元またはコピー元のファイルパスに基づいて、当該ファイルをテンポラリーフォルダにコピーする動作を開始する（Ｓ１４）。なお、コピー元指定処理では、１つのファイルだけでなく、複数のファイルが同時に選択される場合がある。その場合、常駐モジュール７２は、取得した移動元またはコピー元ファイルパスに基づいて、当該ファイル全てをテンポラリーフォルダにコピーする動作を開始する。
【００３２】
そして、常駐モジュール７２は、コピー元指定処理で選択されたファイル全てのテンポラリーフォルダへのコピーが完了したかを確認する（Ｓ１５）。常駐モジュール７２は、当該ファイル全てのテンポラリーフォルダへのコピーが完了したと判断した場合、図４に示すようにコピー動作を終了し（Ｓ２１）、ファイルコピーモジュール７１からのファイルコピー開始通知が有ったか否かを確認する（Ｓ２２）。
【００３３】
このファイルコピー開始通知には、移動元またはコピー元および移動先またはコピー先のファイルパスの情報が含まれている。常駐モジュール７２は、移動先またはコピー先のファイルパスのボリュームと仮コピー先のボリュームが同じボリュームを示しているか否かを確認する（Ｓ２３）。常駐モジュール７２は、移動先またはコピー先のファイルパスのボリュームと仮コピー先のボリュームが同じボリュームを示していると判断した場合、仮コピー先のコピー済ファイルを、ファイルコピー開始通知に含まれている移動先またはコピー先に移動させる処理を行い（Ｓ２４）、先頭の処理（Ｓ１１）に戻る。
【００３４】
また、常駐モジュール７２は、図３のＳ１５の処理において、コピー元指定処理で選択されたファイル全てのテンポラリーフォルダへのコピーが完了していないと判断し、かつファイルコピー開始通知が有った場合（Ｓ１６：Ｙｅｓ）、テンポラリーフォルダへのコピー処理中のファイルのコピーが完了した後に、コピー動作を中断する（Ｓ１７）。そして、常駐モジュール７２は、ファイルコピー開始通知に含まれている移動先またはコピー先のファイルパスのボリュームと仮コピー先のボリュームが同じボリュームを示しているか否かを確認し（Ｓ２３）、移動先またはコピー先のファイルパスのボリュームと仮コピー先のボリュームが同じボリュームを示していると判断した場合、仮コピー先にコピー済のファイルについて、移動先またはコピー先に移動させる処理を行い（Ｓ２４）、先頭の処理（Ｓ１１）に戻る。なお、コピー元指定処理で選択され、常駐モジュール７２で移動またはコピーされていないファイルについては、ファイルコピーモジュール７１で処理する。
【００３５】
また、常駐モジュール７２は、図３のＳ１５の処理において、コピー元指定処理で選択されたファイル全てのテンポラリーフォルダへのコピーが完了していない状況において、ファイルコピー開始通知がなかった場合（Ｓ１６：Ｎｏ）、ファイルの移動またはコピーがキャンセルされたか否かを確認する（Ｓ１８）。常駐モジュール７２は、例えばクリップボードのファイルパスが更新された場合や、ドラッグ＆ドロップの操作が中止された場合（同じフォルダ内でドロップされた場合）にファイルの移動またはコピーがキャンセルされたと判断する。
常駐モジュール７２は、ファイルの移動またはコピーがキャンセルされていないと判断した場合、Ｓ１５の判断から処理を繰り返す。ファイルの移動またはコピーがキャンセルされたと判断した場合、図４に示すように、ファイルコピー動作を中断し（Ｓ２６）、仮コピー先のコピー済ファイルを削除する（Ｓ２７）。
【００３６】
また、常駐モジュール７２は、Ｓ２２の判断において、ファイルコピー開始通知がなかったと判断した場合についても、ファイルの移動またはコピーがキャンセルされたか否かを確認する（Ｓ２５）。常駐モジュール７２は、ファイルの移動またはコピーがキャンセルされていないと判断した場合、Ｓ２２の判断から処理を繰り返し、ファイルの移動またはコピーがキャンセルされたと判断した場合、仮コピー先のコピー済ファイルを削除する（Ｓ２７）。
【００３７】
また、常駐モジュール７２は、Ｓ２３の判断において、ファイルコピー開始通知に含まれる移動先またはコピー先のファイルパスのボリュームと仮コピー先のボリュームが同じボリュームを示していなかった場合も、仮コピー先のコピー済ファイルを削除する（Ｓ２７）。
【００３８】
なお、Ｓ１８またはＳ２５において、クリップボード７３のファイルパスが更新されてファイルの移動またはコピーがキャンセルされた場合は、常駐モジュール７２は、Ｓ１１でコピー元指定処理が有ったと判断することになり、新たに取得された移動元またはコピー元のファイルパスの当該ファイルをテンポラリーフォルダにコピーする処理を開始する。
【００３９】
次に、図５において、ファイルコピーモジュール７１の動作について説明する。ファイルコピーモジュール７１は、ファイルコピー開始処理が行われると図５に示す動作を開始する。
【００４０】
ファイルコピーモジュール７１は、ファイルコピー開始処理が行われると、移動元またはコピー元および移動先またはコピー先のファイルパスを取得し（Ｓ３１）、常駐モジュール７２にファイルコピー開始通知を行う（Ｓ３２）。
【００４１】
そして、ファイルコピーモジュール７１は、常駐モジュール７２に処理中のファイルがあるか否かを問い合わせる（Ｓ３３）。常駐モジュール７２は、仮コピー先にコピー処理中のファイルがある場合、処理中ファイル「あり」を返信し、コピー中のファイルがなければ処理中ファイル「なし」を返信する。
【００４２】
ファイルコピーモジュール７１は、常駐モジュール７２から処理中ファイル「あり」を受信した場合、ユーザに「事前書き込み終了処理中」等の待機表示を行い（Ｓ３４）、処理が終了するまで待機する（Ｓ３３の判断に戻る）。
【００４３】
一方、ファイルコピーモジュール７１は、常駐モジュール７２から処理中ファイル「なし」を受信した場合、常駐モジュール７２に、ファイルコピー開始通知に含まれる移動先またはコピー先に、仮コピー先からファイルを移動させたか否かを問い合わせる（Ｓ３５）。コピー元指定処理で選択されたファイル全てを、仮コピー先から、移動先またはコピー先に移動した旨の返信が常駐モジュール７２からあった場合、ファイルコピーモジュール７１は、動作を終了する。仮コピー先から、移動先またはコピー先に移動したファイルが無い旨の返信が常駐モジュール７２からあった場合、ファイルコピーモジュール７１は、通常コピー処理を行う（Ｓ３６）。つまり、移動元またはコピー元のファイルパスからファイルを読み出し、移動先またはコピー先のファイルパスにファイルを書き込む処理を行う。
【００４４】
また、コピー元指定処理で選択されたファイルの一部だけ、仮コピー先から、移動先またはコピー先に移動が完了し、コピー元指定処理で選択されたファイル全ての移動またはコピーが完了していない旨の返信が常駐モジュール７２からあった場合、ファイルコピーモジュール７１は、コピー元指定処理で選択されたファイルのうち、常駐モジュール７２で仮コピー先から、移動先またはコピー先に移動されていないファイルについて、通常コピー処理を行う（Ｓ３７）。
【００４５】
以上のようにして、本実施形態に示した情報処理装置では、ユーザがファイルコピー開始処理を行う前に、移動先またはコピー先のボリュームにファイルの書き込み処理が開始されているため、ファイルの移動やコピーにかかる時間を短くすることができる。コピー元指定処理で選択されたファイル全てが、テンポラリーフォルダに書き込まれている場合には、ユーザがファイルコピー開始処理を行った時点で、即座に移動またはコピー処理が完了し、コピー元指定処理で選択された一部のファイルがテンポラリーフォルダに書き込まれている場合にも、書き込み済みのファイルについては即座に移動またはコピー処理が完了する。
【００４６】
なお、本実施形態では，内蔵ドライブのボリューム５３に移動元またはコピー元のファイルが存在し、外付けドライブのボリューム２のテンポラリーフォルダを仮コピー先としたが、外付けドライブのボリュームに移動元またはコピー元ファイルが存在する場合には、内蔵ドライブのボリュームのテンポラリーフォルダを仮コピー先とすればよい。
【００４７】
また、本実施形態に限らず、外付けドライブが存在せず、内蔵ドライブのみでボリュームが１つだけの場合もある。ボリュームが１つだけ場合は、内蔵ドライブのボリュームにテンポラリーフォルダを作成して、コピー元指定処理で選択されたファイルをテンポラリーフォルダにコピーする。なお、テンポラリーフォルダにコピーを行うのは、コピー元指定処理が、「コピー」コマンドの実行、ＣＴＲＬ＋Ｃのキー入力、ＣＴＲＬキーを押しながらのドラッグ操作等、コピー元指定操作によって行われた場合に限定してもよい。
【００４８】
また、外付けドライブが存在しない場合でも、内蔵ドライブのボリュームが複数存在する場合もある。また、内蔵ドライブのボリュームが１つであり、外付けドライブのボリュームが複数存在する場合もある。あるいは、内蔵ドライブのボリュームが複数存在し、かつ外付けドライブのボリュームが複数存在する場合、等がある。
これらの場合は、以下のようにして仮コピー先のボリュームを決定してもよい。
（１）ファイルの移動元またはコピー元のファイルパスが属するボリューム以外の全てのボリュームのテンポラリーフォルダを仮コピー先とする。
（２）ファイルの移動元またはコピー元のファイルパスが属するボリュームを含む全てのボリュームのテンポラリーフォルダを仮コピー先とする。
このうち、上記（２）のファイルの移動元またはコピー元のファイルパスの属するボリュームのテンポラリーフォルダへのコピーは、コピー元指定操作によってコピー元指定処理が行われた場合に限定して行い、移動元指定処理が行われた場合は行わないようにしてもよい。
【００４９】
（３）特定のメーカ製のドライブのボリュームだけを仮コピー先とする。
（４）Ｉ／Ｆの種類に応じて優先順位を規定する。
例えば、ＵＳＢを介して接続されたドライブのボリュームと、ｅＳＡＴＡを介して接続されたドライブのボリュームが存在する場合、どちらかのドライブのボリュームを優先して仮コピー先とする。また、ＵＳＢ２．０とＵＳＢ３．０のように、同じＵＳＢ規格であっても速度が異なるＩ／Ｆを介して接続された複数のドライブのボリュームが存在する場合、どちらかのドライブのボリュームを優先して仮コピー先とする。
また、例えば、ファイルの移動元またはコピー元のファイルパスがホットプラグに対応していないドライブのボリュームを示している場合、ホットプラグに対応しているドライブのボリュームのテンポラリーフォルダを仮コピー先とする。また、ファイルの移動元またはコピー元のファイルパスがホットプラグに対応しているドライブのボリュームを示している場合、ホットプラグに対応していないボリュームのテンポラリーフォルダを仮コピー先とする。
【００５０】
（５）デバイスの種別に応じて優先順位を規定する。
例えば、ＨＤＤ、およびフラッシュメモリからなる外付けドライブのボリュームが接続されている場合どちらかのドライブのボリュームを優先して仮コピー先とする。
（６）ユーザが予め専用の設定ユーティリティを用いて優先順位の設定をできるようにする。
なお、上記（１）乃至（６）の手法は、いずれか１つだけ用いてもよいし、組み合わせ可能な場合には複数の手法を組み合わせて用いてもよい。
【００５１】
また、ユーザが予め専用の設定ユーティリティを用いて手動で仮コピー先となるボリュームを指定できるようにしてもよいし、仮コピー先のフォルダを指定できるようにしてもよい。
【００５２】
本実施形態では、コピー元指定処理を、「切り取り」コマンドの実行、ＣＴＲＬ＋Ｘのキー入力、「コピー」コマンドの実行、ＣＴＲＬ＋Ｃのキー入力、ドラッグ操作等としているが、ファイル操作アプリケーションの使用等、ファイルの選択が行われた時点で、ファイルの移動またはコピーが行われることが予測できる場合は、ファイルの選択処理をコピー元指定処理としてテンポラリーフォルダにコピーを開始してもよい。また、操作対象ファイルが存在するディレクトリ（フォルダ）を選択した時点で、ディレクトリ（フォルダ）の選択処理をコピー元指定処理として、当該ディレクトリ（カレントディレクトリ）のファイルをテンポラリーフォルダにコピーを開始してもよい。
【００５３】
本実施形態では、移動先またはコピー先のボリュームはファイルコピー開始処理の時点で確定し、コピー元指定処理検出の時点では確定していない。しかし、コピー元指定処理検出の時点で移動先またはコピー先ボリュームを予測することができれば、より効率的にコピーを行うことができる。そこで、例えばＷｉｎｄｏｗｓ（登録商標）では、ファイルを選択するときにマウスの右クリックを行うと「メニュー」が表示され、「切り取り」や「コピー」の項目が表示されるが、この「メニュー」の中にボリュームを選択する項目を追加しておく態様も可能である。例えば「高速コピー」という名称の項目を追加し、当該項目を選択するとボリューム一覧が表示され、ボリュームを選択することができるようにしておく。そして、ユーザがボリュームを選択すると、「コピー」の項目が選択された場合と同じ扱いとして、コピー元指定処理の検出を行い、指定されたボリュームのテンポラリーフォルダを仮コピー先とする。なお、この場合、ボリュームを選択した時点で即座にダイアログボックスを表示し、当該ダイアログボックス内に選択したボリュームのフォルダ一覧を表示して、ユーザが実際にコピーするフォルダを選択できるようにしてもよい。
【００５４】
本実施形態では、常駐モジュール７２が、ファイルコピー開始通知を受けた時のコピー処理を完了してから、事前書き込み処理の中断を行うとしているが、ファイルコピー開始通知に含まれる、ファイル移動先またはコピー先のボリュームと異なるボリュームのテンポラリーフォルダへのコピーは、即時、中止してもよい。
【００５５】
本実施形態では、コピー元指定処理のファイルパスのファイル全てを、仮コピー先にコピーするまで事前書き込み処理を継続する（ファイルコピー開始通知が有った場合やキャンセル処理があった場合を除く）例を示したが、当該ファイル全てを仮コピー先にコピーしなくてもよい。仮コピー先にコピーするファイルのサイズ（データ容量）が大きくなり、処理時間が長くなるとＰＣや記憶装置の負荷が高くなる。そこで、例えば、仮コピー先にコピーするファイルのサイズ（データ容量）に上限を設け、コピーしたデータの容量が当該上限に達した時点でさらなるファイルのコピーは実行しないようにしてもよい。あるいは、処理時間に上限を設け、仮コピー先にコピーを開始してからの経過時間が、当該処理時間の上限に達した時点でさらなるファイルのコピーは実行しないようにしてもよい。なお、ユーザがユーティリティを用いて、容量の上限や処理時間の上限によるファイルコピーの制限を行うか否かを指定できるようにしてもよい。
【００５６】
本実施形態では、ファイルコピーモジュール７１で行う通常コピー（Ｓ３６）は、移動元またはコピー元からファイルを読み出し、移動先またはコピー先にファイルを書き込む、通常のコピー処理としているが、移動先またはコピー先のボリュームと仮コピー先のボリュームが異なる場合に、Ｓ２７にて仮コピー先のコピー済みファイルの削除は行わないようにして、仮コピー先から移動先またはコピー先にファイルをコピーし、当該ファイルコピーの終了後、仮コピー先のファイルを削除するようにしてもよい。ファイルの移動元またはコピー元のボリュームに対する読み出し性能が低く、仮コピー先が設けられているボリュームに対する読み出し性能が高い場合には、より高速な読み出し性能を示すボリュームも読み出し元にすることができるため、ファイルの移動やコピーにかかる時間を短くすることができる。
【００５７】
なお、本実施形態では、ＯＳとしてＷｉｎｄｏｗｓ（登録商標）について説明したが、他のＯＳ（例えばＵＮＩＸ（登録商標）ベースのＯＳ等）であっても本発明の情報処理装置を実現することが可能である。
【符号の説明】
【００５８】
１…ＰＣ
２…外付けドライブのボリューム
５１…ＵＳＢＩ／Ｆ
５２…制御部
５３…内蔵ドライブのボリューム
５４…ユーザＩ／Ｆ
７０…ＯＳ
７…エクスプローラ
７１…ファイルコピーモジュール
７２…常駐モジュール
７３…クリップボード
【図１】
2013114551.tif 000003
【図２】
2013114551.tif 000004
【図３】
2013114551.tif 000005
【図４】
2013114551.tif 000006
【図５】
2013114551.tif 000007
【手続補正書】
【提出日】平成24年1月18日(2012.1.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】
記憶装置からデータを読み出し、前記記憶装置へのデータの書き込みを制御する制御部と、
ユーザの操作を受け付ける受付部と、
を備えた情報処理装置であって、
前記制御部は、前記受付部でデータの移動先またはデータのコピー先を指定する操作を受け付けるタイミングよりも前に、当該データを読み出して前記記憶装置の所定の場所に書き込む事前書き込み処理を行うことを特徴とする情報処理装置。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項５
【補正方法】変更
【補正の内容】
【請求項５】
記憶装置からデータを読み出し、前記記憶装置へのデータの書き込みを制御する動作を、情報処理装置に実行させるプログラムであって、
データの移動先またはデータのコピー先を指定する操作を受け付けるタイミングよりも前に、当該データを読み出して前記記憶装置の所定の場所に書き込む事前書き込み処理を、前記情報処理装置に実行させることを特徴とするプログラム。