(57)【要約】【解決手段】データ・バックアップ・システム用のエミュレーション・コンポーネントを提供する。エミュレーション・コンポーネントは、アプリケーションを自動実行させる自動起動デバイスであるかのように、たとえば、フラッシュメモリデバイスやディスクドライブのパーティションのようなストレージ・デバイスを示す。したがって、ストレージ・デバイスが自動起動デバイスであるかのように、エミュレーション・コンポーネントを介して、パーソナル・コンピュータなどの計算システムは、ストレージ・デバイスにアクセスする。エミュレーション・コンポーネントがこのような提示をするため、単に、ストレージ・デバイスと計算システムの間にエミュレーション・コンポーネントを接続するだけで、ストレージ・デバイスのバックアップアプリケーションを計算システム上で自動実行できる。エミュレーション・コンポーネントとストレージ・デバイスを備えるバックアップ機器も提供される。バックアップシステムは、データソースからのバックアップ・コンテンツを保持するために、ディスクドライブなどの着脱可能デバイスを接続するためのインタフェースを含んでもよい。【選択図】図１
2009512033.tif 000002
【特許請求の範囲】
【請求項１】
第１デバイス・タイプのストレージ・デバイスと、オペレーティング・システムを実行するデータ・ソースを中継し、
前記データ・ソースからの問い合わせに応答を返す論理を含み、
前記応答は、前記ストレージ・デバイスのタイプを、前記データ・ソースと接続されたときに前記オペレーティング・システムに指示して前記ストレージ・デバイスに保持されているアプリケーションを自動実行させるデバイス・タイプ・クラスに属する第２デバイス・タイプとして示すことを特徴とするエミュレーション・コンポーネント。
【請求項２】
前記問い合わせは、SCSI INQUIRYコマンドであることを特徴とする請求項１に記載のエミュレーション・コンポーネント。
【請求項３】
前記第１デバイス・タイプは、ＨＤＤであることを特徴とする請求項１に記載のエミュレーション・コンポーネント。
【請求項４】
前記第２デバイス・タイプは、ＣＤドライブであることを特徴とする請求項３に記載のエミュレーション・コンポーネント。
【請求項５】
前記第２デバイス・タイプは、ＤＶＤドライブであることを特徴とする請求項３に記載のエミュレーション・コンポーネント。
【請求項６】
前記論理は、ファームウェアを含むことを特徴とする請求項１に記載のエミュレーション・コンポーネント。
【請求項７】
データ・ソースと第１ストレージ・デバイスを中継し、
自動起動デバイスとして、前記第１ストレージ・デバイスの第１論理記録領域を示す論理と、
書き込み可能なデータ記録媒体を含む第２ストレージ・デバイスとして、前記第１ストレージ・デバイスの第２論理記録領域を示す論理と、
を備えることを特徴とするエミュレーションコンポーネント。
【請求項８】
前記データ・ソースから自動起動デバイス宛の自動起動デバイス・コマンドを受信し、前記自動起動デバイス・コマンドを第１ストレージ・デバイス・コマンドに変換し、前記第１ストレージ・デバイス・コマンドを前記第１論理記録領域に送信する論理と、
前記第１論理記録領域から第１ストレージ・デバイス・応答を受信し、前記第１ストレージ・デバイス・応答を自動起動デバイス・応答に変換し、前記自動起動デバイス・応答を前記データ・ソースに送信する論理と、
を更に備えることを特徴とする請求項７に記載のエミュレーション・コンポーネント。
【請求項９】
前記データ・ソースから前記第２ストレージ・デバイス宛の第２ストレージ・デバイス・コマンドを受信し、前記第２ストレージ・デバイス・コマンドを前記第２論理記録領域に送信する論理と、
前記第２論理記録領域から第２ストレージ・デバイス・応答を受信し、前記第２ストレージ・デバイス・応答を前記データ・ソースに送信する論理と、
を更に備えることを特徴とする請求項８に記載のエミュレーション・コンポーネント。
【請求項１０】
自動起動デバイスとして、前記第１ストレージ・デバイスの第１論理記録領域を示す論理は、前記第１論理記録領域をＣＤドライブとして示すことを特徴とする請求項７に記載のエミュレーション・コンポーネント。
【請求項１１】
前記自動起動デバイスとして、前記第１ストレージ・デバイスの前記第１論理記録領域を示す論理は、前記第１論理記録領域をＤＶＤドライブとして示すことを特徴とする請求項７に記載のエミュレーション・コンポーネント。
【請求項１２】
前記第２ストレージ・デバイスとして、前記第１ストレージ・デバイスの前記第２論理記録領域を示す論理は、前記第２論理記録領域をＨＤＤとして示すことを特徴とする請求項７に記載のエミュレーション・コンポーネント。
【請求項１３】
前記第２ストレージ・デバイスとして、前記第１ストレージ・デバイスの前記第２論理記録領域を示す論理は、前記第２論理記録領域をＳＤメモリカードとして示すことを特徴とする請求項７に記載のエミュレーション・コンポーネント。
【請求項１４】
前記第２ストレージ・デバイスとして、前記第１ストレージ・デバイスの前記第２論理記録領域を示す論理は、前記第２論理記録領域をＣＦメモリカードとして示すことを特徴とする請求項７に記載のエミュレーション・コンポーネント。
【請求項１５】
通信インタフェースと、
書き込み可能なデータ記録媒体を含む第１ストレージ・デバイスと、
前記第１ストレージ・デバイスおよび前記通信インタフェース間の通信を中継するエミュレーション・コンポーネントと、を備え、
前記エミュレーション・コンポーネントは、
自動起動デバイスとして、前記第１ストレージ・デバイスを示し、
データ・ソースから前記自動起動デバイス宛の自動起動デバイス・コマンドを受信し、前記自動起動デバイス・コマンドを第１ストレージ・デバイス・コマンドに変換し、前記第１ストレージ・デバイス・コマンドを前記第１ストレージ・デバイスに送信し、
前記第１ストレージ・デバイスから第１ストレージ・デバイス・応答を受信し、前記第１ストレージ・デバイス・応答を自動起動デバイス・応答に変換し、前記自動起動デバイス・応答を前記データ・ソースに送信することを特徴とするデータバックアップシステム。
【請求項１６】
着脱可能ストレージ・デバイス・インタフェース、を更に含むことを特徴とする請求項１５に記載のデータバックアップシステム。
【請求項１７】
前記エミュレーション・コンポーネントは、更に、
前記着脱可能・ストレージ・デバイス・インタフェースと結合する着脱可能・ストレージ・デバイス宛の着脱可能・ストレージ・デバイス・コマンドを、前記データ・ソースから受信し、前記着脱可能・ストレージ・デバイス・コマンドを前記着脱可能・ストレージ・デバイスに送信し、
前記着脱可能・ストレージ・デバイスから着脱可能・ストレージ・デバイス・応答を受信し、前記着脱可能・ストレージ・デバイス・応答を前記データ・ソースに送信することを特徴とする請求項１６に記載のデータバックアップシステム。
【請求項１８】
前記通信インタフェースは、ＵＳＢ通信インタフェースを含むことを特徴とする請求項１５に記載のデータバックアップシステム。
【請求項１９】
前記通信インタフェースは、FireWire通信インタフェースを含むことを特徴とする請求項１５に記載のデータバックアップシステム。
【請求項２０】
前記第１ストレージ・デバイスは、ＨＤＤを含むことを特徴とする請求項１５に記載のデータバックアップシステム。
【請求項２１】
前記第１ストレージ・デバイスは、ＳＤメモリカードを含むことを特徴とする請求項１５に記載のデータバックアップシステム。
【請求項２２】
前記第１ストレージ・デバイスは、ＣＦメモリカードを含むことを特徴とする請求項１５に記載のデータバックアップシステム。
【請求項２３】
前記エミュレーション・コンポーネントは、前記第１ストレージ・デバイスをＣＤドライブとして示すことを特徴とする請求項１５に記載のデータバックアップシステム。
【請求項２４】
前記エミュレーション・コンポーネントは、前記第１ストレージ・デバイスをＤＶＤドライブとして示すことを特徴とする請求項１５に記載のデータバックアップシステム。
【請求項２５】
第１デバイス・タイプのストレージ・デバイスと、オペレーティング・システムを実行するデータ・ソースを中継し、
前記データ・ソースからの問い合わせに応答を返す手段を含み、
前記応答は、前記ストレージ・デバイスのタイプを、前記データ・ソースと接続されたときに前記オペレーティング・システムに指示して前記ストレージ・デバイスのアプリケーションを自動実行させるデバイス・タイプ・クラスに属する第２デバイス・タイプとして示すことを特徴とするエミュレーション・コンポーネント。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、米国仮特許出願第６０／７２５，２２５号（発明の名称：「電子データ・バックアップ機器として、エミュレーション・コンポーネントを介して、外部のストレージ・デバイス上における着脱可能なメディア・デバイスをエミュレーションする方法、装置およびシステム」２００５年１０月１２日出願）の利益を主張する。この出願は、同様に、米国仮特許出願第６０／７２５，２２５号の利益を主張し、引用によりその全てを含む。
本発明は、一般的には、デジタル・データ管理技術に関連し、より詳しくは、媒体デバイスをエミュレートする、データ・バックアップ・アプリケーション用コンポーネントに関する。
【背景技術】
【０００２】
さまざまなファイル形式のデジタル・データ・ファイルとして表現されるデジタル・コンテンツは、急速に他形式のコンテンツを置き換えつつある。ますます多くの文書、プレゼンテーション、写真、動画、音楽が、デジタルで生成・記録されるようになってきている。多くの個人や組織にとって問題となるのは、コンピュータのハードウェアに保存されているデジタル・コンテンツがきちんと整理されておらず、偶発的な紛失から守られるように記録される必要があることである。たとえば、パーソナル・コンピュータ（ＰＣ）において、デジタル写真ファイルは、さまざまなフォルダに保存されることが多い。デジタルカメラから送られた写真は一のフォルダ群に保存され、Ｅメールに添付された写真は別のフォルダ群に保存され、ウェブサイトからダウンロードされた写真は更に別のフォルダ群に保存される、といった具合である。
【０００３】
デジタル・コンテンツのアーカイブ方法の一つは、既存のデータ構造を維持したまま、コンピュータ上のデータ・ファイル全てを定期的にバックアップすることである。こういったやり方は、偶発的紛失からデジタル・コンテンツを守る上では有効であるが、欠点もある。一つは、コピー結果はオリジナル以上に上手く構造化されることはないので、間違った場所に置かれているコンテンツや、上手く構造化されていないコンテンツは、間違ったまま・上手く構造化されないまま、となる。また、データ・ファイル全てをバックアップするためには、既に他の場所に保存されている膨大な数のファイルをコピーする上で十分な容量のメモリが必要となる。たとえば、もともとコンパクト・ディスク（ＣＤ）からコンピュータにロードされたアプリケーション固有のファイルは、ＣＤに存在しているので、バックアップは不要である。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
完全バックアップに必要なストレージ容量は、ハードディスク・ドライブ（ＨＤＤ）などの書き込み可能なデータ記録媒体によって実現できる。ただし、最初のシステム接続に際して、デバイスの導入やソフトウェアのセットアップが必要となる。これらの手順を踏むためには、ユーザは既存システムに関する情報を入力する必要があるかもしれないし、中には、ユーザがすぐにはわからない情報もあるかもしれない。また、ユーザは、デバイスやソフトウェアの設定をしなければならないかもしれない。複雑な手順の存在だけではなく、導入とセットアップにおける手順の数自体も、ユーザがバックアップ・アプリケーションを実行するのをためらう原因となっている。完全バックアップを実行する上で十分な容量の書き込み可能なデータ記録媒体の価格も、ユーザが完全バックアップを実行するのをためらう原因たりえる。更に、十分な容量のストレージを買って導入したユーザであっても、完全バックアップによりシステムが拘束される時間の長さにより、頻繁なバックアップをためらってしまう。
【０００５】
あるいは、ユーザは、手動でディレクトリからファイル群を選択し、選択したファイル群をストレージ・デバイスにコピーしてもよい。こういったやり方は、導入やセットアップなどの手続きなしに、小さなメモリ・デバイスで実現できるかもしれないが、手動でファイルを選ぶのは煩わしい。また、手動によるファイル選択の場合、偶発的な選択のし忘れが発生する可能性がある。
【０００６】
そこで、安価かつ簡易に、デジタル・コンテンツを選択的にバックアップする技術が必要とされている。
【課題を解決するための手段】
【０００７】
ある態様におけるエミュレーション・コンポーネントは、第１デバイス・タイプとしてのストレージ・デバイスと、オペレーティング・システムを実行するデータ・ソースを中継する。エミュレーション・コンポーネントは、データ・ソースからの問い合わせ（クエリー）に応答を返す論理を含む。この応答は、データ・ソースと接続されたとき、データ・ソースのオペレーティング・システムに指示して、自動的にストレージ・デバイスのアプリケーションを実行させるデバイス・タイプ・クラスに属する第２デバイス・タイプであるとして、ストレージ・デバイスを示す。以下、このクラスに属するデバイスのことを「自動起動デバイス」とよぶ。
【０００８】
別の態様におけるエミュレーション・コンポーネントは、データ・ソースと第１ストレージ・デバイスを中継する。エミュレーション・コンポーネントは、第１ストレージ・デバイスの第１論理記録領域を自動起動デバイスとして示す論理と、第１ストレージ・デバイスの第２論理記録領域を、書き込み可能なデータ記録媒体を含む第２ストレージ・デバイスとして示す論理を含む。エミュレーション・コンポーネントは、データ・ソースから、自動起動デバイスに宛てた自動起動デバイス・コマンドを受信し、自動起動デバイス・コマンドを第１ストレージ・デバイス・コマンドに変換し、第１ストレージ・デバイス・コマンドを第１論理記録領域に送出する論理を含む。また、エミュレーション・コンポーネントは、第１論理記録領域から第１ストレージ・デバイス・応答を受信し、第１ストレージ・デバイス・応答を自動起動デバイス・応答に変換し、自動起動デバイス・応答をデータ・ソースに送出する論理を含む。エミュレーション・コンポーネントは、更に、第２ストレージ・デバイス宛の第２ストレージ・デバイス・コマンドをデータ・ソースから受信し、第２ストレージ・デバイス・コマンドを第２論理記録領域に送信する論理と、第２論理記録領域から第２ストレージ・デバイス・応答を受信し、第２ストレージ・デバイス・応答をデータ・ソースに送信する論理を更に含んでもよい。
【０００９】
エミュレーション・コンポーネントは、第１論理記録領域を、ＣＤドライブやＤＶＤドライブとして示してもよい。同様に、エミュレーション・コンポーネントは、第２論理記録領域を、ＨＤＤやセキュア・デジタル（ＳＤ：Secure Digital）メモリカード、コンパクト・フラッシュ（ＣＦ：Compact Flash）メモリカード、メモリスティックといった、書き込み可能なデータ記録媒体として示してもよい。ここに示すさまざまなエミュレーション・コンポーネントの「論理」は、ソフトウェア、ハードウェア、ファームウェア、あるいは、それらの組み合わせとして実装可能であることは、理解されるところであろう。
【００１０】
また、データ・バックアップ・システムが提供される。ある態様において、データ・バックアップ・システムは、通信インタフェース、書き込み可能なデータ記録媒体を含む第１ストレージ・デバイス、第１ストレージ・デバイスと通信インタフェースの通信を中継するエミュレーション・コンポーネントを含む。この態様において、エミュレーション・コンポーネントは、第１ストレージ・デバイスを自動起動デバイスとして示す。エミュレーション・コンポーネントは、データ・ソースから、自動起動デバイスに宛てた自動起動デバイス・コマンドを受信し、自動起動デバイス・コマンドを第１ストレージ・デバイス・コマンドに変換し、第１ストレージ・デバイス・コマンドを第１ストレージ・デバイスに送出する。エミュレーション・コンポーネントは、第１ストレージ・デバイスから第１ストレージ・デバイス・応答を受信し、第１ストレージ・デバイス・応答を自動起動デバイス・応答に変換し、自動起動デバイス・応答をデータ・ソースに送出する。ここで、通信インタフェースは、ＵＳＢ通信インタフェースを含んでもよいし、FireWire通信インタフェースを含んでもよい。第１ストレージ・デバイスは、ＨＤＤ、ＳＤメモリカード、ＣＦメモリカードを含んでもよい。また、エミュレーション・コンポーネントは、第１ストレージ・デバイスをＣＤドライブやＤＶＤドライブとして示してもよい。
【００１１】
ある態様において、データ・バックアップ・システムは、着脱可能・ストレージ・デバイス・インタフェースを含み、エミュレーション・コンポーネントと着脱可能・ストレージ・デバイスを通信させてもよい。したがって、このデータ・バックアップ・システムのエミュレーション・コンポーネントは、データ・ソースから、着脱可能・ストレージ・デバイス・インタフェースと結びつけられた着脱可能・ストレージ・デバイス宛ての着脱可能・ストレージ・デバイス・コマンドを受信し、着脱可能・ストレージ・デバイス・コマンドを着脱可能・ストレージ・デバイスに送信してもよい。エミュレーション・コンポーネントは、また、着脱可能・ストレージ・デバイス・インタフェースと結びつけられた着脱可能・ストレージ・デバイスから、着脱可能・ストレージ・デバイス・応答を受信し、着脱可能・ストレージ・デバイス・応答をデータ・ソースに送信してもよい。
【発明を実施するための最良の形態】
【００１２】
データ・バックアップ・システムは、商業用アプリケーションだけでなく、個人用アプリケーションにも提供される。本発明のデータ・バックアップ・システムによれば、パソコンなどのデータ・ソースから、ファイル・タイプなどのなんらかの基準にしたがって、ストレージ・デバイスにファイルを選択的にコピーできる。たとえば、このシステムは、.mp3や.wavなどの既知の音楽ファイル・拡張子を持つ音声ファイルや、.jpg、.pct、.tifなどの既知の画像ファイル・拡張子を持つ画像ファイルをバックアップしてもよい。データ・バックアップ・システムは、データ・ソースとの接続時に自動実行されるバックアップ・アプリケーションを保持してもよい。バックアップ・アプリケーションは、バックアップ処理を実行する上で、ユーザ入力をほとんど、あるいは、まったく必要としない、とすることもできる。
【００１３】
データ・バックアップ・システムは、さまざまな形態が可能である。たとえば、バックアップ・アプリケーションと、コピー・ファイルを保存する上で十分な記録容量、の両方を備える装置であってもよい。あるいは、外付けＨＤＤやフラッシュ・メモリ機器のようなストレージ・デバイス形式の十分な記録容量と接続するためのインタフェース、および、バックアップ・アプリケーションを備える機器であってもよい。いずれの場合も、システムにはエミュレーション・コンポーネントが含まれる。エミュレーション・コンポーネントは、バックアップ・アプリケーションを含むデータ・バックアップ・システムの一部を、データソースには特定タイプの機器であるかのように見せる。より具体的には、データ・バックアップ・システムのバックアップ・アプリケーション部分は、以下、「自動起動デバイス」とよぶストレージ・デバイスのクラスとして示される。データ・バックアップ・システムは、自動起動デバイスのエミュレートにより、オペレーティング・システムの自動実行機能を利用できるので、オペレーティング・システムを実行するデータ・ソースとデバイスが接続されたとき、バックアップ・アプリケーションが自動実行される。
【００１４】
図１は、通信線１２０によりデータ・ソース１１０と接続されるデータ・バックアップ・システム１００の概要図である。データ・ソース１１０は、データを保持するパーソナル・コンピュータ（PC）、マッキントッシュ・コンピュータ（Mac）、ＰＤＡ（Personal Digital Assistant）などでもよい。データ・ソース１１０は、また、サーバ、セットトップ・ボックス、テレビ、携帯電話、スマートフォン（Smartphone）、デジタル・スチル・カメラ（Digital Still Camera）、ビデオ・カメラ、スキャナ、デジタル音楽プレーヤやデジタル動画プレーヤ、ゲーム・コンソール、ＰＶＲ（Personal Video Recorder）などでもよい。データ・ソース１００は、Windows（登録商標）XPのようなアプリケーションの自動実行機能を備えるオペレーティング・システム（ＯＳ）を備えることが好ましい。詳細は、後述する。その他適切なオペレーティング・システムとしては、MacOS、PalmOS、Linux、Unix（登録商標）等を挙げることができる。バックアップ・システム１００とデータソース１１０の間の通信線１２０は、実質的には、どのようなデータ伝送メカニズムであってもよい。たとえば、光ケーブル、電気ケーブル、ワイヤレス・リンク、ネットワーク接続等であってもよい。通信線１２０は、一時的なものであってもよいので、図１では通信線１２０を破線で示している。
【００１５】
図１に示すように、バックアップ・システム１００は、通信インタフェース１３０、エミュレーション・コンポーネント１４０、および、第１論理記録領域１６０と第２論理記録領域１７０を含むストレージ・デバイス１５０、を含む。通信プロトコルにしたがって、データソース１１０は、通信インタフェース１３０により、バックアップ・システム１００のエミュレーション・コンポーネント１４０と通信可能である。通信インタフェースは、たとえば、ＵＳＢ、FireWire、あるいは、赤外線やブルー・トゥース、ＷｉＦｉなどの無線インタフェースなどであってもよい。
【００１６】
バックアップ・システム１００は、同種または異種の複数の通信インタフェース１３０を含むことにより、複数、および／または、異種のデータ・ソース１１０に対応してもよい。通信インタフェース１３０のタイプに基づいて、通信インタフェース１３０は、通信線１２０とデータ・ソース１１０が接続するための通信ポートを含んでもよい。たとえば、ＵＳＢ・通信インタフェース１３０であれば、ＵＳＢ・通信ポートを含み、FireWire・通信インタフェース１３０であれば、FireWire・通信ポートを含む。あるいは、通信インタフェース１３０は、無線アンテナを含んでもよいし、赤外線信号を送受信するための赤外線送信部と受信部を含んでもよい。
【００１７】
ストレージ・デバイス１５０は、書き込み可能データ記録媒体を含み、たとえば、２以上の論理記録領域に区分されたＨＤＤであってもよい。この場合、各論理記録領域は、ＨＤＤのパーティションである。ストレージ・デバイス１５０として適切なＨＤＤは、２０〜６０ギガバイト（ＧＢ）、あるいは、それ以上の記録容量を備える１．０インチ、１．８インチ、２．５インチおよび３．５インチのハードディスク・ドライブである。再書き込み可能な媒体を含む他の適切なストレージ・デバイス１５０は、ＳＤメモリカードやＣＦメモリカードなどのソリッド・ステート・メモリ・デバイスである。ストレージ・デバイス１５０は、また、ＣＤドライブやＤＶＤドライブのような光学デバイスであってもよく、そのような光学ストレージ・デバイス１５０内の書き込み可能データ記録媒体としては、ＣＤ−Ｒなどの１回だけ書き込み可能な媒体（write-once medium）や、ＣＤ−ＲＷなどの再書き込み可能な媒体（rewritable medium）、であってもよい。
【００１８】
ストレージ・デバイス１５０においては、また、２つの論理記録領域１６０と１７０のそれぞれを、２つの異なるデバイスにより実装してもよい。たとえば、第１論理記録領域１６０をＣＤ媒体とＣＤドライブによって実装し、第２論理記録領域をＨＤＤにより実装してもよい。ここでいうデバイスのタイプや形態、容量などは単なる例示であって、制約的な意図を含まないことは理解されるところであろう。
【００１９】
ある態様において、第１論理記録領域１６０と第２論理記録領域１７０がエミュレーション・コンポーネント１４０と通信可能となるように、バックアップ・システム１００はメモリ・デバイス・インタフェース１９０を含んでもよい。このような実装において、メモリ・デバイス・インタフェース１９０のタイプは、ストレージ・デバイス１５０のタイプに対応する。たとえば、ＩＤＥ（Integrated Drive Electronics）・インタフェース１９０はＩＤＥ・ＨＤＤ・ストレージ・デバイス１５０に使用され、ＳＣＳＩ（Small Computer System Interface）・インタフェース１９０はＳＣＳＩ・ＨＤＤ・ストレージ・デバイス１５０に使用される。ストレージ・デバイス１５０がＳＤメモリカードであるときには、メモリ・デバイス・インタフェース１９０はＳＤメモリカード・ホスト・インタフェースであってもよい。インタフェース１９０は、また、赤外線、ＷｉＦｉ、ブルートゥースなどの無線インタフェースであってもよい。メモリ・デバイス・インタフェース１９０は、ＩＣチップにより、あるいは、別コンポーネントを利用して、バックアップ・システム１００に実装可能である。メモリ・デバイス・インタフェース１９０とメモリ・デバイス１５０は統合されてもよい。複数のストレージ・デバイス１５０を使用する上記実施例において、バックアップ・システム１００は、適宜、複数のメモリ・デバイス・インタフェース１９０を備えてもよいことは、理解されるところであろう。
【００２０】
第１論理記録領域１６０は、ユーザ・アクセス不可として偶発的な削除から守られているメモリ・デバイス１５０上の論理領域である。第１論理記録領域１６０は、たとえば、バックアップ・アプリケーション、システム・ファイル、ドライバ、その他のセットアップ用、設定用ソフトウェア、などを保持してもよい。第１論理記録領域１６０は、エミュレーション・コンポーネント１４０により、データ・ソース１１０には自動起動デバイスとして示される。ここでいう自動起動デバイスとは、マイクロソフト・ウィンドウズ（登録商標）ＯＳのオートラン機能のようなオペレーティング・システムの自動実行機能をトリガするデバイスのことである。ウィンドウズ（登録商標）のオートランをトリガするデバイス・タイプは、たとえば、ＣＤドライブやＤＶＤドライブである。
【００２１】
第２論理記録領域１７０は、バックアップ・データを保持するメモリ・デバイス１５０上の論理領域である。したがって、エミュレーション・コンポーネント１４０は、書き込み可能なデータ記録媒体を含むデバイス・タイプとして、データ・ソースに第２論理記録領域１７０を示す。第２論理記録領域１７０は、たとえば、ＨＤＤ、ＣＦ／ＳＤメモリカードとして示されてもよい。第２論理記録領域１７０は、ストレージ・デバイス１５０と同一デバイス・タイプとして示されてもよい。第２論理記録領域１７０は、ストレージ・デバイス１５０とは異なるデバイス・タイプとして示されてもよい。
【００２２】
エミュレーション・コンポーネント１４０は、バックアップ・システム１００に機能提供し、ソフトウェア、ファームウェア、ハードウェア、あるいは、それらの組み合わせ論理により実装可能である。エミュレーション・コンポーネントの別々の機能を別々の論理にて実装可能であることも、実施例の範囲内であることは理解されるところであろう。エミュレーション・コンポーネント１４０の一の機能をファームウェアにより実装し、他の機能をソフトウェアにより実装することもできる。
【００２３】
エミュレーション・コンポーネント１４０は、ＩＣを含んでもよい。たとえば、エミュレーション・コンポーネントを、ソフトウェア、ファームウェア、ハードウェア、あるいはそれらの組み合わせにより実装し、ＵＳＢ・コントローラのチップセットに組み込んでもよい。ＵＳＢに対応する場合、エミュレーション・コンポーネント１４０は、多くの階層化された産業基準の全てまたは一部を実装する。このような基準には、USP Specification-Revision 2.0、USB Mass Strage Class-Bulk Only Transport-Revision 1.0、SCSI Primary Commands-3(SPC-3)、SCSI Block Commands-2(SBC-2)、Multimedia Commands-4(MMC-4)、AT Attachment with Packet Interface-6(ATA/ATAPI-6)、などが含まれる。実装によっては、エミュレーション・コンポーネントはこれらの産業基準コマンドの一部のみのサポートでもよいことは留意すべき点である。
【００２４】
エミュレーション・コンポーネント１４０によって提供される機能には、自動起動デバイスとして第１論理記録領域１６０を示す機能と、書き込み可能なデータ記録媒体を含むデバイスとして第２論理記録領域１７０を示す機能が含まれてもよい。したがって、データソース１１０は、バックアップ・システム１００と接続したとき、データ・バックアップ・システム１００を２つのデバイスが接続されたシステムとして認識する。ただし、ある態様において、データ・ソース１１０のユーザはこれら２つのデバイスのコンテンツにアクセスできないが、適切なアプリケーション・プログラミング・インタフェース（ＡＰＩ）コールを実装したバックアップ・アプリケーションはアクセスできることは、留意すべきである。これにより、第１論理記録領域や第２論理記録領域のコンテンツは、偶発的な変更・削除から守られる。ある態様において、第２論理記録領域１７０からバックアップされたデータにアクセスするとき、データ・バックアップ・システム１００は、データ・ソースにそのデータを復元（Restore）するか、別のデバイスにそのデータをコピーする。別態様として、第２論理記録領域１７０を示す仮想デバイスはユーザからアクセス可能であるが、第１論理記録領域１６０を示す仮想デバイスにはユーザからアクセスできない、としてもよい。これらの態様において、ユーザは第２論理記録領域１７０のコンテンツに直接アクセスできるが、第１論理記録領域１６０のコンテンツにはアクセスはできない。
【００２５】
エミュレーション・コンポーネント１４０が提供する別機能は、ＨＤＤやＣＤドライブのコマンド間のように、コマンドや応答をフォーマット変換することである。データソース１１０が（第１論理記録領域１６０により示されている）自動起動デバイス宛てのコマンドをバックアップ・システム１００に送信するとき、エミュレーション・コンポーネントは、そのコマンドを第１論理記録領域１６０に送信する前に、自動起動デバイスに対応したフォーマットからストレージ・デバイス１５０に対応したフォーマットに変換する。同様に、第１論理記録領域１６０からの応答は、ストレージ・デバイス１５０のフォーマットから自動起動デバイスのフォーマットに変換された上で、データソース１１０に送出されるので、自動起動デバイスからの応答のように見える。
【００２６】
ＣＤドライブおよびＨＤＤ間のフォーマット変換は一例に過ぎず、エミュレーション・コンポーネント１４０は、１以上の類似のフォーマット変換を実装可能であることは留意すべき点である。ここで、「ストレージ・デバイス・コマンド」とは、特定のストレージ・デバイスに対応したフォーマットのコマンドを意味し、「ストレージ・デバイス・応答」とは、同フォーマットの応答を意味する。特定の例として、「自動起動デバイス・コマンド」とは、特定の自動起動デバイスに対応したフォーマットのコマンドを意味し、「自動起動デバイス・応答」とは、同フォーマットの応答を意味する。
【００２７】
また、エミュレーション・コンポーネント１４０が提供可能な別機能は、データ・ソース１１０と第２論理記録領域１７０の間でコマンドと応答を通過させること、である。エミュレーション・コンポーネント１４０が受信したコマンドが、ストレージ・デバイス１５０に対応したフォーマットであれば、エミュレーション・コンポーネント１４０はコマンドや応答を変換する必要はない。このとき、エミュレーション・コンポーネント１４０は、書き込み可能なデータ記録媒体を含むデバイスに宛てて送信されたコマンドをデータ・ソース１１０から受信し、そのコマンドを第２論理記録領域１７０に送る。同様にして、変換することなく、データ・ソース１１０に応答を返す。エミュレーション・コンポーネント１４０は、第２論理記録領域１７０をメモリ・デバイス１５０とは別タイプのデバイスとして示してもよいことは理解されるところであろう。これらの例において、エミュレーション・コンポーネント１４０は、メモリ・デバイス１５０のフォーマットと第２論理記録領域１７０が示すデバイス・タイプの間の変換をするように形成される。
【００２８】
図２は、別実施例におけるデータ・バックアップ・システム２００の概要図であり、このシステムは、データ・バックアップ・システム１００と同じく、通信線１２０によりデータ・ソース１１０と接続されている。データ・バックアップ・システム１００と同様、バックアップ・システム２００も通信インタフェース１３０およびエミュレーション・コンポーネント１４０を含む。この態様においても、バックアップ・システム２００は、書き込み可能なデータ記録媒体を含むストレージ・デバイス２１０と、適切なメモリ・デバイス・インタフェース２２０を含む。ストレージ・デバイス２１０の書き込み可能なデータ記録媒体は、バックアップ・アプリケーションなどを保存するだけのメモリ容量があればよいので、バックアップ・システム２００は、ポケット・サイズやドングルなどのかなり小さなフォーム・ファクタ（form factor）で実現できる。あるいは、ドック（dock）やクレイドルなどの他のデバイスに組み込まれてもよい。
【００２９】
バックアップ・システム２００は、また、着脱可能なストレージ・デバイス・インタフェース２３０を含むことができ、書き込み可能なデータ記録媒体を含む着脱可能なストレージ・デバイス２４０は、通信ポート２５０を介してデータ・バックアップ・システム２００と外部接続可能である。着脱可能なストレージ・インタフェース２３０は、エミュレーション・コンポーネント１４０と着脱可能なストレージ・デバイス２４０を通信させる。着脱可能なストレージ・デバイス・インタフェース２３０は、たとえば、フラッシュ・メモリ・デバイスやＨＤＤのような集積媒体により着脱可能デバイスをサポートしてもよい。別の態様として、着脱可能デバイスは、ＣＤドライブのように着脱可能な媒体を受け入れてもよい。
【００３０】
コピー・ファイルは、データ・バックアップ・システム２００と関連づけられるメモリ・デバイスに記録される必要はないため、着脱可能なストレージ・デバイス・インタフェース２３０が必須構成ではないことは、理解されるところであろう。あるいは、バックアップ・アプリケーションは、コピー・ファイルをデータソースの内外において稼働中のドライブやネットワーク・ドライブに保存してもよい。別オプションとして、バックアップ・アプリケーションは、コピー・ファイルをインターネットに送出し、ウェブベースの記録設備に保存させてもよい。
【００３１】
バックアップ・システム１００や２００は、ディスプレイや、ＬＥＤ（Light Emitting Diode）などによる他の視覚表示器によりファイルのコピーを示してもよいし、ディスプレイを省略して、バックアップ・システム１００や２００のコスト抑制および耐久性向上を図ってもよいことは、留意すべき点である。バックアップ・システム１００や２００は、バッテリーや、ＡＣ電源コンセントなどの外部電源、あるいはデータ・ソース１００が提供する電力により駆動可能である。ある態様において、通信線１２０は、バックアップ・システム１００や２００の一部となるケーブルであってもよい。バックアップ・システム１００や２００は、また、着脱可能なストレージ・デバイス２４０や、デジタルカメラなどの家電製品としてのデータ・ソース１１０を受け入れるように設計されたクレイドル、として形成されてもよい。
【００３２】
図３は、データ・ソースのデータ・ファイルをバックアップする処理過程３００の一例を示すフローチャートである。処理過程３００は、バックアップ・アプリケーションを保持するストレージ・デバイスを含めて、データ・バックアップ・システムを提供するステップ３１０と、データ・バックアップ・システムをデータ・ソースに接続して自動的にバックアップ・アプリケーションを起動するステップ３２０と、データ・ソースのデータ・ファイルを選択コピーするステップ３３０、を含む。
【００３３】
データ・バックアップ・システムを提供するステップ３１０は、たとえば、データ・バックアップ・システム１００やデータ・バックアップ・システム２００を提供するステップを含んでもよい。データ・バックアップ・システム２００が提供される場合、バックアップ・システム２００を提供するステップ３１０は、通信ポート２５０に着脱可能ストレージ・デバイス２４０を接続するステップ、を含んでもよい。たとえば、着脱可能ストレージ・デバイス２４０がＳＤメモリカードやＣＦメモリカードである場合、通信ポート２５０に着脱可能ストレージ・デバイス２４０を接続するステップは、メモリカードを通信ポート２５０に挿入するステップ、を含んでもよい。着脱可能ストレージ・デバイス２４０がＨＤＤである場合、着脱可能ストレージ・デバイス２４０を通信ポート２５０に接続するステップは、ケーブルやワイヤレス・リンクなどの通信線を介して、通信ポート２５０と着脱可能ストレージ・デバイス２４０を接続するステップ、を含んでもよい。
【００３４】
データ・バックアップ・システム１００、２００について、データ・バックアップ・システム１００や２００をデータ・ソース１１０に接続するステップ３２０は、通信線１２０により、通信インタフェース１３０とデータ・ソース１１０を接続するステップ、を含んでもよい。データ・バックアップ・システムをデータ・ソースに接続するステップ３２０は、また、データ・ソースがデータ・バックアップ・システムを２つの新デバイスとして認識するステップ、を含む。たとえば、オペレーティング・システムは、定期的に未使用ポートに問い合わせて、新たに接続されたハードウェアが存在しないかを確認してもよい。データ・ソース１１０がデータ・バックアップ・システム１００や２００を２つデバイスが接続されたシステムとして認識する処理過程の一例は、図４に関連して後述する。
【００３５】
データ・バックアップ・システムをデータ・ソースに接続するステップ３２０により、バックアップ・アプリケーションは自動的に起動される。ウィンドウズ（登録商標）ＯＳのオートラン機能のような自動実行機能を含むＯＳは、自動起動デバイス内のアプリケーションを実行できる。ここで、データ・ソースのＯＳの自動実行機能は、バックアップ・アプリケーションを起動すべきアプリケーションとして認識し、バックアップ・アプリケーションを自動起動してデータソース上にて実行させる。
【００３６】
エミュレーション・コンポーネント１４０の機能について上述したように、データ・バックアップ・システムをデータ・ソースに接続するステップ３２０は、データ・ソースとデータ・バックアップ・システム間の通信に際し、コマンドや応答についてデバイスのフォーマットを変換するステップ、を含んでもよい。たとえば、バックアップ・システム１００に送信されるＣＤ読出命令は、第１論理記録領域１６０への送信前に、ＨＤＤ読出命令に変換される。
【００３７】
データ・ソースのデータ・ファイルを選択コピーするステップ３３０は、データ・ソース上にてバックアップ・アプリケーションを実行させるステップ、を含んでもよい。バックアップ・アプリケーションは、データ・ソースと関連づけられる１以上のストレージ・デバイスを検索するように設定されている。バックアップ・アプリケーションは、内蔵ストレージ・デバイスのディレクトリや外付けストレージ・デバイスのディレクトリ、データソースからアクセス可能なネットワーク・ドライブのディレクトリを検索してもよい。バックアップ・アプリケーションは、第２論理記録領域１７０や着脱可能なストレージ・デバイス２４０といった、書き込み可能な記録媒体を含むストレージ・デバイスにファイルを選択的にコピーする。
【００３８】
バックアップ・アプリケーションは、ファイル・タイプ（JPEGなど）や、コンテンツ・タイプ（音楽ファイルなど）といった所定基準に合致するファイルを選択する。以前にコピーされていないファイルだけをコピーしてもよい。コンテンツ・タイプは、Ｅメール、ビジネス・アプリケーション・データ（たとえば、AccpacやSimply Accountingのファイル）、デジタル・ビデオ・ファイル、Ｅブック・ファイル、連絡ファイル（contacts files）、カレンダ・ファイル、テキスト・ファイル、タスク・ファイル、設定ファイル、ブックマーク・ファイル、パスワード・ファイルなどであってもよい。データ・ファイルを選択コピーするステップ３３０は、また、Ｅメールの添付ファイルを検索したり、.zipファイル内に圧縮されているファイルのような他ファイルに埋め込まれているファイルを検索することにより、所定基準に合致するファイルを検索するステップ、を含んでもよい。バックアップ・アプリケーションは、データ・バックアップ・システムの書き込み可能なデータ記録媒体にファイル・パスやディレクトリ構造を生成し、データ・ソースのどこにコピー・ファイルが位置していたかを示してもよい。
【００３９】
処理過程３００によれば、ユーザの関与は、データ・バックアップ・システムとデータ・ソースを物理的に接続する作業だけとなることは理解されるところであろう。ユーザの関与は簡単な操作だけとなるが、データ・ソースのディスプレイ上におけるバックアップ・アプリケーションのＧＵＩにより他の操作機会を提供可能であることは理解されるところであろう。もし望むなら、ユーザは、コピーの対象となるコンテンツ・タイプやファイル・タイプなどの検索基準を指定することにより、バックアップ処理をカスタマイズできる。加えて、ユーザは、ドライブ、ディレクトリ、フォルダ、ファイル・タイプ、ファイル・サイズ、日時スタンプにより、バックアップ処理の範囲を限定できる。あるいは、ユーザは、テンポラリ・フォルダやインターネット・エクスプローラのディレクトリといったフォルダ、ディレクトリ、ドライブ、特定のファイルやコンテンツ・タイプを選択対象から除外することもできる。
【００４０】
上述したように、データ・ソースからデータ・ファイルを選択コピーするステップ３３０は、データ・ソース上にてバックアップ・アプリケーションを実行するステップ、を含んでもよい。バックアップ・アプリケーションの上記機能に加えて、バックアップ・アプリケーションは、データ・ファイルを選択コピーするステップ３３０の一部として、次に述べる機能を実行可能であってもよい。たとえば、バックアップ・システムがデータ・ソース１１０と接続されている限り、バックアップ・アプリケーションは、定期的にバックアップ処理を繰り返してもよい。バックアップ・アプリケーションはまた、定期的に、自己診断ルーチンを実行してもよい。バックアップ・アプリケーションは、ユーザがバックアップ処理をカスタマイズできるように、一定時間だけ待機してから自動バックアップを実行してもよい。更に、バックアップ・アプリケーションは、自動ではなく、ユーザ・コマンドのみにしたがって、データ・ファイルを選択コピーするステップ３３０、を実行してもよい。ユーザは、データ・ソースのＧＵＩを介して、あるいは、データ・バックアップ・システムのボタンやスイッチを介して、ユーザ・コマンドを入力してもよい。あるいは、バックアップ・アプリケーションは、着脱可能なストレージ・デバイス２４０が通信ポート２５０に接続されているときには、いつでも、データ・ファイルを選択コピーするステップ３３０を実行してもよい。
【００４１】
データ・ファイルをコピーするステップ３３０は、データ・ソースが既にデータ・バックアップ・システムと対応づけられているか否か（たとえば、データ・ソースが以前にデータ・バックアップ・システムによりバックアップされたか否か）を判定するステップ、を含んでもよい。このステップは、たとえば、データ・ソースに残っているマーカ（印）を検索したり、データ・バックアップ・システムに保存されているマーカとボリューム・ラベルのようなデータ・ソース識別子を比較するステップ、を含んでもよい。バックアップ・アプリケーションは、マーカによりデータ・ソースを識別できる。バックアップ・アプリケーションは、データ・ソースが既にデータ・バックアップ・システムと対応づけられているか否か、もし対応づけられているのであればデータ・バックアップ・システムがそのデータ・ソースに対応するデータを既に保持しているか否か、に基づいて、その動作内容を決定してもよい。たとえば、その動作内容とは、データ・ソースの自動バックアップ、バックアップしたデータのデータ・ソースへの完全な、または、差分による再現、あるいは、これらやそれ以外の方法の中からの選択に関するユーザへの問い合わせ、であってもよい。
【００４２】
図４は、データ・ソースが検出したデータ・バックアップ・システムを、２つのデバイスを装備するシステムとして認識する処理過程４００を示すフローチャートである。ここに示す処理過程４００は、ＵＳＢプロトコルについて説明されるが、FireWireなどの他プロトコルについての処理過程も同様であることは理解されるところであろう。処理過程４００は、データ・ソースがデータ・バックアップ・システムを数えるステップ４１０と、その後、データ・バックアップ・システムのエミュレーション・コンポーネントが初期化に際して、２つの論理ユニット数（LUN:Logical Unit Numbers）を示すステップ４２０、を含む。
【００４３】
データ・バックアップ・システムを数えるステップ４１０は、新たに装着されたハードウェア（この場合は、データ・バックアップ・システム）とそのハードウェアの通信設定を特定するために実行される。数えるステップ４１０は、データ・ソースが一意のデバイス番号を付与するステップと、データ・バックアップ・システムにデバイス記述子（descriptor）を問い合わせるステップ、を含む。エミュレーション・コンポーネントは、データ・ソースにデバイス記述子を示して応答する。数えるステップ４１０は、更に、データ・ソースがデータ・バックアップ・システムにアドレス設定するステップ、を含んでもよい。いったんアドレス設定されると、データ・バックアップ・システムは、そのアドレスに宛てた通信フレームを取得する。数えるステップ４１０は、また、データ・ソースがデータ・バックアップ・システム、より具体的には、エミュレーション・コンポーネントから、クラスやサブクラス、プロトコルといった、詳細な機器情報を要求したり、受け取るステップ、を含んでもよい。
【００４４】
数えるステップ４１０は、また、データ・ソースが適切なＵＳＢ大容量ストレージ・クラス・ドライバを起動し、ＵＳＢ大容量ストレージ・クラス・ドライバが「GET MAX LOGICAL UNIT NUMBER」コマンドにより、データ・バックアップ・システムに論理ユニット数ＬＵＮを要求するステップ、を含んでもよい。数えるステップ４１０は、また、データ・バックアップ・システム、より具体的には、エミュレーション・コンポーネントが「GET MAX LOGICAL UNIT NUMBER」コマンドに対応して、ＬＵＮ＝２をデータ・ソースに通知するステップ、も含む。
【００４５】
初期化に際してＬＵＮ＝２を示すステップ４２０は、エミュレーション・コンポーネントがデータ・ソースから各ＬＵＮに宛てた多くのＳＣＳＩコマンドを受信するステップ、を含んでもよい。エミュレーション・コンポーネントは、各ＬＵＮを別々に扱う。エミュレーション・コンポーネントは、認識したＳＣＳＩコマンドに応答し、認識できなかったＳＣＳＩコマンドについて標準エラー条件を生成する。次のＳＣＳＩコマンドがＬＵＮに発行される前に、通常、各ＳＣＳＩコマンドや生成されたエラーが処理される。書き込み可能なデータ記録媒体を含むストレージ・デバイスを示すＬＵＮに送出されたＳＣＳＩコマンド列と、自動起動デバイスを示すＬＵＮに送出されたＳＣＳＩコマンド列が異なることは、理解されるところであろう。加えて、データソースは、ＳＣＳＩコマンドやＳＣＳＩコマンド列を複数回繰り返し発行してもよく、２つのＬＵＮに宛てたＳＣＳＩコマンド列はまざってもよい。
【００４６】
両ＬＵＮに対するＳＣＳＩコマンド列は、ＵＳＢ大容量ストレージ・クラス・ドライバがデバイス・タイプを特定するための「INQUIRY」コマンドを発行することから始まる。エミュレーション・コンポーネントは、第２論理記録領域１７０（図１）のようなストレージ・デバイスは、書き込み可能なデータ記録媒体を含むストレージ・デバイスであると応答する。たとえば、「0x00」応答は、ストレージ・デバイスがＨＤＤであることを示す。同様に、エミュレーション・コンポーネントは、たとえば、第１論理記録領域１６０（図１）のようなストレージ・デバイスは、自動起動デバイスであると応答する。たとえば、「0x05」応答は、自動起動デバイスがＣＤドライブであることを示す。書き込み可能なデータ記録媒体を含み得るストレージ・デバイスに対し、追加的に、「着脱可能」、または、「着脱不能」としてマークしてもよい。自動起動デバイスに対しては、「着脱可能」としてマークしてもよい。この後、２つのＬＵＮに宛てたＳＣＳＩコマンド列は、分離される。以下に説明するＳＣＳＩコマンド列の順序は例示であり、ＳＣＳＩコマンドの順序はデータ・ソースに応じてさまざまであることは理解されるところであろう。また、以下に示す１以上のＳＣＳＩコマンドを省略してもよいし、および／または、他のＳＣＳＩコマンドを含めてもよい。
【００４７】
書き込み可能なデータ記録媒体を含むストレージ・デバイス宛てのＳＣＳＩコマンド列は、データ・ソースが書き込み可能なデータ記録媒体がフォーマット済みか否かを判定するための「READ FORMAT CAPACITIES」リクエストを続ける。通常、示されているストレージ・デバイスの記録媒体はフォーマット済みであり、それにしたがって、エミュレーション・コンポーネントが応答する。フォーマット済みでなければ、データ・ソースは、ストレージ・デバイスの媒体のフォーマットを試みる。次に、データ・ソースは、書き込み可能なデータ記録媒体の容量とそのブロック・サイズを特定するために、「READ CAPACITY」リクエストを発行し、エミュレーション・コンポーネントがこの情報を返す。「READ(10)」コマンドは、書き込み可能なデータ記録媒体における第１ブロックを読み込むために発行される。第１ブロックは、論理ブロック・アドレス（LBA:Logical Block Addressing）＝０であり、書き込み可能なデータ記録媒体のパーティション・テーブルを含むマスタ・ブート・レコード（MBR:Master Boot Record）を含む。エミュレーション・コンポーネントは、リクエストされたブロックの内容（コンテンツ）を返す。
【００４８】
「MODE SENSE(6)」コマンドは、ストレージ・デバイスがディスク・キャッシュを備えるか否かといった、書き込み可能なデータ記録媒体を含むストレージ・デバイスの能力を抽出する。エミュレーション・コンポーネントは、適宜、ストレージ・デバイスの能力について、応答する。別の「READ(10)」コマンドは、ルート・ディレクトリを含めて、ファイル・システムの第１ブロックを再現するために発行される。ファイル・システムの第１ブロックは、たとえば、ＬＢＡ＝0x3fに位置してもよいが、示されているファイル・システムのタイプによっては、さまざまであってもよい。エミュレーション・コンポーネントは、ファイル・システムの第１ブロックを返す。最後に、データ・ソースは、「TEST UNIT READY」リクエストを発行し、ルート・ディレクトリ等の全コンテンツを読み出してもよい。ここで、書き込み可能なデータ記録媒体を含むストレージ・デバイスは使用可能とデータ・ソースが判断するように、エミュレーション・コンポーネントは肯定回答する。そのあと、データ・ソースは、必要に応じて、更に、読み出し／書き込みリクエストを発行する。
【００４９】
自動起動デバイスに宛てのＳＣＳＩコマンド列は、自動起動デバイスの容量に関する情報と、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ＋Ｒ、ＤＶＤ＋ＲＷといったさまざまなタイプの光学媒体の読み書き能力に関する情報を取得するために、「GET CONFIGURATION」リクエストを続ける。エミュレーション・コンポーネントは、データ・ソースに示されている自動起動デバイスに適した能力を応答する。このあと、自動起動デバイス内における媒体の存否を検出するための「READ CAPACITY」リクエストが続いてもよい。エミュレーション・コンポーネントは、初期の試行に失敗することによって応答する。これに対し、データ・ソースは、拡大エラー情報にアクセスするための「REQUEST SENSE」コマンドを発行する。その応答として、エミュレーションコ・ンポーネントは、「UNIT ATTENTION」に「Sense Key」を設定し、「POWER ON」に「追加Sense Code」を設定する。データ・ソースは、その後、「READ CAPACITY」リクエストを繰り返し、エミュレーション・コンポーネントは、第１論理記録領域１６０（図１）のサイズなどの容量を返答する。
【００５０】
どのようなタイプのステータス・チェンジ・イベントを、読み出し専用ストレージ・デバイスがサポートしているか、を知るために、データ・ソースは、最初の「GET EVENT STATUS NOTIFICATION」を発行し、エミュレーション・コンポーネントは、符号化されたステータス・フィールド・セットを応答する。データ・ソースは、チェックすべきステータス・エントリーに対するフィールド・セットと共に、「GET EVENT STATUS NOTIFICATION」リクエストを繰り返してもよい。たとえば、オペレーショナル・ステータス・フィールドが有効化されているときには、エミュレーション・コンポーネントは、オペレーショナル・チェンジ・イベントと、変化内容を示すステータス・コードを応答する。この応答に対し、データ・ソースは、更に、「GET CONFIGURATION」リクエストを発行し、（もしあれば）変化内容を検出してもよい。
【００５１】
データ・ソースは、また、「MM Capabilities and Mechanical Status Page」として知られる「MODE SENSE(10)」リクエストをページコード（0x2A）に発行してもよい。エミュレーション・コンポーネントは、ＣＤ−ＲやＣＤ−ＲＷの媒体の読み出し専用サポートを含むシンプルな自動起動デバイスについて典型的な情報を応答する。これにより、「GET CONFIGURATION」リクエストに対する応答として返された情報をエコーする。
【００５２】
この時点で、データ・ソースは「TEST UNIT READY」コマンドを発行してもよい。これにより、異なるＯＳの自動実行機能をサポート可能なエミュレーション・コンポーネントにおいて、２系統のリクエスト／応答・イベントが発生する。２系統のコマンド列は混じり合い、エミュレーション・コンポーネントが予定される全ステータスをパスするまで、イベントはペンディングされる。以下概要を示すように、どちらのシーケンスもWindows（登録商標）XPのようなオペレーティング・システムＯＳにとっては通常のものである。以下に示すシーケンスは、リクエストやリクエスト列の繰り返し回数を説明するものではない。また、イベント列は、データ・ソース上で実行されるオペレーティング・システムのタイプやバージョンによってさまざまである。追加の、あるいは、代わりのコマンドを発行することもできる。
【００５３】
第１シーケンスには、データ・ソースから自動起動デバイスに送信される「TEST UNIT READY」コマンド・シリーズが含まれる。エミュレーション・コンポーネントは、最初のリクエストに失敗するように設定されている。そのあと、データ・ソースは、拡大エラー情報を取得するために「REQUEST SENSE」コマンドを送信し、エミュレーション・コンポーネントは追加センス・コード「MEDIUM NOT PRESENT」と共に、「NOT READY」に「Sense Key」を設定する。データ・ソースは、「TEST UNIT READY」コマンドを繰り返し、エミュレーション・コンポーネントは再度失敗する。データ・ソースは、「REQUEST SENSE」を再送信し、エミュレーション・コンポーネントは、「UNIT ATTENTION」に設定された「Sense Key」と「MEDIUM MAY HAVE CHANGED」の追加センス・コードを返す。以降の全「TEST UNIT READY」コマンドは、通常、エラーなく応答される。
【００５４】
第２シーケンスには、データ・ソースから自動起動デバイスに送信される「GET EVENT STATUS NOTIFICATION」リクエスト・シリーズが含まれる。第１シーケンスをトリガーする最初の「TEST UNIT READY」コマンドに続いて、データ・ソースは、オペレーショナル・チェンジ・フィールドを有効化し、「GET EVENT STATUS NOTIFICATION」リクエストを発行する。エミュレーション・コンポーネントは、オペレーショナル・チェンジ・イベントと変化内容を示すステータス・コードを返答する。それに続く「GET EVENT STATUS NOTIFICATION」リクエストにおいて、媒体のステータス・フィールドが有効化される。エミュレーション・コンポーネントは、媒体・イベント、新媒体を示すステータス・コード、媒体の存在を示すフラグ・セットを返す。有効化されている媒体・ステータス・フィールドに対する全「GET EVENT STATUS NOTIFICATION」リクエストにおいて、エミュレーション・コンポーネントは、媒体・イベントと媒体・プレゼント・フラグ・セットを返すが、ステータス・コードは、新媒体を示さない。「GET EVENT STATUS NOTIFICATION」リクエストが発行され、予測・ステータス・フィールドが有効化されない場合、エミュレーション・コンポーネントは、適宜、イベントの現在状態を応答する。
【００５５】
これらのシーケンスの双方または一方の終了時において、データ・ソースは自動起動デバイスの媒体から、テーブル・オブ・コンテンツ（ＴＯＣ：Table of Contents）を読み出すために、「READ TOC/PMA/ATIP」リクエストを送信してもよい。ＴＯＣには、媒体のトラック数やそれらの開始位置に関する情報が含まれる。エミュレーション・コンポーネントは、デフォルト設定のエントリー、すなわち、「lead-in」領域直後の単一データ・トラックを返す。デフォルト・ＴＯＣでは、媒体における第１ブロックのデータはアドレス＝０から開始する、と示される。最終トラックの位置は、エミュレーション・コンポーネント内において設定され、バックアップ・アプリケーションなどの自動起動デバイスにおけるデータのために確保される領域を示す。
【００５６】
データ・ソースが自動起動デバイスの読み出しリクエストを発行するとき、エミュレーション・コンポーネントは、自動起動デバイスとして示されているストレージ・デバイス（たとえば、図１の第１論理記録領域１６０）における該当物理アドレスに論理アドレスを自動変換する。更に、自動起動デバイス（ＣＤドライブ）として示されているストレージ・デバイス（たとえば、ＨＤＤのパーティション）のブロック・サイズが異なるときには、エミュレーション・コンポーネントは、自動起動デバイスについて要求されただけのデータをストレージ・デバイスにおいて適切な数のブロックに変換する。
【００５７】
処理過程４００が完了すると、データ・ソースは一つのＬＵＮを自動起動デバイスとして認識し、もう一つのＬＵＮを書き込み可能なデータ記録媒体を含むストレージ・デバイスとして認識し、それぞれと別個に通信可能となるように設定される。そのあと、データ・ソースからデータ・ファイルを選択コピーするステップ３３０、が開始可能となる。上述したように、データ・ソースのオペレーティング・システムは、自動起動デバイスとして示されているＬＵＮのバックアップ・アプリケーションを自動起動し、書き込み可能なデータ記録媒体を含むストレージ・デバイスとして示されているＬＵＮに、データ・ソースにおいて選択されたデータを書き込んでもよい。
【００５８】
上記においては、本発明を特定の実施例について説明しており、本発明の範囲はこれに限られるものではないことは当業者には理解されるところであろう。上記した本発明のさまざまな特徴・特性は、単体で、または組み合わせて用いられても良い。本明細書の思想や範囲から逸脱しない限りにおいて、記述された以外にも多くの環境やアプリケーションにおいて本発明を適用可能である。それゆえ、先述の記述や図面は限定的ではなく例証的に扱われるべきものである。「含む」や「持つ」といった単語は開かれた意味に用いられている。
【図面の簡単な説明】
【００５９】
【図１】本実施例におけるデータ・バックアップ・システムの概要図である。
【図２】変形例におけるデータ・バックアップ・システムの概要図である。
【図３】本実施例において、データ・ソース上におけるデータ・ファイルのバックアップ処理過程を示すフローチャートである。
【図４】本実施例において、データ・バックアップ・システムには２つのデバイスが接続されているとデータ・ソースに認識させる処理過程を示すフローチャートである。
【図１】
2009512033.tif 000003
【図２】
2009512033.tif 000004
【図３】
2009512033.tif 000005
【図４】
2009512033.tif 000006
【国際調査報告】
2009512033.tif 000007
2009512033.tif 000008
2009512033.tif 000009