(57)【特許請求の範囲】
【請求項１】
第一の通信手段を介してリセット信号が受信された場合に、当該第一の通信手段に関するリセット処理を実行する第一の実行手段と、
第二の通信手段を介してコマンド信号が受信された場合に、当該コマンド信号に応じたコマンド処理を実行する第二の実行手段と、
を備え、
前記第一の実行手段による前記第一の通信手段に関するリセット処理の実行中に前記第二の通信手段を介してコマンド信号が受信された場合に、前記第一の実行手段は前記リセット処理のうち当該受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行し、当該必要な処理の実行後に前記第二の実行手段は前記コマンド信号に応じたコマンド処理を実行し、当該コマンド処理の実行後に前記第一の実行手段は前記必要な処理以外の処理を実行することを特徴とするＩＣチップ。
【請求項２】
請求項１に記載のＩＣチップにおいて、
前記リセット信号の受信により中断された処理を回復する回復処理のうち、前記受信されたコマンド信号に応じたコマンド処理に関係する回復処理を、前記必要な処理以外の処理として特定する特定手段を備えることを特徴とするＩＣチップ。
【請求項３】
請求項１又は２に記載のＩＣチップにおいて、
前記第一の実行手段は、前記リセット処理においてリセットに対するリアクションを制約時間内に実行し、
前記第二の実行手段は、前記コマンド処理の結果を示す処理応答を制約時間内に実行することを特徴とするＩＣチップ。
【請求項４】
前記ＩＣチップは、ＵＩＭ（User Identity Module)に搭載されていることを特徴とす
る請求項１乃至３の何れか一項に記載のＩＣチップ。
【請求項５】
前記ＵＩＭは、携帯端末に装着されていることを特徴とする請求項４に記載のＩＣチップ。
【請求項６】
ＩＣチップにおける処理方法であって、
第一の通信手段を介してリセット信号が受信された場合に、当該第一の通信手段に関するリセット処理を実行する第一の実行ステップと、
第二の通信手段を介してコマンド信号が受信された場合に、当該コマンド信号に応じたコマンド処理を実行する第二の実行ステップと、
を含み、
前記第一の通信手段に関するリセット処理の実行中に前記第二の通信手段を介してコマンド信号が受信された場合に、前記リセット処理のうち当該受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行し、当該必要な処理の実行後に前記コマンド信号に応じたコマンド処理を実行し、当該コマンド処理の実行後に前記必要な処理以外の処理を実行することを特徴とするＩＣチップにおける処理方法。
【請求項７】
ＩＣチップに含まれるコンピュータを、
第一の通信手段を介してリセット信号が受信された場合に、当該第一の通信手段に関するリセット処理を実行する第一の実行手段、及び、
第二の通信手段を介してコマンド信号が受信された場合に、当該コマンド信号に応じたコマンド処理を実行する第二の実行手段として機能させ、
前記第一の実行手段による前記第一の通信手段に関するリセット処理の実行中に前記第二の通信手段を介してコマンド信号が受信された場合に、前記第一の実行手段が前記リセット処理のうち当該受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行し、当該必要な処理の実行後に前記第二の実行手段が前記コマンド信号に応じたコマンド処理を実行し、当該コマンド処理の実行後に前記第一の実行手段が前記必要な処理以外の処理を実行するように機能させることを特徴とするＩＣチップ用処理プログラム。
【請求項８】
接触型ＩＣチップと、当該ＩＣチップと第一の通信手段を介して通信可能なコントローラとを備える携帯端末において、
前記接触型ＩＣチップは、
前記コントローラから第一の通信手段を介してリセット信号が受信された場合に、当該第一の通信手段に関するリセット処理を実行する第一の実行手段と、
非接触型ＩＣチップから第二の通信手段を介してコマンド信号が受信された場合に、当該コマンド信号に応じたコマンド処理を実行する第二の実行手段と、
を備え、
前記第一の実行手段による前記第一の通信手段に関するリセット処理の実行中に前記第二の通信手段を介してコマンド信号が受信された場合に、前記第一の実行手段は前記リセット処理のうち当該受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行し、当該必要な処理の実行後に前記第二の実行手段は前記コマンド信号に応じたコマンド処理を実行し、当該コマンド処理の実行後に前記第一の実行手段は前記必要な処理以外の処理を実行することを特徴とする携帯端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のインターフェースに対応したＩＣチップにおける処理技術に関する。
【背景技術】
【０００２】
従来から、接触型ＩＣ(Integrated Circuit)チップが搭載されたＵＩＭ（User Identity Module）が搭載された携帯端末が普及している。近年、このような携帯端末に非接触型ＩＣチップを搭載することにより、ＵＩＭに、従来の機能（例えば加入者認証処理等）に加えて、非接触インターフェースを使って様々な機能（サービス）を提供するためのグローバルな仕組みの整備が進められている。携帯端末に搭載される非接触型ＩＣチップには、例えば、ＦｅｌｉＣａ（登録商標）の通信方式を採用した所謂ＦｅｌｉＣａチップや、ＮＦＣ(Near Field Communication)の規格で規定されるＣＬＦ(ContactLess Front-end)などがある。
【０００３】
そして、ＵＩＭについては、接触型ＩＣチップに接触通信用のソフトウェアに加え、非接触通信用のソフトウェアを搭載することが検討されている。
【０００４】
上記の構成を考えた場合、ＵＩＭは、１チップ(１ＣＰＵ)に接触及び非接触通信用の２種類のソフトウェアを備え、それぞれのエンティティは異なることから、接触又は非接触通信インターフェースのリセット処理とコマンド処理等のイベントが２つのインターフェースで同時に発生、つまり、競合が発生する可能性がある。インターフェースのリセット処理とコマンド処理とが競合するケースとしては、例えば、携帯端末のバッテリー残量が無くなり、電源がＯＦＦ状態（Power loss）になった後にバッテリーを充電し、その後、ユーザが電源をＯＮ（ＵＩＭに電力供給）にしながら携帯端末を非接触リーダに翳した場合、あるいは携帯端末の機能を担うコントローラ（制御部）とＵＩＭ間の通信で何らかのエラーが発生し、携帯端末がインターフェースのリセット処理を実行したと同時にユーザによって非接触リーダに翳された場合が挙げられる。
【０００５】
ＵＩＭの接触通信インターフェースのリセット処理は、ＥＴＳＩ（European Telecommunications Standards Institute）等の標準化団体により策定された仕様にて処理手順や処理時間制約が規程されている。ＵＩＭがこの処理時間制約を守らないと、携帯端末が正しくＵＩＭを認識することができずに、以後ＵＩＭはこのインターフェース上で機能することができない。よって、ＵＩＭの接触通信インターフェースのリセット処理は、非常に優先度が高い。また、ＵＩＭはインターフェースのリセット処理と共に、受信コマンドの実行に備えて、オペレーティングシステムの初期化処理を実施する。
【０００６】
一方、非接触通信インターフェースを使うサービスにおいては、ユーザ自身が携帯端末を非接触リーダに翳すため、処理の失敗や処理の遅延は、提供されるサービスの品質に大きな影響を与えることは明確で優先的に処理（コマンド処理）することが求められる。
【０００７】
特許文献１には、複数の非接触通信により授受される情報を処理するソフトウェアモジュールに対して、あるソフトウェアモジュールの起動の最中に、他のソフトウェアモジュール処理が開始され完了した場合は、先に起動中のモジュール処理を再開させる方法が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１０−６７１９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、従来のＵＩＭは接触通信用のソフトウェアが１つであったため、上記の競合は発生しない。したがって、ＵＩＭは、携帯端末の機能を担うコントローラからＵＩＭの接触用端子を介してリセット信号を受信した場合、それに対応するリセット処理を標準仕様に規程された内容を守りながら行うと共に受信コマンドの実行に備えてオペレーティングシステムを初期化した後、コマンド信号の受信待ち状態になっていた。
【００１０】
しかしながら、ＵＩＭに接触及び非接触通信用の２種類のソフトウェアが存在する場合は先に述べたように競合が発生する。しかも、これらの競合する２つの処理はそれぞれ高い優先度が求められるため、インターフェースのリセット処理後にサービス要求に応じたコマンド処理が実行された場合、後者の処理が求められる時間制約を満たせない可能性がある。
【００１１】
そこで、本発明は、このような点等に鑑みてなされたものであり、ある通信手段に関するリセット処理と、他の通信手段を介して処理時間制約の厳しいサービス要求に応じたコマンド処理が同時に発生した場合であっても、リセット処理の時間制約を守りながらサービス要求に応じたコマンド処理を優先して実行することが可能なＩＣチップ、ＩＣチップにおける処理方法、ＩＣチップ用処理プログラム、及び携帯端末を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、請求項１に記載の発明は、第一の通信手段を介してリセット信号が受信された場合に、当該第一の通信手段に関するリセット処理を実行する第一の実行手段と、第二の通信手段を介してコマンド信号が受信された場合に、当該コマンド信号に応じたコマンド処理を実行する第二の実行手段と、を備え、前記第一の実行手段による前記第一の通信手段に関するリセット処理の実行中に前記第二の通信手段を介してコマンド信号が受信された場合に、前記第一の実行手段は前記リセット処理のうち当該受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行し、当該必要な処理の実行後に前記第二の実行手段は前記コマンド信号に応じたコマンド処理を実行し、当該コマンド処理の実行後に前記第一の実行手段は前記必要な処理以外の処理を実行することを特徴とする。
【００１３】
請求項２に記載の発明は、請求項１に記載のＩＣチップにおいて、前記リセット信号の受信により中断された処理を回復する回復処理のうち、前記受信されたコマンド信号に応じたコマンド処理に関係する回復処理を、前記必要な処理以外の処理として特定する特定手段を備えることを特徴とする。
【００１４】
請求項３に記載の発明は、請求項１又は２に記載のＩＣチップにおいて、前記第一の実行手段は、前記リセット処理においてリセットに対するリアクションを制約時間内に実行し、前記第二の実行手段は、前記コマンド処理の結果を示す処理応答を制約時間内に実行することを特徴とする。
【００１５】
請求項４に記載の発明は、請求項１乃至３の何れか一項に記載のＩＣチップにおいて、前記ＩＣチップは、ＵＩＭ（User Identity Module)に搭載されていることを特徴とする
。
【００１６】
請求項５に記載の発明は、請求項４に記載のＩＣチップにおいて、前記ＵＩＭは、携帯端末に装着されていることを特徴とする。
【００１７】
請求項６に記載の発明は、ＩＣチップにおける処理方法であって、第一の通信手段を介してリセット信号が受信された場合に、当該第一の通信手段に関するリセット処理を実行する第一の実行ステップと、第二の通信手段を介してコマンド信号が受信された場合に、当該コマンド信号に応じたコマンド処理を実行する第二の実行ステップと、を含み、前記第一の通信手段に関するリセット処理の実行中に前記第二の通信手段を介してコマンド信号が受信された場合に、前記リセット処理のうち当該受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行し、当該必要な処理の実行後に前記コマンド信号に応じたコマンド処理を実行し、当該コマンド処理の実行後に前記必要な処理以外の処理を実行することを特徴とする。
【００１８】
請求項７に記載のＩＣチップ用処理プログラムの発明は、ＩＣチップに含まれるコンピュータを、第一の通信手段を介してリセット信号が受信された場合に、当該第一の通信手段に関するリセット処理を実行する第一の実行手段、及び、第二の通信手段を介してコマンド信号が受信された場合に、当該コマンド信号に応じたコマンド処理を実行する第二の実行手段として機能させ、前記第一の実行手段による前記第一の通信手段に関するリセット処理の実行中に前記第二の通信手段を介してコマンド信号が受信された場合に、前記第一の実行手段が前記リセット処理のうち当該受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行し、当該必要な処理の実行後に前記第二の実行手段が前記コマンド信号に応じたコマンド処理を実行し、当該コマンド処理の実行後に前記第一の実行手段が前記必要な処理以外の処理を実行するように機能させることを特徴とする。
【００１９】
請求項８に記載の発明は、接触型ＩＣチップと、当該ＩＣチップと第一の通信手段を介して通信可能なコントローラとを備える携帯端末において、前記接触型ＩＣチップは、前記コントローラから第一の通信手段を介してリセット信号が受信された場合に、当該第一の通信手段に関するリセット処理を実行する第一の実行手段と、非接触型ＩＣチップから第二の通信手段を介してコマンド信号が受信された場合に、当該コマンド信号に応じたコマンド処理を実行する第二の実行手段と、を備え、前記第一の実行手段による前記第一の通信手段に関するリセット処理の実行中に前記第二の通信手段を介してコマンド信号が受信された場合に、前記第一の実行手段は前記リセット処理のうち当該受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行し、当該必要な処理の実行後に前記第二の実行手段は前記コマンド信号に応じたコマンド処理を実行し、当該コマンド処理の実行後に前記第一の実行手段は前記必要な処理以外の処理を実行することを特徴とする。
【発明の効果】
【００２０】
本発明によれば、ある通信手段に関するリセット処理と、他の通信手段を介して処理時間制約の厳しいサービス要求に応じたコマンド処理が同時に発生した場合であっても、リセット処理の時間制約を守りながらサービス要求に応じたコマンド処理を優先して実行することができ、処理時間制約の厳しいサービス要求に対して処理結果を応答することができる。
【図面の簡単な説明】
【００２１】
【図１】（Ａ）は、本実施形態に係る携帯端末の概要構成例を示すブロック図である。（Ｂ）は、本実施形態に係るＵＩＭ１３の概要構成例を示すブロック図である。
【図２】コントローラ１１より受信されたリセット信号に応じたリセット処理と、ＣＬＦ１２より受信されたコマンド信号に応じたコマンド処理が同時に発生した場合の携帯端末１における動作シーケンスの一例を示す図である。
【図３】本実施形態に係るＵＩＭ１３におけるソフトウェア機能ブロックの一例を示す図である。
【図４】中断時に処理中断情報として記録されていた処理等と当該処理等に対応する判定情報の例を示す図である。
【図５】中断時に処理中断情報として記録されていた処理等と当該処理等に対応する判定情報の例を示す図である。
【図６】本実施形態に係るＵＩＭ１３のＣＰＵ１３１における電力供給検知時の処理を示すフローチャートである。
【図７】本実施形態に係るＵＩＭ１３のＣＰＵ１３１における割込み処理を示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、携帯端末に対して本発明を適用した場合の実施の形態である。
【００２３】
先ず、図１を参照して、本実施形態に係る携帯端末の構成及び機能概要について説明する。
【００２４】
図１（Ａ）は、本実施形態に係る携帯端末の概要構成例を示すブロック図である。図１（Ａ）に示すように、携帯端末１は、携帯端末１の機能を担うコントローラ１１、ＣＬＦ１２、及びＵＩＭ１３等を備えて構成されている。なお、携帯端末１には、例えば操作キー、ディスプレイ、スピーカ、及び移動体通信部等を備える携帯電話機やＰＤＡ等を適用できる。
【００２５】
コントローラ１１は、図示しないが、ＣＰＵ（Central Processing Unit）、各種プロ
グラム及びデータを記憶する不揮発性メモリ（例えばフラッシュメモリ等）、データを一時記憶するＲＡＭ、ＵＩＭ１３との間のインターフェースを担うＩ／Ｏポート等を備えている。コントローラ１１は、ＵＩＭ１３との間でインターフェースＸを通じて通信可能になっている。そして、コントローラ１１は、携帯端末１の通信（移動体通信網やインターネットを介して行われる通信）処理や携帯端末１のユーザからの操作キーを介した操作指示に応じて各種処理を実行する。このような処理の中で、コントローラ１１は、例えば暗号化処理や認証処理等に係るコマンド信号をインターフェースを通じてＵＩＭ１３へ送信する。また、コントローラ１１は、例えば、電源ＯＮ、又はＵＩＭ１３との間で通信エラーが発生した場合に、インターフェースＸのリセット信号をＵＩＭ１３へ送信するようになっている。
【００２６】
ＣＬＦ１２は、ＮＦＣの規格で規定される非接触通信を行う非接触型ＩＣチップであり、図示しないが、ＣＰＵ、各種プログラム及びデータを記憶する不揮発性メモリ、データを一時記憶するＲＡＭ、ＵＩＭ１３との間のインターフェースを担うＩ／Ｏポート（ＳＷＩＯ）等を備えている。また、ＣＬＦ１２は、非接触のフィールド内で非接触リーダ２との間で各種信号の送受信を行うためのアンテナ１２ａに接続されている。そして、ユーザが携帯端末１を非接触リーダ２に翳すと、非接触リーダ２から送信されたサービス要求に係るコマンド信号をインターフェースＹを通じてＵＩＭ１３へ送信するようになっている。
【００２７】
ＵＩＭ１３は、ＵＩＣＣ(Universal Integrated Circuit Card)の一つであり、従来の
ＳＩＭ（Subscriber Identity Module）をベースに機能を拡張された接触型ＩＣチップを搭載する。図１（Ｂ）は、本実施形態に係るＵＩＭ１３の概要構成例を示すブロック図である。図１（Ｂ）に示すように、ＵＩＭ１３は、信号処理を担うＣＰＵ(Central Processing Unit)１３１、所定のデータやプログラムを記憶するＲＯＭ(Read Only Memory)１３２、データを一時記憶するＲＡＭ(Random Access Memory)１３３、所定のデータやプログラム等を記憶する不揮発性メモリ（例えばフラッシュメモリやＥＥＰＲＯＭ）１３４、及びＩ／Ｏポート（入出力ポート）１３５等を備えている。なお、ＵＩＭ１３はＩＣカード基体Ｂに設けられ、ＩＣカードとして携帯端末１に実装される。Ｉ／Ｏポート１３５は、図１（Ｂ）に示すように、ＩＳＯ／ＩＥＣ７８１６等によって定められた、Ｃ１〜Ｃ８の８個の端子（接触型ＩＣチップの接続端子）を有する。ここで、Ｃ１端子は電源端子（ＶＣＣ）であり、Ｃ５端子はグランド端子（ＧＮＤ）である。また、Ｃ２端子は、リセット端子（ＲＳＴ）であり、コントローラ１１とのインターフェースＸのリセット信号を入力するために用いられる。また、Ｃ３端子は、クロック端子（ＣＬＫ）であり、コントローラ１１とのインターフェースＸのクロックを入力するために用いられる。また、Ｃ７端子（第一の通信手段の一例）は、コントローラ１１との間のインターフェースＸを担う端子であり、ＵＩＭ１３とコントローラ１１との間の通信のために用いられる。また、Ｃ６端子（第二の通信手段の一例）は、ＣＬＦ１１との間のインターフェースＹを担う端子であり、ＣＬＦ１２とＵＩＭ１３との間の通信のために用いられる。なお、ＣＬＦ１２とＵＩＭ１３間の通信プロトコルには、上述したようにＳＷＰが適用される。
【００２８】
また、ＵＩＭ１３の不揮発性メモリ１３４に記憶されるプログラムとしては、オペレーティングシステム（以下、「ＯＳ」という）、複数種類のアプリケーションプログラム、及び本発明のＩＣチップ用処理プログラムがある。ここで、アプリケーションプログラム（以下、「アプリケーション」という）は、ＣＰＵ１３１により実行される複数のコマンド（命令）及びそれらの実行順序を規定するプログラムである。アプリケーション中のコマンドの処理をコマンド処理という。また、ＵＩＭ１３の不揮発性メモリ１３４には、電話番号や加入者ＩＤ等の個人情報、及び電子マネーの残高情報等が記憶されている。
【００２９】
そして、ＵＩＭ１３のＣＰＵ１３１（第一の実行手段）は、コントローラ１１から接触型ＩＣチップの接続端子を介してインターフェースＸのリセット信号（接触通信に関するリセット信号）が受信された場合に、当該インターフェースＸのリセット処理（接触通信に関するリセット処理）を実行する。このリセット処理は、ハードウェアの初期化、コントローラ１１に対するリアクション（インターフェースリセットの初期応答）、ＯＳの初期化（ＯＳの動作パラメータの初期化）、及びコマンド処理を実行するための準備処理から構成される。ここで、ハードウェアの初期化には、例えば、ＵＩＭ１３のクロック設定、記憶装置（ＲＡＭ等）及び周辺回路（乱数生成器，暗号コプロセッサ等）の動作確認、記憶装置（ＲＡＭ等）の初期化、スタックポインタ初期化、周辺回路の初期設定等が含まれる。また、コントローラ１１に対するリアクションは、幾つかの処理時間制約が存在し（制約時間内に応答する必要がある）、かつ処理時間にばらつきが少ない。一方、準備処理は、直接的な処理時間制約が無い代わりに、ＵＩＭ１３がリセットされた時のＯＳの状態によって処理時間にかなりのばらつきが発生し得る。この準備処理の例としては、リセット信号の受信により中断された処理（アプリケーション全体の処理、アプリケーション中のコマンド処理）を回復する回復処理が挙げられる。インターフェースリセットが発生した時になんらかの処理が実行されていた場合は、その処理内容が処理中断情報として記録される。結果的にこの処理はインターフェースリセットによって処理が中断されるが、上記準備処理の一環として中断状態を回復する処理が実行されるようになっている。なお、インターフェースリセットが発生した時に何も処理されていなかった場合は、準備処理として上記回復処理は含まれない。
【００３０】
また、ＵＩＭ１３のＣＰＵ１３１（第二の実行手段）は、ＣＬＦ１２から接触型ＩＣチップの接続端子を介して、非接触通信用のサービス要求に係るコマンド信号が受信された場合に、当該コマンド信号（サービス要求）に応じたコマンド処理（つまり、サービス要求に対応する何れかのアプリケーションのコマンド処理）を実行し、当該処理の結果を示す処理応答を接触型ＩＣチップの接続端子を介してＣＬＦ１２へ行う（返信する）ようになっている。ここで、非接触インターフェースを使うサービス要求処理も、サービスレベルでの処理全体に処理時間制約が存在すると同時に、サービス要求処理を構成する幾つかのコマンド処理に対しても夫々処理時間制約が存在する場合がある。つまり、制約時間内にサービス要求に対して応答する必要がある。
【００３１】
そして、本実施形態においては、コントローラ１１より受信されたリセット信号に応じたリセット処理と、ＣＬＦ１２より受信されたコマンド信号に応じたコマンド処理（処理時間制約の厳しいサービス要求に応じたコマンド処理）が同時に発生（競合）した場合、つまり、インターフェースＸのリセット処理の実行中にＣＬＦ１２からコマンド信号が受信された場合、ＵＩＭ１３のＣＰＵ１３１は、以下の処理を行うことになる。
【００３２】
すなわち、ＵＩＭ１３のＣＰＵ１３１は、上記リセット処理のうち、受信されたコマンド信号に応じたコマンド処理を実行するために必要な処理を実行した後、上記受信されたコマンド信号に応じたコマンド処理を実行する。ここで、コマンド信号に応じたコマンド処理を実行するために必要な処理には、ハードウェアの初期化、コントローラ１１に対するリアクション、及びＯＳの初期化、更にはコマンド処理を実行するための準備処理の中から、予め設定された（不揮発性メモリに記憶された）判定情報に基づいて特定（特定手段による）された必要最低限の準備処理が含まれる。そして、この必要最低限の準備処理以外の準備処理は、コマンド信号に応じたコマンド処理の実行後に実行されることになる。
【００３３】
図２は、コントローラ１１より受信されたリセット信号に応じたリセット処理と、ＣＬＦ１２より受信されたコマンド信号に応じたコマンド処理が同時に発生した場合の携帯端末１における動作シーケンスの一例を示す図である。この必要最低限の準備処理以外の準備処理は、図２に示すように優先順位が下げられ、ＣＬＦ１２への処理応答後に実行（コマンド受信待機状態に移る前に優先順位が下げられた準備処理が実行）される。これにより、インターフェースのリセット処理と重なったサービス要求に応じたコマンド処理の処理時間制約を守りながら処理結果を応答することが可能になる。
【００３４】
ここで、上記必要最低限の準備処理を特定するための判定情報には、例えば、以下の（ａ）〜（ｉ）の何れかに示すリストが含まれる。
（ａ）中断時に記録されていたアプリケーションの処理が、その成功如何に関わらず実行可能なアプリケーションリスト（アプリケーションを識別する識別情報が記述されたリスト）
（ｂ）中断時に記録されていたアプリケーションの処理が、その成功如何に関わらず実行可能なアプリケーションのコマンドリスト（アプリケーションを識別する識別情報及びその中のコマンドを識別する識別情報等が記述されたリスト）
（ｃ）中断時に記録されていたアプリケーションの処理が、その成功如何に関わらず実行不可能なアプリケーションリスト  
（ｄ）中断時に記録されていたアプリケーションの処理が、その成功如何に関わらず実行不可能なアプリケーションのコマンドリスト
（ｅ）（ａ）〜（ｄ）に記載された中断時の処理「アプリケーションの処理」を「アプリケーションのコマンド処理」に置き換えた場合の上記リスト
（ｆ）（ａ）〜（ｄ）に記載された中断時の処理「アプリケーションの処理」を「不揮発性メモリのある領域に対する更新処理」に置き換えた場合の上記リスト
（ｇ）（ａ）〜（ｄ）に記載された中断時の処理「アプリケーションの処理」を「あるアプリケーション集合に含まれるアプリケーションの処理」に置き換えた場合の上記リスト（ｈ）（ａ）〜（ｄ）に記載された中断時の処理「アプリケーションの処理」を「あるコマンド集合に含まれるコマンド処理」に置き換えた場合の上記リスト
（ｉ）（ｂ），（ｄ）に記載された中断時の処理「アプリケーションの処理」を「アプリケーションのコマンド処理及びこのときのコマンド信号の受信インターフェース」に置き換え、且つ、（ｂ），（ｄ）に記載された「コマンドリスト」を、「アプリケーション、コマンド、及びインターフェースの組合せリスト」に置き換えた場合の上記リスト
【００３５】
ＵＩＭ１３のＣＰＵ１３１は、上記必要最低限の準備処理を特定するための判定情報に含まれる上記リストから判断して、中断時に処理中断情報として記録されていた処理の回復処理が、サービス要求に応じたコマンド処理に関係しない場合、サービス要求に応じたコマンド処理を実行するために必要な処理ではないので、当該中断時に記録されていた処理の回復処理の優先順位を下げて待機させ、その代わりにサービス要求に応じたコマンド処理を先に実行することで処理制約時間内に処理応答をＣＬＦ１２へ返信する。言い換えれば、各処理を分割したサブタスクに対してスケジューリングを行うことで、処理時間制約を守りながらサービス要求に対して応答するのである。
【００３６】
次に、図３〜図７を参照して、本実施形態に係る携帯端末の動作について説明する。
【００３７】
図３は、本実施形態に係るＵＩＭ１３におけるソフトウェア機能ブロックの一例を示す図である。図３に示す例では、同時に機能（ソフトウェア的に機能）可能なインターフェースＸ，Ｙ及びそれらの制御機能を有するＵＩＭ１３には、アプリケーションＡ〜Ｄが格納されている。なお、図３に示す判定情報は、ＵＩＭ１３に格納された全アプリケーション（Ａ〜Ｄ）分を実行環境がまとめて持つように構成しても良いし、夫々のアプリケーションが保持し必要に応じて実行環境が参照するように構成しても良い。何れにしても、判定情報は、ＵＩＭ１３外部から設定可能であり、更新も可能である。
【００３８】
図４及び図５は、中断時に処理中断情報として記録されていた処理等と当該処理等に対応する判定情報の例を示す図である。
【００３９】
図４（Ａ）は、上記（ａ）の場合の例を示しており、例えば、アプリケーション（Application）Ｄのコマンド（Command）の処理実行中にPower lossが発生し、その後、携帯端末１が非接触リーダ２に翳されることによるコマンド処理と、ＵＩＭ１３への電力供給によるインターフェースＸのリセット処理とが競合するケースを想定している。
【００４０】
図４（Ｂ）は、上記（ｅ）の場合の（ｂ）の置き換えの例を示しており、例えば、アプリケーション（Application）Ｄのコマンド（Command）Ｂの処理実行中にPower lossが発生し、その後、携帯端末１が非接触リーダ２に翳されることによるコマンド処理と、ＵＩＭ１３への電力供給によるインターフェースＸのリセット処理とが競合するケースを想定している。
【００４１】
図５（Ａ）は、上記（ｆ）の場合の（ｃ）の置き換えの例を示しており、例えば、アプリケーション（Application）Ｄのコマンド（Command）Ａの処理過程における変数First Nameの更新中にPower lossが発生し、その後、携帯端末１が非接触リーダ２に翳されることによるコマンド処理と、ＵＩＭ１３への電力供給によるインターフェースＸのリセット処理とが競合するケースを想定している。なお、変数名である“First Name”は、実際には、アドレスとレングス（例えば0x0010,4：指定アドレスから４バイトの領域）、アドレスの範囲（例えば0x0010,0x0013間の領域）、またはＯＳが一意に特定可能なＩＤなどの
データで表される。
【００４２】
図５（Ｂ）は、上記（ｉ）の場合の（ｂ）の置き換えの例を示しており、コマンド信号が受信されることによるアプリケーション（Application）Ｄのコマンド（Command）Ａの処理実行中にPower lossが発生し、その後、携帯端末１が非接触リーダ２に翳されることによるコマンド処理と、ＵＩＭ１３への電力供給によるインターフェースＸのリセット処理とが競合するケースを想定している。
【００４３】
図６は、本実施形態に係るＵＩＭ１３のＣＰＵ１３１における電力供給検知時の処理を示すフローチャートである。図７は、本実施形態に係るＵＩＭ１３のＣＰＵ１３１における割込み処理を示すフローチャートである。
【００４４】
図６に示す処理は、例えば図４又は図５で想定されるようなケースにおいて、ＵＩＭ１３への電力供給等が検知された場合に開始される。図６に示す処理おいて、ＵＩＭ１３のＣＰＵ１３１は、コントローラ１１からリセット信号を受信すると（ステップＳ１）、リセット処理を開始し、先ず、上述したようにハードウェアの初期化を実行する（ステップＳ２）。
【００４５】
次いで、ＵＩＭ１３のＣＰＵ１３１は、コントローラ１１に対するリアクション（インターフェースリセットの初期応答）を実行する（ステップＳ３）。
【００４６】
次いで、ＵＩＭ１３のＣＰＵ１３１は、ＯＳの初期化（ＯＳの動作パラメータの初期化）を実行する（ステップＳ４）。このＯＳの初期化処理は、ＯＳ初期状態を構築するための処理であり、アプリケーションに無関係で必須の処理である。
【００４７】
次いで、ＵＩＭ１３のＣＰＵ１３１（中断処理判定機能）は、処理中断情報を参照して中断時に記録されていた処理の有無を確認することにより中断された処理が有るか否かを判定する（ステップＳ５）。そして、ＵＩＭ１３のＣＰＵ１３１は、中断された処理が無いと判定した場合には（ステップＳ５：ＮＯ）、図６に示す処理を終了し、中断された処理が有ると判定した場合には（ステップＳ５：ＹＥＳ）、ステップＳ６に進む。
【００４８】
ステップＳ６では、ＵＩＭ１３のＣＰＵ１３１は、ＣＬＦ１２から、サービス要求に係るコマンド信号を受信したか否かを判定する。そして、ＵＩＭ１３のＣＰＵ１３１は、サービス要求に係るコマンド信号を受信していない場合には（ステップＳ６：ＮＯ）、ステップＳ７に進み、サービス要求に係るコマンド信号を受信した場合には（ステップＳ６：ＹＥＳ）、ステップＳ８に進む。
【００４９】
ステップＳ７では、ＵＩＭ１３のＣＰＵ１３１は、コマンド処理を実行するための準備処理として、中断された処理を回復する回復処理（中断された処理の回復処理）を実行し、ステップＳ１４に進む。
【００５０】
一方、ステップＳ８では、ＵＩＭ１３のＣＰＵ１３１は、中断時に記録されていた処理を基に判定情報を選択する（ステップＳ８）。例えば、中断時に記録されていた処理が、図４（Ａ）に示すようにアプリケーションＤである場合、当該アプリケーションＤに対応する判定情報（アプリケーションＡとＣを識別する識別情報が記述されたリストを含む）が選択され、不揮発性メモリ１３４から取得される。
【００５１】
次いで、ＵＩＭ１３のＣＰＵ１３１は、中断された処理の回復処理の内容を確認し（ステップＳ９）、コマンド処理前に実行すべき回復処理（言い換えれば、上記受信されたコマンド信号に応じたコマンド処理に関係する回復処理（上述した必要最低限の準備処理））が有るか否かを判定する（ステップＳ１０）。この判定は、上記ステップＳ６で受信されたコマンド信号と、上記ステップＳ８で選択された判定情報に基づいて行われる。例えば、図４（Ａ）又は（Ｂ）のケースにおいて、判定情報に含まれるリストに記述された処理が、受信されたコマンド信号が関係する処理（例えば、当該コマンド信号（コマンド）を含むアプリケーションの処理、又は当該コマンド信号（コマンド）と一致するコマンドの処理）である場合には、コマンド処理前に実行すべき回復処理がないと判定される。これは、中断された処理の回復処理に関わらずコマンド処理を実行できるためである。
【００５２】
そして、ＵＩＭ１３のＣＰＵ１３１（特定手段の一例）は、コマンド処理前に実行すべき回復処理が有ると判定した場合には（ステップＳ１０：ＹＥＳ）、当該コマンド処理前に実行すべき回復処理を特定し、ステップＳ１１に進む。ここで特定されたコマンド処理前に実行すべき回復処理以外の回復処理があれば、この回復処理の優先順位が下げられる設定がなされる。
【００５３】
一方、ＵＩＭ１３のＣＰＵ１３１は、コマンド処理前に実行すべき回復処理が無いと判定した場合には（ステップＳ１０：ＮＯ）、ステップＳ１２に進む。
【００５４】
ステップＳ１１では、ＵＩＭ１３のＣＰＵ１３１は、コマンド処理前に実行すべき回復処理として特定した、中断された処理の回復処理を実行し、ステップＳ１２に進む。
【００５５】
ステップＳ１２では、ＵＩＭ１３のＣＰＵ１３１は、上記ステップＳ６で受信されたコマンド信号（サービス要求）に応じたコマンド処理を実行し、当該処理の結果を示す処理応答をＣＬＦ１２へ返す。
【００５６】
次いで、ＵＩＭ１３のＣＰＵ１３１は、中断された処理の回復処理を実行し（ステップＳ１３）、ステップＳ１４に進む。ここで、上記ステップＳ１１を経由してきた場合において優先順位が下げられた回復処理があれば、この回復処理が実行される。
【００５７】
ステップＳ１４では、ＵＩＭ１３のＣＰＵ１３１は、上記処理中断情報をクリアする。そして、ＵＩＭ１３のＣＰＵ１３１は、図６に示す処理を終了し、インターフェースＸ又はＹを通じたコマンド信号の受信確認、及び受信されたコマンド信号に応じたコマンド処理に移行（通常の処理に移行）する。
【００５８】
一方、図７に示す処理は、インターフェースＹを通じたコマンド信号の受信により割込みが発生したときの処理である。この割込みは、例えば、図６に示す処理におけるステップＳ２のハードウェアの初期化後、任意に発生し、これにより処理が中断され、図７に示す処理が開始される。図７に示す処理おいて、ＵＩＭ１３のＣＰＵ１３１は、先ず、コマンド信号の受信処理（コマンド受信処理）を行い（ステップＳ２１）、続いて、中断された処理の回復処理を実行中であるか否かを判定する（ステップＳ２２）。そして、ＵＩＭ１３のＣＰＵ１３１は、中断された処理の回復処理を実行中でないと判定した場合には（ステップＳ２２：ＮＯ）、図７に示す処理（割込み処理）を終了し、中断された処理の回復処理を実行中であると判定した場合には（ステップＳ２２：ＹＥＳ）、ステップＳ２３に進む。
【００５９】
なお、ステップＳ２３及びＳ２４の処理は、図６に示すステップＳ８及びＳ９の処理と同様である。次いで、ステップＳ２５では、ＵＩＭ１３のＣＰＵ１３１は、上記ステップＳ２２で未実行、且つコマンド処理前に実行すべき回復処理が有るか否かを判定し、未実行、且つコマンド処理前に実行すべき回復処理が有ると判定した場合には（ステップＳ２５：ＹＥＳ）、ステップＳ２６に進み、そうでないと判定した場合には（ステップＳ２５：ＮＯ）、ステップＳ２７に進む。そして、ＵＩＭ１３のＣＰＵ１３１は、ステップＳ２７（上記ステップＳ１２と同様）の実行後、図７に示す処理（割込み処理）を終了する。なお、この割込み処理終了後は、図６に示す処理において、中断されたポイントから処理が再開される。
【００６０】
以上説明したように、上記実施形態によれば、コントローラ１１より受信されたリセット信号に応じたリセット処理と、ＣＬＦ１２より受信された、サービス要求に係るコマンド信号に応じたコマンド処理が同時に発生した場合に、ＵＩＭ１３は、上記リセット処理のうち、コントローラ１１に対するリアクション、及び必要最低限の準備処理を実行した後、上記受信されたコマンド信号に応じたコマンド処理を実行し、その後に必要最低限の準備処理以外の準備処理（例えば、サービス要求に応じたコマンド処理に関係しない処理の中断状態を回復する処理）を実行するように構成したので、リセット処理の時間制約を守りながらサービス要求に応じたコマンド処理を優先して実行することができ、処理時間制約の厳しいサービス要求に対して処理結果を応答することができる。
【符号の説明】
【００６１】
１  携帯端末
２  非接触リーダ
１１  コントローラ
１２  ＣＬＦ
１３  ＵＩＭ
【図１】
0005724701.tif 000002
【図２】
0005724701.tif 000003
【図３】
0005724701.tif 000004
【図４】
0005724701.tif 000005
【図５】
0005724701.tif 000006
【図６】
0005724701.tif 000007
【図７】
0005724701.tif 000008