(57)【要約】仮想ストレージボリューム（１）を検出する方法であって、目標ストレージボリュームの読出しオペレーションに対する第１のアクセスパターン（１０）を判定するステップと、上記読出しオペレーションの間、上記コンピュータシステム（５）の少なくとも１つの他のストレージボリューム（２）の第２のアクセスパターン（１１）を監視するステップと、上記第１のアクセスパターン（１０）と上記第２のアクセスパターン（１１）との間の相関を判定するステップと、判定された上記相関が所定の閾値を上回る場合、上記目標ストレージボリューム（１）は仮想ストレージボリューム（１）であるということを導出するステップとを含む方法。対応の制御ロジック（４）、及び対応のシステムも提供される。【選択図】図１
2010506275.tif 000002
【特許請求の範囲】
【請求項１】
仮想ストレージボリューム（１）を検出する方法であって、
目標ストレージボリュームの読出しオペレーションに対する第１のアクセスパターン（１０）を判定するステップと、
前記読出しオペレーションの間、少なくとも１つの他のストレージボリューム（２）の第２のアクセスパターン（１１）を監視するステップと、
前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）との間の相関を判定するステップと、
判定された前記相関が所定の閾値を上回る場合、前記目標ストレージボリュームは仮想ストレージボリューム（１）であるということを導出するステップと
を含む方法。
【請求項２】
前記読出しオペレーションが行われる前に、少なくとも前記読出しオペレーションの一部の間に読み出される署名を定めるステップと、
前記読出しオペレーションの前記一部をシミュレーションすることによって前記第１のアクセスパターン（１０）を判定するステップと、
前記目標ストレージボリュームから前記署名を読み出す間に、前記第２のアクセスパターン（１１）を監視するステップと
をさらに含む、請求項１に記載の方法。
【請求項３】
前記読出しオペレーションの間、前記目標ストレージボリュームの前記第１のアクセスパターン（１０）を監視することによって、前記第１のアクセスパターン（１０）を判定するステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記読出しオペレーションが行われる前に、少なくとも前記読出しオペレーションの一部の間に読み出される署名を定めるステップと、
前記読出しオペレーションの前記一部の間、前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）とを監視するステップと
をさらに含む、請求項３に記載の方法。
【請求項５】
前記第１のアクセスパターン（１０）及び／又は前記第２のアクセスパターン（１１）を監視する間に、前記コンピュータシステム（５）のオペレーティングシステムの統計を使用するステップをさらに含む、請求項１〜４のいずれかに記載の方法。
【請求項６】
前記統計は前記オペレーションシステムのパフォーマンスアプリケーションプログラミングインターフェース（ＡＰＩ）を介して得られる、請求項５に記載の方法。
【請求項７】
前記第１のアクセスパターン（１０）及び／又は前記第２のアクセスパターン（１１）を監視する間に、前記目標ストレージボリュームのデバイスドライバの及び／又は前記他のストレージボリュームのデバイスドライバの統計を使用するステップをさらに含む、請求項１〜４に記載の方法。
【請求項８】
所定の時間、前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）とを監視するステップをさらに含む、請求項３〜７のいずれか１項に記載の方法。
【請求項９】
前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）とを継続的に監視するステップをさらに含む請求項３〜７のいずれか１項に記載の方法。
【請求項１０】
前記コンピュータシステム（５）の全部の他のストレージボリューム（２）のさらなるアクセスパターン（１１）を監視するステップと、
前記目標ストレージボリュームと前記他のストレージボリューム（２）の各々との各対に対する相関を判定するステップと、
前記第１のアクセスパターン（１０）と前記全部の他のストレージボリューム（２）のうちの１つの前記さらなるアクセスパターン（１１）との間の判定された前記相関が所定の閾値を上回る場合、前記目標ストレージボリュームは仮想ストレージボリューム（１）であるということを導出するステップと
をさらに含む請求項１〜９のいずれか１項に記載の方法。
【請求項１１】
前記相関を判定する前に、前記第１のアクセスパターン（１０）及び／又は前記第２のアクセスパターン（１１）をフィルタリングするステップをさらに含む、請求項１〜１０のいずれか１項に記載の方法。
【請求項１２】
前記目標ストレージボリュームは、光ディスクを有する光ディスクドライブであり、前記少なくとも１つの他のストレージボリュームはハードディスクドライブ（２）である、請求項１〜１１のいずれか１項に記載の方法。
【請求項１３】
仮想ストレージボリューム（１）を検出する制御ロジック（４）であって、前記制御ロジック（４）はコンピュータシステム（５）上で動作するものであり、前記コンピュータシステム（５）は、
目標ストレージボリュームと、
少なくとも１つの他のストレージボリューム（２）と
を備え、
前記制御ロジック（４）は、
前記目標ストレージボリュームの読出しオペレーションに対する第１のアクセスパターン（１０）を判定し、
前記読出しオペレーションの間、前記コンピュータシステム（５）の前記少なくとも１つの他のストレージボリューム（２）の第２のアクセスパターン（１１）を監視し、
前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）との間の相関を判定し、
判定された前記相関が所定の閾値を上回る場合、前記目標ストレージボリュームは仮想ストレージボリューム（１）であるということを導出する、制御ロジック（４）。
【請求項１４】
前記制御ロジック（４）は、さらに、
前記読出しオペレーションが行われる前に定められ、少なくとも前記読出しオペレーションの一部の間に読み出される署名を前記目標ストレージボリュームから読み出す間、前記第２のアクセスパターン（１１）を監視し、
前記読出しオペレーションの前記一部をシミュレーションすることによって前記第１のアクセスパターン（１０）を判定する、請求項１３に記載の制御ロジック（４）。
【請求項１５】
前記制御ロジック（４）は、さらに、前記読出しオペレーションの間に前記目標ストレージボリュームの前記第１のアクセスパターン（１０）を監視することによって前記第１のアクセスパターン（１０）を判定する、請求項１３に記載の制御ロジック（４）。
【請求項１６】
前記制御ロジック（４）は、さらに、所定の署名が読み出される前記読出しオペレーションの少なくとも一部の間、前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）とを監視する、請求項１５に記載の制御ロジック（４）。
【請求項１７】
前記制御ロジック（４）は、さらに、前記第１のアクセスパターン（１０）及び／又は前記第２のアクセスパターン（１０）を監視する間、前記コンピュータシステム（５）のオペレーティングシステムの統計を使用する、請求項１３〜１６のいずれかに記載の制御ロジック（４）。
【請求項１８】
前記統計は、前記オペレーティングシステムのパフォーマンスアプリケーションプログラミングインターフェース（ＡＰＩ）を介して得られる、請求項１７に記載の制御ロジック（４）。
【請求項１９】
前記制御ロジック（４）は、さらに、前記第１のアクセスパターン（１０）及び／又は前記第２のアクセスパターン（１１）を監視する間、前記目標ストレージボリュームのデバイスドライブ及び／又は前記他のストレージボリュームのデバイスドライブの統計を使用する、請求項１３〜１６のいずれかに記載の制御ロジック（４）。
【請求項２０】
前記制御ロジック（４）は、さらに、所定の時間、前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）とを監視する、請求項１５〜１９のいずれか１項に記載の制御ロジック（４）。
【請求項２１】
前記制御ロジック（４）は、さらに、前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）とを継続的に監視する、請求項１５〜１９のいずれか１項に記載の制御ロジック（４）。
【請求項２２】
前記コンピュータシステム（５）の全部の他のストレージボリューム（２）のさらなるアクセスパターン（１１）を監視し、
前記目標ストレージボリュームと前記他のストレージボリューム（２）の各々との各対に対する相関を判定し、
前記第１のアクセスパターン（１０）と前記全部の他のストレージボリューム（２）のうちの１つの前記さらなるアクセスパターン（１１）との間の判定された前記相関が所定の閾値を上回る場合、前記目標ストレージボリュームは仮想ストレージボリューム（１）であるということを導出する、請求項１３〜２１のいずれか１項に記載の制御ロジック（４）。
【請求項２３】
前記制御ロジック（４）は、さらに、前記相関を判定する前に、前記第１のアクセスパターン（１０）及び／又は前記第２のアクセスパターン（１１）をフィルタリングする、請求項１３〜２２のいずれか１項に記載の制御ロジック（４）。
【請求項２４】
前記目標ストレージボリュームは、光ディスクを有する光ディスクドライブであり、前記少なくとも１つの他のストレージボリュームはハードディスクドライブ（２）である、請求項１１〜１９のいずれか１項に記載の制御ロジック（４）。
【請求項２５】
仮想ストレージボリューム（１）を検出するシステムであって、
目標ストレージ媒体にアクセスするための目標ストレージボリュームを有し、少なくとも１つの他のストレージボリューム（２）を有するコンピュータシステム（５）と、
前記コンピュータシステム（５）上で動作する制御ロジック（４）であって、
前記目標ストレージボリュームの読出しオペレーションに対する第１のアクセスパターン（１０）を判定し、
前記読出しオペレーションの間、前記コンピュータシステム（５）の前記少なくとも１つの他のストレージボリューム（２）の第２のアクセスパターン（１１）を監視し、
前記第１のアクセスパターン（１０）と前記第２のアクセスパターン（１１）との間の相関を判定し、
判定された前記相関が所定の閾値を上回る場合、前記目標ストレージボリュームは仮想ストレージボリューム（１）であるということを導出する制御ロジック（４）と
を備えるシステム。
【請求項２６】
コンピュータシステムへロードされると請求項１〜１２のいずれかに記載の方法を実行する有形データキャリアに格納されたソフトウェアコードコンポーネントを有する前記有形データキャリア。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想ストレージボリューム及びデータキャリアを検出する方法、制御ロジック及びシステムに関する。
【背景技術】
【０００２】
光ディスク、例えばＣＤＲＯＭ、ＤＶＤ又はブルーレイディスクに対するあるコピー保護スキームは、光記録可能媒体上に複製不能な特別な特徴、いわゆる「署名（ｓｉｇｎａｔｕｒｅ）」が光ディスク上に存在するかどうかをチェックする。このような署名、及び署名を検証する対応の方法が、例えば国際公開第０３／０５４８７８号（Ａ１）パンフレット又は欧州特許出願公開第１６７２６３１（Ａ１）号明細書に開示される。コンピュータプログラムは、署名が存在する場合にのみ実行が許可される。コピー保護ソフトウェアは、目標ストレージ媒体上にこのような署名を探しており、目標ストレージ媒体とは、例えばオリジナル光ディスクであり、目標ストレージドライブ、例えば光ディスクドライブに設置が期待されるものである。コンピュータシステムのオペレーティングシステムは、ストレージボリュームとしてストレージ媒体とともにストレージドライブを提供する。このようなストレージボリュームに対する他の例は、ＵＳＢスティック（ＵＳＢインターフェース付半導体メモリ）、フロッピーディスク付フロッピーディスクドライブ、カードリーダ中のメモリカード又はハードディスク上のパーティションによって提供される場合がある。「目標ストレージ媒体（ｔａｒｇｅｔ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）」、「目標ストレージドライブ（ｔａｒｇｅｔ  ｓｔｏｒａｇｅ  ｄｒｉｖｅ）」及び「目標ストレージボリューム（ｔａｒｇｅｔ  ｓｔｏｒａｇｅ  ｖｏｌｕｍｅ）」という言葉は、この明細書を通して、コピー保護ソフトウェアによってあるデータが発見されることが期待される対応のストレージ媒体、ストレージドライブ及びストレージボリュームとして使用される。典型的に、コピー保護ソフトウェアは、署名が目標ストレージボリューム上に存在するかどうかをチェックしている。
【０００３】
エミュレーションソフトウェアが、コピー保護ソフトウェアと光ディスクドライブとの間の通信をインターセプトし、誤署名情報を挿入するデータ及び／又はアクセスタイミング情報を操作する。エミュレーションソフトウェアがこれを達成するのは、仮想ストレージボリュームとして仮想ドライブに搭載されるディスクイメージのような仮想ストレージ媒体をコピー保護ソフトウェアに提供することによって可能であり、一方で、ディスクイメージはハードディスクドライブ（ＨＤＤ：ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ）上に実際に格納される。
【０００４】
フロッピーディスク、光ディスク等のディスクイメージを有するこのような仮想ストレージボリュームは、ある状況において有用である。すなわち、
それらは、ユーザがディスクを絶えず変えることを避けることを可能にする。
それらは、ユーザがディスクの物理的重荷なく大きなディスクライブラリを搬送することを可能にする。
それらは、ネットワーク上でディスクをユーザにアクセス可能にできるものであり、このことは、ネットワークの全ユーザにディスクを分配することが不可能である場合に非常に実用的である。
【０００５】
しかしながら、コピー保護光ディスクのコンテンツがディスクイメージとしてハードディスク上に格納され、コピー保護ソフトウェア（制御ロジックとも呼ばれる）へ提供される場合、コピー保護スキームが、悪意ある仮想ドライブソフトウェアによって回避される場合があり、これにより、コンテンツへだけではなく、署名へのアクセスが提供される。コピー保護ソフトウェアは、署名が発見される目標ストレージボリュームが光ディスクドライブにおけるオリジナル光ディスクではなく、ハードディスクドライブ上のディスクイメージであるという事実を認知しない。オリジナルディスクは、他のユーザへ再分配される場合があり、ハードディスクドライブ上のコピーは、実際、無許可コピーである場合がある。
【０００６】
仮想ストレージボリュームを識別する周知の方法は、システムレベルソフトウェア（ディスクドライバ）か、又は無効になったかに依存する。このような以前の方法が、別々に又は組み合わせて含むのは、
非ＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ：小コンピュータシステムインターフェース）ドライブにおいてプレイする目標ストレージ媒体として目標ディスクを要求することと、
ディスクドライブアダプタの情報を問い合わせ及びブラックリスト化を行うことと、
仮想ドライブソフトウェアによってエミュレート／提供されないディスクドライブの非共通プロパティを問い合わせること、例えば開始命令と終了命令との間の間隔を測定すること、又はランダムアクセスタイムを測定することとである。
【０００７】
コンピュータを用いた無許可読出し及び／又はコピーに対して目標光キャリア上の保護領域内でデータコンテンツを保護するさらなる可能性が、国際公開第２００４／０８８６５８（Ａ１）パンフレットに開示される。開示された方法が含むのは、目標光記録キャリア又は非目標光記録キャリアがコンピュータのドライブへ挿入されるかどうかを判定するステップと、目標光記録キャリアがコンピュータのドライブへ挿入される場合には、データが１つも読み出されないか又は読出しデータが無用であるかのように保護データ領域への読出し要求を変更するステップ、及び／又は書込みデータが無用であるように記録可能キャリア又は他のストレージへの保護データ領域内のデータに関する書込み命令を変更するステップとである。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、仮想ストレージボリュームを検出する方法であって、回避が困難であり、対応のドライブにおけるオリジナルストレージ媒体の存在を偽造又は印象を与えるために仮想ストレージボリュームが使用されるかどうかの効果的な発見法を提供するものを提供することである。
【０００９】
本発明のさらなる目的は、保護ソフトウェアアプリケーション又はデータの無許可コピーに対する方策を提供するためにコンピュータシステム上で使用されると、このような仮想ストレージボリュームの簡単且つ効果的な検出を可能にする仮想ストレージボリュームを検出する制御ロジックを提供することである。
【００１０】
本発明のさらなる目的は、システム上に存在するこのような仮想ストレージボリュームの簡単且つ効果的な検出を可能にする仮想ストレージボリュームを検出するシステムを提供することである。
【課題を解決するための手段】
【００１１】
第１の観点において、当該目標は、仮想ストレージボリュームを検出する方法によって達成され、当該方法は、
目標ストレージボリュームの読出しオペレーションに対する第１のアクセスパターンを判定するステップと、
上記読出しオペレーションの間、少なくとも１つの他のストレージボリュームの第２のアクセスパターンを監視するステップと、
上記第１のアクセスパターンと上記第２のアクセスパターンとの間の相関を判定するステップと、
判定された上記相関が所定の閾値を上回る場合、上記目標ストレージボリュームは仮想ストレージボリュームであるということを導出するステップとを含む方法である。
【００１２】
本明細書を通して、「読出しオペレーション（ｒｅａｄ  ｏｐｅｒａｔｉｏｎ）」という言葉は、ストレージボリューム上の色々なストレージロケーションへの読出しアクセスのシーケンスを説明するために用いる。
【００１３】
言い換えると、当該方法は、オペレーティングシステムからデータ移送統計を問い合わせ、相関させることによって、データ移送が仮想ストレージボリュームから又はドライブとオリジナルストレージ媒体とで構成されるオリジナルストレージボリュームから得られるかどうかを区別可能である。そのため、目標ストレージボリューム（例えば光ディスク、フロッピーディスク、ＵＳＢスティック、メモリカードによって提供されるオリジナルストレージボリュームからデータを読み出すものであろう）のデータ移送をチェックし、例えばハードディスクドライブのような他のストレージボリュームのデータ移送の信号パターンを有するこのようなデータ移送間に信号パターンを比較することによって、類似が得られる。例えばハードディスクドライブのような他のストレージボリューム上に格納されるディスクイメージを有する仮想ドライブによって目標ストレージボリュームが表されない場合、アクセスは関係ないため、例えばハードディスクドライブのような他のストレージボリュームからの、及び目標ストレージボリュームからのデータ移送の信号パターンはきわめて異なるであろう。しかしながら、目標ストレージボリュームが、実際は、例えばハードディスクドライブのような別のストレージボリューム上に格納されるディスクイメージを有する仮想ディスクドライブである場合、当アクセスは実際にハードディスクドライブ上で行われるため、信号パターンは同様に見えるであろう。このような仮想ストレージボリュームが検出される場合、例えばアプリケーションの動作を拒否する、他のストレージボリュームからディスクイメージを削除する、又はユーザを命令してオリジナルストレージ媒体を対応のドライブに挿入させるような、適当な方策をとることができる。
【００１４】
第２の観点では、仮想ストレージボリュームを検出する制御ロジックであって、上記制御ロジックはコンピュータシステム上で動作するものであり、上記コンピュータシステムは、
目標ストレージ媒体にアクセスするための目標ストレージボリュームと、
少なくとも１つの他のストレージボリュームとを備え、
上記制御ロジックは、さらに、
上記目標ストレージボリュームの読出しオペレーションに対する第１のアクセスパターンを判定し、
上記読出しオペレーションの間、上記コンピュータシステムの上記少なくとも１つの他のストレージボリュームの第２のアクセスパターンを監視し、
上記第１のアクセスパターンと上記第２のアクセスパターンとの間の相関を判定し、
判定された上記相関が所定の閾値を上回る場合、上記目標ストレージボリュームは仮想ストレージボリュームであるということを導出する、制御ロジックが提供される。
【００１５】
第３の観点では、仮想ストレージボリュームを検出するシステムであって、
上記目標ストレージ媒体にアクセスするための目標ストレージボリュームを有し、少なくとも１つの他のストレージボリュームを有するコンピュータシステムと、
上記コンピュータシステム上で動作する制御ロジックであって、
上記目標ストレージボリュームの読出しオペレーションに対する第１のアクセスパターンを判定し、
上記読出しオペレーションの間、上記コンピュータシステムの上記少なくとも１つの他のストレージボリュームの第２のアクセスパターンを監視し、
上記第１のアクセスパターンと上記第２のアクセスパターンとの間の相関を判定し、
判定された上記相関が所定の閾値を上回る場合、上記目標ストレージボリュームは仮想ストレージボリュームであるということを導出する制御ロジックとを備えるシステムが提供される。
【００１６】
第４の観点では、有形データキャリアが提供され、当該有形データキャリアは、コンピュータシステムへロードされると請求項１〜１２のいずれかに記載の方法を実行する有形データキャリアに格納されたソフトウェアコードコンポーネントを有する。
【００１７】
「第１のアクセスパターン（ｆｉｒｓｔ  ａｃｃｅｓｓ  ｐａｔｔｅｒｎ）」及び「第２のアクセスパターン（ｓｅｃｏｎｄ  ａｃｃｅｓｓ  ｐａｔｔｅｒｎ）」という言葉は、両アクセスパターンを区別するために使用しており、これらのアクセスパターンの間にはいかなる時間関係も意味していない。
【００１８】
本発明の上述の又は他の課題、特徴及び効果は、添付図面と併せて以下の本発明の現時点で好ましい例示的実施形態から明らかとなろう。
【図面の簡単な説明】
【００１９】
【図１】仮想ストレージボリュームを検出するシステムの概略ブロック図を示す。
【図２】図２ａは目標ストレージ媒体の第１のアクセスパターンの例示的測定データを示し、図２ｂはコンピュータシステムの別のストレージ媒体の第２のアクセスパターンの例示的測定データを示す。
【図３】仮想ストレージボリュームを検出する方法ステップを示す。
【発明を実施するための形態】
【００２０】
図１において、仮想ストレージボリューム１を検出するシステムの概略ブロック図を示す。このような仮想ストレージボリューム１、例えば仮想ストレージ媒体を有する仮想ドライブは、エミュレーションソフトウェアによって作成される。仮想ドライブソフトウェア３は、ディスクイメージ６にアクセスしており、ハードディスクドライブ２、又は他のコンピュータシステム５のストレージボリューム、例えばネットワークドライブ上に実際にデータが格納される。仮想ドライブソフトウェア３又はエミュレーションソフトウェア（デーモン（Ｄａｅｍｏｎ）ツール又はアルコール（Ａｌｃｏｈｏｌ）１２０％のようなもの）は、制御ロジック４、例えばコピー保護ソフトウェアに仮想ドライブ１を提供する。そのため、仮想ドライブソフトウェア３は、制御ロジック４と仮想ストレージボリューム１との間の通信をインターセプトし、それにより、ディスクイメージ６としてハードディスクドライブ２上ではなく光ディスクドライブへ挿入された別々のオリジナル光ディスク上に実際にデータが存在するという印象（偽造）が与えられる。ハードディスクドライブ２上にコピーされ、同一のスキームを使用して仮想ストレージボリューム１としてアクセスされる場合のある他のストレージ媒体はＵＳＢメモリスティック、ドングル又は磁気テープ、メモリカード等である。
【００２１】
コピーが困難である又は不可能である特性（例えばいわゆる「署名」）が、目標ストレージ媒体、例えばオリジナル光ディスク上に実際に存在するかどうか、コピー保護ソフトウェアが典型的にチェックされる。したがって、目標ストレージ媒体上にこのような署名が実際に存在するかどうかチェックするため、コピー保護ソフトウェアは、目標ストレージボリュームに、例えばオリジナル光ディスクを有する光ディスクドライブにアクセスする。仮想ドライブソフトウェア３は、このような目標ストレージ媒体として仮想ストレージ媒体を提供し、そのため署名は、ハードディスクドライブ２上へコピーされてある（おそらくは許可なく）ため、ハードディスクドライブ２上に実際に存在するディスクイメージ６から読み出される。制御ロジック４は、署名が実際はハードディスクドライブ２上に格納されていてオリジナル光ディスクから読み出されるものではないということを検出不可能である。
【００２２】
仮想ストレージボリューム１又は物理ストレージボリュームからデータ移送が得られるかどうかを区別するため、アクセスパターンが目標ストレージボリュームから、及びコンピュータシステム５の他のストレージボリュームから導出される。このようなアクセスパターンは、例えばＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）のようなオペレーティングシステムのパフォーマンスアプリケーションプログラミングインターフェース（ＡＰＩ：ａｐｐｌｉｃａｔｉｏｎ  ｐｒｏｇｒａｍｍｉｎｇ  ｉｎｔｅｒｆａｃｅ）を使用することによって導出可能である。
【００２３】
このようなパフォーマンスアプリケーションプログラミングインターフェースに対する例は、
ａ）ＩＯＣＴＬ＿ＤＩＳＫ＿ＰＥＲＦＯＲＭＡＮＣＥのようなディスク管理制御コード
ｂ）ＷＭＩ（Ｗｉｎｄｏｗｓ  Ｍａｇａｇｅｍｅｎｔ  Ｉｎｓｔｒｕｍｅｎｔａｔｉｏｎ）、例えばＷｉｎ３２＿ＰｅｒｆＲａｗＤａｔａ＿ＰｅｒｆＤｉｓｋ＿ＬｏｇｉｃａｌＤｉｓｋを介す、
ｃ）Ｗｉｎｄｏｗｓパフォーマンス監視ＡＰＩ、である。
【００２４】
このようなパフォーマンスＡＰＩは、例えば、任意の量の時間でいくつのバイトが移送されるかと読出しオペレーションの数とを示す（図２ａ及び図２ｂに関連してさらに詳細に説明する）。
【００２５】
別の可能性は、このような必要な測定データ、例えば任意の量の時間でいくつのバイトが移送されるかや読出しオペレーションの数を収集可能なデバイスドライバの使用である。
【００２６】
読出しアクセス統計又は第１のアクセスパターンは、オリジナルディスクにアクセスすると思われる目標ストレージボリュームから得られ、第２の又はさらなるアクセスパターンはから１又は２以上のハードディスクドライブ２から得られる。読出しアクセス統計又はアクセスパターンは継続的に又は所定の時間収集される。１つの実施形態において、アクセスパターンは、ディスクの署名の検証を行う間、監視される。
【００２７】
さらなる実施形態において、第１のアクセスパターンは、目標ストレージボリュームを実際に読み出す前に定められる。例えばディスクの署名は事前に知られているため読出しオペレーションの結果が既知である場合には、得られる第１のアクセスパターンは事前にシミュレート可能であり、別のストレージボリュームの監視される第２のアクセスパターンと比較可能である。
【００２８】
目標ストレージボリュームのアクセス統計又はアクセスパターンだけではなく、コンピュータシステム５のハードディスクドライブ２の１つのアクセス統計でも、署名検証アクセスから得られる特性読出しアクセスパターンが統計的に検出可能である場合、制御ロジック４は、仮想ストレージボリューム１によるエミュレーションが存在し、例えば保護アプリケーションの動作、仮想ストレージボリューム１の削除、又はユーザにオリジナルストレージ媒体を対応のドライブに挿入させる命令を拒否するために、適当な測定を開始可能であると結論可能である。
【００２９】
図２ａにおいて第１のアクセスパターン１０に対する測定データを示し、図２ｂにおいて第２のアクセスパターン１１に対する測定データを示す。第１のアクセスパターン１０は目標ストレージボリュームへのアクセスを監視することによって得られる：増加するセクタ数６５５３６バイトと別に２０４８バイトが５０ｍｓごとに移送される。ハードディスクドライブのパフォーマンスデータ（移送バイト）は、１０ｍｓごとにサンプリングされる。細かい解像度（図示せず）において、他のストレージボリュームの１つからの監視移送は目標ストレージボリューム上の読出し要求の完成に大抵はわずかに先行するということが観測可能である。
【００３０】
第１のアクセスパターン１０と第２のアクセスパターン１１との間の相関を定めることにより、第１のアクセスパターン１０及び第２のアクセスパターン１１は同様の時間依存性を示すということが導出される。
【００３１】
例えば、いくつのアクセスが（ほぼ）並行に実行されたかをカウントし、仮想ストレージボリュームが存在するかどうかを導出するための並行アクセスの数の所定の閾値を使用することによって、このような相関は定められる場合がある。別の可能性は、既知のアルゴリズムにしたがって、第１のアクセスパターン１０と第２のアクセスパターン１１との間の相関値を計算することと、０と１との間の所定の閾値（例えば０．５）を使用して、相関値が閾値を上回る場合に、仮想ストレージボリュームが存在するかどうかを定めることとであろう。
【００３２】
この高い相関値又は同様のアクセスパターンを用いて、目標ストレージボリュームは実際はハードディスクドライブ２上のディスクイメージ６を有する仮想ストレージボリューム１であり、オリジナル光ディスクを有する別々の光ディスクドライブではない、ということが結論される。
【００３３】
この例において使用される仮想ドライブソフトウェア３の先読出しロジックは、６４セクタ、すなわち１３１０７２バイトであると思われ、仮想ストレージボリューム１上の小移送に比較してハードディスクドライブ２上の大きな移送を説明している。
【００３４】
図３において方法ステップを示す。第１のステップＳ１において、目標ストレージボリュームの第１のアクセスパターンが定められる。並行して、第２のステップＳ２の間、他のストレージボリューム２の少なくとも１つの第２のアクセスパターンが監視される。第３のステップＳ３において、第１のアクセスパターン１０の相関と第２のアクセスパターン１１が定められる。その後、第４のステップＳ４において、定められた相関が所定の閾値を上回るかどうかが評価され、その結果、相関が所定の閾値を上回る場合、第５のステップＳ５において仮想ストレージボリューム１が発見され、さもなければ、第６のステップにおいて仮想ストレージボリューム１が１つも存在しない結果となる。後者の場合、オリジナルディスク上にあり、したがって実行が許可されると想定されるため、アプリケーションプログラムを後で実行することが可能である。
【００３５】
オリジナルストレージ媒体上に署名が存在するかどうかをチェックすることのような追加コピー保護スキームを使用することが可能である。
【００３６】
当該方法を実施する非常に効果的なやり方は、ストレージボリュームのアクセス統計を扱うコンピュータシステム５のオペレーティングシステムによって提供される統計の使用であるが、それはこれらの統計はすでに存在し、例えば制御ロジック４によって簡単に使用可能であるためである。
【００３７】
オペレーティングシステムが、第１のアクセスパターン１０と第２のアクセスパターン１１とを定めるためにサンプリング可能な、いわゆるパフォーマンスアプリケーションプログラミングインターフェース（パフォーマンスＡＰＩ）を提供する。
【００３８】
署名のチェックは多くのコピー保護スキームの一部であり、このような署名が読み出される時間のようなプロパティ及び署名の長さは制御ロジック４によって事前に知られているため、この時間は、第１のアクセスパターン１０及び第２のアクセスパターン１１の監視にうまく適する。この場合、第２のアクセスパターン１１のみを監視し、署名の読出しオペレーションを事前にシミュレーションすることによって第１のアクセスパターン１０を定めることさえ可能である。
【００３９】
アクセスパターンの監視は、他の時間のより少ない制御ロジックエフォートを使用する所定の時間に行えるか、又は仮想ストレージボリューム１を検出する可能性をさらに拡張するために継続的に行える。
【００４０】
各々が仮想イメージを格納した場合のある複数のストレージボリューム２をコンピュータシステム５が有してもよいため、当該方法はこのような場合にも適用可能であり、それにより、どのストレージボリューム２上に仮想イメージが格納されたかを見出すために、全ストレージボリューム２のアクセスパターン１１が監視され、全ストレージボリューム２の第１のアクセスパターン１０とさらなるアクセスパターン１１との間の相関が定められる。
【００４１】
相関を定める前に第１のアクセスパターン１０と第２のアクセスパターン１１とをフィルタリングし、それにより、例えばコンピュータシステム５上で動作している他のプロセスから、ノイズ効果を低減させることによって、当該方法は改善可能である。このようなフィルタリングは、
非常に高い移送を無視することと、
時間領域に非常にノイズのある信号を無視することと、
移送の数は相関しない値を無視することと、
低パスフィルタ又は高パスフィルタを使用することとを含むが、限定されるものではない。
【００４２】
当該方法は、目標ストレージ媒体として光ディスクに、目標ストレージドライブとして光ディスクドライブに、他のストレージボリュームとしてハードディスクドライブ２に適用可能である。
【００４３】
方法、制御ロジック及びシステムを読出しオペレーションに関連して説明してきたが、どのボリューム上で書込み処理が実際に行われているかを識別するためには、対応の方法、制御ロジック及びシステムが書込みオペレーション間にも適用可能であるということは明らかである。
【符号の説明】
【００４４】
１    仮想ストレージ媒体
２    ハードディスクドライブ
３    仮想ドライブソフトウェア
４    制御ロジック
５    コンピュータシステム
６    ディスクイメージ
１０  目標ストレージボリュームの第１のアクセスパターン
１１  ハードディスクドライブの第２のアクセスパターン
Ｓ１  第１のステップ
Ｓ２  第２のステップ
Ｓ３  第３のステップ
Ｓ４  第４のステップ
Ｓ５  第５のステップ
Ｓ６  第６のステップ
【図１】
2010506275.tif 000003
【図２】
2010506275.tif 000004
【図３】
2010506275.tif 000005
【国際調査報告】
2010506275.tif 000006
2010506275.tif 000007
2010506275.tif 000008