(57)【要約】【課題】同一の識別情報を持つ複数のアプリケーションを記憶することができる電子情報記憶媒体等を提供することを目的とする。【解決手段】処理部と記憶部を備える電子情報記憶媒体において、記憶部に、ＯＳと、マスターアプリケーションと、複数の管理アプリケーションを記憶するとともに、管理アプリケーションの配下に一又は複数のその他アプリケーションを記憶し、且つ、一の管理アプリケーションの配下に同一の識別情報を持つ前記その他アプリケーションを記憶せず、ＯＳを実行する処理部は、指定された識別情報を持つその他アプリケーションを選択する場合に、マスターアプリケーションを実行する処理部が有効とした一の管理アプリケーションの配下にあるその他アプリケーションの中から選択するなどする。【選択図】図８
2018132818.tif 000002
【特許請求の範囲】
【請求項１】
処理部と記憶部を備える電子情報記憶媒体であって、
前記記憶部は、ＯＳと、マスターアプリケーションと、複数の管理アプリケーションを記憶するとともに、前記管理アプリケーションの配下に一又は複数のその他アプリケーションを記憶し、且つ、一の前記管理アプリケーションの配下に同一の識別情報を持つ前記その他アプリケーションを記憶せず、
前記ＯＳを実行する前記処理部は、指定された識別情報を持つ前記その他アプリケーションを選択する場合に、前記マスターアプリケーションを実行する前記処理部が有効とした一の前記管理アプリケーションの配下にあるその他アプリケーションの中から選択するか、又は、前記マスターアプリケーションを実行する前記処理部が設定した前記管理アプリケーションの順で、当該管理アプリケーションの配下に記憶されているその他アプリケーションを検索して、最初に見つかったその他アプリケーションを選択することを特徴とする電子情報記憶媒体。
【請求項２】
請求項１に記載の電子情報記憶媒体であって、
前記ＯＳを実行する前記処理部は、新たに前記その他アプリケーションを前記記憶部に記憶させる場合に、新たに記憶させる当該その他アプリケーションの識別情報と同一の識別情報を持つ前記その他アプリケーションが配下に記憶されていない前記管理アプリケーションの配下に記憶させることを特徴とする電子情報記憶媒体。
【請求項３】
請求項１又は２に記載の電子情報記憶媒体を備えるＩＣカード。
【請求項４】
処理部と記憶部を備え、前記記憶部は、ＯＳと、マスターアプリケーションと、複数の管理アプリケーションを記憶するとともに、前記管理アプリケーションの配下に一又は複数のその他アプリケーションを記憶し、且つ、一の前記管理アプリケーションの配下に同一の識別情報を持つ前記その他アプリケーションを記憶しない電子情報記憶媒体における前記処理部によるアプリケーション選択方法であって、
前記ＯＳを実行する前記処理部が、指定された識別情報を持つ前記その他アプリケーションを選択する場合に、前記マスターアプリケーションを実行する前記処理部が有効とした一の前記管理アプリケーションの配下にあるその他アプリケーションの中から選択するか、又は、前記マスターアプリケーションを実行する前記処理部が設定した前記管理アプリケーションの順で、当該管理アプリケーションの配下に記憶されているその他アプリケーションを検索して、最初に見つかったその他アプリケーションを選択する工程、
を含むことを特徴とするアプリケーション選択方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ＩＣチップ等の電子情報記憶媒体の技術分野に関する。
【背景技術】
【０００２】
ＩＣチップを搭載したＩＣカードの一種としてＵＩＭ（User Identity Module）カードがある。ＵＩＭカードを携帯電話やスマートフォン等の携帯端末に挿入することにより携帯端末における通信を可能とする。ＵＩＭカードには、通信事業者の通信用アプリケーション（電話用アプリケーション）及び契約者情報ファイルが保持されるが、これまでは、通信事業者がＵＩＭカードを発行する運用形態であったため、一のＵＩＭカードには当該通信事業者の通信用アプリケーションと契約者情報ファイルが一組だけ記憶されていた。
【０００３】
そうした中、近年では、一のＵＩＭカードに複数組分の通信用アプリケーションと契約者情報ファイルを記憶して運用する形態が検討されている。この運用が始まると、ＵＩＭカードを携帯端末に挿入することにより、一の携帯端末において複数の通信事業者のサービスを切り替えて利用することができる。具体的には、Ａ社とＢ社の通信用アプリケーションと契約者情報ファイルをＵＩＭカードに記憶させておくことで、携帯端末のユーザは通信用アプリケーションを切り替えることにより、Ａ社のサービスもＢ社のサービスも利用することができる。
【０００４】
上記運用では、携帯端末が通信用アプリケーションと契約者情報ファイルを通信事業者のサーバからＯＴＡ（Over the Air）でダウンロードすることも想定される。例えば、Ａ社の通信サービスを利用してＢ社の通信用アプリケーションと契約者情報ファイルをＢ社のサーバからダウンロードすることが想定される。この場合、Ａ社及びＢ社の通信用アプリケーション及び契約者情報ファイルがＵＩＭカード内で併存可能とする必要がある。
【０００５】
一方で、特許文献１に記載された、インターネットを利用したＩＣカードへのアプリケーションの追加方法を利用することで、一つのＩＣカードに複数のJavaCardアプリケーションをインストールすることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許４７４３３７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来のＩＣカードではアプリケーションを特定するために同一のＡＩＤ（Application Identifier）といった識別情報を持つアプリケーションを重複して記憶することはできない。一方で、従来、一のＵＩＭに対して一の通信アプリケーション（電話アプリケーション）という運用を行っているため、通信アプリケーションには通信事業者が異なっていても同一のＡＩＤ（識別情報）が設定されている。そのため、一のＵＩＭカード内に、複数の通信事業者の通信アプリケーションと契約者情報ファイルを併存させることができないという問題がある。
【０００８】
そこで、本発明は上記問題に鑑み、同一の識別情報を持つ複数のアプリケーションを記憶することができる電子情報記憶媒体等を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、請求項１に記載の発明は、処理部と記憶部を備える電子情報記憶媒体であって、前記記憶部は、ＯＳと、マスターアプリケーションと、複数の管理アプリケーションを記憶するとともに、前記管理アプリケーションの配下に一又は複数のその他アプリケーションを記憶し、且つ、一の前記管理アプリケーションの配下に同一の識別情報を持つ前記その他アプリケーションを記憶せず、前記ＯＳを実行する前記処理部は、指定された識別情報を持つ前記その他アプリケーションを選択する場合に、前記マスターアプリケーションを実行する前記処理部が有効とした一の前記管理アプリケーションの配下にあるその他アプリケーションの中から選択するか、又は、前記マスターアプリケーションを実行する前記処理部が設定した前記管理アプリケーションの順で、当該管理アプリケーションの配下に記憶されているその他アプリケーションを検索して、最初に見つかったその他アプリケーションを選択することを特徴とする。
【００１０】
請求項２に記載の発明は、請求項１に記載の電子情報記憶媒体であって、前記ＯＳを実行する前記処理部は、新たに前記その他アプリケーションを前記記憶部に記憶させる場合に、新たに記憶させる当該その他アプリケーションの識別情報と同一の識別情報を持つ前記その他アプリケーションが配下に記憶されていない前記管理アプリケーションの配下に記憶させることを特徴とする。
【００１１】
請求項３に記載の発明は、請求項１又は２に記載の電子情報記憶媒体を備えるＩＣカードである。
【００１２】
請求項４に記載の発明は、処理部と記憶部を備え、前記記憶部は、ＯＳと、マスターアプリケーションと、複数の管理アプリケーションを記憶するとともに、前記管理アプリケーションの配下に一又は複数のその他アプリケーションを記憶し、且つ、一の前記管理アプリケーションの配下に同一の識別情報を持つ前記その他アプリケーションを記憶しない電子情報記憶媒体における前記処理部によるアプリケーション選択方法であって、前記ＯＳを実行する前記処理部が、指定された識別情報を持つ前記その他アプリケーションを選択する場合に、前記マスターアプリケーションを実行する前記処理部が有効とした一の前記管理アプリケーションの配下にあるその他アプリケーションの中から選択するか、又は、前記マスターアプリケーションを実行する前記処理部が設定した前記管理アプリケーションの順で、当該管理アプリケーションの配下に記憶されているその他アプリケーションを検索して、最初に見つかったその他アプリケーションを選択する工程、を含むことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、一の管理アプリケーションの配下に同一の識別情報を持つその他アプリケーションは記憶することができないが、別の管理アプリケーションの配下に同一の識別情報を持つその他アプリケーションを記憶することができ、ＯＳが指定された識別情報を持つその他アプリケーションを選択する場合には、マスターアプリケーションにより有効とされた管理アプリケーションの配下にあるその他アプリケーションを選択するか、又は、マスターアプリケーションにより設定された管理アプリケーションの順で、当該管理アプリケーションの配下にあるその他アプリケーションを検索して、最初に見つかったその他アプリケーションを選択することができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係る携帯端末１の概要構成例を示すブロック図である。
【図２】本実施形態に係るＵＩＭカード１８に搭載されるＩＣチップＣの概要構成例を示すブロック図である。
【図３】本実施形態に係るフラッシュメモリ１８３に記憶されるアプリケーションの階層図の一例である。
【図４】本実施形態に係るフラッシュメモリ１８３上に設けられる管理アプリケーションテーブル３００の概要構成例を示す図である。
【図５】（Ａ）は、本実施形態に係るフラッシュメモリ１８３上に設けられる管理テーブル３１０Ａの概要構成例を示す図であり、（Ｂ）は、本実施形態に係るフラッシュメモリ１８３上に設けられる管理テーブル３１０Ｂの概要構成例を示す図であり、（Ｃ）は、本実施形態に係るフラッシュメモリ１８３上に設けられる管理テーブル３１０Ｃの概要構成例を示す図である。
【図６】本実施形態に係るインストール時処理を示すフローチャートの一例である。
【図７】本実施形態に係る有効・無効切替処理を示すフローチャートの一例である。
【図８】本実施形態に係る選択処理を示すフローチャートの一例である。
【図９】変形例１に係るフラッシュメモリ１８３上に設けられる管理アプリケーションテーブル３０１の概要構成例を示す図である。
【図１０】変形例１に係る優先順位切替処理を示すフローチャートの一例である。
【図１１】変形例１に係る選択処理を示すフローチャートの一例である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、携帯端末に備えられたＵＩＭカードに搭載されるＩＣチップに対して本発明を適用した場合の実施の形態である。
【００１６】
まず、図１等を参照して、本実施形態に係る携帯端末１の構成及び機能概要を説明する。
【００１７】
［１．携帯端末１の構成］
図１は、本実施形態に係る携帯端末１の概要構成例を示すブロック図である。図１に示すように、携帯端末１は、制御部１１、記憶部１２、無線通信部１３、表示部１４、入力部１５、ＣＬＦインターフェース１６ａ、ＩＣカードインターフェース１６ｂ、及びＣＬＦ１９等を備えて構成され、これらの構成要素はバス１７を介して相互に接続される。なお、携帯端末１は、例えば携帯電話機やスマートフォン、タブレット端末等である。
【００１８】
制御部１１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、及びＲＡＭ（Random Access Memory）等により構成される。記憶部１２は、例えばフラッシュメモリ等の不揮発性メモリにより構成される。上記ＲＯＭまたは記憶部１２には、ＯＳ（Operating System）及びミドルウェアが記憶される。また、記憶部１２には、携帯端末１にインストールされたＡＰＩ（Application Program Interface）及びＷｅｂブラウザを含むアプリケーションソフトウェア（アプリケーションプログラム言語から構成されるソフトウェア）等が記憶される。ＡＰＩは、アプリケーションソフトウェアからオペレーティングシステムの機能を利用するためのインターフェースである。アプリケーションソフトウェアは、例えば所定のサーバからダウンロード可能なプログラムである。
【００１９】
無線通信部１３は、アンテナを有し、移動体通信網における基地局との間で行われる無線通信を制御する。表示部１４は、例えばタッチパネル方式の表示パネルを有し、表示パネルへの表示制御、及びユーザからの操作指示の受け付けを行う。入力部１５は、ユーザからの操作指示を入力するための操作ボタンを有し、操作ボタンに応じた信号を制御部１１に出力する。ＣＬＦインターフェースは、制御部１１とＣＬＦ１９との間のインターフェースを担い、ＩＣカードインターフェース１６ｂは、制御部１１とＵＩＭカード１８との間のインターフェースを担う。
【００２０】
ＵＩＭカード１８は、ＵＩＣＣ（Universal Integrated Circuit Card）の一つであり、例えば、従来のＳＩＭ（Subscriber Identity Module）をベースに機能を拡張された接触型ＩＣチップを搭載する。
【００２１】
ＣＬＦ１９は、ＮＦＣの規格で規定される非接触通信を行う非接触型ＩＣチップであり、非接触通信のフィールド内で読取装置（図示せず）との間で各種信号の送受信を行うためのアンテナに接続されている。そして、ユーザが携帯端末１を読取装置に翳すと、読取装置から送信されたコマンドを、インターフェイス（図示せず）を介してＵＩＭカード１８へ送信し、ＵＩＭカード１８から送信された、コマンドに対する応答を読取装置に返すようになっている。なお、ＣＬＦ１９は、携帯端末１のＯＳにより操作可能になっている。
【００２２】
［２．ＩＣチップＣの構成］
図２は、本実施形態に係るＵＩＭカード１８に搭載されるＩＣチップＣの概要構成例を示すブロック図である。図２に示すように、ＩＣチップＣは、ＣＰＵ１８１（「処理部」の一例）、ＲＡＭ１８２、フラッシュメモリ１８３、及びＩ／Ｏ回路１８４等を備え、これらの構成要素はバス１８５を介して相互に接続される。
【００２３】
ＲＡＭ１８２には、例えばＯＳ、ミドルウェア、各種アプリケーションが機能するうえで一時的に必要となるデータが記憶される。
【００２４】
フラッシュメモリ１８３は、例えばＮＯＲ型フラッシュメモリであって、ＯＳ、ミドルウェア及びアプリケーション等を記憶する。
【００２５】
図３は、本実施形態に係るフラッシュメモリ１８３にインストールされるアプリケーションの構成例を示す図である。図３に示すように、本実施形態では、マスターアプリケーションの配下にＡＩＤ管理アプリケーションが存在する（図３は、ＡＩＤ管理アプリケーション１−３がインストールされている例を示している）。そして、各ＡＩＤ管理アプリケーションの配下には、通信用アプリケーション等のその他アプリケーションが存在する。すなわち、本実施形態では、マスターアプリケーション−ＡＩＤ管理アプリケーション−その他アプリケーションの３階層を含む構成となっている。
【００２６】
図４は、フラッシュメモリ１８３に記録される管理アプリケーションテーブル３００の一例を示す図である。管理アプリケーションテーブル３００には、ＡＩＤ、有効フラグ及び管理テーブルのアドレスが対応付けて記録される。ＡＩＤは、ＩＣチップＣにインストールされているマスターアプリケーション及びＡＩＤ管理アプリケーションのＡＩＤが記録される。有効フラグは、各ＡＩＤ管理アプリケーションが有効又は無効であるかを示す情報が記録される。管理テーブルのアドレスは、各ＡＩＤ管理アプリケーションが管理する管理テーブルの記憶位置を示す。ＯＳは、このアドレスを参照して、各管理テーブルにアクセスすることができる。
【００２７】
なお、本実施形態では、ＩＣチップＣにインストールされている複数のＡＩＤ管理アプリケーションの中で有効フラグが有効になるＡＩＤ管理アプリケーションは一つだけであり、それ以外のＡＩＤ管理アプリケーションは無効となる。また、有効と無効（すなわち、有効フラグ）を切り替えは、携帯端末１のユーザからの指示や、携帯端末１とネットワークを介して接続されるサーバ装置からの指示等に基づいて、マスターアプリケーションが行う。
【００２８】
図５（Ａ）は、ＡＩＤ管理アプリケーション１が管理する管理テーブル３１０Ａの一例を示す図であり、図５（Ｂ）は、ＡＩＤ管理アプリケーション２が管理する管理テーブル３１０Ｂの一例を示す図であり、図５（Ｃ）は、ＡＩＤ管理アプリケーション３が管理する管理テーブル３１０の一例を示す図である（管理テーブル３１０Ａ〜３１０Ｃを総称して「管理テーブル３１０」という場合がある）。管理テーブル３１０には、当該管理テーブル３１０を管理するＡＩＤ管理アプリケーションの配下にインストールされたアプリケーションのＡＩＤ及び当該アプリケーションのアドレスが記録される。アプリケーションのアドレスは、アプリケーション本体が記憶されている位置を示す。ＯＳは、このアドレスを参照して、アプリケーション本体にアクセスすることができる。
【００２９】
また、各管理テーブル３１０において、同一のＡＩＤを記録することは禁止される。すなわち、一のＡＩＤ管理アプリケーションの配下に同一のＡＩＤを持つアプリケーションをインストールすることが禁止されている。但し、管理テーブル３１０が異なれば、同一のＡＩＤを記録することは許可されている。つまり、管理テーブル３１０Ａに同一のＡＩＤを記録することができないが、例えば、管理テーブル３１０ＡにＡＩＤ「８８１３３」を記録し、管理テーブル３１０ＢにＡＩＤ「８８１３３」を記録し、管理テーブル３１０ＣにＡＩＤ「８８１３３」を記録することは許容される。すなわち、図５において、アプリケーションＢ、アプリケーションＦ及びアプリケーションＩは同一のＡＩＤを持つが、それぞれ上位のＡＩＤ管理アプリケーションが異なることから、同時にインストールすることが許容される。
【００３０】
Ｉ／Ｏ回路１８４は、ＩＳＯ７８１６等によって定められた、Ｃ１〜Ｃ８の８個の接続端子を有する。ここで、Ｃ１端子は電源端子（ＶＣＣ）であり、Ｃ５端子はグランド端子（ＧＮＤ）である。また、Ｃ２端子は、リセット端子（ＲＳＴ）であり、Ｃ３端子は、クロック端子（ＣＬＫ）である。また、Ｃ７端子は、ＣＰＵ１８１と制御部１１との間の通信のために用いられる。また、Ｃ６端子は、ＣＰＵ１８１とＣＬＦ１９との間の通信のために用いられる。なお、ＣＰＵ１８１とＣＬＦ１９間の通信プロトコルには、ＳＷＰ（Single Wire Protocol）が適用される。
【００３１】
ＣＰＵ１８１は、ＣＬＦ１９からコマンドを受信すると、当該コマンドに応じたコマンド処理を実行し、コマンドに対する応答をＣＬＦ１９に対して行う。また、ＣＰＵ１８１は、制御部１１からコマンドを受信すると、当該コマンドに応じたコマンド処理を実行し、コマンドに対する応答を制御部１１に対して行う。
【００３２】
なお、本実施形態では、ＵＩＭカード１８（ＩＣチップＣ）内に、同一のＡＩＤを持つ複数のアプリケーションを記録するために、ＣＰＵ１８１はＩＮＳＴＡＬＬコマンド、有効アプリ切替コマンド、ＳＥＬＥＣＴコマンドを受信した場合に特徴的な処理を行うので以下、図６−図８を用いて説明する。
【００３３】
［３．ＣＰＵ１８１の動作］
［３．１．インストール時処理］
まず、図６を用いてＩＮＳＴＡＬＬコマンドを受信した場合に実行されるインストール時処理について説明する。図６は、インストール時処理を示すフローチャートの一例である。
【００３４】
図６に示すように、ＯＳ（を実行するＣＰＵ１８１）は、制御部１１等の外部からＩＮＳＴＡＬＬコマンドを受け付ける（ステップＳ１０１）。ＩＮＳＴＡＬＬコマンドには、例えば、インストールされるアプリケーションのＡＩＤ、インストールされるアプリケーションを管理するＡＩＤ管理アプリケーションのＡＩＤ、インストールされるアプリケーションのプログラムサイズ等を示す情報が含まれる。
【００３５】
次に、ＯＳ（を実行するＣＰＵ１８１）は、管理アプリケーションテーブル３００を参照し、インストールされるアプリケーションを管理するＡＩＤ管理アプリケーションが存在するか否かを判定する（ステップＳ１０２）。具体的には、ＩＮＳＴＡＬＬコマンドに含まれているインストールされるアプリケーションを管理するＡＩＤ管理アプリケーションのＡＩＤが管理アプリケーションテーブル３００に記録されているか否かを判定する。
【００３６】
ＯＳ（を実行するＣＰＵ１８１）は、インストールされるアプリケーションを管理するＡＩＤ管理アプリケーションが存在しないと判定した場合には（ステップＳ１０２：ＮＯ）、ＩＮＳＴＡＬＬコマンドの送信元に返すレスポンスＮＧを出力し（ステップＳ１０７）、インストール時処理を終了する。
【００３７】
一方、ＯＳ（を実行するＣＰＵ１８１）は、インストールされるアプリケーションを管理するＡＩＤ管理アプリケーションが存在すると判定した場合には（ステップＳ１０２：ＹＥＳ）、当該ＡＩＤ管理アプリケーションが管理する管理テーブル３１０を選択する（ステップＳ１０３）。
【００３８】
次に、ＯＳ（を実行するＣＰＵ１８１）は、ステップＳ１０３の処理で選択した管理テーブル３１０に、同一のＡＩＤが登録されているか否かを判定する（ステップＳ１０４）。具体的には、ＩＮＳＴＡＬＬコマンドに含まれているインストールされるアプリケーションのＡＩＤが管理テーブル３１０に記録されているか否かを判定する。
【００３９】
ＯＳ（を実行するＣＰＵ１８１）は、管理テーブル３１０に、同一のＡＩＤが登録されていると判定した場合には（ステップＳ１０４：ＹＥＳ）、ＩＮＳＴＡＬＬコマンドの送信元に返すレスポンスＮＧを出力し（ステップＳ１０７）、インストール時処理を終了する。
【００４０】
一方、ＯＳ（を実行するＣＰＵ１８１）は、管理テーブル３１０に、同一のＡＩＤが登録されていないと判定した場合には（ステップＳ１０４：ＮＯ）、ステップＳ１０３の処理で選択した管理テーブル３１０に、ＩＮＳＴＡＬＬコマンドに含まれているインストールされるアプリケーションのＡＩＤを記録し（ステップＳ１０５）、ＩＮＳＴＡＬＬコマンドの送信元に返すレスポンスＯＫを出力し（ステップＳ１０６）、インストール時処理を終了する。なお、レスポンスＯＫがＩＮＳＴＡＬＬコマンドの送信元に送信されると、当該ＩＮＳＴＡＬＬコマンドの送信元とＩＣチップＣとの間で、アプリケーションプログラム本体のダウンロード及びインストールが開始される。
【００４１】
［３．２．有効・無効切替処理］
次に、図７を用いて有効アプリ切替コマンドを受信した場合に実行される有効・無効切替処理について説明する。図７は、有効・無効切替処理を示すフローチャートの一例である。
【００４２】
図７に示すように、マスターアプリケーション（を実行するＣＰＵ１８１）は、制御部１１等の外部から有効アプリ切替コマンドを受け付ける（ステップＳ１３１）。有効アプリ切替コマンドには、例えば、有効とするＡＩＤ管理アプリケーションのＡＩＤを示す情報等が含まれる。
【００４３】
次に、マスターアプリケーション（を実行するＣＰＵ１８１）は、管理アプリケーションテーブル３００の有効フラグを更新する（ステップＳ１３２）。具体的には、有効アプリ切替コマンドに含まれる、有効とするＡＩＤ管理アプリケーションのＡＩＤと対応付けて登録されている有効フラグを有効とし、他のＡＩＤ管理アプリケーションの有効フラグを無効とする。これにより、有効アプリ切替コマンドにて指定されたＡＩＤ管理アプリケーションのみが有効となり、他のＡＩＤ管理アプリケーションが無効となる。
【００４４】
次に、マスターアプリケーション（を実行するＣＰＵ１８１）は、有効アプリ切替コマンドの送信元に返すレスポンスＯＫを出力し（ステップＳ１３３）、有効・無効切替処理を終了する。
【００４５】
［３．３．選択処理］
次に、図８を用いてＳＥＬＥＣＴコマンドを受信した場合に実行される選択処理について説明する。図８は、選択処理を示すフローチャートの一例である。
【００４６】
図８に示すように、ＯＳ（を実行するＣＰＵ１８１）は、制御部１１等の外部からＳＥＬＥＣＴコマンドを受け付ける（ステップＳ１５１）。ＳＥＬＥＣＴコマンドには、例えば、選択するアプリケーションのＡＩＤを示す情報等が含まれる。
【００４７】
次に、ＯＳ（を実行するＣＰＵ１８１）は、管理アプリケーションテーブル３００の有効フラグを参照して、有効なＡＩＤ管理アプリケーションを特定する（ステップＳ１５２）。
【００４８】
次に、ＯＳ（を実行するＣＰＵ１８１）は、ステップＳ１５２の処理で特定したＡＩＤ管理アプリケーションが管理する管理テーブル３１０を参照して、ＳＥＬＥＣＴコマンドに含まれるＡＩＤを検索し（ステップＳ１５３）、ＳＥＬＥＣＴコマンドに含まれるＡＩＤが見つかったか否かを判定する（ステップＳ１５４）。
【００４９】
ＯＳ（を実行するＣＰＵ１８１）は、ＳＥＬＥＣＴコマンドに含まれるＡＩＤが見つからないと判定した場合には（ステップＳ１５４：ＮＯ）、ＳＥＬＥＣＴコマンドの送信元に返すレスポンスＮＧを出力し（ステップＳ１５７）、選択処理を終了する。
【００５０】
一方、ＯＳ（を実行するＣＰＵ１８１）は、ＳＥＬＥＣＴコマンドに含まれるＡＩＤが見つかったと判定した場合には（ステップＳ１５４：ＹＥＳ）、当該ＡＩＤで識別されるアプリケーションを選択し（ステップＳ１５５）、ＳＥＬＥＣＴコマンドの送信元に返すレスポンスＯＫを出力し（ステップＳ１５６）、選択処理を終了する。なお、レスポンスＯＫがＳＥＬＥＣＴコマンドの送信元に送信されると、当該ＳＥＬＥＣＴコマンドの送信元とＩＣチップＣとの間で処理が開始される。
【００５１】
以上のように、本実施形態のＩＣチップＣ（「電子情報記憶媒体」の一例）は、ＣＰＵ１８１（「処理部」の一例）とフラッシュメモリ１８３（「記憶部」の一例）を備え、フラッシュメモリ１８３は、ＯＳと、マスターアプリケーションと、複数のＡＩＤ管理アプリケーションを記憶するとともに、ＡＩＤ管理アプリケーション１〜３の配下に一又は複数のアプリケーションＡ〜Ｉ（「その他アプリケーション」の一例）を記憶し、且つ、一のＡＩＤ管理アプリケーションの配下に同一のＡＩＤ（「識別情報」の一例）を持つアプリケーションを記憶せず、ＯＳを実行するＣＰＵ１８１は、指定されたＡＩＤを持つアプリケーションを選択する場合に、マスターアプリケーションを実行するＣＰＵ１８１が有効とした一のＡＩＤ管理アプリケーションの配下にあるアプリケーションの中から選択する。
【００５２】
したがって、本実施形態のＩＣトップＣによれば、一のＡＩＤ管理アプリケーションの配下に同一のＡＩＤを持つアプリケーションは記憶されないが、別のＡＩＤ管理アプリケーションの配下に同一のＡＩＤを持つアプリケーションを記憶することができ、ＯＳが指定されたＡＩＤを持つアプリケーションを選択する場合には、マスターアプリケーションにより有効とされたＡＩＤ管理アプリケーションの配下にあるアプリケーションを選択するか、又は、マスターアプリケーションにより設定された管理アプリケーションの順で、当該管理アプリケーションの配下にあるその他アプリケーションを検索して、最初に見つかったその他アプリケーションを選択することができる。
【００５３】
また、本実施形態のＯＳを実行するＣＰＵ１８１は、新たにアプリケーションをフラッシュメモリ１８３に記憶させる場合に、新たに記憶させる当該アプリケーションのＡＩＤと同一のＡＩＤを持つアプリケーションが配下に記憶されていないＡＩＤ管理アプリケーションの配下に記憶させる。これにより、一のＡＩＤ管理アプリケーションの配下に同一のＡＩＤを持つ複数のアプリケーションがフラッシュメモリ１８３に記憶されることを防止できる。
【００５４】
なお、本実施形態では、ＩＣチップＣがカードに組み込まれて利用される場合（ＵＩＭカード１８の一部として携帯端末１において利用される場合）について説明したが、ＩＣチップＣは基板に直接ハンダ付けされてｅＵＩＣＣ（embedded Universal Integrated Circuit Card）として利用されることとしてもよい。
【００５５】
［４．変形例］
次に、上記実施形態の変形例について説明する。なお、以下に説明する変形例は適宜組み合わせることができる。
【００５６】
［４．１．変形例１］
上記実施形態では、ＯＳ（を実行するＣＰＵ１８１）は、管理アプリケーションテーブル３００の有効フラグを参照し、有効なＡＩＤ管理アプリケーションが管理する管理テーブル３１０を参照して、ＳＥＬＥＣＴコマンドにて指定されたＡＩＤに対応するアプリケーションがインストールされているか否かを判定することとした。つまり、ＯＳ（を実行するＣＰＵ１８１）は、ＳＥＬＥＣＴコマンドで指定されたＡＩＤが存在するか検索するに当たり、有効なＡＩＤ管理アプリケーションが管理する管理テーブル３１０のみを検索対象とした。これに対して、変形例１では、ＡＩＤ管理アプリケーション間で検索優先順位を設定し、検索優先順位の高いＡＩＤ管理アプリケーションが管理する管理テーブル３１０から順に検索していき、ＳＥＬＥＣＴコマンドで指定されたＡＩＤが見つかった時点で検索を終了する。つまり、変形例１では、ＳＥＬＥＣＴコマンドで指定されたＡＩＤが見つからない場合、全てのＡＩＤ管理アプリケーションが管理する管理テーブル３１０を検索する可能性がある。これにより、何れかの管理テーブル３１０にＳＥＬＥＣＴコマンドで指定されたＡＩＤが記録されている限り、レスポンスＯＫを返信することができる。
【００５７】
変形例１における管理アプリケーションテーブルについて説明する。図９は、フラッシュメモリ１８３に記録される管理アプリケーションテーブル３０１の一例を示す図である。管理アプリケーションテーブル３０１には、ＡＩＤ、検索優先順位及び管理テーブルのアドレスが対応付けて記録される。ＡＩＤ及びは管理テーブルのアドレスは、上記実施形態と同様のため説明を省略する。検索優先順位は、各ＡＩＤ管理アプリケーション間の検索優先順位を示す情報が記録される。なお、各ＡＩＤ管理アプリケーションで同一の検索優先順位が対応付けられることはなく、必ず異なる検索優先順位が設定される。
【００５８】
次に、変形例１における優先順位切替処理及び選択処理について説明する。なお、インストール時処理は、ＡＩＤを登録する管理アプリケーションテーブルが管理アプリケーションテーブル３００ではなく、管理アプリケーションテーブル３０１である点を除き同様であるので説明を省略する。
【００５９】
まず、図１０を用いて優先順位切替コマンドを受信した場合に実行される優先順位切替処理について説明する。図１０は、優先順位切替処理を示すフローチャートの一例である。
【００６０】
図１０に示すように、マスターアプリケーション（を実行するＣＰＵ１８１）は、制御部１１等の外部から優先順位切替コマンドを受け付ける（ステップＳ１７１）。優先順位切替コマンドには、例えば、ＩＣチップＣにインストールされている各ＡＩＤ管理アプリケーションに対応するＡＩＤ毎に、その優先順位を示す情報等が含まれる。
【００６１】
次に、マスターアプリケーション（を実行するＣＰＵ１８１）は、管理アプリケーションテーブル３０１の検索優先順位を更新する（ステップＳ１７２）。具体的には、優先順位切替コマンドに含まれる情報に基づいて、各ＡＩＤ管理アプリケーションのＡＩＤと対応付けて登録されている検索優先順位を更新する。
【００６２】
次に、マスターアプリケーション（を実行するＣＰＵ１８１）は、優先順位切替コマンドの送信元に返すレスポンスＯＫを出力し（ステップＳ１７３）、優先順位切替処理を終了する。
【００６３】
次に、図１１を用いてＳＥＬＥＣＴコマンドを受信した場合に実行される選択処理について説明する。図１１は、選択処理を示すフローチャートの一例である。
【００６４】
図１１に示すように、ＯＳ（を実行するＣＰＵ１８１）は、制御部１１等からＳＥＬＥＣＴコマンドを受け付ける（ステップＳ１９１）。ＳＥＬＥＣＴコマンドには、例えば、選択するアプリケーションのＡＩＤを示す情報等が含まれる。
【００６５】
次に、ＯＳ（を実行するＣＰＵ１８１）は、選択処理時にＲＡＭ１８２上に確保される変数であるＮに「１」を設定する（ステップＳ１９２）。
【００６６】
次に、ＯＳ（を実行するＣＰＵ１８１）は、管理アプリケーションテーブル３０１の検索優先順位がＮであるＡＩＤ管理アプリケーションを特定する（ステップＳ１９３）。
【００６７】
次に、ＯＳ（を実行するＣＰＵ１８１）は、ステップＳ１９３の処理で特定したＡＩＤ管理アプリケーションが管理する管理テーブル３１０を参照して、ＳＥＬＥＣＴコマンドに含まれるＡＩＤを検索し（ステップＳ１９４）、ＳＥＬＥＣＴコマンドに含まれるＡＩＤが見つかったか否かを判定する（ステップＳ１９５）。
【００６８】
ＯＳ（を実行するＣＰＵ１８１）は、ＳＥＬＥＣＴコマンドに含まれるＡＩＤが見つかったと判定した場合には（ステップＳ１９５：ＹＥＳ）、当該ＡＩＤで識別されるアプリケーションを選択し（ステップＳ１９９）、ＳＥＬＥＣＴコマンドの送信元に返すレスポンスＯＫを出力し（ステップＳ２００）、選択処理を終了する。なお、レスポンスＯＫがＳＥＬＥＣＴコマンドの送信元に送信されると、当該ＳＥＬＥＣＴコマンドの送信元とＩＣチップＣとの間で処理が開始される。
【００６９】
一方、ＯＳ（を実行するＣＰＵ１８１）は、ＳＥＬＥＣＴコマンドに含まれるＡＩＤが見つからないと判定した場合には（ステップＳ１９５：ＮＯ）、次いで、Ｎは最大値か否かを判定する（ステップＳ１９６）。なお、最大値は、管理アプリケーションテーブル３０１に記録されているＡＩＤ管理アプリケーションの数（図９の例では「３」）である。
【００７０】
ＯＳ（を実行するＣＰＵ１８１）は、Ｎは最大値であると判定した場合には（ステップＳ１９６：ＹＥＳ）、ＳＥＬＥＣＴコマンドの送信元に返すレスポンスＮＧを出力し（ステップＳ１９８）、選択処理を終了する。
【００７１】
一方、ＯＳ（を実行するＣＰＵ１８１）は、Ｎは最大値でないと判定した場合には（ステップＳ１９６：ＮＯ）、Ｎに「１」を加算し（ステップＳ１９７）、ステップＳ１９３の処理に移行する。
【００７２】
以上のように、変形例１のＩＣチップＣ（「電子情報記憶媒体」の一例）は、ＣＰＵ１８１（「処理部」の一例）とフラッシュメモリ１８３（「記憶部」の一例）を備え、フラッシュメモリ１８３は、ＯＳと、マスターアプリケーションと、複数のＡＩＤ管理アプリケーションを記憶するとともに、ＡＩＤ管理アプリケーション１〜３の配下に一又は複数のアプリケーションＡ〜Ｉ（「その他アプリケーション」の一例）を記憶し、且つ、一のＡＩＤ管理アプリケーションの配下に同一のＡＩＤ（「識別情報」の一例）を持つアプリケーションを記憶せず、ＯＳを実行するＣＰＵ１８１は、マスターアプリケーションを実行するＣＰＵ１８１が設定した検索優先順位の順（「ＡＩＤ管理アプリケーションの順」の一例）で、当該ＡＩＤ管理アプリケーションの配下に記憶されているアプリケーションを検索して、最初に見つかったアプリケーションを選択する。
【００７３】
したがって、本実施形態のＩＣトップＣによれば、一のＡＩＤ管理アプリケーションの配下に同一のＡＩＤを持つアプリケーションは記憶されないが、別のＡＩＤ管理アプリケーションの配下に同一のＡＩＤを持つアプリケーションを記憶することができ、ＯＳが指定されたＡＩＤを持つアプリケーションを選択する場合には、マスターアプリケーションにより設定された検索優先順位の順で、当該ＡＩＤ管理アプリケーションの配下にあるアプリケーションを検索して、最初に見つかったアプリケーションを選択することができる。
【００７４】
［５．２．変形例２］
上記実施形態では、ＯＳ（を実行するＣＰＵ１８１）は、図６のステップＳ１０４の処理で「ＹＥＳ」と判定した場合に、アプリケーションのインストールをせずに、レスポンスＮＧを出力することとしたが（ステップＳ１０７）、これに代えて、管理アプリケーションテーブル３００を参照して、有効フラグが「無効」となっている各ＡＩＤ管理アプリケーションの管理テーブル３１０を参照して、インストールするアプリケーションと同一のＡＩＤが記録されていない何れかの管理テーブル３１０に、インストールするアプリケーションのＡＩＤを記録し、ＩＮＳＴＡＬＬコマンドの送信元に返すレスポンスＯＫを出力することとしてもよい。このとき、レスポンスＯＫには、インストールするアプリケーションのＡＩＤを記録した管理テーブル３１０を管理するＡＩＤ管理アプリケーションのＡＩＤを含めて出力することにより、何れのＡＩＤ管理アプリケーションの配下にアプリケーションをインストール可能かをＩＮＳＴＡＬＬコマンドの送信元に知らせる。本変形例により、全てのＡＩＤ管理アプリケーションの配下に、インストールするアプリケーションのＡＩＤと同一のＡＩＤを持つアプリケーションがインストールされていない限り、当該アプリケーションをインストールすることができる。
【符号の説明】
【００７５】
１  携帯端末
１１  制御部
１２  記憶部
１３  無線通信部
１４  表示部
１５  入力部
１６ａ  ＣＬＦインターフェース
１６ｂ  ＩＣカードインターフェース
１７  バス
１８  ＵＩＭカード
Ｃ  ＩＣチップ
１８１  ＣＰＵ
１８２  ＲＡＭ
１８３  フラッシュメモリ
１８４  Ｉ／Ｏ回路
１８５  バス
１９  ＣＬＦ
【図１】
2018132818.tif 000003
【図２】
2018132818.tif 000004
【図３】
2018132818.tif 000005
【図４】
2018132818.tif 000006
【図５】
2018132818.tif 000007
【図６】
2018132818.tif 000008
【図７】
2018132818.tif 000009
【図８】
2018132818.tif 000010
【図９】
2018132818.tif 000011
【図１０】
2018132818.tif 000012
【図１１】
2018132818.tif 000013