(57)【要約】【課題】複数のアプリケーションの中にロック状態にあるアプリケーションが存在する場合であっても、利用可能なアプリケーションを迅速に選択可能とする情報記憶媒体、アプリケーション選択プログラム、及びアプリケーション選択方法を提供する。【解決手段】情報記憶媒体は、レコード形式ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれるアプリケーション識別子に対応するアプリケーションを、利用対象のアプリケーションとして選択する。【選択図】図３
2014182465.tif 000002
【特許請求の範囲】
【請求項１】
複数のアプリケーションが搭載可能なＩＣチップを有する情報記憶媒体であって、
前記アプリケーションそれぞれの識別子を含む複数のレコードにより構成されるファイルを記憶するメモリと、
前記レコードをロック状態または非ロック状態に設定する設定手段と、
前記ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれる識別子に対応する前記アプリケーションを、利用対象のアプリケーションとして選択する選択手段と、
を備えることを特徴とする情報記憶媒体。
【請求項２】
前記設定手段は、前記アプリケーションをロック状態または非ロック状態へ遷移させるコマンドが実行されたとき、前記アプリケーションのロック状態または非ロック状態への遷移に連動させて前記アプリケーションの識別子を含むレコードをロック状態または非ロック状態に設定することを特徴とする請求項１に記載の情報記憶媒体。
【請求項３】
前記設定手段は、前記レコードをロック状態または非ロック状態へ遷移させるコマンドが実行されたとき、当該レコードのロック状態または非ロック状態への遷移に連動させて当該レコードに含まれる識別子に対応する前記アプリケーションをロック状態または非ロック状態に設定することを特徴とする請求項１に記載の情報記憶媒体。
【請求項４】
前記ファイルにおいて直近にアクセスされたレコードの前または後のレコードが指定された場合、ロック状態に設定されたレコードをアクセス対象とせず、当該ロック状態に設定されたレコードの前または後のレコードにアクセスするアクセス手段を更に備えることを特徴とする請求項１乃至３の何れか一項に記載の情報記憶媒体。
【請求項５】
複数のアプリケーションが搭載可能なＩＣチップを有する情報記憶媒体であって、前記アプリケーションそれぞれの識別子を含む複数のレコードにより構成されるファイルを記憶するメモリを備える情報記憶媒体に含まれるコンピュータを、
前記レコードをロック状態または非ロック状態に設定する設定手段、及び、
前記ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれる識別子に対応する前記アプリケーションを、利用対象のアプリケーションとして選択する選択手段として機能させることを特徴とするアプリケーション選択プログラム。
【請求項６】
複数のアプリケーションが搭載可能なＩＣチップを有する情報記憶媒体であって、前記アプリケーションそれぞれの識別子を含む複数のレコードにより構成されるファイルを記憶するメモリを備える情報記憶媒体に含まれるコンピュータにより実行されるアプリケーション選択方法であって、
前記レコードをロック状態または非ロック状態に設定するステップと、
前記ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれる識別子に対応する前記アプリケーションを、利用対象のアプリケーションとして選択するステップと、
を含むことを特徴とするアプリケーション選択方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のアプリケーションが搭載可能なＩＣカード等の情報記憶媒体の技術に関する。
【背景技術】
【０００２】
近年、eUICC（embedded Universal Integrated Circuit Card）とよばれる組込み向けのＩＣカードが検討されている。eUICCは従来のUICC（SIMカードなど）と異なり、例えば携帯電話端末等の通信機器の回路基板上に直接組み込まれていることなどによって、該通信機器から取り外すことが困難な実装を想定されており、従来可能であったUICCを差し替えることで通信キャリア（携帯電話サービス会社）を変更することができない。このため、eUICCではユーザが複数の通信キャリア（オペレータともいう）から１つの通信キャリアを選択可能となる機能を予め持っていることが要求されている。ところで、ＩＣカードの国際規格ISO/IEC 7816-4では、ＩＣカードに搭載されたアプリケーションの識別子（以下、「アプリケーション識別子」という）を管理するレコード形式ファイル（EF_DIR/EF_ATR）が定義されている（例えば特許文献１参照）。このレコード形式ファイルは、アプリケーション識別子を含む（記述する）レコードにより構成される。このようなアプリケーション識別子は、例えば通信機器のユーザの指示に応じて一覧形式で表示され、その中からユーザにより選択されたアプリケーション識別子に対応するアプリケーションが活性化され利用可能となる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１１−５０１９１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、国際規格ISO/IEC 7816-4上、上述したレコード形式ファイルでは、アプリケーションの状態（ロック状態または非ロック状態）が管理されない。つまり、レコード形式ファイルにおけるレコードと、アプリケーションの状態とは紐付けられていない（同期していない）。このため、既存の通信機器では、レコード形式ファイルにより管理されているアプリケーション識別子の選択を試みることで、当該アプリケーション識別子に対応するアプリケーションの状態を確認するしかない。ところが、ＩＣカードに搭載された複数のアプリケーションのうち、例えば、レコード形式ファイルから最初に選択されたアプリケーションがロック状態にあれば、警告またはエラーになる。したがって、通信機器の電源ＯＮ時の起動に時間がかかる（言い換えれば、利用可能なアプリケーションが選択されるまでに時間がかかる）ことになってしまう。
【０００５】
そこで、本発明は、上記点等に鑑みてなされたものであり、複数のアプリケーションの中にロック状態にあるアプリケーションが存在する場合であっても、利用可能なアプリケーションを迅速に選択可能とする情報記憶媒体、アプリケーション選択プログラム、及びアプリケーション選択方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、請求項１に記載の発明は、複数のアプリケーションが搭載可能なＩＣチップを有する情報記憶媒体であって、前記アプリケーションそれぞれの識別子を含む複数のレコードにより構成されるファイルを記憶するメモリと、前記レコードをロック状態または非ロック状態に設定する設定手段と、前記ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれる識別子に対応する前記アプリケーションを、利用対象のアプリケーションとして選択する選択手段と、を備えることを特徴とする。
【０００７】
請求項２に記載の発明は、請求項１に記載の情報記憶媒体において、前記設定手段は、前記アプリケーションをロック状態または非ロック状態へ遷移させるコマンドが実行されたとき、前記アプリケーションのロック状態または非ロック状態への遷移に連動させて前記アプリケーションの識別子を含むレコードをロック状態または非ロック状態に設定することを特徴とする。
【０００８】
請求項３に記載の発明は、請求項１に記載の情報記憶媒体において、前記設定手段は、前記レコードをロック状態または非ロック状態へ遷移させるコマンドが実行されたとき、当該レコードのロック状態または非ロック状態への遷移に連動させて当該レコードに含まれる識別子に対応する前記アプリケーションをロック状態または非ロック状態に設定することを特徴とする。
【０００９】
請求項４に記載の発明は、請求項１乃至３の何れか一項に記載の情報記憶媒体において、前記ファイルにおいて直近にアクセスされたレコードの前または後のレコードが指定された場合、ロック状態に設定されたレコードをアクセス対象とせず、当該ロック状態に設定されたレコードの前または後のレコードにアクセスするアクセス手段を更に備えることを特徴とする。
【００１０】
請求項５に記載の発明は、複数のアプリケーションが搭載可能なＩＣチップを有する情報記憶媒体であって、前記アプリケーションそれぞれの識別子を含む複数のレコードにより構成されるファイルを記憶するメモリを備える情報記憶媒体に含まれるコンピュータを、前記レコードをロック状態または非ロック状態に設定する設定手段、及び、前記ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれる識別子に対応する前記アプリケーションを、利用対象のアプリケーションとして選択する選択手段として機能させることを特徴とする。
【００１１】
請求項６に記載の発明は、複数のアプリケーションが搭載可能なＩＣチップを有する情報記憶媒体であって、前記アプリケーションそれぞれの識別子を含む複数のレコードにより構成されるファイルを記憶するメモリを備える情報記憶媒体に含まれるコンピュータにより実行されるアプリケーション選択方法であって、前記レコードをロック状態または非ロック状態に設定するステップと、前記ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれる識別子に対応する前記アプリケーションを、利用対象のアプリケーションとして選択するステップと、を含むことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、複数のアプリケーションの中にロック状態にあるアプリケーションが存在する場合であっても、利用可能なアプリケーションを迅速に選択することができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態に係る通信機器の概要構成例を示すブロック図である。
【図２】（Ａ）は、アプリ状態更新コマンドが受信された場合におけるＣＰＵ１１１のアプリケーション状態更新処理例を示すフローチャートである。（Ｂ）は、レコード状態更新コマンドが受信された場合におけるＣＰＵ１１１のレコード状態更新処理例を示すフローチャートである。
【図３】アプリ選択コマンドが受信された場合におけるＣＰＵ１１１のアプリケーション選択処理例を示すフローチャートである。
【図４】（Ａ）は、アプリ状態更新コマンドが受信された場合におけるＣＰＵ１１１のアプリ及びレコード状態更新処理例を示すフローチャートである。（Ｂ）は、レコード状態更新コマンドが受信された場合におけるＣＰＵ１１１のレコード及びアプリ状態更新処理例を示すフローチャートである。
【図５】（Ａ）は、Ｎ個あるレコードのレコード番号とレコードの状態を示す図である。（Ｂ）は、レコード読み出しまたはレコード更新コマンドが受信された場合におけるＣＰＵ１１１のレコード読み出しまたはレコード更新処理例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、スマートフォンや携帯電話端末等の通信機器に対して本発明の情報記憶媒体を適用した場合の実施の形態である。
【００１５】
図１は、本実施形態に係る通信機器の概要構成例を示すブロック図である。図１に示すように、通信機器１は、ＩＣカード１１、及びコントローラ１２等を備えて構成されている。ＩＣカード１１は、eUICCであり、複数のアプリケーションが搭載される。コントローラ１２は、通信機器１の電話通信機能を担い、通信機器１のユーザからの操作キーを介した操作指示に応じて各種処理を実行する。なお、通信機器１には、その他にも、例えば操作キー、ディスプレイ、スピーカ、及び移動体通信部等を備えるが、図示を省略する。
【００１６】
ＩＣカード１１は、ＣＰＵ(Central Processing Unit)１１１、データを一時記憶するＲＡＭ(Random Access Memory)１１２、所定のデータやプログラム等を記憶する不揮発性メモリ（例えばフラッシュメモリやＥＥＰＲＯＭ）１１３、及びＩ／Ｏポート（入出力ポート）１１４等を備えている。Ｉ／Ｏポート１１４は、コントローラ１２とのインターフェイスを担う。Ｉ／Ｏポート１１４には、ISO/IEC 7816によって定められたＣ１〜Ｃ８の８個の端子が設けられている。例えば、Ｃ１端子は電源端子、Ｃ２端子はリセット端子、Ｃ３端子はクロック端子、Ｃ５端子はグランド端子、Ｃ７端子はコントローラ１２とのデータ通信を行う端子である。ＩＣカード１１は本発明における情報記憶媒体を構成するが、このＩＣカード１１は通信機器１の回路基板上に直接組み込んで構成するようにしても良い。
【００１７】
ＣＰＵ１１１（コンピュータの一例）は、コントローラ１２からのコマンドに応じたコマンド処理を実行する。不揮発性メモリ１１３は、ＯＳ（Operating System）、複数のアプリケーション、及び本発明のアプリケーション選択プログラムを記憶する。複数のアプリケーションは、例えば、異なる複数の通信キャリアごとに対応するネットワークアクセスアプリケーションである。ネットワークアクセスアプリケーションは、移動体通信ネットワークサービスを利用するためのアプリケーションである。なお、本実施形態は、ネットワークアクセスアプリケーション以外のアプリケーションに対しても適用可能である。ＣＰＵ１１は、複数のアプリケーションを選択的に動作させることができる。また、ＣＰＵ１１１は、アプリケーション選択プログラムを実行することで、本発明における設定手段、選択手段、及びアクセス手段等として機能する。また、各アプリケーションは、コントローラ１２からのアプリ状態更新コマンド（例えば、Set Statusコマンド）によりロック状態または非ロック状態に設定可能になっている。アプリ状態更新コマンドは、アプリケーションをロック状態または非ロック状態へ遷移させる（ロック状態から非ロック状態への遷移、または非ロック状態からロック状態への遷移させる）コマンドである。これにより、例えばユーザが利用したい通信キャリアに対応するアプリケーションは非ロック状態に設定され、利用しない通信キャリアに対応するアプリケーションはロック状態に設定される。ここで、アプリケーションのロック状態とは、アプリケーション選択時に警告またはエラーになり、アプリケーションが全てのコマンドを実行しない、もしくは限定されたコマンドのみ実行可能な状態をいう。
【００１８】
図２（Ａ）は、アプリ状態更新コマンドが受信された場合におけるＣＰＵ１１１のアプリケーション状態更新処理例を示すフローチャートである。ＩＣカード１１がアプリ状態更新コマンドを受信すると、図２（Ａ）に示すように、ＣＰＵ１１１は、コマンドフォーマットが正しいか否かを判定する（ステップＳ１）。そして、コマンドフォーマットが正しいと判定された場合（ステップＳ１：ＹＥＳ）、ステップＳ２へ進む。一方、コマンドフォーマットが正しくないと判定された場合（ステップＳ１：ＮＯ）、ステップＳ５へ進む。ステップＳ２では、ＣＰＵ１１１は、対象アプリケーション（受信されたコマンドにより指定されたアプリケーション）が存在するか（ＩＣカード１１に記憶されているか）否かを判定する。そして、対象アプリケーションが存在すると判定された場合（ステップＳ２：ＹＥＳ）、ステップＳ３へ進む。一方、対象アプリケーションが存在しないと判定された場合（ステップＳ２：ＮＯ）、ステップＳ５へ進む。ステップＳ３では、ＣＰＵ１１１は、受信されたコマンドの実行条件（例えば、セキュリティ条件）を満たすか否かを判定する。そして、当該コマンドの実行条件を満たすと判定された場合（ステップＳ３：ＹＥＳ）、ステップＳ４へ進む。一方、当該コマンドの実行条件を満たさないと判定された場合（ステップＳ３：ＮＯ）、ステップＳ５へ進む。ステップＳ４では、ＣＰＵ１１１は、対象アプリケーションの状態を更新（つまり、ロック状態から非ロック状態に設定、または非ロック状態からロック状態に設定）する。ステップＳ５では、ＣＰＵ１１１は、エラー処理を行う。
【００１９】
また、不揮発性メモリ１１３は、上記複数のアプリケーションそれぞれの識別子（例えば、アプリケーション名）を含む複数のレコードにより構成されるレコード形式ファイル（EF_DIR/EF_ATR）を記憶する。レコード形式ファイルにおける複数のレコードは、それぞれ、コントローラ１２からのレコード状態更新コマンドにより、ロック状態または非ロック状態に設定可能になっている。レコード状態更新コマンドは、レコードをロック状態または非ロック状態へ遷移させるコマンドである。レコードのロック状態とは、レコードの読み出しが不能な状態をいう。レコードの非ロック状態とは、レコードの読み出し可能な状態をいう。なお、各レコードには、固有のレコード番号が付与されている。
【００２０】
図２（Ｂ）は、レコード状態更新コマンドが受信された場合におけるＣＰＵ１１１のレコード状態更新処理例を示すフローチャートである。ＩＣカード１１がレコード状態更新コマンドを受信すると、図２（Ｂ）に示すように、ＣＰＵ１１１は、コマンドフォーマットが正しいか否かを判定する（ステップＳ１１）。そして、コマンドフォーマットが正しいと判定された場合（ステップＳ１１：ＹＥＳ）、ステップＳ１２へ進む。一方、コマンドフォーマットが正しくないと判定された場合（ステップＳ１１：ＮＯ）、ステップＳ１５へ進む。ステップＳ１２では、ＣＰＵ１１１は、対象ファイルのレコード（受信されたコマンドにより指定されたレコード）が存在するか否かを判定する。そして、対象ファイルのレコードが存在すると判定された場合（ステップＳ１２：ＹＥＳ）、ステップＳ１３へ進む。一方、対象ファイルのレコードが存在しないと判定された場合（ステップＳ１２：ＮＯ）、ステップＳ１５へ進む。ステップＳ１３では、ＣＰＵ１１１は、受信されたコマンドの実行条件を満たすか否かを判定する。そして、当該コマンドの実行条件を満たすと判定された場合（ステップＳ１３：ＹＥＳ）、ステップＳ１４へ進む。一方、当該コマンドの実行条件を満たさないと判定された場合（ステップＳ１３：ＮＯ）、ステップＳ１５へ進む。ステップＳ１４では、ＣＰＵ１１１は、対象ファイルのレコードの状態を更新（つまり、ロック状態から非ロック状態に設定、または非ロック状態からロック状態に設定）する。ステップＳ１５では、ＣＰＵ１１１は、エラー処理を行う。
【００２１】
そして、ＣＰＵ１１１は、レコード形式ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれるアプリケーション識別子に対応する（当該識別子により識別される）アプリケーションを、利用対象のアプリケーションとして選択する。つまり、ロック状態に設定されたレコードからはアプリケーション識別子が読めないため、レコード形式ファイルにおけるレコードとアプリケーションの状態とが紐付けられていなくても、レコードのロック状態を、あたかもアプリケーションのロック状態として設定可能となる。
【００２２】
図３は、アプリ選択コマンドが受信された場合におけるＣＰＵ１１１のアプリケーション選択処理例を示すフローチャートである。図３に示す処理では、ＣＰＵ１１１は、対象ファイル（受信されたコマンドにより指定されたファイル）を選択する（ステップＳ２１）。次いで、ＣＰＵ１１１は、レコード番号を初期化する（ステップＳ２２）。これにより、例えばレコード番号が「１」に設定される。次いで、ＣＰＵ１１１は、対象ファイルにおいて、初期化されたレコード番号の対象レコードの読み出しを行い（ステップＳ２３）、対象レコードが非ロック状態に設定されているか否かを判定する（ステップＳ２４）。そして、対象レコードが非ロック状態に設定されていない（つまり、ロック状態に設定されている）と判定された場合（ステップＳ２４：ＮＯ）、ステップＳ２５へ進む。ステップＳ２５では、ＣＰＵ１１１は、対象ファイルに残りレコード（つまり、まだ読み出しが試みられていないレコード）が存在するか否かを判定する。そして、対象ファイルに残りレコードが存在すると判定された場合（ステップＳ２５：ＹＥＳ）、レコード番号が次のレコードに変更（これにより、次のレコードが指定）され（ステップＳ２６）、ステップＳ２３に移行される。これにより、次のレコードについて上記と同様の処理が行われる。一方、対象ファイルに残りレコードが存在しないと判定された場合（ステップＳ２５：ＮＯ）、エラー処理が行われる（ステップＳ２７）。一方、ステップＳ２４において、対象レコードまたは以降に指定されたレコードが非ロック状態に設定されていると判定された場合（ステップＳ２４：ＹＥＳ）、ＣＰＵ１１１は、当該対象レコードまたは以降に指定されたレコードに含まれるアプリケーション識別子に対応するアプリケーションを、利用対象のアプリケーションとして選択する（ステップＳ２８）。
【００２３】
なお、ＣＰＵ１１１は、アプリ状態更新コマンドを実行したとき、アプリケーションのロック状態または非ロック状態への遷移に連動させてアプリケーション識別子を含むレコードをロック状態または非ロック状態に設定するように構成してもよい。これにより、例えばアプリケーションをロック状態から非ロック状態へ遷移したときに自動的にレコードをロック状態から非ロック状態に遷移させることができる。そのため、アプリケーションの状態と、レコードの状態を別々に設定する手間を削減することができる。
【００２４】
図４（Ａ）は、アプリ状態更新コマンドが受信された場合におけるＣＰＵ１１１のアプリ及びレコード状態更新処理例を示すフローチャートである。なお、図４（Ａ）に示すステップＳ３１〜Ｓ３３、及びステップＳ３７の処理は、図２（Ａ）に示すステップＳ１〜Ｓ３、及びステップＳ５の処理と同様である。図４（Ａ）に示すステップＳ３４では、ＣＰＵ１１１は、対象ファイルのレコード（対象アプリケーションのアプリケーション識別子を含むレコード）が存在するか否かを判定する。そして、対象ファイルのレコードが存在すると判定された場合（ステップＳ３４：ＹＥＳ）、ステップＳ３５へ進む。一方、対象ファイルのレコードが存在しないと判定された場合（ステップＳ３４：ＮＯ）、ステップＳ３７へ進む。ステップＳ３５では、ＣＰＵ１１１は、対象アプリケーションの状態を更新する。次いで、ＣＰＵ１１１は、対象ファイルのレコードの状態を更新する（ステップＳ３６）。
【００２５】
また、ＣＰＵ１１１は、レコード状態更新コマンドを実行したとき、当該レコードのロック状態または非ロック状態への遷移に連動させて当該レコードに含まれるアプリケーション識別子に対応するアプリケーションをロック状態または非ロック状態に設定するように構成してもよい。これにより、例えばレコードをロック状態から非ロック状態へ遷移したときに自動的にアプリケーションをロック状態から非ロック状態に遷移させることができる。そのため、アプリケーションの状態と、レコードの状態を別々に設定する手間を削減することができる。
【００２６】
図４（Ｂ）は、レコード状態更新コマンドが受信された場合におけるＣＰＵ１１１のレコード及びアプリ状態更新処理例を示すフローチャートである。なお、図４（Ｂ）に示すステップＳ４１〜Ｓ４３、及びステップＳ４７の処理は、図２（Ｂ）に示すステップＳ１１〜Ｓ１３、及びステップＳ１５の処理と同様である。図４（Ｂ）に示すステップＳ４４では、ＣＰＵ１１１は、対象アプリケーション（対象ファイルのレコードに含まれるアプリケーション識別子に対応するアプリケーション）が存在するか否かを判定する。そして、対象アプリケーションが存在すると判定された場合（ステップＳ４４：ＹＥＳ）、ステップＳ４５へ進む。一方、対象アプリケーションが存在しないと判定された場合（ステップＳ４４：ＮＯ）、ステップＳ４７へ進む。ステップＳ４５では、ＣＰＵ１１１は、対象ファイルのレコードの状態を更新する。次いで、ＣＰＵ１１１は、対象アプリケーションの状態を更新する（ステップＳ４６）。
【００２７】
更に、ＩＣカード１１は、レコード形式ファイルにおいて直近にアクセスされたレコード（以下、「カレントレコード」という）を管理する機能を有するように構成してもよい。この場合、ＣＰＵ１１１は、レコード形式ファイルにおいて所定のアクセスコマンド（例えば、レコード読み出しまたはレコード更新コマンド）でカレントレコードの前または後のレコードが指定された場合、ロック状態に設定されたレコードをアクセス対象とせず、当該ロック状態に設定されたレコードの前または後のレコードにアクセスする。これにより、非ロック状態のレコードへ迅速にアクセスすることができる。図５（Ａ）は、Ｎ個あるレコードのレコード番号とレコードの状態を示す図である。図５（Ａ）において、ファイル選択直後にはカレントレコードが未設定状態であり、この状態でレコード読み出しまたはレコード更新をNEXT指定にて実行した場合、レコード番号「１」ではなく、レコード番号「２」がアクセス対象となる。また、レコード番号「２」がカレントレコードの場合、NEXT指定にて上記コマンドを実行した場合、レコード番号「３」がアクセスの対象となる。また、ファイル選択直後にPREVIOUS指定にて上記コマンドを実行した場合には、レコード番号「Ｎ−１」がアクセス対象となる。
【００２８】
図５（Ｂ）は、レコード読み出し、またはレコード更新コマンドが受信された場合におけるＣＰＵ１１１のレコード読み出し、またはレコード更新処理例を示すフローチャートである。なお、図５（Ｂ）に示すステップＳ５１及びステップＳ５８の処理は、図２（Ｂ）に示すステップＳ１１及びＳ１５の処理と同様である。図５に示すステップＳ５２では、ＣＰＵ１１１は、対象ファイル（受信されたコマンドにより指定されたファイル）が存在するか否かを判定する。そして、対象ファイルが存在すると判定された場合（ステップＳ５２：ＹＥＳ）、ステップＳ５３へ進む。一方、対象ファイルが存在しないと判定された場合（ステップＳ５２：ＮＯ）、ステップＳ５８へ進む。ステップＳ５３では、ＣＰＵ１１１は、受信されたコマンドの実行条件を満たすか否かを判定する。そして、当該コマンドの実行条件を満たすと判定された場合（ステップＳ５３：ＹＥＳ）、ステップＳ５４へ進む。一方、当該コマンドの実行条件を満たさないと判定された場合（ステップＳ５３：ＮＯ）、ステップＳ５８へ進む。ステップＳ５４では、ＣＰＵ１１１は、レコード番号を初期化する。次いで、ＣＰＵ１１１は、初期化されたレコード番号の対象レコード（カレントレコード）が非ロック状態に設定されているか否かを判定する（ステップＳ５５）。そして、対象レコード（カレントレコード）が非ロック状態に設定されていない（つまり、ロック状態に設定されている）と判定された場合（ステップＳ５５：ＮＯ）、ステップＳ５６へ進む。ステップＳ５６では、ＣＰＵ１１１は、対象レコード（カレントレコード）の前または後のレコードが存在するか否かを判定する。そして、対象レコード（カレントレコード）の前または後のレコードが存在すると判定された場合（ステップＳ５６：ＹＥＳ）、レコード番号が対象レコード（カレントレコード）の前または後のレコードに更新（これにより、例えば１つ前のレコードがPREVIOUS指定、または１つ後のレコードがNEXT指定）され（ステップＳ５７）、ステップＳ５５に移行される。これにより、対象レコード（カレントレコード）の前または後のレコードについて上記と同様の処理が行われる。一方、対象レコード（カレントレコード）の前または後のレコードが存在しないと判定された場合（ステップＳ５６：ＮＯ）、ステップＳ５８へ進む。一方、ステップＳ５５において、対象レコードまたはこれの前または後のレコードが非ロック状態に設定されていると判定された場合（ステップＳ５５：ＹＥＳ）、ＣＰＵ１１１は、当該対象レコードまたはこれの前または後のレコードにアクセスして読み出しまたは更新を行う（ステップＳ５９）。また、ステップＳ５５において、対象レコードの前または後のレコードが非ロック状態に設定されていない（つまり、ロック状態に設定された）と判定された場合（ステップＳ５５：ＮＯ）、ＣＰＵ１１１は、当該対象レコードの前または後のレコードにはアクセス対象としない。そのため、当該ロック状態に設定されたレコードの前または後のレコードにアクセスすることになる。
【００２９】
以上説明したように、上記実施形態によれば、レコード形式ファイルにおいて非ロック状態に設定されたレコードを読み出すことで当該レコードに含まれるアプリケーション識別子に対応するアプリケーションを、利用対象のアプリケーションとして選択するように構成したので、複数のアプリケーションの中にロック状態にあるアプリケーションが存在する場合であっても、利用可能なアプリケーションを迅速に選択することができる。
【００３０】
なお、上述した通信機器１は、ユーザに携帯されるものだけでなく、例えばスマートメータ等に組み込まれて使用されるものも含まれる。この場合、通信機器１のコントローラ１２は、例えば、サーバから移動体通信ネットワークを介して送信された命令に応じてＩＣカード１１へ、上述したアプリ状態更新コマンドやアプリ選択コマンド等を送信することになる。これにより、利用可能なアプリケーションを遠隔から迅速に選択することができる。
【符号の説明】
【００３１】
１  通信機器
１１  ＩＣカード
１２  コントローラ
１１１  ＣＰＵ
１１２  ＲＡＭ
１１３  不揮発性メモリ
１１４  Ｉ／Ｏポート
【図１】
2014182465.tif 000003
【図２】
2014182465.tif 000004
【図３】
2014182465.tif 000005
【図４】
2014182465.tif 000006
【図５】
2014182465.tif 000007