まず、本発明の携帯電話機である移動機100、アプリケーションサーバ201などを用いたシステム構成およびブロック構成について説明する。図1は、本発明の移動機100、アプリケーションサーバ201などの配置を示すシステム構成図である。
携帯電話機である移動機100は、無線公衆網・インターネット網を介してアプリケーションサーバ201、アプリケーションDXサーバ202、ICC(IC chip)サーバ203に接続されている。また、移動機100は、ICメモリ101を内蔵し、金銭的価値を示す情報および個人情報であるID情報などのバリューデータを記憶することができる。この移動機100は、ICメモリ101を介して駅の改札401と交信することで、ゲートを開けることができ、店のレジ402と交信することで電子マネーの引き落とし処理を行い、会社の通用門403と交信し、ID情報の交換を行うことで、通用門を通る許可を得ることができる。
アプリケーションサーバ201は、移動機100で動作することのできるアプリケーションプログラムを移動機100からの要求により提供することのできるサーバである。また、アプリケーションサーバ201は、ダウンロードしようとするアプリケーションプログラムのサイズを含むADF(Application Discripter File)を記憶し、また、アプリケーションの種類に応じて、このアプリケーションプログラムは移動機内のデバイス(例えばICメモリ)を使用するものであるか或いは使用するものではないかを示すトラステッド情報を含んだADFを記憶する。
アプリケーションDXサーバ202は、移動機100へ送信するアプリケーションプログラムを管理するサーバであり、移動機100へ送信しようとするアプリケーションプログラムの属性、アプリケーションプログラムの使用時に必要とされるバリューデータ、ID情報を記憶するためのメモリサイズなどを含むSDF(Security Discripter File)を記憶し、移動機100の要求に応じてこのSDFを送信する。
ICCサーバ203は、移動機100が備える不揮発性メモリであるICメモリ101に書き込むためのデータを保持し、移動機100からの要求により、アプリケーションプログラムが使用するバリューデータを移動機100に対して送信する。また、ICCサーバ203は、移動機100からの要求に応じて移動機100のICメモリ101に、アプリケーションプログラムが使用することのできる記憶領域を作成するものである。ICCサーバ203は、ICメモリ101の不正使用を防止し、バリューデータなど重要なデータの書き込み、領域の作成を担当するものである。
なお、本実施の形態においては上述のとおりアプリケーションサーバ201、アプリケーションDXサーバ202、ICCサーバ203が、それぞれ存在しているシステム構成をとっているが、これらサーバ装置を機能的に合成し、一つまたは二つのサーバ装置としても良い.例えば、アプリケーションサーバ201とアプリケーションDXサーバ202とを機能的に合成し、一つのサーバ装置を構築してもよい。その際、後述するシーケンス図において移動機100は、一つのサーバ装置に対してデータの送受信を行うことになる。例えば、SDFを送信するサーバとアプリケーションプログラムを送信するサーバとは一つのサーバ装置が行うことになり、移動機100はそのサーバ装置に対してリクエスト等を行うことになる。
このようなシステム構成において使用される移動機100のハードブロック構成図を図2に示す。
移動機100は、ICメモリ101(本発明の第2メモリ手段)、RAM102、ROM103、不揮発性メモリ104(本発明の第1メモリ手段および管理テーブル)、無線通信部105(本発明の受信手段)、パケット通信部106、電話通信部107、表示部108、操作部109、CPU110(本発明の制御手段)を備えて構成され、ICメモリ101を介して外部リーダ端末401、402、403と通信することができる。以下、各部について詳述する。
ICメモリ101は、金銭的価値を示す情報、または個人を特定するID情報などの、ダウンロードしたアプリケーションプログラムが動作する上で使用する必要があるデータを記憶する。このICメモリ101は、非接触型のICメモリであって、内部にアンテナを持ち、外部の端末が発信する電波を利用して金銭的価値(電子マネー、社員食堂用で金銭として使用することのできるクーポン券、鉄道などの切符、定期券など)を示す情報、個人を特定するID情報などのバリューデータを送受信することのできるものである。
RAM102は、ダウンロードしたアプリケーションプログラムのワークエリアとして使用される。ROM103は、OS、アプリケーションマネージャ、API、クライアントソフトウエアなどの携帯電話機を使用する上で必要なソフトウエアが記憶される。
不揮発性メモリ104は、フラッシュメモリなどであって、ダウンロードしたアプリケーションプログラム、ICメモリ101を管理するための管理テーブルを記憶する。
無線通信部105は、パケット通信部106によるインターネット接続などのパケット通信および電話通信部107による電話通信をこの無線通信部105を介して無線による通信・通話を実行する。
表示部108は、インターネット接続した場合のデータを表示し、操作部109から入力した文字などを表示する。また、通信エラーなど、さまざまなエラーを表示することができる。
CPU110は、これらICメモリ101から操作部109を制御する。
このハードブロック構成図で構成された移動機100のソフトウエア構成図を図3に示す。
移動機100は、上述したハードブロック図で示されるハードウエアを管理するOS(Operating System)、ダウンロード制御部301(本発明の制御手段の一部)、ファイル解析・判断部302(本発明の比較手段)、ファイル削除部304、メモリ制御部305(本発明の制御手段の一部)を有するアプリケーションマネージャ、DojaおよびCLDC(Connected Limited Device Configuration)並びにKVM(K Virtual Machine)を有するAPI(Application Program Interface)、バリューデータの書き込み処理などを行うクライアントソフトウエア306を機能的・ソフトウエア的に備えて構成される。また、ハードウエアの不揮発性メモリ104には、管理テーブル303(本発明における管理テーブル)を備えて構成される。
図3に示す移動機100のソフトウエア構成図では、ハードウエアを管理するOSが搭載され、各種ソフトウエアはこのOS上で動作することになる。このOS上には、アプリケーションマネージャ、APIが動作している。また、図示していないがネイティブと呼ばれる携帯電話機100を操作するための基本操作プログラムもOS上で動作する。
アプリケーションマネージャは、主にダウンロードしたアプリケーションプログラムに対する制御、管理を行い、APIはICCサーバ203と通信しない状態であるオフライン通信時では、APIが呼び出した機能(命令、関数)を用いてICメモリ101の非セキュリティ部分へのバリューデータの書き込み処理を行う。ICCサーバ203と通信する状態であるオンライン通信時では、APIは、通信するための機能(命令、関数)を呼び出すだけで、クライアントソフトウエア306が、ICCサーバ203とICメモリ101との間で通信を行う。そして、クライアントソフトウエア306は、ICCサーバ203からの通信プロトコルを解析し、必要なコマンドだけを取り出し、ICメモリ101に送信することで、バリューデータの受け渡しを行い、ICメモリ101に対するバリューデータの書き込み処理を行う。ICメモリ101から応答があるとクライアントソフトウエア306は、所定の通信プロトコルを用いてICメモリ101からの応答をICCサーバ203に送信する。以下、詳述する。
ダウンロード制御部301は、アプリケーションサーバ201、アプリケーションDXサーバ202から送信されたアプリケーションプログラム、およびADF、SDFなどの情報ファイルの受信を制御し、リクエストの送信、結果通知などの処理も行う。
ファイル解析・判断部302は、アプリケーションサーバ201およびアプリケーションDXサーバ301から送られるADFおよびSDFを解析し、その内容を比較判断する。SDFを受信した場合には、後述するメモリ制御部305に対してICメモリ101の記憶状態(全体の容量である利用可能ブロック数、および使用できる記憶領域を示す空きブロック数)を確認するよう指示し、これら情報を取得し、SDFに記述される内容(アプリケーションプログラムが使用する必要のあるデータを記憶するためのメモリの記憶容量を示すエリアサイズ、属性を示すシステムコード、エリアコード)と比較する。この比較した結果にしたがって、メモリ制御部305が管理テーブル303に対してICメモリ101の記憶領域の確保処理を行うよう指示する。
管理テーブル303は、アプリケーションプログラムの起動時におけるICメモリ101に対する記憶領域を作成する処理に先立って、作成しようとする記憶領域を確保するため(つまり予約するため)、ICメモリ101の記憶領域を特定する情報(たとえば、記憶領域の始点を示すアドレス情報および記憶ブロック数)を記憶する。この管理テーブル303に記憶された記憶領域にしたがって、ICメモリ101の記憶領域が作成されることになる。なお、管理テーブル303に記憶される情報は、ICメモリ101の使用状態を管理するための情報であり、ICメモリ101がオーバフローしないよう管理テーブル303で管理できる情報であればこのような形式に限るものではない。
ファイル削除部304は、ダウンロード制御部301によってダウンロードしたアプリケーションプログラムを不揮発性メモリ104から削除する。
メモリ制御部305は、ICメモリ101、不揮発性メモリ104の記憶状態を管理し、制御するものであって、ICメモリ101の空き容量はどれくらいか、システムコード、エリアコードに対応する記憶領域は存在するか、また、不揮発性メモリ104の管理テーブル303に対して、ICメモリ101の記憶状態はどのようなものか、または予約確保されている状態はどれくらいか、不揮発性メモリ104自体の空き容量はどれくらいかを、確認し、判断する。さらに、ファイル解析・判断部302の指示により、管理テーブル303に対してICメモリ101の記憶領域の確保処理を行う。
クライアントソフトウエア306は、ICCサーバ203から送信された金銭的価値を示す情報、ID情報などのバリューデータをICメモリ101に書き込む。さらに、アプリケーションマネージャには、図示しない通信管理部が備えられ、この通信管理部は各サーバ装置との通信チェックを行う。
次に、ICメモリ101の使用例を示す概念図を図4に示す。
ICメモリ101は、アプリケーションサーバ201からダウンロードしたアプリケーションプログラムを使用する上で必要とされるデータを記憶するメモリであり、システムコードで特定される記憶領域410、420と、この記憶領域内に作成され、エリアコードで特定される記憶領域411、412、421、422、423を、そのメモリ内に形成する。このシステムコードで示される記憶領域は、アプリケーションプログラムの提供者ごとに予め領域が区分けされ決定されている領域である。本実施の形態では、システムコード0001で特定されるA社用の記憶領域410と、システムコード0002で特定されるB社用の記憶領域420をICメモリ101内に形成している。このように形成することで、ダウンロードしたアプリケーションプログラムの提供者に応じて、このアプリケーションプログラムを記憶するICメモリ101の記憶領域を決定することができる。
なお、ここではアプリケーションプログラムを提供する提供者ごとに予め領域が区分けされ決定されているが、これに限るものではなく、何らかの条件でアプリケーションプログラムに属性を与え、この属性に基づいて区分けするようにしてもよい。
また、エリアコードで示される記憶領域411、412、421、422、423は、アプリケーションプログラムの種類に応じてバリューデータ(電子財布プログラムに対しては金銭的価値を示す情報、乗車券プログラムに対しては交通手段における乗車することのできる区間、期限を示す情報(定期券)、乗車することのできる区間を示す情報(切符))、ID情報(社員証を示すプログラムに対する)などを記憶する記憶領域であり、ダウンロードしたアプリケーションプログラムを起動する際に、後発的に作成される領域であって、ICCサーバ203が作成する記憶領域である。
ここでは、ID情報を記憶するエリアコード1000で示される記憶領域411、エリアコード2000で示され金銭的価値を示す情報を記憶する記憶領域412などが、また、定期券を示す情報を記憶する記憶領域421、乗車するための金銭的価値を示す情報を記憶する記憶領域422、往復切符を示す情報を記憶する記憶領域423がある。
<1.移動機100内に備えた管理テーブルを用いた処理>
<1−1.アプリケーションプログラムのダウンロード処理>
図5は、移動機100におけるアプリケーションプログラムのダウンロード処理において、ICメモリ101の記憶状態に応じたダウンロード処理を実行する動作フローを示す図である。
移動機100の使用者は、移動機100の操作画面を見ながら、任意に指定したアプリケーションプログラムのダウンロードを指示する操作を行うと、移動機100で動作しているブラウザは、アプリケーションサーバ201に指定したアプリケーションプログラムのダウンロードのリクエストを行う(S501)。
ダウンロード制御部301は、上述リクエストに応じたアプリケーションサーバ201から送信されたADFを受信する(S502)。ダウンロード制御部301がADFを受信することを検知すると、ファイル解析・判断部302はADFを解析し、アプリケーションプログラムのサイズ、移動機100内のデバイスを使用するアプリケーションプログラムであるかなどを確認する。確認後、移動機100内に予め設定登録されているアプリケーションDXサーバ202のアドレス宛てにダウンロードしようとするアプリケーションプログラムに対応するSDFを送信する旨を要求するリクエストを送信する(S503)。リクエスト送信後、ダウンロード制御部301は、このリクエストに応じてアプリケーションDXサーバ202から送信されたSDFを受信する(S504)。
ここでSDFの概要について図を用いて説明する。図6は、SDFの概要を示す図である。SDFには、図6に示すように、基本情報であるアプリケーションプログラムのダウンロードを許可する許可情報、アプリケーションプログラムを提供する提供者などの属性を示すシステムコード601、アプリケーションプログラム個別に対応して作成された領域を指定するエリアコード603、ダウンロードしたアプリケーションプログラムが使用するデータを記憶するために必要な領域サイズを示すエリアサイズ603などが記述されている。また、図示していないが、ダウンロードしようとするアプリケーションプログラムがデバイスを使用する場合はどのデバイスを使用するかなど示す情報をもあわせて記述される。なお、SDFに記述されているこれら内容はアプリケーションプログラムの削除などの処理で使用するため、その内容は不揮発性メモリ104に記憶される。
ファイル解析・判断部302は、ダウンロード制御部301の指示によりS504で受信したSDFに含まれるシステムコードを用いてICメモリ101に当該システムコードで特定するする領域が存在するか否かを、メモリ制御部305からの通知をもとに判断する(S505)。ファイル解析・判断部302は、領域が存在しないと判断する場合は、ダウンロード制御部301に対してダウンロードの中止の指示を行い、ダウンロード制御部301はダウンロード中止の制御を行い、表示部108は、領域が存在せず、ダウンロードしない旨の表示を行う(S511)。
ファイル解析・判断部302は、領域が存在すると判断する場合は、さらにシステムコードで指定された領域に、作成しようとする領域を特定するエリアコードが存在するか、つまりダウンロードしようとするアプリケーションプログラムで使用するデータを記憶するための領域がすでに存在するか否か、メモリ制御部305の通知に基づいて判断する(S506)。そして、ファイル解析・判断部302は、領域が存在すると判断する場合は、重複したアプリケーションプログラムをダウンロードしようとすることになるため、ダウンロード制御部301に対してダウンロードの中止の指示を行って、ダウンロード制御部301はダウンロードの中止の制御を行い、表示部108は、ダウンロードできない旨の表示を行う(S512)。
ファイル解析・判断部302は、S506で領域が存在しないと判断する場合は、ICメモリ101の利用可能ブロック数(システムコードで特定される記憶領域の全容量)がSDFで示されるエリアサイズで示される容量より大きいか否かを判断する(S507)。ファイル解析・判断部302は、小さいと判断する場合は、ダウンロード制御部301に対してダウンロードの中止の指示を行ってダウンロード制御部301はダウンロードの中止の制御を行い、表示部108は、ICメモリ101に記憶することのできる領域が足りず、ダウンロードできない旨の表示を行う(S513)。
ファイル解析・判断部302は、S507で大きいと判断する場合は、ICメモリ101の利用可能ブロック数のうち記憶することのできる記憶領域の容量、つまり空きブロック数が、SDFに含まれるエリアサイズより大きいか、否かを判断する(S508)。ファイル解析・判断部302は、小さいと判断する場合は、ダウンロード制御部301に対してダウンロードの制御の中止を指示し、表示部108は、ダウンロードできない旨を表示するとともに、何ブロック足りないかを表示する(S514)。さらに、どのアプリケーションプログラムで何ブロック使用しているかを、すでにダウンロードされたアプリケーションプログラムごとにICメモリ101上で使用されている使用ブロック数とを対応付けて表示する。
ファイル解析・判断部302は、S508で大きいと判断する場合は、ダウンロード制御部301に対してアプリケーションプログラムのダウンロードを行う指示を行って、ダウンロード制御部301はダウンロードを行い(S509)、メモリ制御部305は管理テーブル303にICメモリ101の確保される予約状況を示す情報を記憶させることにより更新する(S510)。
次に図5で示した動作フローにしたがって処理した移動機100におけるアプリケーションプログラムのダウンロードが成功したときのシーケンス図を図7に示す。なお、図5で示す処理と同一の処理については図5で示す符号と同一の符号で示す。
まず、移動機100で動作し、インターネットに接続するためのプログラムであるブラウザを用いて使用者は任意に指定したアプリケーションプログラムのダウンロードをするよう指示し、操作する。ブラウザは、アプリケーションサーバ201に対してリクエストを送信する(S501)。そしてダウンロード制御部301は、これに対応するADFをアプリケーションサーバ201から受信し、アプリケーションDXサーバ202にリクエストを送信し、アプリケーションDXサーバ202からSDFを受信する(S502からS504)。
ダウンロード制御部301が、SDFを受信すると、メモリ制御部305が、ICメモリ101にSDFに含まれるシステムコードで特定する領域が存在するか、ICメモリ101に対して確認処理を行う(S505)。そして、メモリ制御部305からの通知によってファイル解析・判断部302が、存在すると判断する場合は、さらにメモリ制御部305に指示し、メモリ制御部305はエリアコードで特定するする領域が存在するか、ICメモリ101に対して確認処理を行う(S506)。
ファイル解析・判断部302が、エリアコードで特定する領域が存在しないと判断すると、メモリ制御部305が取得した管理テーブル303に管理している管理内容に従って、ICメモリ101の空きブロックが、ダウンロードしようとするアプリケーションプログラムで扱うデータを記憶する記憶容量を示すエリアサイズより大きいか否か判断する(S507)。ファイル解析・判断部302が大きいと判断する場合は、ダウンロード制御部301に指示し、ダウンロード制御部301は、アプリケーション用サーバ201にリクエストを送信する。アプリケーションサーバ201はリクエストを受信したことに応じて、アプリケーションプログラムの送信を開始し、ダウンロード制御部301は、送信されたアプリケーションプログラムを受信し、ダウンロードを行う(S509)。
そして、ダウンロード制御部301は、ダウンロードしたアプリケーションプログラムを不揮発性メモリ104に記憶させるとともに、メモリ制御部305は、管理テーブル303にICメモリ101に対して確保した記憶領域を特定する情報を記憶させる(S510)。
その後、使用者の操作によりダウンロードしたアプリケーションプログラムを起動すると、当該アプリケーションプログラムで使用するデータを扱う(エリアの作成・削除、データの書き込みなど)ためのICCサーバ203と接続する(S701)。ICCサーバ203は、移動機100上で動作するクライアントソフトウエア306に対して指定されたシステムコードで特定する領域内に、起動したアプリケーションプログラムが扱うデータが記憶される領域の作成を指示し、クライアントソフトウエア306がICメモリ101に対して当該領域の作成を行う(S702)。なお、ICCサーバ203は、領域の作成のほか、領域の削除、バリューデータの書き込み、書き換えなど指示し、クライアントソフトウエア306がこれら指示に応じてICメモリ101に対して領域の削除、バリューデータの書き込み、書き換えなどの処理も行う。
続いて、これら処理における作用、効果について説明する。
図5、図7に示すとおりに動作する移動機100において、この移動機100に備える管理テーブル303とICメモリ101とにおける記憶領域の使用状態、および空き状態の状態遷移を、図8を用いて説明する。初期状態として、管理テーブル303、ICメモリ101はともにシステムコード0001で特定する記憶領域内の100個のブロックは未使用状態としている。図5、図7に示すS509のアプリケーションプログラムをダウンロードする処理を行うと、アプリケーションマネージャ上で動作するメモリ制御部305は、管理テーブル303に対してのみ、システムコード0001に示される領域にエリアコード1000で示す記憶領域を作成する(図8の処理1参照)。
そして、ダウンロードしたアプリケーションプログラムを起動すると(図7のS701)、アプリケーションプログラムはICCサーバ203に対して、起動しているアプリケーションプログラムのための記憶領域をICメモリ101に作成するよう要求することで、ICCサーバ203は、管理テーブル303に定められ、予めICメモリ101のために確保されている記憶領域をICメモリ101内に作成する(図8の処理2参照)。
上述の構成、作用による効果を説明する。本発明では、管理テーブル303で、ICメモリ101で使用する予定のある記憶領域を予め確保し、予約しておくことで、ICメモリ101上で現実に記憶領域が空いているとしても、他のアプリケーションプログラムにその領域を使用されることを防止することができ、結局は無駄なアプリケーションプログラムのダウンロードを防止することができる。
次に、受信したSDFに含まれるシステムコードで特定する領域がICメモリ101に存在しない場合のシーケンス図を図9に示す。図5で示す処理と同一の処理については図5で示す符号と同一の符号で示す。
ブラウザの操作によるダウンロード指示からSDFを受信するところまでは(S501からS504)、上述図5、図7と同様である。
ファイル解析・判断部302は、メモリ制御部305に指示し、メモリ制御部305は、ICメモリ101にダウンロードしようとするアプリケーションプログラムが使用することのでき、システムコードで特定する領域が存在することを確認する。メモリ制御部305からの応答により当該領域が存在しないと、ファイル解析・判断部302が判断すると(S505)、ダウンロード制御部301はアプリケーションのダウンロードをすることなく、表示部108はアプリケーションダウンロードの中止を表示する(S511)。
上述の構成、作用による効果を説明する。本発明では、受信したシステムコードで特定する領域がICメモリ101に存在しない場合、アプリケーションプログラムのダウンロードを中止するため、使用することのできないアプリケーションプログラムをダウンロードすることなく、無駄なダウンロード処理を防止することができ、無駄なトラフィックを発生させず、効率の良いダウンロード処理を実現することができる。さらに、SDFの属性を示す情報を見ることで受信しようとするプログラムの属性を容易に判断することができる。また、表示部108で受信できなかったことを示すメッセージを表示することで使用者は受信できなかったことを容易に知ることができ、使い勝手の良い装置を実現できる。また、プログラムを提供する提供者で属性を区別することで、プログラムを提供する提供者(例えば、ソフトメーカ、製造メーカなど企業)が、ICメモリ101を使用することのできるか、できないかをアプリケーションプログラムのダウンロード前に端末側で定めることができ、効率の良いダウンロード処理を実現することができる。
次に、受信したICメモリ101の空きブロックがSDFに含まれるエリアサイズに示す容量より小さく、アプリケーションプログラムのダウンロードを中止するときのシーケンス図を図10に示す。図5で示す処理と同一の処理については図5で示す符号と同一の符号で示す。
移動機100上で動作しているブラウザの操作によるダウンロード指示からSDFを受信して、ICメモリのチェックをするところまでは(S501からS507)、上述図7と同様である。
ファイル解析・判断部302は、ICメモリ101の空きブロックが、ダウンロードしようとするアプリケーションプログラムで扱うデータを記憶する記憶容量を示すエリアサイズより大きいか否か判断し(S507)、小さいと判断する場合、ダウンロード制御部301は、SDFの要求であるリクエストを送信することなく、アプリケーションプログラムのダウンロードを中止し、表示部108はダウンロードを中止する旨の表示を行う(S514)。
上述の構成、作用による効果を説明する。本発明では、ICメモリ101に所定の記憶領域が存在しない場合にアプリケーションプログラムをダウンロードしても、ICメモリ101を使用することができず、結果的にアプリケーションプログラムを動作させることができないことから、これを防止し、無駄なアプリケーションプログラムのダウンロードを防止し、効率のよいアプリケーションプログラムのダウンロードを実行することができる。
<1−2.アプリケーションプログラムの削除処理>
上述したとおりの方法によりダウンロードしたアプリケーションプログラムを削除する処理について図11を用いて説明する。
図11は、移動機100におけるアプリケーションプログラムを削除するときの動作フローである。
移動機100の使用者は、移動機上で動作し、操作プログラムを含むネイティブを操作部109を介して操作し、削除しようとするアプリケーションプログラムのリストを表示部108に表示させ、削除しようとするアプリケーションプログラムを指定する(S1101)。
そして、メモリ制御部305は、アプリケーションプログラムのダウンロード時に受信して不揮発性メモリ104に記憶されたSDFの内容をチェックし、システムコード、エリアコードを確認する(S1102)。
ファイル解析・判断部302は、メモリ制御部305が確認したシステムコード、エリアコードに基づいて、ICメモリ101に確認したシステムコードがあるか、さらにこの確認したシステムコード内にエリアコードが存在するか、判断する(S1103)。つまり、ICメモリ101内にシステムコードで特定される記憶領域が存在し、さらにこの記憶領域内にエリアコードで特定された記憶領域が存在するか否かを判断する。
ファイル解析・判断部302は、エリアコードで特定する記憶領域が存在すると判断する場合は、ファイル削除部304に対してアプリケーションプログラムを削除する指示を行なわず、表示部108は、削除しようとするアプリケーションプログラムが使用するICメモリ101の記憶領域が削除されてない旨の表示を行う(S1104)。なお、エリアコードで特定する記憶領域は、複数ある場合があり、ひとつでもエリアコードで特定する記憶領域が存在する場合は、上述のとおりのエラー表示を行う。
そして、ファイル解析・判断部302は、エリアコードで特定する記憶領域がひとつも存在しないと判断すると、ファイル削除部304に指示し、ファイル削除部304は削除指定されたアプリケーションプログラムを不揮発性メモリ104から削除する(S1105)。そして、メモリ制御部305は、ICメモリ101で使用されている記憶領域を反映するよう不揮発性メモリ104内の管理テーブル303の記憶内容を書き換えて、更新し(S1106)、表示部108は削除した旨を表示する(S1107)。
次に、上述動作フローで示したアプリケーションプログラムの削除処理に対するエラー処理、削除処理が成功したときのシーケンス、およびICメモリ101の記憶状態の状態遷移を図12から図16に示す。
図12は、ファイルの削除が失敗したときの処理シーケンス図である。図11で示す処理と同一の処理については図11で示す符号と同一の符号で示す。
図12に示す処理によると、操作プログラムを含むネイティブを介して操作部109、表示部108を操作、制御して、削除処理を開始する。ファイル削除部304では削除指示を受けると、メモリ制御部305に指示を出し、メモリ制御部305はICメモリ101に対してシステムコードで特定する記憶領域が存在するか否かを確認し、存在するとの確認が行われると、次にエリアコードで特定する記憶領域がシステムコードで特定された記憶領域に存在するか確認する(S1103)。メモリ制御部305の確認結果に基づいてファイル解析・判断部302は、エリアコードで特定する記憶領域が存在すると判断すると、メモリ制御部305は管理テーブル303を更新することなく、表示部108は、削除できない旨の表示を行う(S1104)。
図13に、図12に示すファイル削除が失敗したときの処理シーケンスにおける管理テーブル303、ICメモリ101の記憶状態を示す概念図を示す。図13によると、ICメモリ101にはエリアコードで特定される記憶領域が存在することがわかり、アプリケーションプログラムを削除する処理を停止する必要がある。従って、管理テーブル303の記憶内容を更新する必要がなく、図12に記載のとおり管理テーブル303の更新をしない処理としている。
次に、図14はファイル削除が成功したときの処理シーケンス図である。図11で示す処理と同一の処理については図11で示す符号と同一の符号で示す。
図14では、前もって、削除しようとするアプリケーションプログラムを起動し、ICCサーバ203と通信し、ICメモリ101のエリアを削除するための操作を行う(S1401)。移動機100はICCサーバ203とオンライン通信し(S1402)、ICCサーバ203は、起動したアプリケーションプログラムに対応するシステムコード、エリアコードを用いて削除しようとするICメモリ101内の記憶領域を特定し、ICメモリ101から当該記憶領域を削除する(S1403)。
その後、操作プログラムを含むネイティブ、操作部109、表示部108を用いて、アプリケーションプログラムの削除処理を指示し、ファイル削除部304では削除指示を受けると、メモリ制御部305がICメモリ101に対してシステムコードで特定する記憶領域が存在するか否かを確認し(S1102)、ファイル解析・判断部302により存在するとの確認が行われると、次にエリアコードで特定する記憶領域がシステムコードで特定された記憶領域に存在するか確認する(S1102)。ここではファイル解析・判断部302は記憶領域が存在しないと判断し(S1103)、メモリ制御部305による管理テーブル303の更新処理を行い、表示部108は削除した旨の表示を行う(S1105からS1108)。
図15に、図14におけるファイル削除したときの処理シーケンスにおける管理テーブル303、ICメモリ101の記憶状態の状態遷移を示す概念図を示す。図15によると、管理テーブル303に、ICメモリ101のエリアコードで特定される記憶領域が存在していたが、S1403で示す処理1により、ICメモリ101から当該記憶領域が削除される。その後、S1107で示す処理2による管理テーブル303の更新処理により、ICメモリ101の記憶内容が管理テーブル303に反映される。
上述の構成、作用による効果を説明する。本発明では、ICメモリ101の記憶領域に、削除しようとするアプリケーションプログラムが使用する記憶領域が存在する場合、当該アプリケーションプログラムを削除しないよう制御することにより、過誤操作によるアプリケーションプログラムの削除を行うことを防止することができ、使い勝手の良い移動機100を実現することができる。また、ICメモリ101の記憶領域を確保したままアプリケーションプログラムを削除するといったことを防止することができ、無駄にICメモリ101の記憶領域を使用することがなくなり、効率良くICメモリ101を使用することができる。
さらに、ICメモリ101で作成された領域を示す情報を管理テーブル303に記憶させたことで、矛盾のないメモリ管理を実現することができ、別のプログラムを改めて不揮発性メモリ104に記憶させようとした場合でも、前に記憶されたプログラムにより管理メモリで領域を占有した状態とはならず、効率の良いメモリ管理を実現することができる。
また、削除の旨を表示する表示手段を備えることで、使用者はプログラムが削除できたのかできなかったのかを即座に知ることができる。
<1−3.自動接続によるアプリケーションプログラムの削除処理>
上述のアプリケーションプログラムの削除処理は、アプリケーションプログラムの起動によるICメモリ101の記憶領域の削除処理とアプリケーションプログラム自体の削除処理とを別ステップにより実現していた。本実施の形態では、これらステップを自動的に順次実行するものとする。
図16は、削除操作により自動的にICCサーバ203に接続し、アプリケーションプログラムを削除するときの処理シーケンス図である。
OS上で動作する操作プログラムを含むネイティブおよび操作部109を用いてメニュー一覧を表示部108に表示させ、アプリケーションプログラムの削除操作を行うと(S1601)、当該アプリケーションプログラムが起動し(S1602)、ICCサーバ203と接続する(1603)。
ICCサーバ203は、起動したアプリケーションプログラムのシステムコードおよびエリアコードを、サーバ内に保持している管理情報を用いて確認し、ICメモリ101に対して、システムコード、およびエリアコードで特定されている記憶領域を削除する処理を行う(S1604)。削除処理を終了した後、通信終了処理を行い、ICCサーバ203とICメモリ101とは接続断となる(S1605)。
移動機100内のアプリケーションマネージャ上で動作する通信管理を行う通信管理部(図示せず)は、アプリケーションプログラムによる通信処理が終了することを検知すると、メモリ制御部305はICメモリ101にシステムコード、およびエリアコードで特定される記憶領域の存在の有無を確認し(S1606)、エリアコードで特定する記憶領域がないとファイル解析・判断部302が判断する場合、メモリ制御部305は管理テーブル303の更新処理を行い(S1607)、ファイル削除部304はアプリケーションプログラムの削除処理を行うとともに、表示部108は削除した旨を表示する(S1608)。
なお、本実施の形態におけるICメモリ101、管理テーブル303の記憶状態の状態遷移は図15に示すとおりであり、図16のS1604(処理1)、S1607(処理2)で示すタイミングでそれぞれ管理テーブル303、ICメモリ101の記憶内容が書き換えられ、更新されている。
上述の構成、作用による効果を説明する。本発明では、ネイティブによるアプリケーション削除操作と、ICCサーバによる削除処理とを、自動的に行うことで使用者による削除操作を容易なものとする。さらに、ICメモリ101の記憶領域を確保したままアプリケーションプログラムを削除するといったことを防止することができ、無駄にICメモリ101の記憶領域を使用することがなくなり、効率良くICメモリ101を使用することができる。
さらに、管理テーブル1704aを更新した後に、移動機111で記憶するアプリケーションプログラムを削除するようにしたことで、ICメモリ101の記憶領域を確保したままアプリケーションプログラムを削除するといったことを防止することができ、無駄にICメモリ101の記憶領域を使用することがなくなり、効率良くICメモリ101を使用することができる。
次に、別の実施の形態について説明する。
上述の <1.携帯電話機100内に備えた管理テーブルを用いた処理>に示すダウンロード処理は、移動機100内に管理テーブルを備え、移動機内でICメモリ101の使用状態の判断を行うものであった。本実施の形態においては、ICメモリ101の記憶状態を管理する管理テーブルをアプリケーションDXサーバ204(図1参照)に配置し、移動機111(図1参照)でICメモリ101の記憶状態を判断することはせずアプリケーションDXサーバ204で移動機111のICメモリ101の記憶容量の判断を行うことに特徴を有するものである。
図17は、アプリケーションDXサーバ204のハードブロック構成図である。
このアプリケーションDXサーバ204は、LAN制御部1701(本発明のダウンロード手段)、RAM1702、ROM1703、管理テーブル1704aを有する不揮発性メモリ1704(本発明の管理テーブル)、ハードディスク1705、CPU1706(本発明の比較手段)を備えて構成され、LAN制御部1701を介してLANまたはインターネットと接続される。以下に各部の構成について詳述する。
LAN制御部1701は、LANまたはインターネットに接続し、LAN制御部1701を介してデータの送受信を行うものである。RAM1702は、データ処理、データ送信処理などの処理を行うためのワークエリアを有するものである。ROM1703は、データ処理、データ送信処理などを行うためのプログラムが格納されている。
不揮発性メモリ1704は、管理テーブル1704aを備える。この管理テーブル1704aは、アプリケーションプログラムの起動時におけるICメモリ101に対する記憶領域を作成する処理に先立って、作成しようとする記憶領域を確保するため、ICメモリ101の記憶領域を特定する情報(たとえば、記憶領域の始点を示すアドレス情報および記憶ブロック数)を記憶する。
次に、このアプリケーションDXサーバ204に対して、ICメモリ101の管理を委任する移動機111のソフトウエアブロック構成図を図18に示す。
図18に示す移動機は、図3に示す移動機100と比べ、管理テーブル303を除去しているものであって、アプリケーションDXサーバ204からのコマンド信号を適切に判断することのできるファイル解析・判断部302aを備える。他の構成は、図3に示すものと同一であり、同一の符号で示す。
ファイル解析・判断部302aは、アプリケーションサーバ204からSDF、またはICメモリ101に空きブロックがない旨を示す信号のいずれが送信されたかを解析し、判断する。そして、ファイル解析・判断部302aは、アプリケーションサーバ204からSDFが送信されたと判断すると、メモリ制御部305に対して、ICメモリ101をチェックするよう指示を出す。さらに、ICメモリ101にどの記憶領域が作成されているか、また記憶領域が存在しないかメモリ制御部305を介して判断する。
メモリ制御部305は、この指示に応じて、ICメモリ101の記憶状態を確認する。
<2.アプリケーションサーバによる管理をさせた場合の処理>
<2−1.ダウンロード処理>
次に、これらアプリケーションDXサーバ204、移動機111の動作を説明する。まず、アプリケーションDXサーバ204のアプリケーションプログラムのダウンロード処理時における動作フローを図19に示す。
アプリケーションDXサーバ204は、移動機111からSDFの要求であるリクエストを受信する(S1801)。ここでのリクエスト処理は、SDFを保持しているあて先であるURLにアクセスすることにより、ダウンロードしようとするアプリケーションプログラムに対応したSDFを取り出そうとするものである。そして、このリクエストを受信すると、保持している管理テーブル1704aを参照し、ICメモリ101の空き容量を示す空きブロック数と、サーバ側で保持し、ダウンロードしようとするアプリケーションプログラムに対応するSDFに記述されるICメモリ側で必要とする記憶容量を示すエリアサイズと比較する(S1802)。
ICメモリ101の空きブロックがSDFに記述されるエリアサイズより大きいと判断する場合は、アプリケーションDXサーバ204は、アプリケーションプログラムを送信する処理を開始すべくSDFを移動機111に送信する(S1803)。小さいと判断する場合は空きブロックなしの通知を移動機111に送信し(S1804)、移動機111にダウンロードを中止することを通知する。
アプリケーションDXサーバ204がSDFを送信した後、移動機111はアプリケーションプログラムのダウンロード処理をする。そして、アプリケーションDXサーバ204は、移動機111からアプリケーションプログラムのダウンロード完了の通知を受信すると(S1805)、管理テーブル1704aを更新し、ダウンロードしたアプリケーションプログラムで扱うデータを記憶する記憶領域を特定する情報を記憶する(S1806)。
このアプリケーションDXサーバ204の構成、作用から得ることのできる効果について説明する。この構成によるとアプリケーションDXサーバ204など外部の装置に管理テーブルをもたせ、ICメモリ101の空きブロックを管理させるることで、移動機の負荷を軽減し、その構成を簡易なものとすることができる。
図20は、図18の移動機111のアプリケーションプログラムをダウンロードするときの動作フローである。
移動機111に搭載しているブラウザから使用者はダウンロード操作を行い(S1901)、アプリケーションサーバ201にリクエスト送信を行う(S1902)。そして、ダウンロード制御部301は、アプリケーションサーバ201からADFを受信し(S1903)、ダウンロードしようとするアプリケーションプログラムのシステムコード等を記述するSDFを保持するアプリケーションDXサーバ204にSDFを送信するようリクエストを送信する(S1904)。
ダウンロード制御部301は、アプリケーションDXサーバ204からのSDFの送信待ち状態となる。ダウンロード制御部301でSDFを受信せず、ICメモリ101に空きブロックが存在しない旨の通知であるNGコマンドを受信したとファイル解析・判断部302aが判断すると(S1905)、ファイル解析・判断部302aはダウンロード制御部301に指示し、ダウンロード制御部301は、ダウンロードを中止する制御を行う(S1907)。
ダウンロード制御部301がSDFを受信したと、ファイル解析・判断部302aが判断すると(S1905)、メモリ制御部305に指示し、メモリ制御部305は受信したSDFに記述されている内容を不揮発性メモリ104に記憶するとともに、ICメモリ101にシステムコードで特定する記憶領域が存在するか否かの確認を行い(S1906)、ファイル解析・判断部302aが存在しないと判断する場合は、ダウンロード制御部301に指示し、ダウンロード制御部301はダウンロードを中止する制御を行う(S1907)。
ファイル解析・判断部302aは記憶領域が存在すると判断する場合は、メモリ制御部301がさらにICメモリ101に、システムコードで特定した記憶領域の中にエリアコードで特定する記憶領域がすでに存在するか否かを確認し、ファイル解析・判断部302aが判断する(S1908)。
ファイル解析・判断部302aは記憶領域が存在すると判断すると、既に保持しているアプリケーションプログラムをダウンロードしようとすることになるため、ダウンロード制御部301に指示し、ダウンロード制御部301は、ダウンロードを中止する制御を行う(S1907)。ファイル解析・判断部302aは記憶領域が存在しないと判断すると、ダウンロード制御部301は、アプリケーションサーバ201にダウンロードのリクエストを送信する(S1909)。そして、ダウンロード制御部301は、アプリケーションサーバ201からアプリケーションプログラムを受信し、不揮発性メモリ104に保存する(S1910)。
ダウンロード制御部301によるアプリケーションプログラムのダウンロードが完了し、不揮発性メモリ104に保存されると、ダウンロード制御部301は、ダウンロードが完了したことをアプリケーションDXサーバ204に通知する(S1911)。
次に、上述動作フローで示したダウンロード処理について、その処理が成功したときのシーケンス図を図21に示す。なお、図19、図20で示される動作においては、これら図19、図20で示された符号と同一の符号を用いる。
図21に示すとおり、移動機111では、ブラウザを介してダウンロード操作を行い、リクエストの送信、ADFの受信、SDFのリクエストの送信(S1901〜S1904)を行う。
アプリケーションDXサーバ204では、移動機111からのリクエスト信号に含まれる情報に基づいて移動機111にダウンロードさせるアプリケーションプログラムに対応するSDFをハードディスク1705から取得し、アプリケーションプログラムがICメモリ101に必要とする記憶容量を示す情報であるエリアサイズを取り出す。そして、このエリアサイズで示す記憶容量と、管理テーブル1704aで管理しているICメモリ101の実際の空きブロックとを比較し、空きブロックが大きい場合は、移動機111に対してSDFを送信する(S1802、S1803)。
移動機111のファイル解析・判断部302aでは、SDFを受信すると判断すると、メモリ制御部305はSDFに記述されるシステムコードに基づいてICメモリ101内にシステムコードで特定する記憶領域が存在するか否かを確認し、ファイル解析・判断部302aが存在すると判断する場合には、ダウンロード制御部301はアプリケーションサーバ201にリクエストを送信し、アプリケーションプログラムのダウンロードを行う。そして、ダウンロード制御部301でダウンロードしたアプリケーションプログラムを不揮発性メモリ104に保存すると、ダウンロード制御部301はダウンロードが完了したことをアプリケーションDXサーバ204に送信する(S1906から1911)。
アプリケーションDXサーバ204では、管理テーブル1704aに、ICメモリ101で使用されている記憶領域を特定して記憶することで、管理テーブル1704aの更新を行う(S1805、1806)。その後、使用者の任意の操作により起動したアプリケーションプログラムは、ICCサーバ203にICメモリ101に対してアプリケーションプログラムに対応する領域の作成をするよう指示する。
アプリケーションDXサーバ204が備える管理テーブル1704a、ICメモリ101の状態状態は図8に示すとおりであり、図21のS1806で示す処理1、およびICCサーバ203によるエリア作成で示す処理2に示すタイミングで管理テーブル1704aの記憶内容、ICメモリ101の記憶内容が書き換えられ、更新される。
次に、アプリケーションDXサーバ204で、ICメモリ101で空きブロックがない旨を通知してダウンロードを中止する制御を行うときのシーケンス図を図22に示す。図19、図20で示す処理と同一の処理については図19、図20で示す符号と同一の符号で示す。
ダウンロード操作からリクエスト送信まで(S1901からS1904)は、上述図21と同じである。
アプリケーションDXサーバ204は、移動機111からリクエストを受けると(S1904)、管理テーブル1704aを参照し、ICメモリ101にSDFに記述されるエリアサイズ以上の空きブロックが存在するか、否か判断する(S1802)。ここでは、アプリケーションDXサーバ204は、空きブロックがない旨の通知を移動機111に行い(S1804)、移動機111はアプリケーションプログラムのダウンロードを中止し、表示部108はその旨の表示を行う(S1907)。
次に、ICメモリ101内にSDFに含まれるシステムコードで特定する領域が存在しない場合にダウンロードを中止する制御を行うときのシーケンス図を図23に示す。図19、図20で示す処理と同一の処理については図19、図20で示す符号と同一の符号で示す。
移動機111でダウンロード操作を行い、アプリケーションDXサーバ204で管理テーブル1704aの確認を行い、SDFのシステムコードで特定する領域が存在するか否かの確認を行うところまで(S1901からS1904、S1802、S1803、S1906)は、上述図21に記載の動作と同じである。
本実施の形態では、メモリ制御部305は、ICメモリ101にシステムコードで特定する領域が存在するか、存在しないか確認し(S1906)、ファイル解析・判断部302aは存在しない旨の判断を行うと、ダウンロード制御部305は、この判断に基づいてアプリケーションサーバ201にリクエストを送信することなく、アプリケーションプログラムのダウンロードを中止する制御を行い、ダウンロードを中止した旨を表示する(S1907)。
上述の構成、作用による効果を説明する。本発明では、アプリケーションDXサーバ204でICメモリ101の容量の管理を行うことで、移動機111側で管理テーブルを持つ必要がなくなり、その構成を簡易なものとすることができる。さらに、移動機側ではSDFを受信するとダウンロード処理を継続し、空きブロックが存在しない旨の通知を受信するとダウンロードを中止するといった簡単な判断をするだけで、ダウンロードの要否を判断することができ、移動機111を簡易な構成とすることができる。
<2−2.アプリケーションプログラムの削除処理>
上述したとおりの方法によりダウンロードしたアプリケーションプログラムを削除する処理について説明する。
図24は、本実施の形態によるアプリケーションプログラムの削除処理を行うときの移動機111の動作フローを示す図である。
操作プログラムを含むネイティブ、表示部108、操作部109を介して使用者が、削除するアプリケーションを指定すると(S2301)、ファイル解析・判断部302aは、アプリケーションプログラムをダウンロードした際に受信して記憶したSDFの内容をチェックし、システムコード、エリアコードを確認する(S2302)。
ファイル解析・判断部302aが確認したシステムコード、エリアコードを用いて、メモリ制御部305はICメモリ101にシステムコード、およびエリアコードで特定した記憶領域が存在するか否かを確認し、ファイル解析・判断部302aがこれを判断する(S2303)。ファイル解析・判断部302aは、記憶領域があると判断すると、表示部108は当該アプリケーションプログラムを削除しない旨を表示する(S2304)。
ファイル解析・判断部302aは、記憶領域が存在しないと判断すると、ダウンロード制御部301は記憶領域が存在しない旨をアプリケーションDXサーバ204に通知する(S2305)。そして、ダウンロード制御部301は、アプリケーションDXサーバ204から、この通知に対する応答である管理テーブル1704aを更新した旨を示す通知の受信待ち状態となり(S2306)、受信すると、ファイル削除部304は、削除しようとして指定したアプリケーションプログラムを不揮発性メモリ104から削除する(S2307)。そして、表示部108は削除した旨を表示する(S2308)。
次に、上述の移動機111の動作に応答し、アプリケーションプログラムを削除するときのアプリケーションDXサーバ204の動作フローを図25に示す。
アプリケーションDXサーバ204は、移動機111からICメモリ101にエリアコードで特定した記憶領域が存在しない旨の通知を受信する(S2401)。そして、この通知を受信した後、ICメモリ101の記憶状態を管理テーブル1704aに反映させるべく、管理テーブル1704aの記憶内容を書き換えて更新する(S2402)。その後、管理テーブル1704aを更新した旨の通知を、アプリケーションの削除処理をしようとする移動機111に行う(S2403)。
このように動作する移動111、アプリケーションDXサーバ204のシーケンス図を図26に示す。図24、図25で示す処理と同一の処理については図24、図25で示す符号と同一の符号で示す。
本実施の形態例では、実際にアプリケーションプログラムの削除処理を実行する前に、削除しようとするアプリケーションプログラムを起動して、ICCサーバ203と接続し(S2501)、オンライン通信を行うことでICCサーバ203による、ICメモリ101に対する当該アプリケーションプログラムが使用する記憶領域の削除処理を行う(S2502)。
その後、使用者の任意の操作によりネイティブを操作し、メニュー一覧によりアプリケーションプログラムの削除操作を行う。そして、ファイル解析・判断部302aは、メモリ制御部305がシステムコード、エリアコードを用いてICメモリ101に記憶領域があるか否かを確認した結果により判断し、該当する記憶領域が存在しないと判断する場合は、ダウンロード制御部301はその旨をアプリケーションDXサーバ204に通知する(S2301〜S2305)。アプリケーションDXサーバ204では管理テーブル1704aの更新処理を行い、更新したことを移動機111に通知する(S2401〜S2403)。移動機111は、その通知をダウンロード制御部301で受信すると、ファイル削除部305により指定されたアプリケーションプログラムを削除し、表示部108は削除した旨を表示する(S2307、S2308)。
なお、本実施の形態におけるICメモリ101、管理テーブル303の記憶状態の状態遷移は図15に示すとおりであり、図26のS2502(処理1)、S2402(処理2)で示すタイミングでそれぞれ管理テーブル303、ICメモリ101の記憶内容が書き換えられ、更新されている。
上述の構成、作用による効果を説明する。本発明では、管理テーブル1704aを更新した後に、移動機111で記憶するアプリケーションプログラムを削除するようにしたことで、さらに、ICメモリ101の記憶領域を確保したままアプリケーションプログラムを削除するといったことを防止することができ、無駄にICメモリ101の記憶領域を使用することがなくなり、効率良くICメモリ101を使用することができる。また、管理テーブル自体をアプリケーションDXサーバ204に備え付けることで、移動機111の構成を簡易なものとし、その処理を簡易なものとすることができる。
<2−3.自動接続によるアプリケーションプログラムの削除処理>
上述のアプリケーションプログラムの削除処理は、アプリケーションプログラムの起動によるICメモリ101の記憶領域の削除処理とアプリケーションプログラム自体の削除処理とを別ステップにより実現していた。本実施の形態では、これらステップを自動的に順次実行するものとする。
以下に、この自動的に削除処理を行うことのできる動作を説明する。図27は、アプリケーションプログラムを削除する際、自動的にICCサーバ203と接続し、ICメモリ101の記憶領域を削除することのできるシーケンスを示す図である。
操作プログラムを含むネイティブ、操作部109を用いてメニュー一覧を表示部108に表示させ、アプリケーションプログラムの削除操作を行うと(S2601)、当該アプリケーションプログラムが起動し(S2602)、ICCサーバ203と接続する(2603)。
ICCサーバ203は、起動したアプリケーションプログラムのシステムコード、およびエリアコードを、ICCサーバ203内に保持している管理情報を用いて確認し、APIを介してICメモリ101と接続する。そして、ICCサーバ203は、起動したアプリケーションプログラムに対応したシステムコードおよびエリアコードで特定されている記憶領域を削除する処理を行う(S2604)。ICCサーバ203による削除処理を終了した後、起動したアプリケーションプログラムは通信終了処理を行い、ICCサーバ203とICメモリ101との接続を断とする(S2605)。
移動機111内のアプリケーションマネージャ(通信管理部(図示せず))は通信処理が終了することを検知すると、メモリ制御部305はICメモリ101にシステムコード、およびエリアコードで特定される記憶領域の存在の有無を確認する(S2606)。そして、ファイル解析・判断部302aがエリアコードで特定する記憶領域がないと判断する場合、ダウンロード制御部301は該当する記憶領域がない旨をアプリケーションDXサーバ204に通知する(S2607)。アプリケーションDXサーバ204では、移動機111のICメモリ101の記憶状況を反映するよう管理テーブル1704aの記憶内容を書き換え更新し、その旨を移動機111に通知する(S2608)。
この通知を受けた移動機111は、ファイル削除部304により削除しようとしたアプリケーションプログラムを削除し(S2609)、表示部108は削除した旨を表示する(S2610)。 なお、本実施の形態におけるICメモリ101、管理テーブル303の記憶状態の状態遷移は図15に示すとおりであり、図27のS2604(処理1)、S2608(処理2)で示すタイミングでそれぞれ管理テーブル1704a、ICメモリ101の記憶内容が書き換えられ、更新されている。
上述の構成、作用による効果を説明する。本発明では、このように処理することで、ネイティブによるアプリケーション削除操作と、ICCサーバによる削除処理とを自動的に行うことができ、使用者による削除操作を容易なものとする。さらに、アプリケーションDXサーバ204のような外部の管理サーバが管理テーブル1704aを備え、このサーバが管理テーブルの更新処理を行うことで、移動機111に管理テーブルを備えることを必要とせず、簡易な構成の移動機を実現することができる。
さらに、管理テーブル1704aを更新した後に、移動機111で記憶するアプリケーションプログラムを削除するようにしたことで、ICメモリ101の記憶領域を確保したままアプリケーションプログラムを削除するといったことを防止することができ、無駄にICメモリ101の記憶領域を使用することがなくなり、効率良くICメモリ101を使用することができる。
100…移動機、101…ICメモリ、102…RAM、103…ROM、104…不揮発性メモリ、105…無線通信部、106…パケット通信部、107…電話通信部、108…表示部、109…操作部、110…CPU、201 アプリケーションサーバ、202…アプリケーションDXサーバ、203…ICCサーバ、401…外部リーダ端末、402…外部リーダ端末、403…外部リーダ端末