(57)【特許請求の範囲】
【請求項１】
プロセッサ実行可能命令を格納するコンピュータ可読記憶媒体であって、前記プロセッサ実行可能命令は、クライアント装置により実行されると、前記クライアント装置に、
レジストリリストと構成リストとからＭＲＵクライアント文書リストを形成させ、前記レジストリリストは複数のエントリを有し、該複数のエントリの各々は、クライアント装置からユーザにより使用されたユーザ文書と関連付けられ、前記ユーザ文書が前記ＭＲＵクライアント文書リストに留まるべきか否かを示すピン状態を含み、前記構成リストは複数のエントリを有し、該複数のエントリの各々は、ファイルホスティングサーバに格納されたユーザにより使用された文書と関連付けられ、前記ファイルホスティングサーバは、ユーザが複数の追加クライアント装置から前記ファイルホスティングサーバに格納された文書を使用するのを可能にし、
前記レジストリリストを前記構成リストと共に合併リストに結合させ、
前記レジストリリスト内のエントリを前記構成リスト内の対応するエントリと照合させ、
前記合併リスト内の各エントリに関連付けられたより古い最終変更タイムスタンプに基づき、１つの一致するエントリを削除させ、前記ピン状態が前記ユーザ文書が前記ＭＲＵクライアント文書リストに留まるべきであると示す場合、前記最終変更タイムスタンプに拘わらず、前記１つの一致するエントリを削除させない、
命令を有するコンピュータ可読記憶媒体。
【請求項２】
前記クライアント装置に、
前記ユーザにより前記クライアント装置で使用された文書が前記ファイルホスティングサーバに格納されたことを前記ファイルホスティングサーバに通知させる、
命令を有する請求項１に記載のコンピュータ可読記憶媒体。
【請求項３】
前記クライアント装置に、
前記構成リストにリストアップされた文書に対して前記クライアント装置から行われた更新を、前記ファイルホスティングサーバに通知させる、
命令を有する請求項１に記載のコンピュータ可読記憶媒体。
【請求項４】
前記クライアント装置に、
前記ファイルホスティングサーバから情報を受信すると、前記ＭＲＵクライアント文書リストを形成させる、
命令を有する請求項１に記載のコンピュータ可読記憶媒体。
【請求項５】
ユーザに１又は複数のユーザ文書を提供するステップであって、少なくとも１つのユーザ文書はファイルホスティングサーバに格納され、前記ファイルホスティングサーバは、前記ユーザに複数のクライアント装置から前記ファイルホスティングサーバに格納された前記ユーザ文書を使用可能にするよう構成される、ステップと、
レジストリリストを選択されたクライアント装置に提供するステップであって、前記レジストリリストは複数のエントリを有し、該複数のエントリの各々は、前記選択されたクライアント装置から前記ユーザにより使用されたユーザ文書と関連付けられ、前記ユーザ文書がＭＲＵクライアント文書リストに留まるべきか否かを示すピン状態を含む、ステップと、
構成リストを前記ファイルホスティングサーバに保持するステップであって、前記構成リストは、複数のエントリを有し、該複数のエントリの各々は、任意のクライアント装置から前記ユーザにより使用された前記ファイルホスティングサーバに格納されたユーザ文書と関連付けられる、ステップと、
前記レジストリリストと前記構成リストとからＭＲＵクライアント文書リストを形成するステップと、
前記レジストリリストと前記構成リストを結合して合併リストを形成するステップと、
前記レジストリリストからのエントリを前記構成リスト内の対応するエントリと照合するステップと、
前記合併リスト内の各エントリに関連付けられたより古い最終変更タイムスタンプに基づき、１つの一致するエントリを削除するステップであって、前記ピン状態が前記ユーザ文書が前記ＭＲＵクライアント文書リストに留まるべきであると示す場合、前記最終変更タイムスタンプに拘わらず、前記１つの一致するエントリを削除させない、ステップと、
を有するコンピュータにより実施される方法。
【請求項６】
前記ユーザにより前記選択されたクライアント装置で使用された第１のユーザ文書が前記ファイルホスティングサーバに格納されたことを前記ファイルホスティングサーバに知らせるステップと、
を有する請求項５に記載の方法。
【請求項７】
前記ファイルホスティングサーバに格納された第１のユーザ文書が、前記構成リストから削除され及び前記選択されたクライアント装置で前記ユーザにより使用されたことを前記ファイルホスティングサーバに知らせるステップと、
を有する請求項５に記載の方法。
【請求項８】
ピン状態及び最終変更タイムスタンプにより前記合併リストを並べ替えるステップと、
最終変更タイムスタンプによりピン留め解除されたエントリを並べ替えるステップと、
前記合併リストの一番上から閾数のエントリを用いて、前記ＭＲＵクライアント文書リストを形成するステップと、
を有する請求項５に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
最近使用した（most  recently  used：ＭＲＵ）文書リストは、ユーザが最近開いた又は保存した文書へのリンクを含む。ＭＲＵ文書リストは、最近使用された文書にアクセスする便利なメカニズムである。ＭＲＵ文書リストにリンクを格納することにより、ユーザは文書を開くために文書の場所へとナビゲートする必要がない。ユーザは、ＭＲＵ文書リスト内のリンクをクリックし、文書の場所を知らずに文書に素早くアクセスできる。
【０００２】
ユーザ文書は、ウェブブラウザを通じてアクセス可能なファイルホスティングサーバに遠隔に格納されても良い。ユーザは、ウェブ対応のコンピューティング装置を通じてファイルホスティングサーバに格納された文書にアクセスできる。各コンピューティング装置は、コンピューティング装置にログオンしている間に、ユーザがファイルホスティングサーバから最近使用した文書、及び他の場所を含むＭＲＵ文書リストを有する。しかしながら、コンピューティング装置内のＭＲＵ文書リストは、ユーザが別のコンピューティング装置から使用した、ファイルホスティングサーバに格納された最近使用した文書を正確に反映しないかも知れない。
【発明の概要】
【課題を解決するための手段】
【０００３】
この要約は、詳細な説明で後述する概念の選択を簡単な形式で紹介する。この要約は、請求の範囲の主要な特徴又は基本的特徴を特定するものではなく、請求の範囲の範囲を限定するものでもない。
【０００４】
ユーザは、ウェブアクセス可能なファイルホスティングサーバに文書を格納し、任意のウェブアクセス可能なクライアント装置を用いて該文書にアクセスしても良い。ファイルホスティングサーバは、ユーザ毎に、ＭＲＵサーバ文書リストを有する。ＭＲＵサーバ文書リストは、ファイルホスティングサーバに格納されたユーザの最近使用した文書をリストアップする。クライアント装置は、ＭＲＵクライアント文書リストを有する。ＭＲＵクライアント文書リストは、ファイルホスティングサーバ及び／又はクライアント装置に格納されたユーザの最近使用した文書を有する。各クライアント装置は、ユーザが他のクライアント装置からファイルホスティングサーバに格納されたユーザ文書にアクセスしたことに気付かなくても良い。よって、特定のクライアント装置にあるＭＲＵ文書リストは、ユーザが最近使用した文書を正確に反映しない可能性がある。ユーザの最近使用した文書の統一見解を、複数のウェブアクセス可能なコンピューティング装置に渡り維持するために、ＭＲＵ同期エンジンが提供され、ＭＲＵ文書リストを同期化する。
【０００５】
一実施形態では、ＭＲＵ同期エンジンは、ファイルホスティングサーバから構成リストを得て、クライアント装置のレジストリ内に格納された文書エントリと比較する。構成リストは、ファイルホスティングサーバに格納された、ユーザの最近使用した文書に関する構成データを含む。レジストリは、ユーザによりクライアント装置から使用された文書に関連するデータを格納する、クライアント装置にあるデータベースである。ＭＲＵ同期エンジンは、構成リストとレジストリリストの両方の中の情報を分析し、どの文書が最近使用されたかを決定する。さらに、ＭＲＵ同期エンジンは、ファイルホスティングサーバに、ＭＲＵサーバ文書リストを新しく保つために必要な更新について通知する。
【０００６】
上述の及び他の特徴及び利点は、以下の詳細な説明を読み関連する図面を参照することにより明らかになる。上述の全体的説明及び以下の詳細な説明の両方は、例示及び説明のためであり、請求の範囲を限定しないことが理解される。
【図面の簡単な説明】
【０００７】
【図１】ＭＲＵクライアント文書リストをＭＲＵサーバ文書リストと自動的に同期する例示的なシステムを示す。
【図２】ＭＲＵクライアント文書リストをＭＲＵサーバ文書リストと自動的に同期する別の例示的なシステムを示す。
【図３】ＭＲＵ文書リストを自動的に同期化する例示的な方法を示すフローチャートである。
【図４】ＭＲＵ文書リストを同期化する動作を実行する例示的な方法を示すフローチャートである。
【図５】レジストリリスト内のエントリの例示的なレイアウトである。
【図６】構成リスト内のエントリの例示的なレイアウトである。
【図７】レジストリリスト及び構成リスト内のエントリを分析する例示的な方法を示すフローチャートである。
【図８】合併リストを分析する例示的な方法を示すフローチャートである。
【図９】更新ＭＲＵクライアント文書リストを生成する例示的な方法を示すフローチャートである。
【図１０】例示的な動作環境を示すブロック図である。
【図１１】例示的なクライアント装置を示すブロック図である。
【図１２】例示的なファイルホスティングサーバを示すブロック図である。
【発明を実施するための形態】
【０００８】
種々の実施形態は、共通文書セットを参照する複数のＭＲＵ文書リストを自動的に同期化する技術を対象とする。ＭＲＵ文書リストは、ユーザが最近使用した文書のリストである。ユーザは、ユーザが任意のウェブ対応クライアント装置からアクセスできるウェブアクセス可能なファイルホスティングサーバに文書を格納しても良い。ファイルホスティングサーバ及びウェブ対応コンピューティング装置の各々は、ユーザが最近アクセスしたファイルホスティングサーバに格納されたユーザ文書をリストアップするＭＲＵ文書リストを有する。ユーザは、複数のクライアント装置を用いて、ファイルホスティングサーバからのユーザ文書にアクセスしても良い。各クライアント装置は、他のクライアント装置からのこれらの文書へのユーザアクセスに気付かなくても良い。よって、特定のクライアント装置にあるＭＲＵ文書リストは、ユーザが最近使用した文書を正確に反映しない可能性がある。ファイルホスティングサーバに格納された最近使用した文書の統一見解を、複数のウェブ対応クライアント装置に渡り維持するために、これらの装置に渡りユーザのＭＲＵ文書リストを同期化するメカニズムが提供される。
【０００９】
ＭＲＵ同期エンジンは、クライアント装置内で用いられ、ＭＲＵクライアント文書リストをＭＲＵサーバ文書リストと同期化する。ＭＲＵクライアント文書リストは、ユーザによりクライアント装置から使用された最近使用した文書へのリンクを有する。ＭＲＵサーバ文書リストは、任意のクライアント装置を通じてアクセスされたファイルホスティングサーバに格納されたユーザの最近使用した文書へのリンクを有する。
【００１０】
ＭＲＵ同期エンジンは、ファイルホスティングサーバから構成リストを得て、クライアント装置のレジストリリストと比較する。構成リストは、ＭＲＵサーバ文書リスト内の各文書に関する構成データを有する。レジストリリストは、クライアント装置にある、ユーザにより使用された各文書に関する構成データを有する。ＭＲＵ同期エンジンは、２つのファイル内の情報を分析し、どの文書がユーザの最近使用した文書かを決定する。さらに、ＭＲＵ同期エンジンは、ファイルホスティングサーバに、クライアント装置からのユーザ使用に起因する、ＭＲＵサーバ文書リストに対して必要な更新について通知する。次に、この同期化を実行する技術を更に詳細に説明する。
【００１１】
図１は、ＭＲＵ文書リストを自動的に同期化する例示的なシステム１００を示す。システム１００は、通信ネットワーク１０４を介してファイルホスティングサーバ１０６に結合される１又は複数のクライアント装置１０２ａ、１０２ｂ（集合的に１０２として参照する）を有する。クライアント装置１０２は、パーソナルコンピュータ、サーバ、ノート型コンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、パーソナルデジタルアシスタント、スマートフォン、セルラ電話機、ページャ、メッセージング装置、タブレットコンピュータ、ハンドヘルドコンピュータ等のような任意の種類のコンピューティング装置であっても良い。
【００１２】
ファイルホスティングサーバ１０６は、サーバ、ウェブサーバ、ネットワークサーバ、記憶サーバ、ファイル共有サーバ等のような任意の種類のウェブアクセス可能なファイル記憶システムであっても良い。ファイルホスティングサーバ１０６の例は、Windows(登録商標)  Live  Sky  Drive、Google  Docs、Box.net等である。通信ネットワーク１０４は、クライアント装置１０２とファイルホスティングサーバ１０６との間の通信を実現する。通信ネットワーク１０４は、任意の通信プロトコルを用いて有線又は無線ネットワークのような任意の種類の通信媒体を具現する。
【００１３】
各クライアント装置１０２は、レジストリ１０８、レジストリリスト１０９、ＭＲＵ同期エンジン１１０、ＭＲＵクライアント文書リスト１１２、文書フォルダ１１４を有しても良い。ファイルホスティングサーバ１０６は、ＭＲＵ  ＡＰＩ（application  programming  interface）ハンドラプロシジャ１１６、構成リスト１１７、ファイルシステム１１８を有しても良い。ファイルシステム１１８は、ユーザ１２０毎に、ファイルホスティングサーバに格納されたユーザ文書及びユーザの最近使用した文書へのリンクを含むＭＲＵサーバ文書リスト１３２を有するフォルダを有しても良い。
【００１４】
各クライアント装置１０２は、オペレーティングシステムにより用いられる構成データ及び設定を格納する中央レポジトリであるレジストリ１０８を有しても良い。幾つかの実施形態では、レジストリ１０８は、ファイルの各サブセットがレジストリハイブとして参照されるファイルの階層的フォルダ様構造として構成されても良い。各レジストリハイブは、ファイルシステム内のフォルダに似たレジストリキーと関連付けられる。
【００１５】
ファイルがアクセス又は再構成される度に、エントリは、文書種類と関連付けられたレジストリキー内に置かれる。例えば、レジストリキー「HKEY_CURRENT_USER\Software\Microsoft\Office\１２.０\Word\FileMRU」はＷｏｒｄ文書に関するエントリを格納し、レジストリキー「HKEY_CURRENT_USER\Software\Microsoft\Office\１２.０\PowerPoint\FileMRU」はＰｏｗｅｒＰｏｉｎｔファイルに関するエントリを格納し、レジストリキー「HKEY_CURRENT_USER\Software\Microsoft\Office\１２.０\Excel\FileMRU」はＥｘｃｅｌファイルに関するエントリを格納する。
【００１６】
留意すべきことに、用語「レジストリ」はＷｉｎｄｏｗｓ（登録商標）に基づくオペレーティングシステムの環境で一般的に用いられるが、ここに開示する技術は、特定のオペレーティングシステム又はレジストリ構成に限定されない。限定ではないがＬｉｎｕｘ(登録商標)又はＵｎｉｘ(登録商標)に基づくオペレーティングシステム等で用いられる構成ファイルのような、同様の機能を提供する他の技術も用いることができる。
【００１７】
レジストリリスト１０９は、クライアント装置１０２からユーザが使用し又はアクセスする全ての文書に関する構成データを有する。レジストリリスト１０９は、クライアント装置、ファイルホスティングサーバ、他のリモート記憶場所に格納される文書についてのエントリを有しても良い。
【００１８】
ＭＲＵ同期エンジン１１０は、特定のＭＲＵクライアント文書リストをＭＲＵサーバ文書リストと同期化するアプリケーションであっても良い。ＭＲＵ同期エンジン１１０は、ソフトウェアで実施されても良く、ソフトウェアコンポーネント、プログラム、コンピュータプログラム、アプリケーションプログラム、システムプログラム、機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシジャ、ソフトウェアインタフェース、命令セット、コンピューティングコード、コードセグメント、プロセス、スレッド、及びそれらの任意の組合せとして実装されても良い。代替で、ＭＲＵ同期エンジン１１０は、別のアプリケーションの一部であっても良く、別個に実行するスレッド又はプロセスとして実装されても良い。実施形態は、ＭＲＵ同期エンジンの特定種類のソフトウェア実装に限定されない。
【００１９】
ＭＲＵクライアント文書リスト１１２は、ユーザが最近使用した最近使用した文書のリストである。ＭＲＵクライアント文書リスト内の各文書の名称は、文書のファイルの場所へのショートカットである。ＭＲＵクライアント文書リスト１１２は、クライアント装置１０２にローカルに格納された文書及びファイルホスティングサーバ１０６に格納された文書をリストアップする。１又は複数の実施形態では、文書は、Ｗｏｒｄ文書、ＰｏｗｅｒＰｏｉｎｔ文書、及び／又はＥｘｃｅｌ文書であっても良い。各文書はファイルとして構成され、用語「文書」及び「ファイル」は本願明細書で同義的に用いられる。ＭＲＵクライアント文書リスト１１２は、特定のオペレーティングシステム内で「Recently  Used」フォルダ、「My  Recent  Documents」フォルダ、「Recent  Items」フォルダ等として参照されても良い。
【００２０】
ＭＲＵクライアント文書リスト１１２は、ユーザが使用する文書を追跡するアプリケーションにより維持されても良い。アプリケーションは、ユーザが最後に文書にアクセスした時間を示すタイムスタンプに基づきＭＲＵクライアント文書リストに文書を追加しても良い。ユーザアクセスは、文書を開く又は文書を保存することを含んでも良い。アプリケーションは、文書の状態（例えば、削除された、ピン留めされた（pinned））を再構成するために、ＭＲＵ変化を追跡しても良い。ユーザは、文書が文書を「ピン留めする」ことにより最近アクセスされた場合でも、ＭＲＵクライアント文書リストにある文書を保持することを選択しても良い。文書を「ピン留めする」ことにより、ユーザは、文書の使用に関係なく、該文書をＭＲＵクライアント文書リストに保持するという自身の選好を示す。ユーザは、一度ピン留めされた文書を「ピン留め解除」し、それによりそのアクセス時間にＭＲＵクライアント文書リストにその文書を配置することを決定させても良い。ユーザは、文書がアクセス可能なままであるが、ＭＲＵクライアント文書リストから文書を「削除する」ことを選択しても良い。削除した文書への後のアクセスは、その文書をＭＲＵクライアント文書リストに戻しても良い。
【００２１】
ＭＲＵクライアント文書リスト１１２内にリストアップされた文書は、文書の実施の場所へのリンクにより表される。リンクは、文書の実際の場所からその文書を開くことなく、その文書に素早くアクセスするために用いられる。
【００２２】
文書フォルダ１１４は、クライアント装置１０２にローカルに格納された文書と共に、別個のショートカットフォルダ１４２内にファイルホスティングサーバ１０６に格納されたユーザ文書をリストアップする。図１の文書フォルダは各文書の名称を示すが、文書名は実際には文書の場所へのリンクであり、或いはショートカットとして表される。
【００２３】
クライアント装置１０２Ａに示すように、ユーザＡは、クライアント装置１０２Ａにローカルに格納された文書worddoc１.doc１３８を含む文書フォルダ１１４Ａを有する。文書フォルダ１１４Ａは、ファイルホスティングサーバ１０６に格納されたユーザ文書presentation１.ppt１２４へのリンクを含むサブフォルダ、ファイルホスティングサーバショートカット１４２を有する。クライアント装置１０２ＡにあるユーザＡのＭＲＵクライアント文書リスト１１２Ａは、worddoc１.doc１３８及びpresentation１.ppt１２４を有する。
【００２４】
クライアント装置１０２Ｂに示すように、ユーザＡは、クライアント装置１０２Ｂにローカルに格納された文書worddoc３.doc１４４を含む文書フォルダ１１４Ｂを有する。文書フォルダ１１４Ｂは、ファイルホスティングサーバ１０６に格納されたユーザ文書presentation１.ppt１２４及びworddoc２.doc１２８へのリンクを含むサブフォルダ、ファイルホスティングサーバショートカット１４８を有する。クライアント装置１０２ＢにあるユーザＡのＭＲＵクライアント文書リスト１１２Ｂは、presentation１.ppt１２４,worddoc２.doc１２８及びworddoc３.doc１４４を有する。
【００２５】
ファイルホスティングサーバ１０６は、１又は複数のＭＲＵ  ＡＰＩ（application  programming  interface）ハンドラプロシジャ１１６、構成リスト１１７、ファイルシステム１１８を有する。ＭＲＵ同期エンジン１１０は、１又は複数のＡＰＩを通じてファイルホスティングサーバ１０６と相互作用する。ＡＰＩは、リモートプロシジャ呼び出しとして実装されても良い。リモートプロシジャ呼び出しは、送信側が特定のパラメータでローカルプロシジャを実行又は呼び出しているように見えるメッセージングの形式である。リモートプロシジャ呼び出しのハンドラは、別個のアドレス空間で動作する。ＭＲＵ同期エンジン１１０は、１又は複数のＡＰＩを用いて、ＭＲＵサーバ文書リスト１３２に対して必要な更新をファイルホスティングサーバ１０６に通知する。ＭＲＵ  ＡＰＩハンドラプロシジャ１１６は、ＡＰＩプロシジャ呼び出しで用いられる特定のパラメータをＭＲＵ同期エンジン１１０から受信し、それらを適宜処理する。ＭＲＵ  ＡＰＩハンドラプロシジャ１１６は、ファイルホスティングサーバ１０６内に置かれる。
【００２６】
構成リスト１１７は、ＭＲＵサーバ文書リスト１３２内にリストアップされた各文書についてのエントリを含むファイルである。各エントリは、全てのクライアント装置１０２にある文書の使用を含む文書の構成に関する構成データを有する。
【００２７】
ファイルホスティングサーバ１０６にあるファイルシステム１１８は、ユーザ毎にファイルフォルダを有しても良い。図１に示すように、ファイルホスティングサーバ１０６は、ユーザ文書及びＭＲＵサーバ文書リスト１３２を格納するサブフォルダ１２２を有するユーザＡのためのファイルフォルダを有する。ＭＲＵサーバ文書リスト１３２は、ファイルホスティングサーバ１０６に格納された文書からユーザの最近使用した文書をリストアップするフォルダである。ＭＲＵサーバ文書リスト１３２は、presentation１.ppt１２４及びworddoc２.doc１２８を有する。ユーザは、ＭＲＵクライアント文書リストに関して上述したのと同じ方法で、ＭＲＵサーバ文書リスト１３２にある文書を保持することを選択しても良い。つまり、ユーザは、上述と同じ方法で、ＭＲＵサーバ文書リスト１３２から文書を「ピン留めし」、「ビン留め解除し」、及び「削除する」しても良い。
【００２８】
図１に示すように、File  Hosting  Server１２２と名付けられたサブフォルダは、ユーザＡの文書presentation１.ppt１２４及びworddoc２.doc１２８を格納する。これらの文書１２４、１２８をファイルホスティングサーバ１０６に格納することにより、ユーザＡは、クライアント装置と別個のウェブインタフェースからこれらの文書にアクセスできる。ユーザＡは、クライアント装置１０２ＡにあるＭＲＵクライアント文書リストを用いて、ファイルホスティングサーバ１０６に格納された第１のファイルpresentation１.ppt１２４を開いても良い。クライアント装置ＡにあるＭＲＵクライアント文書リスト１１２Ａを通じてpresentation１.ppt１２４にアクセスすることにより、ユーザＡは、ウェブブラウザを通じてpresentation１.ppt１２４にアクセスすることを回避できる。同様に、ユーザＡは、クライアント装置１０２ＢにあるＭＲＵクライアント文書リスト１１２Ｂを用いて、ファイルホスティングサーバ１０６に格納された文書presentation１.ppt及びworddoc２.docを開いても良い。
【００２９】
ユーザのＭＲＵサーバ文書リスト１３２は、ファイルホスティングサーバ１０６に格納された文書について、ユーザの最近使用した文書を反映すべきである。ＭＲＵクライアント文書リスト１１２は、特に文書がユーザにより別のクライアント装置で使用されたとき、それらの文書の最近の使用を反映しない可能性がある。このため、各クライアント装置１０２は、ＭＲＵサーバ文書リスト１３２を特定のクライアント装置１０２と関連付けられたユーザのＭＲＵクライアント文書リスト１１２と同期する。
【００３０】
例えば、図１に示すように、ＭＲＵクライアント文書リスト１１２Ａは、クライアント装置１０２ＡにあるユーザＡの最近使用した文書がworddoc１.doc１３８及びpresentation１.ppt１２４であることを示す。presentation１.ppt１２４はファイルホスティングサーバ１０６に格納される。しかしながら、ＭＲＵクライアント文書リスト１１２Ｂは、クライアント装置１０２ＢにあるユーザＡの最近使用した文書が、ファイルホスティングサーバ１０６に格納されているpresentation１.ppt１２４及びworddoc２.doc１２８を含むことを示す。ユーザＡのＭＲＵサーバ文書リスト１３２Ａは、presentation１.ppt１２４及びworddoc２.doc１２８の両方がユーザＡにより最近使用されたことを示す。ＭＲＵクライアント文書リスト１１２Ａは、ファイルホスティングサーバ１０６に格納されたユーザＡの文書のより最近のアクセスと同期が取られていないように見える。
【００３１】
図２を参照すると、図１のシステムが示される。ここで、クライアント装置１０２ＡにあるユーザＡのＭＲＵクライアント文書リスト１１２Ａは、クライアント装置１０２Ｂで最近使用されたファイルホスティングサーバ１０６に格納されたユーザＡの文書に対して同期していない。クライアント装置１０２Ａは、ＭＲＵ同期エンジン１１０Ａを用いて、ＭＲＵクライアント文書リスト１１２ＡをＭＲＵサーバ文書リスト１３２と同期化する。クライアント装置１０２Ａは、更新ＭＲＵクライアント文書リスト１１２Ａを生成するために、レジストリリスト１０９及び構成リスト１１７からのエントリを一つにまとめるために用いられる一時的ファイルである合併リスト１１１Ａを有する。図２に示すように、ＭＲＵクライアント文書リスト１１２Ａはworddoc２.doc１２８を有し、ユーザＡの全てのＭＲＵクライアント文書リスト１１２Ａ、１１２Ｂは、ファイルホスティングサーバ１０６に格納されているユーザＡの最近使用した文書に対して同期している。
【００３２】
留意すべきことに、ユーザの最も最近の使用を反映していないＭＲＵサーバ文書リストをもたらし得る他の状況が生じ得る。例えば、文書がＭＲＵサーバ文書リスト１３２から削除され、後にクライアント装置１０２で再び開かれた場合、この文書は、ＭＲＵサーバ文書リスト１３２で考慮される対象である。さらに、文書のピン留め状態がクライアント装置１０２で変更された場合、これは、ＭＲＵサーバ文書リスト１３２への文書の配置に影響を与えても良い。
【００３３】
次に、種々の例示的な方法に関する実施形態の動作を更に詳細に説明する。代表的方法は、特に示さない限り、提示の順序で又は任意の特定の順序で実行される必要がないことが理解される。さらに、本願明細書で特定した方法に関して記載した種々の動作は、直列又は並列的に、又は直列及び並列動作の組合せで実行することができる。方法は、所与の設計及び性能制約について必要に応じて記載の実施形態又は代替の実施形態の１又は複数のハードウェア要素及び／又はソフトウェア要素を用いて実施できる。例えば、方法は、論理装置（例えば、汎用目的又は特定用途向けコンピュータ）により実行されるロジック（例えば、コンピュータプログラム命令）として実装されても良い。
【００３４】
図３は、ＭＲＵ文書リストを自動的に同期化する例示的な方法を示すフローチャートである。留意すべきことに、方法２００は、本願明細書に記載の１又は複数の実施形態により実行される動作の一部又は全部を表すこと、及びこの方法は、図３に示すより多くの又は少ない動作を有し得ることである。一実施形態では、方法は、ＭＲＵ同期エンジン１１０の動作を示し得る。
【００３５】
幾つかの実施形態では、ＭＲＵ同期エンジン１１０は、ユーザがクライアント装置１０２からユーザアカウントに最初にログインするとき、自動的に起動されても良い（ブロック２０２）。代替の実施形態では、ＭＲＵ同期エンジン１１０は、ユーザにより直接起動されても良い（ブロック２０２）。起動されると、ＭＲＵ同期エンジン１１０は、ユーザがファイルホスティングサーバ１０６にあるユーザアカウントにログインすると、同期動作を開始しても良い（ブロック２０２）。
【００３６】
ＭＲＵ同期エンジン１１０は、同期動作が実行される頻度を決定する（ブロック２０４）。一実施形態では、同期動作は、ポーリング周波数に従って実行されても良い。ポーリング周波数は、既定値、ユーザ構成入力、又はそれらの組合せであっても良く、最初の同期の後に同期動作が実行される時間間隔を決定するために用いられても良い。
【００３７】
ＭＲＵ同期エンジン１１０は、ＭＲＵ同期エンジン１１０が起動されると、同期動作を最初に実行しても良い（ブロック２０６）。その後、ポーリング周波数に従って追加の同期が実行される。更新を実行すると示されるときに（ブロック２０８でＹｅｓ）、追加の更新が実行されるべきであるとき（ブロック２１０でＮｏ）、ＭＲＵ同期エンジン１１０は、ＭＲＵクライアント及びＭＲＵサーバ文書リストを同期化しても良い（ブロック２０６）。その他の場合、更新を実行すべきときではないとき（ブロック２０８でＮｏ）、方法は、次回の更新が生じるまでポーリングする。同期更新は、ユーザがクライアント装置１０２からログオフするとき又はポーリング周波数を満足するとき（ブロック２１０でＹｅｓ）、終了する
別の実施形態では、ＭＲＵ同期エンジン１１０は、ＭＲＵサーバ文書リスト１３２が更新されているとき、ファイルホスティングサーバ１０６から通知を受け取っても良い。ＭＲＵ同期エンジン１１０は、ポーリング周波数に従って同期動作を実行する代わりに、構成リスト１１７を受信すると、同期動作を実行しても良い。別の実施形態では、ＭＲＵ同期エンジン１１０は、ＭＲＵサーバ文書リスト１３２に新しいエントリが置かれると、ファイルホスティングサーバ１０６から通知を受け取っても良い。ファイルホスティングサーバ１０６は、新しいエントリをＭＲＵ同期エンジン１１０へ転送しても良い。次に、ＭＲＵ同期エンジン１１０は、受信すると、ＭＲＵクライアント文書リスト１１２を更新しても良い。次に、クライアント及びサーバのＭＲＵ文書リストの同期化を実行する方法を議論する。
【００３８】
図４は、ＭＲＵ文書リストを同期化する方法２０６を示すフローチャートである。レジストリ１０８内の文書エントリのスナップショット又はコピーが作られ、レジストリリスト１０９に格納されても良い（ブロック３０２）。レジストリリスト１０９に格納された文書エントリは、図５に示すデータフィールドを含むフォーマットを有しても良い。図５を参照すると、レジストリリスト１０９内の文書エントリは、項目番号４０２、エントリ種類４０４、ピン状態４０６、最終変更タイムスタンプ４０８、フラグフィールド４１０、アドレスフィールド４１２を有しても良い。項目番号４０２は、レジストリキー内へのエントリの配置を示すリファレンスである。エントリ種類は、エントリの種類を示す。例えば、文字列「REG_SZ」は、文書がＯｆｆｉｃｅ文書でありメタデータではないことを示す。ピン状態４０６は、文書がＭＲＵ文書リストに留まるべきか否かを示す。文書が「ピン留め」されているとき、その文書が最近使用されたか否かに拘わらず、その文書はＭＲＵ文書リストに残る。最終変更タイムスタンプ４０８は、ファイルが使用された最後の時間を示す。フラグ４１０は、オペレーティングシステムの使用のためである。アドレス４１２は、文書の場所であり、ＵＲＬ、物理アドレス、ネットワークアドレス又はＤＡＶアドレスであっても良い。
【００３９】
図４に戻り、ＭＲＵ同期エンジン１１０は、ファイルホスティングサーバ１０６から構成リスト１１７を要求する（ブロック３０４）。１又は複数の実施形態では、要求はＡＰＩを通じて作成されても良い。代替で、メッセージが、クライアント装置１０２とファイルホスティングサーバ１０６との間で送信されても良い。ユーザの構成リスト１１７は、ＸＭＬ（extensible  markup  language）ファイル又はＪＳＯＮ（JavaScript(登録商標)  Object  Notation）ファイルの形式で構成されても良い。
【００４０】
構成リスト１１７内の例示的な文書エントリのデータフォーマットは、図６に示すように構成されても良い。図６を参照すると、ＤＡＶアドレス５０２、最終変更タイムスタンプ５０４、ピン状態５０６、ピンタイムスタンプ５０８、削除フラグ５１０、及び削除タイムスタンプ５１２を有する構成リスト１１７内のエントリが示される。ＤＡＶアドレス５０２は、ＭＲＵクライアント文書リストにより用いられるのと同じアドレスであり、ファイルホスティングサーバにおいてユニークな識別子である。最終変更タイムスタンプ５０４は、ファイルが開かれた又は保存された最終時間を示す。ピン状態５０６は、文書がＭＲＵ文書リストに留まるべきか否かを示す。ピンタイムスタンプ５０８は、文書がピン留めされた時間を示す。削除フラグ５１０は、文書がＭＲＵサーバ文書リストから削除されたか否かを示す。削除タイムスタンプ５１２は削除の時間を示す。
【００４１】
図４に戻ると、構成リスト１１７は、最近の使用、又はユーザがクライアント装置１０２で操作している間に文書に行った変更を反映するよう更新されていない可能性がある。ＭＲＵ同期エンジン１１０は、これらの変更を発見し、ファイルホスティングサーバ１０６に通知し、それに応じてＭＲＵサーバ文書リスト１３２が更新されるようにしても良い（ブロック３０６）。特に、ＭＲＵ同期エンジン１１０は、ＭＲＵサーバ文書リスト１３２から削除されず、更には後にクライアント装置１０２で再び開かれるか又は再び保存された文書を発見しても良い。ＭＲＵ同期エンジン１１０は、ピン留め解除され、後にユーザがクライアント装置１０２で操作している間にユーザにより再びピン留めされた文書を削除しても良い。両者の場合に、これらの文書は、ＭＲＵサーバ文書リスト１３２に戻されても良い。
【００４２】
図７を参照すると、ＭＲＵ同期エンジン１１０は、クライアントレジストリリスト内の各エントリを読み出し（ブロック６０２）、レジストリリストからのエントリのアドレスフィールド４１２を構成リスト１１７内のＤＡＶアドレス５０２と照合する（ブロック６０４）。構成リスト１１７内の削除フラグ５１０は、ユーザが文書をＭＲＵサーバ文書リスト１３２から削除するとき設定され、削除タイムスタンプ５１２は削除が生じた時間を示す。レジストリリスト内の対応するエントリ内の最終変更タイムスタンプ４０８は、文書が使用された最後の時間を示す。削除フラグ５１０が設定され、レジストリエントリ内の最終変更タイムスタンプ４０８が削除タイムスタンプ５１２より遅いとき、文書は、該文書がＭＲＵサーバ文書リスト１３２から削除された後にクライアント装置１０２で再び開かれた（ブロック６０６）。この場合、ＭＲＵ同期エンジン１１０は、ＡＰＩプロシジャ呼び出しを通じて、ファイルホスティングサーバ１０６にこの状態を知らせる（ブロック６０６）。
【００４３】
次に、ＭＲＵ同期エンジン１１０は、前にピン留め解除された文書が、クライアント装置１０２での操作中にユーザにより再びピン留めされたかどうかを決定する。この状態を検出するために、ＭＲＵ同期エンジン１１０は、レジストリリスト内の文書エントリのピン状態４０６を、構成リスト１１７内の対応するエントリと比較する（ブロック６０８）。構成リスト１１７からのピン状態５０６が文書はピン留めされいないと示し、構成リスト１１７からのピンタイムスタンプ５０８がレジストリリスト内の対応するエントリの最終変更タイムスタンプ４０８よりも前であるとき、ＭＲＵ同期エンジン１１０は、ファイルホスティングサーバ１０６に、ＡＰＩプロシジャ呼び出しを通じて、文書エントリはピン留めされていると知らせる（ブロック６０８）。
【００４４】
図４に戻ると、ＭＲＵ同期エンジン１１０は、レジストリリスト１０９と構成リスト１１７を合併リスト１１１にまとめる（ブロック３０８）。合併リスト１１１は、発行時に文書に関連するレジストリリスト１０９からの全てのエントリと、構成リスト１１７からの全てのエントリとを含む。次に、合併リスト１１１は、クライアント装置１０２で、より最近開かれ、変更され、保存され又はピン留めされた文書について分析されても良い（ブロック３１０）。
【００４５】
図８を参照すると、ＭＲＵ同期エンジン１１０は、合併リスト１１１をアドレスにより並べ替えることにより進む。特に、レジストリリストのアドレスフィールド４１２とＭＲＵサーバ文書リスト１３２のＤＡＶアドレス５０２は、並べ替え基準として用いられても良い（ブロック７０２）。合併リストのエントリがアドレスにより並べ替えられると、共通アドレスを有するエントリが相次いで配置される。したがって、レジストリリスト内の文書リストを、構成リスト１１７内の対応するエントリと照合することが容易になる。
【００４６】
ＭＲＵ同期エンジン１１０は、レジストリリスト内の文書エントリを、構成リスト１１７内の対応するエントリ（つまり、エントリペア）と比較する（ブロック７０４）。このようなエントリペア毎に（ブロック７０４）、ＭＲＵ同期エンジン１１０は、ユーザがクライアント装置１０２での操作中に文書に行った、構成リスト１１７に反映されていないより最近の使用について、エントリペアを分析する。
【００４７】
ＭＲＵ同期エンジン１１０は、レジストリリストエントリの最終変更タイムスタンプ４０８を最終変更タイムスタンプ５０４と比較する（ブロック７０６）。レジストリリストエントリの最終変更タイムスタンプ４０８が最近のものではない場合、文書は、ファイルホスティングサーバ１３２での文書の最終使用よりも後にクライアント装置１０２でアクセスされている。この場合、ＭＲＵ同期エンジン１１０は、ＡＰＩプロシジャ呼び出しを通じて、ファイルホスティングサーバ１０６にこの事象を知らせる（ブロック７０６）。
【００４８】
さらに、ＭＲＵ同期エンジン１１０は、レジストリリスト１０９と構成リスト１１７との両方の文書エントリのピン状態及びピンタイムスタンプを比較し、文書のピン状態がクライアント装置１０２で操作しているユーザにより変更されたかどうかを決定する（ブロック７０８）。レジストリリスト内の文書エントリのピン状態４０６及びピンタイムスタンプ４０８が、構成リスト１１７内の対応するエントリのピンタイムスタンプ５０８より新しくない場合、文書のピン状態は、クライアント装置１０２での操作中にユーザにより変更されている。ＭＲＵ同期エンジン１１０は、ＡＰＩプロシジャ呼び出しを通じて、ファイルホスティングサーバ１０６にこの状況を知らせる（ブロック７０８）。最後に、各エントリペアについて、新しくない最終変更タイムスタンプを有するエントリは削除される（ブロック７１０）。
【００４９】
図４に戻ると、次に、新しいＭＲＵクライアント文書リストが合併リスト１１１から生成される（ブロック３１２）。図９を参照すると、合併リスト１１１は、ピン留めされた文書を合併リスト１１１の最上位にするために、ピン状態に関して並べ替えられる（ブロック８０２）。次に、ピン留め解除された文書は、最新のタイムスタンプを有するピン留め解除された文書をより古いタイムスタンプを有するピン留め解除された文書の前に配置するために、最終変更タイムスタンプにより並べ替えられる（ブロック８０４）。その後、合併リスト１１１は、ＭＲＵクライアント文書リストで許容される最大エントリ数のみを含むように削られても良い（ブロック８０６）。より最近使用された文書ほどリストの上位にあり、より前に使用された文書ほど合併リスト１１１の終わりにある。合併リスト１１１内のエントリ数がＭＲＵクライアント文書リストで許容される最大エントリ数を超える場合、合併リスト１１１は、合併リスト１１１の一番上から最大数だけを取る（ブロック８０６）。
【００５０】
このとき、合併リスト１１１は、更新ＭＲＵクライアント文書リストである。更新ＭＲＵクライアント文書リスト内の各エントリは、レジストリ１０８に書き込まれ（ブロック８０８）、新しいＭＲＵクライアント文書リストは既存のＭＲＵクライアント文書リストを置き換える（ブロック８１０）。図４に戻り、ＭＲＵ同期エンジン１１０は、ファイルホスティングサーバのための文書フォルダをＭＲＵクライアント文書リストに含まれるアドレス又はショートカットで置き換える（ブロック３１４）。次に、動作環境を議論する。
【００５１】
図１０を参照すると、例示的な動作環境９２０の概略ブロック図を示す。動作環境９２０は、通信フレームワーク９２４を通じて１又は複数のサーバ９２６と通信する１又は複数のクライアント９２２を有しても良い。一実施形態では、クライアント９２２は、サ―バ９２６に格納された文書又はデータを使用するよう構成されても良く、クライアント９２２は、クライアント装置１０２として実装されても良い。一実施形態では、サーバ９２６は、１又は複数のクライアント９２２から、サーバに格納された文書又はデータにアクセスする要求を受信しても良い。一実施形態では、サーバ９２６は、ファイルホスティングサーバとして実装されても良い。
【００５２】
クライアント９２２は、ハードウェア装置、ソフトウェアモジュールとして、又はそれらの組合せとして実施されても良い。このようなハードウェア装置の例は、コンピュータ（例えば、サーバ、パーソナルコンピュータ、ラップトップ、等）、携帯電話機、パーソナルデジタルアシスタント、又は任意の種類のコンピューティング装置、等を有し得るが、これらに限定されない。クライアント９２２は、単一実行経路、複数同時実行経路（例えば、スレッド、プロセス、等）で又は任意の他の方法で実行される命令を有するソフトウェアモジュールとして実施されても良い。
【００５３】
サーバ９２６は、ハードウェア装置、ソフトウェアモジュールとして、又はそれらの組合せとして実施されても良い。このようなハードウェア装置の例は、コンピュータ（例えば、サーバ、パーソナルコンピュータ、ラップトップ、等）、携帯電話機、パーソナルデジタルアシスタント、又は任意の種類のコンピューティング装置、等を有し得るが、これらに限定されない。サーバ９２６は、単一実行経路、複数同時実行経路（例えば、スレッド、プロセス、等）で又は任意の他の方法で実行される命令を有するソフトウェアモジュールとして実施されても良い。
【００５４】
通信フレームワーク９２４は、クライアント装置９２２とサーバ９２６との間の通信を実現する。通信フレームワーク９２４は、任意の通信プロトコルを用いて有線又は無線ネットワークのような任意の種類の通信媒体を具現する。
【００５５】
図１１を参照すると、クライアント装置１０２は、プロセッサ９３４、メモリ９３６、ネットワークインタフェース９３８を有しても良い。プロセッサ９３４は、任意の市販プロセッサであっても良く、デュアルマイクロプロセッサ及びマルチプロセッサアーキテクチャを有しても良い。ネットワークインタフェース９３８は、クライアント装置１０２とファイルホスティングサーバ１０６との間の通信経路を提供するために、クライアント装置１０２と通信ネットワーク１０４との間の有線及び無線通信を実現する。
【００５６】
メモリ９３６は、プロセッサ実行可能命令、プロシジャ、アプリケーション及びデータを格納できる任意のコンピュータ可読記憶媒体又はコンピュータ可読媒体であっても良い。コンピュータ可読媒体は、搬送波を通じて送信される変調データ信号のような伝搬信号に関連しない。メモリ９３６は、任意の種類のメモリ装置（例えば、ＲＡＭ（random  access  memory、ＲＯＭ（read-only  memory）等）、磁気記憶装置、揮発性記憶装置、不揮発性記憶装置、光学記憶装置、ＤＶＤ、ＣＤ、フロッピドライブ、ディスクドライブ、フラッシュメモリ、等であっても良い。メモリ９３６は、１又は複数の外部記憶装置又はリモートに置かれた記憶装置を有しても良い。メモリ９３６は、以下のような命令及びデータを有しても良い。
【００５７】
オペレーティングシステム９４０
レジストリ１０８
ＭＲＵ同期エンジン１１０
ＭＲＵクライアント文書リスト１１２
文書フォルダ１１４
レジストリリスト１０９
合併リスト１１１
種々の他のアプリケーション及びデータ９４４。
【００５８】
図１２を参照すると、ファイルホスティングサーバ１０６は、プロセッサ９５４、メモリ９５６、ネットワークインタフェース９５８を有しても良い。プロセッサ９５４は、任意の市販プロセッサであっても良く、デュアルマイクロプロセッサ及びマルチプロセッサアーキテクチャを有しても良い。ネットワークインタフェース９５８は、クライアント装置１０２とファイルホスティングサーバ１０６との間の通信経路を提供するために、ファイルホスティングサーバ１０６と通信ネットワーク１０４との間の有線及び無線通信を実現する。
【００５９】
メモリ９５６は、プロセッサ実行可能命令、プロシジャ、アプリケーション及びデータを格納できる任意のコンピュータ可読記憶媒体又はコンピュータ可読媒体であっても良い。コンピュータ可読媒体は、搬送波を通じて送信される変調データ信号のような伝搬信号に関連しない。メモリ９５６は、任意の種類のメモリ装置（例えば、ＲＡＭ（random  access  memory、ＲＯＭ（read-only  memory）等）、磁気記憶装置、揮発性記憶装置、不揮発性記憶装置、光学記憶装置、ＤＶＤ、ＣＤ、フロッピドライブ、ディスクドライブ、フラッシュメモリ、等であっても良い。メモリ９５６は、１又は複数の外部記憶装置又はリモートに置かれた記憶装置を有しても良い。メモリ９５６は、以下のような命令及びデータを有しても良い。
【００６０】
オペレーティングシステム９６０
ＭＲＵ  ＡＰＩハンドラプロシジャ１１６
文書１２０及びＭＲＵサーバ文書リスト１３２を含むファイルシステム９６４
構成リスト１１７
他のアプリケーション及びデータ９７２。
【００６１】
本発明の主題は構造的特徴及び／又は方法論的動作に特有の言葉で記載されたが、本発明の主題は、特許請求の範囲に定められる上述の特定の特徴又は動作に限定されないことが理解されるべきである。むしろ、上述の特定の特徴及び動作は、特許請求の範囲の実施の例示的携帯として開示されたものである。
【００６２】
例えば、システム１００の種々の実施形態は、ハードウェア要素、ソフトウェア要素又はそれらの組み合わせで実施されても良い。ハードウェア要素の例は、装置、コンポーネント、プロセッサ、マイクロプロセッサ、回路、回路要素、集積回路、ＡＳＩＣ（application  specific  integrated  circuit）、ＰＬＤ（programmable  logic  device）、ＤＳＰ（digital  signal  processor）、ＦＰＧＡ（field  programmable  gate  array）、メモリユニット、論理ゲート等を有しても良い。ソフトウェア要素の例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、メソッド、プロシジャ、ソフトウェアインタフェース、ＡＰＩ（application  program  interface）、命令セット、コンピューティングコード、コードセグメント、及びそれらの任意の組合せを含んでも良い。実施形態がハードウェア要素及び／又はソフトウェア要素を用いて実装されるかの決定は、所与の実装についての要望により、所望の計算レート、パワーレベル、帯域幅、計算時間、負荷バランス、メモリ資源、データバス速度、及び他の設計若しくは性能制約のような任意の数の要因に従って変化し得る。
【００６３】
幾つかの実施形態は、命令又はロジックを格納するために記憶媒体を有しても良い。記憶媒体の例は、揮発性メモリ若しくは不揮発性メモリ、取り外し可能若しくは取り外し不可能なメモリ、消去可能若しくは消去不可能なメモリ、書き換え可能若しくは書き換え不可能なメモリ等を含む、電子データを格納可能な１又は複数種類のコンピュータ可読記憶媒体を含み得る。ロジックの例は、プログラム、プロシジャ、モジュール、アプリケーション、コードセグメント、プログラムスタック、ミドルウェア、ファームウェア、メソッド、ルーチン、等のような種々のソフトウェアコンポーネントを含み得る。一実施形態では、例えば、コンピュータ可読記憶媒体は、プロセッサにより実行されると、該プロセッサに記載した実施形態に従って方法及び／又は動作を実行させる実行可能コンピュータプログラム命令を格納しても良い。実行可能コンピュータプログラム命令は、コンピュータに特定の機能を実行するよう指示する、所定のコンピュータ言語、方法又はシンタックスに従って実装されても良い。命令は、任意の適切な高級、低級、オブジェクト指向、ビジュアル、コンパイル、及び／又はインタープリットプログラミング言語を用いて実装されても良い。
【００６４】
種々の実施形態で、本願明細書に記載のシステム１００は、複数のコンポーネント、プログラム、プロシジャ、モジュールを有するコンピュータにより実施されるシステムを有しても良い。本願明細書で用いられるように、これらの用語は、ハードウェア、ハードウェアとソフトウェアの組合せ、又はソフトウェアを有するコンピュータ関連エンティティを表す。例えば、コンポーネントは、プロセッサで実行されるプロセス、ハードディスクドライブ、（光及び／又は磁気記憶媒体の）複数の記憶装置、オブジェクト、実行ファイル、実行スレッド、プログラム、及び／又はコンピュータとして実装され得る。説明のため、サーバで動作するアプリケーションとサーバの両方が、コンポーネントであり得る。１又は複数のコンポーネントは、プロセス及び／又は実行スレッド内に存在でき、所与の実装で望ましい場合にはコンポーネントは１つのコンピュータに及び／又は２以上のコンピュータに分散されてローカライズされ得る。実施形態は、この方法に限定されない。
【図１】
0006050343.tif 000002
【図２】
0006050343.tif 000003
【図３】
0006050343.tif 000004
【図４】
0006050343.tif 000005
【図５】
0006050343.tif 000006
【図６】
0006050343.tif 000007
【図７】
0006050343.tif 000008
【図８】
0006050343.tif 000009
【図９】
0006050343.tif 000010
【図１０】
0006050343.tif 000011
【図１１】
0006050343.tif 000012
【図１２】
0006050343.tif 000013