(57)【要約】【課題】取得を要求したリソースを使用しているアプリをユーザに通知することで競合解決を容易にする。【解決手段】アプリを起動する起動手段３１０と、起動されたアプリがリソースの取得を要求する要求手段３０１と、要求したリソースと競合するリソースを競合テーブル３０７から検出するリソース検出手段３０２と、検出したリソースを使用しているアプリを情報テーブル３０８から検出する検出手段３０３と、競合要因アプリが検出された場合、検出されたアプリを通知し、リソースを与えるアプリを選択する選択手段３０４と、選択したアプリがリソースを使用していない場合、起動していたアプリから剥奪する剥奪手段３０９と、選択したアプリのリソースと剥奪したリソースを情報テーブル３０８に更新する情報更新手段３０５と、更新された使用リソース情報を、該当アプリに通知する通知手段３０６を備える。【選択図】図３
2009146206.tif 000002
【特許請求の範囲】
【請求項１】
マルチアプリケーション実行環境において、
アプリケーションを起動するアプリケーション起動手段と、
前記アプリケーション起動手段で起動されたアプリケーションがリソースの取得を要求するリソース取得要求手段と、
前記リソース取得要求手段により要求したリソースと競合するリソースを端末リソース競合テーブルから特定する競合リソース検出手段と、
前記競合リソース検出手段で検出したリソースを使用しているアプリケーションを使用リソース情報テーブルから特定する競合要因アプリケーション検出手段と、
前記競合要因アプリケーション検出手段により、競合要因アプリケーションが検出された場合、検出されたアプリケーションを通知し、リソースを与えるアプリケーションを選択する選択手段と、
前記選択手段で選択したアプリケーションがリソースを使用していないアプリケーションの場合、既に起動していたアプリケーションからリソースを剥奪する剥奪手段と、
前記選択手段で選択したアプリケーションのリソースと剥奪したリソースを使用リソース情報テーブルに更新する使用リソース情報更新手段と、
前記使用リソース情報更新手段により更新された使用リソース情報を、該当アプリケーションに通知するリソース決定通知手段とを備えたことを特徴とするマルチアプリケーション実行装置。
【請求項２】
前記マルチアプリケーション実行装置は、
さらに、競合が発生した場合にアプリケーションに与える影響度を示した影響度情報テーブルを有する影響度検出手段を備え、
前記影響度検出手段は、前記競合リソース検出手段により検出した競合リソースと前記競合要因アプリケーション検出手段により検出した競合要因アプリケーションから前記影響度情報テーブルより影響度を検出することを特徴とする請求項１記載のマルチアプリケーション実行装置。
【請求項３】
前記マルチアプリケーション実行装置は、
さらに、実行中のアプリケーションが使用しているリソースの状況を示すリソース使用状況情報テーブルを備え、
前記使用リソース情報テーブルに登録されているリソースの使用状況を監視し、前記リソース使用状況情報テーブルを更新するリソース使用状況監視手段と、
前記競合リソース検出手段により検出した競合リソースと前記競合要因アプリケーション検出手段により検出した競合要因アプリケーションから前記リソース使用状況情報テーブルより使用状況を検出するリソース使用状況検出手段と、を備えることを特徴とする請求項２のマルチアプリケーション実行装置。
【請求項４】
前記マルチアプリケーション実行装置は、
さらに、ＧＰＳ機能を使用しているアプリケーションのＧＰＳ機能使用状況を示すGPS機能使用情報テーブルを備え、
位置情報を取得し前記GPS機能使用情報テーブルに登録する位置情報取得手段と、
前記GPS機能使用情報テーブルからGPS機能情報を検出するGPS機能使用情報検出手段と、を備えることを特徴とする請求項３のマルチアプリケーション実行装置。
【請求項５】
前記マルチアプリケーション実行装置は、
使用リソース情報の利用可否情報を有するアプリケーション情報を取得するアプリケーション使用リソース情報取得手段と、を備えることを特徴とする請求項１のマルチアプリケーション実行装置。
【請求項６】
マルチアプリケーション実行環境方法において、
アプリケーションを起動するアプリケーション起動ステップと、
前記アプリケーション起動ステップで起動されたアプリケーションがリソースの取得を要求するリソース取得要求ステップと、
前記リソース取得要求ステップにより要求したリソースと競合するリソースを端末リソース競合テーブルから特定する競合リソース検出ステップと、
前記競合リソース検出ステップで検出したリソースを使用しているアプリケーションを使用リソース情報テーブルから特定する競合要因アプリケーション検出ステップと、
前記競合要因アプリケーション検出ステップにより、競合要因アプリケーションが検出された場合、検出されたアプリケーションを通知し、リソースを与えるアプリケーションを選択する選択ステップと、
前記選択ステップで選択したアプリケーションがリソースを使用していないアプリケーションの場合、既に起動していたアプリケーションからリソースを剥奪する剥奪ステップと、
前記選択ステップで選択したアプリケーションのリソースと前記剥奪ステップで剥奪したリソースを使用リソース情報テーブルに更新する使用リソース情報更新ステップと、
前記使用リソース情報更新ステップにより更新された使用リソース情報を、該当アプリケーションに通知するリソース決定通知ステップとを備えたことを特徴とするマルチアプリケーション実行支援方法。
【請求項７】
マルチアプリケーション実行環境装置で起動するプログラムにおいて、
アプリケーションを起動するアプリケーション起動ステップと、
前記アプリケーション起動ステップで起動されたアプリケーションがリソースの取得を要求するリソース取得要求ステップと、
前記リソース取得要求ステップにより要求したリソースと競合するリソースを端末リソース競合テーブルから特定する競合リソース検出ステップと、
前記競合リソース検出ステップで検出したリソースを使用しているアプリケーションを使用リソース情報テーブルから特定する競合要因アプリケーション検出ステップと、
前記競合要因アプリケーション検出ステップにより、競合要因アプリケーションが検出された場合、検出されたアプリケーションを通知し、リソースを与えるアプリケーションを選択する選択ステップと、
前記選択ステップで選択したアプリケーションがリソースを使用していないアプリケーションの場合、既に起動していたアプリケーションからリソースを剥奪する剥奪ステップと、
前記選択ステップで選択したアプリケーションのリソースと前記剥奪ステップで剥奪したリソースを使用リソース情報テーブルに更新する使用リソース情報更新ステップと、
前記使用リソース情報更新ステップにより更新された使用リソース情報を、該当アプリケーションに通知するリソース決定通知ステップとを備えたことを特徴とするマルチアプリケーション実行装置で起動するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチアプリケーション実行環境において、複数の機能がリソースを使用する際に生じる競合を解決する競合解決技術に関するものである。
【背景技術】
【０００２】
従来の競合解決技術では、第１アプリケーションにより使用が要求されているリソースが第２アプリケーションに使用されている場合、第１アプリケーションに付与された優先度と第２アプリケーションに付与された優先度とを比較し、先発のアプリケーションである第２アプリケーションの優先度が高い場合には後発のアプリケーションである第１アプリケーションの要求を許可するか否かの指示の入力を促す画面を表示し、後発のアプリケーションからの要求を許可するかどうかを判定し、競合を解決している(例えば、特許文献１参照）。
【特許文献１】特開２００４−３４８４３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、前記従来の構成では、アプリケーションに対し優先度が付与されており、使用しているリソースの種別に関わらず、アプリケーションの優先度は一定である。そのため、複数のリソースを使用するアプリケーションにおいて、リソースA使用時のアプリケーションの優先度とリソースB使用時のアプリケーションの優先度が異なるにもかかわらず、アプリケーションに対して付与された優先度にて競合の判定が行われ、適切な競合判定ができない。また、一度、優先度が決定されると、優先度を変更する手段がないため、優先されるアプリケーションが固定されてしまうという課題を有している。
【０００４】
本発明は、前記従来の課題を解決するもので、第１アプリケーションのリソースの使用可否をユーザに問い合わせる際に、第１アプリケーションのリソースを使用している第２アプリケーションをユーザに通知することにより、リソース使用時の第１アプリケーションとリソース使用時の第２アプリケーションのどちらのアプリを優先すべきか否かをユーザに選択させ、適切な競合解決を行うことを目的とする。また、競合発生毎にリソースを使用するアプリケーションをユーザに選択させることにより、動的な競合判定を可能とすることを目的としている。
【課題を解決するための手段】
【０００５】
前記従来の課題を解決するために、本発明に係るマルチアプリケーション実行装置では、マルチアプリケーション実行環境において、アプリケーションを起動するアプリケーション起動手段（３１０）と、前記アプリケーション起動手段で起動されたアプリケーションがリソースの取得を要求するリソース取得要求手段（３０１）と、前記リソース取得要求手段により要求したリソースと競合するリソースを端末リソース競合テーブル（３０７）から検出する競合リソース検出手段（３０２）と、前記競合リソース検出手段（３０２）で検出したリソースを使用しているアプリケーションを使用リソース情報テーブル（３０８）から検出する競合要因アプリケーション検出手段（３０３）と、前記競合要因アプリケーション検出手段（３０３）により、競合要因アプリケーションが検出された場合、検出されたアプリケーションを通知し、リソースを与えるアプリケーションを選択する選択手段(３０４)と、前記選択手段（３０４）で選択したアプリケーションがリソースを使用していないアプリケーションの場合、既に起動していたアプリケーションから剥奪する剥奪手段（３０９）と、前記選択手段（３０４）で選択したアプリケーションのリソースと剥奪したリソースを使用リソース情報テーブル（３０８）に更新する使用リソース情報更新手段（３０５）と、前記使用リソース情報更新手段（３０５）により更新された使用リソース情報を、該当アプリケーションに通知するリソース決定通知手段（３０６）とを有する。
【０００６】
本構成によって、第１アプリケーションから使用を要求するリソースを使用しているアプリケーションを特定し、ユーザに通知することができる。
【０００７】
また、本発明に係るマルチアプリケーション実行装置では、さらに、競合が発生した場合にアプリケーションに与える影響度を示した影響度情報テーブル（８０２）を有する影響度検出手段（８０１）を備え、前記影響度検出手段（８０１）は、前記競合リソース検出手段により検出した競合リソースと前記競合要因アプリケーション検出手段（３０３）により検出した競合要因アプリケーションから前記影響度情報テーブル（８０２）より影響度を検出することを特徴とする。
【０００８】
また、本発明に係るマルチアプリケーション実行装置では、さらに、実行中のアプリケーションが使用しているリソースの状況を示すリソース使用状況情報テーブル（１００２）を備え、前記使用リソース情報テーブル（３０８）に登録されているリソースの使用状況を監視し、前記リソース使用状況情報テーブルを更新するリソース使用状況監視手段（１００３）と、前記競合リソース検出手段（３０２）により検出した競合リソースと前記競合要因アプリケーション検出手段（３０３）により検出した競合要因アプリケーションから前記リソース使用状況情報テーブル（１００２）より使用状況を検出するリソース使用状況検出手段（１００１）と、を備えることを特徴とする。
【０００９】
また、本発明に係るマルチアプリケーション実行装置では、さらに、ＧＰＳ機能を使用しているアプリケーションのＧＰＳ機能使用状況を示すGPS機能使用情報テーブル（１２０２）を備え、位置情報を取得し前記GPS機能使用情報テーブル（１２０２）に登録する位置情報取得手段（１２０３）と、前記GPS機能使用情報テーブル（１２０２）からGPS機能情報を検出するGPS機能使用情報検出手段（１２０１）と、を備えることを特徴とする。
【００１０】
また、本発明に係るマルチアプリケーション実行装置では、使用リソース情報の利用可否情報を有するアプリケーション情報を取得するアプリケーション使用リソース情報取得手段（１４０１）と、を備えることを特徴とする。
【００１１】
また、本発明に係るマルチアプリケーション実行環境方法では、アプリケーションを起動するアプリケーション起動ステップと、前記アプリケーション起動ステップで起動されたアプリケーションがリソースの取得を要求するリソース取得要求ステップと、前記リソース取得要求ステップにより要求したリソースと競合するリソースを端末リソース競合テーブルから特定する競合リソース検出ステップと、前記競合リソース検出ステップで検出したリソースを使用しているアプリケーションを使用リソース情報テーブルから特定する競合要因アプリケーション検出ステップと、前記競合要因アプリケーション検出ステップにより、競合要因アプリケーションが検出された場合、検出されたアプリケーションを通知し、リソースを与えるアプリケーションを選択する選択ステップと、前記選択ステップで選択したアプリケーションがリソースを使用していないアプリケーションの場合、既に起動していたアプリケーションからリソースを剥奪する剥奪ステップと、前記選択ステップで選択したアプリケーションのリソースと前記剥奪ステップで剥奪したリソースを使用リソース情報テーブルに更新する使用リソース情報更新ステップと、前記使用リソース情報更新ステップにより更新された使用リソース情報を、該当アプリケーションに通知するリソース決定通知ステップとを備えたことを特徴とする。
【００１２】
また、本発明に係るプログラムでは、アプリケーションを起動するアプリケーション起動ステップと、前記アプリケーション起動ステップで起動されたアプリケーションがリソースの取得を要求するリソース取得要求ステップと、前記リソース取得要求ステップにより要求したリソースと競合するリソースを端末リソース競合テーブルから特定する競合リソース検出ステップと、前記競合リソース検出ステップで検出したリソースを使用しているアプリケーションを使用リソース情報テーブルから特定する競合要因アプリケーション検出ステップと、前記競合要因アプリケーション検出ステップにより、競合要因アプリケーションが検出された場合、検出されたアプリケーションを通知し、リソースを与えるアプリケーションを選択する選択ステップと、前記選択ステップで選択したアプリケーションがリソースを使用していないアプリケーションの場合、既に起動していたアプリケーションからリソースを剥奪する剥奪ステップと、前記選択ステップで選択したアプリケーションのリソースと前記剥奪ステップで剥奪したリソースを使用リソース情報テーブルに更新する使用リソース情報更新ステップと、前記使用リソース情報更新ステップにより更新された使用リソース情報を、該当アプリケーションに通知するリソース決定通知ステップとを備えたことを特徴とする。
【発明の効果】
【００１３】
本発明のリソース利用アプリケーション選択手段又はステップによれば、使用を要求したリソースを使用しているアプリケーションをユーザが認識できるため、リソースの使用を要求したアプリケーションがリソースを占有した場合、どのアプリケーションの実行に影響を及ぼすのかを把握したうえでユーザがリソースを使用するアプリケーションを選択することができる。また、競合が発生する毎にユーザにリソース利用アプリケーションを選択させるため、その時々に応じたユーザの意向に合わせてリソース利用アプリケーションを選択することができる。
【００１４】
また、本発明の影響度検出手段又はステップによれば、競合が発生した場合にアプリケーションに与える影響度を検出できるため、リソースの使用を要求したアプリケーションがリソースを占有した場合、どのアプリケーションにどのような影響を及ぼすのかを把握したうえでユーザがリソースを使用するアプリケーションを選択することができる。
【００１５】
また、本発明のリソース使用状況検出手段又はステップによれば、実行中のアプリケーションのリソースの使用状況をユーザが認識できるため、ユーザがリソースを使用するアプリケーションの選択をする際の指標とすることができる。
【００１６】
また、本発明のＧＰＳ機能情報検出手段又はステップによれば、ＧＰＳ機能を使用しているアプリケーションが、ＧＰＳ機能を位置情報サービスの取得に使用している、ナビゲーションとして使用しているといったＧＰＳ機能使用状況を認識できるため、ユーザがリソースを使用するアプリケーションの選択をする際の指標とすることができる。
【００１７】
また、本発明の使用リソース情報取得手段又はステップによれば、アプリ起動前に、起動するアプリケーションが使用するリソースと実行中のアプリケーションが使用しているリソース間で競合が発生するか否かをユーザが認識できるため、ユーザがアプリ起動をするか否かの指標とすることができる。
【発明を実施するための最良の形態】
【００１８】
以下本発明の実施形態について、図面を参照しながら説明する。なお、本発明であるマルチアプリケーション実行装置は典型的には携帯端末のような、使用可能なリソースに制限のある情報処理端末において用いられる。以下、マルチアプリケーション実行装置が組み込まれた携帯端末の例を持って説明を行う。
【００１９】
（実施の形態１）
図１は、本発明に係る実施の形態における携帯端末１０のハードウェア構成を示すブロック図である。この図に示すように、携帯端末１０は通常のコンピュータと同様のハードウェア構成を備え、加えて、警告音や楽曲を出力するための音声出力スピーカ１０１を有する音声出力部１０２と、データを表示する画面１０３を有する表示部１０４と、図示しない移動機通信網の基地局との間で無線通信する無線通信部１０５と、ユーザ操作によるキー操作に応じた信号をCPU１０６に出力するボタン入力部１０７とを備えている。
【００２０】
また、図に示すように、携帯端末１０内の記憶部は揮発性メモリ１０８及び不揮発性メモリ１０９から成る。不揮発性メモリ１０９には、ネイティブソフトウェアや端末リソース制限情報及び使用リソース情報が書き込まれている。ネイティブソフトウェアとは、携帯端末がユーザに販売される前に不揮発メモリに書き込まれたソフトウェアであり、ネイティブシステムソフトウェアとネイティブアプリケーションプログラムとに大別される。
ネイティブシステムソフトウェアとしてはOSソフトウェアが、ネイティブアプリケーションプログラムとしてはWWW（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）ブラウザプログラムや、メーラプログラム、ＦｅｌｉＣａ通信プログラム、Ｂｌｕｅｔｏｏｔｈ通信プログラム、ＫＶＭ(Ｋ Ｖｉｒｔｕａｌ Ｍａｃｈｉｎｅ)プログラム、ＪＡＭ(Ｊａｖａ（登録商標） Ａｐｐｌｉｃａｔｉｏｎ Ｍａｎａｇｅｒ)プログラムが挙げられる。なお、例示したネイティブアプリケーションプログラムは全てＪａｖａ（登録商標）アプリケーションプログラムではないが、携帯端末がユーザに販売される前に不揮発性メモリに書き込まれたＪａｖａ（登録商標）アプリケーションプログラムもネイティブアプリケーションプログラムである。
【００２１】
また、不揮発性メモリは、非ネイティブソフトウェアの記憶にも用いられる。非ネイティブソフトウェアとは、携帯電話機がユーザに販売された後に不揮発性メモリに書き込まれるソフトウェアのことである。
【００２２】
携帯端末１０内のCPU１０６は、不揮発性メモリ１０９に記憶されているOSソフトウェアを、図示しない電源投入時に読み出して実行することにより、携帯端末１０にマルチタスクOS（以降、「OS」と略記する）を実現させる。このOSは、携帯端末１０が備えるリソースの使用を管理する機能を有する。以降、明細書では、このような管理の対象となるリソースのみを「リソース」と記載する。
リソースは、ハードウェアリソースとソフトウェアリソースと通信リソースに大別される。ハードウェアリソースには、携帯端末を構成するハードウェアの他に、携帯端末と共同し得るＳＤ、ＵＩＭ（Ｕｓｅｒ Ｉｄｅｎｔｉｔｙ Ｍｏｄｕｌｅ）等の外部機器などがある。ソフトウェアリソースとしては、記憶部に記憶されたデータが挙げられる。通信リソースには、携帯電話機が移動通信網との間での無線通信を行う際に用いる無線チャネル等の無線リソースや、パケットの伝送路や回線通接続の通信路などの通信リソースがある。
【００２３】
また、複数のリソースを組み合わせて成るリソースも存在する。例えば、発信機能や、Ｂｌｕｅｔｏｏｔｈ機能起動機能、ＦｅｌｉＣａ機能起動機能、楽曲再生機能などである。発信機能とは、通話に必要な無線通信部や無線チャネル等のリソースを確保した上で発呼を行って通話回線を接続し、通話を可能とする機能である。Ｂｌｕｅｔｏｏｔｈ通信機能起動機能とは、Ｂｌｕｅｔｏｏｔｈ通信ポートを使用してＢｌｕｅｔｏｏｔｈの規格に従ったＢｌｕｅｔｏｏｔｈ通信を行う機能である。ＦｅｌｉＣａ機能起動機能とは、ＩＣカードを使用して非接触ＩＣカードの技術方式に従った非接触通信を可能とする機能である。楽曲再生機能とは端末内の不揮発性メモリ、もしくは端末に装着可能な不揮発メモリ、たとえばＳＤカードのような不揮発メモリ媒体に記憶されている楽曲データを再生し、音声出力スピーカより出力する機能である。
【００２４】
図２は、携帯端末１０に実現される一部の機能間の関係を示す図である。この図に示されるように、ネイティブソフトウェアを実行することで携帯端末に実現される機能は、Ｊａｖａ（登録商標）実行環境２０１及びホストシステム２０２の少なくとも一方を構成する。また、図に示されるように両構成の共通の構成要素はＯＳ２０３のみである。
【００２５】
Ｊａｖａ（登録商標）実行環境２０１は、Ｊａｖａ（登録商標）アプリケーションを実行するためのものである。当該Ｊａｖａ（登録商標）実行環境２０１の構成要素であるＫＶＭ２０４は、Ｊａｖａ（登録商標）アプリケーションに対して、携帯端末のリソースにアクセスするためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｔｅｒｆａｃｅ）を提供する。Ｊａｖａ（登録商標）アプリケーションは、当該ＡＰＩを通じて、発信機能２０５、Ｂｌｕｅｔｏｏｔｈ機能２０６、ＦｅｌｉＣａ機能２０７などでリソースを使用することができる。なお、ＫＶＭ２０４は他の非Ｊａｖａ（登録商標）アプリケーションとは異なり、Ｊａｖａ（登録商標）アプリケーションの起動の指示がＯＳ２０３に入力されたときに起動される。
【００２６】
ＪＡＭ（Ｊａｖａ（登録商標）  Ａｐｐｌｉｃａｔｉｏｎ  Ｍａｎａｇｅｒ）２０８は、携帯端末１０のユーザの指示に従い、Ｊａｖａ（登録商標）アプリケーションを内包したＪＡＲ（Ｊａｖａ（登録商標）  Ａｒｃｈｉｖｅ）、ファイル及びアプリケーション情報を移動通信網経由でダウンロードし、不揮発性メモリ１０９に書き込む。また、ＪＡＭ２０８は、不揮発性メモリ１０９に記憶されているＪａｖａ（登録商標）アプリケーションの実行指示を受けると、当該Ｊａｖａ（登録商標）アプリケーションに対応するアプリケーション情報を不揮発性メモリ１０９から読み出し、当該Ｊａｖａ（登録商標）アプリケーションをＫＶＭ２０４に実行させる。
ホストシステム２０２は、非Ｊａｖａ（登録商標）アプリケーションを実行するためのものである。非Ｊａｖａ（登録商標）アプリケーションは、ボタン入力部１０７からの出力信号で表される指示が、起動を要求するものである場合、該当するネイティブアプリケーションを起動する。また、ＪＡＭ２０８から非Ｊａｖａ（登録商標）アプリケーション起動を要求する指示を受けると、該当するネイティブアプリケーションを読み出して実行する。
【００２７】
続いて、本発明の実施形態１に係る携帯端末１０のソフトウェア構成について、図３を参照して説明する。
不揮発性メモリ１０９に格納されているプログラムは、ＣＰＵ１０６により読み取られることにより、アプリケーション起動手段３１０、リソース取得要求手段３０１、競合リソース検出手段３０２、競合要因アプリケーション検出手段３０３、選択手段３０４、剥奪手段３０９、使用リソース情報更新手段３０５、リソース決定通知手段３０６という具体的な手段として機能する。
【００２８】
アプリケーション起動手段３１０は、指定されたアプリケーションを起動する。リソース取得要求手段３０１は、携帯端末１０で管理されるリソースの取得を要求する。競合リソース検出手段３０２は、端末リソース競合テーブル３０７を参照し、端末の競合リソースを検出する。競合要因アプリケーション検出手段３０３は、競合リソース検出手段３０２で検出された競合リソースを使用しているアプリケーションを使用リソース情報テーブル３０８から検出する。選択手段３０４は、競合リソースを利用するアプリケーションを選択する。剥奪手段３０９は、アプリケーションが使用しているリソースを剥奪する。使用リソース情報更新手段３０５は、選択手段で選択したアプリケーションのリソースと剥奪したリソースを使用リソース情報テーブルに更新する。リソース決定通知手段３０６は、使用リソース情報テーブルの内容に従い、該当するアプリケーションにリソース利用可否を通知する。
【００２９】
次に、複数アプリケーション起動中に競合が発生した場合の画面遷移について、図１６を参照して説明する。
画面１６０１は、アプリケーション起動手段３１０にて、携帯端末の競合制限に係わるリソースを使用しない「シューティングゲーム」１６０５と、携帯端末の競合制限に係わるＢｌｕｅｔｏｏｔｈ通信機能を使用する「○×ゲーム」１６０６が起動されている状態を示している。図示されていないが、「○×ゲーム」１６０６は、Ｂｌｕｅｔｏｏｔｈ通信機能を使用中である。この状態では、携帯端末の競合制限に係わるＢｌｕｅｔｏｏｔｈ通信機能を使用しているアプリケーションは１つであるため競合は発生しない。
【００３０】
次に、アプリケーション起動手段３１０にて、携帯端末の競合制限に係わるＢｌｕｅｔｏｏｔｈ通信機能を使用する「オセロゲーム」１６０７を起動すると、画面１６０２で示すように３つのアプリケーションが同時に実行される。ここでは、「オセロゲーム」１６０７は起動されているが、Ｂｌｕｅｔｏｏｔｈ通信機能を使用していない。そのため、３つのアプリケーション間で競合を発生することなく実行が継続される。
次に、「オセロゲーム」１６０７がＢｌｕｅｔｏｏｔｈ通信機能を開始しようとすると、リソース取得要求手段３０１によって、携帯端末１０で管理されるリソースであるＢｌｕｅｔｏｏｔｈ通信機能が要求され、競合リソース検出手段３０２にて、Ｂｌｕｅｔｏｏｔｈ通信機能と競合するリソースＢｌｕｅｔｏｏｔｈ通信機能が検出される。競合リソースが検出された場合は、競合要因アプリケーション検出手段３０３にて、競合要因アプリケーションとなる「○×ゲーム」１６０６が検出される。検出されたアプリケーションは、選択手段３０４にて、画面１６０３で示すようにユーザに通知する。
【００３１】
ここで、ユーザは、競合要因となるリソースを使用しているアプリケーションを認識し、リソースを使用させたいアプリケーション「オセロゲーム」１６０７を選択する。アプリケーションが選択されると、まず、Ｂｌｕｅｔｏｏｔｈ通信機能を使用中であるアプリケーション「○×ゲーム」１６０６からＢｌｕｅｔｏｏｔｈ通信リソースを剥奪する。剥奪が完了した後、選択されたアプリケーション「オセロゲーム」１６０７はＢｌｕｅｔｏｏｔｈ通信機能の使用を開始し、ユーザに剥奪したアプリケーション「○×ゲーム」１６０６を画面１６０４で示すようにユーザに通知する。ここでは、リソース剥奪によりアプリケーションの実行を継続することが不可能となりアプリケーションが終了したことをユーザに通知している。なお、リソースを剥奪した場合に、必ずしもアプリケーションを終了させる必要はない。また、ユーザに通知する内容はこの限りではなく、リソースの使用を一時停止している旨を通知してもかまわないし、剥奪されたことを通知しない実装としてもかまわない。
【００３２】
次に、図４のフローチャートを参照して起動しているアプリケーションからリソースの取得を要求された場合の競合要因アプリケーション検出処理について説明する。
先ず、要求するリソースを取得し(Ｓ４０１)、取得したリソースと端末の制限により競合となるリソースを図５に示す端末リソース競合テーブル３０７を参照することにより検出する(Ｓ４０２)。端末リソース競合テーブル３０７は、先発リソース５０１と後発リソース５０２で構成されている。例えば、リソース取得要求手段３０１にて「ＦｅｌｉＣａ」が要求された場合、後発リソース５０２を「ＦｅｌｉＣａ」とする場合５０３に競合するリソースが検出される。先発リソース５０１として「ＨＴＴＰ」が既に使用されている場合は、「OK」となっているため、競合は発生しないと判定する。先発リソース５０１として「ＦｅｌｉＣａ」、もしくは「Ｂｌｕｅｔｏｏｔｈ」が既に使用されている場合は、「ＮＧ」となっているため、競合リソースありと判定し、競合リソースとして検出する。
【００３３】
次に、競合要因アプリケーション検出処理(Ｓ４０３)により競合リソースを使用しているアプリケーションを検出する。上記、競合要因アプリケーション検出処理(Ｓ４０３)に関しては、後で詳細に説明する。上記競合要因アプリケーション検出処理にて検出されたアプリケーションが存在するか否かを判定する(Ｓ４０４)。競合要因アプリケーションが存在する場合は、リソースを使用するアプリケーションを選択させる(Ｓ４０５)。
選択したアプリケーションがリソースを使用しておらず、選択されていないアプリケーションがリソースを使用している場合は、リソースを剥奪する（Ｓ４０６）。
【００３４】
競合要因アプリケーション検出処理（Ｓ４０３）の詳細を、図６を参照して説明する。
先ず、端末リソース競合テーブルから競合リソースが検出されたか否かを判定する（Ｓ６０１）。競合リソースが検出されている場合、競合リソースを使用しているアプリケーションを図７に示す使用リソース情報テーブル３０８を参照することにより検出する（Ｓ６０２）。使用リソース情報テーブル３０８は、アプリケーションを識別するためのＡＰＰ名７０１と使用リソース７０２で構成されている。例えば、競合リソースとして、「Ｂｌｕｅｔｏｏｔｈ」が検出された場合、使用リソース７０２を「Ｂｌｕｅｔｏｏｔｈ」として使用リソース情報テーブル３０８を参照する。使用リソース７０２が「Ｂｌｕｅｔｏｏｔｈ」であるＡＰＰ２は、「○」となっているため、Ｂｌｕｅｔｏｏｔｈを使用中であると判定し、リソース使用アプリケーションとして検出する。ＡＰＰ１、ＡＰＰ３は、「×」となっているため、リソースを使用していないアプリケーションであると判定する。なお、検出されるアプリケーションが複数存在する場合は、複数検出する。
【００３５】
次に、上記検出処理にて、競合リソースを使用しているアプリケーションが検出されたか否かを判定する（Ｓ６０３）。競合リソースを使用しているアプリケーションが検出された場合、画面１０３に競合リソースを使用する競合要因アプリを出力する。これによって、ユーザは、リソースの取得を要求することにより、どのアプリに影響を及ぼすのかを確認することができるため、リソース取得要求をしたことにより、ユーザが予期しないアプリの実行を阻害されることを防止することができる。
【００３６】
次に、使用リソース情報の更新可否を判定し(Ｓ４０７)、更新された使用リソース情報を使用リソース情報テーブル３０８に更新する。更新されたリソース情報は、更新されたリソース情報の使用が許可・拒否されたアプリケーションに対して通知する(Ｓ４０８)。
通知されたアプリケーションは、通知されたリソース情報の使用許可・拒否に応じて、リソースの使用開始・停止等の処理を行い、処理が終了する。なお、通知されたアプリは、処理を実行するのみでなく、通知された内容をユーザに対して通知する処理を行う実装としてもかまわない。
【００３７】
（実施の形態２）
次に、本発明の実施の形態２における携帯端末１０を、図８、図９を参照して説明する。なお、実施形態１と同じ部分には同じ符号を付し、その説明を省略した。
本発明の実施形態１に係る携帯端末１０は、競合要因アプリケーションが検出された後、検出されたアプリケーションをユーザに通知するものであったが、本発明の実施形態２に係る携帯端末１０は、リソースの使用を停止した場合の影響度を取得する機能を有するもので、競合リソース利用アプリケーション選択手段にてユーザに競合リソース利用アプリケーションを通知する際に付加情報として、アプリケーションのリソース利用を停止した場合の影響度も通知することを可能とするものである。
【００３８】
以下、実施の形態１での説明において、異なる部分においてのみ説明する。
使用しているリソースを停止した場合に及ぼす影響を取得するためには、影響度検出手段８０１、及び影響度情報テーブル８０２を追加する。
影響度情報テーブル８０２は、アプリケーションがリソースの使用を停止した場合に及ぼす影響度を示すテーブルであり、アプリケーションを識別するためのＡＰＰ名９０１と使用リソース９０２で構成される。例えば、競合リソース検出手段３０２にて「Ｂｌｕｅｔｏｏｔｈ」がリソース情報として検出された後、競合要因アプリケーション検出手段３０３にて「APP３」が競合要因アプリケーションとして検出された場合、影響度情報テーブル８０２において、ＡＰＰ名９０１を「ＡＰＰ３」とし、使用リソース９０２を「Ｂｌｕｅｔｏｏｔｈ」とする影響度を参照する。影響度情報テーブル８０２によれば、「×」となっているため、リソースを使用しなければ動作不可能と判定し、選択手段３０４にて、ユーザに競合リソース利用アプリケーションを通知する際に、付加情報として、APP3はリソースを停止すると動作不可能である旨も通知する。
【００３９】
このように影響度をユーザに通知することにより、ユーザがリソース使用アプリを選択する際の指標として利用することができる。
なお、図８では、影響度を「リソースを使用することはない」、「リソースを使用しなくても動作可能」、「リソースを使用しなければ動作不可能」の３段階としているが、影響度の段階を５段階とする、影響度の度合いを数値化する等、影響度の設定方法については限定しない。
【００４０】
（実施の形態３）
次に、本発明の実施形態３に係る携帯端末１０は、図１０、図１１を参照して説明する。なお、実施形態１と同じ部分には同じ符号を付し、その説明を省略した。
本発明の実施形態３に係る携帯端末１０は、競合要因アプリケーションが検出された後、検出されたアプリケーションをユーザに通知するものであったが、本発明の実施形態３に係る携帯端末１０は、リソースの使用状況を監視し、リソース使用状況情報テーブル１００２を更新する機能と、リソース使用状況情報テーブル１００２を参照し、リソース使用状況を検出する機能を有するもので、選択手段３０４にてユーザに競合リソース利用アプリケーションを通知する際に付加情報として、アプリケーションのリソース使用状況も通知することを可能とするものである。
【００４１】
以下、実施の形態１での説明において、異なる部分においてのみ説明する。
リソース使用状況を取得するためには、リソース使用状況検出手段１００１、リソース使用状況情報テーブル１００２、及びリソース使用状況監視手段１００３を追加する。
リソース使用状況情報テーブル１００２は、アプリケーションのリソース使用状況を示すテーブルであり、アプリケーションを識別するためのＡＰＰ名１１０１と使用リソース１１０２で構成される。例えば、使用リソース情報テーブル３０８に登録されてから、リソースの使用状況をリソース使用状況監視手段１００３にて、定期的に監視し、アプリケーションのリソース使用率をリソース使用状況情報テーブル１００２に登録し、選択手段３０４にて、ユーザに競合リソース利用アプリケーションを通知する際に、付加情報として、リソース使用率も通知する。
このようにリソース使用率をユーザに通知することにより、複数のアプリケーションが実行中である場合において、１つのアプリケーションのみリソースの使用を停止しなければいけない状況において、リソースの使用率が高いアプリケーションの使用を停止すれば、リソース使用を要求したアプリケーションが、リソースを多く占有できる効果が期待できる。
【００４２】
なお、図１１では、使用状況を使用率としているが、使用リソースの残使用時間を使用状況とする、使用リソースのアクセス状況、例えば、継続的なアクセスを行っている、断続的にアクセスを行っているといった情報を使用状況とする等、使用状況に設定する情報については限定しない。
【００４３】
（実施の形態４）
次に、本発明の実施形態４に係る携帯端末１０は、図１２、図１３を参照して説明する。なお、実施形態１と同一部分には同一符号を付し、その説明を省略した。
本発明の実施形態１に係る携帯端末１０は、競合要因アプリケーションが検出された後、検出されたアプリケーションをユーザに通知するものであったが、本発明の実施形態４に係る携帯端末１０は、競合リソース検出手段３０２により検出されたリソースがＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）であった場合、位置情報を取得する機能を持った携帯端末１０で、競合リソース利用アプリケーションをユーザに通知する際に、競合によりＧＰＳ機能を有するアプリケーションを停止した場合に及ぼす影響を取得することを可能とするものである。
【００４４】
以下、実施の形態１での説明において、異なる部分においてのみ説明する。
ＧＰＳ機能を有するアプリケーションを停止した場合に及ぼす影響を取得するためには、ＧＰＳ機能使用情報検出手段１２０１、ＧＰＳ機能使用情報テーブル１２０２、位置情報取得手段１２０３を追加する。
【００４５】
ＧＰＳ機能使用情報テーブル１２０２は、ＧＰＳ機能使用率と移動速度を示すテーブルであり、アプリケーションを識別するＡＰＰ名１３０１、機能使用率１３０２、移動速度１３０３で構成される。例えば、使用リソース情報テーブル１００２に登録されてから、位置情報取得手段１２０３にて、位置情報の取得が要求された回数と、位置情報取得にて取得された位置情報と前回の位置情報取得手段１２０３にて取得した位置情報から移動速度１３０３を算出したものをＧＰＳ機能使用情報テーブル１２０２に登録し選択手段３０４にて、ユーザに競合リソース利用アプリケーションを通知する際に、付加情報として、ＧＰＳ機能使用状況も通知する。なお、ＧＰＳ機能使用状況を通知する内容として、機能使用率１３０２、移動速度１３０３を通知してもかまわないし、機能使用率１３０２、移動速度１３０３の情報より、機能使用率が低く、移動速度が小さい場合は、近隣地域の天気予報や交通情報、店舗情報などエリアに特化した情報を取得するために現在地の地図情報取得にＧＰＳ機能が使用されていると判断し、付加情報を「位置情報サービス使用中」に変換してもかまわない、また、機能使用率が高く、移動速度が大きい場合は、継続的にＧＰＳ機能を使用し、逐一現在地の情報を取得する必要のあるナビゲーションとしてＧＰＳ機能が使用されていると判断し、付加情報を「ナビゲーションサービス使用中」に変換してもかまわない。
【００４６】
このようにＧＰＳ機能使用状況をユーザに通知することにより、ナビゲーション機能を使用しているアプリのＧＰＳ機能を使用してはいけないといった判断をユーザが容易に実施することができる。
【００４７】
（実施の形態５）
次に、本発明の実施形態５に係る携帯端末１０は、図１４から図１５を参照して説明する。なお、実施形態１と同一部分には同一符号を付し、その説明を省略した。
本発明の実施形態１に係る携帯端末１０は、リソース取得要求時に競合要因リソース使用アプリケーションを検出するものであったが、本発明の実施形態５に係る携帯端末は、アプリケーションを起動する前に、アプリケーション情報１５０１を取得し、アプリケーションを実行する前に競合が発生する可能性があるか否かを判定することを可能とするものである。
【００４８】
以下、実施の形態１での説明において、異なる部分においてのみ説明する。
アプリケーションを起動する前に競合発生の可能性の有無を判定するには、リソース取得要求手段３０１に換えて、アプリケーション使用リソース情報取得手段１４０１を使用する。
【００４９】
アプリケーション使用リソース情報取得手段１４０１は、アプリケーション情報１５０１をアプリケーションの起動が要求されたタイミングにて取得する。アプリケーション情報１５０１には、携帯端末１０のリソース１５０２である発信機能２０５、Ｂｌｕｅｔｏｏｔｈ機能２０６、ＦｅｌｉＣａ機能２０７などのリソース使用情報１５０３が格納されている。リソース使用情報１５０３が「使用」、もしくは「必須」となっているリソースがある場合は、リソース使用情報１５０３で「使用」、もしくは「必須」となっているリソースと競合するリソースを端末リソース競合テーブル３０７より検出後、端末リソース競合テーブル３０７より検出した競合リソースを使用しているアプリケーションを使用リソース情報テーブル３０８から検出する。検出した競合リソース利用アプリケーションは、アプリケーション起動前に選択手段３０４にてユーザに通知する。
【００５０】
このように、アプリ起動前に競合要因リソース使用アプリケーションをユーザに通知することにより、リソース要求時に競合発生によりリソース要求処理が継続できないといったことを防止することができる。
【００５１】
（実施の形態に関する補足事項１）
上記、実施の形態において、アプリケーションとしてＪａｖａ（登録商標）アプリケーションを例としたが、非Ｊａｖａ（登録商標）アプリケーションとしてもよい。また、他の非Ｊａｖａ（登録商標）アプリケーションに連携するようなドキュメント、例えば非Ｊａｖａ（登録商標）アプリケーションに連携するためのリンクを付与することが可能なＰＤＦファイルなどにも適用可能である。
【００５２】
（実施の形態に関する補足事項２）
上記、実施の形態において、リソース取得要求手段では、機能単位の要求を例としたが、ワンセグを録画する機能を有するアプリケーションの場合は、録画開始時間、録画終了時間も合わせて要求を行い、録画を阻害される要因がないかを検出するなど、要求情報に緻密な情報を付加してもかまわない。
【産業上の利用可能性】
【００５３】
本発明にかかるマルチアプリ実行装置は、リソースの使用を要求したアプリケーションがリソースを占有した場合、どのアプリケーションの実行に影響を及ぼすのかユーザが認識することができるという効果を有し、携帯電話を含む電話機や端末等に有用である。また複数のアプリケーションを同時に実行することを可能とする装置等の用途にも応用できる。
【図面の簡単な説明】
【００５４】
【図１】本発明の実施の形態１における携帯端末のハードウェアの構成を示すブロック図
【図２】本発明の実施の形態１における携帯端末に実現される一部の機能間の関係を示す図
【図３】本発明の実施の形態１に係るソフトウェア構成を示すブロック図
【図４】本発明の実施の形態１に係るリソースの取得を要求された場合の競合要因アプリケーション検出処理
【図５】本発明の実施の形態１に係る端末リソース競合テーブルのデータ構造図
【図６】本発明の実施の形態１に係る競合要因アプリケーション検出処理
【図７】本発明の実施の形態１に係る使用リソース情報テーブルのデータ構造図
【図８】本発明の実施の形態２に係るソフトウェア構成を示すブロック図
【図９】本発明の実施の形態２に係る影響度情報テーブルのデータ構造図
【図１０】本発明の実施の形態３に係るソフトウェア構成を示すブロック図
【図１１】本発明の実施の形態３に係るリソース使用状況情報テーブルのデータ構造図
【図１２】本発明の実施の形態４に係るソフトウェア構成を示すブロック図
【図１３】本発明の実施の形態４に係るＧＰＳ機能使用情報テーブルのデータ構造図
【図１４】本発明の実施の形態５に係るソフトウェア構成を示すブロック図
【図１５】本発明の実施の形態５に係るアプリケーション情報のデータ構造図
【図１６】本発明の実施の形態１に係る画面遷移を示す図
【符号の説明】
【００５５】
１０  携帯端末
１０１  音声出力スピーカ
１０２  音声出力部
１０３  画面
１０４  表示部
１０５  無線通信部
１０６  ＣＰＵ
１０７  ボタン入力部
１０８  揮発性メモリ
１０９  不揮発性メモリ
２０１  Ｊａｖａ（登録商標）実行環境
２０２  ホストシステム
２０３  ＯＳ
２０４  ＫＶＭ
２０５  発信機能
２０６  Ｂｌｕｅｔｏｏｔｈ機能
２０７  ＦｅｌｉＣａ機能
２０８  ＪＡＭ
３０１  リソース取得要求手段
３０２  競合リソース検出手段
３０３  競合要因アプリケーション検出手段
３０４  選択手段
３０５  使用リソース情報更新手段
３０６  リソース決定通知手段
３０７  端末リソース競合テーブル
３０８  使用リソース情報テーブル
３０９  剥奪手段
３１０  アプリケーション起動手段
５０１  先発リソース
５０２  後発リソース
７０１、９０１、１１０１、１３０１  ＡＰＰ名
７０２、９０２、１１０２  使用リソース
８０１  影響度検出手段
８０２  影響度情報テーブル
１００１  リソース使用状況検出手段
１００２  リソース使用状況情報テーブル
１００３  リソース使用状況監視手段
１２０１  ＧＰＳ機能使用情報検出手段
１２０２  ＧＰＳ機能使用情報テーブル
１２０３  位置情報取得手段
１３０２  機能使用率
１３０３  移動速度
１４０１  アプリケーション使用リソース情報取得手段
１５０１  アプリケーション情報
１５０２  リソース
１６０５  シューティングゲーム
１６０６  ○×ゲーム
１６０７  オセロゲーム
【図１】
2009146206.tif 000003
【図２】
2009146206.tif 000004
【図３】
2009146206.tif 000005
【図４】
2009146206.tif 000006
【図５】
2009146206.tif 000007
【図６】
2009146206.tif 000008
【図７】
2009146206.tif 000009
【図８】
2009146206.tif 000010
【図９】
2009146206.tif 000011
【図１０】
2009146206.tif 000012
【図１１】
2009146206.tif 000013
【図１２】
2009146206.tif 000014
【図１３】
2009146206.tif 000015
【図１４】
2009146206.tif 000016
【図１５】
2009146206.tif 000017
【図１６】
2009146206.tif 000018