ネットワークを選択する方法であって、デバイスの地理的位置にある1または複数のネットワークの帯域幅データの要求を前記デバイスから受信する工程と、前記1または複数のネットワークの帯域幅データをデータベースから受け取る工程と、前記帯域幅データを前記デバイスに送信する工程と、前記デバイスにおいて、前記1または複数のネットワークの信号強度データには基づかずに前記帯域幅データのみに基づいて、ネットワークを選択する工程と、を備える、方法。請求項1に記載の方法であって、前記要求は、位置データを含む、方法。請求項2に記載の方法であって、さらに、前記位置データを信号強度データから導出する工程を備える、方法。請求項1に記載の方法であって、帯域幅データを受け取る工程は、さらに、位置データを用いる工程を含む、方法。請求項1に記載の方法であって、前記デバイスは、ネットワークをスキャンしない、方法。請求項1に記載の方法であって、前記選択されたネットワークは、前記地理的位置にある別のネットワークよりも弱い信号強度を有する、方法。新しいネットワークに移行する方法であって、現在の信号強度および現在の帯域幅を有する現在のネットワークを利用する工程と、別のネットワークを選択するための要求をサービスプロバイダに送信する工程と、新たな信号強度および新たな帯域幅を有する新たなネットワークに移行する工程と、を備える、方法。請求項7に記載の方法であって、前記新たな帯域幅は、前記現在の帯域幅よりも高速である、方法。請求項7に記載の方法であって、前記新たな信号強度は、前記現在の信号強度よりも弱い、方法。請求項7に記載の方法であって、さらに、ブラックアウトエリアを避けるために、ユーザに指示を送信する工程を備える、方法。デバイスが帯域幅データに基づいてネットワークに移行することを可能にする方法であって、第1のネットワークを用いているデバイスの位置データを受信する工程と、前記位置データを用いて、前記デバイスの地理的エリアにある1または複数のネットワークを決定する工程と、帯域幅データに基づいて、前記第1のネットワークよりも高い帯域幅を有する第2のネットワークに前記デバイスを移行させる工程と、を備える、方法。請求項11に記載の方法であって、前記第1のネットワークは、前記デバイスにとって前記第2のネットワークよりも強い信号強度を有する、方法。請求項11に記載の方法であって、前記位置データは、GPSデータである、方法。ネットワーク帯域幅データベースを更新する方法であって、特定の地理的位置にあるテストデバイスからネットワーク帯域幅データおよび位置データを取得する工程と、前記位置データを用いて、前記ネットワーク帯域幅データベース内の1または複数のレコードを特定する工程と、前記テストデバイスから受信した前記ネットワーク帯域幅データで、前記1または複数のレコードの内の1つに含まれる前記帯域幅データを更新することにより、前記ネットワーク帯域幅データベースが現在の帯域幅データを有するように維持する工程と、を備える、方法。請求項14に記載の方法であって、ネットワーク帯域幅データを取得する工程は、さらに、大量のテストデータを用いてテストを実行する工程を含む、方法。請求項14に記載の方法であって、ネットワーク帯域幅データを取得する工程は、さらに、実際のデータを用いる工程を含む、方法。請求項14に記載の方法であって、テストデバイスは、前記テストデバイスのバッテリ寿命に基づいて選択され、バッテリ寿命が特定の閾値未満である場合、前記テストデバイスは、テストを行うのに適任でない、方法。請求項14に記載の方法であって、非テストデバイスによって実行された実際のデータ送信のデータが、ランダムに前記ネットワーク帯域幅データベースを更新するために用いられる、方法。本発明に従ったアプリケーションセキュリティ処理およびシステムの実施形態の例について説明する。これらの例および実施形態は、背景を追加して本発明の理解を助けるためだけに提供されている。したがって、当業者にとって明らかなように、本発明は、本明細書に記載する具体的な詳細事項の一部または全てがなくとも実施可能である。また、本発明が不必要に不明瞭となることを避けるため、周知の概念については詳細に説明していない。他の応用例および例も可能であり、以下の例、図面、および、文章は、範囲または設定を決定または限定するものと見なされるべきではない。これらの実施形態は、当業者が本発明を実施できるくらい十分に詳述されているが、これらの例、図面、および、文章は、限定を意図するものではなく、本発明の精神および範囲を逸脱することなく、他の実施形態を利用したり変更を行ったりすることができる。ネットワークの帯域幅のグレードまたは強度は、どのネットワークが携帯デバイスまたはその他のコンピュータデバイスに良好な全体的性能を提供するのかを示すより良い指標として利用できる。すなわち、どのネットワークが、より速いデータ伝送を可能にし、一般に、より良好なカバー範囲を提供するのかを示すより良好な指標を提供しうる。特に、選択されたネットワークが必ずしも最も強い信号を有していなくてもよい。最高の帯域幅を有するネットワークのアクセスポイントまたは電波塔が、実際、より高い信号強度を提供することが可能であると共にユーザのより近くにある他のネットワークの電波塔およびアクセスポイントよりも、ユーザから遠い場合がある。デバイスが、ネットワークまたは信号強度について電力集中的にエリアのスキャンを必ずしも実行する必要なく、最高の帯域幅グレードまたは利用可能性を有するネットワークに接続することを可能にする方法およびシステムについて、様々な図を用いて説明する。重要な課題の1つは、帯域幅が主要な要素であり、一部の例では唯一の要素である場合もあるが、ユーザが、帯域幅だけでなく、料金、ブラックアウトエリアなど他の要素も考慮して、接続すべき最良のネットワークを選択できることを保証する、または、少なくとも、最も適切な情報をユーザに提供することである。本発明は、どのネットワークにいつどのように接続するかに関して、携帯デバイスが予測決定を行うことを可能にするためのエージェントベースの帯域幅監視として説明できる。携帯デバイスは、エージェントまたはサプリカントクライアントとも呼ばれるを含んでおり、かかるエージェントは、デバイス上にすでに存在して本発明を実現するためのさらなる機能を与えられるものでもよいし、少なくとも最初は本発明の帯域幅およびネットワーク決定機能を実装するためだけに用いられる新しいモジュールであってもよい。上述のように、本発明の主要な課題の1つは、ネットワークの信号強度を決定するためだけにデバイスが行う常時のネットワークスキャンを避けることである。一実施形態において、本発明は、サービスプロバイダによって稼働されるデータベースを利用し、データベースは、ネットワーク帯域幅データをユーザに提供して、デバイスが最高の帯域幅グレードを有するネットワークに自動的に切り換えることを可能にする。データベースは、一般に、位置例えば、GPS座標、ネットワーク利用可能性、および、ネットワーク帯域幅に関するデータを含んでおり、ネットワーク信号強度など他の情報を含んでもよい。位置データは、電波塔IP、無線アクセスポイントから取得されてもよいし、その他の周知の方法で取得されてもよい。ネットワーク帯域幅データは、サービスの実際のユーザによって作動されるテスタまたはセンサデバイスを用いて取得されてよい。これらのテスタは、それらのエリア内のネットワークに関する帯域幅および待ち時間情報をサービスプロバイダに提供する。テスタの数は、サービスのユーザ基盤におけるユーザ数に応じて変化してよい例えば、ユーザ500人またはユーザ1000人ごとに1つのテスタが存在してよい。これらのテスタは、ランダムに選択されてもよいが、特定の基準を満たすよう求められてもよい。例えば、テスタのデバイスは、テストを実行するのに適切または十分なバッテリ寿命を有し、テストによって電力を失うという危機にテスタをさらさないことが好ましい。バッテリ寿命の短いシステムのユーザは、高価なネットワークスキャンの実行に残りの電力を費やさないことが好ましい。特定の量のバッテリ寿命閾値量、例えば、75を超えているユーザのみが、テスタに適任でありうる。テスタが無料のサービスを使っていて有料加入者ではない人であるという別の要素があってもよい。テスタは、無料のサービスを使っているユーザまたはテスタを免除されていないユーザのプールから選択されてよい。上述のように、サービスに登録しているシステムのユーザが、サービスプロバイダによってテスタまたはエージェントとして選択されてよい。テスタまたはセンサは、帯域幅を決定するためにネットワークに接続する必要がなくてよい。実際のユーザの位置は、GPSが正確な位置を与えているという十分に高い信頼度をサービスプロバイダが持っている場合、GPSを用いてサービスプロバイダによって決定されてよい。十分に高い信頼度がない場合、サービスプロバイダは、ユーザ周辺のネットワークの信号強度を用いることができる。しかしながら、この場合、ユーザは、従来のようにネットワーク信号強度についてエリアをスキャンしなければならない。他の実施形態において、サービスプロバイダは、信号強度およびGPSを用いて、ユーザの位置を決定することができる。上述のように、サービスプロバイダは、位置、ネットワーク、および、帯域幅データのデータベースを管理する。データベースは、自己学習データベースとして記載されてよく、テスタおよび非テスタユーザからデータを取得することによって拡大する。すなわち、データベースは、時間をかけて、ユーザからネットワーク帯域幅データに関する知識を収集する。予想の通り、特定のエリア内のネットワークの帯域幅に関するデータは、頻繁に変化しうる。少数のランダムなテスタまたはエージェントが、定期的に、例えば、数秒ごとにスキャンされてよい。かかるテスタまたはエージェントは、GPS位置データを提供することによってサービスプロバイダに位置を知らせてよい。これは、エージェントのバッテリ寿命への影響を最小化しうる。サービスプロバイダは、帯域幅に基づいて最良のネットワーク接続を見出すためにテスタの地理的位置を取得する。地理的位置は、テスタの標高を含みうる。次いで、この帯域幅テスト情報は、データベースに格納される。データベースは、一般に、位置および帯域幅グレードもしくは帯域幅グレードおよび位置として組織化されてよい。テスタおよびデータベースについては、以下で詳述する。一般に、携帯デバイスによって行われるネットワークスキャンは電力を消費するので、これを最小化することが望ましい。テスタの携帯デバイススマートフォンまたはラップトップなどは、インターネット接続またはセルラーデータネットワークを介して一意的なデバイス識別子をサービスプロバイダに送信する。このIDは、デバイスの実際のユーザを特定する任意の情報をサービスプロバイダサーバに送ることを排除する。実際のユーザのIDは必要なく、一実施形態においては、取得されないか、もしくは、サービスプロバイダによって難読化される。送信されたデータは、電波塔ID、GPS位置、および、その他のデータを含んでよい。次いで、テスタまたはエージェントは、エリア内の特定の数例えば、最初の5つのネットワークをスキャンまたはネットワークの測定値を得てよく、このエリア内の別のユーザは、このエリアの他のネットワーク例えば、ネットワーク6から10をスキャンしてよく、以下同様に続く。このエリア内の他のエージェントは、他のネットワークをスキャンするために用いられてよい。この文脈において、スキャンすることは、帯域幅の測定値を得るために各ネットワークから大量のデータをダウンロードまたはアップロードすることからなってよい。当業者に周知の通り、一般に、帯域幅データを取得するには、ネットワークを介してデータを送信する必要がある。これは、正確な帯域幅測定値を得るためのテストデータ通例は、大量のデータであるでありうる。別の実施形態において、ユーザによって実行される動画のダウンロードおよびその他の大量のデータのダウンロードなど、実際のダウンロードが、帯域幅を測定するために用いられてよく、その場合、人為的はテストデータは必要ない。サービスを利用するユーザが、特定の量を超えることがわかっているコンテンツをダウンロードする時、システムは、この実際の動作を利用して帯域幅を測定することが可能であり、テストによって帯域幅を測定することすなわち、ネットワークの帯域幅を測定するためだけに人為的にデータのダウンロードまたは送信を実行することを必ずしも必要としない。他の実施形態においては、帯域幅を取得するための他の手段からなっていてもよい。このように、サービスプロバイダは、特定のエリア内のネットワーク帯域幅の状況またはスナップショットを構築できる。このデータは、システムの他のユーザのためにデータベースに格納される。このように、システムの全ユーザが、ネットワーク帯域幅に関して収集されたデータから恩恵を受ける。データベースは、ネットワークに接続された携帯デバイスを有するユーザによって、連続的または頻繁に更新されてよい。例えば、サービスプロバイダは、ユーザが接続されたネットワークのネットワーク帯域幅データを取得できる。このように、データベース内の帯域幅データは、連続的およびランダムに更新される。エリアがテスト済みであるか、または、最近認証されたエリアである場合、そのエリアの帯域幅テストは必要とされなくてもよい。別の実施形態において、サービスプロバイダは、誤解を招くまたは歪んだ帯域幅データまたは信号強度データなど間違った情報をサービスプロバイダに送信している悪いまたは悪意のあるデバイスおよびユーザ特にテスタをテストする方法があることを保証しうる。この種のひどい行動は、大きく異なるデータを送信している他のテスタまたはユーザがエリア内に存在する場合例えば、エリア内の全ネットワークが小さい帯域幅を有するとデータが示す時に、或るネットワークが大きい帯域幅を有すると或るユーザが示す場合に検出されうる。例えば、サービスプロバイダは、統計的な異常を探して、偽のエージェントをフィルタアウトすることができる。悪いユーザは、或るエリア内の特定のネットワークが広い帯域幅を有することを示すネットワーク帯域幅データを送信することで、他のユーザにそのネットワークを利用させて、悪いユーザが個人データにアクセスできるようにすることがある。かかるユーザは、システムから排除されることが好ましい。一実施形態において、携帯デバイスがすでに無線クライアントまたはサプリカントを有する場合、同じクライアントが、帯域幅を試験するために本発明に従って変形されてよい。上述のように、サービスプロバイダに返される主要なデータ項目の1つは、携帯デバイスの位置である。信号強度またはその他のネットワークサービスに利用されうる既存の無線クライアントにおいては、通例、この情報は必要ない。本発明の課題の1つは、空間にわたるネットワークの帯域幅および信号の勾配を取得することである。携帯デバイスの位置が提供されると、サービスプロバイダは、空間に関してわかっていることに基づいて、接続すべき最良のネットワークを決定することができる。一部の例では、デバイスは、必要に応じて、その方向および速度を送信することが可能であり、この情報の一部をキャッシュしてよい。上述のように、本発明の一実施形態では、サービスプロバイダが、ネットワーク帯域幅に関するデータを含むデータベースを保持する。ユーザは、任意の時間にユーザのエリアにあるネットワークのネットワーク帯域幅データをユーザに提供するサービスサービスプロバイダによって提供されるに登録できる。ユーザのエリアは、携帯デバイス/ノマディックデバイス内のGPSトランスミッタまたは要素を用いて決定されてよい。一実施形態において、サービスプロバイダは、GPSを通してユーザの位置を知ることができる。サービスプロバイダによって保持されているデータベースは、電波塔ID、GPS座標、および、そのGPS位置での特定の電波塔のネットワーク接続回線速度パイプ性能などのデータを有してよい。データベースは、さらに、電波塔アクセスポイント、TDMA、Wi-Maxなどの従来の信号強度、機能停止データ、日付、および、電波塔またはアクセスポイントに関するその他の補助データを有してもよい。一実施形態において、ユーザを特定するために利用できる実際のユーザデータは、データベースに格納されない。主要なデータは、GPS座標である。ユーザ/加入者は、そのGPS座標内にいれば、利用可能なネットワークの各々またはネットワークの少なくとも一部についてデータベースに格納された情報が送信される。このデータは、デバイスが最良のネットワークを選択するために利用できるパイプ性能データを含む。別の実施形態において、サービスプロバイダは、デバイスにとって最良のネットワークを選択する。データベースは、他の加入者から情報を収集しつつ、空間にわたるネットワークに関するデータを増やすことができる。このように、すでに特定のGPS座標にいるユーザは、自身のデバイスを通して、そのエリア内のネットワークの内の1つ、いくつか、または、全部の帯域幅に関するデータパイプ性能をデータベースに送信できる。この意味で、データベースは、ユーザの数が増えるにつれ、よりインテリジェントになる、すなわち、基本的に自己学習データベースである。一実施形態において、サービスによって管理されるデータベースまたはデータリポジトリは、地域または地理的位置によって組織化されてよい。時々、サービスプロバイダは、システムをテストしてネットワークデータをよりロバストにするために、ランダムネスを追加してよい。処理は、ユーザ/加入者が自身のGPS位置をサービスに送信する工程で始まる。サービスは、このデータを用いて、データベース内の対応するレコードすなわち、同じまたは近いGPS座標を有するレコードを見出しうる。ユーザの位置の取得は最初の工程であり、その後に、適切なレコードが受け取られる。これらのレコードからのデータを処理した後、サービスは、回線速度すなわち、パイプ性能に基づいたネットワークのリストをユーザに送信し、ユーザは、従来の信号強度の代わりにこれらの基準に基づいてネットワークを選択できる。他の実施形態において、サービスが、ユーザにとって最良の性能のネットワークを自動的に選択してもよい。これは、ユーザが自動車または列車などで移動中で、ネットワークアクセスポイント通例、公的に利用可能なアクセスポイントまたは電波塔が頻繁に変化している時に、有用なことがある。サービスは、各移行中に、ユーザにとって最も高い帯域幅を有するネットワークを選択しうる。この点において、システムは、ユーザが、異なるエリア、空間、標高または高度などに移行する時に、帯域幅に基づいてユーザのためのネットワークを切り換えることから、予測的なシステムとして記載されうる。これは、デバイスが、利用可能なネットワークの信号強度を継続的または間欠的にスキャンする必要性を排除する。このデータは、もはやデバイスによって必要とされないため、デバイスのバッテリ電力が節約される。もう一つの課題は、認証のためのハンドシェイキングが高価であることを考慮して、デバイスがアクセスポイントで認証を行うのに最良の時を知るデバイスの能力を基本的に高めることである。この処理は、インテリジェント切り替えと呼ぶこともできる。これらの方法およびシステムによれば、デバイスがネットワークを継続的にスキャンしてネットワークの信号強度を評価する必要がなくなるため、デバイスのバッテリ電力が節約される。さらに、最良の性能のネットワーク、すなわち、単に最大の信号強度を有するネットワークではなく最大の帯域幅またはパイプ性能を提供するネットワークをユーザに提供する。別の実施形態において、サービスプロバイダは、帯域幅データに基づいてユーザがブラックアウトエリアを避けるのを助けるための処理を実施する。ユーザが、ネットワークのないブラックアウトエリアにいる場合、または、ネットワークはあるが帯域幅がない場合、サービスは、利用可能な帯域幅を持つネットワークを確保するために特定の方向例えば、5ブロック南または0.5マイル東に移動するようユーザに通知できる。例えば、サービスプロバイダは、ユーザが特定の方向に進むかまたは別のルートを取ればブラックアウトを回避できると、ユーザに通知してよい。これに関連して、処理は、ブラックアウトエリアを避けるために別のルートを取ること例えば、比較的真っ直ぐのルートに存在する4分の1マイルのブラックアウトエリアを避けるために別のルートで2マイルを移動することがユーザにとって意味をなすまたは効率的でありうるのかそうでないのかをチェックするためのアルゴリズムを有してもよい。ユーザは、ブラックアウトエリアが短いことを知らされうるが、ネットワークへの接続を維持したいために、より長い別のルートを取りたいと思う場合がある。図1は、一実施形態に従って、サービスプロバイダによって提供されたネットワーク選択サービスを用いるサービスプロバイダサーバおよび携帯デバイスを示す簡略なネットワーク図である。サービスプロバイダは、ネットワーク帯域幅およびその他のデータを格納するためのデータベース104を含むサーバ102を有する。サービスプロバイダは、インターネット108を介してユーザデバイスラップトップ110およびユーザハンドセットデバイス112などにネットワークデータ106を送信する。各デバイスは、位置データなどのデータ118および120をサーバ102に送信するエージェントまたはサプリカント114および116を有する。サプリカント114および116は、デバイス110および112上にすでに存在して他のネットワーク関連機能を実行するモジュールであってもよいし、ネットワーク帯域幅データを処理するためだけに用いられる新たなモジュールであってもよい。図2は、3つのネットワークおよび2人のユーザを示すネットワーク図である。ユーザ1は、円202で示されるネットワークAの測定可能な信号強度の範囲内にいる。ユーザ2は、円204で示されるネットワークBの測定可能な信号強度の範囲内にいる。第3のネットワークが、円206として示されている。円は、信号強度を示しており、ユーザが円の中心に近くなるほど、信号強度が強くなる中心は、無線アクセスポイントまたは電波塔を表しうる。この例では、ネットワークA内のユーザ1に対する信号強度は、ネットワークBの信号強度よりも強い。ユーザ2に対しては、逆が正しい。ユーザ1に対するネットワークCの信号強度は、ネットワークBよりも強い。したがって、この例では、ユーザ1はネットワークAに接続し、ユーザ2はネットワークBに接続する。しかし、ネットワークCの帯域幅がネットワークAおよびBの両方よりも高い場合、ユーザ1およびユーザ2は両者とも、それぞれネットワークAおよびBの代わりにネットワークCに接続する。後に、サービスプロバイダのデータベース内の帯域幅情報が変化して、ネットワークBがより高い回線容量を有する場合、ユーザ達はネットワークBに接続し、ネットワークBは、たまたまユーザ2にとって最大の信号強度を有するものでもある。図3は、様々な実施形態に従って、サービスプロバイダデータベース内のレコードの2つのフォーマットを示すブロック図である。レコード300は、以下の4つのフィールドを有する:位置データ302、ネットワークID304、帯域幅データ306、および、信号強度308である。他の実施形態において、他のフィールドが含まれてもよいし、レコード300が、図示したフィールドよりも少ないフィールドを有してもよい。レコード300において、位置データフィールド302は、サービスプロバイダがユーザから位置データを受信した場合に、帯域幅データをルックアップするために用いられてよい。レコード318は、ネットワークIDフィールド310、帯域幅データフィールド312、位置データフィールド314、および、信号強度フィールド316を有する。このフォーマットを用いれば、サービスプロバイダは、位置データが利用可能でない場合または信頼できない場合に、ネットワークID例えば、ネットワークAを用いて、ネットワークの帯域幅データをルックアップすることができる。どのフォーマットが最も適切であるかは、部分的には、位置に関する分解能と、何が実際的であるかに依存しうる。図4は、本発明の一実施形態に従って、どのネットワークが帯域幅に関して最良でありうるのかをデバイスのユーザに通知する処理のフローチャートである。工程402で、ユーザが、ユーザの位置と共に要求をサービスプロバイダに送信する。別の実施形態では、位置が利用できないか信頼できない場合があり、ユーザは、位置を決定するためにサービスプロバイダによって利用されうるネットワークスキャンを実行してもよい。工程404で、サービスプロバイダは、位置データに基づいて帯域幅データをルックアップする。これは、上述のレコードフォーマット300を用いて実行できる。別の実施形態では、ネットワークIDが利用可能である場合があり、サービスプロバイダは、レコードフォーマット318を用いて帯域幅データをルックアップするために、そのIDを用いることができる。工程406で、サービスプロバイダは、帯域幅データおよび他のネットワークデータをデバイスに送信する。別の実施形態において、サービスプロバイダは、帯域幅パイプ性能に基づいて、どのネットワークに接続すべきかを決定して、このデータをユーザに送信するか、もしくは、そのネットワークにユーザを移行させてよい。工程408で、デバイスは、データを受信し、そのデータを用いて、接続すべきよりよいネットワークを選択する。これは、デバイスによって自動的に実行されてもよい。図5は、一実施形態に従って、ネットワーク帯域幅データベースを更新する処理のフローチャートである。工程502で、テスタまたはセンサデバイスが、大量のテストデータまたは実際のダウンロードを用いるなど、任意の適切な手段を用いてネットワークの帯域幅データを取得する。テスタデバイスは、テスタのエリア内の1または複数のネットワークに関する帯域幅データを取得すると、工程504で、帯域幅データおよびテスタの位置を含むメッセージを作成し、サービスプロバイダに送信する。工程506で、サービスプロバイダは、メッセージを受信し、データベース内の帯域幅データを更新する。このように、帯域幅データは、他のユーザがこのエリア内のネットワークについての正確な帯域幅を受信することを保証するために、頻繁かつランダムに更新される。図6Aおよび図6Bは、本発明の実施形態を実装するのに適したコンピュータシステム600を示す。図6Aは、コンピュータシステムの物理的形状の一例を示す。もちろん、コンピュータシステムは、集積回路、プリント回路基板、小型携帯デバイス携帯電話、ハンドセット、または、PDAなど、パーソナルコンピュータ、または、スーパーコンピュータを含む、多くの物理的形態を有してよい。コンピュータシステム600は、モニタ602、ディスプレイ604、筐体606、ディスクドライブ608、キーボード610、および、マウス612を備える。ディスク614は、コンピュータシステム600とデータをやり取りするために用いられるコンピュータ読み取り可能な媒体である。図6Bは、コンピュータシステム600のブロック図の一例である。システムバス620には、様々なサブシステムが取り付けられている。1または複数のプロセッサ622中央処理装置すなわちCPUとも呼ぶが、メモリ624などの記憶装置に接続されている。メモリ624は、ランダムアクセスメモリRAMおよび読み出し専用メモリROMを含む。当業者に周知のように、ROMは、CPUに対して単方向的にデータおよび命令を転送するよう機能し、RAMは、通例、双方向的にデータおよび命令を転送するために用いられる。これらのタイプのメモリは両方とも、後に示す任意の適切なコンピュータ読み取り可能媒体を含みうる。CPU622には、さらに、固定ディスク626が、双方向的に接続されており、さらなるデータ記憶容量を提供している。固定ディスク526も、後に示すコンピュータ読み取り可能媒体のいずれを含みうる。固定ディスク626は、プログラムやデータなどを格納するために用いられてよく、通例は、一次記憶装置よりも遅い二次記憶媒体ハードディスクなどである。固定ディスク626内に保持された情報は、必要に応じて、メモリ624内の仮想メモリとして標準的な方法で組み込まれてよいことを理解されたい。リムーバブルディスク614は、後に示すコンピュータ読み取り可能な媒体のいずれの形態を取ってもよい。CPU622は、さらに、ディスプレイ604、キーボード610、マウス612、および、スピーカ630など、様々な入力/出力デバイスに接続されている。一般に、入力/出力装置は、ビデオディスプレイ、トラックボール、マウス、キーボード、マイク、タッチセンサ式ディスプレイ、トランスデューサ式カードリーダ、磁気または紙テープリーダ、タブレット、スタイラス、音声または手書き認識装置、バイオメトリクスリーダ、もしくは、他のコンピュータ、のいずれであってもよい。CPU622は、任意選択的に、ネットワークインターフェース640を用いて、他のコンピュータや電気通信ネットワークに接続されてもよい。かかるネットワークインターフェースを用いて、CPUは、上述の方法の工程を実行する際に、ネットワークから情報を受信、または、ネットワークに情報を出力してよい。さらに、本発明の方法の実施形態は、CPU622単体で実行されてもよいし、インターネットなどのネットワークを介して、処理の一部を分担する遠隔CPUと協働で実行されてもよい。本発明の実施形態および応用例を図示および記載したが、本発明の概念、範囲、および、精神の範囲内で多くの変更例および変形例が可能であり、これらの変更例は、本願を読めば当業者にとって明らかになる。したがって、ここに記載の実施形態は、例示的なものであって、限定的なものではないとみなされ、本発明は、本明細書に示した詳細事項に限定されず、添付の特許請求の範囲および等価物の範囲内で変形されてもよい。