(57)【要約】【課題】限られたリソース資源を複数のアプリケーションで利用する場合に、アプリケーションの実行を適切に切り替える。【解決手段】移動機１には、マルチアプリケーション実行環境において、多重実行状態と単一実行状態との間で、実行状態を遷移させる実行状態遷移部６１と、マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放させるリソース解放部６２と、単一実行状態において実行されるアプリケーション以外のアプリケーションを、停止させるアプリケーション停止部６３と、実行状態遷移部６１により多重実行状態から単一実行状態に遷移されると、リソース解放部６２により解放されたリソース資源を、単一実行状態において実行されるアプリケーションに割り当てるリソース割当部６４と、が設けられる。【選択図】図１
2010108295.tif 000002
【特許請求の範囲】
【請求項１】
複数のアプリケーションが実行される移動機であって、
複数のアプリケーションが実行可能なマルチアプリケーション実行環境において、複数のアプリケーションが実行される多重実行状態と単一のアプリケーションが実行される単一実行状態とで実行状態を遷移させる実行状態遷移手段と、
前記マルチアプリケーション実行環境の前記多重実行状態において複数のアプリケーションが実行されているときに、前記多重実行状態から前記単一実行状態への実行状態遷移要求を受ける実行状態遷移要求受信手段と、
前記実行状態遷移要求受信手段により前記実行状態遷移要求を受けると、前記多重実行状態において実行されているアプリケーションのうち、前記単一実行状態において実行されるアプリケーション以外のアプリケーションを停止させるアプリケーション停止手段と、
前記実行状態遷移要求受信手段により前記実行状態遷移要求を受けると、前記多重実行状態において実行されているアプリケーションが利用しているリソース資源を解放する第１のリソース資源解放手段と、
前記単一実行状態において実行されるアプリケーションに、前記第１のリソース資源解放手段により解放されたリソース資源を割り当てる第１のリソース資源割当手段と、
を有することを特徴とする移動機。
【請求項２】
前記第１のリソース資源解放手段は、前記多重実行状態において実行されている前記複数のアプリケーションのうち、前記単一実行状態において実行されるアプリケーション以外のアプリケーションが利用しているリソース資源のみを解放することを特徴とする請求項１に記載の移動機。
【請求項３】
複数のアプリケーションが実行される移動機であって、
複数のアプリケーションが実行可能なマルチアプリケーション実行環境と単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境とで実行環境を遷移させる実行環境遷移手段と、
前記実行環境遷移要求を受けると、前記マルチアプリケーション実行環境において実行されている全てのアプリケーションを終了させるアプリケーション終了手段と、
前記マルチアプリケーション実行環境から前記シングルアプリケーション実行環境への実行環境遷移要求を受けると、前記マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放する第２のリソース資源解放手段と、
前記シングルアプリケーション実行環境において実行されるアプリケーションに、前記第２のリソース資源解放手段により解放されたリソース資源を割り当てる第２のリソース資源割当手段と、
前記実行環境遷移手段により前記シングルアプリケーション実行環境に遷移された後、前記シングルアプリケーション実行環境において実行されるアプリケーションを実行させるシングルアプリケーション実行手段と、
を有することを特徴とする移動機。
【請求項４】
前記シングルアプリケーション実行環境において実行されるアプリケーションが、前記マルチアプリケーション実行環境において実行されている所定のアプリケーションと連携して起動されるものである場合、前記マルチアプリケーション実行環境において実行されているアプリケーションを終了させる前に、前記所定のアプリケーションの状態情報を保存する状態情報保存手段と、を更に有し、
前記シングルアプリケーション実行手段は、前記状態情報保存手段において保存された前記状態情報を取得して、前記シングルアプリケーション実行環境において実行されるアプリケーションを実行させることを特徴とする請求項３に記載の移動機。
【請求項５】
複数のアプリケーションが実行される移動機であって、
複数のアプリケーションが実行可能なマルチアプリケーション実行環境において、複数のアプリケーションが実行される多重実行状態と単一のアプリケーションが実行される単一実行状態とで実行状態を遷移させる実行状態遷移手段と、
前記マルチアプリケーション実行環境の前記多重実行状態において複数のアプリケーションが実行されているときに、前記多重実行状態から前記単一実行状態への実行状態遷移要求を受ける実行状態遷移要求受信手段と、
前記実行状態遷移要求受信手段により前記実行状態遷移要求を受けると、前記多重実行状態において実行されているアプリケーションのうち、前記単一実行状態において実行されるアプリケーション以外のアプリケーションを停止させるアプリケーション停止手段と、
前記実行状態遷移要求受信手段により前記実行状態遷移要求を受けると、前記多重実行状態において実行されているアプリケーションが利用しているリソース資源を解放する第１のリソース資源解放手段と、
前記単一実行状態において実行されるアプリケーションに、前記第１のリソース資源解放手段により解放されたリソース資源を割り当てる第１のリソース資源割当手段と、
前記実行状態遷移手段により前記単一実行状態に遷移された前記マルチアプリケーション実行環境と単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境とで実行環境を遷移させる実行環境遷移手段と、
前記実行環境遷移要求を受けると、前記マルチアプリケーション実行環境において実行されている全てのアプリケーションを終了させるアプリケーション終了手段と、
前記マルチアプリケーション実行環境から前記シングルアプリケーション実行環境への実行環境遷移要求を受けると、前記マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放する第２のリソース資源解放手段と、
前記シングルアプリケーション実行環境において実行されるアプリケーションに、前記第２のリソース資源解放手段により解放されたリソース資源を割り当てる第２のリソース資源割当手段と、
前記実行環境遷移手段により前記シングルアプリケーション実行環境に遷移された後、前記シングルアプリケーション実行環境において実行されるアプリケーションを実行させるシングルアプリケーション実行手段と、
を有することを特徴とする移動機。
【請求項６】
複数のアプリケーションが実行されるアプリケーションの切替方法であって、
複数のアプリケーションが実行可能なマルチアプリケーション実行環境において、複数のアプリケーションが実行される多重実行状態と単一のアプリケーションが実行される単一実行状態とで実行状態を遷移させる実行状態遷移ステップと、
前記マルチアプリケーション実行環境の前記多重実行状態において複数のアプリケーションが実行されているときに、前記多重実行状態から前記単一実行状態への実行状態遷移要求を受ける実行状態遷移要求受信ステップと、
前記実行状態遷移要求受信ステップにおいて前記実行状態遷移要求を受けると、前記多重実行状態において実行されているアプリケーションのうち、前記単一実行状態において実行されるアプリケーション以外のアプリケーションを停止させるアプリケーション停止ステップと、
前記実行状態遷移要求受信ステップにおいて前記実行状態遷移要求を受けると、前記多重実行状態において実行されているアプリケーションが利用しているリソース資源を解放する第１のリソース資源解放ステップと、
前記単一実行状態において実行されるアプリケーションに、前記第１のリソース資源解放ステップにおいて解放されたリソース資源を割り当てる第１のリソース資源割当ステップと、
を有することを特徴とするアプリケーションの切替方法。
【請求項７】
複数のアプリケーションが実行されるアプリケーションの切替方法であって、
複数のアプリケーションが実行可能なマルチアプリケーション実行環境と単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境とで実行環境を遷移させる実行環境遷移ステップと、
前記実行環境遷移要求を受けると、前記マルチアプリケーション実行環境において実行されている全てのアプリケーションを終了させるアプリケーション終了ステップと、
前記マルチアプリケーション実行環境から前記シングルアプリケーション実行環境への実行環境遷移要求を受けると、前記マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放する第２のリソース資源解放ステップと、
前記シングルアプリケーション実行環境において実行されるアプリケーションに、前記第２のリソース資源解放ステップにおいて解放されたリソース資源を割り当てる第２のリソース資源割当ステップと、
前記実行環境遷移ステップにおいて前記シングルアプリケーション実行環境に遷移された後、前記シングルアプリケーション実行環境において実行されるアプリケーションを実行させるシングルアプリケーション実行ステップと、
を有することを特徴とするアプリケーションの切替方法。
【請求項８】
複数のアプリケーションが実行されるアプリケーションの切替方法であって、
複数のアプリケーションが実行可能なマルチアプリケーション実行環境において、複数のアプリケーションが実行される多重実行状態と単一のアプリケーションが実行される単一実行状態とで実行状態を遷移させる実行状態遷移ステップと、
前記マルチアプリケーション実行環境の前記多重実行状態において複数のアプリケーションが実行されているときに、前記多重実行状態から前記単一実行状態への実行状態遷移要求を受ける実行状態遷移要求受信ステップと、
前記実行状態遷移要求受信ステップにおいて前記実行状態遷移要求を受けると、前記多重実行状態において実行されているアプリケーションのうち、前記単一実行状態において実行されるアプリケーション以外のアプリケーションを停止させるアプリケーション停止ステップと、
前記実行状態遷移要求受信ステップにおいて前記実行状態遷移要求を受けると、前記多重実行状態において実行されているアプリケーションが利用しているリソース資源を解放する第１のリソース資源解放ステップと、
前記単一実行状態において実行されるアプリケーションに、前記第１のリソース資源解放ステップにおいて解放されたリソース資源を割り当てる第１のリソース資源割当ステップと、
前記実行状態遷移ステップにおいて前記単一実行状態に遷移された前記マルチアプリケーション実行環境と単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境とで実行環境を遷移させる実行環境遷移ステップと、
前記実行環境遷移要求を受けると、前記マルチアプリケーション実行環境において実行されている全てのアプリケーションを終了させるアプリケーション終了ステップと、
前記マルチアプリケーション実行環境から前記シングルアプリケーション実行環境への実行環境遷移要求を受けると、前記マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放する第２のリソース資源解放ステップと、
前記シングルアプリケーション実行環境において実行されるアプリケーションに、前記第２のリソース資源解放ステップにおいて解放されたリソース資源を割り当てる第２のリソース資源割当ステップと、
前記実行環境遷移ステップにおいて前記シングルアプリケーション実行環境に遷移された後、前記シングルアプリケーション実行環境において実行されるアプリケーションを実行させるシングルアプリケーション実行ステップと、
を有することを特徴とするアプリケーションの切替方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のアプリケーションが限られたハードウェア資源を利用する移動機及びアプリケーション切替方法に関する。
【背景技術】
【０００２】
近年、携帯電話機などの小型の携帯情報端末上でアプリケーションをダウンロードして実行することが可能となっている。また、その実行環境としては、同時に一つのアプリケーションのみを実行する環境や、メモリの許す限り複数のアプリケーションを同時に起動して実行する環境などがある。
【０００３】
しかしながら、サービスを提供するコンテンツプロバイダの立場から考えると、複数のアプリケーションを同時に実行する環境においては、ユーザやコンテンツ作成者の意図に反して、単一のＣＰＵ資源やメモリ資源を複数アプリケーションで共有することになるため、単一のアプリケーションのみを実行した場合に比べ、速度が半減したり、メモリ不足が起こったり、必要なハードウェア資源が確保できずにエラーが発生したりするなどの事象が発生するおそれがある。
【０００４】
このようにコンテンツプロバイダのサービスを提供するためのアプリケーションプラットフォームにおいては、多重実行を行うと安定したサービス提供が不可能となるため、多くの場合は同時に一つのアプリケーションしか動作させない単一実行環境とするか、複数のアプリケーションが同時に起動状態になることができる多重実行環境であっても、一つのアプリケーションのみを実行状態とし、その他のアプリケーションを休止させることで、サービスの安定化を図っていた。
【０００５】
また、逆に、多重実行状態を可能とする一部の携帯電話端末（例えば、スマートフォン）においては、安定した速度・動作環境でのサービス提供は困難であり、エンドユーザが自らＣＰＵ資源を激しく消費するアプリケーションを終了させる必要があるなど、リテラシーの高いユーザにしか使えないという問題があった。
【０００６】
ところで、複数のアプリケーションを限られたリソース資源の上で効率的に切り替えながら実行する技術として、特許文献１に記載される技術が考えられている。
【特許文献１】特開２００６−１４６９１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載された技術は、上記のようなアプリケーションの実行状態及び実行環境が考慮されていないため、上記問題を解決するものではなかった。
【０００８】
そこで、本発明は、限られたリソース資源を複数のアプリケーションで利用する場合に、アプリケーションの実行を適切に切り替えることができる移動機及びアプリケーソン切替方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明に係る移動機は、複数のアプリケーションが実行される移動機であって、複数のアプリケーションが実行可能なマルチアプリケーション実行環境において、複数のアプリケーションが実行される多重実行状態と単一のアプリケーションが実行される単一実行状態とで実行状態を遷移させる実行状態遷移手段と、マルチアプリケーション実行環境の多重実行状態において複数のアプリケーションが実行されているときに、多重実行状態から単一実行状態への実行状態遷移要求を受ける実行状態遷移要求受信手段と、実行状態遷移要求受信手段により実行状態遷移要求を受けると、多重実行状態において実行されているアプリケーションのうち、単一実行状態において実行されるアプリケーション以外のアプリケーションを停止させるアプリケーション停止手段と、実行状態遷移要求受信手段により実行状態遷移要求を受けると、多重実行状態において実行されているアプリケーションが利用しているリソース資源を解放する第１のリソース資源解放手段と、単一実行状態において実行されるアプリケーションに、第１のリソース資源解放手段により解放されたリソース資源を割り当てる第１のリソース資源割当手段と、を有することを特徴とする。
【００１０】
本発明に係るアプリケーションの切替方法は、複数のアプリケーションが実行されるアプリケーションの切替方法であって、複数のアプリケーションが実行可能なマルチアプリケーション実行環境において、複数のアプリケーションが実行される多重実行状態と単一のアプリケーションが実行される単一実行状態とで実行状態を遷移させる実行状態遷移ステップと、マルチアプリケーション実行環境の多重実行状態において複数のアプリケーションが実行されているときに、多重実行状態から単一実行状態への実行状態遷移要求を受ける実行状態遷移要求受信ステップと、実行状態遷移要求受信ステップにおいて実行状態遷移要求を受けると、多重実行状態において実行されているアプリケーションのうち、単一実行状態において実行されるアプリケーション以外のアプリケーションを停止させるアプリケーション停止ステップと、実行状態遷移要求受信ステップにおいて実行状態遷移要求を受けると、多重実行状態において実行されているアプリケーションが利用しているリソース資源を解放する第１のリソース資源解放ステップと、単一実行状態において実行されるアプリケーションに、第１のリソース資源解放ステップにおいて解放されたリソース資源を割り当てる第１のリソース資源割当ステップと、を有することを特徴とする。
【００１１】
本発明に係る移動機及びアプリケーションの切替方法によれば、マルチアプリケーション実行環境において、多重実行状態から単一実行状態への実行状態遷移要求を受けると、多重実行状態で実行されているアプリケーションが利用しているリソース資源が解放されるとともに、単一実行状態において実行されるアプリケーション以外のアプリケーションが停止される。その後、単一実行状態において実行されるアプリケーションに、解放されたリソース資源が割り当てられるため、単一実行状態において実行されるアプリケーションは、他のアプリケーションに制限されることなく、リソース資源を利用することができる。このように、限られたリソース資源を複数のアプリケーションで利用する場合に、ユーザがリソース資源の割り当て操作を行わなくても多重実行状態から単一実行状態に遷移させることができるため、アプリケーションの実行を適切に切り替えることができる。
【００１２】
この場合、上記第１のリソース資源解放手段は、多重実行状態において実行されている複数のアプリケーションのうち、単一実行状態において実行されるアプリケーション以外のアプリケーションが利用しているリソース資源のみを解放することが好ましい。この移動機によれば、実行状態を遷移させる際、単一実行状態において実行されるアプリケーション以外のアプリケーションが利用しているリソース資源のみが解放され、単一実行状態において実行されるアプリケーションが利用しているリソース資源は解放されない。これにより、単一実行状態において実行されるアプリケーションは、実行状態が遷移する際もリソース資源を確保し続けることができるため、処理の中断を最小限に抑えることができる。
【００１３】
本発明に係る移動機は、複数のアプリケーションが実行される移動機であって、複数のアプリケーションが実行可能なマルチアプリケーション実行環境と単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境とで実行環境を遷移させる実行環境遷移手段と、実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されている全てのアプリケーションを終了させるアプリケーション終了手段と、マルチアプリケーション実行環境からシングルアプリケーション実行環境への実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放する第２のリソース資源解放手段と、シングルアプリケーション実行環境において実行されるアプリケーションに、第２のリソース資源解放手段により解放されたリソース資源を割り当てる第２のリソース資源割当手段と、実行環境遷移手段によりシングルアプリケーション実行環境に遷移された後、シングルアプリケーション実行環境において実行されるアプリケーションを実行させるシングルアプリケーション実行手段と、を有することを特徴とする。
【００１４】
本発明に係るアプリケーションの切替方法は、複数のアプリケーションが実行されるアプリケーションの切替方法であって、複数のアプリケーションが実行可能なマルチアプリケーション実行環境と単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境とで実行環境を遷移させる実行環境遷移ステップと、実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されている全てのアプリケーションを終了させるアプリケーション終了ステップと、マルチアプリケーション実行環境からシングルアプリケーション実行環境への実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放する第２のリソース資源解放ステップと、シングルアプリケーション実行環境において実行されるアプリケーションに、第２のリソース資源解放ステップにおいて解放されたリソース資源を割り当てる第２のリソース資源割当ステップと、実行環境遷移ステップにおいてシングルアプリケーション実行環境に遷移された後、シングルアプリケーション実行環境において実行されるアプリケーションを実行させるシングルアプリケーション実行ステップと、を有することを特徴とする。
【００１５】
本発明に係る移動機及びアプリケーションの切替方法によれば、マルチアプリケーション実行環境において、マルチアプリケーション実行環境からシングルアプリケーション実行環境への実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源が解放されるとともに、マルチアプリケーション実行環境において実行されている全てのアプリケーションが終了される。その後、解放されたリソース資源が、シングルアプリケーション実行環境において実行されるアプリケーションに割り当てられて、当該アプリケーションが実行される。このため、シングルアプリケーション実行環境において実行されるアプリケーションは、他のアプリケーションに制限されることなく、リソース資源を利用することができる。このように、限られたリソース資源を複数のアプリケーションで利用する場合に、ユーザがリソース資源の割り当て操作を行わなくても、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させることができるため、アプリケーションの実行を適切に切り替えることができる。
【００１６】
この場合、シングルアプリケーション実行環境において実行されるアプリケーションが、マルチアプリケーション実行環境において実行されている所定のアプリケーションと連携して起動されるものである場合、マルチアプリケーション実行環境において実行されているアプリケーションを終了させる前に、所定のアプリケーションの状態情報を保存する状態情報保存手段と、を更に有し、シングルアプリケーション実行手段は、状態情報保存手段において保存された状態情報を取得して、シングルアプリケーション実行環境において実行されるアプリケーションを実行させることが好ましい。この移動機によれば、シングルアプリケーション実行環境において実行されるアプリケーションが、マルチアプリケーション実行環境において実行されている所定のアプリケーションと連携して起動されるものである場合は、マルチアプリケーション実行環境において実行されているアプリケーションが終了される前に、連携起動されるアプリケーションの状態情報が保存される。その後、保存された状態情報を取得して、シングルアプリケーション実行環境において実行されるアプリケーションが実行されるため、シングルアプリケーション実行環境において実行されるアプリケーションは、保存された状態情報を取得することで、マルチアプリケーション実行環境において実行されていたアプリケーションと連携することができる。これにより、マルチアプリケーション実行環境において実行されるアプリケーションと、シングルアプリケーション実行環境において実行されるアプリケーションとの連携起動を可能とすることができる。
【００１７】
本発明に係る移動機は、複数のアプリケーションが実行される移動機であって、複数のアプリケーションが実行可能なマルチアプリケーション実行環境において、複数のアプリケーションが実行される多重実行状態と単一のアプリケーションが実行される単一実行状態とで実行状態を遷移させる実行状態遷移手段と、
マルチアプリケーション実行環境の多重実行状態において複数のアプリケーションが実行されているときに、多重実行状態から単一実行状態への実行状態遷移要求を受ける実行状態遷移要求受信手段と、実行状態遷移要求受信手段により実行状態遷移要求を受けると、多重実行状態において実行されているアプリケーションのうち、単一実行状態において実行されるアプリケーション以外のアプリケーションを停止させるアプリケーション停止手段と、実行状態遷移要求受信手段により実行状態遷移要求を受けると、多重実行状態において実行されているアプリケーションが利用しているリソース資源を解放する第１のリソース資源解放手段と、単一実行状態において実行されるアプリケーションに、第１のリソース資源解放手段により解放されたリソース資源を割り当てる第１のリソース資源割当手段と、実行状態遷移手段により単一実行状態に遷移されたマルチアプリケーション実行環境と単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境とで実行環境を遷移させる実行環境遷移手段と、実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されている全てのアプリケーションを終了させるアプリケーション終了手段と、マルチアプリケーション実行環境からシングルアプリケーション実行環境への実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放する第２のリソース資源解放手段と、シングルアプリケーション実行環境において実行されるアプリケーションに、第２のリソース資源解放手段により解放されたリソース資源を割り当てる第２のリソース資源割当手段と、実行環境遷移手段によりシングルアプリケーション実行環境に遷移された後、シングルアプリケーション実行環境において実行されるアプリケーションを実行させるシングルアプリケーション実行手段と、を有することを特徴とする。
【００１８】
本発明に係るアプリケーションの切替方法は、複数のアプリケーションが実行されるアプリケーションの切替方法であって、複数のアプリケーションが実行可能なマルチアプリケーション実行環境において、複数のアプリケーションが実行される多重実行状態と単一のアプリケーションが実行される単一実行状態とで実行状態を遷移させる実行状態遷移ステップと、マルチアプリケーション実行環境の多重実行状態において複数のアプリケーションが実行されているときに、多重実行状態から単一実行状態への実行状態遷移要求を受ける実行状態遷移要求受信ステップと、実行状態遷移要求受信ステップにおいて実行状態遷移要求を受けると、多重実行状態において実行されているアプリケーションのうち、単一実行状態において実行されるアプリケーション以外のアプリケーションを停止させるアプリケーション停止ステップと、実行状態遷移要求受信ステップにおいて実行状態遷移要求を受けると、多重実行状態において実行されているアプリケーションが利用しているリソース資源を解放する第１のリソース資源解放ステップと、単一実行状態において実行されるアプリケーションに、第１のリソース資源解放ステップにおいて解放されたリソース資源を割り当てる第１のリソース資源割当ステップと、実行状態遷移ステップにおいて単一実行状態に遷移されたマルチアプリケーション実行環境と単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境とで実行環境を遷移させる実行環境遷移ステップと、実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されている全てのアプリケーションを終了させるアプリケーション終了ステップと、マルチアプリケーション実行環境からシングルアプリケーション実行環境への実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源を解放する第２のリソース資源解放ステップと、シングルアプリケーション実行環境において実行されるアプリケーションに、第２のリソース資源解放ステップにおいて解放されたリソース資源を割り当てる第２のリソース資源割当ステップと、実行環境遷移ステップにおいてシングルアプリケーション実行環境に遷移された後、シングルアプリケーション実行環境において実行されるアプリケーションを実行させるシングルアプリケーション実行ステップと、を有することを特徴とする。
【００１９】
本発明に係る移動機及びアプリケーションの切替方法によれば、マルチアプリケーション実行環境において、多重実行状態から単一実行状態への実行状態遷移要求を受けると、多重実行状態で実行されているアプリケーションが利用しているリソース資源が解放されるとともに、単一実行状態において実行されるアプリケーション以外のアプリケーションが停止される。その後、単一実行状態において実行されるアプリケーションに、解放されたリソース資源が割り当てられるため、単一実行状態において実行されるアプリケーションは、他のアプリケーションに制限されることなく、リソース資源を利用することができる。その後、単一実行状態に遷移されたマルチアプリケーション実行環境において、マルチアプリケーション実行環境からシングルアプリケーション実行環境への実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源が解放されるとともに、マルチアプリケーション実行環境において実行されている全てのアプリケーションが終了される。その後、シングルアプリケーション実行環境において実行されるアプリケーションに解放されたリソース資源が割り当てられて、当該アプリケーションが実行される。このため、シングルアプリケーション実行環境において実行されるアプリケーションは、他のアプリケーションに制限されることなく、リソース資源を利用することができる。このように、限られたリソース資源を複数のアプリケーションで利用する場合に、ユーザがリソース資源の割り当て操作を行わなくても、マルチアプリケーション実況環境において、多重実行状態から単一実行状態に遷移させ、更に、単一実行状態に遷移されたマルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させることができるため、これらの実行状態及び実行環境の遷移に伴うアプリケーションの実行を適切に切り替えることができる。
【発明の効果】
【００２０】
本発明によれば、限られたリソース資源を複数のアプリケーションで利用する場合に、アプリケーションの実行を適切に切り替えることができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明に係る移動機及びアプリケーション切替方法の実施形態について図面を参照して説明する。なお、各図において、同一要素には同一符号を付して重複する説明を省略する。
【００２２】
図１は、実施形態に係る移動機の機能を示した機能構成図であり、図２は、移動機のアプリケーション実行環境の遷移図である。
【００２３】
図１に示すように、本実施形態に係る移動機１は、パソコンなどに比べてリソース資源が限定された小型の移動通信端末であり、例えば、携帯電話などが適用される。そして、移動機１には、ユーザに対してサービス等を行う複数のアプリケーションが組み込まれており、これらの複数のアプリケーションが、限られたリソース資源を利用して、同時に又は単独で実行される。
【００２４】
図２に示すように、移動機１には、複数のアプリケーションが実行可能なマルチアプリケーション実行環境（多重実行環境）と、単一のアプリケーションのみが実行可能なシングルアプリケーション実行環境（単一実行環境）とが提供されており、更に、マルチアプリケーション実行環境においては、複数のアプリケーションが実行される多重実行状態と、単一のアプリケーションが実行される単一実行状態とが提供されている。すなわち、マルチアプリケーション実行環境は、マルチアプリケーション実行モードのアプリケーションが実行できる環境であり、多重実行状態は、リソース資源を所定条件で複数のアプリケーションに分配する状態であり、単一実行状態は、リソース資源を所定条件で単一のアプリケーションに割り当てる状態である。一方、シングルアプリケーション実行環境は、シングルアプリケーション実行モードのアプリケーションが単一のみで実行できる環境である。そして、移動機１に組み込まれたアプリケーションは、これらの実行環境及び実行状態において実行される。なお、移動機１に組み込まれるアプリケーションには、マルチアプリケーション実行モードのアプリケーション（プログラム）と、シングルアプリケーション実行モードのアプリケーション（プログラム）とが、同一のアプリケーションパッケージとして構成されており、このマルチアプリケーション実行モードのアプリケーションと、シングルアプリケーション実行モードのアプリケーションとが連携起動するものがある。
【００２５】
そして、図１に示すように、移動機１には、入力デバイス１０と、排他ハードウェア資源２０と、分配ハードウェア資源３０と、データストレージ４０と、ウィンドウマネージャ５０と、多重アプリ実行エンジン６０と、単一アプリ実行エンジン９０と、切替マネージャ８０と、プログラム本体・リソース保存モジュール１００とが設けられている。
【００２６】
入力デバイス１０は、ユーザ操作により、アプリケーションやウィンドウマネージャ５０を制御するための入力デバイスであって、移動機１の各種キーなどに対応する。
【００２７】
排他ハードウェア資源２０は、単一のアプリケーションからのみ利用可能なハードウェア資源であり、例えば、赤外線通信装置や、音声合成機能などに対応する。
【００２８】
分配ハードウェア資源３０は、時分割や量の分割により、複数のアプリケーションが分配して利用可能なハードウェア資源であり、例えば、メインメモリやＣＰＵなどに対応する。
【００２９】
データストレージ４０は、アプリケーションから自身のデータを書き込むことができる記憶装置である。そして、データストレージ４０は、アプリケーションごとに専用領域４０ａ，４０ｂ，・・・が確保されている。
【００３０】
ウィンドウマネージャ５０は、アプリケーションの表示を制御する制御部である。ウィンドウマネージャ５０は、各種表示モードに応じて、アプリケーションごとに所定の大きさのウィンドウで表示する。そして、ウィンドウマネージャ５０は、マルチアプリケーション実行環境において多重実行状態で複数のアプリケーションが実行される場合、各アプリケーションのウィンドウをディスプレイに重畳して一覧表示する。一方、マルチアプリケーション実行環境において単一実行状態で単一のアプリケーションが実行される場合、当該アプリケーションをディスプレイに個別表示する。なお、シングルアプリケーション実行環境では、単一のアプリケーションのみが動作するため、当該アプリケーションのみをディスプレイに大きく表示する。このため、シングルアプリケーション実行環境では、ウィンドウマネージャ５０のように複数の画面情報を管理するモジュールを介さずに表示を行うことが可能である。
【００３１】
多重アプリ実行エンジン６０は、マルチアプリケーション実行環境を提供し、マルチアプリケーション実行モードの１又は複数のアプリケーションを実行させるものである。すなわち、多重アプリ実行エンジン６０は、１又は複数のアプリケーションにリソース資源を分配することで、多重実行状態において複数のアプリケーションを実行させ、単一実行状態において、単一のアプリケーションを実行させる。そして、多重アプリ実行エンジン６０は、多重実行状態と単一実行状態との間で、実行状態の遷移を行う。このため、多重アプリ実行エンジン６０には、実行状態遷移部６１と、リソース解放部６２と、アプリケーション停止部６３と、リソース割当部６４と、データ保存部６５の各機能が設けられている。
【００３２】
実行状態遷移部６１は、マルチアプリケーション実行環境において、多重実行状態と単一実行状態との間で、実行状態を遷移させるものである。例えば、多重実行状態で複数のアプリケーションが実行されているときに、所定のアプリケーションを単一で実行させるために、ユーザ操作による入力デバイス１０のキーイベントにより実行状態遷移要求を受けると、実行状態遷移部６１は、多重実行状態を終了させて、単一実行状態に遷移させる。なお、各アプリケーションは、多重実行状態から単一実行状態への遷移要求を発行することができない。本状態遷移は、あくまで、ユーザ若しくはウィンドウシステムからの指示によって受動的に状態遷移が行われる。これにより、複数のアプリケーションが同時に動作するモードにおいて、リソース競合が発生する状況になるのを回避している。
【００３３】
リソース解放部６２は、現在実行しているアプリケーションが利用しているリソース資源を解放させるものである。すなわち、リソース解放部６２は、マルチアプリケーション実行環境において、多重実行状態から単一実行状態への実行状態遷移要求を受けると、現在、多重実行状態において実行されているアプリケーションのうち、単一実行状態において実行されるアプリケーション以外の全てのアプリケーションに対して、利用している分配ハードウェア資源３０のうちメモリ資源以外を解放させる。そして、多重実行状態では、後述するように、各アプリケーションは排他ハードウェア資源２０を利用できないため、リソース解放部６２が解放させるリソース資源は、分配ハードウェア資源３０のみとなる。なお、後述するように、多重実行状態から単一実行状態への実行状態を遷移させる際は、単一実行状態において実行されるアプリケーション以外の全てのアプリケーションを停止状態とするため、これらのアプリケーションが利用しているメモリ資源については、解放の対象外とする。
【００３４】
アプリケーション停止部６３は、マルチアプリケーション実行環境において、多重実行状態から単一実行状態への実行状態遷移要求を受けると、単一実行状態において実行されるアプリケーション以外のアプリケーションを、停止させるものである。なお、本発明において「停止」とは、実行用のメモリ資源は確保したままＣＰＵ資源の割り当てが回ってこない（ＣＰＵ資源を使用するためのＣＰＵ時間が割り当てられない）状態をいう。このため、実行は停止しているものの、単一実行状態から多重実行状態に遷移すると、ＣＰＵ時間が割り当てられて動作が復旧する。
【００３５】
リソース割当部６４は、実行状態遷移部６１により多重実行状態から単一実行状態に遷移されると、リソース解放部６２により解放された分配ハードウェア資源３０と、必要に応じて排他ハードウェア資源２０とを、単一実行状態において実行されるアプリケーションに割り当てるものである。
【００３６】
データ保存部６５は、マルチアプリケーション実行モードのアプリケーションと、シングルアプリケーション実行モードのアプリケーションとの連携起動を可能とするために、実行環境を遷移する際に、実行しているアプリケーションの状態情報を保存するものである。この状態情報は、連携起動されるアプリケーションにおける共通の状態情報や、連携起動されるアプリケーション間で使用される独自の状態情報などで構成される。
【００３７】
多重実行状態管理部７０は、多重アプリ実行エンジン６０とウィンドウマネージャ５０を仲介制御して、多重実行状態又は単一実行状態に対応した表示状態の切り替えを行う。また、多重実行状態管理部７０は、多重実行状態に遷移しているときに発生した入力デバイス１０のキーイベントを受信する。そして、多重実行状態管理部７０は、このキーイベントの配送先となる実行中の何れのアプリケーション又はウィンドウマネージャ５０を判断し、このキーイベントを配送する。また、ユーザ操作がウィンドウマネージャ５０に対する多重実行状態と単一実行状態との切り替え操作である場合には、適宜実行状態の切り替えを行う。なお、多重実行状態と単一実行状態との状態遷移は、アプリケーションからは禁止されており、ユーザ操作やシステムからの操作要求によってのみ可能となっている。一方、一旦、単一実行状態に遷移された後は、競合動作するアプリケーションが存在しないため、アプリケーションから任意のタイミングで実行エンジンの切り替えが可能となっている。
【００３８】
切替マネージャ８０は、マルチアプリケーション実行環境とシングルアプリケーション実行環境との間で、実行環境を遷移させるものである。実行環境が遷移する場合とは、例えば、マルチアプリケーション実行環境においてマルチアプリケーション実行モードのアプリケーションが単一実行状態で実行されているときに、このマルチアプリケーション実行モードのアプリケーションと連携起動するシングルアプリケーション実行モードのアプリケーションをシングルアプリケーション実行環境において実行させる場合である。そして、アプリケーションからの切り替え要求により実行状態遷移要求を受けると、切替マネージャ８０は、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させる。このため、切替マネージャ８０には、実行環境遷移部８１と、リソース解放部８２と、アプリケーション終了部８３と、リソース割当部８４との機能が設けられている。
【００３９】
実行環境遷移部８１は、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させるものである。例えば、単一実行状態のマルチアプリケーション実行環境においてマルチアプリケーション実行モードのアプリケーションが実行されているときに、このマルチアプリケーション実行モードのアプリケーションと連携起動されるシングルアプリケーション実行モードのアプリケーションを実行させるために、ユーザ操作が入力デバイス１０を操作すると、このキーイベントにより実行状態遷移要求が送信される。そこで、実行環境遷移部８１は、この実行状態遷移要求を受けると、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させる。
【００４０】
リソース解放部８２は、マルチアプリケーション実行環境において現在実行しているアプリケーションが利用しているリソース資源を解放させるものである。すなわち、リソース解放部８２は、マルチアプリケーション実行環境からシングルアプリケーション実行環境への実行環境遷移要求を受けると、アプリケーションに対して、利用している排他ハードウェア資源２０及び分配ハードウェア資源３０を解放させる。
【００４１】
アプリケーション終了部８３は、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させる実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行している全てのアプリケーションを強制終了させるものである。
【００４２】
リソース割当部８４は、実行環境遷移部８１によりマルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移されると、リソース解放部８２により解放された排他ハードウェア資源２０及び分配ハードウェア資源３０を、シングルアプリケーション実行環境において実行されるアプリケーションに割り当てるものである。
【００４３】
単一アプリ実行エンジン９０は、シングルアプリケーション実行環境を提供し、シングルアプリケーション実行モードのアプリケーションを実行させるものである。そして、単一アプリ実行エンジン９０は、切替マネージャ８０によりマルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移されると、シングルアプリケーション実行モードアプリケーションを適切に実行させるものである。このため、単一アプリ実行エンジン９０には、アプリケーション実行部９１の機能が設けられている。
【００４４】
アプリケーション実行部９１は、切替マネージャ８０の実行環境遷移部８１によりマルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移されると、シングルアプリケーション実行モードのアプリケーションを実行させるものである。このとき、実行されるシングルアプリケーション実行モードのアプリケーションが、マルチアプリケーション実行モードのアプリケーションと連携起動されるアプリケーションである場合は、シングルアプリケーション実行モードのアプリケーションを連携起動させる。
【００４５】
プログラム本体・リソース保存モジュール１００は、マルチアプリケーション実行環境及びシングルアプリケーション実行環境において動作するアプリケーションのプログラム本体、これらのアプリケーションから利用することができるが書き換えることができない画像や音などのリソースデータを保存する記憶装置である。そして、プログラム本体・リソース保存モジュール１００は、アプリケーションごとに専用領域１００ａ，１００ｂ，・・・が確保されており、専用領域ごとに、マルチアプリケーション実行環境専用領域１０１、シングルアプリケーション実行環境専用領域１０２、共通コード・リソースデータ１０３が設けられている。
【００４６】
図３は、プログラム本体・リソース保存モジュールにおける各専用領域の一例として、地図表示アプリケーションの専用領域１００ａの構成を示した図である。図３において、専用領域１００ａに保存される地図表示アプリケーションは、マルチアプリケーション実行モードのアプリケーションとシングルアプリケーション実行モードのアプリケーションとがパッケージになっている。そして、このマルチアプリケーション実行モードのアプリケーションとシングルアプリケーション実行モードのアプリケーションとは、同一の状態情報を用いて、互いに連携起動するアプリケーションとなっている。
【００４７】
マルチアプリケーション実行環境専用領域１０１には、マルチアプリケーション実行モードの地図表示アプリケーションが用いる各種情報が保存されており、例えば、多重実行状態と単一実行状態とに応じた表示状態遷移プログラム、２Ｄ（２次元）描画プログラム、ＧＰＳハードウェア資源の協調型利用プログラム、２Ｄ地図専用アイコンデータなどが保存されている。
【００４８】
シングルアプリケーション実行環境専用領域１０２には、シングルアプリケーション実行モードの地図表示アプリケーションが用いる各種情報が保存されており、例えば、３Ｄ（３次元）描画による地図描画プログラム、３Ｄ描画における各建物描画テクスチャデータ、ＧＰＳハードウェア資源の専用利用プログラムなどが保存されている。
【００４９】
共通コード・リソースデータ１０３には、マルチアプリケーション実行モードの地図表示アプリケーションとシングルアプリケーション実行モードの地図表示アプリケーションとで共通に用いる各種情報が保存されており、例えば、共通アイコン情報などが保存されている。
【００５０】
図４は、移動機のハードウェア構成を例示する図である。図４に示すように、移動機１は、物理的には、ＣＰＵ２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、補助記憶装置２０４と、通信モジュール２０５と、操作部２０６と、ディスプレイ２０７とを備える。そして、図１において説明した各機能は、図４に示すＣＰＵ２０１やＲＡＭ２０３上に所定のコンピュータソフトウェアを読み込ませることにより、ＣＰＵ２０１の制御のもとで通信モジュール２０５を動作させると共に、ＲＡＭ２０３や補助記憶装置２０４におけるデータの読み出し及び書き込みを行うことで実現される。
【００５１】
図５は、各実行環境において実行されるアプリケーションのリソース資源の割り当てと、その利用制限を示した図である。図５では、マルチアプリケーション実行環境の多重実行状態（一覧表示）、マルチアプリケーション実行環境の単一実行状態（個別表示）、及びシングルアプリケーション実行環境における、リソース資源の割り当て、及び、リソース資源利用の制限の一例について示している。図５に示すように、マルチアプリケーション実行環境の多重実行状態では、実行される各アプリケーションは、分配ハードウェア資源３０の利用が可能となるが、その利用が制限され、一方、排他ハードウェア資源２０の利用は不可能となっている。マルチアプリケーション実行環境の単一実行状態では、実行される各アプリケーションは、分配ハードウェア資源３０及び排他ハードウェア資源２０の利用が可能となるが、その利用が制限される。シングルアプリケーション実行環境では、分配ハードウェア資源３０及び排他ハードウェア資源２０の全てを利用が可能となっており、その制限もない。
【００５２】
次に、図６〜図８を参照して、本実施形態に係る移動機１の処理動作について説明する。図６は、マルチアプリケーション実行環境において、多重実行状態から単一実行状態に遷移する処理動作を説明するためのシーケンス図であり、図７は、単一実行状態のマルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移する処理動作を説明するためのシーケンス図であり、図８は、ディスプレイの表示例を示す図である。
【００５３】
まず、図６を参照して、マルチアプリケーション実行環境において、多重実行状態から単一実行状態に遷移する処理動作について説明する。
【００５４】
本処理動作では、マルチアプリケーション実行環境において、図３に示した地図表示パッケージアプリケーションであるアプリケーションＡとその他のアプリケーションＢ，Ｃとが、多重実行状態で実行されている状態から説明する。このときのディスプレイの表示状態は、図８（ａ）となり、アプリケーションＡ〜アプリケーションＣが、それぞれ小さなウィンドウで一覧表示されている。
【００５５】
この状態のときに、ユーザのキー操作によりアプリケーションＡが選択されると、このユーザのキーイベントが多重実行状態管理部７０に通知される（ステップＳ１）。
【００５６】
多重実行状態管理部７０は、このキーイベントを受け取ると、現在の表示状態とキーイベントの種別の組合せから、キーイベントの配送先がウィンドウマネージャ５０であると判断して、このキーイベントをウィンドウマネージャ５０に配送する（ステップＳ２）。
【００５７】
次に、ウィンドウマネージャ５０は、受け取ったキーイベントと現在の表示状態から、このキーイベントが、多重実行状態（一覧表示）から単一実行状態（個別表示）に遷移するイベントであると判定する（ステップＳ３）。そして、ウィンドウマネージャ５０は、ユーザに選択されたアプリケーションＡのＩＤ情報を用いて、多重実行状態管理部７０に実行状態遷移要求を通知する（ステップＳ４）。
【００５８】
多重実行状態管理部７０は、実行状態遷移要求の通知を受け取ると、このＩＤ情報が含まれた実行状態遷移要求を多重アプリ実行エンジン６０に通知する（ステップＳ５）。
【００５９】
そして、多重アプリ実行エンジン６０は、実行状態遷移要求の通知を受け取ると、マルチアプリケーション実行環境において、多重実行状態から単一実行状態に遷移させる実行状態遷移処理を行う（ステップＳ６）。この実行状態遷移処理では、まず、ユーザに選択されたアプリケーションＡ以外のアプリケーションＢ，Ｃが利用しているリソース資源を解放させて、アプリケーションＢ，Ｃを停止状態に遷移させる。そして、この解放させたリソース資源をアプリケーションＡに割り当てる。また、多重アプリ実行エンジン６０は、アプリケーションＡに対して、多重実行状態から単一実行状態に遷移したことを示す実行状態遷移通知を送信し（ステップＳ６）、アプリケーションＢ，Ｃに対して、停止状態に遷移したことを示す停止状態遷移通知を送信する（ステップＳ７）。
【００６０】
これにより、移動機１では、マルチアプリケーション実行環境において、多重実行状態から単一実行状態に遷移され、アプリケーションＡの単一実行状態となり、ディスプレイの表示状態は、図８（ｂ）に示すように、アプリケーションＡが大きなウィンドウで個別表示される。
【００６１】
次に、図７を参照して、単一実行状態のマルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移する処理動作について説明する。
【００６２】
本処理動作の初期状態では、移動機１上で、マルチアプリケーション実行環境において、図３に示した地図表示パッケージアプリケーションであるアプリケーションＡが、単一実行状態で実行されている。このときのディスプレイの表示状態は、図８（ｂ）に示すように、アプリケーションＡが大きなウィンドウで個別表示されている。
【００６３】
この状態のときに、ユーザのキー操作により、シングルアプリケーション実行用のアプリケーションＡに対応する「３Ｄ表示」が選択されると、このユーザのキーイベントがアプリケーションＡに通知される（ステップＳ１１）。
【００６４】
アプリケーションＡは、このキーイベントを受け取ると、このキーイベントによってユーザが３Ｄ表示を要求していることを判断することができるため、シングルアプリケーション実行モードのアプリケーションに切り替える準備を行う（ステップＳ１２）。この切り替え準備では、マルチアプリケーション実行モードのアプリケーションの状態情報を、データストレージ４０の専用領域４０ａに保存する（ステップＳ１３）。なお、状態情報の保存は、多重アプリ実行エンジン６０が、アプリケーションＡを実行させることにより行う。そして、データストレージ４０の専用領域４０ａに保存される状態情報は、マルチアプリケーション実行環境において実行されているマルチアプリケーション実行モードのアプリケーションＡと、実行環境遷移後に実行されるシングルアプリケーション実行モードのアプリケーションとで共通に用いられる情報であり、例えば、ユーザ情報である「現在表示中の地図の緯度経度情報」などである。
【００６５】
そして、アプリケーションＡは、状態情報をデータストレージ４０に保存すると、多重アプリ実行エンジン６０が提供する「実行状態切り替えＡＰＩ」をコールする（ステップＳ１４）。
【００６６】
多重アプリ実行エンジン６０は、「実行状態切り替えＡＰＩ」がコールされると、切替マネージャ８０に対して、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させる実行環境遷移要求を送信する（ステップＳ１５）。
【００６７】
切替マネージャ８０は、実行環境遷移要求を受け取ると、実行環境遷移処理を行う（ステップＳ１６）。この実行環境遷移処理では、まず、マルチアプリケーション実行環境において実行されているマルチアプリケーション実行モードのアプリケーションＡが利用しているリソース資源を解放させる。このとき、マルチアプリケーション実行モードにおいて、その他のアプリケーション（例えば、停止しているアプリケーションなど）にリソース資源が割り当てられている場合は、このリソース資源も解放させる。そして、全てのアプリケーションを強制終了させるために、多重アプリ実行エンジン６０に対して、終了要求を行う（ステップＳ１７）。
【００６８】
多重アプリ実行エンジン６０は、終了要求を受け取ると、現在実行されているアプリケーションＡの種別等、アプリケーションＡを実行させるために必要な情報をメモリに保存する（ステップＳ１８）。そして、多重アプリ実行エンジン６０は、マルチアプリケーション実行環境において実行されているアプリケーションＡと停止されている全てのアプリケーションＢ，Ｃに対して、強制終了を行わせる強制終了要求を送信する（ステップＳ１９）。
【００６９】
アプリケーションＡ〜Ｃでは、強制終了要求を受け取ると、現在の実行状態が実行状態及び停止状態の別に関わらず、強制終了する（ステップＳ２０）。そして、多重アプリ実行エンジン６０及び多重実行状態管理部７０がウィンドウマネージャ５０と連携して、描画などの表示処理を終了する（ステップＳ２１）。
【００７０】
そして、多重アプリ実行エンジン６０は、切替マネージャ８０に対して、マルチアプリケーション実行環境が終了したことを示す終了応答を通知する（ステップＳ２２）。
【００７１】
次に、切替マネージャ８０は、単一アプリ実行エンジン９０に対して、アプリケーションＡを指定して、シングルアプリケーション実行モードのアプリケーションＡを起動させる起動指示を送信する（ステップＳ３１）。このとき、アプリケーションＡの指定は、アプリケーションのＩＤ番号により行う。
【００７２】
単一アプリ実行エンジン９０は、起動指示を受け取ると、シングルアプリケーション実行モードのアプリケーションＡの起動処理を行う（ステップＳ３２）。この起動処理では、起動指示に指定されたＩＤ情報に基づいて、プログラム本体・リソース保存モジュール１００からアプリケーションＡに対応する専用領域１００ａを検索し、この専用領域１００ａのシングルアプリケーション実行環境専用領域１０２から、シングルアプリケーション実行モードのアプリケーションＡのプログラム本体を読み出す（ステップＳ３３，ステップＳ３４）。
【００７３】
そして、単一アプリ実行エンジン９０は、排他ハードウェア資源２０や分配ハードウェア資源３０などの全てのリソース資源を、シングルアプリケーション実行モードのアプリケーションＡが利用できるように確保する（ステップＳ３５）。そして、単一アプリ実行エンジン９０は、シングルアプリケーション実行モードのアプリケーションＡに対して、起動指示を送信する（ステップＳ３６）。
【００７４】
起動指示を受け取ったアプリケーションＡは、プログラム本体・リソース保存モジュール１００から読み出したプログラム本体の起動処理を行う（ステップＳ３７）。このプログラム本体の起動処理は、また、データストレージ４０に対して、マルチアプリケーション実行モードのアプリケーションＡが保存した状態情報を読み出す状態情報読み出し要求を送信する（ステップＳ３８）。すると、データストレージ４０は、要求された状態情報を読み出して、シングルアプリケーション実行モードのアプリケーションＡに送信する（ステップＳ３９）。そして、シングルアプリケーション実行モードのアプリケーションＡは、この状態情報を用いてプログラム本体を起動させる。
【００７５】
このようにして、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移され、シングルアプリケーション実行モードのアプリケーションＡが起動されると、ディスプレイの表示状態は、図８（ｃ）となり、アプリケーションＡが、ディスプレイ全体に表示される。
【００７６】
このように、本実施形態によれば、マルチアプリケーション実行環境において、多重実行状態から単一実行状態への実行状態遷移要求を受けると、多重実行状態で実行されているアプリケーションが利用しているリソース資源が解放されるとともに、単一実行状態において実行されるアプリケーション以外のアプリケーションが停止される。その後、単一実行状態において実行されるアプリケーションに、解放されたリソース資源が割り当てられるため、単一実行状態において実行されるアプリケーションは、他のアプリケーションに制限されることなく、リソース資源を利用することができる。このように、限られたリソース資源を複数のアプリケーションで利用する場合に、ユーザがリソース資源の割り当て操作を行わなくても多重実行状態から単一実行状態に遷移させることができるため、アプリケーションの実行を適切に切り替えることができる。
【００７７】
また、実行状態を遷移させる際、単一実行状態において実行されるアプリケーションＡ以外のアプリケーションＢ，Ｃが利用しているリソース資源のみが解放され、単一実行状態において実行されるアプリケーションＡが利用しているリソース資源は解放されない。これにより、単一実行状態において実行されるアプリケーションＡは、実行状態が遷移する際もリソース資源を確保し続けることができるため、処理の中断を最小限に抑えることができる。
【００７８】
また、マルチアプリケーション実行環境において、マルチアプリケーション実行環境からシングルアプリケーション実行環境への実行環境遷移要求を受けると、マルチアプリケーション実行環境において実行されているアプリケーションが利用しているリソース資源が解放されるとともに、マルチアプリケーション実行環境において実行されている全てのアプリケーションが終了される。その後、解放されたリソース資源が、シングルアプリケーション実行環境において実行されるアプリケーションに割り当てられて、当該アプリケーションが実行される。このため、シングルアプリケーション実行環境において実行されるアプリケーションは、他のアプリケーションに制限されることなく、リソース資源を利用することができる。このように、限られたリソース資源を複数のアプリケーションで利用する場合に、ユーザがリソース資源の割り当て操作を行わなくても、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させることができるため、アプリケーションの実行を適切に切り替えることができる。
【００７９】
また、シングルアプリケーション実行モードのアプリケーションが、マルチアプリケーション実行モードのアプリケーションと連携して起動されるものである場合は、マルチアプリケーション実行環境において実行されているマルチアプリケーション実行モードのアプリケーションが終了される前に、連携起動されるアプリケーションの状態情報が保存される。その後、保存された状態情報を取得して、シングルアプリケーション実行環境において実行されるシングルアプリケーション実行モードのアプリケーションが実行されるため、シングルアプリケーション実行モードのアプリケーションは、保存された状態情報を取得することで、マルチアプリケーション実行モードのアプリケーションと連携することができる。これにより、マルチアプリケーション実行モードのアプリケーションと、シングルアプリケーション実行モードのアプリケーションとの連携起動を可能とすることができる。
【００８０】
そして、ユーザがリソース資源の割り当て操作を行わなくても、マルチアプリケーション実況環境において、多重実行状態から単一実行状態に遷移させ、更に、単一実行状態に遷移されたマルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させることができるため、これらの実行状態及び実行環境の遷移に伴うアプリケーションの実行を適切に切り替えることができる。
【００８１】
以上、本発明をその実施形態に基づき具体的に説明したが、本発明は上記実施形態に限定されるものではない。例えば、上記実施形態では、マルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移させる際、シングルアプリケーション実行モードのアプリケーションＡが、自身の状態情報をデータストレージ４０に保存しているが、この状態情報の保存は、切替マネージャ８０、多重アプリ実行エンジン６０、単一アプリ実行エンジン９０などが行ってもよく、他の単独の機能が行ってもよい。
【００８２】
また、上記実施形態では、マルチアプリケーション実行モードのアプリケーションとシングルアプリケーション実行モードのアプリケーションとが連携起動するアプリケーションの一例として、地図表示アプリケーションを用いて説明したが、マルチアプリケーション実行モードのアプリケーションとシングルアプリケーション実行モードのアプリケーションとが連携起動できるアプリケーションであれば、如何なるアプリケーションであってもよい。
【００８３】
また、上記実施形態では、データストレージ４０に保存する状態情報として、現在位置の緯度経度情報を一例として説明したが、マルチアプリケーション実行モードのアプリケーションとシングルアプリケーション実行モードのアプリケーションとの間で互いに利用できる情報であれば、如何なる情報であってもよい。例えば、ゲームのアプリケーションの場合、ハイスコアの情報や、キー操作と機能の割り当て表などの情報であってもよい。
【図面の簡単な説明】
【００８４】
【図１】実施形態に係る移動機の機能を示した機能構成図である。
【図２】移動機のアプリケーション実行環境の遷移図である。
【図３】プログラム本体・リソース保存モジュールにおける各専用領域の構成例を示した図である。
【図４】移動機のハードウェア構成を例示する図である。
【図５】各実行環境において実行されるアプリケーションのリソース資源の割り当てと、その利用制限を示した図である。
【図６】マルチアプリケーション実行環境において、多重実行状態から単一実行状態に遷移する処理動作を説明するためのシーケンス図である。
【図７】単一実行状態のマルチアプリケーション実行環境からシングルアプリケーション実行環境に遷移する処理動作を説明するためのシーケンス図である。
【図８】ディスプレイの表示例を示す図である。
【符号の説明】
【００８５】
１…移動機、１０…入力デバイス、２０…排他ハードウェア資源、３０…分配ハードウェア資源、４０…データストレージ、４０ａ，４０ｂ…専用領域、５０…ウィンドウマネージャ、６０…多重アプリ実行エンジン、６１…実行状態遷移部、６２…リソース解放部（第１のリソース解放手段）、６３…アプリケーション停止部、６４…リソース割当部（第１のリソース割当手段）、６５…データ保存部、７０…多重実行状態管理部（実行状態遷移要求受信部）、８０…切替マネージャ、８１…実行環境遷移部、８２…リソース解放部（第２のリソース解放手段）、８３…アプリケーション終了部、８４…リソース割当部（第２のリソース割当手段）、９０…単一アプリ実行エンジン、９１…アプリケーション実行部、１００…プログラム本体・リソース保存モジュール、１００ａ，１００ｂ…専用領域、１０１…マルチアプリケーション実行環境専用領域、１０２…シングルアプリケーション実行環境専用領域、１０３…共通コード・リソースデータ。
【図１】
2010108295.tif 000003
【図２】
2010108295.tif 000004
【図３】
2010108295.tif 000005
【図４】
2010108295.tif 000006
【図５】
2010108295.tif 000007
【図６】
2010108295.tif 000008
【図７】
2010108295.tif 000009
【図８】
2010108295.tif 000010