(57)【特許請求の範囲】
【請求項１】
アプリケーションプログラムを書き込むメモリ手段と、該メモリ手段にアプリケーションプログラムを書き込むアドレスを取得する手段と、アプリケーションプログラムを書き込む領域と書き込まれているアプリケーションプログラムを管理する手段と、通信制御機能を有する手段と、ＩＣカードを読み書きする手段と、該ＩＣカードを読み書きする手段に接続された第１および第２のＩＣカード挿入口と、表示手段とを少なくとも有する端末装置と、
一端が前記ＩＣカード挿入口と同様の形状とされた通信ケーブルと、
該通信ケーブルの他端に接続され、かつ少なくとも前記端末装置に登録するアプリケーションプログラムと、該アプリケーションプログラムに関連する情報であるアプリケーション情報と、該端末装置との通信制御機能とを有するホストマシンと、
前記第２のＩＣカード挿入口に挿入される、アプリケーションプログラムの登録時に認証を行なう認証データが書込まれたＩＣカードを具備し、
前記第１のＩＣカード挿入口を利用して、前記端末装置にアプリケーションプログラムを登録できるようにし、前記第２のＩＣカード挿入口を利用して、該アプリケーションプログラムの登録を行う際に、該ＩＣカードの認証データを読み出して認証するようにしたアプリケーション登録端末システムを用いたアプリケーションプログラム登録方法であって、
前記ＩＣカードの認証データを読み出し、上記端末装置のＩＣカード読み書き手段を利用して、認証データとアプリケーションプログラムの書き込みアドレスを前記ホストマシンに送信し、認証された場合、アドレスに対応したアプリケーションプログラムをホストマシンから受け取り、受け取ったアプリケーションプログラムをアプリケーションを書き込む手段を利用して、アプリケーション書き込み領域に書き込みを行なうことで、アプリケーションプログラムの登録を行なうことを特徴としたアプリケーションプログラム登録方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、アプリケーションプログラム登録方法に関し、特に、ＩＣカードを読み書き可能な端末装置に複数のアプリケーションプログラムを登録できるようにするためのアプリケーションプログラム登録方法に関する。
【０００２】
【従来の技術】
従来の端末装置、特に携帯端末にアプリケーションプログラム（以下、アプリケーションと呼ぶ）の登録を行う場合には、筐体を分解し、該筐体から内部にアプリケーションが書き込まれているメモリを取り出して、該メモリを交換したり、もしくは再度メモリの書き換えを行う等の処置を行っていた。この処置のため、端末装置は一旦、アプリケーションの書き換えを行う専門のサービスセンター等に送られ、アプリケーションの書き込みが行われていた。この結果、アプリケーションの書き換えが素早くできず、ユーザの手元に端末が戻ってくるまでにかなり時間が掛かっていた。
【０００３】
一方、筐体を分解しない場合においては、端末装置にアプリケーション書き込みのための専用口を設け、該専用口にホストマシンを接続し、該ホストマシンからアプリケーションの書き込みを行っていたため、端末装置を製造する点においてもコストアップにつながっていた。また、アプリケーション登録時のメモリ書き換え制御を、ホストマシンが管理していたため、該ホストマシンが、端末装置に搭載されている各メモリに対応した制御プログラムを全て保持していなければならなかった。
【０００４】
【発明が解決しようとする課題】
前記のように、ＩＣカードを読み書き可能な端末装置にアプリケーションを登録する時に使用する専用口を設けた場合には、端末装置に該専用口を設けたり、専用のコネクタを端末装置に搭載する等の作業が発生し、端末装置自体のサイズが大きくなったり、増えた部品分がコストアップになるという問題があった。
【０００５】
本発明の目的は、前記した従来技術の問題点を除去し、ＩＣカードを読み書き可能な端末装置にアプリケーションを登録する場合に、アプリケーション登録を行なうための、専用口を新たに設けずに、またアプリケーションの書き換えを簡単に行なえるメモリを使用して、端末装置既存の機構を利用し、簡単に複数のアプリケーションの登録を行なえるアプリケーションの登録可能なアプリケーションプログラム登録方法を提供することにある。
【０００６】
【課題を解決するための手段】
前記目的を達成するために、この発明は、アプリケーションプログラムを書き込むメモリ手段と、該メモリ手段にアプリケーションプログラムを書き込むアドレスを取得する手段と、アプリケーションプログラムを書き込む領域と書き込まれているアプリケーションプログラムを管理する手段と、通信制御機能を有する手段と、ＩＣカードを読み書きする手段と、該ＩＣカードを読み書きする手段に接続された第１および第２のＩＣカード挿入口と、表示手段とを少なくとも有する端末装置と、一端が前記ＩＣカード挿入口と同様の形状とされた通信ケーブルと、該通信ケーブルの他端に接続され、かつ少なくとも前記端末装置に登録するアプリケーションプログラムと、該アプリケーションプログラムに関連する情報であるアプリケーション情報と、該端末装置との通信制御機能とを有するホストマシンと、前記第２のＩＣカード挿入口に挿入される、アプリケーションプログラムの登録時に認証を行なう認証データが書込まれたＩＣカードを具備し、前記第１のＩＣカード挿入口を利用して、前記端末装置にアプリケーションプログラムを登録できるようにし、前記第２のＩＣカード挿入口を利用して、該アプリケーションプログラムの登録を行う際に、該ＩＣカードの認証データを読み出して認証するようにしたアプリケーション登録端末システムを用いたアプリケーションプログラム登録方法であって、前記ＩＣカードの認証データを読み出し、上記端末装置のＩＣカード読み書き手段を利用して、認証データとアプリケーションプログラムの書き込みアドレスを前記ホストマシンに送信し、認証された場合、アドレスに対応したアプリケーションプログラムをホストマシンから受け取り、受け取ったアプリケーションプログラムをアプリケーションを書き込む手段を利用して、アプリケーション書き込み領域に書き込みを行なうことで、アプリケーションプログラムの登録を行なうようにした点に特徴がある。
【０００９】
この特徴によれば、端末装置がもともと有しているＩＣカード挿入口を利用して、端末装置にアプリケーションプログラムを登録できるようになる。また、従来のように端末装置にアプリケーションプログラム書き込みのための専用口を設けことが必要でなくなるので、端末装置を製造するにあたって、コストアップにつながらない。また、端末装置自身にメモリ書き換え制御機能を持たせるようにしたので、ホストマシンにはアプリケーションプログラムのデータを持たせるだけで、アプリケーションプログラム登録時のメモリ書き換え制御機能を管理させないようにすることができる。このため、ホストマシンの負担を軽減することができる。
【００１０】
【発明の実施の形態】
以下に、本発明を、図面を参照して説明する。図１は、本発明の一実施形態の構成を示すブロック図である。
【００１１】
本実施形態の端末システムは、携帯端末１と、ホストマシン２と、該携帯端末１とホストマシン２を接続するインターフェースケーブル２０とで構成されている。前記携帯端末１は、マイコン３と、フラッシュメモリ４と、該マイコン３に接続されかつデータと制御信号を用いてＩＣカードデータ及びアプリケーションプログラムの送受を行うＩＣカード挿入口５と、該マイコン３によってデータや制御信号で制御され、文字情報を表示する表示装置ＬＣＤ７と、該マイコン３と制御信号で接続されている入力装置キーパッド８とで構成されている。
【００１２】
また、前記マイコン３は、フラッシュメモリ４の制御プログラム１０を格納された内蔵ＲＯＭを有すると共に、シリアルインターフェース機能９を持っている。また、前記フラッシュメモリ４は、マイコン３にデータと制御信号で接続され、アプリケーションをロードするための制御プログラム１１と、携帯端末１に登録されているアプリケーションデータを管理する管理テーブル１２と、該アプリケーションデータの書き込み領域１３とを有している。
【００１３】
ホストマシン２は、アプリケーションプログラム１７とアプリケーション情報１９（アプリケーション名、アプリケーション識別子、バージョン情報、使用期限、アプリケーションサイズ）とホストマシンの動作を制御する制御プログラム１８を格納しているメモリ１４と、アプリケーションデータを任意のアドレスに再配置できる再配置機能１６と、シリアルインターフェース機能１５を有している。
【００１４】
携帯端末１とホストマシン２を接続するインターフェースケーブル２０は、携帯端末１側に接続する部分は、携帯端末１のＩＣカード挿入口５と同様の形状になっており、ホストマシン２に接続される側は、ホストマシンのシリアルポートに接続できる形状で構成されている。
【００１５】
次に、本実施形態の動作を、図２を参照して説明する。図２は、図１に示す携帯端末のフラッシュメモリ４にアプリケーションプログラムをロードする処理を説明するフローチャートである。
【００１６】
携帯端末１にアプリケーションプログラムをロードする場合、携帯端末１のＩＣカード挿入口５にインタフェースケーブル２０の一方を挿入し、他方をホストマシン２に接続する。接続終了後、携帯端末１のマイコン３は、シリアルインターフェース機能９を利用して、アプリケーション登録要求のデータをＩＣカード挿入口５を経由してホストマシン２に送信する（ステップＳ１０１）。
【００１７】
ホストマシン２がアプリケーション登録要求のデータを正常に受け取った場合、ホストマシン２はアプリケーション登録確認のデータを携帯端末１に送信する。そうすると、該携帯端末１のマイコン３は、ＩＣカード挿入口５を経由して受け取ったアプリケーション登録確認データが正常か否かの判別を行う（ステップＳ１０２）。正常と判定された場合には、携帯端末１のマイコン３は、フラッシュメモリ４に書込むアプリケーション情報要求のデータをホストマシン２に要求する（ステップＳ１０３）。
【００１８】
ホストマシン２は、アプリケーション情報要求のデータを受け取ると、携帯端末１のフラッシュメモリ４にロードするアプリケーション情報１９（アプリケーション名、アプリケーション識別子、バージョン情報、使用期限、アプリケーションサイズ）を携帯端末１に通知する。アプリケーション情報１９のデータを受け取った携帯端末１は、受け取った情報が正常か否かの判別を、マイコン３の作用によって行う（ステップＳ１０４）。正常と判定された場合には、携帯端末１は、受け取ったアプリケーション情報を表示装置ＬＣＤ７に表示する（ステップＳ１０５）。該アプリケーション情報を登録するかしないかの選択は、使用者が入力装置キーパッド８により行う（ステップＳ１０６）。
【００１９】
アプリケーションの登録を実行すると認識した場合（ステップＳ１０６の判断が肯定）、携帯端末１のマイコン３は、受け取ったアプリケーションのサイズが書き込み可能な、フラッシュメモリ４のアプリケーション書き込み領域１３を検出し、空き領域のアドレスを取得する。携帯端末１のマイコン３は、該取得した空き領域のアドレスをホストマシン２に通知し、アプリケーションプログラム１７を要求する（ステップＳ１０７）。
【００２０】
アプリケーションプログラム１７を書き込むアドレスを受け取ったホストマシン２は、受け取ったアドレスに対応するようにアプリケーションプログラム１７のアドレス情報を再配置機能１６を利用して再配置する。次いで、ホストマシン２は、再配置したアプリケーションプログラムを携帯端末１に２５６バイトづつ送信する。アプリケーションプログラム１７を受け取った携帯端末１のマイコン３は、受け取った情報が正常か否かを判別する（ステップＳ１０８）。そして、正常の場合には、受け取ったアプリケーションプログラムをフラッシュメモリ制御プログラム１０を利用してフラッシュメモリ４に書込み、書き込み終了の通知をホストマシン２に通知する。
【００２１】
書き込み完了通知を受け取ると、ホストマシン２は、アプリケーションプログラム１７を全て送信した場合は、アプリケーションデータ送信完了通知を、まだアプリケーションプログラム１７がある場合には、次のデータを携帯端末１に送信する。携帯端末１のマイコン３は、アプリケーションプログラム送信完了を受け取ると（ステップＳ１０９の判断が肯定）、フラッシュメモリ４の中に書き込まれている登録アプリケーションを管理している管理テーブル１２にあらかじめ受け取っていた、アプリケーション情報１９を書き込み（ステップＳ１１０）、ホストマシン２へアプリケーション登録完了を通知し、アプリケーションの登録処理を終了する。一方、各通信データ受信時に受信したデータにエラーがあると判断した場合には、ホストマシン２に通信エラーを通知する（ステップＳ１１１）。
【００２２】
以上のような処理を行うことにより、ＩＣカードデータを読み書きする挿入口を持った携帯端末において、ＩＣカードの挿入口を利用して、携帯端末にアプリケーションデータのロード（フラッシュメモリへの書き込み）を行うことが可能になる。また、ＲＳ−２３２Ｃのインターフェースを持った携帯端末においては、ホストマシンとの接続をＲＳ−２３２Ｃインターフェースを利用しても、同様にアプリケーションデータのロード（フラッシュメモリへの書き込み）が可能になる。
【００２３】
次に、本発明の携帯端末とホストマシンとの通信プロトコルについての詳細な動作を図３と図４を参照して説明する。図３は図１のマイコン３が行う処理を説明するフローチャートである。また、図４は通信時に使用するコマンドの構成を示す図である。
【００２４】
処理を要求するコマンド、および処理結果を通知する応答コマンドは共に同じ構成を有しており、図４に示されているように、ヘッダ（１バイト）、データ長（２バイト）、コマンド（１バイト）、データ（各コマンドによって可変）、およびチェックサム（１バイト）で構成されている。各構成の意味付けは次のようである。すなわち、ヘッダは、要求（０ｘ００）と応答（０ｘ０１）の判別を行う。データ長は、コマンド、データ、チェックサムまでの長さを示す。コマンドは、各処理ごとのコマンドを示す。データは、各コマンドを実行するために必要なデータを格納する。チェックサムは、ヘッダ、データ長、コマンド、データ迄をバイト単位で加算し、加算結果の１の補数を示す。
【００２５】
ホストマシンより通信データが送信された場合、マイコン３は、最初にヘッダ、データ長の３バイトを取得する。次に、残りのデータ長のデータを取得する（ステップＳ２０１）。データの取得が正常に行われた場合、チェックサムの判別を行う（ステップＳ２０２）。コマンド〜データまでをバイト単位で加算し、加算データの１の補数を取得する。取得した補数データと送信されたコマンドのチェックサムを比較し、一致した場合は正常とし、一致しなかった場合はチェックサムエラーと判断し、ホストマシン２にエラーを送信する（ステップＳ２０８）。  チェックサムが正しい場合、ヘッダの判別を行う（ステップＳ２０３）。要求コマンドの場合は、ヘッダは０ｘ００、応答コマンドの場合は、ヘッダは０ｘ０１、それ以外はヘッダエラーと判断し、ホストマシン２にエラーを送信する（ステップＳ２０８）。ヘッダの判別が正常だった場合、次にコマンドの判別を行う（ステップＳ２０４）。フラッシュメモリ４の制御プログラム１１に登録されているコマンド以外が送信された場合は、コマンドエラーと判別し、ホストマシン２にエラーを送信する（ステップＳ２０８）。
【００２６】
コマンドの判別が正常だった場合、次にデータ長の判別を行う（ステップＳ２０５）。このデータ長が各コマンドに対応したデータ長以外のデータ長であった場合は、データ長エラーとし、ホストマシン２にエラーを送信する（ステップＳ２０８）。データ長が正常だった場合、データの判別を行う（ステップＳ２０６）。データの判別も、各コマンドに対応したデータ以外の場合には、データエラーと判断し、ホストマシン２にエラーを送信する（ステップＳ２０８）。データの判別が正常だった場合、各コマンドに対応した処理をフラッシュメモリ４の制御プログラム１１が実行する（ステップＳ２０７）。上記のような判別を行なうことにより、ホストマシンから送信されるデータ列を判別し、ホストマシンからの要求を正確に制御し、無効なデータを取り除くことができる。
【００２７】
次に、本発明の第２の実施形態を図５を参照して説明する。図５は、本発明の第２の実施形態例の構成を示すブロック図である。
【００２８】
この実施形態が、前記第１の実施形態と異なる所は、マイコン３の内蔵ＲＯＭにＩＣカード制御プログラム２８を格納した点、およびＩＣカード２６が挿入される第２のＩＣカード挿入口６を設けた点である。該ＩＣカード２６には、アプリケーションの登録の適否を認識するための認証データ２７が格納されている。また、前記ＩＣカード制御プログラム２８は、前記第２のＩＣカード挿入口６に挿入されたＩＣカード２６からデータを読み出したり、照合したりする制御等を行う。
【００２９】
次に、本実施形態の動作を、図６を参照して説明する。図６は、図５のマイコンが行う処理を説明するフローチャートである。
【００３０】
携帯端末１にアプリケーションプログラムのロードを行いたい場合、携帯端末１のＩＣカード挿入口５にインタフェースケーブル２０の一方を挿入し、他方をホストマシン２に接続する。また、ＩＣカード挿入口６にＩＣカード２６を挿入する。
【００３１】
次に、携帯端末１のマイコン３は、シリアルインターフェース機能９を利用して、アプリケーションの登録を要求するデータをＩＣカード挿入口５を経由してホストマシン２に送信する（ステップＳ３０１）。該アプリケーション登録要求のデータを正常に受け取った場合、ホストマシン２はアプリケーション登録確認のデータを携帯端末１に送信する。
【００３２】
次に、携帯端末１のマイコン２は、ＩＣカード挿入口５を経由して受け取ったアプリケーション登録確認データが正常であるか否かの判別を行う（ステップＳ３０２）。正常の場合、ＩＣカード挿入口６に挿入されているＩＣカード２６の認証データ２７をＩＣカード制御プログラム２８で読み出す。ＩＣカード２６の認証データ読み出し後、マイコン３は、取得した認証データをＩＣカード挿入口５を経由してホストマシン２に送信する（ステップＳ３０３）。認証データを受け取ったホストマシン２は、認証データを解析し（ステップＳ３０４）、正しい認証データの場合は、ロード（フラッシュメモリへの書き込み）するアプリケーションの情報１９（アプリケーション名、アプリケーション識別子、バージョン情報、使用期限、アプリケーションサイズ）を携帯端末１に通知する。
【００３３】
アプリケーション情報１９のデータを受け取った携帯端末１では、マイコン３が受け取った情報が正常であるか否かの判別を行う（ステップＳ３０５）。正常な場合、携帯端末１は、受け取ったアプリケーション情報１９を表示装置ＬＣＤ７に表示する（ステップＳ３０６）。この時、使用者が登録の有無を入力装置キーパッド８より入力する（ステップＳ３０７）。アプリケーションの登録を実行すると認識した場合、携帯端末１のマイコン３は、受け取ったアプリケーションのサイズが書き込み可能な、フラッシュメモリ４の空き領域を検出し、空き領域のアドレスを取得する。携帯端末１のマイコン３は、取得したアドレスをホストマシン２に通知する（ステップＳ３０８）。
【００３４】
アプリケーションプログラム１７を書き込むアドレスを受け取ったホストマシン２は、受け取ったアドレスに対応するようにアプリケーションプログラム１７のアドレス情報を再配置機能１６を利用して再配置する。そして、再配置したアプリケーションプログラムを携帯端末１に２５６バイトづつ送信する。
【００３５】
アプリケーションプログラムを受け取った携帯端末１のマイコン３は、受け取った情報が正常であるか否かを判別し（ステップＳ３０９）、正常の場合、受け取ったアプリケーションプログラム１７をフラッシュメモリ４に書き込み、書き込み終了の通知をホストマシン２に通知する。
【００３６】
ホストマシン２は書き込み完了通知を受け取ると、アプリケーションプログラム１７を全て送信したか否かの判断を行い、全部送信した場合には（ステップＳ３１０の判断が肯定）、アプリケーションプログラム１７の送信完了通知を、まだアプリケーションプログラム１７がある場合には、次のデータを携帯端末１に送信する。携帯端末１は、ホストマシン２からアプリケーションプログラムデータの送信完了通知を受け取ると、フラッシュメモリ４の中に書き込まれている登録アプリケーションを管理している管理テーブル１２に、予め受け取っていたアプリケーション情報を書き込み（ステップＳ３１１）、ホストマシン２へアプリケーション登録完了を通知し、アプリケーションの登録処理を終了する。一方、各通信データ受信時に受信したデータをエラーと判断した場合には、ホストマシン２に通信エラーを通知する（ステップＳ３１２）。
【００３７】
以上のような処理を行うことにより、ＩＣカードデータを読み書きする挿入口を２つ持った携帯端末１において、一方のＩＣカード挿入口にＩＣカードを挿入し、挿入したＩＣカードをアプリケーション登録の鍵として使用し、他方のＩＣカードの挿入口を利用して、携帯端末１にアプリケーションデータのロード（フラッシュメモリへの書き込み）を行うことが可能になる。また、ＲＳ−２３２Ｃのインターフェースを持った携帯端末においては、ホストマシンとの接続をＲＳ−２３２Ｃインターフェースを利用しても、同様にアプリケーションデータのロード（フラッシュメモリへの書き込み）が可能になる。また、アプリケーションの消去を行なう場合においても、同様にＩＣカードで認証して許可されないと端末からアプリケーションを削除できないようにすることも可能である。
【００３８】
次に、本発明の第３の実施形態を、図７を参照して説明する。図７は、本実施形態の構成を示すブロック図である。
この実施形態が前記第２の実施形態と異なる所は、図５のホストマシン２とインタフェースケーブル２０とを削除し、ＩＣカード挿入口５にＩＣカード２６を挿入するようにした点である。本実施形態では、ＩＣカード挿入口６を削除するようにしても良い。
【００３９】
該ＩＣカード２６には、アプリケーションの登録の適否を判別する鍵となる暗証番号データ２７と、アプリケーションプログラム２９と、アプリケーション情報３０（アプリケーション名、アプリケーション識別子、バージョン情報、使用期限、アプリケーションサイズ）と、アプリケーションプログラムを特定のアドレスに再配置する再配置機能３２とが格納されている。
【００４０】
次に、本実施形態の動作を、図８を参照して説明する。図８は、図７のマイコンが行う処理を説明するフローチャートである。
【００４１】
携帯端末１にアプリケーションプログラムのロードを行いたい場合、携帯端末１のＩＣカード挿入口５にＩＣカード２６を挿入する。設定終了後、携帯端末１のマイコン３は、ＩＣカード制御プログラム２８を使用して、アプリケーションの登録要求のデータをＩＣカード挿入口５を経由してＩＣカード２６に送信する（ステップＳ４０１）。ＩＣカード２６がアプリケーション登録要求のデータを正常に受け取った場合、アプリケーション登録確認のデータを携帯端末１に送信する。次に、携帯端末１のマイコン３は、ＩＣカード挿入口５を経由して受け取ったアプリケーション登録確認データが正常か否かの判別を行う（ステップＳ４０２）。正常の場合、携帯端末１の使用者に入力装置キーパッド８より、暗証番号の入力を実行させる（ステップＳ４０３）。マイコン３は、携帯端末１の使用者の入力した暗証番号をＩＣカード挿入口５を経由してＩＣカード２６に送信し、ＩＣカードの認証プログラムを起動する。
【００４２】
そうすると、ＩＣカード２６は該認証プログラムの作用により、暗証番号データ２７を参照して、正しい暗証番号が入力されたか否かの判断をする（ステップＳ４０４）。正しい暗証番号が入力されていた場合には、ロード（フラッシュメモリへの書き込み）するアプリケーションの情報３０（アプリケーション名、アプリケーション識別子、バージョン情報、使用期限、アプリケーションサイズ）を携帯端末１に通知する。携帯端末１のマイコン３は、アプリケーション情報３０のデータを受け取ると、受け取った情報が正常であるか否かの判別を行う（ステップＳ４０５）。正常な場合には、携帯端末１は、受け取ったアプリケーション情報３０を表示装置ＬＣＤ７に表示する（ステップＳ４０６）。この時、使用者はアプリケーションプログラムの登録の有無を入力装置キーパッド８より入力する（ステップＳ４０７）。
【００４３】
アプリケーションプログラムの登録を実行すると認識された場合、携帯端末１のマイコン３は、受け取ったアプリケーションのサイズが書き込み可能な、フラッシュメモリ４の空き領域を検出し、空き領域のアドレスを取得する。携帯端末１のマイコン３は、取得したアドレスをＩＣカード２６に送信する（ステップＳ４０８）。アプリケーションプログラム２９を書き込むアドレスを受け取ったＩＣカード２６は、受け取ったアドレスに対応するようにアプリケーションプログラム２９のアドレス情報を再配置機能３２を使用して再配置する。ＩＣカード２６は、再配置したアプリケーションプログラム２９を携帯端末１に２５６バイトづつ送信する。
【００４４】
携帯端末１はアプリケーションプログラムを受け取ると、マイコン３に受け取った情報が正常であるか否かを判別させ（ステップＳ４０９）、正常の場合、フラッシュメモリ４に受け取ったアプリケーションプログラム２９の書き込みを行い、書き込み終了の通知をＩＣカード２６に通知する。書き込み完了通知をＩＣカード２６が受け取ると、アプリケーションプログラムデータ２９を全て送信した場合は（ステップＳ４１０の判断が肯定）、アプリケーションデータ送信完了通知を、まだアプリケーションプログラムデータがある場合には、次のデータを携帯端末１に送信する。
【００４５】
携帯端末１は、アプリケーションプログラムデータ送信完了をＩＣカード２６から受け取ると、フラッシュメモリ４の中に書き込まれている登録アプリケーションを管理している管理テーブル１２にあらかじめ受け取っていた、アプリケーション情報３０を書き込み（ステップＳ４１１）、ＩＣカード２６へアプリケーション登録完了を通知し、アプリケーションの登録処理を終了する。一方、各通信データ受信時に受信したデータにエラーがあると判断された場合には、ＩＣカード２６に通信エラーを通知する（ステップＳ４１２）。
【００４６】
以上のような処理を行うことにより、ＩＣカードデータを読み書きする挿入口５を持った携帯端末１において、ＩＣカード２６を利用して、携帯端末１にアプリケーションデータのロード（フラッシュメモリへの書き込み）を行うことが可能になる。また、アプリケーションの消去を行なう場合においても、同様に、暗証番号を入力装置キーパッド８より入力を行い、ＩＣカードで認証して許可されないと端末からアプリケーションを削除できないようにすることも可能である。
【００４７】
次に、本発明の第４の実施形態を、図９を参照して説明する。図９は、本実施形態の構成を示すブロック図である。
この実施形態の特徴は、携帯端末１のマイコン３の内蔵ＲＯＭ中に通信制御プログラム２１が格納され、フラッシュメモリ４にデータ書き込み領域２２が設けられている点、マイコン３に接続されているシリアルデータの送受を行うＲＳ−２３２Ｃドライバ２３を有し、インターフェースケーブル２０を介して接続されるホストマシン２のメモリ１４には、携帯端末１へ書き込むアプリケーションの書き込みデータ２４とホストマシンの動作を制御する制御プログラム１８を格納した点である。
【００４８】
次に、マイコン３が行うフラッシュメモリ４へデータ書込みの制御動作を、図１０のフローチャートを参照して説明する。ここに、フラッシュメモリ４の制御要求のデータ列は、制御種別コマンド、アドレス、およびデータで構成される。携帯端末１のマイコン３がホストマシン２からフラッシュメモリ４への制御要求を受け取った場合（ステップＳ５０１）、該マイコン３は受信したデータ列が正常なものであるか否かを判別する（ステップＳ５０２）。データ列が正常の場合には、制御種別コマンドの種別を判別して、読み出し、書き込み、消去のどの要求かを判別する（ステップＳ５０３）。上記以外のコマンドがきた場合は、コマンドエラーとし、ホストマシンにエラーを送信する（ステップＳ５１１）。
【００４９】
前記種別が書き込み要求の場合には、受け取ったデータ列よりアクセスするアドレスを取得し、マイコン３はアドレスが制御可能なアドレスか否かを判別する（ステップＳ５０４）。フラッシュメモリ４の領域以外、アクセス禁止領域等にアドレスが設定されている場合は、アドレスエラーとし、ホストマシンにエラーを送信する（ステップＳ５１１）。前記アドレスが制御可能なアドレスの場合には、マイコン３はフラッシュメモリ４のコマンド書き込みアドレスに書き込みコマンドを書き込む（ステップＳ５０５）。その後、指定されたアドレスから、指定されたデータ長、指定されたデータをフラッシュメモリ４に書き込みを行い（ステップＳ５０６）、書き込み終了後（ステップＳ５０７）、書き込みを行ったアドレスの読み出しを行い（ステップＳ５０８）、書き込みを行ったデータと比較する。
【００５０】
データが不一致の場合には、フラッシュメモリ書き込みエラーとし、ホストマシンにエラーを送信する（ステップＳ５１１）。正常に書き込みが終了した場合には、ホストマシンに正常終了を送信する（ステップＳ５１０）。
【００５１】
ステップＳ５０３の判断が消去要求の場合には、図１１のステップＳ５１２に進み、マイコン３は受け取ったデータ列よりアクセスするアドレスを取得し、アドレスが制御可能なアドレスか否かを判別する（ステップＳ５１２）。該アドレスがフラッシュメモリ４の領域以外、あるいはアクセス禁止領域等に設定されている場合は、アドレスエラーとし、ホストマシンにエラーを送信する（ステップＳ５１７）。前記アドレスが制御可能なアドレスの場合には、マイコン３がフラッシュメモリ４のコマンド書き込みアドレスに消去コマンドを書き込む（ステップＳ５１３）。消去が終了すると、マイコン３は消去したブロックのデータを読み出し（ステップＳ５１４）、読み出したデータの判別を行なう（ステップＳ５１５）。読み出したデータが０ｘＦＦ以外の場合は、消去エラーとし、ホストマシンにエラーを送信する（ステップＳ５１７）。正常の場合には、ホストマシンに正常終了を送信する（ステップＳ５１６）。
【００５２】
前記ステップＳ５０３の判断が読み出し要求の場合には、図１２のステップＳ５１８に進み、マイコン３は受け取ったデータ列からアクセスするアドレスを取得し、アドレスが制御可能なアドレスか否かを判別する。該アドレスがフラッシュメモリ４の領域以外、アクセス禁止領域等に設定されている場合は、アドレスエラーとし、ホストマシン２にエラーを送信する（ステップＳ５２１）。前記アドレスが制御可能なアドレスの場合には、指定されたアドレスから指定されたデータ長のデータをメモリ上から読み出す（ステップＳ５１９）。その後、読み出したデータをホストマシンに送信し（ステップＳ５２０）、終了する。
【００５３】
本実施形態によれば、フラッシュメモリ４の制御を以上のように行なうことにより、ホストマシン２は制御種別とデータアドレスを指定するだけで、フラッシュメモリ４の書き込み、消去、および読み出し制御を行なうことが可能になる。ホストマシンとの接続を、ＩＣカード挿入口を利用しても同様にフラッシュメモリ４の制御が可能になる。
【００５４】
次に、本発明の第５実施形態を、図１３を参照して説明する。図１３は、本実施形態の構成を示すフローチャートである。この実施形態が前記第４実施形態（図１１）と異なる所は、ホストマシン２のメモリ１４にフラッシュメモリを制御するフラッシュメモリ制御プログラム２５をさらに格納した点である。
【００５５】
次に、マイコン３が行うフラッシュメモリへのデータ書込みの制御動作を、図１４のフローチャートを参照して説明する。この制御動作は、マイコン３の内蔵ＲＯＭに書き込まれているフラッシュメモリ制御プログラム１０を使用できないフラッシュメモリ４が携帯形態端末１に接続された場合の動作を示す。
【００５６】
この場合、接続されているフラッシュメモリ４の制御シーケンスがあらかじめマイコン３の内蔵ＲＯＭに書き込まれていないフラッシュメモリ４の制御を行う場合には、マイコン３が制御コマンドを指定するのではなく、ホストマシン２がコマンド書き込みアドレス、コマンドを直接指定し、フラッシュメモリ４の制御を行う。
【００５７】
図１４のステップＳ６０１では、まずフラッシュメモリ４の種別を判別する（ステップＳ６０１）。次に、フラッシュメモリ４への制御種別を判別する（ステップＳ６０２）。書き込み制御の場合、ホストマシン２のメモリ１４のフラッシュメモリ制御プログラム２５を起動し、書き込みコマンドの取得を行う（ステップＳ６０３）。書き込みコマンド取得後、メモリ１４の書き込みデータを取得する（ステップＳ６０４）。データ取得後、ステップＳ６０３で取得した書き込みコマンドを携帯端末１に送信する（ステップＳ６０５）。書き込みコマンドが複数バイトか否かの判別を行い（ステップＳ６０６）、複数バイトの場合には、全コマンドを送信するまで繰り返す。
【００５８】
書き込みコマンド送信終了後、データを書き込むフラッシュメモリアドレスの送信を行なう（ステップＳ６０７）。その後、書き込みデータ２４を携帯端末１へ送信する（ステップＳ６０８）。書き込みデータ２４のデータ数の判別を行い（ステップＳ６０９）、全データを送信するまで繰り返す。データ送信後、携帯端末１のフラッシュメモリ４の書き込み状態を確認し（ステップＳ６１０）、書き込みが正常に行われていない場合には、ホストマシン１にエラーを送信する（ステップＳ６１６）。
【００５９】
ステップＳ６０２の判別で制御種別が消去制御の場合には、ホストマシン２のメモリ１４のフラッシュメモリ制御プログラム２５を起動し、消去コマンドの取得をおこなう（ステップＳ６１１）。コマンド取得後、ステップＳ６１１で取得した書き込みコマンドを携帯端末１に送信する（ステップＳ６１２）。次いで、消去コマンドが複数バイトかの判別を行い（ステップＳ６１３）、複数バイトの場合には、全コマンドを送信するまで繰り返す。消去コマンド送信終了後、消去を行なうフラッシュメモリアドレスの送信を行なう（ステップＳ６１４）。アドレス送信後、携帯端末１のフラッシュメモリ４の消去状態を確認し（ステップＳ６１０）、消去が正常に行われていない場合には、ホストマシン１にエラーを送信する（ステップＳ６１６）。ホストマシンとの接続を、ＩＣカード挿入口を利用しても同様にフラッシュメモリ４の制御が可能になる。
【００６０】
上記の処理を実行することにより、携帯端末１の内蔵ＲＯＭにフラッシュメモリを制御するプログラムが書き込まれていない場合においても、フラッシュメモリ４の内容を書き換えたり、消去したりすることができる。
【００６１】
次に、本発明の第６実施形態について説明する。この実施形態は、アプリケーションを管理するシーケンスを提供する点に特徴がある。
本実施形態の構成は、図１のものと同等であるので、説明を省略する。本実施形態の動作を、図１５、図１６、図１７を参照して説明する。ここに、図１５は、図１の携帯端末１のフラッシュメモリ４のアプリケーションを管理する処理を説明するフローチャート、図１６は管理テーブル１２に書き込まれているアプリケーション情報を格納するテーブルの構成、図１７は管理テーブル１２に書き込まれているフラッシュメモリのブロック情報を管理するテーブルである。
【００６２】
アプリケーションを管理するシーケンスを図１５のフローチャートを用いて説明する。形態端末１がホストマシン２からアプリケーション情報１９を受信し、登録を行なう場合、マイコン３はフラッシュメモリ４の制御プログラム１１を起動し、フラッシュメモリ４の管理テーブル１２のブロック管理テーブルを確認する。次いで、ブロック管理テーブルが使用中であるか否かのフラグを判別し、未使用のブロックを検出する（ステップＳ７０１）。未使用のブロックの検出後（ステップＳ７０２）、ブロックのアプリケーションの書き込み可能サイズを取得し（ステップＳ７０３）、アプリケーションのサイズとブロック管理テーブルの各ブロックのブロックサイズとを比較し（ステップＳ７０４）、ブロックにアプリケーションが格納可能な場合、ブロック管理テーブルより、アプリケーションを書き込むブロックの先頭アドレスをマイコン３は取得する（ステップＳ７０５）。取得したアドレスをマイコン３はホストマシン２に送信する（ステップＳ７０６）。アプリケーションプログラム１７のフラッシュメモリ４のアプリケーションプログラム書き込み領域１３への書き込みが正常に終了した場合（ステップＳ７０７）、アプリケーション管理テーブルの最後尾にアプリケーション名、アプリケーション識別子、バージョン情報、アプリケーションサイズを書き込み（ステップＳ７０８）、その後、ブロック管理テーブルの使用したブロックを使用中フラグにフラグを立て、使用しているアプリケーション識別子を書き込み（ステップＳ７０９）、アプリケーションの登録を終了する。
【００６３】
また、削除時は、削除するアプリケーションをアプリケーション管理テーブルから選択してもらい、アプリケーション識別子を取得する。取得したアプリケーション識別子をブロック管理テーブルから検索し、アプリケーションが使用しているブロックを検出する。検出したブロックのアドレスを取得し、取得したアドレスのブロックを消去する。その後、アプリケーション管理テーブルよりアプリケーション情報の全てを消去し、登録アプリケーション数を更新する。アプリケーション削除処理を終了する。
【００６４】
また、この機能を利用する事により、端末が登録されているアプリケーションの情報を認識したい場合には、アプリケーション管理テーブルを読み出せば、登録しているアプリケーションを認識することが可能になる。
【００６５】
次に、本発明の第７実施形態について説明する。この実施形態は、ＩＣカードの挿入口を、ＩＣカードのデータ読み出し、書き込み及びアプリケーションプログラムの登録に使用できるようにしたものである。
【００６６】
携帯端末１は、データの送受信を制御する通信制御プログラム２１と、通信インターフェース及び制御クロックを切り換える切り換えプログラム２９と、調歩同期式の通信インターフェース３０と、クロック同期式の通信インターフェース３１と、発振クロックを制御するクロック切り換え制御部３２と、調歩同期式の通信インターフェース３０とクロック同期式の通信インターフェース３１の接続を切り換える切り換え回路３３を持つマイコン３と、アプリケーションのプログラムデータを書き込むエリアを持つフラッシュメモリ４と、ＩＣカード挿入口５で構成される。
【００６７】
カード挿入口５をＩＣカードのデータの読み書きに使用する場合には、マイコン３に書き込まれている切り換えプログラム２９は、切り換え回路３３により、通信インタフェースとして調歩同期インターフェース３０を選択する。また、該切り換えプログラム２９は、クロック切り換え制御部３２をＩＣカードの読み書き用のクロックに切り換え、ＩＣカードとの通信を通信制御プログラム２１が実行する。
【００６８】
カード挿入口５をアプリケーションプログラムの登録用に使用する場合には、前記切り換えプログラム２９は、切り換え回路３３により、通信インタフェースをクロック同期インタフェース３１に変更する。また、クロック切り換え制御３２をクロック同期用のクロックに変更し、通信制御プログラム２１がＩＣカード挿入口５より、アプリケーションプログラムを読み込み、端末１のフラッシュメモリ４に書き込む。
【００６９】
このように、本実施形態によれば、ＩＣカードの挿入口５を、ＩＣカードのデータの読み出し、書き込みと、アプリケーションプログラムの登録時の書き込みという二つの用途に使用することができる。
【００７０】
【発明の効果】
以上の説明から明らかなように、本発明によれば、端末装置がもともと有しているＩＣカード挿入口を利用して、端末装置にアプリケーションプログラムを登録できるようになるという効果、およびこのため従来のように端末装置にアプリケーション書き込みのための専用口を設けことが必要でなくなるので、端末装置を製造するにあたって、コストアップにつながらないという効果を奏することができる。
【００７１】
また、本発明によれば、端末装置自身にメモリ書き換え制御機能を持たせるようにしたので、ホストマシンにはアプリケーションのデータを持たせるだけで、アプリケーション登録時のメモリ書き換え制御機能を管理させないようにすることができる。このため、ホストマシンの負担を軽減することができる。
【００７２】
また、ホストマシンに端末装置より受け取った書き込み可能なエリアを受け取り、端末毎に、設定された書き込みエリアに書き込む機能を持たせることにより、複数のアプリケーションを書き込ませることができるようになる。
【００７３】
また、ホストマシンが、端末装置のアプリケーション書き込み可能な空き領域を認識し、アプリケーションプログラムを再配置することで、空き領域を効率よく使用することができる。アプリケーションの登録時に、暗証番号入力などの認証処理を行なうことにより、不正に端末にアプリケーションの登録することを防ぐことが可能になる。
【図面の簡単な説明】
【図１】  本発明の第１の実施形態の構成を示すブロック図である。
【図２】  第１実施形態の動作を説明するためのフローチャートである。
【図３】  第１実施形態の端末装置の動作を説明するためのフローチャートである。
【図４】  第１実施形態に係わる通信データの構成図である。
【図５】  本発明の第２の実施形態の構成を示すブロック図である。
【図６】  第２実施形態に係わる端末装置の動作を説明するためのフローチャートである。
【図７】  本発明の第３の実施形態の構成を示すブロック図である。
【図８】  第３実施形態に係わる端末装置の動作を説明するためのフローチャートである。
【図９】  本発明の第４の実施形態の構成を示すブロック図である。
【図１０】  第４実施形態に係わる端末装置の動作を説明するためのフローチャートである。
【図１１】  第４実施形態に係わる端末装置の動作を説明するためのフローチャートである。
【図１２】  第４実施形態に係わる端末装置の動作を説明するためのフローチャートである。
【図１３】  本発明の第５の実施形態の構成を示すブロック図である。
【図１４】  第５実施形態に係わるホストマシンの動作を説明するためのフローチャートである。
【図１５】  本発明の第６実施形態に係わる端末システムの動作を説明するためのフローチャートである。
【図１６】  第６実施形態に係わるアプリケーション管理テーブルの構成図である。
【図１７】  第６実施形態に係わるブロック管理テーブルの構成図である。
【図１８】  本発明の第７実施形態に係わる端末システムの構成を示すブロック図である。
【符号の説明】
１…携帯端末、２…ホストマシン、３…マイコン、４…フラッシュメモリ、５…カード挿入口、６…カード挿入口、７…入力装置キーパッド、８…表示装置ＬＣＤ、９…シリアルインターフェース機能、１０…フラッシュメモリ制御プログラム、１１…制御プログラム、１２…管理テーブル、１３…アプリケーション書き込み領域、１４…メモリ、１５…シリアルインターフェース機能、１６…再配置機能、１７…アプリケーションプログラム、１８…制御プログラム、１９…アプリケーション情報、２０…インターフェースケーブル、２１…通信制御プログラム、２２…データ書き込み領域、２３…ＲＳ−２３２Ｃドライバ、２４…書き込みデータ、２５…フラッシュメモリ制御プログラム、２６…ＩＣカード、２７…認証データ、２８…ＩＣカード制御プログラム、２９…切り換えプログラム、３０…調歩同期インタフェース、３１…クロック同期インタフェース、３３…クロック切り換え制御。
【図１】
0003976106.tif 000002
【図２】
0003976106.tif 000003
【図３】
0003976106.tif 000004
【図４】
0003976106.tif 000005
【図５】
0003976106.tif 000006
【図６】
0003976106.tif 000007
【図７】
0003976106.tif 000008
【図８】
0003976106.tif 000009
【図９】
0003976106.tif 000010
【図１０】
0003976106.tif 000011
【図１１】
0003976106.tif 000012
【図１２】
0003976106.tif 000013
【図１３】
0003976106.tif 000014
【図１４】
0003976106.tif 000015
【図１５】
0003976106.tif 000016
【図１６】
0003976106.tif 000017
【図１７】
0003976106.tif 000018
【図１８】
0003976106.tif 000019