(57)【要約】  処理デバイスと、この処理デバイスに動作上結合された遠隔入力デバイスとを有するゲーミング・システムを開示する。遠隔入力デバイスは、動きセンサーを含むことができる。この動きセンサーの分解能は、粗いおよび細かいジェスチャーの双方が最大の効果を有することができるように、ゲーム・ソフトウェアから動的に設定することができる。ゲーム・ソフトウェアが分解能の要件を評価しこれを制御することを可能にすることによって、更に入力デバイスがそれに応じて調節および応答することを可能にすることにより、比較的細かいジェスチャー、および比較的粗いジェスチャーを、精度および正確さを高めて、区別し表現することができる。【選択図】図３
2011526192.tif 000002
【特許請求の範囲】
【請求項１】
計算システムにおいて用いるための方法であって、前記計算システムが処理デバイスと遠隔入力デバイスとを含み、前記遠隔入力デバイスが複数の感度範囲で動作可能であり、前記方法が、
前記処理デバイスにおいて、前記遠隔入力デバイスに対し所望の感度範囲を決定するステップと、
前記処理デバイスによって、前記遠隔入力デバイスに、前記所望の感度範囲において動作するように信号を送るステップと、
を含む、方法。
【請求項２】
請求項１記載の方法において、前記計算システムがゲーム・プレーイング・システムを含み、前記所望の感度範囲を決定するステップは、前記ゲーム・プレーイング・システムにおいて実行中のアプリケーションにおける現在のコンテキストに少なくとも部分的に基づく、方法。
【請求項３】
請求項１記載の方法において、前記計算システムがゲーム・プレーイング・システムを含み、前記所望の感度範囲を決定するステップは、ユーザー・プロファイルに少なくとも部分的に基づく、方法。
【請求項４】
請求項１記載の方法において、前記遠隔入力デバイスが、複数の選択可能な感度範囲で動作可能な動きセンサーを含み、前記処理デバイスによって前記遠隔入力デバイスに信号を送るステップは、前記処理デバイスによって前記遠隔入力デバイスに、前記複数の感度範囲から選択した感度範囲において前記動きセンサーを動作させるように信号を送るステップを含む、方法。
【請求項５】
請求項１記載の方法において、前記遠隔入力デバイスが複数の動きセンサーを含み、前記動きセンサーの各々は、少なくとも１つの感度範囲において動作し、前記処理デバイスによって前記遠隔入力デバイスに信号を送るステップは、前記処理デバイスによって、前記複数のセンサーから選択したセンサーを動作させるように信号を送るステップを含む、方法。
【請求項６】
請求項１記載の方法において、前記遠隔入力デバイスは、ジャイロ、加速度計、または磁力計の内少なくとも１つを含む、方法。
【請求項７】
請求項１記載の方法において、前記遠隔入力デバイスが前記処理デバイスにワイヤレスで結合された、方法。
【請求項８】
システムであって、
計算機において実行中のアプリケーションにおける現在のコンテキストを確認するように構成されたコンテキスト判定モジュールと、
前記コンテキスト判定モジュールから情報を受け取り、遠隔入力デバイスに対し所望の感度範囲を決定するように構成された感度決定モジュールであって、前記遠隔入力デバイスが、前記計算機に入力を供給するように、動作上結合されており、前記遠隔入力デバイスが、複数の感度範囲で動作可能である、感度決定モジュールと、
前記所望の感度範囲を示す情報を、前記遠隔入力デバイスに対する感度範囲の選択において用いるために、前記遠隔入力デバイスに伝達するように構成された通信モジュールと、
を含む、システム。
【請求項９】
請求項８記載のシステムにおいて、前記遠隔入力デバイスが、前記計算機にワイヤレスに結合された、システム。
【請求項１０】
請求項８記載のシステムにおいて、前記計算機において実行中のアプリケーションが、ゲーム・プレーイング・アプリケーションであり、前記コンテキスト判定モジュールが、前記ゲーム・プレーイング・アプリケーション内における現在のスクリプトによる状況を確認するように構成された、システム。
【請求項１１】
請求項８記載のシステムにおいて、前記コンテキスト判定モジュールが、ユーザー・プロファイルを確認するように構成され、前記感度決定モジュールが、前記ユーザー・プロファイルに少なくとも部分的に基づいて、前記所望の感度範囲を決定するように構成された、システム。
【請求項１２】
請求項８記載のシステムにおいて、前記遠隔入力デバイスが、複数の感度範囲を有する物理的動きセンサーを含み、前記所望の感度範囲を示す伝達情報に応答して前記所望の感度範囲において動作するように構成された、システム。
【請求項１３】
請求項８記載のシステムにおいて、前記遠隔入力デバイスが複数の物理的動きセンサーを含み、前記動きセンサーの各々が少なくとも１つの感度範囲を有し、前記遠隔入力デバイスが、前記所望の感度範囲を示す伝達情報に応答して、前記物理的動きセンサーの内少なくとも１つを動かすように構成されており、前記少なくとも１つの物理的動きセンサーが、前記所望の感度範囲に対応する感度範囲において動作可能である、システム。
【請求項１４】
請求項８記載のシステムにおいて、前記遠隔入力デバイスが、ジャイロ、加速度計、または磁力計の内少なくとも１つを含む、システム。
【請求項１５】
コンピューター実装ゲーム・プレーイング・システムであって、
複数の感度範囲で動作可能な物理的動きセンサーを含む遠隔入力デバイスと、
処理デバイスであって、該処理デバイスにおいて実行中のゲーム・プレーイング・アプリケーション内における現在のスクリプトによる状況を確認し、前記現在のスクリプトによる状況に少なくとも部分的に基づいて前記遠隔入力デバイスに対し所望の感度範囲を決定し、前記所望の感度範囲を示す情報を前記遠隔入力デバイスに伝達する、処理デバイスと、
を含み、
前記遠隔入力デバイスが、前記処理デバイスから、前記所望の感度範囲を示す伝達情報を受け取り、この伝達情報を受け取ったことに応答して、前記所望の感度範囲において前記物理的動きセンサーを動作させる、コンピューター実装ゲーム・プレーイング・システム。
【請求項１６】
請求項１５記載のシステムにおいて、前記処理デバイスが、ユーザー・プロファイルに少なくとも部分的に基づいて、前記所望の感度範囲を決定する、システム。
【請求項１７】
請求項１５記載のシステムにおいて、前記物理的動きセンサーが複数の選択可能な感度範囲で動作可能であり、前記遠隔入力デバイスが、前記伝達情報を受け取ったことに応答して、前記複数の感度範囲から選択した１つにおいて前記物理的動きセンサーを動作させる、システム。
【請求項１８】
請求項１５記載のシステムにおいて、前記遠隔入力デバイスが複数の物理的動きセンサーを含み、前記物理的動きセンサーの各々が少なくとも１つのそれぞれの感度範囲において動作可能であり、前記遠隔入力デバイスが前記伝達情報を受信したことに応答して、前記複数の物理的動きセンサーから選択した１つを前記所望の感度範囲において動作させる、システム。
【請求項１９】
請求項１５記載のシステムにおいて、前記物理的動きセンサーが、ジャイロ、加速度計、または磁力計の内少なくとも１つを含む、システム。
【請求項２０】
請求項１５記載のシステムにおいて、前記遠隔入力デバイスが前記計算機にワイヤレスで結合された、システム。
【発明の詳細な説明】
【従来技術】
【０００１】
[0001]  プレーヤーのジェスチャーが真似され、そのプレーヤーを動画化して示すゲーミング・システム(gaming system)が知られている。本明細書において用いる場合、「ジェスチャー」という用語は、プレーヤーの動き、またはこのプレーヤーを動画化した表現の対応する動きを指すことができる。このようなジェスチャーの例には、身体の全部または一部の動きが含まれ、手、腕、頭、顔等のような、身体部材の動きを含むことができる。
【０００２】
[0002]  このようなシステムでは、ジェスチャーは、プレーヤーによって操作される遠隔ゲーミング入力デバイスの中にある動きセンサーによって検出されるのが通例である。このような動きセンサーの例には、ジャイロ、磁力計、および加速度計が含まれる。サポートされるジェスチャーのパレットは、通例、動きセンサーに予め設定されている分解能によって制限される。即ち、ジェスチャーに対する感度は、通例、動きセンサーに設定されている分解能に制限される。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
[0003]  ゲーミング入力デバイスに対する個々のジェスチャー入力を最大の範囲で行うためには、プレーヤーは、通例、動きセンサーの感度を手作業で変更する必要がある。しかしながら、プレーヤーが精細センサー（即ち、比較的感度が高いセンサー）を選択して粗いジェスチャーを行うと、センサーがクリップ(clip)しがちになる可能性がある。逆に、プレーヤーが粗いセンサー（即ち、比較的感度が低いセンサー）を選択して細かいジェスチャーを行うと、細かな動きの表現がノイズでぼやけてしまいがちになる。いずれのシナリオでも、データーが失われる虞れがある。
【０００４】
[0004]  したがって、分解能をゲーム・ソフトウェアから動的に設定することができ、粗いジェスチャーおよび細かいジェスチャーの双方が最大の効果を有することができるようにしたゲーミング・システムを有することが望まれる。ゲーム・ソフトウェアが分解能要件を評価および制御することを可能にし、入力デバイスがそれに応じて調節し応答することを可能にすることによって、精度および正確さを高めて、比較的細かいジェスチャーおよび比較的粗いジェスチャーを、区別して表現することが可能になる。
【課題を解決するための手段】
【０００５】
[0005]  本明細書において記載するように、例えば、ゲーミング・システムのようなコンピューター・システムが、処理デバイスと遠隔入力デバイスとを含むことができる。遠隔入力デバイスは、処理デバイスに入力を供給するように動作上結合することができる。遠隔入力デバイスは、ワイヤレスで処理デバイスに結合することができる。
【０００６】
[0006]  遠隔入力デバイスは、１つ以上の動きセンサーを含むことができ、各動きセンサーは１つ以上の感度範囲を有する。例えば、遠隔入力デバイスは１つ以上の動きセンサーを含むことができ、各動きセンサーは複数の選択可能な感度範囲を有する。あるいはまたは代わりに、遠隔入力デバイスは複数の動きセンサーを含むことができ、各動きセンサーは少なくとも１つの感度範囲を有する。
【０００７】
[0007]  処理デバイスは、コンテキスト判定モジュール、感度決定モジュール、および通信モジュールを含むことができる。コンテキスト判定モジュールは、例えば、計算機において実行するゲーム・プレーイング・アプリケーションのようなアプリケーションにおける現在のコンテキストを確認するように構成することができる。例えば、コンテキスト判定モジュールは、ゲーム・プレーイング・アプリケーション内において現在のスクリプトによる状況を確認するように、またはユーザー・プロファイルを確認するように構成することができる。
【０００８】
[0008]  感度決定モジュールは、コンテキスト判定モジュールから情報を受け取り、遠隔入力デバイスに合った所望の感度範囲を決定するように構成することができる。感度決定モジュールは、少なくとも部分的にユーザー・プロファイルに基づいて、所望の感度範囲を決定するように構成することができる。
【０００９】
[0009]  通信モジュールは、所望の感度範囲を示す情報を遠隔入力デバイスに伝達するように構成することができる。例えば、処理デバイスは、遠隔入力デバイスに、複数のセンサーからのセンサーの内１つを選択すること、および／または複数の感度範囲から感度範囲の内１つを選択するよう信号を送ることができる。
【００１０】
[0010]  遠隔入力デバイスは、所望の感度範囲を示す伝達情報を受信するように構成することができる。遠隔入力デバイスは、受信した情報に応答して、所望の感度範囲で動作するように構成することができる。例えば、遠隔入力デバイスは、受信した情報に応答して、所望の感度範囲に対応する感度範囲を有する特定の物理センサーを動かすように構成することができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、粗いジェスチャーの画像を示す。
【図２】図２Ａ〜Ｃは、チルト・モードにおける種々の時点での細かいジェスチャーの画像を示す。
【図３】図３は、計算システムの一例の機能ブロック図である。
【図４】図４は、図１に図示したような計算システムにおいて用いるための方法例のフローチャートである。
【図５】図５は、本発明の実施形態例および態様例を実現することができる計算環境例のブロック図である。
【図６】図６は、本発明の態様を実現することができるネットワーク構成例である。
【発明を実施するための形態】
【００１２】
全体像：シナリオ例
[0017]  これより、本明細書において記載するシステムおよび方法を用いることができるシナリオ例をゲーミング・システムのコンテキストで紹介する。しかしながら、ゲーム・システムは例示の目的で説明するに過ぎないこと、そして本明細書において記載するシステムおよび方法は、ゲーミング・システムにおける実施には限定されないことは言うまでもない。
【００１３】
[0018]  典型的なゲーミング・システムは、ゲーム・コンソールを含むと考えられる。ゲームの動作ソフトウェア・プリケーションを実行することができる処理デバイスを、ゲーム・コンソールに収容することができる。また、ゲーミング・システムは遠隔入力デバイスも含むことができる。遠隔入力デバイスの特質(nature)は、プレーヤーがプレーしている実際のゲームに基づくことができる。遠隔入力デバイスは、ゲーム・コンソールに、遠隔入力デバイスを用いるプレーヤージェスチャーに対応する情報を伝達することができる。ゲーム・コンソールは、プレーヤーのジェスチャーの表現(depiction)、またはその効果を、テレビジョン、コンピューター・モニタ、またはゲーム・コンソールが動作上結合されている専用ビデオ・ディスプレイというような、ビデオ・ディスプレイに提示させることができる。
【００１４】
[0019]  プレーヤーがゴルフ・ゲームをプレーしているというシナリオ例について考える。したがって、遠隔入力デバイスはゴルフ・クラブを表すことができる。プレーヤーのジェスチャーは、プレーヤーのゴルフ・クラブのスイングによって特徴付けることができる。プレーヤーのジェスチャーの効果は、スイングされるゴルフ・クラブによって特徴付けることができる。
【００１５】
[0020]  あるシナリオ例では、３種類のゴルフ・スイング、即ち、ドライビング（ティーからボールを長打すること）、チッピング（チップショットで打つ）、およびプッティング（パッティング）があればよい。尚、一般には、プレーヤーはドライビングのときにはチッピングのときよりも強く（即ち、速くそして大きな角度で）スイングする傾向があることは言うまでもない。同様に、プレーヤーは、チッピングのときにはプッティングのときよりも強くスイングする傾向がある。したがって、ドライビングおよびプッティングの双方の高精度で正確な表現を提示するためには、プッティングのジェスチャーの間にはドライビングのジェスチャーの間よりも高い動き感度が望まれると考えられる。
【００１６】
[0021]  本システムは、このようなゲーム・プレーのシナリオにおいて用いられるジェスチャーを認識し、このような認識に応答して動的にハードウェア感度を調節することができるとよい。例えば、ゲーム・ソフトウェアは、いつ分解能を切り換えるか判定し、切り換える分解能を決定するように構成することができる。ビデオ・ゲームは通例スクリプト通りの相互作用(scripted interaction)であるので、ゲーム・ソフトウェアは現在の状況のコンテキストを知っているのが通例である。例えば、ゴルフのシナリオでは、ゲーム・ソフトウェアは、ボールがティーにある場合、プレーヤーがプッティングではなく、ドライビングしようとする可能性が高いことを認識することができる。同様に、ボールがグリーン上にある場合、プレーヤーはドライビングではなく、プッティングする可能性が高い。または、クラブの選択に基づいて、コンテキストを識別することもできる。例えば、プレーヤーがドライバを選択する場合、彼はドライブしようとしている可能性が高い。彼がプッター(putter)を選択する場合、彼はプッティングしようとしている可能性が高い。
【００１７】
[0022]  ゲーム・ソフトウェアは、コンテキストを認識し、このコンテキストから所望の感度を決定することができる。プレーヤーがドライビングのコンテキストからチッピングのコンテキストへ、更にプッティングのコンテキストに移動するに連れて、処理デバイスは、遠隔入力デバイスに、徐々に感度が高くなるセンサーを選択するように信号を送ることができる。つまり、ドライビングのジェスチャー、チッピングのジェスチャー、およびプッティングのジェスチャーを、その効果と共に、精度高くそして正確に表現することができる。
【００１８】
[0023]  図１は、粗いジェスチャーの画像例を表す。図示のように、マイクロフォンを握っている人の画像が表示されている。この粗いジェスチャーは、歌手が彼女の腕を６０度の角度にわたってどちらかと言うと素早く振り回す姿に対応する。このようなジェスチャーの明らかな画像を生成するためには、比較的低い動き感度が望ましい。
【００１９】
[0024]  図２のＡからＣは、チルト・モードにおける種々の時点での細かいジェスチャーの画像例を表す。図示のように、歌手はここでは比較的ゆっくりと比較的小さな角度（例えば、７秒毎に１０度の割合で）マイクロフォンを傾けている。このようなジェスチャーの明らかな画像を生成するためには、比較的高い動き感度が望ましい。
【００２０】
[0025]  システムおよび方法例の詳細な説明が以下に続く。
チルト機能の感度の動的選択
[0026]  図３は、計算システム例１０の機能ブロック図である。図示のように、システム１０は、計算機即ち処理デバイス２０と、遠隔入力デバイス３０とを含むことができる。処理デバイス２０は、例えば、ゲーム・コンソールに収容することができる。遠隔入力デバイス３０は、入力を処理デバイス２０に供給するために、動作上結合することができる。遠隔入力デバイス３０は、処理デバイス２０に有線接続することができ、あるいは処理デバイス２０にワイヤレスで結合することもできる。
【００２１】
[0027]  遠隔入力デバイス３０は、ボール、バット、ドラムスティック、釣竿、またはマイクロフォンのようなヒューマン・インターフェース・デバイスを含むことができ、例えば、ジョイスティック、ヘッドセット、ヘルメット、ヘッド・アップ・ディスプレイ等のような、任意のタイプのゲーム・コントローラを含む。遠隔入力デバイス３０は、ジェスチャー認識ハードウェアを含むことができる。このジェスチャー認識ハードウェアは、１つ以上のセンサーを含むことができ、これらのセンサーは、例えば、動きセンサー、熱センサー、または圧力センサー、あるいはこのようなセンサーの任意の組み合わせを含むことができる。遠隔入力デバイス３０は、例えば、製造に用いることもできるタイプのロボット・デバイスとすることができる。
【００２２】
[0028]  遠隔入力デバイス３０は、複数の感度範囲で動作可能であるとよい。遠隔入力デバイス３０は、１つ以上の物理的動きセンサー３２Ａ〜３２Ｃを含むことができる。このような動きセンサーの例には、ジャイロ、加速度計、および磁力計が含まれる。通例、１つの動きセンサーまたは１つのタイプの動きセンサーだけでは、動いている物体の絶対的な位置付けは得られない。このため、複数の異なるセンサーを採用するとよい。例えば、動きを測定するために加速度計を用いることができ、一方位置を判定するために追加のセンサー（例えば、ジャイロ）を用いることができる。
【００２３】
[0029]  １つ以上の物理的動きセンサー３２Ａ〜３２Ｃの各々は、複数の選択可能な感度範囲において動作可能であるとよい。遠隔入力デバイス３０は、複数の物理的動きセンサー３２Ａ〜３２Ｃを含むことができ、これらの各々は少なくとも１つの感度範囲で動作可能である。尚、本明細書において記載するシステムおよび方法は、動きセンサーの使用に限定されるのではないことは言うまでもない。例えば、熱センサーまたは圧力センサーも用いることができる。
【００２４】
[0030]  処理デバイス２０は、コンテキスト判定モジュール２２、感度決定モジュール２４、および通信モジュール２６を含むことができる。コンテキスト判定モジュール２２は、処理デバイス２０において実行中のアプリケーション２８における現在のコンテキストを確認するように構成することができる。例えば、アプリケーション２８はゲーム・プレーイング・アプリケーションとすることができる。コンテキスト判定モジュール２６は、ゲーム・プレーイング・アプリケーション２８内部において現在のスクリプトによる (scripted)状況を確認するように構成することができる。
【００２５】
[0031]  コンテキスト判定モジュール２２は、ユーザー・プロファイル２７を確認するように構成することができる。処理デバイス２０は、メモリー２５を含むことができ、この中にユーザー・プロファイル２７が格納されている。ユーザー・プロファイルの一例には、特定のユーザーの１つ以上の予め定められた好みを含むことができる。このような好みの例には、利得、感度、および個別化に対するデフォルト設定値のプリセットが含まれる。これには、例えば、パスワードまたは生物センサーを通じてアクセスすることができる。複数のプロファイルを一度に格納することもできる。
【００２６】
[0032]  感度決定モジュール２４は、コンテキスト判定モジュール２２から情報を受け取り、遠隔入力デバイス３０に所望の感度範囲を決定するように構成することができる。所望の感度範囲は、少なくとも部分的に、処理デバイス２０において実行中のアプリケーション２８における現在のコンテキストに基づいて決定することができる。例えば、所望の感度は、少なくとも部分的に、ゲーム・プレーイング・アプリケーション内において現在のスクリプトによる状況に基づいて決定することができる。感度決定モジュール２４は、少なくとも部分的に、ユーザー・プロファイル２７に基づいて所望の感度範囲を決定するように構成することもできる。
【００２７】
[0033]  通信モジュール２６は、所望の感度範囲を示す情報を、遠隔入力デバイス３０に感度範囲を選択する際に用いるために、遠隔入力デバイス３０に伝達するように構成することができる。処理デバイス２０は、遠隔入力デバイス３０に、所望の感度範囲において動作するように信号を送ることができる。この信号は、処理デバイス２０と遠隔入力デバイス３０との間で有線または無線接続を通じて送信することができる。つまり、処理デバイス２０は、隔入力デバイス３０の中にあるセンサーの感度を設定するために、これらのセンサーに制御信号を送ることができる。
【００２８】
[0034]  このような信号は、遠隔入力デバイス３０に所望の感度範囲を知らせる欄を含むことができる。例えば、この信号は、所望の倍率設定値(scale setting)に対応する数のビット（例えば、２ビット）を含むことができる。このビット数（つまり、感度の範囲）は、処理デバイスを通じて調節可能とするとよいパラメータ値とすることができる。
【００２９】
[0035]  遠隔入力デバイス３０は、処理デバイス２０から信号を受け取ることができ、つまり、所望の感度範囲を示す情報を処理デバイス２０から受け取ることができる。遠隔入力デバイス３０は、処理デバイス２０から伝達された情報を受け取ったことに応答して、所望の感度範囲において動作することができる。
【００３０】
[0036]  例えば、遠隔入力デバイス３０は、伝達された情報を受け取ったことに応答して、物理的動きセンサーから選択した１つに、複数の感度範囲から選択した１つにおいて動作させることができる。遠隔入力デバイス３０が複数の物理的動きセンサーを含む場合、遠隔入力デバイス３０は、複数の物理的動きセンサーから所望の感度範囲で動作可能な１つを選択して動作させることができる。遠隔入力デバイス３０が、複数の選択可能な感度範囲で動作可能な物理的動きセンサーを含む場合、遠隔入力デバイス３０は、この動きセンサーが動作可能な複数の感度範囲から所望の感度範囲を選択することによって、この物理的動きセンサーを所望の感度範囲で動作させることができる。
【００３１】
[0037]  要約すると、図４は、図３に示したような計算システムにおいて用いるための方法例６０のフローチャートを示す。６２において、遠隔入力デバイスに対して所望の感度範囲を、処理デバイスにおいて決定することができる。６４に示すように、６２における決定は、少なくとも部分的に、本システムにおいて実行中のアプリケーションにおける現在のコンテキストに基づくことができる。６６に示すように、６２における決定は、少なくとも部分的に、ユーザー・プロファイルに基づくことができる。
【００３２】
[0038]  ６８において、処理デバイスは、遠隔入力デバイスに所望の感度範囲で動作するように信号を送ることができる。処理デバイスは、遠隔入力デバイスの中にある動きセンサーに、７０におけるような、選択された感度範囲で動作させるように、遠隔入力デバイスに信号を送ることができる。あるいはまたは加えて、処理デバイスは、複数の動きセンサーから選択した１つに、７２におけるように、所望の感度範囲で動作させるように、遠隔入力デバイスに信号を送ることができる。
計算環境例
[0039]  図５は、実施形態および態様例を実現することができる計算環境例を示す。計算システム環境１００は、適した計算環境の一例に過ぎず、使用範囲や機能について何らかの限定を示唆することを全く意図していない。また、計算環境１００が、計算環境例１００に示される任意の１つのコンポーネントまたはコンポーネントの組み合わせに関して、いかなる依存性や要件をも有するように解釈してはならない。
【００３３】
[0040]  複数の他の汎用または特殊目的計算システム環境または構成も用いることができる。用いるのに適していると考えられる周知の計算システム、環境、および／または構成の例には、限定ではなく、パーソナル・コンピューター、サーバー・コンピューター、ハンドヘルドまたはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサ主体システム、セット・トップ・ボックス、プログラマブル消費者電子機器、ネットワークＰＣ、ミニコンピューター、メインフレーム・コンピューター、埋め込みシステム、前述のシステムまたはデバイスの内任意のものを含む分散型計算環境等が含まれる。
【００３４】
[0041]  コンピューターによって実行される、プログラム・モジュールのような、コンピューター実行可能命令を用いることができる。一般に、プログラム・モジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、データー構造等を含み、特定のタスクを実行するか、または特定の抽象的データー・タイプを実現する。分散型計算環境も用いることができ、この場合、通信ネットワークまたはその他のデーター送信媒体を通じてリンクされている遠隔処理デバイスによってタスクが実行される。分散型計算環境では、プログラム・モジュールまたはその他のデーターを、メモリー記憶デバイスを含むローカルおよびリモート双方のコンピューター・ストレージに配置することができる。
【００３５】
[0042]  図５を参照すると、システム例は、コンピューター１１０の形態をなす汎用計算デバイスを含む。コンピューター１１０のコンポーネントは、限定ではなく、演算装置１２０、システム・メモリー１３０、およびシステム・バス１２１を含むことができる。システム・バス１２１は、システム・メモリーを含む種々のシステム・コンポーネントを演算装置１２０に結合する。演算装置１２０は、マルチ・スレッド・プロセッサにおいてサポートされている論理処理ユニットのような、複数の論理処理ユニットを代表することができる。システム・バス１２１は、メモリー・バスまたはメモリー・コントローラ、周辺バス、および種々のバス・アーキテクチャの内任意のものを用いるローカル・バスを含む、様々なタイプのバス構造の内任意のものとすることができる。一例として、そして限定ではなく、このようなアーキテクチャは、業界標準アーキテクチャ（ＩＳＡ）バス、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ビデオ・エレクトロニクス標準連盟（ＶＥＳＡ）ローカル・バス、および周辺素子相互接続（ＰＣＩ）バス（メザニン・バス(Mezzanine bus)としても知られている）。また、システム・バス１２１は、通信デバイスの中でもとりわけ、二点間接続、切換ファブリック(switching fabric)等として実装することもできる。
【００３６】
[0043]  計算機１１０は、通例、種々のコンピューター読み取り可能媒体を含む。コンピューター読み取り可能媒体は、コンピューター１１０によってアクセス可能な任意の入手可能な媒体とすることができ、揮発性および不揮発性、リムーバブルおよび非リムーバブル双方の媒体を含む。一例として、そして限定ではなく、コンピューター読み取り可能媒体は、コンピューター記憶媒体および通信媒体を含むことができる。コンピューター記憶媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、またはその他のデーターというような情報の格納のために、任意の方法または技術で実現される、揮発性および不揮発性の双方、リムーバブル、および非リムーバブル媒体を含む。コンピューター記憶媒体は、限定ではなく、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリーまたはその他のメモリー技術、ＣＤＲＯＭ、ディジタル・バーサタイル・ディスク（ＤＶＤ）またはその他の光ディスク・ストレージ、磁気カセット、磁気テープ、磁気ディスク・ストレージまたはその他の磁気記憶デバイス、あるいは所望の情報を格納するために用いることができしかもコンピューター１１０がアクセス可能なその他のいずれの媒体も含む。通信媒体は、通例、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、またはその他のデーターを、搬送波またはその他の移送機構のような変調データー信号において具体化し、任意の情報配信媒体を含む。「変調データー信号」という用語は、その特性集合の１つ以上が、情報を信号内にエンコードするようなやり方で、変化している信号を意味する。一例として、そして限定ではなく、通信媒体は、有線ネットワークまたは直接有線接続というような有線媒体、ならびに音響、ＲＦ、赤外線、およびその他のワイヤレス媒体というようなワイヤレス媒体を含む。前述の内任意のものの組み合わせも、コンピューター読み取り可能媒体の範囲に含まれてしかるべきである。
【００３７】
[0044]  システム・メモリー１３０は、リード・オンリ・メモリー（ＲＯＭ）１３１およびランダム・アクセス・メモリー（ＲＡＭ）１３２のような揮発性および／または不揮発性メモリーの形態をなすコンピューター記憶媒体を含む。基本入出力システム１３３（ＢＩＯＳ）は、起動中のように、コンピューター１１０内のエレメント間における情報転送を補助する基本的なルーチンを含み、通例ＲＯＭ１３１内に格納されている。ＲＡＭ１３２は、通例、演算装置１２０が直ちにアクセス可能であるデーターおよび／またはプログラム・モジュール、あるいは現在演算装置１２０によって処理されているデーターおよび／またはプログラム・モジュールを収容する。一例として、そして限定ではなく、図５は、オペレーティング・システム１３４、アプリケーション・プログラム１３５、その他のプログラム・モジュール１３６、およびプログラム・データー１３７を示す。
【００３８】
[0045]  また、コンピューター１１０は、その他のリムーバブル／非リムーバブル揮発性／不揮発性コンピューター記憶媒体も含むことができる。一例として示すに過ぎないが、図５は、非リムーバブル不揮発性磁気媒体からの読み取りおよびこれへの書き込みを行なうハード・ディスク・ドライブ１４０、リムーバブル不揮発性磁気ディスク１５２からの読み取りおよびこれへの書き込みを行なう磁気ディスク・ドライブ１５１、ならびにＣＤＲＯＭまたはその他の光媒体のようなリムーバブル不揮発性光ディスク１５６からの読み取りおよびこれへの書き込みを行なう光ディスク・ドライブ１５５を示す。動作環境例において使用可能なその他のリムーバブル／非リムーバブル、揮発性／不揮発性コンピューター記憶媒体には、限定ではないが、磁気テープ・カセット、フラッシュ・メモリー・カード、ディジタル・バーサタイル・ディスク、ディジタル・ビデオ・テープ、ソリッド・ステートＲＡＭ、ソリッド・ステートＲＯＭ等が含まれる。ハード・ディスク・ドライブ１４１は、通例、インターフェース１４０のような非リムーバブル・メモリー・インターフェースを介してシステム・バス１２１に接続され、磁気ディスク・ドライブ１５１および光ディスク・ドライブ１５５は、通例、インターフェース１５０のようなリムーバブル・メモリー・インターフェースによって、システム・バス１２１に接続する。
【００３９】
[0046]  先に論じ図５に示すドライブおよびそれらと関連のあるコンピューター記憶媒体は、コンピューター読み取り可能命令、データー構造、プログラム・モジュール、およびコンピューター１１０のその他のデーターを格納する。図５では、例えば、ハード・ディスク・ドライブ１４１は、オペレーティング・システム１４４、アプリケーション・プログラム１４５、その他のプログラム・モジュール１４６、およびプログラム・データー１４７を格納するように示されている。尚、これらの構成要素は、オペレーティング・システム１３４、アプリケーション・プログラム１３５、その他のプログラム・モジュール１３６、およびプログラム・データー１３７と同じでも異なっていても可能であることを注記しておく。オペレーティング・システム１４４、アプリケーション・プログラム１４５、その他のプログラム・モジュール１４６、およびプログラム・データー１４７は、ここで、少なくともこれらが異なるコピーであることを示すために、異なる番号が与えられている。ユーザーは、キーボード１６２のような入力デバイス、および一般にマウス、トラックボールまたはタッチ・パッドと呼ばれているポインティング・デバイス１６１によって、コマンドおよび情報をコンピューター１１０に入力することができる。他の入力デバイス（図示せず）には、マイクロフォン、ジョイスティック、ゲーム・パッド、衛星ディッシュ、スキャナー等を含むことができる。これらおよびその他の入力デバイスは、多くの場合、ユーザー入力インターフェース１６０を介して、演算装置１２０に接続されている。ユーザー入力インターフェース１６０は、システム・バス１２１に結合されているが、パラレル・ポート、ゲーム・ポート、またはユニバーサル・シリアル・バス（ＵＳＢ）のようなその他のインターフェースおよびバス構造によって接続することも可能である。モニター１９１またはその他の形式のディスプレイ・デバイスも、ビデオ・インターフェース１９０のようなインターフェースを介して、システム・バス１２１に接続されている。モニターに加えて、コンピューターは、スピーカー１９７およびプリンター１９６のような、その他の周辺出力装置も含むことができ、これらは出力周辺インターフェース１９５を通じて接続することができる。
【００４０】
[0047]  コンピューター１１０は、リモート・コンピューター１８０のような１つ以上のリモート・コンピューターへの論理接続を用いて、ネットワーク環境において動作することも可能である。リモート・コンピューター１８０は、パーソナル・コンピューター、サーバー、ルータ、ネットワークＰＣ、ピアデバイス、またはその他の共通ネットワーク・ノードとすることができ、通例、コンピューター１１０に関して先に説明したエレメントの多くまたは全てを含むが、図５にはメモリー記憶装置１８１のみを示す。図５に示す論理接続は、ローカル・エリア・ネットワーク（ＬＡＮ）１７１およびワイド・エリア・ネットワーク（ＷＡＮ）１７３を含むが、他のネットワークも含むことができる。このようなネットワーク環境は、事務所、企業規模のコンピューター・ネットワーク、イントラネットおよびインターネットにおいては、一般的である。
【００４１】
[0048]  ＬＡＮネットワーク環境で用いる場合、コンピューター１１０は、ネットワーク・インターフェースまたはアダプター１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーク環境で用いる場合、コンピューター１１０は、通例、モデム１７２、またはインターネットのようなＷＡＮ１７３を通じて通信を確立するその他の手段を含む。モデム１７２は、内蔵でも外付けでもよく、ユーザー入力インターフェース１６０またはその他のしかるべき機構を介してシステム・バス１２１に接続することができる。ネットワーク接続環境では、コンピューター１１０に関して図示したプログラム・モジュール、またはその一部は、リモート・メモリー記憶装置に格納することもできる。一例として、そして限定ではなく、図５は、リモート・アプリケーション・プログラム１８２がメモリー・デバイス１８１上に常駐するものとして示している。尚、図示のネットワーク接続は一例であり、コンピューター間で通信リンクを確立する他の手段も使用可能であることは認められよう。
分散型計算フレームワークまたはアーキテクチャの一例
[0049]  個人計算処理(personal computing)およびインターネットの集中(convergence)に鑑み、種々の分散型計算フレームワークがこれまでに開発されており、そして開発中である。個人および業務ユーザーも同様に、アプリケーションおよび計算機のために継ぎ目なく相互動作可能でウェブに対応したインターフェースが供給され、計算活動が増々ウェブ・ブラウザまたはネットワーク指向になりつつある。
【００４２】
[0050]  例えば、MICROSOFT（登録商標）の.NETプラットフォームは、サーバー、ウェブ系データー・ストレージのようなブロック構築サービス(building-block services)、およびダウンロード可能なデバイス・ソフトウェアを含む。一般的に言うと、.NETプラットフォームは、（１）全範囲の計算機を一緒に動作させ、これらの全てにおいてユーザー情報を自動的に更新および同期させることができる。（２）ＨＴＭＬの代わりにＸＭＬを多く用いることによって、ウェブ・サイトの相互作用能力を向上させることができる。（３）例えば、電子メールのような種々のアプリケーション、またはOffice.NETのようなソフトウェアの管理のために、中央開始地点からユーザーへの製品およびサービスのアクセスおよび配信をカスタム化したことを特徴とするオンライン・サービスを提供する。（４）効率や情報へのアクセスの容易さを高める集中データー記憶、ならびにユーザーおよびデバイス間における情報の同期を提供する。（５）ｅ−メール、ファックス、および電話のような種々の通信媒体を統合することが可能になる。（６）開発者のために、再利用可能なモジュールを作成することによって、生産性を高め、プログラム・エラーの数を低減することを可能にする。（７）多くのその他のプラットフォーム間統合機構も提供する。
【００４３】
[0051]  本明細書では、計算機に位置するソフトウェアと関連付けて実施形態例について説明したが、本発明の１つ以上の部分は、.NETの言語およびサービスの全てによってサービスを実行することができ、これらの言語およびサービスにおいてサービスをサポートすることができ、またはこれらの言語およびサービスを通じてサービスにアクセスすることができ、更に他の分散型計算フレームワークにおいてもサービスを実行することができるように、コプロセッサと要求元オブジェクトとの間においてオペレーティング・システム、ＡＰＩ、またはミドルウェア・ソフトウェアを通じても実現することができる。
ネットワーク環境
[0052]  図６は、本発明を用いることができるネットワーク環境例を示す。勿論、実際のネットワークおよびデーターベース環境は種々の構成で整えることができるが、ここに示す環境例は、実施形態が動作することができる環境のタイプを理解するためのフレームワークを紹介する。
【００４４】
[0053]  このネットワーク例は、１つ以上のクライアント・コンピューター２００ａ、サーバー・コンピューター２００ｂ、データー源コンピューター２００ｃ、および／またはデーターベース２７０、２７２ａ、および２７２ｂを含むことができる。クライアント・コンピューター２００ａおよびデーター源コンピューター２００ｃは、通信ネットワーク２８０（例えば、イントラネット、インターネット等）を通じて、サーバー・コンピューター２００ｂと電子的に通信することができる。クライアント・コンピューター２００ａおよびデーター源コンピューター２００ｃは、通信インターフェース２８２によって通信ネットワークに接続することができる。通信インターフェース２８２は、イーサネット接続、モデム接続、ワイヤレス接続等のような、通信インターフェースの内任意のタイプとすることができる。
【００４５】
[0054]  サーバー・コンピューター２００ｂは、MICROSOFT（登録商標）のSQL SERVER等のような、データーベース・サーバー・システム・ソフトウェアによって、データーベース２７０の管理を行うことができる。したがって、サーバー２００ｂは、種々のデーター源からのデーターの倉庫として機能することができ、そのデーターを種々のデーター消費者に供給する。
【００４６】
[0055]  図６のネットワーク環境例において、データー源は、データー源コンピューター２００ｃによって設けることができる。データー源コンピューター２００ｃは、通信ネットワーク２８０を通じてデーターをサーバー・コンピューター２００ｂに伝達することができる。通信ネットワーク２８０は、ＬＡＮ、ＷＡＮ、イントラネット、インターネット等とすればよい。データー源コンピューター２００ｃは、データーをデーターベース２７７２ａにローカルに格納することができる。データーベース２７２ａは、データーベース・サーバー等でよい。データー源２００ｃによって供給されるデーターは、サーバー２００ｂによって維持されるデーター倉庫のような大きなデーターベースにおいて組み合わせることおよび格納することができる。
【００４７】
[0056]  クライアント・コンピューター２００ａが、サーバー・コンピューター２００ｂに格納されているデーターを用いることを望むとき、通信ネットワーク２８０を通じてデーターベース２７０にアクセスすることができる。クライアント・コンピューター２００ａは、例えば、照会、様式等を通じてデーターにアクセスすることができる。尚、コンピューターの任意の構成でも、本発明の実施形態と等しく互換性があることは認められよう。
【図１】
2011526192.tif 000003
【図２】
2011526192.tif 000004
【図３】
2011526192.tif 000005
【図４】
2011526192.tif 000006
【図５】
2011526192.tif 000007
【図６】
2011526192.tif 000008
【国際調査報告】
2011526192.tif 000009
2011526192.tif 000010