(57)【要約】      （修正有）【課題】複数のＯＳが実装されたＩＣカードにおいて、一連のコマンドシーケンス中に他のコマンドの実行が禁止されている規格に対応できるようにする。【解決手段】ＯＳａ３０（ＯＳｂ４０）がコマンド処理するごとに、コマンド履歴記憶手段３１（コマンド履歴記憶手段４１）は、コマンドを処理したプログラム（ＯＳまたはアプリケーション）を示すコマンド履歴情報７１をコマンド履歴領域７０に記憶する。ＯＳａ３０にコマンドが振分けられたときは、コマンド管理手段３２及びアプリケーションＡ５０のコマンド管理手段５１は、コマンド履歴情報７１を参照し、コマンドの実行を管理し、委任管理手段３３は、コマンド履歴情報７１を参照し、ＯＳｂ４０へのコマンド処理の委任を管理する。【選択図】図２
2007122289.tif 000002
【特許請求の範囲】
【請求項１】
複数のＯＳが実装されたＩＣカードにおいて、前記ＩＣカードに実装された各々の前記ＯＳは、端末装置から受信したコマンドを処理したときに、端末装置から受信したコマンドを処理したプログラム、すなわち、前記ＯＳまたは前記ＯＳ上で動作するアプリケーションのいずれかを示すコマンド処理履歴情報を、前記ＩＣカードのメモリに記憶するコマンド処理履歴記憶手段を備え、前記ＩＣカードは、前記コマンド処理履歴記憶手段が記憶した前記コマンド処理履歴情報と事前に定められた規則とに基づいて、コマンド処理を管理するコマンド実行管理手段を備えていることを特徴とするＩＣカード。
【請求項２】
請求項１に記載のＩＣカードにおいて、前記ＩＣカードに備えられた前記ＯＳが、前記コマンド実行管理手段を備えていることを特徴とするＩＣカード。
【請求項３】
請求項１に記載のＩＣカードにおいて、前記ＩＣカードに備えられた前記アプリケーションが、前記コマンド実行管理手段を備えていることを特徴とするＩＣカード。
【請求項４】
請求項１に記載のＩＣカードにおいて、前記ＩＣカードに備えられた前記ＯＳおよび前記アプリケーションが、前記コマンド実行管理手段を備えていることを特徴とするＩＣカード。
【請求項５】
請求項１から請求項４のいずれかに記載のＩＣカードであって、前記ＯＳは、コマンド処理を他の前記ＯＳに委任する委任機能を備え、前記コマンド処理履歴記憶手段が記憶した前記コマンド処理履歴情報と事前に定められた規則とに基づいて、前記委任機能の実行を管理する委任管理手段を備えていることを特徴とするＩＣカード。
【請求項６】
請求項５に記載のＩＣカードにおいて、前記ＯＳに備えられた前記委任管理手段は、少なくとも、他の前記ＯＳにアプリケーションを選択実行するコマンド処理の委任を管理することを特徴とするＩＣカード。
【請求項７】
請求項１から請求項６のいずれかに記載のＩＣカードであって、前記ＩＣカードの揮発性メモリには、前記コマンド処理履歴を記憶する領域が設けられていることを特徴とするＩＣカード。
【請求項８】
複数のＯＳが実装されたＩＣカードのＩＣチップに実装され、ＩＣカードプログラムであって、前記ＩＣチップを、
端末装置から受信したコマンドを処理したときに、端末装置から受信したコマンドを処理したプログラム、すなわち、前記ＯＳまたは前記ＯＳ上で動作するアプリケーションのいずれかを示すコマンド処理履歴情報を、前記ＩＣカードのメモリに記憶するコマンド処理履歴記憶手段、
前記コマンド処理履歴記憶手段が記憶した前記コマンド処理履歴情報と事前に定められた規則とに基づいて、コマンド処理を管理するコマンド実行管理手段、
として機能させるためのＩＣカードプログラム。
【請求項９】
請求項８に記載のＩＣカードプログラムであって、前記ＩＣカードはコマンド処理を他の前記ＯＳに委任する委任機能を備え、前記ＩＣチップを、
前記コマンド処理履歴情報と事前に定められた規則とに基づいて、前記委任機能の実行を管理する委任管理手段として機能させるためのＩＣカードプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のオペレーティングシステムを実装したＩＣカード及びこのＩＣカードに組み込まれるＩＣカードプログラムに関する。
【背景技術】
【０００２】
Ｊａｖａ（登録商標）、ＭＵＬＴＯＳ（登録商標）に代表されるプラットホーム型のオペレーティングシステム（以下、ＯＳ：Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を実装したマルチアプリケーションＩＣカードには、複数のアプリケーションが実装可能である。
【０００３】
このようなマルチアプリケーションＩＣカードにおいては、ＩＳＯ／ＩＥＣ７８１６で規定されている論理チャネルを利用することで、複数のアプリケーションを同時実行することが可能になる。
しかし、実際は、非特許文献１に記述されているように、アプリケーション実行時のセキュリティを保つために、マルチアプリケーションＩＣカードは一つの論理チャネルのみをサポートし、同時に実行できるアプリケーションの数は一つに限定されていることが多い。
【０００４】
一方で、半導体技術の進歩により、多くのメモリを持つＩＣカード向け１チップマイコン（ＣＰＵ、ＲＯＭ、ＲＡＭ、ＥＥＰＲＯＭ、Ｉ／Ｆが一体化されたもの）が開発され、特許文献１で開示している発明を用いるなどして、１枚のＩＣカードに複数のＯＳを実装することも可能になった。
【０００５】
複数のＯＳが実装されたＩＣカード（以下、マルチＯＳカードと記す）においては、たとえＯＳごとで同時実行できるアプリケーションの数が１つであったとしても、複数のＯＳが同時実行することで、結果的に、複数のアプリケーションが同時に実行可能になる。
【０００６】
アプリケーションの規格として、一連のコマンドシーケンス中に、他のコマンドの実行が禁止されている場合、複数のアプリケーションが同時に実行可能であると、一連のコマンドシーケンス中に、他のコマンドが実行できてしまい、マルチＯＳカードにおいては、アプリケーションの規格違反になってしまう場合があった。
【非特許文献１】マルトス推進協議会                      ＭＵＬＴＯＳ開発者ガイド１．３（２．４．３節）
【特許文献１】特開２００３−７６９５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
そこで、上述の問題を鑑みて、本発明は、複数のＯＳが実装されたマルチＯＳカードにおいても、ＯＳやアプリケーションの規格で、一連のコマンドシーケンス中に他のコマンドの実行が禁止されている場合には、その規格に対応がとれるマルチＩＣカード、及び、マルチＩＣカードに組み込まれるＩＣカードプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決する第１の発明は、複数のＯＳが実装されたＩＣカードにおいて、前記ＩＣカードに実装された各々の前記ＯＳは、端末装置から受信したコマンドを処理したときに、端末装置から受信したコマンドを処理したプログラム、すなわち、前記ＯＳまたは前記ＯＳ上で動作するアプリケーションのいずれかを示すコマンド処理履歴情報を、前記ＩＣカードのメモリに記憶するコマンド処理履歴記憶手段を備え、前記ＩＣカードは、前記コマンド処理履歴記憶手段が記憶した前記コマンド処理履歴情報と事前に定められた規則とに基づいて、コマンド処理を管理するコマンド実行管理手段を備えていることを特徴とするＩＣカードである。
【０００９】
第１の発明において、ＩＣカードとは、接触ＩＣカード、非接触ＩＣカード、または、接触データ通信と非接触データ通信の２つの通信機能を備えたデュアルインターフェースＩＣカードのいずれであってもよく、加えて、ＩＣカードの形状は、ＩＣカードのＩＣモジュールの近辺を短冊状に切り取った形状であるＳＩＭ（Subscriber Identity Module）であってもよい。
【００１０】
また、第２の発明は、第１の発明に記載のＩＣカードにおいて、前記ＩＣカードに備えられた前記ＯＳが、前記コマンド実行管理手段を備えていることを特徴とするＩＣカードである。
【００１１】
また、第３の発明は、第１の発明に記載のＩＣカードにおいて、前記ＩＣカードに備えられた前記アプリケーションが、前記コマンド実行管理手段を備えていることを特徴とするＩＣカードである。
【００１２】
また、第４の発明は、第１の発明に記載のＩＣカードにおいて、前記ＩＣカードに備えられた前記ＯＳおよび前記アプリケーションが、前記コマンド実行管理手段を備えていることを特徴とするＩＣカードである。
【００１３】
また、第５の発明は、第１の発明から第４の発明のいずれかに記載のＩＣカードであって、前記ＯＳは、コマンド処理を他の前記ＯＳに委任する委任機能を備え、前記コマンド処理履歴記憶手段が記憶した前記コマンド処理履歴情報と事前に定められた規則とに基づいて、前記委任機能の実行を管理する委任管理手段を備えていることを特徴とするＩＣカードである。
【００１４】
また、第６の発明は、第５の発明に記載のＩＣカードにおいて、前記ＯＳに備えられた前記委任管理手段は、少なくとも、他の前記ＯＳにアプリケーションを選択実行するコマンド処理の委任を管理することを特徴とするＩＣカードである。
【００１５】
また、第７の発明は、第１の発明から第６の発明のいずれかに記載のＩＣカードであって、前記ＩＣカードの揮発性メモリには、前記コマンド処理履歴を記憶する領域が設けられていることを特徴とするＩＣカードである。
【００１６】
また、第８の発明は、複数のＯＳが実装されたＩＣカードのＩＣチップに実装され、ＩＣカードプログラムであって、前記ＩＣチップを、
端末装置から受信したコマンドを処理したときに、端末装置から受信したコマンドを処理したプログラム、すなわち、前記ＯＳまたは前記ＯＳ上で動作するアプリケーションのいずれかを示すコマンド処理履歴情報を、前記ＩＣカードのメモリに記憶するコマンド処理履歴記憶手段、
前記コマンド処理履歴記憶手段が記憶した前記コマンド処理履歴情報と事前に定められた規則とに基づいて、コマンド処理を管理するコマンド実行管理手段、
として機能させるためのＩＣカードプログラムである。
【００１７】
また、第９の発明は、第８の発明に記載のＩＣカードプログラムであって、前記ＩＣカードはコマンド処理を他の前記ＯＳに委任する委任機能を備え、前記ＩＣチップを、
前記コマンド処理履歴情報と事前に定められた規則とに基づいて、前記委任機能の実行を管理する委任管理手段として機能させるためのＩＣカードプログラムである。
【発明の効果】
【００１８】
上述した本発明によれば、前記コマンド処理履歴情報を記憶する前記コマンド処理履歴記憶手段と前記コマンド実行管理手段とを前記ＩＣカードが備えることで、前記ＩＣカードは、前記コマンド処理履歴記憶手段が記憶した前記コマンド処理履歴情報を参照することで、事前に定められたコマンドシーケンスに基づいて、コマンド処理を管理することができる。
【００１９】
また、前記ＩＣカードが前記コマンド処理履歴情報を記憶する領域を揮発性メモリに設定することで、前記ＩＣカードが非活性化されたときに前記コマンド処理履歴情報は消去され、前回の履歴による誤動作を防止することができる。
【００２０】
また、前記ＩＣカードが前記委任管理手段を備え、他のアプリケーションの選択実行を管理することで、必要時には、他の前記ＯＳ上で動作するアプリケーションが実行しないようにすることができる。
【発明を実施するための最良の形態】
【００２１】
ここから、本発明を適用し、複数のＯＳが実装されたＩＣカードであるマルチＯＳカードについて、図を参照しながら詳細に説明する。図１は、本発明が適用されたマルチＯＳカードに実装されるＩＣチップ１０のハードウェア資源を説明する図である。
【００２２】
ＩＣチップ１０にはハードウェア資源として、中央演算装置１１（Central Processing Unit、以下ＣＰＵと記す）、読み出し専用メモリ１３（Read Only Memory、以下ROMと記す）、書換え可能なメモリとしてＥＥＰＲＯＭ１４（Electrically Erasable Programmable Read-Only Memoryの略）、揮発性メモリとしてランダムアクセスメモリ１２（Random Access Memory、以下、ＲＡＭと記す）、図外の端末装置とデータ通信する通信インターフェイス回路であるＩ／Ｆａ１５およびＩ／Ｆｂ１６とを備えている。
【００２３】
ＩＣチップ１０に備えられたＩ／Ｆａ１５とＩ／Ｆｂ１６は、それぞれ異なる通信Ｉ／Ｆ回路である。例えば、Ｉ／Ｆａ１５は、ＩＳＯ／ＩＥＣ７８１６に準じた接触Ｉ／Ｆ用の回路で、Ｉ／Ｆｂ１６は、アンテナなどが接続されＩＳＯ／ＩＥＣ１４４４３に準じた非接触Ｉ／Ｆ用の回路である。
ＩＣチップ１０は、Ｉ／Ｆａ１５とＩ／Ｆｂ１６の２つの通信Ｉ／Ｆ回路を備えているが、Ｉ／Ｆａ１５とＩ／Ｆｂ１６は同時に動作せず、ＩＣチップ１０は、ＩＣチップ１０を活性化した通信Ｉ／Ｆで動作する。
【００２４】
なお、本発明は、マルチＯＳカードに実装されるＩＣチップ１０の仕様を限定するものではなく、マルチＯＳカードの用途に適した仕様のＩＣチップ１０を選択することができる。例えば、ＲＯＭ１３およびＥＥＰＲＯＭ１４の容量については限定しないし、書換え可能なメモリは強誘電体メモリまたはフラッシュメモリ等のＥＥＰＲＯＭ以外のメモリであっても構わない。またＩＣチップ１０はタイマー回路、暗号演算回路等の図示していない他のデバイスを備えていても構わない。
【００２５】
図２は、マルチＯＳカードのソフトウェア構成を示した図である。本発明に係るマルチＯＳカードには、図１に示したＩＣチップ１０のハードウェア資源を利用するためのプログラム群であるカーネル２０（Ｋｅｒｎｅｌ）と、カーネル２０を利用するＯＳとしてＯＳａ３０及びＯＳｂ４０と、ＯＳａ３０上で動作するアプリケーションａ５０と、ＯＳｂ４０で動作するアプリケーションｂ６０が、ソフトウェアとして実装されている。
【００２６】
カーネル２０とは、ＩＣチップ１０のハードウェア資源であるＥＥＰＲＯＭ１４にデータを書き込む機能など、ＩＣチップ１０のハードウェア資源を制御する機能をＯＳに提供するプログラムである。
【００２７】
カーネル２０には、ＩＣチップ１０のハードウェア資源である通信Ｉ／Ｆ回路を利用して、図外の端末装置とデータ通信するための伝送制御モジュールとして、ＩＣチップ１０のＩ／Ｆａ１５を制御し、Ｉ／Ｆａ１５を用いたデータ通信を実現するプログラムであるＩ／Ｆａモジュール２１と、ＩＣチップ１０のＩ／Ｆｂ１６を制御し、Ｉ／Ｆｂ１６に対応したデータ通信を実現するプログラムであるＩ／Ｆｂモジュール２２の２つの伝送制御モジュールを備えている。
【００２８】
更に、カーネル２０は、Ｉ／Ｆａモジュール２１もしくはＩ／Ｆｂモジュール２２が受信したコマンドを、ＯＳａ３０もしくはＯＳｂ４０に振り分ける機能を備え、カーネル２０は、ＩＣチップ１０がＩ／Ｆａ１５で動作しているときは、ＯＳａ３０にコマンドを振り分け、ＩＣチップ１０がＩ／Ｆｂ１６で動作しているときは、ＯＳｂ４０にコマンドを振り分ける。
【００２９】
ＯＳａ３０及びＯＳｂ４０はそれぞれ異なるＯＳで、それぞれのＯＳは、ＯＳ上で動作するアプリケーションが利用するメモリを管理する機能、カーネル２０を利用しＩＣチップ１０のハードウェア資源を操作する機能、処理できないコマンドを他のＯＳに処理を委任する委任機能などを有したプログラムである。
【００３０】
ＯＳａ３０及びＯＳｂ４０が有する委任機能とは、カーネル２０から振り分けられたコマンドを処理できないときに、カーネル２０を経由して、他のＯＳにコマンド処理を委任する機能である。
すなわち、ＯＳａ３０がコマンド処理できないときはＯＳｂ４０にコマンド処理が委任され、ＯＳｂ４０がコマンド処理できないときはＯＳａ３０にコマンド処理が委任される。
【００３１】
ＯＳａ３０およびＯＳｂ４０がこの委任機能を備えることで、Ｉ／Ｆａ１５またはＩ／Ｆｂ１６のいずれの通信Ｉ／Ｆで動作していても、ＯＳａ３０およびＯＳｂ４０は動作する。
なお、この委任機能は、特許文献２の発明を応用することで実現されている。
【特許文献２】特表２００１−５２７６７４
【００３２】
加えて、図２に図示しているように、ＯＳａ３０は、コマンド処理の履歴を記憶するコマンド履歴記憶手段３１、コマンドの実行を管理するコマンド管理手段３２、委任機能を管理する委任管理手段３３を備えている。
また、ＯＳｂ４０は、コマンド履歴記憶手段４１、コマンド管理手段４２及び委任管理手段４３を備えている。
ここから、上述した手段について説明をするが、コマンド履歴記憶手段３１とコマンド履歴記憶手段４１、コマンド管理手段３２とコマンド管理手段４２、および、委任管理手段３３と委任管理手段４３はそれぞれ同じ機能を有するため、ここでは、ＯＳａ３０に備えられた各手段のみを説明する。
【００３３】
ＯＳａ３０に備えられたコマンド履歴記憶手段３１とは、コマンドを処理したプログラム（ここでは、ＯＳａ３０またはアプリケーションａ５０）を示すコマンド履歴情報７１を記憶する手段である。
【００３４】
コマンド履歴情報７１を記憶するために、マルチＯＳカードのＲＡＭ１２には、ＯＳａ３０およびＯＳｂ４０の双方からアクセスでき、コマンド履歴情報７１を記憶するための領域であるコマンド履歴領域７０が設けられている。
【００３５】
図３は、コマンド履歴領域７０を説明するための図である。ＲＡＭ１２に設けられたコマンド履歴領域７０には、ＯＳａ３０によって、カーネル２０から振り分けられたコマンドを処理したプログラムを示す情報であるコマンド履歴情報７１が、コマンドが処理されるごとに記憶される。
【００３６】
例えば、ＯＳａ３０がコマンドを処理したときは、ＯＳａ３０がコマンド処理をしたことを示すコマンド履歴情報７１がコマンド履歴領域７０に追加される。アプリケーションａ５０がコマンドを処理したときは、アプリケーションａ５０がコマンド処理をしたことを示すコマンド履歴情報７１がコマンド履歴領域７０に追加される。
また、ＯＳａ３０がＯＳｂ４０にコマンド処理を委任したときは、ＯＳｂ４０がコマンド履歴情報７１をコマンド履歴領域７０に記憶する。
【００３７】
ＯＳａ３０に備えられたコマンド管理手段３２とは、ＲＡＭ１２に設けられたコマンド履歴領域７０を参照して、カーネル２０から振り分けられたコマンドの実行を管理する手段である。
ＯＳａ３０のコマンド管理手段３２がコマンドの実行を管理するときは、ＯＳａ３０は、コマンド履歴領域７０から前回のコマンド履歴情報７１を参照することで、ＯＳａ３０のコマンドの実行を管理する。
【００３８】
例えば、ＯＳａ３０の規格として、ＯＳａ３０の一連のコマンドシーケンス中に他のコマンドの動作が禁じられているときは、コマンド履歴情報７１を参照することで、ＯＳａ３０のコマンド管理手段３２が、ＯＳａ３０の一連のコマンドシーケンス中に、他のコマンドの動作していた場合は、他のコマンドの動作を禁止する。
【００３９】
ＯＳａ３０に備えられた委任管理手段とは、ＯＳａ３０が有する委任機能の実行を管理する手段である。ＯＳａ３０がカーネル２０から振分けられたコマンドをＯＳｂ４０に委任するときは、コマンド履歴領域７０に記憶されたコマンド履歴情報７１を参照し、ＯＳｂ４０への委任を管理する。
【００４０】
例えば、ＯＳａ３０の規格として論理チャネルのサポート数が一つであり、ＯＳａ３０上でアプリケーションａ５０が動作しているときに、他のアプリケーションの実行が禁じされているときは、ＯＳａ３０は、アプリケーションを選択実行するコマンド処理をＯＳｂ４０に委任する動作を行わない。
【００４１】
図２に示したように、アプリケーションａ５０のコマンドの実行を管理するコマンド管理手段５１を備え、アプリケーションｂ６０はコマンド管理手段６１を備えている。
コマンド管理手段５１とコマンド管理手段６１とは同じ機能を有するため、ここでは、アプリケーションａ５０に備えられたコマンド管理手段５１のみを説明する。
【００４２】
コマンドをアプリケーションａ５０がコマンド処理する場合は、ＯＳａ３０からアプリケーションａ５０に、コマンドと共に、コマンド履歴領域７０に記憶されたコマンド履歴情報７１が引渡される。
【００４３】
アプリケーションａ５０の規格として、アプリケーションａ５０の実行中に、他のアプリケーションの実行が禁止されているにも関わらず、Ｉ／Ｆａ１５でアプリケーションｂ６０がコマンド処理をしたことを示すコマンド履歴情報７１がコマンド履歴領域７０に記憶されていれば、コマンド管理手段５１はそれ以降のアプリケーションａ５０の処理を禁止する。
【００４４】
ここから、マルチＯＳカードにおいて、コマンドおよび委任機能の実行を管理する手順を説明する。図４は、マルチＯＳカードがＩ／Ｆａ１５で動作しているときに、ＯＳａ３０がコマンドおよび委任機能の実行を管理する手順を示したフロー図である。
【００４５】
この手順の最初のステップＳ１は、マルチＯＳカードが端末装置からコマンドを受信するステップである。このステップでは、マルチＯＳカードのカーネル２０のＩ／Ｆａモジュール２１が、端末装置からコマンドを受信する。
【００４６】
次のステップＳ２は、ステップＳ１で受信したコマンドの処理が振り分けられるステップである。このステップにおいては、マルチＯＳカードがＩ／Ｆａ１５で動作しているので、カーネル２０は、ＯＳａ３０にコマンドを振り分ける。
【００４７】
次のステップＳ３は、ＯＳａ３０がコマンドを翻訳するステップである。このステップにおいて、ＯＳａ３０は実行するコマンドの識別子（例えば、ＩＳＯ／ＩＥＣ７８１６のＣＬＡ、ＩＮＳなど）を解釈し、ＯＳａ３０のコマンドもしくは解釈できないコマンドであればステップＳ４に進み、ＯＳａ３０上で動作するアプリケーションａ５０のコマンドであれば、アプリケーションａ５０にコマンドを引渡し、アプリケーションがコマンド処理するプロセスであるアプリケーション処理（Ｓ１０）が実行される。
なお、ＯＳａ３０が解釈できないコマンドであった場合は、ＯＳａ３０はカーネル２０を介してＯＳｂ４０にコマンド処理を委任することになる。
【００４８】
ステップＳ４は、コマンド履歴領域７０を参照し、コマンドの実行または委任の実行を管理するステップである。このステップで、ＯＳａ３０はコマンド履歴領域７０に記憶されているコマンド履歴情報７１を参照し、予め定められている規則（例えば、ＯＳａ３０の規格）でＯＳａ３０のコマンド実行またはコマンドの委任が許可さるときは、ステップＳ５に進み、許可されないときは、端末装置に返信する応答データをエラーメッセージとし、ステップＳ９に進む。
【００４９】
ステップＳ５では、ＯＳａ３０はＯＳａのコマンドを実行するか、ＯＳｂ４０のコマンド処理を委任するか判断するステップである。ステップＳ３でＯＳａ３０のコマンドと解釈できたときはステップＳ６に進み、コマンド処理を委任するときはステップＳ７に進む。
【００５０】
ステップＳ６ではＯＳａ３０がコマンドを処理し、ステップＳ８に進む。ステップＳ７では、ＯＳａ３０がＯＳｂ４０にコマンド処理を委任して、ステップＳ１で受信したコマンドは、ＯＳｂ４０またはアプリケーション６０で処理され、ステップＳ８に進む。
【００５１】
ステップＳ８は、処理したコマンドのコマンド履歴情報７１がコマンド履歴領域７０に記憶されるステップである。このステップにおいては、ＯＳａ３０またはアプリケーション５０がコマンドを処理したときはＯＳａ３０が、ＯＳｂ４０またはアプリケーション６０がコマンドを処理したときはＯＳｂ４０が、コマンド履歴領域７０にコマンド履歴情報７１を記憶する。
【００５２】
ステップＳ９は、コマンドの応答データが返送されるステップである。このステップでは、カーネル２０はＯＳａ３０から応答データを受け取り、Ｉ／Ｆａモジュール２１は応答データを返信する。
このステップでＩ／Ｆａモジュール２１が返信する応答データは、ＯＳａ３０、アプリケーション５０、ＯＳｂ４０またはアプリケーション６０のいずれかがコマンドを処理したときの応答データか、もしくは、コマンドを処理できなかったときのエラーメッセージである。このステップをもって、図４で示した手順は終了する。
【００５３】
図５は、図４で示したアプリケーション処理の手順を示したフロー図である。この手順の最初のステップＳ１１では、アプリケーションａ５０のコマンド管理手段５１は、ＯＳａ３０から引渡されたコマンド履歴領域７０に記憶されているコマンド履歴情報７１を参照し、予め定められている規則（例えば、アプリケーションａ５０の規格）でコマンドの実行が許可さるときはステップＳ１２に進み、許可されないときは、コマンド処理が許可されないことを意味するエラーメッセージをＯＳａ３０に引渡してこの手順を終了する。
【００５４】
次のステップＳ１２では、アプリケーションａ５０はコマンドを処理し、応答データをＯＳａ３０に引渡してこの手順を終了する。
【図面の簡単な説明】
【００５５】
【図１】ハードウェア資源を説明する図。
【図２】マルチＯＳカードのソフトウェア構成を示した図。
【図３】コマンド履歴領域を説明するための図。
【図４】コマンドの実行および委任機能の実行を管理する手順を示したフロー図。
【図５】アプリケーション処理の手順を示したフロー図。
【符号の説明】
【００５６】
１０  ＩＣチップ
１２  ＲＡＭ
１５  Ｉ／Ｆａ、  １６  Ｉ／Ｆｂ
２０  カーネル
２１  Ｉ／Ｆａモジュール、  ２２  Ｉ／Ｆｂモジュール
３０  ＯＳａ
４０  ＯＳｂ
５０  アプリケーションａ
６０  アプリケーションｂ
３１、４１コマンド履歴記憶手段
３２、４２、５１、６１  コマンド管理手段
３３、４３  委任機能管理手段
７０  コマンド履歴領域
７１  コマンド履歴情報
【図１】
2007122289.tif 000003
【図２】
2007122289.tif 000004
【図３】
2007122289.tif 000005
【図４】
2007122289.tif 000006
【図５】
2007122289.tif 000007