(57)【特許請求の範囲】
【請求項１】
情報処理端末上のアプリケーションの競合管理システムであって、
前記アプリケーションの競合情報を前記アプリケーション単位に記述したファイルを読み込み、競合情報データベースを作成するデータベース作成手段と、
前記競合情報データベースを元に、前記アプリケーションの競合判定を行う競合判定手段とを含み、
前記データベース作成手段は、
前記情報処理端末外から新規アプリケーションがインストールされる際に、同時に送付される新規アプリケーションの競合情報を記したファイルを解釈して前記競合情報データベースに追加登録し、
前記競合判定手段は、
前記追加登録された新規アプリケーションの競合情報を元に前記アプリケーションの競合判定を行う
ことを特徴とするアプリケーション競合管理システム。
【請求項２】
前記データベース作成手段は、前記ファイルに記述されたアプリケーションの各状態毎のプライオリティを解釈して前記競合情報データベースに登録し、前記競合判定手段は、前記プライオリティ情報を元に前記アプリケーションの競合判定を行うことを特徴とする請求項１に記載のアプリケーション競合管理システム。
【請求項３】
前記データベース作成手段は、前記ファイルに記述されたアプリケーションの各状態毎の前記情報処理端末内の資源に対する起動条件を解釈して前記競合情報データベースに登録し、前記競合判定手段は、前記起動条件を元に前記アプリケーションの競合判定を行うことを特徴とする請求項１又は請求項２に記載のアプリケーション競合管理システム。
【請求項４】
前記データベース作成手段は、前記ファイルに記述されたアプリケーションの各状態毎の前記情報処理端末内の資源占有条件を解釈して前記競合情報データベースに登録し、前記競合判定手段は、前記資源占有条件を元に前記アプリケーションの競合判定を行うことを特徴とする請求項１から請求項３の何れか１項に記載のアプリケーション競合管理システム。
【請求項５】
前記データベース作成手段は、前記ファイルに記述されたアプリケーションの起動時における他のアプリケーションへの動作指示を解釈して前記競合情報データベースに登録し、前記競合判定手段は、前記動作指示をアプリケーション起動時に実施することを特徴とする請求項１から請求項４の何れか１項に記載のアプリケーション競合管理システム。
【請求項６】
前記データベース作成手段は、前記情報処理端末と有線もしくは無線通信手段で接続された外部情報処理端末内に設けられており、前記ファイルを解釈したデータを前記通信手段を用いて前記競合情報データベースに送信して登録することを特徴とする請求項１から請求項５の何れか１項に記載のアプリケーション競合管理システム。
【請求項７】
情報処理端末上のアプリケーション競合管理方法であって、
前記アプリケーションの競合情報を前記アプリケーション単位に記述したファイルを読み込み、競合情報データベースを作成するステップと、
前記データベースを元に前記アプリケーションの競合判定を行うステップとを含み、
前記データベース作成ステップにおいて、
前記情報処理端末外から新規アプリケーションがインストールされる際に、同時に送付される新規アプリケーションの競合情報を記したファイルを解釈して前記競合情報データベースに追加登録し、
前記競合判定ステップにおいて、
追加登録された新規アプリケーションの競合情報を元に前記アプリケーションの競合判定を行う
ことを特徴とするアプリケーション競合管理方法。
【請求項８】
前記データベース作成ステップにおいて、前記ファイルに記述されたアプリケーションの各状態毎のプライオリティを解釈して前記競合情報データベースに登録し、前記競合判定ステップにおいて、前記プライオリティ情報を元に前記アプリケーションの競合判定を行うことを特徴とする請求項７に記載のアプリケーション競合管理方法。
【請求項９】
前記データベース作成ステップにおいて、前記ファイルに記述されたアプリケーションの各状態毎の情報処理端末内の資源に対する起動条件を解釈して前記競合情報データベースに登録し、前記競合判定ステップにおいて、前記起動条件を元に前記アプリケーションの競合判定を行うことを特徴とする請求項７または請求項８に記載のアプリケーション競合管理方法。
【請求項１０】
前記データベース作成ステップにおいて、前記ファイルに記述されたアプリケーションの各状態毎の情報処理端末内の資源占有条件を解釈して前記競合情報データベースに登録し、前記競合判定ステップにおいて、前記資源占有条件を元に前記アプリケーションの競合判定を行うことを特徴とする請求項７から請求項９の何れか１項に記載のアプリケーション競合管理方法。
【請求項１１】
前記データベース作成ステップにおいて、前記ファイルに記述されたアプリケーションの起動時における他のアプリケーションへの動作指示を解釈して前記競合情報データベースに登録し、前記アプリケーションの競合判定を行うステップは、前記動作指示をアプリケーション起動時に実施することを特徴とする請求項７から請求項１０の何れか１項に記載のアプリケーション競合管理方法。
【請求項１２】
前記データベース作成ステップにおいて、前記情報処理端末と有線もしくは無線通信手段で接続された外部情報処理端末内で動作し、前記ファイルを解釈したデータを前記通信手段を用いて前記データベースに送信して登録することを特徴とする請求項７から請求項１１の何れかに記載のアプリケーション競合管理方法。
【請求項１３】
情報処理端末上のアプリケーション競合管理方法をコンピュータに実行させるためのプログラムであって、
前記コンピュータに、
前記アプリケーションの競合情報を前記アプリケーション単位に記述したファイルを読み込み、競合情報データベースを作成する処理と、前記競合情報データベースを元にアプリケーションの競合判定を行う処理を実行させ、
前記データベース作成処理において、
前記情報処理端末外から新規アプリケーションがインストールされる際に、同時に送付される新規アプリケーションの競合情報を記したファイルを解釈して前記競合情報データベースに追加登録し、
前記競合判定処理において、
前記追加登録された新規アプリケーションの競合情報を元に前記アプリケーションの競合判定を行う
ことを特徴とするプログラム。
【請求項１４】
前記データベース作成処理において、前記ファイルに記述されたアプリケーションの各状態毎のプライオリティを解釈して前記競合情報データベースに登録し、前記競合判定処理において、前記プライオリティ情報を元に前記アプリケーションの競合判定を行うことを特徴とする請求項１３に記載のプログラム。
【請求項１５】
前記データベース作成処理において、前記ファイルに記述されたアプリケーションの各状態毎の前記情報処理端末内の資源に対する起動条件を解釈して前記競合情報データベースに登録し、前記競合判定処理において、前記起動条件を元に前記アプリケーションの競合判定を行うことを特徴とする請求項１３または請求項１４に記載のプログラム。
【請求項１６】
前記データベース作成処理において、前記ファイルに記述されたアプリケーションの各状態毎の前記情報処理端末内の資源占有条件を解釈して前記競合情報データベースに登録し、前記競合判定処理において、前記資源占有条件を元に前記アプリケーションの競合判定を行うことを特徴とする請求項１３から請求項１５の何れか１項に記載のプログラム。
【請求項１７】
前記データベース作成処理において、前記ファイルに記述されたアプリケーションの起動時における他のアプリケーションへの動作指示を解釈して前記競合情報データベースに登録し、前記競合判定処理において、前記動作指示をアプリケーション起動時に実施することを特徴とする請求項１３から請求項１６の何れか１項に記載のプログラム。
【請求項１８】
前記データベース作成処理において、前記情報処理端末と有線もしくは無線通信手段で接続された外部情報処理端末内で動作し、アプリケーションの競合情報を記したファイルを解釈したデータを通信手段を用いて前記競合情報データベースに送信して登録することを特徴とする請求項１３から請求項１７の何れかに記載のプログラム。
【請求項１９】
請求項１から請求項６の何れかに記載のアプリケーション競合管理システムを備えたことを特徴とする情報処理端末。
【請求項２０】
携帯通信端末であることを特徴とする請求項１９に記載の情報処理端末。
【発明の詳細な説明】
【技術分野】  本発明はアプリケーション競合管理システム及びその方法並びにそれを用いた情報処理端末に関し、特に携帯通信端末などの情報処理端末の上でのアプリケーションプログラム（以下、単にアプリケーションと称す）の競合管理をなすアプリケーション競合管理方式に関するものである。
【背景技術】  携帯電話機に代表される携帯通信端末においては、通常のパーソナルコンピュータと比較して、ＣＰＵ、ハードディスク、メモリ、ネットワークといった各種コンピュータ資源が貧弱であるために、他のアプリケーションがある資源を利用している場合は、その資源を利用する他のアプリケーションは起動できない、もしくはその資源を利用するような状態へと遷移できないというケースがあり、これはアプリケーション間の競合と呼ばれている。
携帯通信端末上でアプリケーションの競合を制御するシステムの一例が、特開２００３−１７７９２６号公報に記載されている。この従来のアプリケーション競合制御システムは、アプリケーション間の競合判定手段と、競合判定データ保持手段と、現在起動中のアプリケーションの状態の保持手段とから構成されている。このような構成を有する従来のアプリケーション競合制御システムは次のように動作する。
すなわち、携帯通信端末上においてあるアプリケーションが起動する際、アプリケーションは、アプリケーション間の競合判定手段に対してアプリケーション起動の可否を問い合わせる。この競合判定手段は、現在起動中のアプリケーションの状態の保持手段から得られた、現在起動しているアプリケーション及びその状態の情報を取得し、その情報と競合判定データ保持手段に保持されているアプリケーション間の競合情報とを元に、これから起動するアプリケーションと、起動中のアプリケーションとの競合判定を行って起動の可否を決定する。起動の可否の結果が通知されたアプリケーションは、通知された指示に従って、アプリケーションの起動もしくは終了を行う。
また、特開２００３−１７７９２６号公報を参照すると、個々の処理プログラムが共用資源をどのように利用するかを示す情報を排他制御情報として予め記憶しておき、この排他制御情報を用いて処理プログラム間の排他制御を行う技術が開示されている。
上述した特開２００３−１７７９２６号公報における問題点は、アプリケーションの競合判定データが大量になり、競合判定データの作成工数及びアプリケーションの追加等に伴う競合判定データ修正の工数が極めて大になるということである。その理由は、アプリケーションの競合判定データは、携帯通信端末に搭載される全てのアプリケーションに関して、各アプリケーションが取り得る状態の組み合わせに対して準備する必要があるためである。
例えば、携帯通信端末に搭載されるアプリケーションが３０個であり、各アプリケーションが取り得る状態が５種類ずつあるとすると、（３０×５）×（３０×５）＝２２，５００の組み合わせの競合判定データを準備する必要があり、このデータの作成工数及びメンテナンス工数は膨大なものとなる。ここで、アプリケーションの取り得る状態とは、例えば、通信中状態や、カードデバイス使用中状態、といったものである。
特開２００３−１７７９２６号公報及び特開平１０−０４９３８９号公報における他の問題点は、ダウンロード等によるアプリケーションの動的な追加に、アプリケーションの競合制御機構が対応できないということである。その理由は、携帯通信端末内の競合判定データを、新たに作成したり、更新する手段がないためである。
本発明の目的は、携帯通信端末などの情報通信端末上でのアプリケーション間の競合制御において、競合判定のためのデータの作成、修正を容易にできるアプリケーション競合管理システム及びその方法並びにそれを用いた情報通信端末及びプログラムを提供することである。
【発明の開示】
本発明によるアプリケーション競合管理システムは、情報処理端末上のアプリケーションの競合管理システムであって、アプリケーションの競合情報を、アプリケーション単位に記述したファイルを処理して競合情報データベースを作成する手段と、前記競合情報データベースを元に、アプリケーションの競合判定を行う手段とを含むことを特徴とする。
本発明によるアプリケーション競合管理方法は、情報処理端末上のアプリケーション競合管理方法であって、アプリケーションの競合情報をアプリケーション単位に記述したファイルを処理して競合情報データベースを作成するステップと、前記データベースを元に前記アプリケーションの競合判定を行うステップとを含むことを特徴とする。
本発明によるプログラムは、情報処理端末上のアプリケーション競合管理方法をコンピュータに実行させるためのプログラムであって、アプリケーションの競合情報をアプリケーション単位に記述したファイルを処理して競合情報データベースを作成する処理と、前記データベースを元にアプリケーションの競合判定を行う処理とを含むことを特徴とする。
本発明による情報処理端末は上記のアプリケーション競合管理システムを備えてなることを特徴とする。
本発明の作用を述べる。アプリケーション毎に準備された競合情報ファイルを処理して競合情報データベースを作成、更新する競合情報ファイル処理手段と、そこで作成された競合情報データベースから競合情報を取得する競合データベースアクセス手段とを設け、アプリケーションが起動する際には、そのアプリケーションと、現在起動しているアプリケーションの状態に対応した競合情報を予め競合情報ファイル処理手段によって作成された競合情報データベースから競合データベースアクセス手段を用いて取得し、起動の可否を判定するよう動作する。かかる構成を採用することにより、本発明の上記目的を達成することができる。
【図面の簡単な説明】  図１は、本発明の第１の実施の形態の構成を示すブロック図である。
図２は、図１の実施の形態の一部の動作を示す流れ図である。
図３は、図１の実施の形態の一部の動作を示す流れ図である。
図４は、本発明の第２の実施の形態の構成を示すプロック図である。
図５は、図４の実施の形態の動作を示す流れ図である。
図６は、本発明の第３の実施の形態の構成を示すブロック図である。
図７は、図６の実施の形態の構成を示す流れ図である。
図８は、アプリケーション競合情報ファイルの例を示した図である。
図９は、特開２００３−１７７９２６号公報に示された競合判定データの例を示す図である。
図１０は、特開２００３−１７７９２６号公報に示された動作時データの例を示す図である。
【符号の説明】
１００：携帯端末、１１０：競合判定手段、１２０：競合判定データアクセス手段、１３０，２２０：競合情報ファイル処理手段、１４０：起動中アプリケーション状態保持手段、１５０：競合情報データベース、１６０：アプリケーションインストール手段、２００：アプリケーション配信端末、２１０：アプリケーション配信手段、２３０：競合情報ファイル保持手段
【発明を実施するための最良の形態】  以下に、図面を参照しつつ本発明の実施の形態について詳細に説明する。図１を参照すると、本発明の第１の実施の形態の機能ブロックが示されており、本実施の形態は、携帯通信端末（以下、携帯端末と称す）１００上にある、競合判定手段１１０と、競合判定データアクセス手段１２０と、競合情報ファイル処理手段１３０と、起動中アプリケーション状態保持手段１４０と、競合情報データベース１５０とから構成されている。これらの手段はそれぞれ概略次のように動作する。
競合判定手段１１０は、アプリケーションからの起動またはアプリケーション内の状態遷移の可否の問い合わせを受けると、起動中アプリケーション状態保持手段１４０に保持されている起動中アプリケーション情報を取り出し、その起動中アプリケーションと問い合わせを受けたアプリケーションとの間の競合判定データを、競合判定データアクセス手段１２０を用いて競合情報データベース１５０から取得し、その判定データを元に起動の可否を問い合わせ元のアプリケーションに返却する。
競合判定データアクセス手段１２０は、競合判定手段１１０からの指示を受けて、指定されたアプリケーション間の競合判定データを競合情報データベース１５０から取り出し、返却する。競合情報ファイル処理手段１３０は、アプリケーション毎に準備された競合情報ファイルを読み込んで、競合情報データベース１５０にアプリケーション間の競合情報を記述した競合判定データとして登録する。起動中アプリケーション状態保持手段１４０は、現在携帯端末１００上で起動しているアプリケーション及びその状態に関する情報を保持するものである。
次に、図２及び図３のフローチャートを参照して、図１に示した本実施の形態の全体の動作について詳細に説明する。まず、携帯端末１００上でアプリケーションが起動もしくはアプリケーション内の他の状態に遷移する際、アプリケーションは起動及び状態遷移の可否を競合判定手段１１０に問い合わせる（ステップＡ１）。次に、競合判定手段１１０は、起動中アプリケーション状態保持手段１４０から、現在携帯端末１００上で起動中のアプリケーション及びその状態の情報を取得する（ステップＡ２）。
その後、競合判定手段１１０はステップＡ１で問い合わせを行ったアプリケーションの状態と、ステップＡ２で取得した起動中のアプリケーションの状態間の競合判定データを、競合判定データアクセス手段１２０を用いて競合情報データベース１５０より取得する（ステップＡ３）。競合判定データを取得した競合判定手段１１０は、その判定データを元に問い合わせを行ったアプリケーションに対して起動もしくは状態遷移の可否の返答を行う（ステップＡ４）。最後に、問い合わせを行ったアプリケーションは、競合判定手段１１０の返答結果に従い、起動、状態遷移の実行（ステップＡ５）、もしくは中断等の処理を行う（ステップＡ６）。
ここで、図２に示した上記処理の前に、図３に示すように、アプリケーション毎に準備された競合情報を記した競合情報ファイルを、競合情報ファイル処理手段１３０は読み込み（ステップＢ１）、競合情報データベース１５０に競合判定データとして登録する（ステップＢ２）という処理が行われる。
このように、本実施の形態では、アプリケーション単位に競合情報を記した競合情報ファイルを準備し、これを元に競合情報データベースを作成、更新するというように構成されているため、競合情報を最初に作成する場合や、アプリケーションの追加、削除に伴って競合情報を更新する場合にも、従来の手法と比べて少ない工数で実現できる。
次に、本発明の第２の実施の形態について図４を参照して詳細に説明する。図４において図１と同等部分は同一符号により示している。図４を参照すると、本発明の第２の実施の形態は、携帯端末１００とアプリケーション配信端末２００とから構成されている。携帯端末１００とアプリケーション配信端末２００は、有線または無線の通信手段によって接続されているものとする。
携帯端末１００は、競合判定手段１１０と、競合判定データアクセス手段１２０と、競合情報ファイル処理手段１３０と、起動中アプリケーション状態保持手段１４０と、競合情報データベース１５０と、アプリケーションインストール手段１６０とから構成されている。また、アプリケーション配信端末２００は、アプリケーション配信手段２１０から構成されている。これらの手段はそれぞれ概略次のように動作する。
予め携帯端末１００上では、既に携帯端末１００上にある各アプリケーションの競合情報に対応した競合情報データベース１５０が、先の第１の実施の形態において説明した手順で作成されているとする。競合判定手段１１０は、アプリケーションからの起動またはアプリケーション内の状態遷移の可否の問い合わせを受けると、起動中アプリケーション状態保持手段１４０に保持されている起動中アプリケーション情報を取り出し、その起動中アプリケーションと問い合わせを受けたアプリケーションとの間の競合判定データを、競合判定データアクセス手段１２０を用いて競合情報データベース１５０から取得し、その判定データを元に起動の可否を問い合わせ元のアプリケーションに返却する。
競合情報ファイル処理手段１３０は、アプリケーション毎に準備された競合情報ファイルを読み込んで、競合情報データベース１５０にアプリケーション間の競合情報を記述した競合判定データとして登録する。また、アプリケーションインストール手段１６０を用いて携帯端末１００中に新規にアプリケーションがインストールされた際に、新規アプリケーションの競合情報を記述した競合情報ファイルを読み込んで、競合情報データベース１５０に新しいアプリケーションに関する競合判定データを追加する。
競合判定データアクセス手段１２０は、競合判定手段１１０からの指示を受けて、指定されたアプリケーション間の競合判定データを競合情報データベース１５０から取り出し、返却する。起動中アプリケーション状態保持手段１４０は、現在携帯端末１００上で起動しているアプリケーション及びその状態に関する情報を保持するものである。
アプリケーションインストール手段１６０は、アプリケーション配信端末２００上のアプリケーション配信手段２１０を利用して、新規アプリケーション及びそのアプリケーションの競合情報を記述した競合情報ファイルをダウンロードし、携帯端末１００にインストールする。アプリケーション配信手段２１０は、複数個のアプリケーションを保持、管理しており、携帯端末１００上のアプリケーションインストール手段１６０の要求に応じて、アプリケーション及びそのアプリケーションの競合情報ファイルを携帯端末１００に配信する。
次に、図５のフローチャートを参照して本実施の形態の全体の動作について詳細に説明する。ここで、予め携帯端末１００上にインストールされているアプリケーションに関しては、第１の実施の形態で説明した手順により競合判定データが競合情報データベース１５０に登録されているとし、それ以降の手順について説明する。
先ず、携帯端末１００上のアプリケーションインストール手段１６０は、アプリケーション配信端末２００上のアプリケーション配信手段２１０に対して、携帯端末１００に新規にインストールしたいアプリケーションのダウンロード要求を出す（ステップＣ１）。ダウンロード要求を受けたアプリケーション配信手段２１０は、指定のアプリケーション及びそのアプリケーションの競合情報を記述した競合情報ファイルを、携帯端末１００に配信する（ステップＣ２）。
アプリケーション配信手段２１０から配信されたアプリケーション及び競合情報ファイルを受信した携帯端末１００上のアプリケーションインストール手段は、携帯端末１００内へのアプリケーションインストール処理を行う（ステップＣ３）。最後に、競合情報ファイル処理手段１３０は、新規アプリケーションの競合情報ファイルを読み込み、競合情報データベース１５０に対して新しいアプリケーションに関する競合判定データを追加する（ステップＣ４）。
これによって、新規にインストールされたアプリケーションに対しても、既存のアプリケーションと同様に、第１の実施の形態において説明した仕組みを用いて、アプリケーションの競合制御を適用することができる。
本実施の形態では、アプリケーションインストール手段１６０を用いて端末外からのアプリケーションを携帯端末１００に追加する際に、該当アプリケーションの競合情報ファイルを同時にダウンロードし、これを競合情報ファイル処理手段１３０を用いて処理し、競合判定データを競合情報データベース１５０に追加登録するというように構成されているため、新規に追加されたアプリケーションに対しても、従来のアプリケーションに対するのと同様のアプリケーション間競合制御が実現できる。
次に、本発明の第３の実施の形態について図６を参照しつつ詳細に説明する。なお、図６において、図１及び図４と同等部分は同一符号により示している。図６を参照すると、本発明の第３の実施の形態は、携帯端末１００とアプリケーション配信端末２００とから構成されている。携帯端末１００とアプリケーション配信端末２００は、有線または無線の通信手段によって接続されている。
携帯端末１００は、競合判定手段１１０と、競合判定データアクセス手段１２０と、起動中アプリケーション状態保持手段１４０と、競合情報データベース１５０と、アプリケーションインストール手段１６０とから構成されている。また、アプリケーション配信端末２００は、アプリケーション配信手段２１０と、競合情報ファイル処理手段２２０、競合情報ファイル保持手段２３０、競合判定データ保持手段２４０とから構成されている。これらの手段はそれぞれ概略次のように動作する。
競合判定手段１１０は、アプリケーションからの起動またはアプリケーション内の状態遷移の可否の問い合わせを受けると、起動中アプリケーション状態保持手段１４０に保持されている起動中アプリケーション情報を取り出し、その起動中アプリケーションと問い合わせを受けたアプリケーションとの間の競合判定データを、競合判定データアクセス手段１２０を用いて競合情報データベース１５０から取得し、その判定データを元に起動の可否を問い合わせ元のアプリケーションに返却する。
競合判定データアクセス手段１２０は、競合判定手段１１０からの指示を受けて、指定されたアプリケーション間の競合判定データを競合情報データベース１５０から取り出し、返却する。起動中アプリケーション状態保持手段１４０は、現在携帯端末１００上で起動しているアプリケーション及びその状態に関する情報を保持するものである。
アプリケーションインストール手段１６０は、アプリケーション配信端末２００上のアプリケーション配信手段２１０を利用して、新規アプリケーション及び競合判定データをダウンロードし、携帯端末１００にアプリケーションをインストールすると同時に、ダウンロードした競合判定データを競合情報データベース１５０に登録する。
競合情報ファイル処理手段２２０は、競合情報ファイル保持手段２３０に保存されているアプリケーション毎に準備された競合情報ファイルを読み込んで、競合判定データ保持手段２４０にアプリケーション間の競合情報を記述した競合判定データとして登録する。
競合情報ファイル保持手段２３０は、携帯端末１００上にインストールされているアプリケーションの各競合情報ファイルを保持している。また、新しく携帯端末１００にアプリケーションを追加する際には、該当アプリケーションの競合情報ファイルが追加される。競合判定データ保持手段２４０は、競合情報ファイル処理手段２２０によって作成された競合判定データを保持するものである。
アプリケーション配信手段２１０は、複数個のアプリケーションを保持、管理している。携帯端末１００上のアプリケーションインストール手段１６０からアプリケーションのダウンロード要求があると、先ず、該当アプリケーションの競合情報ファイルを競合情報ファイル保持手段２３０に追加する。次に、競合情報ファイル処理手段２２０を用いて競合判定データ保持手段２４０上の競合判定データの更新を行い、その後、ダウンロード要求のあったアプリケーション及び競合判定データ保持手段２４０に保持されている競合判定データを携帯端末１００に配信する。
次に、図７のフローチャートを参照して本実施の形態の全体の動作について詳細に説明する。先ず、携帯端末１００上のアプリケーションインストール手段１６０は、アプリケーション配信端末２００上のアプリケーション配信手段２１０に対して、携帯端末１００に新規にインストールしたいアプリケーションのダウンロード要求を出す（ステップＤ１）。ダウンロード要求を受けたアプリケーション配信手段２１０は、指定のアプリケーションの競合情報を記述した競合情報ファイルを、競合情報ファイル保持手段２３０に追加する（ステップＤ２）。ここで、競合情報ファイル保持手段２３０には既に携帯端末１００上にインストールされている各アプリケーションの競合情報ファイルが保持されているとする。
競合情報ファイル処理手段２２０は、競合情報ファイル保持手段２３０中の競合情報ファイルを読み込んで、新しく追加されるアプリケーションの競合情報も含んだ競合判定データを作成し、競合判定データ保持手段２４０中の競合判定データを更新する（ステップＤ３）。アプリケーション配信手段２１０は、アプリケーションインストール手段１６０から要求されたアプリケーションと、競合判定データ保持手段２４０中の競合判定データを、携帯端末１００に配信する（ステップＤ４）。
アプリケーション配信手段２１０から配信されたアプリケーション及び競合判定データを受信した携帯端末１００上のアプリケーションインストール手段１６０は、携帯端末１００内へのアプリケーションインストール処理を行う（ステップＤ５）。同時にアプリケーションインストール手段１６０は、競合情報データベース１５０に対して受信した競合判定データをセットする（ステップＤ６）。
本実施の形態では、アプリケーションインストール手段１６０を用いて端末外からのアプリケーションを携帯端末１００に追加する際に、アプリケーション配信端末２００側で競合判定データを作成して携帯端末１００に送信し、競合情報データベース１５０に登録するというように構成されており、第１及び第２の実施の形態と同様のアプリケーション間競合制御が実現できる。
また、第１及び第２の実施の形態とは異なって、携帯端末１００ではなく、アプリケーション配信端末２００上に競合情報ファイル処理手段を搭載している構成のために、第１及び第２の実施の形態と比べて、携帯端末１００における競合情報ファイル処理手段格納のためのＲＯＭ容量の節約及び競合情報ファイル処理手段による競合判定データ生成のためのＲＡＭ及びＣＰＵ資源の節約が実現できる。
【実施例】  以下に、具体的な実施例を用いて本発明について説明する。第１の発明の実施例は、次の通りである。先ず最初に、携帯端末上で動作する各アプリケーションに対して、それぞれの競合情報を記述した競合情報ファイルをアプリケーション毎に準備する。図８にこの競合情報ファイルの例を示す。
図８に示すように、競合情報ファイル内には、対象アプリケーションが取りうる状態毎に各種競合情報が記述されている。アプリケーションが取りうる状態としては、例えば、アクティブ状態、無線通信中状態、赤外線通信中状態、サスペンド状態、緊急状態等がある。競合情報ファイル中では、この状態毎にプライオリティ値を設定し、後述する競合判定処理時に利用することができる。
競合情報ファイル中の各状態内には、「１．起動条件」、「２．占有指定」、「３．動作指定」の３種類の構文が記述される。「１．起動条件」は、対象アプリケーションがその状態で起動、もしくは他の状態からその状態へと遷移する際の条件を記述するものである。
携帯端末においては、通常のパーソナルコンピュータと比較して、ＣＰＵ、ハードディスク、メモリ、ネットワークといった各種コンピュータ資源が貧弱であるため、他のアプリケーションがある資源を利用している場合は、その資源を利用する他のアプリケーションは起動できない、もしくはその資源を利用するような状態へと遷移できないというケースがあり、これがアプリケーション間の競合と呼ばれるものである。ここで記す起動条件は、対応するアプリケーション状態の起動もしくは遷移の際に利用可能であることが必要な資源を指定するものである。
また、携帯電話においては、ユーザの操作性を優先するため等の理由で、実際の資源の競合がなくても、あるアプリケーションが起動していたら、他の特定のアプリケーションの起動は許さないようにするケースがある。例えば、電話帳編集中は、メール着信画面を表示しないといった端末の操作仕様が設定される場合があるが、これは特に何らかの資源が競合するためというのではなく、ユーザの操作性や直感的なわかりやすさ等を優先させるためのものである。本発明ではこういったタイプの、実際の資源に由来しないアプリケーション間競合に対しても対応するために、仮想的な資源というものを定義し、上記のアプリケーション間競合は、この仮想資源の奪い合いによって発生するとみなすようにした。
図８の例では、この起動条件文には、条件を満たさなかった場合の動作指定と、条件となる資源名及びその数を指定する（複数の組み合わせを指定可能）。条件を満たさなかった場合の動作指定には、中断、保留、ユーザ判断を仰ぐ、といった指定が可能である。資源名には、無線通信、メモリカードといった実際の資源及び、先ほど説明した仮想的な資源を、その条件個数と共に指定する。競合判定の際には、ここで指定した資源が指定個数だけ利用可能となっていた場合に、対象アプリケーションの起動もしくは状態遷移が可能となる。これらの条件を満たさなかった場合は、起動もしくは状態遷移は不許可となり、起動条件文中の、条件を満たさなかった場合の動作指定で指定された動作を行う。
「２．占有指定」は、アプリケーションが対象状態で起動した場合、もしくは対象状態へ状態遷移した場合に、実際に占有する資源を記述するものである。「１．起動条件」は、起動時もしくは状態遷移時に利用可能である資源を指定するだけであり、実際に起動後もしくは状態遷移後に占有する資源は占有指定に記述する。これによって、例えばアプリケーションが通常状態で起動する際には、無線通信資源が利用可能である必要があるが、通常状態にある間は無線通信資源を占有せず、他の無線通信資源を利用するアプリケーションの起動を許す、という動作の実現が可能になる。また同様に、該当アプリケーションが通常状態から通信中状態に遷移した場合は、無線通信資源を占有し、他の無線通信資源を利用するアプリケーションの起動を許さない、といった動作の実現も可能になる。
図８の例では、この占有指定文には、占有する資源名及びその数を指定する（複数の組み合わせを指定可能）。競合判定の際には、起動中のアプリケーションの状態に対して指定されている占有指定文をチェックし、そこで記述されている資源が、指定された数だけ占有されているとみなす。
「３．動作指定」は、アプリケーションが対象状態で起動もしくは対象状態へ遷移した場合に、他のアプリケーションに対して終了や保留といった動作の指定を行うためのものである。これによって、例えば携帯端末上でＪＡＶＡ（登録商標）アプリケーションが動作している場合に、電話の着信が発生すると、電話アプリケーションが起動し、ＪＡＶＡ（登録商標）アプリケーションを終了させる、といった動作が実現できる。
図８の例では、この動作指定文には、指定する動作と、対象となるアプリケーション及びその状態を記述する。特開２００３−１７７９２６号公報においては、その公報の明細書中の表２及び表３に示されるように（図９及び図１０に、そのまま引用して示している）、アプリケーションの競合情報として、アプリケーションの各状態対アプリケーションの各状態のテーブルの形式（競合タスク対問い合わせタスク）で提供されており、それぞれのテーブルの要素中に、「許可」、「破棄」といった競合判定データが記されている。
このような形式で記述していた場合、新規にアプリケーションが携帯端末上に追加された場合は、既存のアプリケーションの各状態対新規アプリケーションの各状態の競合情報を、逐一テーブルに記述する必要があり、その工数は大きなものとなる（図９及び図１０の詳細については、上記特開２００３−１７７９２６号公報を参照のこと）。
一方、本発明のように、競合情報ファイルには、競合する他のアプリケーションを直接指定するのではなく、その原因となったリソースを指定するようにすることで、アプリケーション毎に別個に競合情報ファイルを準備することが可能となり、新しくアプリケーションを携帯端末に追加する際の競合情報更新の手間も大幅に削減することができる。
競合情報ファイル処理手段１３０は、アプリケーション毎に準備された競合情報ファイルを順次読み込み、競合情報データベース１５０に競合判定データとして予め登録しておく。次に、あるアプリケーションがある状態で実際に起動する際の、競合判定処理の流れを説明する。先ず、携帯端末１００上でアプリケーションが起動もしくはアプリケーション内の他の状態に遷移する際、アプリケーションは起動及び状態遷移の可否を競合判定手段１１０に問い合わせる（図２のステップＡ１）。次に、競合判定手段１１０は、起動中アプリケーション状態保持手段１４０から、現在携帯端末１００上で起動中のアプリケーション及びその状態の情報を取得する（図２ステップＡ２）。この場合、複数個のアプリケーションが起動している場合も有り得る。
その後、競合判定手段１１０はステップＡ１で問い合わせを行ったアプリケーションの状態と、ステップＡ２で取得した起動中のアプリケーションの状態間の競合判定データを、競合判定データアクセス手段１２０を用いて競合情報データベース１５０より取得する（図２のステップＡ３）。
具体的には、先ず起動中のアプリケーションの状態に関して、競合情報ファイル中のプライオリティ情報、及び占有指定文に記述された占有資源に関する情報を、競合情報データベース１５０より取り出す。複数個のアプリケーションが起動中の場合は、全ての起動中アプリケーションについてこの操作を繰り返す。その後、問い合わせを行った、今回起動もしくは状態遷移するアプリケーションの状態に関する、競合情報ファイル中のプライオリティ情報、及び起動条件文に記述された起動条件となる資源の情報を取り出す。その後、まずプライオリティ情報のみを比較し、今回起動もしくは状態遷移するアプリケーションの状態のプライオリティが起動中アプリケーションより高ければ、起動許可となる。
そうでなければ、これらの占有済み資源と、起動条件資源及び、携帯端末１００上で利用可能な総資源とを比較し、起動条件となっている資源が利用可能であるならば起動許可となり、返却される競合判定データは起動許可となる。一方、利用可能でない場合は、今回起動もしくは状態遷移するアプリケーションの状態に関する、競合情報ファイル中の起動条件文に記された、条件が満たされなかった場合の動作指定で指定された動作についての情報が競合判定データとして返却される。
競合判定データを取得した競合判定手段１１０は、その判定データを元に問い合わせを行ったアプリケーションに対して起動もしくは状態遷移の可否の返答を行う（図２のステップＡ４）。最後に、問い合わせを行ったアプリケーションは、競合判定手段１１０の返答結果に従い、起動、状態遷移の実行（図２のステップＡ５）、もしくは中断等の処理を行う（図２のステップＡ６）。また、競合情報ファイルに動作指定文が記述されていた場合で、そこに指定されたアプリケーションが現在起動中だった場合は、動作指定文で指定された処理（終了、保留等）を行う。
次に、第２の実施例を説明する。この第２の実施例においては、最初に携帯端末１００にインストール済みのアプリケーションに関する競合情報データベース１５０は、第１の実施例で説明した手順で作成されているとする。ここでは、そこに新しいアプリケーションをインストールする場合を考える。
先ず、携帯端末１００上のアプリケーションインストール手段１６０は、アプリケーション配信端末２００上のアプリケーション配信手段２１０に対して、携帯端末１００に新規にインストールしたいアプリケーションのダウンロード要求を出す（図５のステップＣ１）。ダウンロード要求を受けたアプリケーション配信手段２１０は、指定のアプリケーション及びそのアプリケーションの競合情報を記述した競合情報ファイルを、携帯端末１００に配信する（ステップＣ２）。
第１の実施例で説明したように、競合情報ファイルはアプリケーション単位で準備し、またその内容は、そのアプリケーションに関した情報（起動条件、占有指定、動作指定）のみ記述すればよく、特開２００３−１７７９２６号公報のように他のアプリケーションの各状態との競合情報を逐一記述する必要はない。従って、このように端末外からアプリケーションを追加してインストールする際も、このアプリケーションの競合情報ファイルのみを新しく追加すればよく、既に端末にインストールされているアプリケーションの競合情報ファイルの変更は必要ない。
アプリケーション配信手段２１０から配信されたアプリケーション及び競合情報ファイルを受信した携帯端末１００上のアプリケーションインストール手段は、携帯端末１００内へのアプリケーションインストール処理を行う（ステップＣ３）。最後に、競合情報ファイル処理手段１３０は、新規アプリケーションの競合情報ファイルを読み込み、競合情報データベース１５０に対して新しいアプリケーションに関する競合判定データを追加する（ステップＣ４）。
これによって、新規にインストールされたアプリケーションに対しても、既存のアプリケーションと同様に、第１の実施例で説明した手順で、アプリケーションの競合制御を行うことができる。
次に、第３の実施例を説明する。第３の実施例は、第１及び第２の実施例においては携帯端末１００内にあった競合情報ファイル処理手段を、外部端末（図６のアプリケーション配信端末２００）に移したものになっており、アプリケーション配信端末２００上の競合情報ファイル処理手段２２０が各アプリケーションの競合情報ファイルを読み込んで処理したデータを、携帯端末１００内の競合情報データベースに通信手段を通して登録するという処理手順となっている。ここで、この実施例においては、必ずしもアプリケーション配信手段２１０と競合情報ファイル処理手段２２０は同一端末内にある必要はなく、別々の端末上にある場合も想定される。
上述した実施の形態や実施例では、携帯端末上でのアプリケーション競合制御のために使用した場合を説明したが、これに限らず、情報処理端末に適用可能であることは明白である。また、データベースから同義語を検索する情報検索装置や、情報検索装置をコンピュータに実現するためのプログラムといった用途に適用できるし、更にはまた、同義語を検索する機能をパソコンやワードプロセッサに搭載されている、仮名漢字変換装置や、コンピュータに仮名漢字変換機能といった用途にも適用できる。
また、図２、図３、図５及び図７に示した各動作フローは、予めその動作手順をプログラムとしてＲＯＭなどの記録媒体に格納しておき、これをコンピュータにより読み取らせて実行するようにすることができることは勿論である。
本発明による第１の効果は、競合データの作成、更新が容易にできることである。その理由は、アプリケーション単位で競合情報を記述したファイルを準備し、これらからを競合情報ファイル処理手段を用いて競合情報データを作成するためである。また、本発明による第２の効果は、アプリケーションを動的に追加した際にも、アプリケーションの競合制御を行うことができることである。その理由は、新規に追加されたアプリケーションに関する競合情報ファイルのみを準備して、アプリケーション追加の際に添付して配布することにより、競合情報ファイル処理手段を用いて競合情報データへの追加処理を行うことができるためである。
【図１】
0004666231.tif 000002
【図２】
0004666231.tif 000003
【図３】
0004666231.tif 000004
【図４】
0004666231.tif 000005
【図５】
0004666231.tif 000006
【図６】
0004666231.tif 000007
【図７】
0004666231.tif 000008
【図８】
0004666231.tif 000009
【図９】
0004666231.tif 000010
【図１０】
0004666231.tif 000011