(57)【要約】【課題】無線通信デバイスの中のエリアコードを変更するための、配送者からの認可を提供するシステムおよび方法を提供すること。【解決手段】無線通信デバイスは持続性メモリの中に有効なエリアコードテーブルを内蔵する。該テーブルは無線通信デバイスによって使用され得るエリアコードの完全なセットを定義する。無線デバイスはネットワークから、現在のエリアコードを有効なエリアコードテーブルからの新しいエリアコードに変更するための指示を受信することができる。有効なエリアコードの新しいテーブルのインストレーションの後、無線通信デバイスは現在のエリアコードから有効なエリアコードの新しいテーブルの中の新しいエリアコードに変更することを指示され得る。【選択図】なし【特許請求の範囲】
【請求項１】
無線通信ネットワークを介して配送者と通信的に結合された無線通信デバイスに対して無線によるエリアコード更新を提供する方法であって、前記無線通信デバイスは、有効なエリアコードテーブルを備え、
前記方法は、
前記無線通信デバイスが、前記無線通信ネットワークを介して、前記無線通信デバイスのエリアコードを新しいエリアコードへと更新するための更新指示を受信することと、
前記無線通信デバイスが、前記新しいエリアコードが前記有効なエリアコードテーブルの中に含まれるかどうかをチェックすることにより、前記新しいエリアコードが認可されているかどうかを決定することと、
前記新しいエリアコードが認可されている場合には、前記無線通信デバイスは、前記無線通信デバイスのエリアコードを前記新しいエリアコードに更新することと、
前記新しいエリアコードが認可されていない場合には、前記無線通信デバイスは、前記無線通信デバイスのエリアコードを更新しないことと
を含み、
前記配送者は、前記無線通信デバイスのエリアコードの所望の更新が前記有効なエリアコードテーブルの中に含まれていない場合に、前記無線通信ネットワークを介して前記無線通信デバイスに更新された有効なエリアコードテーブルを送信する、方法。
【請求項２】
前記更新指示は、オペコードおよびデータペイロードを含み、前記データペイロードは少なくとも前記新しいエリアコードを含む、請求項１に記載の方法。
【請求項３】
前記更新指示は、前記無線通信ネットワークに接続されていない第三者デバイスから受信される、請求項１に記載の方法。
【請求項４】
前記無線通信デバイスが、前記更新指示を受信した後に、前記エリアコード更新が前記配送者により認可されているか否かを決定するために前記無線通信ネットワークを介して前記配送者に問い合わせを送信することと、
前記配送者が、前記エリアコード更新が認可されているか否かを示す前記問い合わせに対する応答を送信する送信することと
をさらに含み、
前記無線通信デバイスは、前記エリアコード更新が前記配送者により認可されていない場合には、前記無線通信デバイスのエリアコードを更新しない、請求項３に記載の方法。
【請求項５】
無線通信ネットワークを介して配送者と通信的に結合された無線通信デバイスであって、前記無線通信デバイスは、有効なエリアコードテーブルを備え、
前記無線通信デバイスは、
前記無線通信ネットワークを介して、前記無線通信デバイスのエリアコードを新しいエリアコードへと更新するための更新指示を受信する手段と、
前記新しいエリアコードが前記有効なエリアコードテーブルの中に含まれるかどうかをチェックすることにより、前記新しいエリアコードが認可されているかどうかを決定する手段と
を備え、
前記新しいエリアコードが認可されている場合には、前記無線通信デバイスは、前記無線通信デバイスのエリアコードを前記新しいエリアコードに更新し、
前記新しいエリアコードが認可されていない場合には、前記無線通信デバイスは、前記無線通信デバイスのエリアコードを更新せず、
前記配送者は、前記無線通信デバイスのエリアコードの所望の更新が前記有効なエリアコードテーブルの中に含まれていない場合に、前記無線通信ネットワークを介して前記無線通信デバイスに更新された有効なエリアコードテーブルを送信する、無線通信デバイス。
【請求項６】
前記更新指示は、オペコードおよびデータペイロードを含み、前記データペイロードは少なくとも前記新しいエリアコードを含む、請求項５に記載の無線通信デバイス。
【請求項７】
前記更新指示は、前記無線通信ネットワークに接続されていない第三者デバイスから受信される、請求項５に記載の無線通信デバイス。
【請求項８】
前記更新指示を受信した後に、前記エリアコード更新が前記配送者により認可されているか否かを決定するために前記無線通信ネットワークを介して前記配送者に問い合わせを送信する手段と、
前記エリアコード更新が認可されているか否かを示す前記問い合わせに対する応答を前記配送者から受信する手段と
をさらに備え、
前記無線通信デバイスは、前記エリアコード更新が前記配送者により認可されていない場合には、前記無線通信デバイスのエリアコードを更新しない、請求項７に記載の無線通信デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は該して無線通信の分野に関する。より詳細には、無線通信デバイスの中のエリアコードを無線により再プログラムするための安全なシステムおよび方法に関する。
【背景技術】
【０００２】
無線通信ネットワーク上で通信可能な任意の種類のデバイスを含む、無線通信デバイスの製造業者は、一般的にＳｐｒｉｎｔ，Ｖｅｒｉｚｏｎ，ＡＴ＆Ｔ  Ｍｏｂｉｌｅ，およびその他のようなネットワークアクセスプロバイダ（ここでは「配送者（ｃａｒｒｉｅｒ）」とも称する）によって資金援助（ｓｕｂｓｉｄｉｚｅｄ）されている。無線通信デバイス（ここでは「無線デバイス」、「ハンドセット」または「モバイルデバイス」とも称する）が製造されるとき、通常それはプログラムされ付与され（ｐｒｏｖｉｓｉｏｎｅｄ）る。あるいは、無線通信デバイスは、それが配送者によって動作状態にされるときに、プログラムされ付与され得る。
【０００３】
無線通信デバイスをプログラムし付与する（ここでは合わせて「プログラムする」と称する）ことは、ハンドセットにそのプロフィールを提供する。ハンドセットのプロフィールは、その電話番号（ここでは「マシン識別番号」または「ＭＩＮ」とも称する）、そのエリアコード（ここでは「ＭＩＮ２」とも称する）、およびその他の動作パラメータ、ネットワークパラメータ、およびアプリケーションソフトウェアを含む。これらのアイテムはハンドセット上の持続性メモリの中に置かれ、それらは認可なしには変更または削除されることはできない。
【０００４】
特定の配送者のネットワーク上でのハンドセットの使用は、ハンドセットに指定されるエリアコードによって支配され得る。現行のハンドセットにおいては、ハンドセットが別の配送者のネットワーク上で使用されることを許容するために、エリアコードは変更されることができる。ハンドセットの製造業者を資金援助する配送者のネットワークとは別のネットワーク上で使用するために、ハンドセットをこのように変更できることは、配送者の資金援助に対する意欲を低下させ、ひいては消費者に対するハンドセットのコストを上昇させる。
【０００５】
それ故に、エリアコードまたは有効なエリアコードテーブルに対する認可を得ない変更に対抗するための、ハンドセットの中の追加的なセキュリティを提供するためのシステムおよび方法が必要とされる。
【発明の概要】
【課題を解決するための手段】
【０００６】
現行のハンドセットは一般に、かなり安価なソフトウェアユーティリティおよびシリアル接続を用いて、現場で再プログラムされ得る。このような再プログラムは、一般的には特定の配送者によって資金援助されたこれらのハンドセットが、他の配送者の無線通信ネットワークでの使用のためにグレイまたはブラックマーケットの中で販売されることを許容する。
【０００７】
エリアコードの変更に先立ってサービスプロバイダ（ここでは「配送者」とも称する）からの認可を提供する、無線通信デバイスの中のエリアコードを変更するためのシステムおよび方法が提示される。無線通信デバイスは持続的メモリの中に有効なエリアコードテーブルを内蔵する。該テーブルは該無線通信デバイスによって使用され得るエリアコードの完全なセットを定義する。無線デバイスはネットワークから無線による指示（ｏｖｅｒ  ｔｈｅ  ａｉｒ  ｉｎｓｔｒｕｃｔｉｏｎ）を受信することができ、該指示は現在のエリアコードを有効なエリアコードテーブルからの新しいエリアコードと交換させる。
【０００８】
代替案として、無線デバイスはネットワークから無線による指示を受信することができ、該指示は現在の有効なエリアコードテーブルを、該指示のデータペイロードの中に提供される新しい有効なエリアコードテーブルと置き換えさせる。新しい有効なエリアコードテーブルのインストレーションの後に、無線通信デバイスは現在のエリアコードを新しい有効なエリアコードテーブルからの新しいエリアコードと交換するように指示され得る。
【０００９】
ここに提示されたシステムおよび方法のさらなる利点および応用は、詳細な記載内容をさらに吟味した後に明らかとなる。
（項目１）
無線通信ネットワークと通信的に結合された無線通信デバイスに対して、無線によるエリアコード更新を提供するための方法であって、
無線通信デバイスに対する新しいエリアコードを識別することと、
該新しいエリアコードを備える更新通信を構成することと、
無線通信ネットワークを経由して該無線通信デバイスに、該更新通信を送信することと、
を包含する、方法。
（項目２）
前記新しいエリアコードは有効なエリアコードのセットから識別される、項目１に記載の方法。
（項目３）
前記更新通信は、前記無線通信デバイスに前記エリアコードを更新することを指示するオペレーションコードをさらに備える、項目１に記載の方法。
（項目４）
前記更新通信を受信した後に、前記無線通信デバイスにおいて、
認可サーバーからの認可を要求することと、
該要求に対応する認可サーバーからの認可を受信することと、
前記更新通信を実行することと、
をさらに包含する、項目３に記載の方法。 
（項目５）
無線通信ネットワークと通信的に結合された無線通信デバイスに対して、無線によるエリアコード更新を提供するための方法であって、
無線通信デバイスに対するエリアコードの新しいセットを識別することと、
該無線通信デバイスに対する新しいエリアコードを識別することであって、該新しいエリアコードは新しいエリアコードの該セットの中に含まれる、ことと、
エリアコードの該新しいセットおよび該新しいエリアコードを備える更新通信を構成することと、
無線通信ネットワークを経由して該無線通信デバイスに、該更新通信を送信することと、
を包含する方法。
（項目６）
エリアコードの前記新しいセットは有効なエリアコードのみを備える、項目５に記載の方法。
（項目７）
前記更新通信は、前記無線通信デバイスに、エリアコードの前記セットおよび前記エリアコードを更新することを指示するオペレーションコードをさらに備える、項目５に記載の方法。
（項目８）
前記更新通信を受信した後に、前記無線通信デバイスにおいて、
認可サーバーからの認可を要求することと、
該要求に対応する認可サーバーからの認可を受信することと、
前記更新通信を実行することと、
をさらに包含する、項目７に記載の方法。 
（項目９）
無線通信ネットワークと通信的に結合された無線通信デバイスに対して、無線によるエリアコード更新を提供するシステムであって、
データ貯蔵エリアを有する無線通信デバイスと、
該データ貯蔵エリアの中に蓄えられる現在のエリアコードと、
該無線通信デバイスと通信的に結合された無線通信ネットワークと、
該無線通信ネットワークを経由して該無線通信デバイスと通信的に結合されたエリアコードサーバーであって、該エリアコードサーバーは新しいエリアコードを該無線通信デバイスに送信し、該無線通信デバイスは該現在のエリアコードを該新しいエリアコードと置き換える、該エリアコードサーバーと、
を備える、システム。
（項目１０）
前記無線通信デバイス上の前記データ貯蔵エリアの中に蓄えられる現在のエリアコードテーブルをさらに備え、該現在のエリアコードテーブルは複数のエリアコードを有する、項目９に記載のシステム。
（項目１１）
前記エリアコードテーブルは有効なエリアコードのみを備える、項目１０に記載のシステム。
（項目１２）
前記エリアコードサーバーは新しいエリアコードテーブルを送信し、前記無線通信デバイスは前記現在のエリアコードテーブルを該新しいエリアコードテーブルと置き換える、項目１１に記載のシステム。
（項目１３）
前記無線通信ネットワークを経由して前記無線通信デバイスと通信的に結合された認可サーバーであって、該認可サーバーはエリアコード更新のための認可要求を受信し、該認可要求に対して応答するように構成された、認可サーバーと、
前記エリアコードサーバーから新しいエリアコードを受信したときに、該認可サーバーからの認可を要求するように構成された、前記無線通信デバイスの中のセキュリティモジュールと、
をさらに備える、項目９に記載のシステム。
（項目１４）
前記認可サーバーおよび前記エリアコードサーバーは、単一のサーバー計算機システムの中に置かれる、項目１３に記載のシステム。
（項目１５）
無線通信デバイスに対する無線によるエリアコード更新を提供するためのステップを、１つ以上のマイクロプロセッサに対して実行させるための、命令の一つ以上のシーケンスを蓄える計算機読み出し可能媒体であって、該ステップは、
無線通信デバイスに対する新しいエリアコードを識別することと、
該新しいエリアコードを備える更新通信を構成することと、
無線通信ネットワークを経由して該無線通信デバイスに、該更新通信を送信することとを包含する、計算機読み出し可能媒体。
（項目１６）
前記新しいエリアコードは有効なエリアコードのセットから識別される、項目１５に記載の計算機読み出し可能媒体。
（項目１７）
前記更新通信は、前記無線通信デバイスに前記エリアコードを更新するように指示するオペレーションコードをさらに備える、項目１５に記載の計算機読み出し可能媒体。
（項目１８）
無線通信デバイスであって、
現在のエリアコードおよび現在のエリアコードテーブルを有する貯蔵エリアであって、該現在のエリアコードは該現在のエリアコードテーブルに含まれる、データ貯蔵エリアと、
無線通信ネットワークを経由して更新指示を受信するように構成されたランタイムエンジンであって、該更新指示は新しいエリアコードおよび新しいエリアコードオペレーションコードを備える、ランタイムエンジンと、
該新しいエリアコードオペレーションコードを備えるオペレーションコードライブラリと、
該新しいエリアコードオペレーションコードに対応するランタイム指示のセットであって、該無線通信デバイスは、該更新指示を受信し、該新しいエリアコードオペレーションコードに対応する該ランタイム指示を実行し、該データ貯蔵エリアの中の該現在のエリアコードを該新しいエリアコードと置き換える、ランタイム指示のセットと、
を備える、無線通信デバイス。
（項目１９）
エリアコード更新に対する認可を要求するように構成されたセキュリティモジュールをさらに備える、項目１８に記載の無線通信デバイス。
（項目２０）
無線通信デバイスであって、
現在のエリアコードおよび現在のエリアコードテーブルを有するデータ貯蔵エリアであって、該現在のエリアコードは該現在のエリアコードテーブルに含まれる、データ貯蔵エリアと、
無線通信ネットワークを経由して更新指示を受信するように構成され、該更新指示は新しいエリアコード、新しいエリアコードテーブル、新しいエリアコードオペレーションコード、および新しいエリアコードテーブルオペレーションコードを備える、ランタイムエンジンと、
該新しいエリアコードオペレーションコードおよび該新しいエリアコードテーブルオペレーションコードを備えるオペレーションコードライブラリと、
該新しいエリアコードオペレーションコードに対応するランタイム指示の第１のセットと、
該新しいエリアコードテーブルオペレーションコードに対応するランタイム指示の第２のセットであって、該無線通信デバイスは、該更新指示を受信し、該新しいエリアコードテーブルオペレーションコードに対応する該ランタイム指示を実行し、該データ貯蔵エリアの中の該現在のエリアコードテーブルを該新しいエリアコードテーブルと置き換え、該新しいエリアコードオペレーションコードに対応する該ランタイム指示を実行し、該データ貯蔵エリアの中の該現在のエリアコードを該新しいエリアコードと置き換える、ランタイム指示の第２のセットと、
を備える、無線通信デバイス。
（項目２１）
エリアコード更新に対する認可を要求するように構成されたセキュリティモジュールをさらに備える、項目２０に記載の無線通信デバイス。
【図面の簡単な説明】
【００１０】
【図１】無線によるエリアコード更新に対する例示的な無線通信ネットワークを表す、上位レベルネットワークの概略図である。
【図２】無線によるエリアコード更新を受信する例示的な無線通信デバイスを表す、ブロック図である。
【図３】無線通信デバイスの中の例示的なデータ貯蔵エリアを表す、ブロック図である。
【図４】例示的な有効なエリアコードテーブルを表す、ブロック図である。
【図５Ａ】例示的な無線によるエリアコード更新を表す、ブロック図である。
【図５Ｂ】例示的な遠隔ランタイム指示のセットを表す、ブロック図である。
【図６】無線通信デバイス上のエリアコード更新のための例示的なサーバープロセスを表す、流れ図である。
【図７】無線通信デバイス上のエリアコード更新のための例示的なプロセスを表す、流れ図である。
【図８】無線通信デバイス上のエリアコード更新の配送者認可のための例示的なプロセスを表す、流れ図である。
【図９】無線通信デバイス上の認可不要エリアコード更新ウインドウを形成するための例示的なプロセスを表す、流れ図である。
【図１０】ここに記載される様々な実施形態と組み合わせて使用され得る、例示的な計算機システムを表す、ブロック図である。
【発明を実施するための形態】
【００１１】
本発明の構造および働きの両方に関する詳細は、添付の図面を調べることによって、部分的に見出され得る。添付図面の中で同じ参照番号は同じ部分を表す。
【００１２】
ここに開示されるいくつかの実施形態は、無線通信デバイスと無線通信ネットワークとの間の動的な指示のセットの双方向通信に対するシステムおよび方法を提供する。例えば、ここに開示される一方法は、無線通信デバイスが指示のセットを動的に構成し、その指示のセットを実行および処理のためにネットワークに送信することを可能とする。
【００１３】
この記載内容を読んだ後に、様々な代替の実施形態および代替の応用の中での本発明の実行方法が、同業者にとって明らかとなるであろう。しかしながら、本発明の様々な実施形態がここに記載されるが、これらの実施形態は例示のためのみであって、制限のために提示されたものではないことが理解される。このように、様々な代替の実施形態に関するこの詳細な記載内容は、添付の請求項の中で規定される本発明の範囲または広がりを制限するものとして解釈されるべきではない。
【００１４】
図１は、無線によるエリアコード更新に対する例示的な無線通信ネットワーク１００を表す、上位レベルネットワークの概略図である。図示された無線通信ネットワークは複数の無線通信デバイス１０、１２、および１４、複数の基地局２０および２２、エリアコードサーバー３０、およびセキュリティサ−バー３５を備え、その各々はネットワーク４０を経由して無線通信デバイス１０、１２、および１４と接続される。
【００１５】
無線通信デバイス１０は無線通信ネットワークの内部で通信する能力を有する任意の種類のデバイスであり得る。例えば、無線通信デバイス１０はセルフォン、パーソナルデジタルアシスタント（「ＰＤＡ］）、ラップトップ計算機、ページャー、リストウォッチ（腕時計）、または無線通信のために構成された任意の他のデバイスであり得る。無線通信デバイスはまた、ここでは「ハンドセット」または「モバイルフォン」または「モバイルデバイス」として参照され得る。
【００１６】
基地局２０は、複数の無線通信デバイスと無線により通信するために、好適に構成される。基地局２０はまた好ましくは、無線による通信をネットワーク４０を超えて伝達する有線通信に変換する、トランシーバ（示されていない）を含む。ネットワーク４０は無線配送者によって運用されるプライベートネットワークであることが望ましい。ネットワーク４０は好ましくは、基地局２０および２２のような基地局の間の受け渡し（ｈａｎｄｏｆｆ）のためのインフラストラクチャを提供する。追加として、ネットワーク４０は好ましくは、様々なアプリケーション、サービス、およびエリアコードサーバー３０およびセキュリティサーバー３５のようなその他の計算機ベースのサービスの間の通信リンクを提供する。
【００１７】
ネットワーク４０はまた、若干の例を挙げるならば、インテグレーテッドサービシズデジタルネットワーク（「ＩＳＤＮ」）、パブリックスイッチドテレフォンネットワーク（「ＰＳＴＮ］）、パブリックランドモバイルネットワーク（「ＰＬＭＮ］）、パケットスイッチドパブリックデータネットワーク（「ＰＳＰＤＮ］）、およびインターネットなどの、他のネットワーク（図示されていない）との接続のための伝達手段として働き得る。
【００１８】
エリアコードサーバー３０は、モバイルデバイスにエリアコードまたはエリアコードのセットを提供し、モバイルデバイスから受信する質問および通信に応答するように、論理的に整えられた１台の計算機または複数の計算機として実行され得る。同様にセキュリティサーバー３５は、当該分野で周知のとおり、１つ以上のマイクロプロセッサを有する汎用計算機を使用して実行され得る。注目すべきは、セキュリティサーバー３５およびエリアコードサーバー３０は、ハードウェアおよびシステムリソースを共有する１台のフィジカルサーバーマシン上で共存して働き得ることである。セキュリティサーバー３５およびエリアコードサーバー３０はまた、データファイルを共有し得、プロセス相互間の通信手法または物理的またはネットワーク４０を経由する無線接続によって、通信可能に結合され得る。
【００１９】
図２は、無線によるエリアコード更新８０を受信する例示的な無線通信デバイス１０を表す、ブロック図である。無線通信デバイス１０の、その機能を発揮させる一般的な特徴は、当該分野において周知であり、それ故にここでは図示または記載されない。図示された実施形態においては、ハンドセット１０は、ランタイムエンジン５０、遠隔オペレーションコード（「オペコード（ｏｐｃｏｄｅ）」）ライブラリ６０、遠隔ランタイム指示のセット６５、データ貯蔵エリア７０、およびエリアコード更新８０を受信するように構成された無線による通信リンク９０を備える。
【００２０】
ランタイムエンジン５０は、エリアコード更新８０を処理し、対応する指示のセットを実行するために、好適に構成される。指示のセットの１例は、エリアコード更新の指示のセットである。動的な指示のセットの別の例は、エリアコードテーブル更新の指示のセットである。これら２つの指示のセットの間の違いは、エリアコード更新の指示のセットはハンドセット１０にその現在のエリアコードを更新させることであり、一方ではエリアコードテーブル更新の指示のセットはハンドセット１０に有効なエリアコードテーブルを更新させることである。好ましくは、ランタイムエンジン５０は必要なときに無線通信デバイス１０によって起動され（ｌａｕｎｃｈｅｄ）、その結果として、それは必要時のみ動き、デバイス１０上のシステムリソース（例えば、メモリ、ＣＰＵサイクル、その他）の消費量を最小にする。
【００２１】
遠隔オペコードライブラリ６０は好ましくは、各々のエリアコード機能またはエリアコードテーブル機能を表すオペレ−ションコードを備える。有益なことに、遠隔オペコードライブラリ６０の中のオペレ−ションコードは、エリアコード更新またはエリアコードテーブル更新を実行する実際の実行可能なマシンコードに対して、配置（ｐｌａｃｅ）ホルダーとしての役割を果たす。このように、遠隔オペコードライブラリ６０は、無線通信デバイス１０によって実行され得る、各々のエリアコード機能およびエリアコードテーブル機能に対応する全ての使用可能なオペレ−ションコードのリストを内蔵する。
【００２２】
追加として、無線通信デバイス１０は遠隔ランタイム指示のセット６５を含む。ランタイム指示６５は実際のマシンコードまたはデバイス１０上の持続性メモリの中に存する実行可能な指示を含む。好ましくは、遠隔オペコードライブラリ６０の中のそれぞれのオペコードは、ランタイム指示６５の中の実行可能な指示の特定のセットと対応する。例えば、指示の第１のセットは好ましくはエリアコード更新に対するオペコードに対応し、指示の第２のセットは好ましくはエリアコードテーブル更新に対するオペコードに対応する。
【００２３】
最後に、図示された実施形態において、無線通信デバイスは無線による通信リンク９０を含む。通信リンク９０の実行は当該分野において周知であり、ラジオ周波数または他の無線（ｏｖｅｒ−ｔｈｅ−ａｉｒ）による接続を経由する無線通信ネットワーク内部で通信する能力を有する、無線通信デバイス１０を提供する。有利にも、無線による通信リンク９０はエリアコードサーバー３０に対して、データ貯蔵エリア７０の中に蓄えられたデータを更新するための手段を提供し得る。
【００２４】
図３は、無線通信デバイス（示されていない）の中の例示的なデータ貯蔵エリア７０を表す、ブロック図である。図示された実施形態において、データ貯蔵エリア７０は電話番号１１０（「モバイル識別番号」または「ＭＩＮ］とも称する）、エリアコード１２０（「モバイル識別番号２」または「ＭＩＮ２］とも称する）、および有効なエリアコードテーブル１３０（「ＭＩＮ  Ｌｏｃｋ  Ｔａｂｌｅ」とも称する）を備える。データ貯蔵エリア７０は揮発性メモリ、持続性メモリ、または両者の何らかの組み合わせを含む様々なハードウェア要素を使用して実行され得る。例えば、データ貯蔵エリア７０はハードドライブおよびランダムアクセスメモリを備え得る。
【００２５】
電話番号１１０は好ましくは、特定のハンドセットを識別するために使用される、７桁の数を含む領域である。有利にも、エリアコード１２０と組み合わせて使用される電話番号１１０は、無線通信ネットワーク上でハンドセットを一意的に識別し得る。エリアコード１２０は好ましくは、３桁の領域である。有効なエリアコードテーブル１３０は、３桁のエリアコードのセットを備え得る。好ましくは、テーブル１３０の中のそれぞれのエリアコードは、特定のハンドセットに対する有効なエリアコードであるように予め定められる。一実施形態においては、エリアコード１２０の領域および有効なエリアコードテーブル１３０は、ハンドセットに対する直接的な接続を使用して編集することはできず、無線通信ネットワークからの無線による通信によってのみ変更が可能である。
【００２６】
図４は、例示的な有効なエリアコードテーブル１３０を表す、ブロック図である。図示された実施形態においては、テーブル１３０は、行１３２のような複数の行を備え、それぞれの行は３個の列を有する。好ましくは、ある行の中のそれぞれの列は、エリアコードの中の１桁を表す。追加として、テーブル１３０の中のそれぞれの行は、別々のエリアコードを表す。例えば行１３２はエリアコード１０５を表す。有利にも、１文字より多くの文字を表すために、テーブルの中にワイルドカード文字が使用され得る。例えば、行１３４はエリアコード５００〜５０９を表し、なぜならばアステリスク（＊）ワイルドカード１３６は、最後の列の中で使用される（すなわち、エリアコードの最後の桁に使用される）任意の数を提供するからである。
【００２７】
省略記号１３８によって示されるように、該テーブルは図示された実施形態において、５よりも多い行を有し得る。好ましくは、該テーブルは３０以上の行を有し、行の数の上限はハンドセット上のメモリの物理的な制限によって定まる。
【００２８】
図５Ａは、例示的な無線によるエリアコード更新８０を表す、ブロック図である。図示された実施形態においては、更新８０はオペレーションコード８２およびデータペイロード８４を備える。好ましくは、オペコード８２は、ハンドセットに特定の機能の実行を指示する、圧縮された識別子である。例えば、オペコード８２はエリアコード更新の機能またはエリアコードテーブル更新の機能を識別できる。
【００２９】
データペイロード８４は、固定長または可変長の領域であり得、それはオペコード８２によって識別された特定の機能を実行するために必要なデータを含む。例えば、エリアコード更新の機能の場合には、データペイロードは好ましくは、ハンドセットの中の現在のエリアコードと置き換わる新しいエリアコードを含む。同様に、エリアコードテーブル更新の機能の場合には、データペイロードは好ましくは、ハンドセットの中の現在のエリアコードテーブルと置き換わる新しいエリアコードテーブルを含む。同業者によって理解されるように、可変長のデータペイロードが有益であり得、エリアコード更新８０は無線通信ネットワーク上の移動に対して最も効率的な長さとなり得る。
【００３０】
図５Ｂは、例示的な遠隔ランタイム指示のブロック６７を表す、ブロック図である。示されるように、指示（命令）０１から指示ｎまでの、任意の数の指示がブロック６７の中に含まれ得る。好ましくは、遠隔ランタイム指示の完全なセットは多数のブロック（ブロック６７のような）を備え、各々のブロックは特定のオペレーションコードに対応する。例えば、ブロック６７は好ましくは、ハンドセットにそのエリアコードの更新を指示するオペレーションコードに対応する。代替案として、ブロック６７はハンドセットにそのエリアコードテーブルの更新を指示するオペレーションコードに対応し得る。ブロック６７はデバイス１０のリソース（すなわち、持続性メモリ）をごく少量だけ消費することが好ましい。
【００３１】
有利にも、遠隔オペコードライブラリ６０、対応する遠隔ランタイム指示のセット６５、ハンドセットのエリアコードおよびエリアコードテーブルは、デバイス１０の製造の間に、その現場への展開に先立って（すなわち、消費者に販売される前に）、無線通信デバイス１０の持続的なメモリの中にインストールされ得る。ハンドセットのエリアコードまたはエリアコードテーブルに対するさらなる変更は、エリアコードサ−バー３０によって、後に提供され得る。
【００３２】
図６は、無線通信デバイス上のエリアコード更新のための例示的なサーバープロセスを表す、フローチャートである。最初にステップ２００において、サーバーはハンドセットに対して指定される新しいエリアコードを識別する。代替案として、サーバーは、ハンドセットに提供される必要のあるエリアコードのセット（すなわち、エリアコードテーブル）を識別し得る。エリアコードまたはエリアコードのセットが識別された後には、ステップ２０２に示されるように、サーバーは次いで更新指示を形成する。
【００３３】
更新指示の形成は、特定の更新、例えばエリアコードの更新またはエリアコードテーブルの更新、に関連するオペコードを決定することを含み得る。追加として、更新の形成は、オペコードに対応するデータペイロードをコンパイルすること、およびオペコードおよびデータペイロードを一緒に結合して更新とすることを含み得る。更新が形成された後には、ステップ２０４に示されるように、更新パッケージ（オペコードおよびデータペイロードを含む）が処理のためにハンドセットに送られる。
【００３４】
図７は、無線通信デバイス上のエリアコード更新のための例示的なプロセスを表す、フローチャートである。最初にステップ３００において、無線デバイスはネットワークから更新指示を受信する。更新指示は好ましくは、例えば無線通信ネットワークを有するリンクのような、無線による通信リンクを経由して受信される。好ましくは、更新指示は、無線により送られるデータの量を最小にするために最適化される。一実施形態においては、更新指示はオペコードおよびデータペイロードを備える。
【００３５】
ステップ３０２において、無線デバイスは更新指示を処理するために、そのランタイムエンジンを起動する。ステップ３０４に示されるように、ランタイムエンジンはオペコードおよびデータペイロードを識別するために、更新指示を分析（ｐｅｒｓｅ）する。ステップ３０６において、ランタイムエンジンはデータペイロードを取り出す。データペイロードが存在しない場合には、このステップはスキップされ得る。データペイロードが存在する場合には、その結果得られたデータは、揮発性メモリの使用可能な部分に、後の使用のために蓄えられ得る。次いで、ステップ３０８に示されるように、ランタイムエンジンは更新指示の中のオペコードに対応する実行可能な指示を入手する。これらの指示は無線デバイスの中の遠隔ランタイム指示から入手し得る。
【００３６】
更新指示の中のオペコードに対応する実行可能な指示が入手された後に、ステップ３１０に示されるようにランタイムエンジンは指示を実行する。指示が実行されている間に、操作されるべき任意の必要なデータは、データペイロードが蓄えられている揮発性メモリから入手され得る。代替案として、または追加として、操作されるべき任意の必要なデータは、実行された指示の結果として、入手され得る。
【００３７】
例えば、データペイロードは、無線デバイスに対する更新されたエリアコードテーブルを含み得る。追加として、更新指示の中のオペコードは、現在のエリアコードテーブルを新しいエリアコードテーブルに置き換えるための実行可能な指示のセットに対応し得る。この事例においては、現在のエリアコードテーブルは置き変えられ、その結果として、新しいエリアコードテーブルが指示のセットによって持続的なメモリの中にロードされる。かくして、オペコードおよびデータペイロードを備える更新指示は、無線デバイス上でエリアコードテーブルを更新するために働く。
【００３８】
同様に、更新指示はエリアコードのみを更新するために働き得る。このような場合にはオペコードに対応する指示のセットは好ましくは、新しいエリアコード（データペイロードの中に受信される）とエリアコードテーブルの中の有効なエリアコードのセットとのマッチングのためのステップを含む。新しいエリアコードが有効なエリアコードテーブルの中に含まれるときには、エリアコードの更新が実行される。反対に、新しいエリアコードが有効なエリアコードテーブルの中に含まれないときには、エリアコードの更新は恐らく失敗する。
【００３９】
更新指示がランタイムエンジンによって完全に実行された後に、ステップ３１２に示すように、ランタイムエンジンは停止され得る。有利にも、ランタイムエンジンはそれが必要なときにのみ働くように、起動および停止され得る。これは無線デバイス上のシステムリソースを節約し、例えばそれは揮発性メモリのスペースおよびＣＰＵサイクルを節約し得る。
【００４０】
図８は、本発明の実施形態に従った、無線通信デバイス上のエリアコード更新の配送者認可のための例示的なプロセスを表す、フローチャートである。最初にステップ４００において、ハンドセットは更新要求を、例えば、無線通信ネットワークの部分ではない再プログラミングデバイスから、受信する。このような要求はまた更新指示でもあり得る。再プログラミングデバイスはハンドセットと、再プログラミングデバイスに許容されるローカルネットワーク接続またはシリアルケーブル接続を経由して接続され得る。
【００４１】
ハンドセットが更新要求を受信した後に、ステップ４０２に示されるように、ハンドセットは無線通信手段を経由して配送者に質問を送信する。この要求は、ハンドセット上のエリアコードの更新が配送者によって認可されるかを決定するために送られる。ハンドセットが同じ無線通信手段を経由して配送者からの応答を受信するときに、ステップ４０４に示されるように、ハンドセットはエリアコードの更新が認可されるかを決定する。エリアコードの更新が認可される場合には、ステップ４０６においてハンドセットは、例えば現在のエリアコードの変更を許容することによって、またはエリアコードテーブルの変更または置き換えを許容することによって、エリアコードの更新を許容する。
【００４２】
エリアコードの更新が認可されない場合には、ステップ４０８に示されるように、ハンドセットは要求を断る。有利にも、配送者は要求を記録し得る。追加として、配送者は、再プログラミングの企てがなされた位置を決定するために、ＧＰＳのような位置情報をハンドセットに問い合わせし得る。再プログラミングの企てが認可されなかった場合には、この情報は有用であり得る。
【００４３】
図９は、無線通信デバイス上の認可不要エリアコード更新ウインドウを形成するための例示的なプロセスを表す、フローチャートである。配送者が更新を必要とする電話器（ｐｈｏｎｅ）の大量の在庫を有するときの一実施形態においては、例えばエリアコードテーブルが更新される必要がある場合には、配送者は所定の時間長さの間エリアコード更新のセキュリティ手順を停止することを選択し得る。例えば配送者に多数のハンドセット上のエリアコードの更新を許容するために、６時間のウインドウが形成され得る。
【００４４】
最初に、配送者はハンドセットのグループに、または代替案として１個のハンドセットに、指示を発信する。このような指示は、オペコードおよびデータペイロードを備える以前に記載されたエリアコード更新指示を使用して、エリアコードサーバーによって配信され得る。ステップ５００において、ハンドセットは配信者からの更新指示を受信する。更新指示はハンドセットに、規定された時間のウインドウの間、エリアコード更新のセキュリティ手順を停止するように告げる。例えば、時間のウインドウは更新指示のデータペイロードの中に含まれ得る。更新指示は代替案としてハンドセットに、無期限にエリアコード更新のセキリュティ手順を停止するように告げ得る。代替案として、更新指示はハンドセットに、エリアコード更新のセキリュティ手順を開始するように告げ得る。この場合には、指示はハンドセットに、６時間のウインドウの間、エリアコード更新のセキリュティ手順を停止するように告げる。
【００４５】
ステップ５０２において、ハンドセットはエリアコード更新のセキリュティ機能を停止する。ハンドセットは次いで、ステップ５０４に示されるように、所定の時間間隔の終わりに到達しているかを知るために、定期的にチェックする。時間間隔がまだ有効である場合には、ステップ５０６に示されるように、ハンドセットは待機を続ける。それぞれのチェックの間の待機時間間隔は、短時間、長時間、またはエリアコード更新のセキュリティ機能がいつから保留されたかによって決定される可変時間長に設定され得る。待機時間間隔が終了するときには、ステップ５０８においてハンドセットは更新チャレンジを開始する。
【００４６】
エリアコード更新のセキリュティ機能が無期限に停止される場合には、ハンドセットは好適にも、対応する指示がネットワークから受信されるまで、エリアコード更新のセキリュティ機能を保留し、対応する指示はエリアコード更新のセキリュティ機能を再開するために役立つ。
【００４７】
図１０は、ここに記載される様々な実施形態と組み合わせて使用され得る、例示的な計算機システム５５０を表す、ブロック図である。例えば、計算機システム５５０は無線通信ネットワークの中に存在するエリアコードサーバーとして採用され得る。計算機システム５５０は、無線通信ネットワークおよびその構成要素を備える、様々な他の汎用のまたは特定の用途の任意の計算機システムとしても採用され得る。しかしながら、同業者にとって明らかなように、他の計算機システムおよびアーキテクチャが使用され得る。
【００４８】
計算機システム５５０は好適にも、プロセッサ５５２のような、１個以上のプロセッサを含む。入力および出力を管理するための補助プロセッサ、浮動小数点演算のための補助プロセッサ、信号処理アルゴリズムの高速実行に適したアーキテクチャを有する特定用途マイクロプロセッサ（すなわち、デジタル信号プロセッサ）、メイン処理システムに従属するスレーブプロセッサ（すなわち、バックエンドプロセッサ）、二重または多重プロセッサシステムのための追加のマイクロプロセッサまたはコントローラ、またはコプロセッサなどの、追加のプロセッサが提供され得る。このような補助プロセッサは単独のプロセッサとして存在し得、またはプロセッサ５５２の中に統合され得る。
【００４９】
プロセッサ５５２は好適にも通信バス５５４と接続される。通信バス５５４は記憶装置および計算機システム５５０の他の周辺要素との間の情報伝達を促進するためのデータチャンネルを含み得る。通信バス５５４はさらに、データバス、アドレスバス、およびコントロールバス（示されていない）を含む、プロセッサ５５２との通信のために使用される信号のセットを提供し得る。通信バス５５４は、例えば、工業標準アーキテクチャ（「ＩＳＡ」）、拡張された工業標準アーキテクチャ（「ＥＩＳＡ」）、マイクロチャンネルアーキテクチャ（「ＭＣＡ」）、周辺要素相互接続（「ＰＣＩ」）ローカルバス、またはＩＥＥＥ４８８汎用インターフェイスバス（「ＧＰＩＢ」）、ＩＥＥＥ６９６／Ｓ−１００などを含む電気電子技術者協会（「ＩＥＥＥ」）によって公式に発表されている標準、などに従うバスアーキテクチャのような、任意の標準のまたは非標準のバスアーキテクチャを備え得る。
【００５０】
計算機システム５５０は好ましくは、主メモリ５５６を含み、また二次メモリ５５８を含み得る。主メモリ５５６はプロセッサ５５２上で実行するプログラムミング指示（命令）およびデータの記憶装置を提供する。主メモリ５５６は一般的にはダイナミックランダムアクセスメモリ（「ＤＲＡＭ」）および／またはスタティックランダムアクセスメモリ（「ＳＲＡＭ」）のような半導体ベースのメモリである。他の半導体ベースのメモリの種類は、例えば、同期ダイナミックランダムアクセスメモリ（「ＳＤＲＡＭ」）、ラムバスダイナミックランダムアクセスメモリ（「ＲＤＲＡＭ」）、強誘電体ランダムアクセスメモリ（「ＦＲＡＭ」）、および読み出し専用メモリ（「ＲＯＭ」）を含むその他メモリ、を含む。
【００５１】
二次メモリ５５８は任意ではあるが、ハードディスクドライブ５６０および／またはリムーバブル記憶媒体ドライブ５６２、例えばフロッピディスクドライブ、磁気テープドライブ、コンパクトディスク（「ＣＤ」）ドライブ、デジタルバーサタイルディスク（「ＤＶＤ」）ドライブ、その他を含み得る。リムーバブル記憶媒体ドライブ５６２は周知の方法でリムーバブル記憶媒体５６４からの読み出しおよび／またはへの書き込みを行う。リムーバブル記憶媒体５６４は、例えば、フロッピディスク、磁気テープ、ＣＤ、ＤＶＤ、その他であり得る。
【００５２】
リムーバブル記憶媒体５６４は好適にも、その上に計算機で実行可能なコード（すなわち、ソフトウェア）および／またはデータを蓄える、計算機読み出し可能媒体である。リムーバブル記憶媒体５６４上に蓄えられる計算機ソフトウェアまたはデータは、電気的通信信号５７８として計算機システム５５０の中に読み込まれる。
【００５３】
代替の実施形態においては、二次メモリ５５８は、計算機プログラムまたは他のデータまたは指示が計算機システム５５０の中に読み込まれることを可能とする、他の同様な手段を含み得る。そのような手段は、例えば、外部記憶媒体５７２およびインターフェイス５７０を含み得る。外部記憶媒体５７２の例は、外部ハードディスクドライブまたは外部光ドライブ、またはおよび外部磁気―光ドライブを含み得る。
【００５４】
二次メモリ５５８の他の例は、プログラマブル読み出し専用メモリ（「ＰＲＯＭ」）、消去可能プログラマブル読み出し専用メモリ（「ＥＰＲＯＭ」）、電気的に消去可能読み出し専用メモリ（「ＥＥＰＲＯＭ」）、またはフラッシュメモリ（ＥＥＰＲＯＭと類似のブロックオリエンテッドメモリ）などの、半導体ベースのメモリを含み得る。リムーバブル記憶ユニット５７２から計算機システム５５０にソフトウェアおよびデータの移送が可能な、任意の他のリムーバブル記憶ユニット５７２およびインターフェイス５７０がまた含まれ得る。
【００５５】
計算機システム５５０はまた、通信インターフェイス５７４を含み得る。通信インターフェイス５７４は、ソフトウェアおよびデータが計算機システム５５０と外部デバイス（すなわち、プリンタ）、ネットワーク、または情報源との間で、移送されることを可能とする。例えば計算機ソフトウェアまたは実行可能なコードが、ネットワークサーバーから通信インターフェイス５７４を経由して計算機システム５５０に移送され得る。通信インターフェイス５７４の例は、若干の例を挙げるならば、モデム、ネットワークインターフェイスカード（「ＮＩＣ」）、通信ポート、ＰＣＭＣＩＡスロットおよびカード、赤外線インターフェイス、およびＩＥＥＥ１３９４ファイヤーワイヤーを含む。
【００５６】
通信インターフェイス５７４は好ましくは、イーサネット（登録商標）ＩＥＥＥ８０２標準、ファイバーチャンネル、デジタル加入者ライン（「ＤＳＬ」）、非同期デジタル加入者ライン（「ＡＤＳＬ」）、フレームリレー、非同期トランスファーモード（「ＡＴＭ」）、インテグレーテッドデジタルサービシズネットワーク（「ＩＳＤＮ」）、パーソナルコミュニケーションサービシズ（「ＰＣＳ」）、トランスミッションコントロールプロトコル／インターネットプロトコル（「ＴＰＣ／ＩＰ」）、シリアルラインインターネットプロトコル／ポイントツーポイントプロトコル（「ＳＬＩＰ／ＰＰＰ」）、等などのような、工業的に公表されているプロトコル標準を実行するが、また特別注文のまたは非標準のインターフェイスプロトコルも同様に実行され得る。
【００５７】
通信インターフェイス５７４を経由して移送されるソフトウェアおよびデータは、一般的には電気的通信信号５７８の形を成す。これらの信号５７８は好ましくは、通信チャンネル５７６を経由して通信インターフェイス５７４に提供される。通信チャンネル５７６は信号５７８を運び、若干の例を挙げるならば、ワイヤまたはケーブル、光ファイバー、通常の電話回線、セルラーフォンリンク、ラジオ周波数（ＲＦ）リンク、または赤外線リンクを含む、様々な通信手段を使用して実行され得る。
【００５８】
計算機で実行可能なコード（すなわち、計算機プログラムまたはソフトウェア）は主メモリ５５６および／または二次メモリ５５８の中に蓄えられる。計算機プログラムはまた、通信インターフェイス５７４を経由して受信され、主メモリ５５６および／または二次メモリ５５８の中に蓄えられ得る。このような計算機プログラムは、実行されるとき、計算機システム５５０が前記記載されたような様々な機能を実施することを可能とする。
【００５９】
この記載内容の中で、「計算機読み出し可能媒体」の用語が、計算機システム５５０または無線通信デバイス（示されていない）に対して計算機で実行可能なコード（すなわち、ソフトウェアおよび計算機プログラム）を提供するために使用される任意の媒体に対して、参照するために使用される。これらの媒体の例は、主メモリ５５６、二次メモリ５５８（ハードディスクドライブ５６０、リムーバブル記憶媒体５６４、および外部記憶媒体５７２を含む）、および通信インターフェイス５７４（ネットワーク情報サーバーまたは他のネットワークデバイスを含む）と通信的に結合される任意の周辺デバイスを含む。これらの計算機読み出し可能媒体は、計算機システム５５０に対して実行可能なコード、プログラムミング指示、およびソフトウェアを提供するための手段である。
【００６０】
ソフトウェアを使用して実行される実施形態においては、ソフトウェアは計算機読み出し可能媒体上に蓄えられ、リムーバブル貯蔵媒体ドライブ５６２、インターフェイス５７０、または通信インターフェイス５７４を経由して計算機システム５５０の中にロードされ得る。このような実施形態においては、ソフトウェアは電気的通信信号５７８の形で計算機システム５５０の中にロードされる。ソフトウェアは、プロセッサ５５２によって実行されるときには、好適にもプロセッサ５５２に、ここに前記記載された発明的な特徴および機能を実行させる。
【００６１】
様々な事例が、まず最初にハードウェアの使用法、例えば特定用途向けＩＣ（「ＡＳＩＣ」）、またはフィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）のような要素、の使用法においてまた実行され得る。ここに記載された機能を実行することの可能なハードウェアステートマシンの遂行が、同業者にとってはまた自明のことである。様々な事例が、ハードウェアおよびソフトウェアの組み合わせを使用してまた実行され得る。
【００６２】
ここに示され詳細に記載された特定のシステムおよび方法は、上記記載された本発明の目的を完全に達成することが可能であるが、ここに提示された記載内容および図面は、本発明によって幅広く意図された主題の代表例であることを理解すべきである。さらに、本発明の範囲は同業者にとって明らかとなり得る他の実施形態を全て包含し、本発明の範囲は従って添付の請求項以外の何ものによっても制限されないことが、理解される。
【図１】
2010183594.tif 000002
【図２】
2010183594.tif 000003
【図３】
2010183594.tif 000004
【図４】
2010183594.tif 000005
【図５Ａ】
2010183594.tif 000006
【図５Ｂ】
2010183594.tif 000007
【図６】
2010183594.tif 000008
【図７】
2010183594.tif 000009
【図８】
2010183594.tif 000010
【図９】
2010183594.tif 000011
【図１０】
2010183594.tif 000012