(57)【要約】  ホストコンピュータシステムは、基準に対応したコンピュータネットワーク内のコンテンツの集計ビューに対する要求を取得する。前記ホストコンピュータシステムは、ネットワークコンピュータシステムに問合せて前記基準に従ってデータオブジェクトを特定する。それぞれの応答するコンピュータシステムは、自身に記憶した指定データオブジェクトの識別集合をホストコンピュータシステムに与える。前記ホストコンピュータシステムは、前記識別集合をマージして、コンテンツの集計ビューをユーザに対して形成する。指定データオブジェクトがネットワークコンピュータに複製される場合、ホストコンピュータシステムは前記指定データオブジェクトのインスタンスを１つ問合せ結果で提供する。結果として、ファイル同期とデータオブジェクトの集計ビューとの並行利用が促進される。指定データオブジェクトが前記ホストコンピュータシステムに記憶される場合、前記ホストコンピュータシステムは、ネットワークコンピュータに前記指定データオブジェクトを問合せることをブロックする。
2009501397.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータネットワークに接続されたローカルコンピュータシステムにおける、自身の上に記憶したコンピュータ実行可能命令を有するコンピュータ読取可能媒体であって、
(a)  基準に従って指定データオブジェクトを特定する要求を取得するステップと、
(b)  前記ローカルコンピュータシステムに記憶された前記指定データオブジェクトであって、かつ前記指定データオブジェクトのローカルな識別集合に対応する前記指定データオブジェクトを決定するステップと、
(c)  前記ローカルコンピュータに記憶されていない前記指定データオブジェクトが前記コンピュータネットワーク内の第１のコンピュータシステムにあるかを問合せるステップと、
(d)  前記第１のコンピュータシステムに記憶された前記指定データオブジェクトの第１の識別集合を取得するステップと、および、
(e)  前記ローカル識別集合および前記第１の識別集合をマージして、マージ識別集合を形成するステップと、
からなる方法を実施するよう構成したコンピュータ実行可能命令を有することを特徴とするコンピュータ読取可能媒体。
【請求項２】
(f)  前記マージ識別集合から結果を生成するステップ
をさらに実施するよう構成したコンピュータ実行可能命令を有することを特徴とする請求項１に記載のコンピュータ読取可能媒体。
【請求項３】
(f)  前記ローカルコンピュータに記憶されていない前記指定データオブジェクトが前記コンピュータネットワーク内の第２のコンピュータシステムにあるかを問合せるステップと、
(g)  前記第２のコンピュータシステムに記憶された前記指定データオブジェクトの第２の識別集合を取得するステップと、
(h)  前記第１の識別集合と前記第２の識別集合とが、複製データオブジェクトの対応する識別子を含む場合、前記複製データオブジェクトに対して識別子を１つだけ保持するステップと、および、
(i)  前記ローカル識別集合、前記第１の識別集合、および前記第２の識別集合をマージしてマージ識別集合を形成するステップと、
をさらに実施するよう構成したコンピュータ実行可能命令を有することを特徴とする請求項１に記載のコンピュータ読取可能媒体。
【請求項４】
前記(f)は、前記結果をユーザに表示するステップをさらに実施するよう構成したコンピュータ実行可能命令を有することを特徴とする請求項２に記載のコンピュータ読取可能媒体。
【請求項５】
前記コンピュータネットワークは第３のコンピュータシステムを含み、
前記コンピュータ実行可能命令は
(f)  前記第３のコンピュータシステムが前記コンピュータネットワーク内においてオンラインである場合、前記第３のコンピュータシステムに記憶された前記指定データオブジェクトの第３の識別集合を取得するステップと、
(g)  前記第３の識別集合を、前記第１の識別集合および前記ローカル識別集合とマージするステップと、
をさらに実施するよう構成したことを特徴とする請求項１に記載のコンピュータ読取可能媒体。
【請求項６】
前記コンピュータネットワークは第３のコンピュータシステムを含み、
前記コンピュータ実行可能命令は
(f)  前記第３のコンピュータシステムがオフラインの場合、キャッシュメモリから前記第３のコンピュータシステムの指定データオブジェクトの第３識別集合を取得するステップ
をさらに実施するよう構成したことを特徴とする請求項１に記載のコンピュータ読取可能媒体。
【請求項７】
前記(a)は、ユーザに対応する一意な識別子と前記指定データオブジェクトとが関連付けられると決定するステップを実施するよう構成したコンピュータ実行可能命令をさらに有することを特徴とする請求項１に記載のコンピュータ読取可能媒体。
【請求項８】
前記ユーザは前記指定データオブジェクトの所有者であることを特徴とする請求項７に記載のコンピュータ読取可能媒体。
【請求項９】
前記結果は、前記指定データオブジェクトの関連位置を特定せずに表されることを特徴とする請求項２に記載のコンピュータ読取可能媒体。
【請求項１０】
(g)  前記結果をソート基準に従ってグループ化するステップ
をさらに実施するよう構成したコンピュータ実行可能命令を有することを特徴とする請求項２に記載のコンピュータ読取可能媒体。
【請求項１１】
前記ソート基準が前記指定データオブジェクトの位置に対応することを特徴とする請求項１０に記載のコンピュータ読取可能媒体。
【請求項１２】
(f)  前記要求を指定イベントの発生に応じて開始するステップ
をさらに実施するよう構成したコンピュータ実行可能命令を有することを特徴とする請求項１に記載のコンピュータ読取可能媒体。
【請求項１３】
(f)  前記指定データオブジェクトを特定するために問合せるリモートコンピュータシステムの数を限定するステップ
をさらに実施するよう構成したコンピュータ実行可能命令を有することを特徴とする請求項１に記載のコンピュータ読取可能媒体。
【請求項１４】
(f)  前記マージ識別集合に基づいてデータオブジェクトを同期するステップ
をさらに実施するよう構成したコンピュータ実行可能命令を有することを特徴とする請求項１に記載のコンピュータ読取可能媒体。
【請求項１５】
(g)  前記結果におけるエントリを強調して、関連データオブジェクトが指定データオブジェクトを特定する以前の結果の生成以降修正されたことを示すステップ
をさらに実施するよう構成したコンピュータ実行可能命令を有することを特徴とする請求項２に記載のコンピュータ読取可能媒体。
【請求項１６】
コンピュータネットワーク内に分散したデータオブジェクトに関してネットワークコンピュータに問合せるコンピュータシステムであって、
前記コンピュータシステムを前記コンピュータネットワーク内の第１のコンピュータシステムと第２のコンピュータシステムと通信可能にするネットワークインタフェースと、
ユーザインタフェースモジュールと、
複製データオブジェクトの識別子を含む複製データ構造と、
ユーザからの基準に従って指定データオブジェクトを特定する要求を前記ユーザインタフェースモジュールを通して受信し、前記第１のコンピュータシステムに記憶した前記指定データオブジェクトの第１の識別集合と前記第２のコンピュータシステムに記憶した前記指定データオブジェクトの第２の識別集合とを取得し、複製データオブジェクトの識別子に従って前記識別集合の１つから対応する複製データオブジェクトの識別子を削除し、前記第１の識別集合と前記第２の識別集合とをマージする、コンテンツ問合せサービスモジュールと
を備えるコンピュータシステム。
【請求項１７】
リモートコンピュータがオフラインか否かに関する状態情報を与えるピア状態データ構造をさらに備え、
前記コンテンツ問合せサービスモジュールは、前記リモートコンピュータがオフラインの場合は前記リモートコンピュータに対する問合せをブロックすることを特徴とする請求項１６に記載のコンピュータシステム。
【請求項１８】
前記リモートコンピュータから以前にアクセスしたデータオブジェクトを記憶するローカルメモリをさらに備え、
前記コンテンツ問合せサービスモジュールは、前記第１の識別集合と前記第２の識別集合とを有する前記指定データオブジェクトの関連する識別集合を前記ローカルメモリから取得することを特徴とする請求項１７に記載のコンピュータシステム。
【請求項１９】
前記ローカルメモリがキャッシュメモリを備えることを特徴とする請求項１８に記載のコンピュータシステム。
【請求項２０】
コンピュータネットワークに接続したローカルコンピュータシステムにおける、自身の上に記憶したコンピュータ実行可能命令を有するコンピュータ読取可能媒体であって、
(a)  基準に従って指定データオブジェクトを特定する要求を取得するステップと、
(b)  前記ローカルコンピュータシステムに記憶された前記指定データオブジェクトであって、かつ前記指定データオブジェクトのローカルな識別集合に対応する前記指定データオブジェクトを決定するステップと、
(c)   前記ローカルコンピュータに記憶されていない前記指定データオブジェクトが第１のコンピュータシステムおよび第２のコンピュータシステムにあるかを問合せるステップと、
(d)  前記指定オブジェクトの第１の識別集合を有する前記第１のコンピュータから第１の応答を受信し、前記指定オブジェクトの第２の識別集合を有する前記第２のコンピュータから第２の応答を受信するステップと、
(e)  前記第１の識別集合および前記第２の識別集合の各々が、対応する複製データオブジェクトの識別子を含む場合、前記複製データオブジェクトに対して識別子を１つのみ保持するステップと、
(f)  前記ローカル識別集合、前記第１の識別集合、および前記第２の識別集合をマージして、マージ識別集合を形成するステップと、
(g)  前記マージ識別集合から結果を生成するステップと、
からなる方法を実施するよう構成したコンピュータ実行可能命令を有することを特徴とするコンピュータ読取可能媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
パーソナルコンピュータの普及とともに、ユーザが複数のマシンを所有または使用することがよくある。例えば、多数のビジネスおよび個人ユーザはデスクトップマシンおよびラップトップコンピュータの両方または他のモバイルクライアント装置を所有または使用する。複数のマシンを所有するまたは複数のマシンへのアクセス権を有するユーザは、様々な時点で様々な目的のため様々なマシンを使用できるが、それらのマシン全ての良く使うファイルまたは他のコンテンツに常に問合せまたはアクセスすることが望まれる。アプリケーション、データベースおよび他のリソースには、共通のマシングループの中でファイルをローミングまたは共有することを支援する機能が従来不足している。
【０００２】
ビジネスおよび他の大規模コンピューティングネットワークで一般的な管理されたコンピューティングネットワーク環境では、コンピューティングネットワークにはプライマリドメインコントローラのような中央ネットワーク局が含まれる。中央ネットワーク局はパスワードとパーミッションとを保守することでユーザアクセスを規制する。中央ネットワーク局は、ローカルに記憶したデータファイルへのアクセスを、許可されたネットワークのユーザに管理制限することもできる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
管理されたコンピューティングネットワークと対照的に、家庭および他の小規模ネットワークで一般的な管理されていないコンピューティングネットワークは、ユーザアクセスを規制するためのプライマリドメインコントローラまたは中央データファイルストレージを一般には組み込まない。その代わり、多数の管理されていないコンピューティングネットワークには、ネットワーク上の様々なコンピューティング装置を使用するためのユーザのセキュリティ権限を規制する観点から、個別のユーザ管理が必要である。さらに、多数の管理されていないネットワークでは、ネットワーク上の様々なコンピューティング装置上に記憶したコンテンツを記憶および呼び出すために、ユーザの関与と知識がさらに必要である。
【０００４】
管理されたネットワークおよび管理されていないネットワークの両方においてより集中したデータストレージを与える１つの試みとして、ネットワークコンピューティング装置の１つの上に共有記憶場所を生成することがある。共有記憶場所は、どのネットワークコンピューティング装置をユーザが現在使用しているかに関わらず、指定されたデータストアとしての役割を果たすことができる。このアプローチはストレージの集約化を試みるが、中央共有記憶場所の位置と名前をユーザが覚える必要がある点で、このアプローチは不十分となる可能性がある。さらに、共有場所が改名、移動または修正される場合、ユーザは所望のコンテンツにアクセスできない可能性がある。
【０００５】
データの記憶場所を定義するローミングユーザプロファイルを保持することは、管理されたネットワーク内のデータファイルをより集中的に記憶するための別のアプローチである。ローミングユーザプロファイルは様々な場所に記憶したデータファイルの検索を支援するが、ローミングプロファイルを記憶および更新することで、コンピュータネットワークの処理リソースおよびメモリリソースに大幅な負荷がかかる。したがって、ネットワークコンピューティング装置の数が増えると、ローミングユーザプロファイルの負荷も増大する。
【０００６】
ローカルファイルシステムの動作をネットワーク上の指定記憶場所にリダイレクトすることは、管理されているネットワークおよび管理されていないネットワークの両方における、データファイルをより集中的に記憶する更なるアプローチである。例えば、ローカル記憶場所のコンテンツに対する要求を自動的にリダイレクトして、コンピューティング装置から離れたネットワーク上の指定記憶場所のコンテンツを取り出すことができる。同様に、データをローカルに記憶するための要求を自動的にリダイレクトして、選択したコンテンツをネットワーク上の指定記憶場所で記憶することができる。本アプローチにより、ユーザが指定場所を知る必要がなく全てのデータ要求を中央記憶場所に向けることができが、本アプローチによりローカルマシン上でのコンテンツの記憶および取り出しが妨げられる。さらに、指定記憶場所が改名、移動または修正される場合、ユーザは所望のコンテンツにアクセスできない。
【０００７】
ユーザは自分がどのマシンを使用している場合でも、所与のファイルの最新版または完全版で作業することを望むものである。
【課題を解決するための手段】
【０００８】
ホストコンピュータシステムは、基準に対応するコンピュータネットワーク内のコンテンツの集計ビューへの要求を取得する。ホストコンピュータシステムは、ネットワークコンピュータシステムに問合せて前記基準に従ってデータオブジェクトを特定する。それぞれの応答するコンピュータシステムは、前記の応答コンピュータに記憶した指定データオブジェクトの識別集合を提供する。ホストコンピュータシステムは前記識別集合をマージして、ユーザに提供するコンテンツの集計ビューを形成する。
【０００９】
本発明の例示的態様によると、指定データオブジェクトがネットワークコンピュータに複製される場合、ホストコンピュータシステムは前記の指定データオブジェクトのインスタンスを１つ、問合せ結果において与える。結果として、ファイル同期とデータオブジェクトの集計ビューとの並行利用を促進することができる。
【００１０】
本発明の別の例示的態様によると、指定データオブジェクトがホストコンピュータシステムに記憶される場合、ホストコンピュータシステムはネットワークコンピュータに前記の指定データオブジェクトを問合せることをブロックする。
【００１１】
本発明のさらに別の例示的態様によると、コンピュータシステムはネットワークコンピュータに対して、コンピュータネットワークに分散したデータオブジェクトに関する問合せを行う。コンピュータシステムにはコンテンツ問合せサービスモジュールが含まれる。コンテンツ問合せサービスモジュールは、指定データオブジェクトを特定する要求を受信し、ネットワークコンピュータに記憶した前記の指定データオブジェクトの識別集合を取得し、複製したデータオブジェクトの複数の識別子を削除し、前記識別集合をマージしてコンテンツの集計ビューをユーザに提供する。
【００１２】
本発明の別の例示的態様によると、ファイルの集計ビューに応じてファイル同期を起動し、コンピュータシステム側の集計リストに出現するファイルを複製することができる。
【００１３】
本要約は、複数の概念から選択したものを簡潔な形で導入するために与える。これらの概念は以下の発明を実施するための最良の形態でさらに説明する。本要約はクレーム主題の主要な特徴または本質的な特徴を特定するようには意図しておらず、クレーム主題の範囲を決定するための支援として使用するようにも意図していない。
【００１４】
前述の本発明の要約および以下の例示的実施態様の詳細説明は、付属図面と関連させて読むとより良く理解される。付属図面は、本請求の発明に関することに限らず例示としての意味を含む。
【発明を実施するための最良の形態】
【００１５】
一般的に説明すると、本発明の態様は、コンピュータネットワーク内の様々なコンピューティング装置に記憶したコンテンツの集計ビューを生成するシステムおよび方法に対応する。本発明の具体的な態様の幾つかは、所定のネットワーク内のコンピューティング装置を自動的に問合せ、マージした問合せの応答のビューを生成するシステムおよび方法に対応する。全てのネットワークコンピューティング装置が前記ネットワークの全ての許可ユーザに対して共通のセキュリティプロファイルを有するコンピューティング装置ネットワークに関して本発明は説明するが、当業界の技術者には、それぞれのコンピューティング装置が許可ネットワークユーザに対して別個のセキュリティプロファイルを保持できるような、代替コンピューティングネットワークで本発明を実装可能であることは明らかである。さらに、当業界の技術者には、本発明の態様の一部または全部を、ユーザアクセスを規制するための中央ネットワーク局を有する管理されたコンピュータネットワークで実施できることは明らかである。従って、本発明に関して説明した実施態様は本質的に例示であって、限定するものとして解釈すべきではない。
【００１６】
図面を参照する。図面において同じ参照番号は同じ要素を指し、適切なコンピューティング環境で実装されるように本発明を示してある。必要ではないが、本発明をプログラムモジュールのように、パーソナルコンピュータにより実行されるコンピュータ実行可能命令の一般的なコンテクストで説明する。一般に、プログラムモジュールには、特定のタスクを実施するかまたは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造、等が含まれる。さらに、当業界の技術者には本発明を他のコンピュータシステム構成とともに実施できることは明らかである。そのコンピュータシステム構成には、ハンドヘルド装置、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能消費家電、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、等が含まれる。本発明を、通信ネットワークを通して接続されるリモート処理装置によりタスクが実施される分散コンピューティング環境で実施することができる。分散コンピューティング環境においては、プログラムモジュールをローカルメモリ記憶装置およびリモートメモリ記憶装置の両方に置くことができる。
【００１７】
以下の説明では、本発明の幾つかの態様に従って安全なネットワークグループ内で使用可能な、汎用目的コンピューティング装置の説明から始める。図１を参照する。汎用目的コンピューティング装置を従来のパーソナルコンピュータ２０の形で示してある。パーソナルコンピュータ２０には処理装置２１、システムメモリ２２、およびシステムバス２３が含まれる。システムバス２３は、システムメモリを含む様々なシステムコンポーネントを処理装置２１に接続する。システムバス２３は任意の数種類のバス構造であることができる。そのバス構造には、メモリバスまたはメモリコントローラ、周辺バス、および任意の様々なバスアーキテクチャを用いるローカルバスが含まれる。システムメモリには読取専用メモリ（ＲＯＭ）２４およびランダムアクセスメモリ（ＲＡＭ）２５が含まれる。基本入出力システム（ＢＩＯＳ）２６は、例えば起動時にパーソナルコンピュータ２０内部の要素間での情報伝送を支援する基本ルーチンを含み、ＲＯＭ２４に記憶される。パーソナルコンピュータ２０にはさらに、ハードディスク６０を読み書きするハードディスクドライブ２７、取り外し可能磁気ディスク２９を読み書きする磁気ディスクドライブ２８、およびＣＤＲＯＭまたは他の光媒体のような取り外し可能光ディスク３１を読み書きする光ディスクドライブ３０が含まれる。
【００１８】
ハードディスクドライブ２７、磁気ディスクドライブ２８、および光ディスクドライブ３０をそれぞれ、ハードディスクドライブインタフェース３２、磁気ディスクドライブインタフェース３３、および光ディスクドライブインタフェース３４によってシステムバス２３に接続する。ドライブおよびそれらの関連するコンピュータ読取可能媒体は、パーソナルコンピュータ２０に対するコンピュータ読取可能命令、データ構造、プログラムモジュールおよび他のデータの不揮発性記憶を与える。本明細書で説明する例示的実施環境はハードディスク６０、取り外し可能磁気ディスク２９、および取り外し可能光ディスク３１を採用するが、当業界の技術者は、コンピュータがアクセス可能なデータを記憶できる他種のコンピュータ読取可能媒体も例示的動作環境で使用可能であることを理解するのはいうまでもない。そのコンピュータ読取可能媒体には、磁気カセット、フラッシュメモリカード、デジタルビデオディスク、ベルヌーイカートリッジ、ランダムアクセスメモリ、読取専用メモリ、ストレージエリアネットワーク、等がある。
【００１９】
多数のプログラムモジュールをハードディスク６０、磁気ディスク２９、光ディスク３１、ＲＯＭ２４またはＲＡＭ２５に記憶することができる。そのプログラムには、オペレーティングシステム３５、１つまたは複数のアプリケーションプログラム３６、他のプログラムモジュール３７、およびプログラムデータ３８が含まれる。ユーザは命令および情報を、キーボード４０およびポインティングデバイス４２のような入力装置を通してパーソナルコンピュータ２０に入力することができる。他の入力装置（図示なし）は、マイクロフォン、ジョイスティック、ゲームパッド、パラボラアンテナ、スキャナ、等を含むことができる。これらおよび他の入力装置は、システムバスに接続されるシリアルポートインタフェース４６を通して処理装置２１に接続されることがよくあるが、パラレルポート、ゲームポートまたはユニバーサルシリアルバス（ＵＳＢ）またはネットワークインタフェースカードのような他のインタフェースで接続してもよい。モニタ４７または他種の表示装置も、ビデオアダプタ４８のようなインタフェース経由でシステムバス２３に接続する。示してはいないが、モニタに加えて、パーソナルコンピュータは一般にスピーカおよびプリンタのような他の周辺出力装置を含む。
【００２０】
パーソナルコンピュータ２０は、リモートコンピュータ４９のような１つまたは複数のリモートコンピュータに対する論理接続を用いてネットワーク環境で動作することができる。リモートコンピュータ４９は別のパーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイスまたは共通ネットワークノードであることができ、一般にパーソナルコンピュータ２０に関連して上述した要素の多くまたは全てを含むが、メモリ記憶装置５０のみ図１に示した。図１に示した論理接続にはローカルエリアネットワーク（ＬＡＮ）５１と広域ネットワーク（ＷＡＮ）５２とが含まれる。上記ネットワーク環境は職場、企業規模のコンピュータネットワーク、イントラネットおよびインターネットにおいて一般的である。
【００２１】
ＬＡＮネットワーク環境で使用するとき、パーソナルコンピュータ２０はネットワークインタフェースまたはアダプタ５３を通してローカルネットワーク５１に接続される。ＷＡＮネットワーク環境で使用するとき、パーソナルコンピュータ２０には一般にモデム５４または、ＷＡＮ５２上で通信を確立する他の手段が含まれる。モデム５４は内部または外部にあることができ、シリアルポートインタフェース４６経由でシステムバス２３に接続される。ネットワーク環境において、パーソナルコンピュータ２０に関連して示したプログラムモジュールまたはその一部を、リモートメモリ記憶装置に記憶することができる。示したネットワーク接続は典型例であって、コンピュータ間の通信リンクを確立する他の手段を使用してもよいことはいうまでもない。
【００２２】
図２は、本発明の例示的態様に従って３つのコンピューティング装置１０２、１０４および１０６を含むコンピュータネットワーク１００を示すブロック図である。コンピューティング装置１０２、１０４および１０６をコンピュータネットワーク１００に対する永続コンテンツに対して利用可能な様々な装置の任意の１つとして組み込むことができる。コンピューティング装置の例はパーソナルコンピューティング装置、ハンドヘルドコンピューティング装置、サーバベースのコンピューティング装置、携帯情報端末、携帯電話、スタンドアロンのメモリ装置、数種のメモリを有する電子装置、等を含むがこれらに限らない。
【００２３】
本発明の例示的実施態様において、それぞれのコンピューティング装置１０２、１０４および１０６はそれぞれの許可ユーザに対して一意なセキュリティ識別子（“ＳＩＤ”）に対応するセキュリティ情報１０８のデータベースを保持する。データベース１０８は、管理者、ユーザ、レビューアなどの１つまたは複数のユーザのグループに対応する一意なユーザＳＩＤと、前記グループに対する一意なセキュリティ識別子とに関連する情報を保持することもできる。本発明の例示的実施態様によると、ユーザＳＩＤを含むユーザのセキュリティプロファイルがコンピューティング装置１０２、１０４、１０６の任意の１つにおいてアクセス可能であるように、セキュリティ情報データベース１０８をコンピューティング装置１０２、１０４、１０６の各々において複製する。
【００２４】
図２に示すように、特定のユーザに対して、第１のコンピューティング装置１０２、“マシンＡ”は第１のファイル１１０、“ファイルＡ”をハードドライブまたは他の大容量記憶装置のようなユーザが何らかの方法でアクセス可能なローカルな記憶場所で保持する。同様に、第２のコンピューティング装置１０４、“マシンＢ”は第２のファイル１１２、“ファイルＢ”を保持し、第３のマシン１０６、“マシンＣ”は第３のファイル１１４、“ファイルＣ”を保持し、両方ともユーザが何らかの方法でアクセス可能である（コンピューティング装置１０２、１０４、および１０６は図１に示すパーソナルコンピュータでもよい）。以下の更なる詳細で説明するように、本発明の例示的実施態様において、それぞれのファイル１１０、１１２、１１４はアクセス制御リスト（“ＡＣＬ”）を保持する。アクセス制御リストは、どのユーザＳＩＤおよびグループＳＩＤが特定のファイルに対してアクセス権限を有するかを示す。さらに、それぞれのファイルＡＣＬは特定のユーザＳＩＤまたはグループＳＩＤが有しうるアクセスタイプに対する制限を示すこともできる。例えば、ファイルＡＣＬは、特定のユーザがファイルにアクセスして前記ファイルを読むことができるが、どのような方法でも前記ファイルを修正できないことを示すことができる。さらに、それぞれのファイルＡＣＬは、ファイルを生成および／またはファイルを最後に編集したユーザのＳＩＤに対応するファイルの現所有者を示すこともできる。しかしながら、従来のデータ管理のアプローチの下では、遠隔でデータをアクセスするためにユーザはデータ片の各々の位置を正確に覚えていなければならないであろう。データの管理をＡＣＬに関して説明するが、当業界の技術者は、セキュリティ暗号化、デジタル著作権管理、等のような追加のデータ管理も利用できることはいうまでもない。
【００２５】
図３−５を参照すると、コンピュータネットワーク１００の３つのコンピューティング装置１０２、１０４、１０６の間での集計ビューの開始と処理とを説明する。図３を参照すると、ユーザによるコンテンツ識別要求をマシンＡ１０２で受信するとプロセスが開始される。特定のユーザまたはユーザアカウントに関連付けた一意なＳＩＤに基づいて、マシンＡ１０２は一意なＳＩＤと、データ選択に使用可能な様々な基準のうち任意のものとに対応するローカルコンテンツ問合せを開始する。基準の例にはキーワード検索、ファイルタイプ、日付範囲が含まれる。ローカルコンテンツ問合せに並行して、またはローカル問合せの処理後に、マシンＡ１０２は自動的にネットワーク１００内のコンピューティング装置１０４、１０６に対して分散コンテンツ要求を開始する。例示的なネットワーク内のそれぞれのコンピューティング装置におけるセキュリティプロファイルがセキュリティプロファイルデータベース１０８を複製したため、マシンＡ１０２は同一のコンテンツ問合せをそれぞれのコンピューティング装置に発行することができる。さらに、図３はネットワーク１００上の全てのコンピューティング装置が分散コンテンツ問合せを受信することを示すが、マシンＡはコンテンツ要求をネットワーク１００内部のコンピューティング装置のサブセットに限定してもよい。
【００２６】
図４を参照すると、コンテンツ要求を受信するそれぞれのコンピューティング装置は前記要求を処理し、一致するコンテンツとそのコンテンツの位置を特定する情報を返す。例えば、例示的な例において、マシンＢ１０４はファイルＢ１１２と、マシンＢのストレージシステム内部のファイルＢ１１２の指定位置とを特定する情報を返す。同様に、マシンＣ１０６はファイルＣ１１４と、マシンＣのストレージシステム内部のファイルＣ１１４の指定位置とを特定する情報を返す。本発明の例示的な実施態様において、それぞれのコンピューティング装置にあるコンテンツは、要求したコンピューティング装置に送信されない。さらに、以下でさらに詳細に説明するように、予め記憶したコンテンツ要求の応答またはキャッシュしたコンテンツ要求の応答を処理することもできる。
【００２７】
問合せの応答をマシンＡ１０２により受信すると、問合せ結果がマージされる。本発明の例示的な実施態様では、コンテンツの位置、発生源を直接参照せずに、マージした結果を全てのマッチしたコンテンツの単一表現として具体化する。しかしながら、マシンＡ１０２は、要求したユーザに対してマージ結果をソート、または編成する追加の命令をユーザから得ることができる。例えば、マシンＡ１０２はマージしたコンテンツをサイズ、日付、発生源、等によりソートすることができる。さらに、マシンＡ１０２は追加のビジュアルキューをマージした結果に関連付けて、現在利用不能なコンピューティング装置に記憶したデータのような特定のデータ片を識別することができる。
【００２８】
図５は図２のコンピュータネットワーク１００のブロック図であり、集計ビューの要求をネットワーク内のコンピューティング装置の各々で処理した結果を示す。図５の目的のため、コンピューティング装置１０２、１０４、１０６の各々が集計ビューの要求を発行することを仮定し、それぞれのコンピューティング装置のコンテンツが修正されていないことを仮定する。マシンＡ１０２に対する集計ビューはファイルＡ１１０、ファイルＢ１１２、およびファイルＣ１１４を示す。ファイルＢとファイルＣとがマシンＡから遠隔に記憶されることを示すために、それらを点線で示してある。同様に、マシンＢ１０４に対する集計ビューはファイルＡ１１０とファイルＣ１１４と同じコンテンツを示す。ファイルＡ１１０とファイルＣ１１４とが遠隔に記憶されることを示すために、それらを点線で示してある。最後に、マシンＣ１０６に対する集計ビューはファイルＡ１１０とファイルＢ１１２同じコンテンツを示す。ファイルＡ１１０とファイルＢ１１２とが遠隔に記憶されることを示すために、それらを点線で示してある。それぞれのコンピューティング装置１０２、１０４、１０６での集計ビューに基づいて、ユーザはその実際の位置を知る必要なく同一コンテンツにアクセスすることができる。さらに、１つまたは複数のコンピューティング装置が利用可能でない場合、コンピューティング装置は利用不能なマシンに記憶したコンテンツを、それが現在利用可能でないことを示す追加のビジュアルキューで示すことができる。
【００２９】
図６は、本発明の態様に従ってコンピューティング装置１０２、１０４、１０６のようなネットワークコンピューティング装置により実装した集計ビュー生成ルーチン６００を示すフロー図である。ブロック６０２で、コンテンツの集計ビューを生成するためのユーザ要求を取得する。本発明の例示的な実施態様において、前記の集計ビューの要求は、任意の種類のアプリケーション、またはモジュール、表示コンテンツに対するユーザのアクセスに直接対応することができる。例えば、集計ビューの要求は、ファイルをソフトウェアアプリケーションプログラム内でオープンする要求に対応することができる。同様に、集計ビューの生成要求はファイルシステム管理プログラムの開始に対応することができる。さらに、集計ビューの要求を、特定のイベントの発生時に自動的に生成することができる。そのようなイベントが1日で発生する時は例えば、コンピューティング装置の電源を入れた後、コンピューティング装置をネットワークに接続した後、等がある。
【００３０】
ブロック６０４で、コンピューティング装置はローカルコンピューティング装置のファイルシステムにコンテンツを問合せて、コンテンツ問合せのマッチングを行う。本発明の例示的実施態様において、コンテンツ問合せはＭｉｃｒｏｓｏｆｔ社のＳＱＬデータベースがサポートする問合せ関数のような、データベース問合せの形態である。データベース問合せには、マッチするコンテンツを決定するための一連の基準が含まれる。本発明の例示的実施態様において、問合せにはユーザＳＩＤセキュリティトークンで識別されるユーザがアクセス可能な、全てのコンテンツとマッチさせる要求が含まれる。さらに問合せは、コンテンツとマッチさせるために使用可能なキーワード検索、ファイルタイプ、日付範囲、等のような任意数の更なる基準を含むことができる。コンピューティング装置の記憶システムは次いで問合せを受理して、問合せ基準にマッチする任意のコンテンツを特定することができる。当業界の技術者は、ユーザＳＩＤのような問合せ文字列の一部または全部を、更なるユーザ入力を必要とせずに自動入力できることはいうまでもない。または、更なる検索基準のような問合せ文字列の一部を、検索の要求時にユーザが指定するか、コンピューティング装置の構成の一部として事前に定義することができる。
【００３１】
ブロック６０６で、追加のコンピューティング装置がネットワーク１００に接続されているか否かを決定するテストを行う。本発明の例示的実施態様において、前記の追加のコンピューティング装置に対するテストは、ネットワークに接続した全てのコンピューティング装置をポーリングすることに対応することができる。または、前記の更なるコンピューティング装置に対するテストを、システム管理者またはユーザにより定義した特定のコンピューティング装置のサブセットに限定することができる。ネットワーク内部に追加のコンピューティング装置が存在する場合、ブロック６０８で、ユーザに関連するコンピューティング装置は前記の追加のコンピューティング装置に対しコンテンツ問合せを送信する。本発明の例示的実施態様において、ユーザのセキュリティプロファイル、例えばＳＩＤはそれぞれのコンピューティング装置に複製されるので、コンテンツ問合せは同一であることができる。または、ユーザのセキュリティプロファイルが変化する場合、それぞれのコンテンツ問合せは様々なユーザセキュリティ識別子に適応するために一意であってよい。ブロック６０６および６０８を、ネットワーク１００の内部、またはコンピューティング装置のサブセット内部の全てのコンピューティング装置に問合せるまで繰り返す。本発明の例示的実施態様によると、問合せ結果を要求コンピューティング装置に対し、コンテンツ識別子、およびユニフォームネームロケーション（“ＵＮＣ”）パスのようなコンテンツを位置づけるパスの形で送信する。上述のように、コンテンツを、要求したコンピューティング装置に移動する必要はない。さらに、要求したコンピューティング装置はコンテンツのコピーを作成する必要はない。さらに、本発明の例示的実施態様において、コンピューティング装置は、リモートコンピュータから以前に受信したコンテンツ要求の応答のコピーを、ＲＡＭまたはキャッシュのようなメモリに保持することができる。新規のコンテンツ要求をリモートコンピューティング装置から発行することに加えて、コンピューティング装置は、同一のリモートコンピューティング装置に対して以前に受信したコンテンツ要求を呼び出し、前記の以前に受信したコンテンツ要求の処理を開始することができる。新規のコンテンツ要求を受信すると、コンピューティング装置は応答を更新し、新規の結果を後の使用のために記憶することができる。
【００３２】
ネットワークコンピューティング装置の全てを問合せると、決定ブロック６１０で、現在利用可能でない以前のネットワークコンピューティング装置があるか否かを決定するテストを行う。当業界の技術者は、任意数のコンピューティング装置が、例えば電源が切られている、無線通信範囲外である、または現在はネットワーク接続につながれていない、といったように一時的に利用不能であることがありうることを理解するのはいうまでもない。現在利用可能でない以前にネットワーク化したコンピューティング装置がある場合、ブロック６１２でコンピューティング装置は、前記の利用不能なコンピューティング装置に対して予め記憶したコンテンツ要求の結果を呼び出すよう試みる。
【００３３】
コンピューティング装置の全てを問合せると、ブロック６１４で、要求コンピューティング装置はコンテンツ問合せの結果を集計リストとしてマージする。本発明の例示的実施態様において、コンピューティング装置はマージした結果をフィルタまたは処理することができる。さらに、コンピューティング装置は後の集計リスト生成で使用するために、マージした結果をアーカイブ、キャッシュまたは記憶することができる。ブロック６１６で、マージしたコンテンツ識別子のビューを生成し、操作用にユーザに表示する。本発明の例示的実施態様において、マージした結果をユーザに対して、コンピューティング装置の全てからのコンテンツを含めたフラットなビューで表示する。さらに、前記の例示的実施態様において、最初はコンテンツの発生源をユーザに表示しない。しかしながら、当業界の技術者には、要求したコンピューティング装置が更なるフィルタリングまたは編成を実施して、マッチしたコンテンツをユーザに表示できることは明らかである。例えば、要求したコンピューティング装置はマッチしたコンテンツを、データサイズ、データ型、タイトル、日付基準、等のような様々な属性によりソートすることができる。さらに、コンテンツ発生源の位置を、初期ビューの一部またはユーザ要求上で利用可能な追加データの一部のいずれかとして、ユーザに直接与えることができる。さらに、コンピューティング装置の１つが利用不能である場合は、マージしたビューを透過アイコンのような特別なビジュアルキューでユーザに示して、コンテンツが利用不能なコンピューティング装置に記憶されている可能性があるが現在はアクセス不能であることを示すことができる。別の例示的実施態様において、コンピューティング装置は以前に記憶した集計ビューのレコードを利用して、それを現在の集計ビューと比較することができる。コンピューティング装置は次いで、どのファイルが修正、削除、または追加されたかを示すことができる。ブロック６１８でルーチン６００が終了する。
【００３４】
図７Ａ−７Ｄは本発明の例示的実施態様に従って、集計リストビューにおけるマージコンテンツ識別子を表示するための様々なスクリーンディスプレイを示すブロック図である。図７Ａを参照すると、スクリーンディスプレイ７００は第１のディスプレイ部分７０２を含むことができる。第１のディスプレイ部分７０２により、ユーザは関心のある様々なファイル位置を選択することができる。スクリーンディスプレイ７００は第２のディスプレイ部分７０４を含むこともできる。第２のディスプレイ部分７０４は、選択したファイルスペース内に記憶した特定のコンテンツを表示する。図２−５の以前の例を参照すると、ユーザが「マイドキュメント」に対応するグラフィカルアイコン７０６を操作することまたは現在のユーザに対応する全てのファイルの参照要求を開始することで集計ビューの要求を開始したならば、コンピューティング装置はルーチン６００を実行したであろう。結果の３つのファイル１１０、１１２、１１４をその後、ユーザがコンテンツ発生源を知る必要なしに、ユーザに対して第２のディスプレイ部分７０４に表示したであろう。対照的に、従来のファイルシステムの管理下では、ユーザはそれぞれのコンピューティング装置のファイルシステムに個々にアクセスして、関心のあるそれぞれの特定のファイル位置を識別する必要があったであろう。例えば、ファイル１１０、１１２、および１１４がそれぞれアイコン７０８、７１０および７１２に対応する場合、ユーザは一般にそれぞれのアイコンに別個にアクセスして、集計ビューが生成した同じファイルを参照する必要があったであろう。
【００３５】
図７Ｂを参照すると、スクリーンディスプレイ７００の第２部分にある１つまたは複数のコンテンツ識別子は、ユーザを支援するビジュアルキューを含むことができる。例えば、コンピューティング装置が現在ネットワークに接続されておらず、要求したコンピューティング装置が予めキャッシュまたはアーカイブしたコンテンツ要求を利用した場合、コンテンツをファイル１１２に対して示したように視覚的に区別することができる。本発明の例示的実施態様において、利用不能なコンテンツを点線の境界および／または準透過的な方法で表示することができる。別の例において、以前の集計ビュー要求から修正されたコンピューティング装置が決定したコンテンツを、ファイル１１４に対して示したようにユーザに対して強調することができる。本発明の例示的実施態様において、データの修正部分をスクリーンディスプレイ７００上で強調することができる。
【００３６】
図７Ｃおよび７Ｄを参照すると、コンピューティング装置はマージしたマッチングコンテンツ要求を自動的にソートすることができる。さらに、コンピューティング装置はユーザ入力を取得して前記のマージしたマッチングコンテンツ要求をソートすることができる。本発明のある例示的実施態様において、前記のマージしたマッチングコンテンツをコンテンツ位置に従ってグループ化することができる。図７Ｃを参照すると、スクリーンディスプレイ７００は位置の同一性を示す追加の識別子７１４、７１６、７１８を含むことができる。更なる記憶位置のレベルをスクリーンディスプレイ７００上に表示することもできる。本発明の別の実施態様において、マージしたマッチングコンテンツを様々なデータ属性に従ってグループ化することができる。図７Ｄを参照すると、スクリーンディスプレイは、データのタイトル、ストレージ内のデータサイズおよびデータファイルの種類を表示するリストビューを含むことができる。データが図７Ｄに示すようにサイズでソートされたならば、ファイルＡ７２０がリストの先頭にあり、ファイルＣ７２２およびファイルＢ７２４がそれに続いたであろう。本実施態様において、ユーザはスクリーンディスプレイ７００を操作することでソート基準を変更することができる。図７Ｃおよび７Ｄは様々なソート例を示すが、当業界の技術者は更なるソート基準、およびまたは、スクリーンディスプレイを本発明の範囲内に含めうることを理解するのはいうまでもない。
【００３７】
図８を参照して、集計ビュー内のコンテンツを操作するためのルーチン８００を説明する。ブロック８０２で、集計ビュー内に表示したコンテンツに対する操作要求を取得する。当業界の技術者には、コンテンツ操作はホストのソフトウェアアプリケーションでデータファイルを開くこと、コンテンツを修正すること、コンテンツを削除すること、コンテンツをコピーすることまたはコンテンツを移動することを含みうることは明らかである。ブロック８０４で、要求するコンピューティング装置はセキュリティ識別子をローカルセキュリティ情報データベース１０８から取得する。
【００３８】
決定ブロック８０６で、選択したコンテンツをローカルに記憶するか否かを決定するテストを行う。コンテンツをローカルに記憶する場合、ブロック８０８で、コンピューティング装置はローカルセキュリティ情報で要求を処理し、選択したコンテンツを操作する権限をユーザが有するか否かを決定する。コンテンツがローカルに記憶されない場合、決定ブロック８１０で、要求データのコピーをコンピューティング装置によりローカルに保持するか否かを決定するテストを行う。本発明の例示的実施態様において、コンピューティング装置は以前にアクセスしたドキュメントのコピーを、コンピューティング装置のキャッシュのような、揮発性メモリに保持することができる。上述のように、ファイルのコピーがローカルに利用可能である場合、ルーチン８００はブロック８０８に進んでローカルセキュリティ情報で要求を処理する。要求ファイルのコピーがローカルに保持されない場合、ブロック８１２で、要求したコンピューティング装置はコンテンツを操作するための要求とともに特別なユーザのセキュリティ情報をトークンとして、実際に前記コンテンツを記憶するコンピューティング装置に送信する。受信コンピューティング装置は次いで前記のセキュリティトークンを利用して前記要求を処理し、応答を送信する。ブロック８１４で、送信コンピューティング装置は受信コンピューティング装置から前記応答を受信する。前記操作がブロック８０８またはブロック８１２で許可される場合、ユーザはブロック８１６で前記コンテンツを操作することができる。ルーチン８００はブロック８１８で終了する。
【００３９】
前述のようにネットワークコンピュータシステム（例えば、図２に示すネットワーク１００）に分散して記憶したコンテンツ（データオブジェクト）を問合せることに加えて、ユーザは数個のコンピュータシステムを用いることがよくある。ユーザは例えば、自宅または職場にデスクトップコンピュータを有し、旅行時にユーザが使用するラップトップコンピュータを有するかもしれない。上記の場合、ユーザは或るコンピュータシステム上でファイルを生成または修正することができる。ユーザが（ユーザが或るコンピュータシステム上で生成または修正した）ファイルを別のコンピュータシステムと同期したいことがよくある。以下の本発明の例示的実施態様は、関連するユーザシナリオに対してデータオブジェクトの同期をサポートする。
【００４０】
図９は、本発明の例示的実施態様に従って、ファイルまたは他のコンテンツをピアツーピアで同期するシステムおよび方法が動作可能な環境を示す。ユーザは、例えばデスクトップコンピュータのような第１のマシン９０２、およびラップトップまたは他のモバイルコンピュータのような第２のマシン９１４を含む一連の複数のコンピュータ、クライアント、または他のマシンをビジネス、個人用、または他の使用目的に使用またはアクセスすることができる。例えば、ネットワーク可能携帯電話、ネットワーク可能電子メールクライアント、ネットワーク可能携帯情報端末、ネットワーク可能メディアプレイヤー、または他のハードウェアを含む他のコンピュータ、クライアントまたは他のマシンを同期することができる。示した動作において、第１のマシン９０２および第２のマシン９１４を、ユニバーサルシリアルバス接続、ＦｉｒｅＷｉｒｅ（登録商標）接続、ＢｌｕｅＴｏｏｔｈＴＭ接続、ＷｉＦｉ（登録商標）接続、あるいは他の有線、無線、光学あるいは他のチャネルまたは接続のような接続９１８を経由で接続することができる。本発明の例示的実施態様によると、接続９１８をローカルエリアネットワーク（ＬＡＮ）内にあるように継続して維持することができるか、または一部の実施態様では複数の関与するマシンの間で断続的に接続することができる。
【００４１】
本発明の例示的実施態様によると、第１のマシン９０２はグラフィカルユーザインタフェース、コマンドラインインタフェース、音声作動式または他のインタフェースのようなユーザインタフェース９０４を生成および提示して、ユーザがアプリケーション、ファイル、オペレーティングシステムおよび他のリソースをアクセス可能とすることができる。示された例示的実施態様によると、ユーザは同期インタフェース９０６にアクセスして、ファイルまたは他の同期機能を作動、選択および管理することができる。同期インタフェース９０６を第１のマシン９０２のオペレーティングシステム内部にホストするか、または更なる実施態様では１つまたは複数のアプリケーション、モジュールまたは他のリソースに組み込むことができる。示された実施態様によると、同期インタフェース９０６はユーザに対し、第１のマシン９０２および第２のマシン９１４、あるいは他のマシンまたはターゲットの間の同期イベントを特定、作動または管理するための選択肢およびオプションを提示することができる。一般に、これらの同期アクティビティは選択または発見したファイル、フォルダ、ディレクトリ、ボリューム、ディスクまたは他のコンテンツ、情報、ストレージまたはメディアを関与するマシン間で同期することに関わることができる。
【００４２】
本発明の実施態様によると、ユーザは同期インタフェース９０６を操作して、関与するマシンまたはシステムを渡って同期またはローミングするための同期ファイル集合９２６を選択することができる。同期ファイル集合９２６は例えば、第１のマシン９０２に記憶したローカルファイル集合９１２の内部、および第２のマシン９１４に記憶した別のローカルファイル集合９１６の内部で特定したファイルまたは他のコンテンツ、あるいは他のファイルまたは情報を含むことができる。同期ファイル集合９２６を、第１のマシン９０２内にホストした同期エンジン９０８により特定、記憶および管理することができる。同期エンジン９０８は第１のマシン９０２内に保持したファイルシステムログ９１０と通信して、同期ファイル集合９２６における同期またはローミング、あるいはそれ以外に指定されたファイル、フォルダ、ディレクトリ、ボリュームまたは他のコンテンツあるいは情報の状態を追跡または記録することができる。例示的実施態様において、第２のマシン９１４またはその他または関与するマシンは、同一または同様のロジックを同期エンジン９０８、ファイルシステムログ９１０および他のファイル管理リソースの別インスタンスの形で同様に保持することができ、それらの各々を実施態様においてオペレーティングシステムまたは他のリソース内に再度ホストすることができる。
【００４３】
本発明の例示的実施態様によると、同期ファイル集合９２６を構成してユーザが最もよく使用するディレクトリ、フォルダ、または他のソース、例えばマイドキュメント、マイミュージック、デスクトップ、お気に入り、あるいは他のフォルダまたはソースといったフォルダを含めることもできる。よく使用するディレクトリ、フォルダまたは他のソースを構成して、それらを同期できることを同期エンジン９０８または他のリソースに通知し、ユーザがこれらソースと同期目標とを受理または強調することで簡単に選択または起動することができる。フォルダ、ディレクトリまたは他のソースを、例えば同期システムに対してグローバルであるフォルダまたは他のコンテンツといった、一人のユーザに固有でないものを同期するために選択または構成することができる。前記の同期システムに対してグローバルであるフォルダまたは他のコンテンツには、タスク指向のプロジェクトフォルダ、Ｃ：＼ｕｓｅｒｓ＼ｐｕｂｌｉｃの形のフォルダといったパブリックフォルダ、または他のフォルダ、ディレクトリまたは他のソースが含まれる。本発明のこれらおよび他の実施態様において、そのコンテンツを手動で指定することに加えて、またはその代替手段として、フォルダ、ディレクトリおよび他のソースを任意の１つまたは複数のマシン上の探索ロジックにより自動的に発見することができる。同様に、本発明の幾つかの実施態様において、アドレスまたは識別子を目的のマシンに手動登録することに加えて、またはその代替手段として、関与するマシン集合に含める候補となりうるマシンを、ローカルエリアネットワークに接続したマシンを検出可能なロジックのような探索ロジック、またはその他を用いて自動的に検出することもできる。
【００４４】
同期管理の目的で、第１のマシン９０２、第２のマシン９１４またはその他における同期エンジン９０８は第１のマシン９０２、第２のマシン９１４または他のマシンまたはハードウェアの接続状態を検出して、これらマシンが接続９１８または他の接続またはチャネル経由で互いまたは他の関与するハードウェアとの間の接続性を享受する時点を決定することができる。例えば、同期エンジン９０８は第１のマシン９０２、第２のマシン９１４または他の関与するマシンの利用可能な通信ポートを通して、必要に応じてファイアウォールリソースをトンネリングして、接続を確立することができる。
【００４５】
例えばＵＳＢまたは無線接続を通して接続性を確立すると、第１のマシン９０２における同期エンジン９０８は関与するマシンに権限を与えて、ファイル同期が正しく開始されていることを保証することができる。認証接続が検証されると、第１のマシン９０２における同期エンジン１０８は関与するマシン間の自動ファイルローミング、イメージングまたは同期アクティビティを開始することができる。例えば、第１のマシン９０２における同期エンジン９０８は同期ファイル集合９２６にアクセスして、第１のマシン９０２上のどのファイル、フォルダ、ディレクトリ、ボリュームまたは他のローカルコンテンツを第２のマシン９１４に送信する必要があるかを決定でき、同様に第２のマシン９１４上にあるどの類似コンテンツを第１のマシン９０２に送信して、これらマシン間のコヒーレントまたは一貫したファイル集合、あるいは他の情報を維持する必要があるかを決定することができる。
【００４６】
第１のマシン９０２における同期エンジン９０８は、従って第１のマシン９０２のファイルシステムログ９１０、または第２のマシン９１４のファイルシステムログ９１０を検証して、関与するマシン上のファイルおよび他のコンテンツの状態、動作または履歴を検証することができる。同期ファイル集合９２６に関する状態、動作、履歴または他のメタデータまたは情報は、ファイルの直近の編集、ダウンロードまたはアクセスを示す日付スタンプ情報だけでなく、ファイルサイズ、ファイルタイプ、ファイルの以前のバージョンまたは送信に関する情報、および他の情報のような更なる情報をも含むことができる。
【００４７】
関与するマシン上のファイルおよび他のコンテンツの状態に関する本情報および他の情報にアクセスすることで、第１のマシンの同期エンジン９０８は１つまたは複数の位置における同期ファイル集合９２６の位置を削除、コピー、編集、再フォーマット、変更するか、または前記同期ファイル集合９２６を操作することができる。これらのアクションを実施して、所与のファイルの同一バージョンが第１のマシン９０２、第２のマシン９１４および他の関与するマシンにおいて維持されることを保証することができる。本発明の例示的実施態様によると、第１のマシン９０２における同期エンジンはデルタ同期ロジックを処理ファイルに適用して、最新の同期または他の時点から変化したファイルまたはファイルの一部分のみを、関与するマシン間でローミングさせることができる。企業または他の組織ＬＡＮを含む本発明の例示的実施態様において、システム管理者は第１のマシン９０２または他のマシンの同期エンジン９０８を設定して、或る特定のユーザへの或る特定のファイルの伝播を制限するか、または他の同期制御を適用することができる。パーミッションを適用するとき、データが全ての関与するマシンを通して正しく移動して全ての必要な目標に対する接続パスを保証するように、パーミッションを準備すべきであることに留意されたい。本発明の実施態様に従う他の構成が可能である。
【００４８】
本発明の例示的実施態様によると、ユーザ、管理者またはオペレーティングシステム設定は同期管理を設定し、第１のマシン９０２の同期エンジン９０８、第２のマシン９１４の同期エンジン９０８、または他のリソースにより実行されるファイル転送および他のアクティビティを設定して、バックグラウンドタスクとして所望の動作優先度レベルで実行させること、あるいはブロードバンド接続性が確立または再確立されるまでファイル転送アクティビティを一時停止および再開させること、あるいは他の時点または他の条件下で他のアクションを行わせることができる。本発明の例示的実施態様によると、第１のマシン９０２、第２のマシン９１４または他の関与するマシン、クライアント、装置またはハードウェアを例えば、ドメインネームサービス（ＤＮＳ）または他のアドレスまたは識別子により特定することができる。第１のマシン９０２の同期エンジン９０８、第２のマシン９１４の同期エンジン９０８または他の同期エンジンのインスタンスまたはロジックは自動探索ロジックを採用して、他の関与するマシンがインターネットまたは他のネットワーク上に現れる時点を検出することができ、その結果、マシンはインターネットまたは他の接続性を享受する間の任意の時点で他のマシンとの同期アクティビティを再開することができる。
【００４９】
ユーザは、自身の関与マシン集合の間で複製、ローミングまたは同期したいファイルまたは他のソースコンテンツを、任意の１つまたは複数のこれらマシンから制限なしに選択的または任意に選択することができる。さらに、第１のマシン９０２、第２のマシン９１４および任意の他の関与するマシンはグループベースで同期ファイル集合９２６を共有することができるが、本発明の同期動作を実行するためにこれらマシンを直接または同時に相互接続する必要はない。むしろ、同期アクティビティは接続、ネットワークおよびそれぞれのマシンに対する他の条件あるいはマシンのサブグループまたはサブネットワークに依存して自動的および日和見的に発生することができる（上記の例示的実施態様において、それにもかかわらず、関与するマシン集合は完全なブリッジネットワークまたは完全な接続ネットワークを、マシン、マシンのサブグループまたはサブネットワークが異なる時点、異なる場所において、または異種のネットワーク接続を用いて接続する場合でも、全体または蓄積ベースで実現することができる）。望むならば、ユーザは第１のマシン９０２、第２のマシン９１４上にある全てのファイルを指定するかあるいは別の関与するマシンにローミングまたは同期することを選択して、これらソースファイルのバックアップに影響を及ぼすことができる。
【００５０】
図１０の本発明の例示的実施態様によると、第１のマシン９０２の同期ロジック９０８、第２のマシン９１４の同期ロジックまたは他のロジックまたはインスタンスは、バージョン管理ロジック１０２０をファイル転送および更新の実行に関連させて適用することができる。示した例示的実施態様において、同期ロジック９０８が２つのファイルインスタンス間のバージョン衝突を検出すると（例えば、古いファイルが、同じファイルの新しいバージョンを上書きする準備ができている）、バージョン管理ロジック１０２０はユーザにその衝突を解決するためのダイアログまたは問合せを提示して、旧ファイルを改名または移動し、ファイルの別バージョンを置換するか、または他のアクションを起こす。他のバージョンベースの衝突および他の衝突を検出することができる。幾つかの実施態様において、ユーザに例外処理向けのリッチなインタフェースを提示すること以外に、またはそれに加えて、バージョン管理ロジック１０２０は自動ルールまたは処理を衝突ファイルまたはデータに適用することもできる。その自動ルールまたは処理には例えば、衝突ファイルを編集または保存するための比較機能を実行すること、または異なるバージョンを処理することがある。
【００５１】
図１１にあるような本発明の例示的実施態様によると、同じ自動的な方法で３つ以上のマシンがファイル同期および関連機能に関与できることに再度留意されたい。示したマシン集合は少なくとも第１のマシン９０２、第２のマシン９１４、第３のマシン１１２２、第４のマシン１１２４または更なるマシン、クライアント、コンピュータまたは装置を含んで、選択したファイルまたは他のコンテンツを同期することができる。例示的実施態様においてマシンを図９に示す接続９１８のような有線接続を通して、またはネットワーク可能携帯電話に対するエアーインタフェースを含む他の有線、無線または光接続により直接接続することができる。しかしながら、ユーザは所望のファイルの選択的同期を、比較的少ない構成力で、およびインターネットバックアップサーバのような中間ストレージ、ロジックまたは制御リソースに対する必要性または依存性無く、開始することができる。本発明の実施態様はしたがって、ファイルローミング動作の信頼性、速度および相互運用性を高めることができる。
【００５２】
図１２は本発明の例示的実施態様に従って、全体のファイル共有および同期処理を示す。ステップ１２０２で処理を開始することができる。ステップ１２０４で、ユーザは第１のマシン９０２を開始することができ、第１のマシン９０２にログを書き込むことができる。第１のマシン９０２の例として、パーソナルコンピュータ、ラップトップまたはモバイルコンピュータ、ネットワーク可能携帯電話、または他のクライアント、マシン、ハードウェアまたは装置がある。ステップ１２０６で、ユーザは一連のソースファイル、フォルダ、ディレクトリ、または他のソースファイル、ソース場所、あるいは他の情報またはコンテンツを選択または活性化して、第１のマシン９０２または他の場所にあるファイル集合を強調することができる。ステップ１２０８で、ユーザは一連の動作中コンピュータまたは他のマシンの中で自動的に同期および管理されるように、同期ファイル集合９２６を指定することができる。ステップ１２１０で、１つまたは複数の指定マシンのネットワーク接続状態を同期エンジン９０８または他のロジックにより自動的に発見することができる。ステップ１２１２で、記憶した１つまたは複数の目標マシンの指定子をユーザが選択するか、または同期エンジン９０８が取り出して、ファイルまたは他のデータを同期することができる。
【００５３】
ステップ１２１４で、ＵＳＢまたは他の有線または無線接続のような接続９１８を確立し、第２のマシン９１４または他のコンピュータ、マシン、クライアントまたはハードウェアのような１つまたは複数の選択マシンに対する接続権限を与えることができる。ステップ１２１６で、同期エンジン９０８または他の制御ロジックは第１のマシン９０２および第２のマシン９１４の間で、同期ファイル集合９２６のファイル転送または他のコンテンツ送信を開始することができる。ステップ１２１８で、第１のマシン９０２または第２のマシン９１４の何れかあるいは両方の同期エンジン９０８は、デジタル著作権管理または保護ロジックを同期ファイル集合９２６または送信されている他のコンテンツに適用することができる。任意の１つまたは複数の関与するマシンの同期エンジン９０８は、音楽または他のメディアコンテンツのようなファイルまたはコンテンツを複製するための権限またはライセンスを自動的に探索することができる。認証が拒否される場合、稼働中の同期エンジン９０８は１つまたは複数の不正ファイルを対象マシンから削除し、ユーザに不正コピーを除去したことを通知するか、または他のアクションを取ることができる。
【００５４】
ステップ１２２０で、第１のマシン９０２または第２のマシン９１４の何れかあるいは両方の同期エンジン９０８は、バージョン管理ロジック１０２０を同期ファイル集合９２６または送信されている他のコンテンツに適用して、矛盾したバージョンのファイルのインスタンス、新バージョンにコピーされようとしている旧バージョンのファイルのインスタンスを捕捉することができ、または他のバージョン衝突を検出することができる。バージョン管理ロジック１０２０はユーザにダイアログを提示してユーザによるバージョン衝突の好ましい処理を得ることができる。その処理には例えば、最新バージョンのファイルをローミングすること、旧バージョンのファイルを改名またはバックアップすること、他のファイルを衝突しているバージョンで置換すること、または他のアクションを取ることがある。ステップ１２２２で、１つまたは複数の関与するマシンにおける同期エンジン９０８または他のロジックは、その対応ローカルマシンまたはハードウェアにおけるファイルシステムログ９１０を更新することができる。ステップ１２２４で、処理を繰り返すこと、以前の処理地点に戻ること、更なる処理地点にジャンプすることまたは終了することができる。
【００５５】
本発明の例示的実施態様において、ユーザはネットワークコンピュータシステムにデータオブジェクトを問合せ、選択したデータオブジェクトの同期をネットワークコンピュータシステムにおける複数コンピュータ上で開始することができる（データオブジェクトは独立してアドレス可能なユニット情報である。データオブジェクトの例には、ファイル、フォルダ、ディレクトリおよび電子媒体が含まれる）。後述するように、本発明の例示的実施態様は、複数コンピュータ上でデータオブジェクトを複製可能なユーザシナリオをサポートする。前記の複数コンピュータにおいて、ユーザはネットワークコンピュータシステムに指定データオブジェクトを問合せる。
【００５６】
図１３Ａ−Ｃは、本発明の実施態様に従うコンピュータネットワークにおける分散ストレージでの問合せ結果に関するシナリオを示す。図１３Ａ−Ｃにおけるシナリオは、パーソナルコンピュータ１３０１、１３０３、１３０５、および１３０７から成るコンピュータネットワークに対応する。例として、コンピュータ１３０７のユーザは、ユーザが自宅から自身のネットワークデスクトップ、およびラップトップで作業した日である２００４年６月１７日に作成のファイルを問合せる。本例において、ファイルＡおよびＢはユーザがコンピュータ１３０１上に生成したドキュメントであり、ファイルＣおよびＤはユーザがコンピュータ１３０３上に生成したドキュメントであり、ファイルＥおよびＦは音楽コンテンツを有するファイルであり、ファイルＸ、ＹおよびＺ（それぞれ、コンピュータ１３０１、１３０３および１３０５と関連する）は２００４年６月１７日とは異なる日に生成された。
【００５７】
図１３Ａを参照すると、コンピュータ１３０１はファイルＡおよびＢを記憶し、コンピュータ１３０３はファイルＣおよびＤを記憶し、コンピュータ１３０５はファイルＥおよびＦを記憶する。コンピュータ１３０７のユーザは、２００４年６月１７日に生成したデータオブジェクトの識別子をネットワーク１３００に問合せて得るための要求を生成する。コンピュータ１３０７は次いで問合せ要求を日付基準（２００４年６月１７日）でコンピュータ１３０１、１３０３および１３０５に送信する。結果として、コンピュータ１３０７はファイルＡおよびＢに対する識別子を有する応答をコンピュータ１３０１から受信し、ファイルＣおよびＤに対する識別子を有する応答をコンピュータ１３０３から受信し、ファイルＥおよびＦの識別子を有する応答をコンピュータ１３０５から受信する。コンピュータ１３０７は応答からの指定データオブジェクトに対する識別子を結合し、問合せ結果をユーザに提示する。
【００５８】
図１３Ｂに示したシナリオは、ファイルＥ、およびＦをコンピュータ１３０１に複製したことを除いて図１３Ａと同様である（ファイルの複製は例えば図１２で前述した）。従って、コンピュータ１３０１はファイルＡ、Ｂ、Ｅ、およびＦを記憶し、コンピュータ１３０３はファイルＣおよびＤを記憶し、コンピュータ１３０５はファイルＥおよびＦを記憶する。コンピュータ１３０７のユーザは２００４年６月１７日に生成したデータオブジェクトの識別子をネットワーク１３００に問合せて得るための要求を生成する。コンピュータ１３０７は次いで問合せ要求を日付基準（２００４年６月１７日）でコンピュータ１３０１、１３０３および１３０５に送信する。結果として、コンピュータ１３０７はファイルＡ、Ｂ，Ｅ、およびＦに対する識別子を有する応答をコンピュータ１３０１から受信し、ファイルＣ、およびＤに対する識別子を有する応答をコンピュータ１３０３から受信し、ファイルＥ、およびＦの識別子を有する応答をコンピュータ１３０５から受信する。コンピュータ１３０７は応答からの指定データオブジェクトに対する識別子を結合（マージ）し、問合せ結果をユーザに提示する。しかしながら、図１４でさらに詳細に説明するように、コンピュータ１３０７はコンピュータ１３０１により特定したファイルＥ、およびＦがコンピュータ１３０７により特定したファイルＥ、およびＦと同一であることを決定する。結果として、ユーザに表示される問合せ結果はファイルＥ、およびＦを一度だけ含む。したがって、問合せ結果はファイルＡ、Ｂ、Ｅ、Ｆ、Ｃ、Ｄ、Ｅ、およびＦではなく、ファイルＡ，Ｂ、Ｃ、Ｄ、Ｅ、およびＦを示す。複製ファイルは一般に対象マシンに渡って同一名を有する。しかしながら、本発明の実施態様は、異なる名前を有する複製ファイルをサポートする。
【００５９】
図１３Ｃに示したシナリオは、ファイルＥ、およびＦがコンピュータ１３０１に複製され、ファイルＡがコンピュータ１３０７に複製されていることを除いて図１３Ａと同様である。従って、コンピュータ１３０１はファイルＡ、Ｂ、Ｅ、およびＦを記憶し、コンピュータ１３０３はファイルＣおよびＤを記憶し、コンピュータ１３０５はファイルＥ、およびＦを記憶し、コンピュータ１３０７はファイルＡを記憶する。コンピュータ１３０７のユーザはネットワーク１３００に問合せて２００４年６月１７日に生成したデータオブジェクトの識別子を得るための要求を生成する。コンピュータ１３０７は次いで問合せ要求を日付基準（２００４年６月１７日）でコンピュータ１３０１、１３０３、および１３０５に送信する。しかしながら、コンピュータ１３０７は既に複製ファイルＡを有し、コンピュータ１３０１にファイルＡを問合せない（１実施態様においては、コンピュータ１３０７が結果を問合せると、コンピュータ１３０７はそのキャッシュした結果を最初に検証する。コンピュータ１３０７がファイルを発見する場合、コンピュータ１３０７は、コンピュータ１３０７上に存在しないファイルに対してのみマシン１３０１が問合せられるように、マシン１３０１に対する外部問合せを修正する）。結果として、コンピュータ１３０７はファイルＢ，ＥおよびＦに対する識別子を有する応答をコンピュータ１３０１から受信し、ファイルＣおよびＤに対する識別子を有する応答をコンピュータ１３０３から受信し、ファイルＥおよびＦに対する識別子を有する応答をコンピュータ１３０５から受信する。コンピュータ１３０７は応答からの指定データオブジェクトに対する識別子を結合し、問合せ結果をユーザに提示する。
【００６０】
図１４は、本発明の例示的態様に従って、分散ストレージを有するネットワークコンピュータへの問合せをサポートするフロー図１４００を示す。ステップ１４０１で、ユーザのコンピュータ（例えば、コンピュータ１３０７）はユーザインタフェース（例えば、図１５に示すユーザインタフェース１５０７）を通して問合せ要求を受信する。ステップ１４０３で、ユーザのコンピュータ（ローカルコンピュータ）はユーザのコンピュータ上の複製データオブジェクトを決定し、ユーザのコンピュータに記憶した複製データオブジェクトに関してネットワークコンピュータ（リモートコンピュータ）には問合せない。結果として、問合せの実行性能を高めることができる。ステップ１４０５で、ユーザのコンピュータはネットワークコンピュータに残りのデータオブジェクトを問合せる。ユーザのコンピュータはステップ１４０７でネットワークコンピュータから応答を受信する。ステップ１４０９で、指定データオブジェクトを一度だけ特定する。ステップ１４１１は、ネットワークコンピュータに記憶した指定データオブジェクトの識別子とユーザのコンピュータに記憶したデータオブジェクトの識別子とをマージする。ステップ１４１１で決定した問合せ結果を、ユーザインタフェースを通してユーザに表示することができる。
【００６１】
ネットワークコンピュータシステムにおける指定オブジェクトの単一ビューを与えるプロセス１４００に加えて、ネットワークコンピュータに記憶されない指定オブジェクトをネットワークコンピュータに複製できるように、プロセス１４００を拡張することができる。例えば、図１３Ｃに示すように、問合せ結果はファイルＡ、Ｂ、Ｃ、Ｄ、ＥおよびＦを示し、ファイルＡのみをコンピュータ１３０７に記憶する。次いで、ファイルＢ、Ｃ、Ｄ、ＥおよびＦもコンピュータ１３０７に記憶されるように、ファイル同期を開始することができる。
【００６２】
図１５は、本発明の例示的実施態様に従って、ネットワーク１５１３を通して分散ストレージを有するネットワークコンピュータを問合せるコンピュータシステム１５００を示す。本発明の例示的実施態様において、コンピュータシステム１５００は図１に示すようなコンピュータプラットフォームに基づく。コンピュータシステムはコンテンツ問合せサービスモジュール１５０１、複製データ構造１５０３、ピア状態データ構造１５０５、ユーザインタフェース１５０７、ネットワークインタフェース１５０９、およびキャッシュメモリ１５１１を備える。ユーザインタフェース１５０７はユーザ入力装置（例えば、キーボード）およびユーザ出力装置（例えば、表示装置）と連動することができる。
【００６３】
ユーザがユーザインタフェース１５０７を通して要求するとき、コンテンツ問合せサービスモジュール１５０１は図１４に示すようにプロセス１４００を実行する。コンテンツ問合せサービスモジュール１５０１はネットワークコンピュータに問合せ、ネットワークインタフェース１５０９およびネットワーク１５１３を通してネットワークコンピュータから応答を受信する。ネットワークコンピュータがオフラインであることをコンテンツ問合せサービスモジュール１５０１が決定する場合、コンテンツ問合せサービスモジュール１５０１はオフラインネットワークコンピュータに対する問合せの送信を控える。上記の場合、コンテンツ問合せサービスモジュール１５０１は、オフラインネットワークコンピュータから直近にアクセスしたデータオブジェクトに関してキャッシュメモリ（ローカルの揮発性メモリ１５１１）を問合せることができる。
【００６４】
また、コンテンツ問合せサービスモジュール１５０１は複製データオブジェクトに関する情報を複製データ構造１５０３に記憶する。例えば、コンピュータシステム１５００上に記憶したファイルもネットワークコンピュータに複製される場合、コンテンツ問合せサービスモジュール１５０１はネットワークコンピュータに複製データオブジェクトを問合せない。本発明の実施態様において、コンテンツ問合せサービスモジュール１５０１は検索インデックスを使用してファイルの存在場所を決定する。ファイルがローカルに複製されている場合、ローカルマシン上の検索インデックスはファイル名を含むであろう。
【００６５】
コンテンツ問合せサービスモジュール１５０１が、応答をネットワークコンピュータから受信するとき、コンテンツ問合せサービスモジュール１５０１は選択データオブジェクトの識別子をマージして、ユーザインタフェース１５０７を通して問合せ結果をユーザに表示することができる。
【産業上の利用可能性】
【００６６】
当業界の技術者にはいうまでもないが、コンピュータシステムを制御する命令を含む関連コンピュータ読取可能媒体を有するコンピュータシステムを利用して、本明細書で開示した例示的実施態様を実装することができる。
【００６７】
主題を構造的特徴、およびまたは、方法論的動作に固有な言語で説明したが、添付請求項で定義した主題は上述の特定の特徴または動作に必ずしも限定されないことは理解されるべきである。むしろ、上述の特定の特徴、および動作は請求項を実装する形態の例として開示するものである。
【図面の簡単な説明】
【００６８】
【図１】本発明の様々な態様の実装に使用可能な、従来の汎用目的デジタルコンピューティング環境の例の機能ブロック図である。
【図２】本発明の例示的態様に従って、ローカルに様々なコンテンツを記憶する３つのコンピューティング装置を含んだ管理されていないコンピュータネットワークのブロック図である。
【図３】本発明の例示的態様に従って、ユーザデータ要求とコンテンツ問合せとを開始することを示す図２のコンピュータネットワークのブロック図である。
【図４】本発明の例示的態様に従って、ネットワークコンピューティング装置から、マッチするコンテンツ識別子の返却およびマージを示す図２のコンピュータネットワークのブロック図である。
【図５】本発明の例示的態様に従って、コンピュータネットワークのそれぞれのコンピューティング装置での集計ビュー要求を処理した結果を示す図２のコンピュータネットワークのブロック図である。
【図６】本発明の例示的態様に従って、ネットワークコンピューティング装置により実装した集計ビュー生成ルーチンを示すフロー図である。
【図７Ａ】本発明の例示的態様に従って、集計ビューに対応するマージしたコンテンツ識別子を表示するためのスクリーン画面を示すブロック図である。
【図７Ｂ】本発明の例示的態様に従って、集計ビューに対応するマージしたコンテンツ識別子を表示するためのスクリーン画面を示すブロック図である。
【図７Ｃ】本発明の例示的態様に従って、集計ビューに対応するマージしたコンテンツ識別子を表示するためのスクリーン画面を示すブロック図である。
【図７Ｄ】本発明の例示的態様に従って、集計ビューに対応するマージしたコンテンツ識別子を表示するためのスクリーン画面を示すブロック図である。
【図８】本発明の例示的態様に従って、ネットワークコンピューティング装置により実装した集計ビューリモートドキュメント処理ルーチンを示すフロー図である。
【図９】本発明の例示的態様に従って、自動的なピアツーピアのファイル同期のシステムおよび方法が動作可能な環境である。
【図１０】本発明の例示的態様に従って、ファイル同期と関連させて使用可能なファイルバージョン管理ロジックを示すインタフェースである。
【図１１】本発明の或る特定の例示的態様に従って、ファイルのピアツーピア同期のシステムおよび方法が複数の関与するマシンで動作可能な環境である。
【図１２】本発明の例示的態様に従って、ファイルローミングおよび同期処理全体のフローチャートである。
【図１３Ａ】本発明の実施態様に従うコンピュータネットワークにおける分散ストレージに関する問合せ結果に関するシナリオである。
【図１３Ｂ】本発明の実施態様に従うコンピュータネットワークにおける分散ストレージに関する問合せ結果に関するシナリオである。
【図１３Ｃ】本発明の実施態様に従うコンピュータネットワークにおける分散ストレージに関する問合せ結果に関するシナリオである。
【図１４】本発明の例示的態様に従って、分散ストレージに関してネットワークコンピュータへの問合せをサポートするフロー図である。
【図１５】本発明の例示的態様に従って、分散ストレージに関してネットワークコンピュータに問合せるコンピュータシステムである。
【図１】
2009501397.tif 000003
【図２】
2009501397.tif 000004
【図３】
2009501397.tif 000005
【図４】
2009501397.tif 000006
【図５】
2009501397.tif 000007
【図６】
2009501397.tif 000008
【図７Ａ】
2009501397.tif 000009
【図７Ｂ】
2009501397.tif 000010
【図７Ｃ】
2009501397.tif 000011
【図７Ｄ】
2009501397.tif 000012
【図８】
2009501397.tif 000013
【図９】
2009501397.tif 000014
【図１０】
2009501397.tif 000015
【図１１】
2009501397.tif 000016
【図１２】
2009501397.tif 000017
【図１３Ａ】
2009501397.tif 000018
【図１３Ｂ】
2009501397.tif 000019
【図１３Ｃ】
2009501397.tif 000020
【図１４】
2009501397.tif 000021
【図１５】
2009501397.tif 000022