1又は複数の実施形態の複数の例示的な実装が以下に示されるが、開示された複数のシステム及び方法は、現在既知であろうとまだ存在してなかろうと、任意の数の技術を使用して実装され得るということがまず理解されるべきである。本開示は、以下に示される複数の例示的な実装、複数の図面、及び複数の技術に決して限定されるべきではないが、添付の特許請求の範囲、並びにそれらの均等物の全範囲内において変更され得る。
ユーザは、休暇又は出張中、ユーザが生活している地域に無い、別の無線キャリアが運営している無線通信ネットワークへ、自分のモバイル通信デバイスを接続することを所望し得る。しかしながら、他の無線ネットワークの訪問者になることにローミング料金を課されることについて、ユーザは不満を持ち得るので、当該他の無線キャリアが旅行者と良好な関係を確立するのは困難である。問題の原因として、ユーザが別の無線キャリアへ円滑に移行すること、及び、同一のデバイスを使用し続けたまま、他の無線ネットワーク上の異なる無線通信アイデンティティを使用することを所望しているにもかかわらず、モバイル通信デバイスが単一の無線通信アイデンティティに関連付けられていることがあり得る。この問題は、従来の物理的な汎用集積回路カード(UICC)、及び、加入者識別モジュール(SIM)カードから生じ得る。例えば、従来の物理的なリムーバブルUICC及びSIMカードは一般的に、様々な業界標準に従うべく、キャリアへの1つのユーザサブスクリプションに予め関連付けられた、ロードされた情報を含む。更に、従来のUICC及び/又はSIMカードを使用するモバイルデバイスは、従来のカード上の情報に元々関連付けられた無線キャリアとのインタラクションだけに限定される。つまり、旅行者は、従来のカード上で現在構成されている情報に関連付けられていないキャリアによる、その土地のサービスを利用するには、従来のSIMカードを取り外し、時間をかけて地域の店舗を探し、新しい従来のカードを入手する必要があった。
換言すれば、従来のカードは一般的に、1つ又は2つの無線キャリアと使用するように、静的に構成されている。この構成においては、ユーザがモバイル通信デバイスを入手後に従来のカード上の情報を変更するべく、従来のカードのメモリ全体を新しい情報で再フラッシュする必要がある。従って、従来のカードのインストール、更新、及び/又はプロビジョニングでは一般的に、従来のカードのメモリ内に保存された、キャリアに関連するパラメータ及び情報を上書き、ディスターブ、及び/又は、一時的に消去する。従って、ユーザが、自身のモバイルデバイス上で、異なる無線キャリア、異なる場所、異なるユーザ設定、又は、異なるサービスに関連する、異なる無線通信アイデンティティを所望するとき、静的無線通信アイデンティティと共に使用される従来のSIMカードは不十分であり得る。そこで、本開示は、通信接続されたダイナミック加入者識別モジュール(ダイナミックSIM)カードを使用することにより、モバイル通信デバイスを動的に変更するためのシステム及び方法を教示する。
ダイナミックSIMは、モバイルデバイスと取り外し可能に係合し得る一方、動作についての業界標準に従うキャリアネットワークと(ダイナミックSIM上でアクティブ化されるキャリアアプレットを使用することで)インタラクトすることもできる、物理的なリムーバブルスマートカードである。これにより、ユーザは、ダイナミックSIM上のキャリアアプレットを使用することで、複数の無線キャリアのための複数のサブスクリプションを有し、それらにアクセスすることが可能となる。より具体的には、ユーザは、異なるネットワーク内、又は、異なるサービスプロバイダによる無線通信サービスに同時に加入し、同時にそれらを受けられるようにプロビジョニングされ得る。ダイナミックSIMは、ユーザ入力なしで、無線キャリアのためのサブスクリプションを切り替えることを可能にし、また、他のキャリア及びサブスクリプションに関連付けられた情報で、ダイナミックSIM上の特定のメモリを上書き又はディスターブする必要なく、特定のサブスクリプションのための選択的なインストール及び/又は更新を可能にする。
例えば、特定のブランドに関連付けられている無線キャリアは、異なるブランドの下で各々運営している(国内及び/又は海外の)複数の無線キャリアと提携し得て、これにより、地理的な場所に関係なく、無線キャリア及び関連付けられているブランドのいずれか又は全てに関する登録及びサブスクリプションを可能にするユーザアクセスを提供する。ユーザのモバイル通信デバイスは、アプリケーションを通して、モバイル通信デバイスのメモリの異なるパーティションへ各々割り当てられて保存されている無線通信アイデンティティを、検索、受信、インストール、及び/又は、アクティブ化する。ユーザのモバイル通信デバイスは、ダイナミックSIM上の別個のメモリパーティション内に各々保存された複数のキャリアアプレットを有する、ダイナミックSIMに接続される。各キャリアアプレットは、特定の無線キャリア対応する、(少なくとも一意のシリアル番号などの)一意の識別情報、キャリアについての特定のサブスクリプションアカウント、及び/又は、モバイル通信デバイス上の特定の無線通信アイデンティティを含む。モバイルデバイスは、ダイナミックSIM上の特定のキャリアアプレットを参照し、そのキャリア、及びユーザの無線サブスクリプションについての対応する無線通信アイデンティティの検索、インストール、アクティブ化、及び/又は、切り替えを行い得る。ダイナミックSIMは、異なるキャリアに関連付けられた複数の他のキャリアアプレットの記憶装置を維持し、キャリアの新しいサブスクリプションのための新しいキャリアアプレットの無線インストールを受信する一方で、常にアクティブな1つのキャリアアプレットも有して、ダイナミックSIM上の他のキャリアアプレットの情報及びコンテンツへの作用又は変更なく、1つの特定のキャリアアプレットについてインストールされたプロビジョニングを有する。
このようにして、人は、国内のキャリアを利用した個人的な使用のために自分のモバイルデバイスを動作させ得て、そのモバイルデバイスは、対応する個人の無線通信アイデンティティ、及び、ダイナミックSIMのキャリアアプレットに従って動作し、カスタマイズされ、ブランディングされる。人が自身のモバイルデバイスにダイナミックSIMを入れて海外へ旅行するとき(例えば、ユーザが仕事のためにイギリスへ旅行するとき)、モバイルデバイス上のアプリケーション、及び/又は、ダイナミックSIMによって、トリガイベントが検出される。トリガイベントには様々なものがあり得、ユーザ入力、場所の変更、利用可能な無線通信サービスプロバイダの変更、信号伝送受信インシデント、スケジュール済みイベント、ダイナミックSIM上のアクティブキャリアアプレットの切り替え、又は、モバイルデバイス上で識別された別のトリガイベントが含まれ得る。モバイルデバイスは、トリガイベントに基づいて、キャリアサブパーティションを変更し、次に、対応する無線通信アイデンティティ(例えば、企業アイデンティティ)をアクティブ化することにより、特定のネットワーク上で機能するのに最適な、好ましい、及び/又は、改善された設定へ動的に変更する。無線通信アイデンティティのアクティブ化は、ダイナミックSIM上に保存される、関連付けられたアクティブなキャリアアプレットの動的な切り替えに対応する。常に1つの無線通信アイデンティティがアクティブである。しかし、対応するキャリアアプレットがダイナミックSIM内にロードされていない場合(又は、ロードされたがアクティブ化されない場合)、キャリアアプリケーションは、ユーザの関与なしで、ダイナミックSIM上の他のキャリアアプレットへの作用及び/又は変更なく、ダイナミックSIMがネットワークのための関連付けられたキャリアアプレットを入手して、ダイナミックSIM上にキャリアアプレットをロードする(及び/又は動的に切り替える)ことを可能にするプロセスを開始し得る。
従って、別の無線通信アイデンティティで異なるキャリアネットワークを使用するとき、円滑に移行するというユーザエクスペリエンスが実現する。また、これは、固有のランタイムパラメータを通して、英国キャリアのネットワークを使用するとき、英国キャリアがブランディングし、カスタマイズし、及び、ユーザのモバイルデバイスの動作効率を最適化することを可能にする。ユーザが(モバイルデバイスが英国キャリアに関連付けられた、ダイナミックSIM上のキャリアアプレットを使用することに起因する)英国キャリアのローミング費用を回避することに加えて、ユーザの個人的な無線通信アイデンティティ、及び、関連付けられたキャリアアプレットは、保存されたままであり、影響を受けることはない。モバイル通信デバイスは、(ユーザ設定、サービス登録、アプリケーション有効化、カスタマイゼーションパラメータ、ブランディング情報、及び/又は、連絡先リストに従って、モバイルデバイスを構成するなど)モバイルデバイスが英国キャリアのネットワークとインタラクトしながら、無線通信アイデンティティに関連付けられたユーザデータに対応するように変更する。モバイルデバイス上の対応するアプリケーションは次に、更新されたユーザデータによって、及び、特定のキャリアのネットワークにおける使用に基づいて、動作し得る。更に、海外へ旅行している間、ユーザが新しいモバイル通信デバイスを提携先キャリアの1つから購入することを決定する場合、ユーザは単純に、自分の古いモバイルデバイスからダイナミックSIMを取り出して新しいモバイルデバイスへ挿入すればよく、新しいモバイルデバイスは、そのユーザに関連付けられた無線通信アイデンティティを識別及び入手する。従って、モバイルデバイスの安定かつ動的な変更により、ユーザは複数のキャリアへ加入でき、国内及び海外の両方で、適切なエクスペリエンスを受けることを選択できる。
ここで図1A及び図1Bを参照すると、通信システム100が記載されている。一実施形態において、システム100は、複数のモバイル通信デバイス102を備える。モバイル通信デバイス102は、無線周波数通信用トランシーバ104(本明細書では時々、通信用トランシーバと称される)、ユーザインターフェース106、少なくとも1つのプロセッサ108、及び、非一時的メモリ110を有し得る。メモリ110は、システムパーティション114、ユーザパーティション116、キャリアパーティション118を含み得る。キャリアパーティション118は、キャリアサブパーティションA120、キャリアサブパーティションB122、及び、それに続く、指定されたキャリアサブパーティションN124など、複数のキャリアサブパーティションを含み得る。更に、メモリ110は、キャリアサブパーティション120、122、124のいずれか、及び/若しくは、システムパーティション114、又は、ユーザパーティション116の間で通常共有され得る、情報を保存及び/又は移動するためのホールディングパーティション126を含み得る。メモリ110は、デバイスアプリケーション112、及び、複数のパーティションに割り当てられ得る少なくとも1つのトラステッドセキュリティゾーンを含み得る。いくつかの実施形態において、メモリ110の固有パーティションは、トラステッドセキュリティゾーンであり得て、各々が異なる、別個のトラステッドセキュリティゾーンであり得る複数のサブパーティションを含み得る。トラステッドセキュリティゾーンであるメモリパーティション及び/又はサブパーティションは時々、トラステッドセキュアパーティションと称され得ることを理解するべきである。トラステッドセキュリティゾーンの更なる説明については後述する。
モバイル通信デバイス102は、通信用トランシーバ104を使用することで、基地局(BTS)150との無線通信リンクを確立するよう構成され、BTS150は、ネットワークA160及び/又はネットワークB170のいずれかなど、少なくとも1つのネットワークに対する、モバイル通信デバイス102の通信接続性を提供する。BTSは、特定の通信技術に限定されるべきでないネットワークアクセスノードであり、従って、BTSという言及は、NodeB及び/又はeNodeB、並びに、それらに関連付けられたコントローラを含む。また、複数のサーバ及び/又はシステムは、160及び/又は170などのネットワークの1つに対するアクセス及び通信接続を有し得る。ネットワーク160及び170は、私設ネットワーク、及び、公衆ネットワークの任意の組み合わせを含み得ることを理解するべきである。更に、図1Aにおいて、ネットワーク160、170の各々は、別個のクラウドとして示されているが、異なるネットワークは、いくつかのネットワークノード及び/又はインフラストラクチャを共有し得ることを理解するべきである。同様に、BTS150は、1つのデバイスとして示されているが、機能の要素又はパッケージとして見なされているBTS150は、ネットワークA160に関連付けられた第1BTS機能、及び、ネットワークB170に関連付けられた第2BTS機能として具現化され得ることを理解するべきである。
図1Aに示されているように、ネットワーク160及び170は、それぞれ、キャリアサブパーティションA120及びキャリアサブパーティションB122に関連付けられた、別個のキャリアネットワークを表す。対応するネットワークにアクセスするための適切なネットワーク構成を有するキャリアサブパーティション(及び、対応する無線通信アイデンティティ)に接続し得る複数のネットワークがあり得ることを理解するべきである。更に、いくつかの実施形態において、複数の通信サービスプロバイダ(キャリア)は、1つの通信サービスプロバイダによって所有及び/又は運用される特定のネットワークインフラストラクチャに関連付けられ得ることを理解するべきである。例えば、モバイル仮想ネットワークオペレータ(MVNO)は、モバイル通信サービスを提供するが、無線スペクトルの認可済み周波数割り当て、又は、無線電話サービスを提供するのに必要な物理インフラストラクチャを自身で備えていないことがあり得る組織である。モバイル仮想ネットワークオペレータは、認可済み周波数及び物理インフラストラクチャを備える遠隔通信サービスプロバイダによって提供される無線サービスを配布する契約を結び得る。モバイル仮想ネットワークオペレータは、無線サービスの配布者として機能し、それ自身の価格構成を設定し得る。例えば、図1Aにおいて、第1通信サービスプロバイダがネットワークA160を構築及び/又は保持し得る一方、第2通信サービスプロバイダは、第2プロバイダのための通信サービスを提供するべく、ネットワークA160の一部をリースし得て、次にネットワークA160のこのリース部分をネットワークB170として指定し得る。従って、この例において、第2通信サービスプロバイダは、第1通信サービスプロバイダに関連付けられたネットワークA160の一部をリース及び/又は使用することにより、ネットワークB170のMVNOと見なされ得る。
システム100は、任意の数のモバイル通信デバイス102、及び、任意の数の基地局(例えば150)を備え得ることが理解される。BTS150の集合は、これらのBTS150が、ネットワークA160及び/又はネットワークB170のいずれかなどのネットワークへのアクセスを提供するべく、モバイル通信デバイス102への無線通信リンクを提供し得るという点で、無線アクセスネットワークを含むと言ってよい。無線アクセスネットワークは、異なる手段で抽象化され得て、BTS150に加えて、無線アクセス及び接続性をモバイル通信デバイス102へ提供することに特に関連する、ホームロケーションレジスタ(HLR)、ビジタロケーションレジスタ(VLR)、基地局コントローラ(BSC)、移動交換局(MSC)、及び/又は、他のネットワークノードの機能を実装し得るサーバ及びデータストアを備え得る。
通信用トランシーバ104は、これらに限定されないが、符号分割多重アクセス(CDMA)無線通信プロトコル、移動通信用グローバルシステム(GSM(登録商標))無線通信プロトコル、ロングタームエボリューション(LTE)無線通信プロトコル、マイクロ波アクセスのための世界的な相互運用性(WiMAX(登録商標))無線通信プロトコル、又は、別の無線通信プロトコルを含む様々な無線通信プロトコルのいずれかを使用して、BTS150と通信し得る。モバイル通信デバイス102は、携帯電話、携帯情報端末(PDA)、メディアプレーヤ、無線対応コンピュータ、ヘッドセットコンピュータ、ウェアラブルコンピュータ、又は、他のモバイル通信デバイスのいずれかであり得る。一実施形態において、モバイル通信デバイス102は、近距離無線通信(NFC)無線トランシーバ、無線ローカルエリアネットワーク(WLAN)無線トランシーバ、又は、他のコンポーネントなど、他のコンポーネント(図示せず)を含み得る。モバイル通信デバイス102は、ダイナミックSIM130とインタラクトするように構成されている専用マシンと見なされ得ることを理解するべきである。
モバイル通信デバイス102は更に、物理媒体であって、読み取り機インターフェース128を介するなどしてモバイル通信デバイス102と取り外し可能に係合し得るダイナミック加入者識別モジュール(SIM)130を含み得る。しかしながら、ダイナミックSIM130の代替的な実施形態は、製造時にモバイル通信デバイス102に組み込まれる物理媒体を含み得て、それはユーザ又は技師によって取り外されるように設計されていないことを理解するべきである。図1Bに示されている実施形態において、ダイナミックSIM130は、集合的にダイナミックSIMのランタイム環境を構成するダイナミックSIMオペレーティングシステムとインタラクトするアプリケーションプログラムインターフェースにリンクされているモジュール及びエンジンを含む、通信ランタイムフレームワーク132を有する。また、ダイナミックSIM130は、プロセッサ134及びメモリ140を有する。プロセッサ134の実行によって、アプレット142及び/又はアクティブキャリアアプレットである特定のキャリアアプレット144、146、148のいずれかからの情報及び命令に従って、ダイナミックSIM130を構成し得ることを理解するべきである。メモリ140は、非一時的メモリであり、単一のメモリ140として示されているが、いくつかの実施形態において、メモリ140は、各々がダイナミックSIM上の特定のアプリケーションに対応する個々のメモリパーティションを含み得る。メモリ140は、ダイナミックSIM130オペレーティングシステムを保存するファームウェア、及び、複数のアプリケーション(アプレット142、ステアリングアプレット141、キャリアアプレット144、146、148など)を含み得る。アプレット142は、通信ランタイムフレームワーク132と、モバイル通信デバイス102のデバイスアプリケーション112/アプリケーションプログラムインターフェースとの間でインタラクトする情報及び命令を含み得ることを理解するべきである。また、アプレットは、メモリ140内に保存されていて、ダイナミックSIM130上でプロセッサ134によって実行されるように構成されているJava(登録商標)ベースのアプリケーションを含み得ることを理解するべきである。一実施形態において、通信ランタイムフレームワーク132は、ダイナミックSIM130上でどのキャリアアプレット(例えば、144、146、148など)がアクティブであるか判定するべく、アクティブキャリアエンジンと接続し得る。
ダイナミックSIM130メモリ140は、ダイナミックSIM130の独占的なシリアル番号など、ダイナミックSIMカード130の製造者からの識別子を含む。メモリ140は、セグメント化され得て、ダイナミックSIM130の複数のメモリパーティション(ダイナミック加入者識別(S.I.)パーティションA143、ダイナミック加入者識別(S.I.)パーティションB145、パーティションC147など)を含み得る。ダイナミックSIM130のメモリパーティション(143、145、147)は本明細書において時々、ダイナミック加入者識別(S.I.)パーティションと称され得る。メモリパーティションの各々(143、145から、n番目のパーティションN147)は、一意のキャリアアプレット(例えば、それぞれ、キャリアアプレットA144、キャリアアプレットB146から、n番目のキャリアアプレットN148)を含み、各キャリアアプレットは、対応する通信サービスプロバイダ/キャリア、及び、それらのネットワークに関連付けられる。例えば、ネットワークA160及び(本明細書では時々、「CAPS」と称する)キャリアAプロビジョニングシステム162は、キャリアAに関連付けられ得て、従って、メモリパーティションA143及びキャリアアプレットA144に対応し、ネットワークB170及びキャリアBプロビジョニングシステム172(本明細書では時々、「CBPS」と称する)は、従って、キャリアアプレットB146及びメモリパーティションB145に対応する。プロビジョニングシステム(例えば、162及び172)は、ネットワーク(例えば、160、170)に接続している少なくとも1つのリモートサーバを備え得る。
キャリアアプレット144、146、148の各々は、個々のキャリアの各々に対応し、割り当てられた、プロビジョニング属性、一意識別子、及び/又は、固有の通信ネットワーク認証情報を含み得る。ダイナミックSIM130上のそれぞれのキャリアアプレット(144、146、148など)各々の一意識別子によって、特定のネットワーク(ネットワークA160に関連付けられたキャリアAなど)が、キャリアの特定のネットワークとのモバイルデバイスの通信接続のための有効なサブスクリプションを識別することを可能にする。例えば、電源サイクル及び/又はトリガイベントによって、モバイルデバイス102は、アクティブキャリアアプレットの一意識別子(すなわち、1つのアクティブキャリアアプレットとして指定された、特定のキャリアアプレットの一意識別子)を読み込み得る。これは、ステアリングアプレット141及び/又はアクティブキャリアアプレット(例えば、144、146、148の1つ)との間のアプリケーションプロトコルデータユニット(ADPU)メッセージを使用して、読み取り機インターフェース128を介して行われ得る。複数のキャリアアプレット(144、146、148)の1つに対応する各一意識別子は、移動体加入者装置識別番号(MSEI)、国際移動体装置識別番号(IMEI)、セルラーデータ番号(CDN)、及び、国際移動体加入者識別番号(IMSI)、及び、移動体状態国際加入者ディレクトリ番号(MSISDN)のいずれかを含み得る。キャリアアプレット(144、146、148)の一意識別子は、ダイナミックSIM130上のアクティブキャリアアプレットである、特定のキャリアアプレットに基づいて、モバイルデバイス102へ伝達される。次に、モバイルデバイス102のキャリアアプリケーション118aは、(ステアリングアプレット141の使用による、関連付けられたキャリアサブパーティションのアクティブ化を通して)対応するアクティブキャリアアプレットに基づいて、無線通信アイデンティティを使用するように変更し得る。同様に、アクティブキャリアアプレットは、対応するキャリアサブパーティション120、122、124のアクティブ化を通して、モバイルデバイスによる特定の無線キャリアアイデンティティの使用に基づいて、ダイナミックSIM130上で動的に切り替えられ得る。いくつかの実装において、キャリアアプレット144、146、148は、キャリアアプレットがアクティブであるときに一意識別子を報告するようにダイナミックSIM130を構成するファームウェアを有し得て、及び/又は、モバイルデバイス102のキャリアアプリケーション118aによる要求に応じて、キャリアアプレットからの他の情報を使用し得る。
一実施形態において、ダイナミックSIM130は、複数のキャリアアプレット(144、146、148)の1つをアクティブにする。アクティブキャリアアプレットは、他のキャリアアプレットの各々が、キャリア、ネットワーク、及び/又は、サブスクリプションに対応する自身の一意識別子の記憶装置を維持した状態で、他のキャリアアプレットと共存する。つまり、アクティブキャリアアプレットは、他のキャリアアプレットを上書きすること、及び/又は、ダイナミックSIM130からそれらを除去することなく、ダイナミックSIM130上でロードされ、プロビジョニングされ、保持され、機能し得て、それにより、モバイルデバイス102上の動作の機能及び効率を向上させるので、ダイナミックSIM130は有利である。更に、ダイナミックSIM130はまた、アクティブであるキャリアアプレットを複数のキャリアアプレット(144、146、148)の間で切り替え得て、従って、複数の異なるキャリアへのサブスクリプションをサポートし、また、モバイルデバイス102の動的変更を生じさせ得ることで、固有の無線通信アイデンティティ及びキャリアサブパーティションに基づいて、モバイルデバイス102上で対応する(例えば、ブランディング情報、及び、本明細書に記載されている他のカスタマイゼーションパラメータの使用を介して)エクスペリエンスをユーザが受けることを可能にする。
ダイナミックSIM130は、キャリアアプレット144、146、148の1つをアクティブキャリアアプレットにするべく、キャリアアプレット144、146、148の間での切り替えをサポートするステアリングアプレット141を含む。特定の実施形態において、ステアリングアプレット141は、ブートストラップアプレットと称され得て、ダイナミックSIM130上でJava(登録商標)ベースのアプリケーションとインタラクトして、かつ、ステアリングシステム180などのバックエンドの切り替えメカニズムとインタラクトするよう構成されている。ステアリングアプレット141は、キャリアアプレットを切り替えるべく通信用トランシーバ104を使用して、無線接続を介して、ステアリングシステム180と接続し得る。ステアリングシステム180は、提携しているキャリア、及び、それらに対応するネットワーク160、170に通信接続し得る、ブートストラップサーバ及び/又は加入者管理サーバのいずれかを含み得る。各ネットワークは、ステアリングシステム180を共同で使用し得て、及び/又は、代替的に、自身のステアリングシステム180を有し得ることを理解するべきである。キャリアアプレット144、146、148の間で切り替えるべく(及び、従って、1つをアクティブキャリアアプレットにするべく)、ダイナミックSIM130は、ステアリングシステム180との間で、ステアリングアプレット141及び読み取り機インターフェース128を介して、ADPUメッセージを無線で送信及び受信し得る。ADPUメッセージは、キャリアアプリケーション118a、ステアリングシステム180、キャリアプロビジョニングシステム(例えば、162、172)のいずれかによって開始され得る。ADPUメッセージは、ダイナミックSIM130に関する情報を報告すること、アクティブキャリアアプレットであるキャリアアプレットの切り替えを制御すること、及び/又は、プロビジョニングデータと見なされ得る情報(例えば、モバイルデバイス102などのための対応する無線通信アイデンティティに関連する、一意識別子、ブランディング情報、データなど)でメモリパーティション(例えば、143、145、147)内の特定のキャリアアプレットをプロビジョニングすることに使用され得るサービスオブジェクトを含み得る。ステアリングアプレット141は、ダイナミックSIM130の機能に関する情報、及び、ダイナミックSIM130によってサポートされ得るキャリアアプレット(従って、キャリア)を含み得る。例えば、ステアリングアプレット141は、ダイナミックSIM130上に現在、どのキャリアアプレットが存在し、保存されているか、並びに/又は、ダイナミックSIM130が特定のキャリアアプレットを受け入れるべく利用可能かどうか、識別、提示、及び/若しくは、提供し得る。換言すれば、ダイナミックSIM130は、複数のメモリパーティション(例えば、143、145、147)を有し得るが、それら全てがキャリアアプレットを含み得るわけではない。このことは、ダイナミックSIM130上に既に存在するキャリアアプレットのメモリに作用、上書きする、及び/又は、再フラッシュを行うことなく、別のキャリアアプレットを受信及びロードし得る、利用可能メモリパーティションをダイナミックSIM130が有することを示している。ダイナミックSIM130は、キャリアアプレット144、146、148のうちどれがアクティブキャリアアプレットであるか識別でき、ステアリングシステム180は、ステアリングアプレット141と接続し得て、ダイナミックSIM130上で異なるキャリアアプレットへ誘導、及び/又は、切り替えて、それにより、異なるキャリアアプレットをアクティブキャリアアプレットにする。
いくつかの実装において、キャリアアプレット(及び/又は、ダイナミックSIM130上に既に保存されているキャリアアプレットのための対応するプロビジョニング情報)は、通信用トランシーバ104を介して、ダイナミックSIM130へ無線で配信され得る(例えば、ADPUメッセージを使用して、ダイナミックSIM130の既存のメモリパーティション143、145、147、又は、新たに生成された、ダイナミックSIMの利用可能メモリパーティションへ書き込む)。ダイナミックSIM130は、ダイナミックSIM130上の1つのキャリアアプレットの以前の記憶装置、及び、プロビジョニングを維持し得る一方で、ダイナミックSIM上の別のキャリアアプレット(すなわち、アクティブキャリアアプレットであるキャリアアプレット)の受信、ロード、及び/又は、プロビジョニングを行う。キャリアアプレットがダイナミックSIM上にロードされているが、プロビジョニングされていない、又は、期限切れである場合、ステアリングシステム180は、固有のキャリアプロビジョニングサーバ(キャリアアプレットA144の場合、キャリアAプロビジョニングシステム162など)に接続し得て、ダイナミックSIM上で保持されている他のキャリアアプレットに作用する、又は、変更を加えることなく、ダイナミックSIM130上のキャリア固有アプレット(キャリアアプレットA144など)に書き込まれる適切なプロビジョニングデータを受信する。次に、プロビジョニングデータは、ダイナミックSIM130上の対応するキャリアアプレットへ配信され得る。従って、ダイナミックSIM130は、キャリアアプレットが存在するメモリパーティション(147など)に対応する固有のキャリアアプレット(及び/又は、その中のファームウェア)を追加、切り替え、並びに/又は、除去することによって、動的に変更され得る。
ダイナミックSIM130は、ダイナミックSIM130上に現在保存されている他のキャリアアプレットを交換する、上書きする、及び/又は、それに作用することなく、キャリアアプレットを追加、切り替え、変更、及び/又は、除去し得るので、有利である。図1Aのステアリングシステム180は、BTS150に直接接続しているように示されているが、ステアリングシステム180は、様々なネットワーク(160又は170など)を通して、ステアリングアプレット141に接続され得ること、並びに、いくつかの実施形態において、固有キャリアのプロビジョニングシステム(162及び/又は172など)と通信し得ることを理解するべきである。プロビジョニングに使用される各配信メカニズム(例えば、162、172、180)は、独立型の、及び/又は、キャリアAプロビジョニングシステム162に依存する依存型のサーバとして実現され得る。また、いくつかの実施形態において、ダイナミックSIM130は、通信サービスプロバイダのネットワークの識別及び/又はインタラクションを行う前に、少なくとも1つのキャリアアプレットを有し得るか、又は、キャリアのネットワークの識別情報に基づいて、特定のキャリアに固有のキャリアアプレット(及び/又は、キャリアアプレットのためのプロビジョニングデータ)を受信し得ることを理解するべきである。代替的な実施形態において、ダイナミックSIM130のメモリパーティション143、145、147は、モバイル通信デバイス102の対応するトラステッドセキュアパーティション(例えば、キャリアサブパーティション120、122、124がトラステッドセキュリティゾーンである場合)に関連付けられ得るトラステッドセキュアパーティション(すなわち、トラステッドセキュリティゾーン)であり得る。
一実装において、メモリ110は、デバイスアプリケーション112、システムパーティション114、ユーザパーティション116、及び、キャリアサブパーティションAからN(それぞれ、120から124)を含むキャリアパーティション118を有する。各キャリアサブパーティション120、122、124はそれぞれ、自身の対応するネットワークアクセス識別子及び自身のカスタマイゼーションを含む無線通信アイデンティティを有し得る。キャリアサブパーティションの無線通信アイデンティティの各カスタマイゼーションはそれぞれ、ブランディング情報(例えば、ブランディングID及び/又はブランディング情報へのリンク)、デバイス機能、アプリケーション構成、及び、ユーザエクスペリエンス設定を含み得る。図1Aに示されているものより、遥かに多くのキャリアサブパーティションが存在し得る(各々が一意のキャリアアイデンティティを含む)ことを理解するべきである。キャリアアイデンティティを保存するためのパーティション(キャリアサブパーティション120、122、124など)の最大数の限界は、キャリアアイデンティティに割り当てられた、メモリ110、及び/又は、キャリアパーティション118の部分の合計によって決定され得る。キャリアアイデンティティに割り当てられたメモリ110の部分は、内部メモリ及びファイルメモリを含み得て、いくつかの実施形態において、上述のようなトラステッドセキュリティパーティションであり得る。異なるキャリアアイデンティティに関連付けられたパーティションは、サイズが異なり得る。例えば、第1キャリアサブパーティションA120は、第2キャリアサブパーティションB122より、サイズが大きいことがあり得る。また、メモリのサイズ、及び/又は、モバイル通信デバイス102のハードウェアなどの因子に応じて、2つより多くのキャリアサブパーティション又はキャリアアイデンティティが存在し得ることを理解するべきである。
キャリアサブパーティションA120を含むキャリアパーティション118は、特定のキャリアのためのカスタマイゼーションを含み、モバイル通信デバイス102の実現時にロードされ得る、第1無線通信アイデンティティを含み得る。第1無線通信アイデンティティは、(ネットワークA160に関連付けられたキャリアなどの)キャリアに関連付けられた単一のブランドにバインドされ得る。モバイルデバイス102の対応するカスタマイゼーションは、その単一ブランドに関連付けられたデバイス機能を定義する(そのブランドへのデバイス102のアクティブ化に応じて、モバイルデバイス102が別のネットワーク上でローミングする能力を有しているかどうか、どの連絡先を保存できるか、デバイス102は他のワイヤレスフィディリティ(WiFi(登録商標))ネットワークのためのホットスポットとして機能できるかどうかなど)。キャリアサブパーティションB122の第2無線通信アイデンティティは、第1のアイデンティティがバインドされているブランドと同一でないブランドにバインドされ得るが、別のカスタマイゼーションを有し、そのデバイス機能、アプリケーション構成、及び、ユーザエクスペリエンスは、第1のアイデンティティに関連付けられた第1のカスタマイゼーションのサブセット、又は、それと同様の構成を含み得る。デバイス102(及び/又は、デバイス102の特定のサブパーティション120、122、124)のアクティブ化の間、対応するサブパーティション120、122、124に関連付けられた両方のアイデンティティは、ネットワーク160及び170内にプロビジョニングされているモバイル通信デバイス102に応じて、ネットワーク160及び170と通信することが可能であり得る。例えば、デバイス102は、第1無線通信アイデンティティ及びキャリアサブパーティションA120がアクティブであるとき、ネットワーク160上で、BTS150を介して通信し得て、第2無線通信アイデンティティ及びキャリアサブパーティションB122がアクティブであるとき、ネットワーク170上で、BTS150を介して通信し得る。
ブランディングとは、一般的なマーケティング用語であり、多くの製品に適用され得て、特定のブランドの1つ又は複数の製品を他のブランドの製品から区別するプロセスと見なされ得る。従って、(無線通信アイデンティティに関連付けられた)特定のキャリアのブランディングは、名称、用語、画像、設計方法、聴覚的な合図、又は、区別するためのいずれかの他の特徴を使用して達成され得る。例えばモバイル通信デバイスなど、電子デバイスとの関連において、無線通信アイデンティティは、ブランディング情報を含み得て、ブランディング情報の方は、アプリケーションがロードされているときに表示される特色あるスプラッシュスクリーンと、アプリケーションアイコンの背後に表示されるバックグラウンドテーマと、特色ある壁紙と、デバイスの基本機能に関連付けられたイベントの発生時に鳴動し得る特色ある聴覚的アラートと、及び/又は、他の特色ある合図とを含み得る。ブランディング情報は、モバイル通信デバイスのコントロール及び/又はスイッチをカスタマイズするファームウェアを含み得る。ブランディング情報は、音声メールサービスを参照する短いコードを含み得る。ブランディング情報は、ウェブブラウザ内に予めロードされたお気に入りとして提供され得る、好ましいユニバーサルレファレンスロケータ(URL)を含み得る。ブランディング情報は、好ましいオンラインのアプリケーションストアへのリンクを含み得る。また、ブランディング情報は、他の媒体及び設定を含み得る。特定の無線通信アイデンティティは、ブランド情報を要求、検索、及び/又は受信し得て、無線通信アイデンティティがアクティブ化されている(すなわち、モバイルデバイス上のアクティブな無線通信アイデンティティである)とき、モバイルデバイスは、ブランディング情報及び/又はユーザ設定に関連付けられた、特定のファームウェア、カスタマイゼーション、及び/又は、パラメータへ動的に変更し得る。
無線通信アイデンティティ(特定のキャリアに関連する態様において、本明細書では時々、キャリアアイデンティティと称される)は、キャリアアプリケーション118aを介して、対応するキャリアサブパーティションへ動的に変更することによって、サブパーティション上でアクティブ化され得る。いくつかの実施形態は、トリガイベント(これらに限定されないが、ダイナミック加入者識別モジュール130上の変更/切り替え、対応する無線通信アイデンティティにひも付けられた異なるブランドを選択するユーザインターフェース106を介したユーザ入力、ネットワークのサーバ及び/又はシステムによる誘導、所定のスケジューリング、サーバによる無線制御、及び/又は、モバイル通信デバイス102の地理的な場所など)に基づく、動的な変更及び/又はアクティブ化を含み得る。例えば、ブランディング及びパラメータをキャリアサブパーティション120の第1無線通信アイデンティティから、キャリアサブパーティション122の第2無線通信アイデンティティへ切り替えるユーザ入力の受信に応じて、キャリアアプリケーション118aは、ブランド識別子、デバイス機能(ハードウェア、ソフトウェア、ファームウェア)、アプリケーション構成、及び、ユーザエクスペリエンスのいずれかを含む対応するカスタマイゼーションをモバイル通信デバイス102へ適用する。キャリアアプリケーション118aは更に、ソース(例えば、モバイルデバイス102のメモリパーティション、及び/又は、リモートサーバ162、172)を参照し得ることで、カスタマイズして変更を動的に適用する少なくともいくつかのユーザ設定及び/又はブランディング情報をデバイス102へ適用する。また、モバイル通信デバイス102は、第2無線通信アイデンティティ及びサブパーティションが関連付けられている、対応するネットワークを使用して無線通信接続を実行するべく、通信用トランシーバ104を介して、適切なアイデンティティを送信し得る。
キャリアパーティション118を含むモバイル通信デバイス102は、システムリセットを受け得るが、(非一時的メモリ110内の)キャリアサブパーティション120、122、124及び関連する無線通信アイデンティティは影響を受けず、対応するカスタマイゼーションは元の状態を維持する。キャリアサブパーティション120、122、124では、通信用トランシーバ104を通して無線アクセスネットワーク(並びに/又はネットワークA160及び/若しくはネットワークB170)と通信するようにモバイル通信デバイス102をアクティブ化する無線通信アイデンティティ及びカスタマイゼーションが維持される。いくつかの実施形態において、キャリアパーティション(サブパーティション120、122、124)の間での動的な変更に応じて、対応する無線通信アイデンティティのカスタマイゼーション情報は、関連付けられた通信サービスプロバイダ(例えば、キャリアプロビジョニングシステム162、172)によって更新され得る。しかしながら、製造者によるモバイルデバイス102への初期ロードの一部として既にプロビジョニングされている場合、ネットワークにおける無線通信アイデンティティのプロビジョニングは不要であり得る。以前にアクティブ化されたキャリアサブパーティション120、122、124、及び、対応するアイデンティティへ戻すための切り替えについても同様である。動的変更という用語は、対応する無線通信アイデンティティ(例えば、キャリアサブパーティション120、122、124内に保存されているもの)、及び/又は、キャリアアプレット(例えば、144、146、148)に基づいて、モバイルデバイス102及び/又はダイナミックSIM130によって、どのソフトウェア、ハードウェア、及び/又は、ファームウェアが使用されるかを指す。つまり、モバイルデバイス102及び/又はダイナミックSIM130は、無線通信アイデンティティ及び/又はキャリアアプレットに含まれる固有の情報(例えば、本明細書に記載されているような、カスタマイゼーションパラメータ、ユーザデータ、ブランディング情報、キャリアからのプロビジョニングなど)を通して動的に変更され得る。
上述のように、本開示の実施形態は、トラステッドセキュリティゾーンを実装し得る。トラステッドセキュリティゾーンは、信頼の基礎であるハードウェアを備えたチップセットと、アプリケーションのためのセキュアな実行環境と、周辺機器へのセキュアなアクセスとを提供する。信頼の基礎であるハードウェアとは、チップセットは、デバイスの製造者又はベンダによって意図されたプログラムのみを実行する必要があることを意味し、ソフトウェアの、及び、物理的な攻撃に耐え、従って、意図されたレベルのセキュリティを提供することについて、信頼を維持する。チップセットアーキテクチャは、特定の攻撃に対する、資産の機密性及び完全性の保護を可能にする、プログラム可能な環境を促進するように設計されている。トラステッドセキュリティゾーンの能力は、無線及び固定されたハードウェアアーキテクチャの両方の設計における特徴になりつつある。メインのモバイルデバイスチップセットにおいてトラステッドセキュリティゾーンを提供すること、及び、信頼の基礎であるハードウェアを保護することで、別個のセキュアなハードウェアがデバイス又はユーザを認証する必要性が無くなる。モバイル金融サービスアプリケーションなど、トラステッドデータを要求するアプリケーションの完全性を確実にするべく、トラステッドセキュリティゾーンはまた、トラステッドアプリケーションのみが、攻撃から保護された安全な状態で動作できるセキュアな実行環境を提供する。トラステッドアプリケーションがセキュアな実行環境中で動作している間、非トラステッドアプリケーションが周辺機器へアクセスすることを制限すること(データ入力及びデータ出力など)により、セキュリティが更に促進される。一実施形態において、トラステッドセキュリティゾーンは、ハードウェア支援型セキュリティとして概念化され得る。
完全なトラステッド実行環境(TEE)は、トラステッドセキュリティゾーン、ハードウェア、及び、ソフトウェアアーキテクチャの使用を通して実装され得る。トラステッド実行環境は、メインのモバイルデバイスオペレーティングシステムの実行環境と並行して存在する実行環境である。トラステッド実行環境及び/又はトラステッドセキュリティゾーンは、トラステッドセキュリティゾーン内で実行し得るアプリケーションの使用のための機能、及び/又は、ユーティリティの基層を提供し得る。例えば、一実施形態において、トラステッドトークンは、トラステッド実行環境及び/又はトラステッドセキュリティゾーンの機能及び/又はユーティリティの基層によって生成され得る。これは、トラステッドのエンドツーエンド通信リンクにおいて使用され、通信の信頼性の持続を記録する。ハードウェア支援型セキュリティを利用する、トラステッドのエンドツーエンド通信リンクの確立に関する詳細については、Leo Michael McRoberts等によって2012年6月25日に申請された、その全体が参照によって本明細書に組み込まれる、「End−to−end Trusted Communications Infrastructure」と題する米国特許出願第13/532,588号を参照のこと。アプリケーションプログラムインターフェース(API)の標準化を通して、トラステッド実行環境は、セキュアサービスのスケーラブルな展開を狙える場所となる。トラステッド実行環境を有するチップセットをその上に備えるデバイスは、トラステッドサービス環境内に存在し得る。トラステッドサービス環境内のデバイスは信頼され、攻撃から保護される。トラステッド実行環境は、携帯電話及びタブレット上で実装できるが、パーソナルコンピュータ、サーバ、センサ、医療デバイス、POS端末、工業オートメーション、ハンドヘルド端末、自動車など、他のトラステッドデバイスにも及ぶ。
トラステッドセキュリティゾーンは、モバイルデバイスのハードウェアリソース及びソフトウェアリソースの全てを2つのパーティション(セキュアパーティション及びノーマルパーティション)へ区画化することによって実装される。慎重に扱うべきリソースをセキュアパーティション内に配置することで、それらのリソースに対する潜在的な攻撃から保護できる。例えば、トラステッドソフトウェアアプリケーションなどのリソースは、セキュアパーティション内で動作し得て、タッチスクリーンなどのハードウェア周辺機器、又は、メモリ内のセキュアな場所に対するアクセスを有し得る。セキュアパーティションがアクセスされている間、無線などの、よりセキュアでない周辺機器は、完全に無効化され得て、他の周辺機器は、セキュアパーティションからのみアクセスされ得る。セキュアパーティションがトラステッド実行環境を通してアクセスされている間、ノーマルパーティション内のメインモバイルオペレーティングシステムは中断され、ノーマルパーティション内のアプリケーションによるセキュアな周辺機器及びデータへのアクセスは防止される。これにより、壊れたアプリケーション又はマルウェアアプリケーションが、デバイスの信頼性を破壊することを防止する。
トラステッドセキュリティゾーンは、セキュアなサブシステム以外のコンポーネントへアクセスできないセキュアなサブシステム内に存在するように、ハードウェアリソース及びソフトウェアリソースを区画化することによって実装される。トラステッドセキュリティゾーンは、セキュアパーティションとノーマルパーティションとの間の境界を実現するトラステッドセキュリティゾーン内に存在するハードウェアロジックを通して、製造時にプロセッサアーキテクチャに組み込まれる。トラステッドセキュリティゾーンは、適切な認証情報を有するものだけに操作され得て、一実施形態において、製造後にチップへ追加され得ない。セキュアパーティションをサポートするソフトウェアアーキテクチャは、トラステッドアプリケーションを実行する、専用のセキュアなカーネルを通して提供され得る。トラステッドアプリケーションは、トラステッドセキュリティゾーンを利用するチップセット上のトラステッド実行環境内で、アプリケーションプログラムインターフェースを通してノーマルアプリケーションによってアクセスできる、独立したセキュアアプリケーションである。
一実施形態において、ノーマルパーティションアプリケーションは、第1仮想プロセッサ上で動作し、セキュアパーティションアプリケーションは、第2仮想プロセッサ上で動作する。両方の仮想プロセッサは、単一の物理プロセッサ上で動作し得て、時分割方式で実行し、専用物理セキュリティプロセッサの必要性を無くす。時分割実行は、セキュアソフトウェア命令又はハードウェア例外など、厳密に制御されたメカニズムに基づいて、プロセッサリソースを共有するべく、2つの仮想プロセッサの間でコンテキストを切り替えることを含む。現在動作している仮想プロセッサのコンテキストは保存され、切り替え先の仮想プロセッサのコンテキストは復元され、復元された仮想プロセッサ内で、処理が再開される。時分割実行は、セキュアパーティションが実行されている間、ノーマルパーティションの実行を停止することによって、トラステッドセキュリティゾーンを保護する。
2つの仮想プロセッサは、現在実行中の仮想プロセッサを変更するとき、モニタモードと呼ばれるプロセッサモードを介して、コンテキストスイッチを行う。プロセッサがノーマルパーティションからモニタモードへ入ることができるメカニズムは、厳密に制御される。モニタモードへ入ることは、専用の命令であるセキュアモニタコール(SMC)命令を実行するソフトウェアによって、又は、プロセッサをモニタモードへ切り替えさせるように構成され得るハードウェア割り込みなどのハードウェア例外メカニズムのサブセットによってトリガされ得る。次に、モニタモード内で実行するソフトウェアは、実行中の仮想プロセッサのコンテキストを保存し、セキュアな仮想プロセッサへ切り替える。
トラステッドセキュリティゾーンは、デバイスのユーザへアクセスできない別個のオペレーティングシステムを動作する。セキュリティ上の目的で、トラステッドセキュリティゾーンは、アプリケーションのインストールに関して、ユーザに対してオープンでない。すなわち、ユーザは、トラステッドセキュリティゾーン内にアプリケーションをインストールするためのアクセスを有していない。これにより、壊れたアプリケーション、又は、マルウェアアプリケーションが、トラステッドセキュリティゾーンのために確保されている強力な命令を実行することを防止し、従って、デバイスの信頼性を保護する。システムのセキュリティは、少なくとも部分的には、携帯電話のハードウェアリソース及びソフトウェアリソースを区画化して、それらが、2つのパーティション、すなわち、セキュリティサブシステムのためのセキュアパーティション、及び、その他すべてのためのノーマルパーティションのうち1つに存在するようにすることによって達成される。トラステッドセキュリティゾーンをセキュアパーティション内に配置すること、及び、ノーマルパーティションからのアクセスを制限することによって、ソフトウェア及び基本ハードウェアの攻撃から保護する。ハードウェアロジックは、いかなるセキュアパーティションリソースも、ノーマルパーティションのコンポーネント又はアプリケーションによってアクセスできないことを確実にする。専用のセキュアパーティションのオペレーティングシステムは、ノーマルパーティションのオペレーティングシステムとは別個に、仮想プロセッサ内で動作し、ノーマルパーティションのオペレーティングシステムも同様に、自身の仮想プロセッサ内で実行する。ユーザは、上述のような、ノーマルパーティションのオペレーティングシステム内で実行し得るアプリケーションをモバイルデバイス上にインストールし得る。トラステッドセキュリティゾーンは、モバイルデバイスの製造者又はベンダによってインストールされた、セキュアパーティションのための別個のオペレーティングシステムを動作し、ユーザは、新しいアプリケーションをインストールすることも、トラステッドセキュリティゾーンのコンテンツを変更することもできない。
一実施形態において、トラステッドセキュリティゾーンであるメモリ110、メモリ140、及び/又は、パーティション(例えば、キャリアパーティション118及び/又はメモリパーティションA143)は、メモリのセグメントに留まらない。トラステッドセキュリティゾーンは、処理の範囲も有し得る。トラステッドセキュリティゾーンは、攻撃から保護された安全な状態でトラステッドアプリケーションのみが動作し得る、トラステッドアプリケーションのためのセキュアな実行環境を提供し得る。トラステッドセキュリティゾーンは、モバイル通信デバイス102のハードウェアリソース及びソフトウェアリソースの両方を2つのセグメント(セキュア部分/セグメント、及び、ノーマル部分/セグメント)へ区画化することによって実装され得る。セキュアセグメントは、ノーマルセグメントを実装し得るプロセッサ(通常は第2プロセッサ)とは異なる、別個の、又は、専用の物理プロセッサ(通常は第1プロセッサ)によって実装され得る。代替的に、セキュアセグメントは、ノーマルセグメントを実装し得る仮想プロセッサとは異なる、別個の、又は、専用の仮想プロセッサによって実装され得る。一実施形態において、トラステッドセキュリティゾーンのハードウェアセグメンテーション、及び、トラステッドセキュリティゾーンのソフトウェアインストールは、モバイル通信デバイス102上のトラステッド実行環境を実現し得る。トラステッド実行環境は、チップ製造者によって、モバイル通信デバイス102上のアプリケーションプロセッサ内に包含/統合され得る。
トラステッドセキュリティゾーンを使用する代替的な実施形態において、システムパーティション114、ユーザパーティション116、キャリアサブパーティション120、122、124は、電子デバイス102のハードウェアリソース及びソフトウェアリソースの両方を2つのセグメント(セキュア部分/セグメント及びノーマル部分/セグメント)へ区画化することによって実装され得る。つまり、この代替的な実施形態において、キャリアサブパーティション120、122、124は、セキュア部分(トラステッドセキュリティゾーン)を含み得て、システムパーティション114及び/又はユーザパーティション116は、ノーマル部分/セグメントを含み得る。セキュアセグメントは、ノーマルセグメントが実装され得るプロセッサ(通常は第2プロセッサ)と異なる、別個の、又は専用の物理プロセッサ(通常は第1プロセッサ)によって実装され得る。代替的に、セキュアセグメントは、ノーマルセグメントが実装され得る仮想プロセッサと異なる、別個の、又は、専用の仮想プロセッサによって実装され得る。
いくつかの実装において、トラステッドセキュリティゾーンは、いくつかの実施形態において無線通信アイデンティティを保存する、(キャリアサブパーティションA120、キャリアサブパーティションB122などの)異なるパーティションへ割り当てられ得る。いくつかの実装において、モバイルデバイス102上の各トラステッドセキュリティゾーンパーティションは、ダイナミックSIM130上の対応するキャリアアプレットに従って割り当てられ、関連付けられ得る。パーティションは、必ずしもトラステッドセキュリティゾーン内で生成されるとは限らない。一実施形態において、無線通信アイデンティティを保存する少なくともいくつかのパーティションは、モバイル通信デバイス102のセキュア部分内で生成され得て、各パーティションのメモリサイズは異なり得る。代替的な実施形態において、ダイナミックSIM130は、各々がトラステッドセキュリティゾーンである(例えば、図1Bの143、145、147と同様の)パーティションへと割り当てられ得る。
一実施形態において、キャリアメモリパーティション118は、モバイル通信デバイス102のオペレーティングシステムによって提供され得る。例えば、オペレーティングシステムは、システムメモリパーティションのパスワード(例えば、モバイル通信デバイス102の相手先商標製造会社に知られているシステムパスワード)の提供のみに応じて、システムメモリパーティション(114など)へのアクセスを制限し得る。オペレーティングシステムは、キャリアメモリパーティションのパスワード(例えば、遠隔通信サービスキャリアに知られているキャリアパスワード)の提供のみに応じて、キャリアメモリパーティション(118など、又は、その中のサブパーティション)へのアクセスを制限し得る。オペレーティングシステムは、実質的に制限なしで、ユーザメモリパーティション(116など)へのアクセスを許可し得る。
トラステッドセキュリティゾーンへのアクセス(例えば、トラステッドセキュリティゾーンパーティションを構成又は追加するためのアクセス)は、トラステッドセキュリティゾーンのマスターキーを提供することを条件とし得る。構成されたトラステッドセキュリティゾーンパーティションへのアクセスは、アクセスキー(例えば、対象となるトラステッドセキュリティゾーンパーティションに関連付けられた、サブゾーンキー、又は、トラステッドセキュリティゾーンパーティションキー)を提示することで認証され得る。換言すれば、第1サブゾーンキーは、第1トラステッドセキュリティゾーンパーティションへのアクセスを認証するのに使用され得て、第2サブゾーンキーは、第2トラステッドセキュリティゾーンパーティションへのアクセスを認証するのに使用され得て、第3サブゾーンキーは、第3トラステッドセキュリティゾーンパーティションへのアクセスを認証するのに使用され得て、サブゾーンキーの各々はそれぞれ、互いに異なっている。トラステッドセキュリティゾーンセグメント及びサブゾーンキーの詳細については、Stephen J.Bye等によって2012年8月10日に申請された、その全体が参照によって本明細書に組み込まれる、「Systems and Methods for Provisioning and Using Multiple Trusted Security Zones on an Electronic Device」と題する、米国特許出願第13/571,348号を参照のこと。本明細書の記載は、トラステッドセキュリティゾーンの使用に基づく実装を説明しているが、本開示の教示は、トラステッドセキュリティゾーンの外側にあるパーティション又はメモリの部分においても使用され得ることを理解するべきである。例えば、キャリアパーティション118の代替的な実施形態は、非トラステッドセキュリティゾーン内にキャリアアプリケーション118aを保存するが、一方で、キャリアサブパーティション120、122及び126は、トラステッドセキュリティゾーンである。
ここで、図2A及び図2Bを参照する。図2A内のフローチャートは、通信接続されたダイナミックSIM(例えば、130)を使用して、モバイル通信デバイス(例えば、102)を動的に変更する方法200を示している。更に、図2Bは、本開示の実施形態に対応するメッセージ図を示す。本開示の実施形態は、図1Aに開示されているシステム100によって実装され得ることを理解するべきである。ブロック202において、モバイル通信ネットワーク(ネットワークB170など)は、識別されたモバイルネットワークに対応する、及び/又は、関連付けられたキャリアパーティションを含むモバイル通信デバイス上で識別される。モバイル通信ネットワークは、複数のモバイルネットワークのうちの1つであり得る。更に、モバイル通信デバイスは、識別されたモバイルネットワークに対応する、及び/又は、関連付けられた、キャリアアプレットで予めプロビジョニングされ得るダイナミックSIM(130など)と通信接続する。いくつかの実施形態において、モバイル通信デバイスは、モバイルデバイスによるモバイルネットワークの識別前に、別のモバイルネットワークに通信接続されていること、それとの間に接続を有すること、及び、それに対して主に指定されていることのうち、いずれかであり得ることを理解するべきである。例えば、モバイルデバイス102は、モバイルデバイス102上でネットワークB170から別個の無線伝送222を受信する前にネットワークA160から無線伝送を受信する、確立された接続220を有し得る。別個の無線伝送222は、例えば、モバイルデバイス102を特定のネットワークへアタッチ/接続させるための、既知のネットワーク及び関連付けられた無線技術のリストを参照することで、伝送元及び/又は関連付けられたキャリアの解析、関連付け、及び/又は、判定を行うアプリケーション(例えば、118a)などを通して、モバイルデバイス102によって識別され得る(224)。無線伝送(例えば、222)を受信及び識別することは、受信信号伝送インシデントと称され得る。これは、本明細書に記載されているトリガイベントの一種であり得る。伝送(例えば、222)が、キャリア及びネットワーク(この場合、ネットワークB170)と関連付けられているものとして一旦識別される(224)と、モバイルデバイス102は、ネットワークB170が以前に識別されたかどうか、関連付けられた無線通信アイデンティティが以前にモバイルデバイス102上でアクティブ化されたかどうか、及び/又は、キャリアアプレットがダイナミックSIM130上でロードされているか、又は、以前にアクティブであったか判定できる。
なお、モバイル通信デバイス(例えば102)は、ベーストランシーバへの初期無線リンクの接続及び確立の認証を可能にする、無線通信ネットワークの1又は複数のリストに、受信済み無線伝送を関連付けることによって、特定のキャリア及び/又は無線通信ネットワークを動的に識別し得ることを理解するべきである。また、モバイルデバイス102は、1又は複数のリストにおいて識別されているネットワークの中で優先順位を付けるためのルールのセット、及び、デバイスルールの1又は複数のテーブルを参照し得る。一実施形態において、モバイル通信デバイス102のランタイムに、リスト又はテーブルとしてコンテンツを効率的に組み合わせるように、リスト及びテーブルは、例えば、通信用トランシーバ104のリセット、電源サイクル、又は、受信命令のイベント時に、コンパイル及び/又は再フォーマットされ得る。モバイル通信デバイス102のアタッチ先として認証される無線通信ネットワークのリストは、BTS150への無線リンクを確立するべくモバイル通信デバイス102によって使用される無線通信プロトコルによって異なり得る。換言すれば、無線通信ネットワークの特定のリスト(リストの番号、及び、リストの名称)は、異なる無線通信プロトコルに従って通信するモバイル通信デバイス102の場合、異なり得る。無線通信ネットワークのリストは、好ましいローミングリスト(PRL)、地上波公共移動通信ネットワーク(PLMN)リスト、事業者制御型PLMN(OPLMN)リスト、ホームPLMN(HPLMN)ファイル、同等のホームPLMN(EHPLMN)リスト、MMSS(マルチモードシステム選択)システム優先度リスト(MSPL)、MSPLテーブル、及び、MMSS場所付随優先度リスト(MLPL)テーブルのいずれかを含み得る。
PRLは、ネットワーク及び/又はシステムの選択及び取得に使用される情報(例えば、ネットワークのパラメータ、アドレスなど)を含み得る。PRLは、優先順で情報を整理し得て、例えば、どのシステム及び/又はサービスプロバイダのアイデンティティをスキャンするか、並びに、どの順序で無線通信アクセスを入手するか、定義する。PLMNリストは、地上波公共移動通信ネットワークのリスト、及び/又は、他のリスト(EHPLMNリスト、又は、OPLMNリストなど)を含み得る。HPLMNリストは、モバイルカントリーコード(MCC)によって識別されるネットワーク又は通信システムのリストを含み得る。EHPLMNリストは、モバイルカントリーコード(MCC)によって識別されるネットワーク又は通信システムのレコードを含み得る。OPLMNリストは、モバイルネットワークコード(MNC)によって識別されるネットワーク又は通信システムのレコードを含み得る。MSPLテーブルは、別のシステム選択優先度リスト(例えば、PLMNリスト、OPLMNリスト、HPLMNリスト、EHPLMNリストなど)と共に使用され得る。MLPLテーブルは、システム選択優先度リスト(例えば、PLMNリスト、OPLMNリスト、HPLMNリスト、EHPLMNリストなど)のエントリの範囲のスケーリングを可能にし得る。
これらのリスト及び/又はテーブルは、サービス区域マップを実装、定義、及び/又は、記載すると言われ得る。一実施形態において、MSPL及びMLPLのリスト又はテーブルは、ジオコーディング及びユーザ設定の情報を提供し得て、3GPPプロトコルと3GPP2プロトコルとの間のマッピングを促進し得る。デバイスルールのテーブルは、帯域サポートテーブル、及び、技術順序テーブル(technology order table)を含み得る。帯域サポートテーブルは、モバイル通信デバイス102が無線アクセスネットワーク(RAN)にアタッチするべく(例えば、BTS150、及び/又は、ネットワーク160、170のいずれかにアタッチするべく)スキャンする必要のある、無線周波数の範囲を識別し得る。いくつかの実装において、複数のリスト及びテーブルは、コンテンツをリスト又はテーブルとして効率的に組み合わせるべく、例えば、トリガイベント及び/又は通信用トランシーバリセットに基づいて、モバイル通信デバイス102上でランタイムにコンパイル及び/又は再フォーマットされ得る。
再び図2A及び図2Bを参照すると、ブロック204において、モバイル通信デバイス102は、アクティブキャリアアプレットである、ダイナミックSIM130上のキャリアアプレットの識別情報(すなわち、ポーリング時にアクティブである、IMSIなどの一意識別子)について、ダイナミックSIM130に対し、ポーリング、読み込み、及び/又は、要求を行い得る。ダイナミックSIM130は、メモリ内に保存された複数のキャリアアプレットを含み得て、常に1つのキャリアアプレットがアクティブ化され、それにより、アクティブキャリアアプレットとなる。ダイナミックSIM130の値及び/又は識別情報を入手するこのプロセスは、ダイナミックSIM130のポーリングと称され得て、ADPUメッセージを使用することで、又は、別の方法達成され得る。ポーリングは、モバイルデバイス102によって、リモートサーバ(例えば、162、172、180)によって無線で、又は、別の方法によって開始され得る。いくつかの実装において、ポーリングは、所定のスケジュールに従って、及び/又は、トリガイベントに基づいて反復的に発生し得る。例えば、ダイナミックSIM130は、(もしあれば)どのキャリアアプレットがアクティブキャリアアプレットであるかを示すメッセージ226(例えば、少なくとも、アクティブキャリアアプレットの一意識別子を含むADPUメッセージ)を送信することによって、ポーリングに応答し得る。いくつかの実施形態において、電源サイクル、リセット、及び/又は、再始動を経るモバイルデバイスは、ダイナミックSIM130から現在のアクティブキャリアアプレット(及び、従って、その一意識別子)を読み込み得て、それが、以前にアクティブだった無線通信アイデンティティ、及び/又は、モバイル通信デバイス102が以前接続されていた、以前のモバイルネットワークに関連付けられているかどうか解析し得る。
ブロック206において、モバイル通信デバイス102は、トリガイベントに応じて、1つのキャリアサブパーティションから、異なるキャリアサブパーティションへ動的に変更する。この動的な変更により、以前の無線通信アイデンティティに従って、特定のソフトウェア、ファームウェア、及び/又は、ハードウェアを非アクティブ化し得て、異なるキャリアサブパーティションに関連付けられた異なる無線通信アイデンティティをアクティブ化し得る。図2Aに示されているように、(キャリアパーティションうちのトラステッドセキュアパーティションであり得る)キャリアサブパーティションは、ダイナミックSIM130のキャリア、モバイルネットワーク、及び/又は、キャリアアプレットに対応する一意の無線通信アイデンティティを有する(又は、それらを有するようにプロビジョニング/更新され得る)。無線通信アイデンティティは、1つのサブパーティションから別のパーティションへの動的な変更に応じ、及び/又は、モバイルデバイスがキャリアサブパーティションの適切な無線通信アイデンティティを使用しているという解析に基づいて、アクティブ化され得る。
トリガイベントは、ダイナミックSIM130、ユーザ入力、モバイルデバイス上の所定のスケジューリング、モバイル通信デバイスの判定された場所に基づく、及び/又は、サーバベースのイベントを含み得る。トリガイベント228は、モバイルデバイス102、ダイナミックSIM130、及び/又は、リモートサーバ(例えば、162、172、180)のいずれかによって発生し得、識別、及び認識され得る。トリガイベントは、ネットワークB170に接続するようモバイルデバイス102に指示する入力をモバイルデバイス102上で受信したことに基づき得る。例えば、モバイルデバイス102は、(モバイルデバイス102上で予め定義され得る、及び/又は、モバイルデバイス102へプッシュされ得る)特定の地理的な場所にあることを認識し得て、従って、後のモバイルデバイス102の動的な変更(例えば、本明細書に記載されているような、サブパーティションの変更、及び、無線通信アイデンティティのアクティブ化)、及び/又はダイナミックSIM130の動的な変更(例えば、本明細書に記載されているようなキャリアアプレットの切り替え、ロード、プロビジョニング、アクティブ化)をトリガする。引き続き図2Bにおいて、トリガイベント228に基づき、1つのキャリアサブパーティションから、異なるサブパーティションへの動的変更230が発生し得る。この変更は、異なるキャリアサブパーティション及び関連付けられた無線通信アイデンティティに従って、ハードウェア、ソフトウェア、及び/又は、ファームウェアのためのパラメータ及び情報を使用するようモバイルデバイス102に指示する。これは、特定のネットワークと通信接続するモバイルデバイス上で使用されるハードウェア、ソフトウェア、及び/若しくは、ファームウェアをカスタマイズ並びに/又は適合させることによって、対応するネットワーク(170など)を機能させ、使用するモバイルデバイスの能力を改善することで、有利であり得る。
段階(例えば、トリガイベント228)の順番は、単に例に過ぎないことに注意すべきである。特定の段階(例えば、トリガイベント228の発生)は、ネットワークB170から伝送222を受信する前など、代替的な順番で生じ得ることを理解するべきである。例えば、トリガイベント228は、モバイルデバイス102がキャリアサブパーティションの間で動的に変更する(230)ことであり得る。トリガイベント228として一旦識別されると、アクティブキャリアアプレットの別のキャリアアプレットへの切り替えが、ダイナミックSIM130上で発生し得る。図2Bにおいて破線で示されているように、モバイルデバイスは、アクティブキャリアアプレットを変更するべく、ダイナミックSIM130を起動し得る(232)。ダイナミックSIM130及び/又はモバイルデバイス102は次に、(アクティブキャリアアプレットを切り替えるためのサーバを含み得る)ステアリングシステム180と接続するステアリングアプレット141を起動し得る(234)。ステアリングアプレットは、識別されたネットワークB170、及び/又は、モバイルデバイス102上の(動的に切り替えられた先の)関連付けられたキャリアサブパーティションに対応する、ダイナミックSIM130上のキャリアアプレットへ(例えば、ADPUメッセージを通して)切り替えるべく、モバイルデバイス102を介した、ステアリングシステム180との接続を要求し得る(236)。ステアリングシステム180は、ダイナミックSIM130の機能を判定し得て、及び/又は、ダイナミックSIM130が、特定のキャリアアプレットを有する(すなわち、ロード及び/又は保存している)かどうか解析し得る。図2Bには示されていないが、ステアリングシステム180は、キャリアアプレットを誘導する、及び/又は、ダイナミックSIM130上で、関連付けられたキャリアアプレットをロード/プロビジョニングするプロセスの間、キャリアプロビジョニングサーバ(例えば、162、172)とインタラクトし得る。ステアリングシステム180は次に、ダイナミックSIM130上で1つのキャリアアプレットをアクティブキャリアアプレットにするように、モバイルデバイス102を介して、ダイナミックSIM130に指示し、誘導する(238)。既に保存されているアクティブキャリアアプレットの切り替え(及び/又は、ダイナミックSIM130上に動的にロードされている新しいキャリアアプレットへのダイナミックSIM130の誘導)の後、ダイナミックSIM130と、ダイナミックSIM130上のアクティブキャリアアプレットの識別情報を受信するモバイルデバイス102との間で、ポーリング240が発生し得る。
図2Aのブロック208において、モバイルデバイス102は、ダイナミックSIM130からのアクティブキャリアアプレットの識別情報が、モバイルデバイスの対応するキャリアパーティション(及び、従って、キャリアパーティションに一意の無線通信アイデンティティ)に関連付けられていることを確認し得る。これは、ダイナミックSIMの対応するキャリアパーティションの無線通信アイデンティティとの関連について、アクティブキャリアアプレットに関連付けられた一意識別子を解析することを含み得る。ブロック210において、(セキュアパーティションであり得る)キャリアサブパーティションの無線通信アイデンティティは、確認に基づいてアクティブ化される。いくつかの実施形態において、ダイナミックSIM130上でアクティブなキャリアアプレットが、無線通信アイデンティティ、及び、モバイルデバイス102上のパーティションに適切に対応していると確認した後で、モバイルデバイス102は、アクティブな無線通信アイデンティティ(例えば、特定のカスタマイゼーションパラメータ、ブランディング情報、及び、識別情報)、及び/又は、キャリア/ユーザ入力の他の設定を反映するように、モバイルデバイス102が動的に変更されたことを確実にし得る。例えば、図2Bにおいて、モバイルデバイス102は、解析を行い得て(242)、アクティブキャリアアプレット146が切り替え先のキャリアサブパーティション122にマッチすること、及び、アクティブである、関連付けられた無線キャリアアイデンティティを含むことを確認し得る。モバイルデバイス102は次に、ネットワークB170への接続及び使用を要求し得る(244)。
ブロック212において、モバイル通信デバイス102は、通信用トランシーバ104を介する、識別されたネットワークとの無線通信接続を実行する。従って、モバイル通信デバイス102は、デバイスが、アクティブな無線通信アイデンティティ及びアクティブキャリアアプレットの使用を通して、キャリアについてアクティブ化されているとき、適切な一意のカスタマイゼーション、パラメタリゼーション、ブランディング、アイデンティティも受信しながら、様々な地理的な場所において、複数のキャリアにアクティブかつ動的に加入することが可能である。また、これにより、ユーザがローミングの料金を回避することを可能にし、モバイルデバイス102が加入しているアクティブ状態のキャリアに一意である、モバイルデバイス上でのエクスペリエンスを提供し得る。図2Bにおいて破線で示されているように、モバイルデバイスをネットワークB170と通信可能に接続するためのプロビジョニングパラメータを適用するべく、キャリアBプロビジョニングシステム172は、プロビジョニング情報をモバイルデバイス及び/又はダイナミックSIM130へ送信し得る(246)。モバイルデバイス102及びダイナミックSIM130は、関連付けられたキャリアサブパーティション及びキャリアアプレットを有しているが、ダイナミックSIM130は、ダイナミックSIM130の他のキャリアアプレット、又は、モバイルデバイス102のキャリアサブパーティション上の無線通信アイデンティティを消去及び/又は上書きすることなく、キャリアA(ネットワークA160)に関連付けられた、ダイナミックSIM130上のキャリアアプレットに関するキャリアAプロビジョニングシステム162から、更新(例えば、プロビジョニング情報、一意識別子など)を受信する(248)ことが可能であり得る。従って、ダイナミックSIM130上のキャリアアプレット、及び、キャリアサブパーティション上の無線通信アイデンティティは、後のユーザ入力を要求することなく、アクティブ化、プロビジョニング、及び、更新され得る。
ここで、図3A及び図3Bを参照する。図3A内のフローチャートは、一実施形態に係る、通信接続されたダイナミックSIM130を使用して、モバイル通信デバイス102を動的に変更する方法(300)を示している。更に、図3Bは、本開示の実施形態に対応するメッセージ図を示す。ブロック302において、モバイル通信デバイスは、モバイル通信デバイス102によって識別可能な、複数のモバイル通信ネットワークの1つであるモバイル通信ネットワークを識別する。モバイル通信ネットワークの識別は、図2A及び図2Bにおいて上述したように生じ得る。また、モバイル通信ネットワークは、識別された通信ネットワークに関連付けられたキャリアに固有であり得る無線通信アイデンティティに関連付けられ得る。例えば、図3Bにおいて、いくつかの実施形態は、ネットワークA160に接続され、ネットワークA160から伝送を受信する(320)モバイルデバイス102を含み得る。モバイルデバイス102は、伝送を受信し得て(322)、伝送がモバイル通信ネットワークB170に関連付けられていると識別し得る(324)。
ブロック304において、モバイル通信デバイス102は、モバイルデバイスと取り外し可能に係合され得る、通信接続しているダイナミックSIM130から、アクティブキャリアアプレットの識別情報をポーリングし、読み込み、及び/又は、要求し得る。アクティブキャリアアプレットは、ダイナミックSIM130上に保存されることができる、複数のキャリアアプレットの1つである。例えば、アクティブキャリアアプレットは、複数のメモリパーティション(メモリパーティション144、146、148など)のうち1つに保存される第1キャリアアプレットである。図3Bに示されているように、モバイルデバイス102は、アクティブキャリアアプレット、従って、対応するネットワーク及びキャリアのアイデンティティをポーリング及び識別し得る(326)。モバイルデバイス102は、ダイナミックSIM130の現在のアクティブキャリアアプレットが、識別された(322)ネットワークB170に関連付けられていないことを(キャリアアプリケーション118aを介して)判定し得る(328)。ダイナミックSIM130を、識別されたモバイルネットワークB170に対応させるべく、現在のアクティブキャリアアプレットは、別のキャリアアプレット(つまり、識別されたモバイルネットワークB170に関連付けられたキャリアアプレット)へ切り替えられる(又は、いくつかの場合において、162、172,180などのリモートシステムからダイナミックSIM130上にロードされる)。
図3Aのブロック306において、ダイナミックSIM130上のアクティブキャリアアプレットは、第1キャリアアプレットから別のキャリアアプレットへ切り替えられる。また、他のキャリアアプレットは、ダイナミックSIM130の複数のメモリパーティションの1つに保存され、その特定のメモリパーティションは、識別されたモバイル通信ネットワークに関連付けられる。例えば、図3Bに示されているように、モバイルデバイス102は、アクティブキャリアアプレットを切り替えるように、ダイナミックSIM130に指示し得る(330)。ダイナミックSIM130は、ステアリングシステム180に接続されるとき、ステアリングアプレットをアクティブ化して(332)、使用し得る。ダイナミックSIM130は、1つのキャリアアプレットから別のキャリアアプレットへ切り替えるべく、モバイルデバイス102を介して、ステアリングシステム180と接続し得る(334)。一実施形態において、ステアリングシステム180は、ダイナミックSIM130の機能、及び/又は、どのキャリアアプレットがダイナミックSIMのパーティション内に現在ロードされているか決定する(336)間に使用され得る。ダイナミックSIM130が、メモリパーティション(例えば、ダイナミック加入者識別パーティション143、145、147)内にロードされている適切なキャリアアプレットを有するとき、ステアリングシステム180は、別のキャリアアプレットがアクティブアプレットとなるように、対応するパーティションの別のキャリアアプレットへダイナミックSIM130を誘導し得る(342)。従って、識別されたネットワークB170は、別のキャリアアプレットであるアクティブキャリアアプレットに正確に対応する。
図3Bにおいて破線で示されているように、ダイナミックSIM130は、(必要な場合に)ダイナミックSIM130の利用可能メモリパーティション内に、対応するキャリアアプレットをロードされ得る(338)。つまり、ダイナミックSIM130は、キャリアアプレットの指定、ロード、及び/又は、インストールに利用可能な空のメモリパーティションを有し得る。識別されたネットワーク(例えば、ネットワークB170)に関連付けられたキャリアアプレットがダイナミックSIM130に一旦ロードされると、切り替えられ、従って、アクティブキャリアアプレットになり得る。ダイナミックSIM130のキャリアアプレットのロード、書き込み、プロビジョニング、及び/又は、更新を行うとき、ダイナミックSIM130上に存在し得る他のキャリアアプレット(及び/又は、それらにおけるプロビジョニング)の記憶装置は保持され得る(すなわち、メモリパーティション内で上書き又は消去されない)ことを理解すべきである。つまり、(各々が一意識別子を有する)複数のキャリアアプレットは、ダイナミックSIM130上の記憶装置内に並行して保持され得る。キャリアアプレットは、ダイナミックSIM130のメモリパーティション(例えば、143、145、147)内でプロビジョニングされることなく保存され得る。つまり、プロビジョニングされていないキャリアアプレットは、特定のキャリアに関連付けられた、少なくともいくつかのプロビジョニングパラメータを欠いているにもかかわらず、ダイナミックSIM130上に保存されているものとして識別され得る。ダイナミックSIM130のプロビジョニングされていないキャリアアプレットは最初、キャリアアプレット及び/又は他のキャリアアプレット(又はそれらにおけるプロビジョニング)を上書きすることなく、動的にプロビジョニングされ得るベースアプレット(ジェネリックアプレット)と見なされ得る。いくつかの実施形態において、プロビジョニングされていないキャリアアプレット(すなわち、ベース又はジェネリックアプレット)は、製造時、及び/又は、モバイルデバイス102との係合前に、ダイナミックSIM130のメモリ内にロードされ得る。更に、ロードされたキャリアアプレットはまた、キャリアネットワーク(図3Bに示されている実施形態では、ネットワークB170)に接続するためのキャリア固有の認証情報をプロビジョニングするキャリアアプレットに書き込み得るキャリアBプロビジョニングシステム172を介してプロビジョニングされ得る(340)。アクティブキャリアアプレットが切り替えられた後、モバイルデバイス102は、アクティブキャリアアプレットの識別情報のレポートを受信し得て(344)、意図されたキャリアアプレットが現在、ダイナミックSIM130上でアクティブアプレットであることを確実にする。
ブロック308において、モバイルデバイス上のキャリアアプリケーションは、ダイナミックSIM130上のアクティブキャリアアプレットに対応するトラステッドセキュアパーティション(キャリアサブパーティション120、122、124など)が、モバイル通信デバイス102のキャリアパーティション内に割り当てられているかどうか解析し得る。解析は、アクティブキャリアアプレットの切り替えに基づいていて、複数のキャリアサブパーティションの各々は、特定のキャリアについてプロビジョニングされ得る(例えば、上述のように、ブランディング情報などの特定の情報及びパラメータでロード又は更新される)それぞれの無線通信アイデンティティに関連付けられる。例えば、図3Bにおいて、モバイルデバイス102は、(現在アクティブキャリアアプレットである)切り替えられたキャリアアプレットの識別情報を使用して、モバイルデバイス102上のどの無線アイデンティティが使用されているか(すなわち、どのキャリアサブパーティションが現在アクティブであるか)、並びに、識別されたネットワークB170、及び、ダイナミックSIM130上のアクティブキャリアアプレットの両方にそれが対応及び関連付けられているかどうか判定し(346)する。一実施形態において、解析は、モバイルデバイス102上のキャリアパーティションが存在し、関連付けられた無線通信アイデンティティを割り当てられていることを確認する結果を生み出し得て、従って、モバイルデバイス102がモバイルデバイス102上のそのパーティション(例えば、キャリアサブパーティション120、122又は124)へ動的に変更(及び/又はアクティブ化)することを可能にし得る。いくつかの実装において、モバイルデバイス102上の動的変更は、ダイナミックSIM130上のキャリアアプレットを切り替えることによって引き起こされ得て、他の実装では、モバイルデバイス102上のキャリアサブパーティションのアクティブ化及び/又は動的変更がアクティブキャリアアプレットの切り替えを引き起こし得ることを理解するべきである。パーティション(例えば、キャリアサブパーティション120、122、又は124)の1つをアクティブ化することにより、モバイルデバイス102を動的に変更し、従って、関連付けられた無線通信アイデンティティをアクティブ化することは、モバイルデバイス102上で使用されるハードウェア、ファームウェア、及び/又は、ソフトウェアのアクティブパラメータを変更及び実装し得る、モバイルデバイス102上のパーティションの無線通信アイデンティティからの情報のアクティブ化に従って、モバイルデバイス102をカスタマイズすることによって、対応するキャリアに接続するモバイルデバイス102の動作を改善し得る。これは、対応するキャリアのネットワークを使用するのに必要でないが、他のキャリアサブパーティションの無線通信アイデンティティに関連付けられた代替的なキャリアに必要であり得る、アプリケーション、無線、及び、他のパラメータのためのオーバーヘッドコストを低減し得る(アクティブメモリの低減、記憶領域の低減、バッテリ使用量の低減)。
ブロック310において、モバイルデバイス102上の解析は、キャリアサブパーティション上で現在アクティブな無線通信アイデンティティが、異なるキャリアに対応しているので、識別されたネットワーク及びキャリアアプレットに関連付けられていないことを示し得る。いくつかの実施形態において、無線通信アイデンティティは、モバイルデバイス102上でまだアクティブであり得ない。更に、解析は、識別されたモバイル通信ネットワーク及びキャリアアプレットに対応する無線通信アイデンティティは、モバイルデバイス102上のパーティション(例えば、キャリアサブパーティション120、122又は124)のいずれにも関連付けられていないことを示し得る。従って、キャリアアプリケーション(例えば118a)は、キャリアパーティション内の複数のパーティションの1つ(例えば、未使用のキャリアサブパーティション)を、アクティブキャリアアプレット、ネットワーク、及び、キャリアに対応する無線通信アイデンティティに割り当て得る。例えば、図3Bにおいて、モバイルデバイス102は、メモリ110のキャリアサブパーティションの1つを、ネットワークB170、及び、切り替えられた、ダイナミックSIM130上のアクティブキャリアアプレットに関連付けられた無線通信アイデンティティに割り当て得る(348)。これは、モバイルデバイス102上のキャリアサブパーティションが、ネットワークB170(及びキャリアアプレット)の正確な無線通信アイデンティティに対応しなかったこと、従って、キャリアサブパーティションの1つが割り当てられ、及び/又は、生成され得ると判定したことに応じて発生し得る。いくつかの実施形態において、(トラステッドセキュアパーティションであり得る)キャリアサブパーティションの割り当て及び/又は生成は、ユーザ、キャリア、及び、事業者のいずれかの仕様に係るプロビジョニング及びパラメタリゼーションを含み得る。
図3Bにおいて破線で示されているように、モバイルデバイス102がネットワークB170とインタラクトするのは初めてのことであり得る。モバイルデバイス102のキャリアパーティションが、識別されたネットワーク(例えば、ネットワークB170)、及び、ダイナミックSIM130上の対応するキャリアアプレットに関連付けられている、適切な無線通信アイデンティティ、及び、キャリアサブパーティションを有することを確実にするべく、モバイルデバイス102は、キャリアBプロビジョニングシステム172と接続する(350)ことで、対応する無線通信アイデンティティ及び/又は関連情報を入手、受信し、及び/又は、提供される。キャリアBプロビジョニングシステム172は、モバイルデバイス102上で承認された無線カスタマイゼーションのための特定のキャリアサブパーティションのプラットフォームを実現するべく、モバイルデバイス102に適用されたキャリア固有のプログラムリリース情報(PRI)を判定し得る(352)。次に、キャリアBプロビジョニングシステム172は、キャリアサブパーティションの無線通信アイデンティティに追加的なプロビジョニングパラメータを適用するべく、無線プロビジョニングを開始し得る。それらのパラメータは、ネットワーク上で、より具体的にユーザサブスクリプション及びデバイスを識別するように公開されている。特定のネットワーク及びプロビジョニングシステム(例えば160、162及び170、172)に関連付けられた異なるキャリアは、複数の手段で無線カスタマイゼーションを実現し得ることを理解するべきである。一実装において、ネットワーク(例えば、ネットワークB170)に関連付けられたキャリアは、アクセスポイントネーム(APN)情報、モバイルディレクトリ番号(MDN)情報、及び、他の既知のパラメータを含み得るプロビジョニングパラメータのプロフィール管理にOMA−DMプロビジョニングを使用し得る。一実施形態において、プロビジョニングシステム(例えば、162、172)は、OMA−DMを使用し得て、ダイナミックSIM130上のアクティブキャリアアプレットに基づき得る、ソフトウェア及びファームウェアをカスタマイズするサービスオブジェクトを送信する。
引き続き、図3Bの例において、キャリアカスタマイゼーションペイロード(例えば、無線通信アイデンティティに関連付けられたプロビジョニングのためのメッセージ)は、キャリアサブパーティションをプロビジョニングするべく、並びに、モバイルデバイス102のブランディング及び構成を適用するべく、モバイルデバイス102へ配信され得る(354)。特定のキャリアサブパーティションへ配信されるコンテンツ(すなわち、モバイルデバイス102の動的変更中に使用されるプロビジョニングパラメータ)は、上述のような、ブランディング、ハードウェア、ソフトウェア、及び/又は、ファームウェア構成、並びに、対応するネットワークとのインタラクション機能を含み得る、デバイスのユーザエクスペリエンスを決定することを理解するべきである。配信された(キャリアのための無線通信アイデンティティを含み得る)コンテンツは、ネットワークB170についてモバイルデバイス上に割り当てられているキャリアサブパーティションに適用され(356)、追加される。ダイナミックSIM130上のアクティブキャリアアプレット、及び、キャリアサブパーティションを使用するネットワークB170との接続がアクティブ化され得る(358)。これにより、アクティブな無線通信アイデンティティに関連付けられたパラメータ及び情報を実装することにより、ネットワークB170上で使用するためのモバイルデバイス102の動的変更が完了し得る。
ブロック312において、モバイルデバイス102は、無線通信アイデンティティに割り当てられたパーティション(すなわち、対応するキャリアサブパーティション)に基づいて、及び、ダイナミックSIM130のアクティブキャリアアプレットに基づいて、識別されたモバイル通信ネットワークとの無線通信接続を実行する。従って、(アクティブキャリアアプレットを有する)ダイナミックSIM130と、モバイルデバイス102上の対応するキャリアサブパーティションとの連携により、モバイルデバイス102は、ダイナミックSIM130上の対応するキャリア、及び、他のキャリアに関連付けられたキャリアサブパーティションを介して、同一のモバイルデバイス102上で他のキャリアへの複数のサブスクリプションを維持しながらも、固有キャリア、使用中のネットワーク、ダイナミックSIM130の一意識別子、及び、無線通信アイデンティティのいずれかに従って動的に変更することが可能となる。
(トラステッドセキュリティゾーンであり得る)キャリアパーティション内に、複数の無線通信アイデンティティが保存され得て、各々が、ダイナミックSIM130上の複数のキャリアアプレットの1つに対応する特定のサブパーティションを有することを理解されたい。無線通信アイデンティティは、企業、個人、製造、試験、組織のメンバーシップ、又は、特定のキャリア上での使用に対応するモバイル決済に関連付けられ得て、そのために使用され得る。例えば、個人の無線通信に関連付けられた、個人の無線通信アイデンティティは、モバイル通信デバイスのキャリアサブパーティションへの動的な変更、及び/又は、物理的なダイナミックSIM130上でのアクティブキャリアアプレットへの動的な切り替えに応じてアクティブ化され得て、一方、企業の無線通信に関連付けられた企業の無線通信アイデンティティは、モバイル通信デバイス102の別のパーティションへの動的な変更、及び/又は、ダイナミックSIM130の対応するキャリアアプレットへの動的な切り替えに応じてアクティブ化され得る。更に、無線通信アイデンティティは、モバイルデバイス102の動的な変更の後に、モバイル通信デバイスのキャリアサブパーティション上でアクティブ化され得て、モバイルデバイス102は、そのキャリアサブパーティションを示し、参照し得て、及び/又は、それを使用するように切り替わり得る。無線通信アイデンティティ(及び、従って、対応するパーティション)のアクティブ化は、所定の設定、ネットワーク機能、受信された信号強度、場所、及び、トリガイベントのいずれかに基づき得る。無線通信アイデンティティは更に、モバイルデバイス102の無線通信接続のための動作ランタイムパラメータを生成するのに使用され得る情報(例えば、ブランディング情報、ダイナミックSIM130上で利用可能でないキャリアからのプロビジョニングパラメータ、ユーザ設定など)を含み得る。
一実施形態において、無線通信アイデンティティは、代替的なドメインネームシステム(DNS)サーバのアドレス、メディアゲートウェイ、ポート、及び/又は、ルーティング情報を含み得る。いくつかの実装は、ホールディングパーティション(例えば図1Aの126)内で共有される少なくとも1つのパラメータ値が異なる共通の情報を可能にし得る。代替的な実施形態は、対応する無線通信アイデンティティをプロビジョニング、アクティブ化、又は、使用するとき、アクティブキャリアアプレットからの参照情報を含み得る。更に、無線通信アイデンティティは、例えば、ユーザ設定、サービス、登録、アプリケーション有効化、モバイル通信デバイスによるネットワークの使用を改善する(例えば、モバイルデバイス上でファームウェア、ソフトウェアを動的に変更し、ハードウェアをトリガする)カスタマイゼーションパラメータ、連絡先リスト、及び/又は、無線通信アイデンティティに関連付けられた他のユーザデータなど、特定のモバイル通信ネットワーク及びキャリアの1つに関連付けられたユーザデータを含み得る。いずれのサブパーティションも、ホールディングパーティション(例えば、126)に公開されなかった特定のサブパーティションの、慎重に扱うべきコンテンツ、パラメータ、及び、情報に対するアクセスを獲得することなく、特定の無線通信アイデンティティに関連付けられた、移動される特定の特徴(例えば、連絡先リスト、音声メール、データ、使用データなど)は、ホールディングパーティション内に保持され得て、別のサブパーティション内の別の無線通信アイデンティティに書き込まれる。これは、慎重に扱うべき情報を、特定の各キャリア、及び、キャリアサブパーティションに公開することなく、無線通信アイデンティティの中の指定された情報(ユーザ及び/又はキャリアによる指定など)を共有することを可能にし得る。
一実施形態において、本明細書に開示されているモバイルデバイス102は、最初は非ブランディング状態であり、従って、特定のキャリアに関して一般的であるベースデバイスと見なされ得る。つまり、ベースデバイスは、いくつかの情報がまだ完全にプロビジョニング(又はブランディング)されていない少なくともいくつかの要素及び/又は特徴を含む、特化したデバイスであり、特定の無線キャリアのみとの無線機能に必ずしも限定されているわけではない。従って、ベースデバイスは、異なる無線通信技術を有する、複数の異なる無線通信サービスプロバイダに関連して動作し得る。
ここで、図4を参照すると、一実施形態に係る方法370が記載されている。図1A及び図1Bに開示されているシステム100の実施形態は、本明細書に記載されている方法のいずれかの実施形態を実装し得ることを理解するべきである。ブロック372において、モバイル通信ネットワークは、モバイルデバイス102上で識別される。モバイル通信ネットワークは、複数のモバイルネットワークの1つであり得て、各モバイル通信ネットワークは、モバイルデバイス102のための個々の無線通信アイデンティティに関連付けられている。モバイルデバイス102は、2つ又はより多くの無線通信アイデンティティを含み得て、その各々は、本明細書で上述したような、モバイル通信デバイスのメモリのパーティション(キャリアサブパーティション120、122、124など)に割り当てられている。
ブロック374において、モバイルデバイス102は(例えば、キャリアアプリケーション118aによるプロセッサの構成を介して)、(モバイルデバイス102と通信接続し、取り外し可能に係合している)ダイナミックSIM130上のアクティブキャリアアプレットの識別情報が、識別されたモバイル通信ネットワークに関連付けられていることを確定する。アクティブキャリアアプレットは、ダイナミックSIM130上のメモリ内に同時に保持され得て、かつ、複数のキャリアアプレットを上書き及び/又は消去することなくプロビジョニングされ得る、複数のキャリアアプレットのうち1つに対応する。ダイナミックSIM130の各キャリアアプレットは、モバイルデバイス102上の少なくとも1つの無線通信アイデンティティに対応し得る。その無線通信アイデンティティは、モバイル通信ネットワーク、及び、モバイルデバイス102の1つのパーティションに関連付けられる。
各無線通信アイデンティティの少なくとも一部は、モバイル通信デバイス102のメモリ110内の特定のパーティション(例えば、キャリアサブパーティション120、122、124)内に保存される。異なる無線通信アイデンティティが、異なる方式で、割り当てられ、保存され、インストールされ得る。例えば、モバイル通信デバイスがどこへ出荷されるか、及び/又は、モバイルデバイス102上でどの無線通信アイデンティティが所望され得るか、相手先商標製造会社(OEM)が知ったときに、無線通信アイデンティティは、モバイル通信デバイスの相手先商標製造会社でロードされ得る。代替的に、これは、モバイルデバイスが実現又はアクティブ化されるときに、モバイルデバイス102上のアプリケーション(例えば、キャリアアプリケーション118a)、及び/又は、リモートサーバによって、後に実行され得る。
無線通信アイデンティティは最初に、モバイル通信デバイス上で割り当てられ、(キャリアサブパーティションA120などに)保存され得て、次に、モバイル通信デバイスが、以前のアクティブな無線通信アイデンティティから、無線通信アイデンティティに関連付けられた、対応するキャリアサブパーティションへ動的に変更される(すなわち、キャリアサブパーティションB122などの別のキャリアサブパーティションからの無線通信アイデンティティを非アクティブ化して、新しいキャリアサブパーティションをアクティブ化する)とき、アプリケーション(例えば、キャリアアプリケーション118a)によって、モバイル通信デバイス上でインストール及び/又はアクティブ化される。更に、モバイルデバイス102が、無線通信アイデンティティに関連付けられた特定のサブパーティションをアクティブ化するように変更するとき、その無線通信アイデンティティは、モバイル通信デバイス上のアプリケーションによって、動的に受信され、割り当てられ、インストールされ得る。また、ダイナミックSIM130上のアクティブなキャリアアプレットを切り替える(すなわち、ダイナミックSIMをモバイルデバイスから接続解除することなく、異なるキャリアアプレットをアクティブキャリアアプレットにする)ことで、無線通信アイデンティティが、モバイルデバイス102上で(特定のパーティションへ)動的に割り当てられ、インストールされ、及び/又は、アクティブ化され得ることを引き起こし得る。ダイナミックSIM130の各キャリアアプレットは、モバイルネットワークの1つに関連付けられ得る一意識別子を含み、参照することを理解するべきである。
いくつかの実施形態において、トリガイベントが検出される。一実施形態において、トリガイベントは、無線通信アイデンティティ、及び/又は、ダイナミックSIM130上のキャリアアプレットの変更を引き起こし得る。モバイルデバイス102上のアプリケーション(例えば、キャリアアプリケーション118a)は、アクティブキャリアサブパーティション上の無線通信について、どの無線通信アイデンティティがアクティブであるか判定するためのルール又は機能を有する、アクティブキャリアエンジンを実行し得る。いくつかの実装において、モバイルデバイス102は、ディスプレイ上でユーザインターフェース106を提供し得る。このユーザインターフェースは、モバイルデバイス102上の利用可能な無線通信アイデンティティのうち、どれをアクティブにするか選択するためのコントロールをユーザに提供する。代替的に、無線通信アイデンティティは、識別されたモバイル通信ネットワークのキャリアに関連付けられたサーバによってアクティブ化され得る。
更に、一実施形態において、アプリケーション(例えば、図1Aのデバイスアプリケーション112、及び、キャリアアプリケーション118aのいずれか)は、動作状態及び/又は環境状態を監視し得て、トリガイベントを判定し得る。アプリケーションは、トリガイベントが検出されたときに、無線通信アイデンティティをアクティブ化し得る。トリガイベントは、ユーザ入力を受信することを含み得て、トリガは、スケジュール若しくは地理的な場所、サーバベース、ダイナミックSIM130上のキャリアアプレットの切り替え、及び/又は、ダイナミックSIM130上のアクティブキャリアアプレットの識別に基づく。トリガイベントは、場所、時間、スケジュール、無線信号インシデント、要求、及び、他のトリガイベントに基づき得る。モバイルデバイス102上の異なる無線通信アイデンティティ、及び/又は、ダイナミックSIM130上の異なるキャリアアプレットは、異なるトリガイベントによってアクティブ化され得る。例えば、1つの無線通信アイデンティティは、単一のトリガイベントによってアクティブ化され得て、別の無線通信アイデンティティは、異なるトリガイベントによって、又は、複数のトリガイベントの組み合わせによってのみ、アクティブ化され得る。アプリケーションは、ユーザが定義したマッピング、選択、並びに/又は、特定のメモリサブパーティション、及び、その中に保存されている、対応する無線通信アイデンティティを使用するための関連付けを提供するグラフィカルユーザインターフェースをディスプレイ上に提供し得る。いくつかの実施形態において、無線通信アイデンティティ、ダイナミックSIM130上のメモリパーティション(例えば143、145、147)、及び/又は、キャリアアプレットは、無線命令の受信などを通して、モバイルデバイス102上でユーザ入力を受信することなく、動的に変更、更新、及び/又は、アクティブ化され得る。
ブロック376において、モバイルデバイス102は、1つのキャリアサブパーティションから別のキャリアサブパーティションへ動的に変更される。パーティションの変更は、ダイナミックSIM130上でのアクティブキャリアアプレットの識別などのトリガイベントに基づき得る。メモリ110のパーティション内に保存された無線通信アイデンティティの1つは、アクティブ化されるか、又は、(トリガイベントに応じ得て)動的にインストールされアクティブ化され、モバイルデバイス102は、アクティブな通信アイデンティティに基づいて、通信用トランシーバ104を介して、無線通信を実行する。従って、モバイルデバイス102は、(トラステッドセキュアパーティションであり得る)キャリアパーティションを動的に変更するとき、キャリアサブパーティションに関連付けられた無線通信アイデンティティがアクティブ化される。
トリガイベント、及び/又は、アクティブ化するのに最適若しくは好ましい無線通信アイデンティティを選択するための対応するルールに基づいて、選択された無線通信アイデンティティは、モバイルデバイス102の対応するパーティション上のアプリケーション(例えば、キャリアアプリケーション118a)によって、アクティブ化され得るか、又は、動的にインストールされ、次にアクティブ化され得る。新しい無線通信アイデンティティのインストールを伴うとき、無線通信アイデンティティを保存するべく、メモリ110内のパーティションが割り当てられ、無線通信アイデンティティは、モバイルデバイス102のパーティション内にインストールされ、次にアクティブ化される。アプリケーションは、アクティブ化された無線通信アイデンティティに基づいて、モバイルデバイス102の動作ランタイムパラメータを(再)決定、又は、(再)計算し、これらの動作ランタイムパラメータをモバイルデバイス102のメモリ110内に保存する。次に、モバイルデバイス102上の動的変更によって、通信用トランシーバ104はリセットし得て、従って、再計算された動作ランタイムパラメータを有効にする。モバイルデバイス102の動的変更、及び、無線通信アイデンティティのアクティブ化は、1つのパーティション(すなわち、以前にアクティブ化されていたパーティション及び無線通信アイデンティティ)のソフトウェア及び/又はファームウェアを非アクティブ化し得て、別のトラステッドセキュアパーティション(すなわち、新たにアクティブ化されたパーティションに対応する無線アイデンティティ)に対応するファームウェアを(例えば、無線通信アイデンティティの関連付けられたブランド情報を通して)アクティブ化し、従って、関連付けられたネットワークに接続したときにモバイルデバイスの機能を(例えば、上述のように、未使用の、及び/又は、非効率に使用されている、ハードウェア、ファームウェア、及び/又は、ソフトウェアを非アクティブ化することによって)改善し得る。
ブロック378において、モバイルデバイス102は、現在アクティブなキャリアサブパーティションの無線通信アイデンティティに関連付けられた、ユーザ通信パラメータの所定の組にアクセスし得る。一実施形態において、ユーザ通信パラメータの所定の組は、特定のパーティション及び無線通信アイデンティティを動的に変更、及び、アクティブ化する前にアクティブ状態だった、別のパーティション(例えば、別のキャリアサブパーティション)によって使用され得る。また、選択及び/又はアクティブ化された無線通信アイデンティティに関連付けられたユーザデータは、ユーザ入力に基づいて、及び/又は、無線通信を介して、更新及び保存され得る。例えば、以前の対応するユーザデータは、新しいユーザデータに置き換えられ得る。次に、対応するアプリケーションは、更新されたユーザデータ及び/又はユーザ通信パラメータで動作し得る。
ユーザ通信パラメータ(例えば、ユーザデータ)は、モバイルデバイス102上の通信アクティビティの所定の履歴(そのアクティビティは複数のモバイル通信ネットワークのうち少なくとも1つに固有であり得る)、ユーザ連絡先/アドレスプロフィールリスト、音声メール録音、音声メッセージデータ、及び、テキストメッセージデータのうち、いずれかを含み得る。いくつかの実施形態において、少なくともユーザ通信パラメータのサブセットは、複数のパーティションの間で移動可能であり得る。例えば、ユーザはモバイル通信デバイス102をキャリアAからキャリアBへ動的に変更することを希望し得るが、ユーザは、前の通信アクティビティの情報にアクセスし続けることを希望し得る。モバイルデバイス102のアプリケーション(例えば、キャリアアプリケーション118a)は、異なるキャリアサブパーティション(及び、従って、異なる無線キャリアアイデンティティ)がアクティブ化されているという通知の受信に応じて、少なくともいくつかのユーザ通信パラメータをホールディングパーティション(例えば、126)へ移動させ得る。次に、モバイルデバイス102上で新たにアクティブ化されたパーティションは、移動可能なユーザ通信パラメータにアクセスし、受信し得て、次に、移動されたユーザ通信パラメータ(ユーザデータ)を、新たにアクティブ化された無線通信アイデンティティへ追加する。従って、モバイルデバイス102は、モバイルデバイス102がキャリアA上で(関連付けられた無線通信アイデンティティ、及び、以前アクティブ状態だったキャリアアプレットで)動作していたときの通信アクティビティ情報も保持しながら、キャリアBの識別されたネットワーク上で(関連付けられた無線通信アイデンティティ、及び、現在アクティブであるキャリアアプレットを使用することによって)動作し得る。一実施形態において、これは、通信ランタイムフレームワーク132及び/又はキャリアアプリケーション118aで動作しているステアリングアプレット141を介して達成され得る。
いくつかの実装において、キャリアアプリケーションは、(固有キャリアの無線通信構成、デバイスルール、及び/又は、関連付けられているユーザデータに対応する)少なくとも1つの無線通信アイデンティティをリモートサーバへ送信し得る。キャリアアプリケーションは、無線通信アイデンティティ、対応する無線通信構成、デバイスルール、及び/又は、関連付けられたユーザデータを、これらのデータが所定の状況下で保存されているリモートサーバ(例えば、キャリアプロビジョニングシステム162、172など)から、フェッチ及び/又はポーリングし得る。例えば、モバイルデバイス102が紛失したとき、ユーザは、新しいモバイル通信デバイスを入手し得て、保存されたデータ(例えば、無線通信アイデンティティ、移動されたユーザ通信パラメータなど)をリモートサーバから、新しいモバイル通信デバイスの特定のサブパーティションへダウンロードし、また、ユーザ入力及び/又はプロンプトを必要とすることなく、交換用のダイナミックSIMへ、対応するキャリアアプレットを(無線通信アイデンティティに基づいて)動的に受信する。
ブロック379において、モバイルデバイス102は、対応するアクティブ化されたトラステッドセキュアパーティション(例えば、アクティブ化されたキャリアサブパーティション)、ダイナミックSIM130のアクティブキャリアアプレット、及び、アクセスされた、ユーザ通信パラメータの所定の組に基づき、それらを使用して、識別されたモバイル通信ネットワークとの無線通信接続を実行する。
図5は、本開示の態様及び実施形態を実装するように動作する、ユーザ機器(UE)400(少なくとも図1Aにおいて開示されているモバイル通信デバイス102など)を示しているが、本開示はこれらの実装に限定されるべきではない。ユーザ機器400は、携帯電話として示されているが、無線ハンドセット、ページャー、タブレット、携帯情報端末(PDA)、ラップトップコンピュータ、企業向けアクセス端末、小型フラッシュデバイス、プロダクトデバイススキャナ、ゲーミングデバイス、ウェアラブルコンピュータ、ウェアラブルデバイス(例えば、スマートウォッチ、スマートグラス)、及び/又は、メディアプレーヤなどを含む、様々な形態を取り得る。ユーザ機器の実施形態(例えば、400、102)は、モバイル、又は、固定型(すなわち、指定場所で使用することが意図されている)であり得、ネットワーク(例えば、無線アクセスネットワーク(RAN)、コアネットワーク、イントラネット、インターネット、企業ネットワーク、VPNなど)と通信し得る。UE400は、ディスプレイ402、並びに、ユーザ入力のためのタッチセンサ面、及び/又は、キー404を含むが、ディスプレイ402の代替的な実施形態は、タッチセンサ式でないことがあり得る。タッチスクリーンディスプレイ402内には、所定の数のアプリケーションアイコン404が示されているが、異なる実施形態において、任意の数のアプリケーションアイコン404がタッチスクリーンディスプレイ402を介して提示され得ることを理解するべきである。アプリケーションアイコンは、プロセッサ若しくはUE400上でローカルに、又は、ネットワークのプロセッサ上でリモートに実行され得る、ハードウェア、ソフトウェア、及び/又は、ファームウェアアプリケーションに対応し得る。いくつかの実施形態において、ユーザは、UE400上で追加的なアプリケーションを起動、受信、ダウンロード、及び/又は、インストールするのに、UE400を使用し得て、そのようなダウンロードされた、及び/又は、インストールされたアプリケーションに関連付けられたアイコンは、タッチスクリーンディスプレイ402、ディスプレイ402の代替的なユーザインターフェース、又は、代替的なスクリーン(図示せず)に追加され得る。UE400は、ユーザが選択するための複数のオプション、ユーザが作動させるための複数の制御、及び/又はユーザが指示するための複数のカーソル若しくは他の複数のインジケータを提示し得る。UE400は、ダイアルする複数の番号か、又はハンドセットの動作を構成するための様々なパラメータ値を含む、ユーザからのデータ入力を更に受け入れ得る。
UE400は、ユーザ命令又は他の(ローカル、リモート両方の)トリガに応じて、1又は複数のソフトウェア又はファームウェアのアプリケーションを更に実行し得る。これらのアプリケーションは、ユーザのインタラクションに応じて、様々なカスタマイズされた機能を実行するように、少なくともUE400のプロセッサを構成し得て、従って、UE400を特化したマシンへ変換できる。更に、UE400は、無線で、又は、有線接続を介して、例えば、無線基地局、無線アクセスポイント、又は、ピアUE400から、プログラム及び/又は構成され得る。UE400は、ポータルにアクセスし得て、及び/又は、タッチスクリーンディスプレイ402がコンテンツ(例えば、通信ポータルを介したウェブページのリモートコンテンツ)を表示することを可能にするウェブブラウザアプリケーションを実行し得る。データパケット(例えば、ウェブページからのコンテンツ)は、(例えば、GSM(登録商標)、CDMS、LTE、NodeB、eNodeBなどのいずれかの無線通信技術に関連付けられた)基地局、無線ネットワークアクセスノード(例えば、ルーティングデバイス)、ピアUE400、又は、通信サービスプロバイダの他のいずれかの無線通信ネットワーク若しくはネットワークシステムへのリンクを形成することなどによって、有線及び/又は無線通信を介して、UE400上で入手され得る。
図6は、UE400の実施形態に係る、動作可能なブロック図(500)を示す。ハンドセットの様々な既知のコンポーネントが描写される一方で、一実施形態においては、列挙された複数のコンポーネントのサブセット、及び/又は列挙されていない追加的な複数のコンポーネントがUE400に含まれ得る。UE400は、デジタル信号プロセッサ(DSP)502、及び、メモリ504(例えば、非一時的及び/又は不揮発性メモリ)を含む。示されているように、UE400は更に、アンテナ及びフロントエンドユニット506、無線周波数(RF)トランシーバ508(例えば、モバイルデバイス102、又は、他の無線インターフェースデバイスの通信用トランシーバ)、ベースバンド処理ユニット510、マイク512(すなわち、入力受信ポート)、イヤーピーススピーカ514、ヘッドセットポート516(すなわち、出力信号ポート)、入出力インターフェース518、リムーバブルカード520(例えば、リムーバブルメモリ、UICC、ダイナミックSIM130など)及び関連付けられているインターフェース(例えば、読み取り機インターフェース128)、ポート522(例えば、ユニバーサルシリアルバス(USB)、又は、データ及び/又は電界を受信するための他の電気ポート)、赤外線ポート524、バイブレータ526(すなわち、電気機械的作動機構)、電気機械的スイッチ528、タッチセンサ面530を有する(すなわち、タッチ入力、及び/又は、非接触式ジェスチャに反応する)タッチスクリーンディスプレイ(例えば、液晶ディスプレイ(LCD)、発光ダイオードなど)、タッチスクリーン/LCDコントローラ532、カメラ534、カメラコントローラ536、グローバルポジショニングシステム(GPS)受信部538を備え得る。一実施形態において、UE400はタッチセンサスクリーンを提供しない別の種類のディスプレイを含み得る。一実施形態において、DSP502は、入出力インターフェース518を介すことなくメモリ504と直接通信し得る。一実施形態において、DSP502は、入出力インターフェース518を介すことなく、メモリ504と直接通信してもよい。更に、一実施形態においては、UE400は、他の機能を提供する他の複数の周辺機器を備え得る。
DSP502、又は何らかの他の形態のコントローラ若しくは中央演算処理装置は、メモリ504に保存される、又はDSP502自体の中に含まれるメモリに保存される組み込みソフトウェア若しくはファームウェアに従って、UE400の様々なコンポーネントを制御すべく動作する。組み込みソフトウェア若しくはファームウェアに加えて、DSP502は、メモリ504に保存されるか、又はリムーバブルメモリカード520のようなポータブルデータ記憶媒体などの情報搬送媒体を介して、あるいは有線若しくは無線ネットワーク通信を介して利用可能となる複数の他のアプリケーションを実行し得る。アプリケーションソフトウェアは、所望の機能を提供するようにDSP502を構成するコンパイルされた1組の機械可読命令を備え得るか、又は、アプリケーションソフトウェアは、DSP502を間接的に構成するための、インタープリタ若しくはコンパイラによって処理される複数の高水準ソフトウェア命令であり得る。
DSP502は、アナログベースバンド処理ユニット510を介して無線ネットワークと通信し得る。いくつかの実施形態において、通信は、ネットワーク接続性(例えば、インターネット、イントラネット、エクストラネットなど)を提供し得て、UEが(例えば、インターネット上で電子メール、無線ネットワーク上でテキストメッセージ、他のデータパケットなどを送信および受信するべく)ネットワークを介してコンテンツへのアクセスを獲得し、及び/又は、コンテンツを受信することを可能にする。入出力インターフェース518は、DSP502と、様々なメモリ及びインターフェースとを相互接続する。メモリ504及びリムーバブルメモリカード520はソフトウェア及びデータを提供してDSP502の動作を構成し得る。複数のインターフェースの中にはUSBポート522及び赤外線ポート524があってよい。USBポート522は、UE400が周辺機器として機能して、パーソナルコンピュータ又は他のコンピュータシステムと情報を交換できるようにし得る。赤外線ポート524、及びBluetooth(登録商標)インターフェース又はIEEE802.11準拠の無線インターフェースなどの他の複数のオプションのポートは、UE400が、近傍の他の複数のハンドセット及び/又は複数の無線基地局と無線で通信することを可能にし得る。一実施形態において、UE400は、近距離無線通信(NFC)トランシーバを含み得る。NFCトランシーバは、POS端末による決済トランザクション、又は、他の通信交換を完了するのに使用され得る。一実施形態において、UE400は、無線周波数識別情報(RFID)の読み取りデバイス、及び/又は、書き込みデバイスを備え得る。
スイッチ528は、入出力インターフェース518を介して、DSP502に接続して、ユーザが選択を行い、情報を入力し、及び、別の手段でUE400に入力を提供するためのメカニズムを少なくとも1つ提供する。別の入力メカニズムは、タッチスクリーンLCD530であり得る。これはまた、ユーザインターフェースを介して、テキスト及び/又は画像をユーザに表示し得る。タッチスクリーンディスプレイは、液晶に限定されるものではなく、LED、OLED、ウェアラブルディスプレイなど、他のディスプレイメカニズムを含み得る。タッチスクリーンディスプレイ530は必ずしも、タッチを介して入力を受信することに限定され得るものではなく、他のコンポーネント(例えば、534、536など)への接続を介したジェスチャ認識も含み得ることを理解するべきである。タッチスクリーンLCDコントローラ532は、DSP502をタッチスクリーンLCD530に接続する。GPS受信機538は、複数のグローバルポジショニングシステム信号をデコードすべくDSP502に接続され、それによりUE400が自身の位置を決定できるようにする。
図7AはDSP502によって実装され得るソフトウェア環境602を示す。DSP502はオペレーティングシステムソフトウェア604を実行する。オペレーティングシステムソフトウェア604は、ソフトウェア動作の残りが動作するプラットフォームを提供する。オペレーティングシステムソフトウェア604は、アプリケーションソフトウェアにアクセス可能な複数の標準化されたインターフェースを有するハンドセットハードウェアのための様々なドライバを提供し得る。オペレーティングシステムソフトウェア604は、UE400上で動作する複数のアプリケーション間で制御を伝達するアプリケーション管理サービス(AMS)606に接続され、かつ、インタラクトしてよい。また、ウェブブラウザアプリケーション608、メディアプレーヤアプリケーション610、及びJava(登録商標)アプレット612も図7Aにおいて示される。ウェブブラウザアプリケーション608は、例えば、UE400が無線リンクを介してネットワークに接続されるとき、コンテンツ及び/又はインターネットをブラウズすべく、UE400によって実行され得る。ウェブブラウザアプリケーション608は、複数のウェブページを検索及び閲覧すべく、ユーザが複数のフォームに情報を入力し、且つ、複数のリンクを選択できるようにし得る。メディアプレーヤアプリケーション610は、UE400により実行されて、オーディオ又はオーディオビジュアルメディアを再生してよい。Java(登録商標)アプレット612はUE400によって実行されて、ゲーム、ユーティリティ、及び他の機能を含む様々な機能を提供し得る。一実施形態において、キャリアアプリケーション118aは、AMS606とインタラクトし得て、キャリアに関連付けられた無線通信アイデンティティの特定のファームウェアを検索、インストール、変更、及び/又は、アクティブ化することで、モバイルデバイス102の動的変更を管理し得る。キャリアアプリケーション118aなどの様々なアプリケーションはまた、メッセージ及びデータパケットを、UE400、及び/又は、図1A及び1BのダイナミックSIM130との間で送信/受信するとき、特定のアプリケーションフレームワーク(例えば、図7Aに示されている624)とインタラクトし得る。
図7BはDSP502によって実装され得る代替的ソフトウェア環境620を示す。DSP502はオペレーティングシステムカーネル(OSカーネル)628及び実行ランタイム630を実行する。DSP502は、実行ランタイム630において実行され得て、かつ、アプリケーションフレームワーク624によって提供される複数のサービスを使用し得るアプリケーション622(例えば、図1Aに示されているデバイスアプリケーション112)を実行する。アプリケーション622及びアプリケーションフレームワーク624はライブラリ626によって提供される機能を使用し得る。一実施形態において、アプリケーション622のうち少なくとも1つは、キャリアに関連付けられた特定の無線通信アイデンティティに従ってモバイル通信デバイスを少なくともブランディングするファームウェアの動的変更及びインストールを促進するキャリアアプリケーション118aであり得る。
図8は、本明細書において開示される1又は複数の実施形態(これらに限定されないが、150、162、172、180など)を実装するのに適したコンピュータシステム380を示す。コンピュータシステム380は、二次記憶装置384、リードオンリメモリ(ROM)386、ランダムアクセスメモリ(RAM)388を含むメモリデバイス、入出力(I/O)デバイス390、及びネットワーク接続性デバイス392と通信接続され、通信する、(中央処理ユニット若しくはCPUと称され得る)プロセッサ382を含む。プロセッサ382は、1又は複数のCPUチップとして実装されてよい。コンピュータシステム380は、ネットワークと(例えば、RANを介してコアネットワークと)通信し得て、コンピュータシステムは、コアネットワークを通して、インターネットなどの外部ネットワークと接続され得る。当然、コンピュータシステム380では、ネットワーク(例えば、コアネットワーク、RAN、LAN,及び/又は、インターネット)へ接続する、有線アクセスネットワーク、(例えば、IEEE802.11などに基づく)WiFi(登録商標)ネットワークなど、他のメカニズムも可能である。コンピュータシステム380は、本明細書に記載されている、いくつかの種類のデバイスのいずれかによって具現化され得る。
コンピュータシステム380上に複数の実行可能命令をプログラム及び/又はロードすることによって、CPU382、RAM388、及びROM386のうちの少なくとも1つが変更されて、本開示によって教示される新規な機能を有する特定の機械若しくは装置へとコンピュータシステム380を部分的に変換することが理解される。電気工学及びソフトウェア工学の技術においては基本的なことだが、実行可能なソフトウェアをコンピュータにロードすることによって実装され得る機能は、周知の設計ルールによるハードウェア実装に変換され得る。ソフトウェアにおけるコンセプトの実装とハードウェアにおけるそれとの間の決定は、通常、ソフトウェアドメインからハードウェアドメインへの変換に含まれるあらゆる問題よりむしろ、設計の安定性及び生成されるユニット数についての考察に依存する。一般的に、依然として頻繁に変更される設計は、ソフトウェアにおいて実装されることが好ましいであろう。なぜならハードウェア実装のリスピンは、ソフトウェア設計のリスピンより費用がかかるからである。一般的に、安定していて、大量生産される設計は、ハードウェアにおいて、例えば、特定用途向け集積回路(ASIC)において、実装されるのが好ましいであろう。なぜなら、大量生産運転を行う上では、ハードウェア実装はソフトウェア実装より費用がかからないからである。設計は、ソフトウェアの形態で開発され、試験されて、その後周知の設計ルールによって、ソフトウェアの複数の命令をハード配線する特定用途向け集積回路における同等なハードウェア実装に変換され得ることが多い。新たなASICによって制御される機械が特定の機械又は装置であるのと同様、複数の実行可能命令がプログラム及び/又はロードされたコンピュータは同様に、特定の機械又は装置とみなされ得る。
更に、システム380が起動、又は、ブートされた後、CPU382は、コンピュータプログラム又はアプリケーションを実行し得る。例えば、CPU382は、ROM386内に保存されている、又は、RAM388内に保存されているソフトウェア又はファームウェアを実行し得る。いくつかの場合において、ブート時、及び/又は、アプリケーションが起動されたとき、CPU382は、アプリケーション、又は、アプリケーションの一部を、二次記憶装置384からRAM388、又は、CPU382自体のメモリ空間へコピーし得て、CPU382は次に、アプリケーションに含まれる命令を実行し得る。いくつか場合において、CPU382は、アプリケーション、又は、アプリケーションの一部を、ネットワーク接続性デバイス392又はI/Oデバイス390を介してアクセスされるメモリから、RAM388、又は、CPU382自体のメモリ空間へコピーし得て、CPU382は次に、アプリケーションに含まれる命令を実行し得る。アプリケーションは、実行中、命令をCPU382内にロードし得て、例えば、アプリケーションの命令のいくつかをCPU382のキャッシュへロードする。いくつかの状況において、実行されるアプリケーションは、何かを実行するようCPU382を構成すると言ってよく、例えば、対象のアプリケーションによって促進される1つ又は複数の機能を実行するようにCPU382を構成する。CPU382がアプリケーションによってこのように構成されているとき、CPU382は、特定目的コンピュータ、又は、特定目的マシンとなる。
二次記憶装置384は通常1又は複数のディスクドライブ又はテープドライブを含み、データを不揮発的に保存するために、かつRAM388が全てのワーキングデータを保持するのに十分な大きさでない場合はオーバーフローデータストレージデバイスとして使用される。二次記憶装置384は複数のプログラムを保存すべく使用され得る。複数のプログラムは、そのような複数のプログラムが実行されるべく選択されるときにRAM388にロードされる。ROM386は、プログラム実行の間に読み出される複数の命令及びおそらくはデータを保存すべく使用される。ROM386は、通常、二次記憶装置384のより大きなメモリ容量に対して小さなメモリ容量を有する不揮発性メモリデバイスである。RAM388は揮発性データを保存すべく、かつおそらくは複数の命令を保存すべく使用される。ROM386及びRAM388の両方へのアクセスは、通常、二次記憶装置384へのアクセスより速い。二次記憶装置384、RAM388、及び/又はROM386は、いくつかの状況においては、コンピュータ可読記憶媒体及び/又は非一時的コンピュータ可読媒体と称され得る。
I/Oデバイス390は、プリンタ、ビデオモニタ、液晶ディスプレイ(LCD)、タッチスクリーンディスプレイ、キーボード、キーパッド、スイッチ、ダイアル、マウス、トラックボール、音声認識装置、カードリーダ、紙テープリーダ又は他の良く知られた入力デバイスを含んでよい。
ネットワーク接続性デバイス392は、モデム、モデムバンク、Ethernet(登録商標)カード、ユニバーサルシリアルバス(USB)インターフェースカード、シリアルインターフェース、トークンリングカード、ファイバ分散データインターフェース(FDDI)カード、無線ローカルエリアネットワーク(WLAN)カード、並びに、例えば、符号分割多重アクセス(CDMA)、移動通信用グローバルシステム(GSM(登録商標))、ロングタームエボリューション(LTE)、マイクロ波アクセスのための世界的な相互運用性(WiMAX(登録商標))、近距離無線通信(NFC)、無線周波数識別(RFID)、及び/又は他の無線インターフェースプロトコルなどのプロトコルを使用する無線通信を促進する無線トランシーバカード、並びに、他の周知のネットワークデバイスの形態をとり得る。これらのネットワーク接続性デバイス392は、プロセッサ382がインターネット若しくは1又は複数のイントラネットと通信できるようにし得る。そのようなネットワーク接続で、プロセッサ382が、上述された方法の複数の段階を実行する過程でネットワークから情報を受信し得るか、又はネットワークに情報を出力し得ることが予期される。プロセッサ382を使用して実行されるべき命令のシーケンスとして表されることの多いそのような情報は、例えば、搬送波において具現化されるコンピュータデータ信号の形でネットワークから受信され、かつネットワークに出力され得る。
例えばプロセッサ382を使用して実行されるべきデータ若しくは複数の命令を含み得るそのような情報は、例えば、コンピュータデータベースバンド信号、又は搬送波において具現化される信号の形でネットワークから受信され、かつネットワークに出力され得る。現在使用されているか又は今後開発されるベースバンド信号若しくは搬送波に埋め込まれる信号、又は他の複数のタイプの信号は、当業者には周知のいくつかの方法に従って生成され得る。当該ベースバンド信号及び/又は搬送波に埋め込まれる信号は、いくつかの状況においては一時的な信号と称され得る。
プロセッサ382は、それがハードディスク、フロッピー(登録商標)ディスク、光ディスク(これらの様々なディスクベースのシステムは全て二次記憶装置384と見なされ得る)、フラッシュドライブ、ROM386、RAM388、又はネットワーク接続性デバイス392からアクセスする複数の命令、複数のコード、複数のコンピュータプログラム、複数のスクリプトを実行する。ただ1つのプロセッサ382が示されているが、複数のプロセッサが存在してよい。従って、複数の命令が一プロセッサによって実行されると述べられてもよいが、それらの命令は、1又は複数のプロセッサによって、同時に、連続して、又は、別の手段で、実行され得る。例えば、ハードドライブ、フロッピー(登録商標)ディスク、光ディスク、及び/又は他のデバイスなどの二次記憶装置384、ROM386、及び/又はRAM388からアクセスされ得る複数の命令、複数のコード、複数のコンピュータプログラム、複数のスクリプト、及び/又はデータは、いくつかの状況においては非一時的な命令及び/又は非一時的な情報と称され得る。
一実施形態において、コンピュータシステム380は、互いに通信し合う2又はそれより多くのコンピュータを備えて連携してタスクを実行し得る。例えば、アプリケーションは、アプリケーションの複数の命令の同時及び/又は並列処理を可能にするように区画化され得るが、それに限定するものではない。代替的に、アプリケーションによって処理されるデータは、2又はそれより多くのコンピュータ及び/又はCPUによる、データセットの複数の異なる部分の同時及び/又は並列処理を可能にするように区画化され得る。一実施形態において、コンピュータシステム380内の複数のコンピュータに直接バインドしていないいくつかのサーバの機能性を提供するために、仮想化ソフトウェアがコンピュータシステム380によって使用されてよい。例えば、仮想化ソフトウェアは4台の物理的なコンピュータ上に20台の仮想サーバを提供し得る。一実施形態においては、上記の開示された機能は、クラウドコンピューティング環境において1つのアプリケーション及び/又は複数のアプリケーションを実行することによって提供され得る。クラウドコンピューティングは、動的にスケーラブルな複数のコンピューティングリソースを使用して、ネットワーク接続を介して複数のコンピューティングサービスを提供することを含み得る。クラウドコンピューティングは、少なくとも部分的に仮想化ソフトウェアによってサポートされ得る。クラウドコンピューティング環境は企業によって確立され得る、及び/又は、サードパーティのプロバイダから必要に応じ採用され得る。いくつかのクラウドコンピューティング環境は、企業(例えばサービスプロバイダ)によって所有され運営される複数のクラウドコンピューティングリソース、並びに、サードパーティのプロバイダから採用され、及び/又はリースされる複数のクラウドコンピューティングリソースを備え得る。
一実施形態においては、上記の開示された機能のうちのいくつか又は全ては、コンピュータプログラムプロダクトとして提供され得る。当該コンピュータプログラムプロダクトは、コンピュータ利用可能プログラムコードが具現化される1又は複数のコンピュータ可読記憶媒体を含み、上記に開示される機能を実装し得る。当該コンピュータプログラムプロダクトは、複数のデータ構造、複数の実行可能命令、及び他のコンピュータ利用可能プログラムコードを含み得る。当該コンピュータプログラムプロダクトは、リムーバブルコンピュータ記憶媒体、及び/又は非リムーバブルコンピュータ記憶媒体に具現化され得る。リムーバブルコンピュータ可読記憶媒体は、例えばアナログ磁気テープ、コンパクトディスクリードオンリメモリ(CD−ROM)ディスク、フロッピー(登録商標)ディスク、ジャンプドライブ、デジタルカード、マルチメディアカードなどといった、紙テープ、磁気テープ、磁気ディスク、光ディスク、ソリッドステートメモリチップを含み得るが、これらに限定されない。当該コンピュータプログラムプロダクトは、コンピュータシステム380の二次記憶装置384に、ROM386に、RAM388に、及び/又は他の不揮発性メモリ及び揮発性メモリに、コンピュータプログラムプロダクトのコンテンツの少なくとも複数の部分を、コンピュータシステム380がロードするのに適していてよい。プロセッサ382は、部分的には、コンピュータプログラムプロダクトに直接アクセスすることによって、例えば、コンピュータシステム380のディスクドライブ周辺機器の中に挿入されたCD−ROMディスクから読み出すことによって、複数の実行可能命令及び/又は複数のデータ構造を処理し得る。代替的に、プロセッサ382は、コンピュータプログラムプロダクトに遠隔アクセスすることによって、例えば、ネットワーク接続性デバイス392を通してリモートサーバから複数の実行可能命令及び/又は複数のデータ構造をダウンロードすることによって、複数の実行可能命令及び/又は複数のデータ構造を処理し得る。当該コンピュータプログラムプロダクトは、コンピュータシステム380の二次記憶装置384に、ROM386に、RAM388に、及び/又は、他の不揮発性メモリ及び揮発性メモリに、データ、複数のデータ構造、複数のファイル、及び/又は複数の実行可能命令をロード及び/又はコピーすることを促進する複数の命令を備え得る。
いくつかの状況において、二次記憶装置384、ROM386、及びRAM388は非一時的コンピュータ可読媒体又はコンピュータ可読記憶媒体と称され得る。RAM388のダイナミックRAMの実施形態は、ダイナミックRAMが電力を受け取り、その設計に従って動作させられる間、例えば、コンピュータシステム380が起動され、動作可能である期間、ダイナミックRAMはそれに書き込まれる情報を保存すると言う点で、同様に非一時的コンピュータ可読媒体と称され得る。同様に、プロセッサ382は、内部RAM、内部ROM、キャッシュメモリ、及び/又は、いくつかの状況において、非一時的コンピュータ可読媒体又はコンピュータ可読記憶媒体と称され得る他の内部の非一時的記憶ブロック、セクション又はコンポーネントを含んでよい。
いくつかの実施形態が本開示において提供されてきたが、開示された複数のシステム及び方法は本開示の主旨又は範囲を逸脱することなく、他の多数の特定の形態で具現化され得ることが理解されるべきである。複数の本実施例は例示的なものであって限定的なものではないと見なされるべきであり、その意図は、本明細書において与えられた詳細に限定されるものではない。例えば、様々な要素若しくはコンポーネントは、別のシステムにおいて組み合わされるか、又は統合され得、あるいは、複数の特定の特徴は省略されるか、又は実装され得ない。
また、様々な実施形態において、分離した、若しくは別個のものとして記載され示される複数の技術、複数のシステム、複数のサブシステム、及び複数の方法は、本開示の範囲を逸脱することなく、他の複数のシステム、複数のモジュール、複数の技術、又は複数の方法と組み合わされるか、又は統合され得る。直接接続される、又は互いに通信すると示されるか、又は述べられる他の複数のアイテムは、何らかのインターフェース、デバイス、又は中間コンポーネントを通して、電気的にか機械的にか、又は別の手段によってかは問わず、間接的に接続されるか、又は通信し得る。他の、変更、置換、及び修正の複数の例は、当業者によって確認され、それらは本明細書において開示される主旨及び範囲から逸脱することなく成され得る。