(57)【特許請求の範囲】
【請求項１】
複数の実行環境が利用する表示デバイス及び他のデバイスを備える情報処理装置において、前記複数の実行環境による前記他のデバイスの利用状況を判断する判断部と、
前記表示デバイスに画面を表示する実行環境が第１の実行環境から第２の実行環境に切り替わる場合に、前記判断部により判断された前記他のデバイスの利用状況に応じて、前記第２の実行環境に前記他のデバイスを利用可能にさせるタイミングを異ならせる管理部と
を備え、
前記表示デバイスは、各々が所定の実行環境又はアプリケーションに対応する複数の画面を階層的に表示し、
前記管理部は、前記画面のそれぞれに対応する実行環境又はアプリケーションについて、当該画面が表示されている階層ごとに設定された優先度を用いて前記タイミングを決定する
ことを特徴とする競合管理装置。
【請求項２】
前記管理部は、前記他のデバイスの各々について、競合が生じ得る前記実行環境の組み合わせを設定情報として記憶し、当該設定情報を用いて前記タイミングを決定する
ことを特徴とする請求項１に記載の競合管理装置。
【請求項３】
前記複数の実行環境のそれぞれが前記他のデバイスの利用の可否を確認するための確認部を備え、
前記確認部は、前記複数の実行環境に、当該実行環境の利用の可否を確認可能にし、かつ、当該実行環境以外の他の実行環境の利用の可否を確認できないように制限する
ことを特徴とする請求項１又は２に記載の競合管理装置。
【請求項４】
前記管理部は、前記複数の実行環境が実行するアプリケーション毎の前記組み合わせを前記設定情報として記憶する
ことを特徴とする請求項２に記載の競合管理装置。
【請求項５】
前記管理部は、前記表示デバイスによる表示の切り替えがユーザの操作によるか否かによって前記タイミングを異ならせる
ことを特徴とする請求項１ないし４のいずれかに記載の競合管理装置。
【請求項６】
あらかじめ決められた前記優先度をユーザの操作に応じて変更する設定部を備えることを特徴とする請求項１ないし５のいずれかに記載の競合管理装置。
【請求項７】
前記設定部は、あらかじめ決められた実行環境において前記変更を可能にし、当該実行環境以外の他の実行環境において前記変更ができないように制限する
ことを特徴とする請求項６に記載の競合管理装置。
【請求項８】
前記設定部による変更の可否を前記ユーザに選択させる選択部を備え、
前記設定部は、前記選択部により前記変更が許可された場合に、前記あらかじめ決められた優先度よりも当該変更を優先する
ことを特徴とする請求項６又は７に記載の競合管理装置。
【請求項９】
複数の実行環境が利用する表示デバイス及び他のデバイスを備える情報処理装置において、前記複数の実行環境による前記他のデバイスの利用状況を判断する第１のステップと、
前記表示デバイスに画面を表示する実行環境が第１の実行環境から第２の実行環境に切り替わる場合に、前記第１のステップにおいて判断された前記他のデバイスの利用状況に応じて、前記第２の実行環境に前記他のデバイスを利用可能にさせるタイミングを異ならせる第２のステップと
を有し、
前記表示デバイスは、各々が所定の実行環境又はアプリケーションに対応する複数の画面を階層的に表示し、
前記第２のステップにおいて、前記画面のそれぞれに対応する実行環境又はアプリケーションについて、当該画面が表示されている階層ごとに設定された優先度を用いて前記タイミングを決定する
ことを特徴とする競合管理方法。
【請求項１０】
複数の実行環境が利用する表示デバイス及び他のデバイスを備える情報処理装置のコンピュータに、
前記複数の実行環境による前記他のデバイスの利用状況を判断する第１のステップと、
前記表示デバイスに画面を表示する実行環境が第１の実行環境から第２の実行環境に切り替わる場合に、前記第１のステップにおいて判断された前記他のデバイスの利用状況に応じて、前記第２の実行環境に前記他のデバイスを利用可能にさせるタイミングを異ならせる第２のステップとを実行させ、
前記表示デバイスは、各々が所定の実行環境又はアプリケーションに対応する複数の画面を階層的に表示し、
前記第２のステップにおいて、前記画面のそれぞれに対応する実行環境又はアプリケーションについて、当該画面が表示されている階層ごとに設定された優先度を用いて前記タイミングを決定する
ためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の実行環境が同一のデバイス（ハードウェアデバイス）を利用する場合のアクセス制御に関する。
【背景技術】
【０００２】
複数の実行環境が同一のデバイスを利用しようとすると、競合した状態になる場合がある。ここにおいて、競合した状態とは、複数の実行環境（又は当該実行環境により実行されるアプリケーション）が同一のデバイスを利用することを同時に要求している状態のことである。特許文献１には、あらかじめ作成したデータベースによってアプリケーション間の競合を管理する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２００６／０５９７８６号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
デバイスが競合した状態になり、利用不可能になることを避けるためには、そのデバイスを利用できる実行環境が択一的になるように切り替えるのが一つの方法である。かかる切り替えは、実行環境の動作が画面表示を伴う場合、画面表示の切り替えと同時に行うとユーザに自然な印象を与えることができるといえる。しかし、実行環境等の切り替えを画面の切り替えと同時に行うと、ユーザの使い勝手を損なう場合もある。
そこで、本発明は、デバイスを利用する実行環境が切り替わるタイミングを、状況に応じて異ならせるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
本発明の一態様に係る競合管理装置は、複数の実行環境が利用する表示デバイス及び他のデバイスを備える情報処理装置において、前記複数の実行環境による前記他のデバイスの利用状況を判断する判断部と、前記表示デバイスに画面を表示する実行環境が第１の実行環境から第２の実行環境に切り替わる場合に、前記判断部により判断された前記他のデバイスの利用状況に応じて、前記第２の実行環境に前記他のデバイスを利用可能にさせるタイミングを異ならせる管理部とを備え、前記表示デバイスは、各々が所定の実行環境又はアプリケーションに対応する複数の画面を階層的に表示し、前記管理部は、前記画面のそれぞれに対応する実行環境又はアプリケーションについて、当該画面が表示されている階層ごとに設定された優先度を用いて前記タイミングを決定する構成を有する。
【０００６】
好ましい態様において、前記管理部は、前記他のデバイスの各々について、競合が生じ得る前記実行環境の組み合わせを設定情報として記憶し、当該設定情報を用いて前記タイミングを決定する。
他の好ましい態様において、前記競合管理装置は、前記複数の実行環境のそれぞれが前記他のデバイスの利用の可否を確認するための確認部を備え、前記確認部は、前記複数の実行環境に、当該実行環境の利用の可否を確認可能にし、かつ、当該実行環境以外の他の実行環境の利用の可否を確認できないように制限する。
他の好ましい態様において、前記管理部は、前記複数の実行環境が実行するアプリケーション毎の前記組み合わせを前記設定情報として記憶する。
他の好ましい態様において、前記管理部は、前記表示デバイスによる表示の切り替えがユーザの操作によるか否かによって前記タイミングを異ならせる。
他の好ましい態様において、前記競合管理装置は、あらかじめ決められた前記優先度をユーザの操作に応じて変更する設定部を備える。
他の好ましい態様において、前記設定部は、あらかじめ決められた実行環境において前記変更を可能にし、当該実行環境以外の他の実行環境において前記変更ができないように制限する。
他の好ましい態様において、前記競合管理装置は、前記設定部による変更の可否を前記ユーザに選択させる選択部を備え、前記設定部は、前記選択部により前記変更が許可された場合に、前記あらかじめ決められた優先度よりも当該変更を優先する。
【０００７】
本発明の他の態様に係る競合管理方法は、複数の実行環境が利用する表示デバイス及び他のデバイスを備える情報処理装置において、前記複数の実行環境による前記他のデバイスの利用状況を判断する第１のステップと、前記表示デバイスに画面を表示する実行環境が第１の実行環境から第２の実行環境に切り替わる場合に、前記第１のステップにおいて判断された前記他のデバイスの利用状況に応じて、前記第２の実行環境に前記他のデバイスを利用可能にさせるタイミングを異ならせる第２のステップとを有し、前記表示デバイスは、各々が所定の実行環境又はアプリケーションに対応する複数の画面を階層的に表示し、前記第２のステップにおいて、前記画面のそれぞれに対応する実行環境又はアプリケーションについて、当該画面が表示されている階層ごとに設定された優先度を用いて前記タイミングを決定する。
【０００８】
本発明の他の態様に係るプログラムは、複数の実行環境が利用する表示デバイス及び他のデバイスを備える情報処理装置のコンピュータに、前記複数の実行環境による前記他のデバイスの利用状況を判断する第１のステップと、前記表示デバイスに画面を表示する実行環境が第１の実行環境から第２の実行環境に切り替わる場合に、前記第１のステップにおいて判断された前記他のデバイスの利用状況に応じて、前記第２の実行環境に前記他のデバイスを利用可能にさせるタイミングを異ならせる第２のステップとを実行させ、前記表示デバイスは、各々が所定の実行環境又はアプリケーションに対応する複数の画面を階層的に表示し、前記第２のステップにおいて、前記画面のそれぞれに対応する実行環境又はアプリケーションについて、当該画面が表示されている階層ごとに設定された優先度を用いて前記タイミングを決定するためのものである。
【発明の効果】
【０００９】
本発明によれば、デバイスを利用する実行環境が切り替わるタイミングを、状況に応じて異ならせるようにすることが可能になる。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置のハードウェア構成を示すブロック図
【図２】制御部の機能的構成を示す機能ブロック図
【図３】監視ファイルの一例を示す図
【図４】競合管理ファイルの一例を示す図
【図５】実行環境制御部が実行する処理を示すフローチャート
【図６】実行環境制御部が実行する処理を示すフローチャート
【発明を実施するための形態】
【００１１】
［実施形態］
図１は、本発明の一実施形態である情報処理装置のハードウェア構成を示すブロック図である。本実施形態において、情報処理装置１００は、音声通話及びデータ通信が可能な無線通信端末であり、例えば、携帯電話機やスマートフォンであるとする。情報処理装置１００は、図１に示すように、制御部２００と、表示デバイス３００、通信デバイス４００、ストレージデバイス５００、入力デバイス６００、カメラデバイス７００、オーディオデバイス８００、ワンセグデバイス９００などを含む複数のハードウェアデバイスとを備える。
【００１２】
ここにおいて、ハードウェアデバイスとは、情報処理装置１０に特定の機能を実現させるためのハードウェア資源をいう。ハードウェアデバイスは、情報処理装置１０の本体にもともと備え付けられている構成であってもよいし、いわゆる外付けの周辺機器（ペリフェラル）のように、ケーブル等を介して有線又は無線で接続される構成であってもよい。
なお、以下においては、ハードウェアデバイスのことを単に「デバイス」ともいう。また、情報処理装置１００に備わるハードウェアデバイスのうち、表示デバイス３００を除くものを総称して「他のデバイス」ともいう。
【００１３】
表示デバイス３００は、画像を表示するためのデバイスである。表示デバイス３００は、例えば、液晶パネルやその駆動回路、光源などを含んで構成される。なお、表示デバイス３００は、液晶に限らず、有機ＥＬ（electroluminescence）素子等の他の表示素子によって画像を表示するものであってもよい。表示デバイス３００は、実行環境（又はアプリケーション）に応じた画面（ウィンドウ）を表示する。また、表示デバイス３００は、かかる画面のほかにも、いわゆる壁紙、アイコン、電池の残量表示などを画像（静止画又は動画）として表示することが可能である。
【００１４】
本実施形態の表示デバイス３００は、マルチウィンドウ方式によってウィンドウを表示することが可能であるものとする。ここにおいて、マルチウィンドウ方式とは、ウィンドウを階層的に表示するウィンドウの表示方式をいう。マルチウィンドウ方式において、複数のウィンドウが重なる場合、これらのウィンドウには「前面」又は「背面」という階層の関係が生じる。ここにおいて、前面のウィンドウとは、表示デバイス３００を視認するユーザに最も近い側に存在しているように知覚されるウィンドウをいい、画面全体が表示されるものである。一方、背面のウィンドウとは、前面のウィンドウ以外のウィンドウをいい、重なった場合に画面の少なくとも一部が前面のウィンドウと重なって視認されなくなるものである。背面のウィンドウは、これが複数ある場合には、前面により近いか否かによって階層が異なり得る。
なお、表示デバイス３００は、複数のウィンドウを重ねずに表示したり、ウィンドウを１つだけ表示したりすることも可能である。複数のウィンドウが重ならずに表示される場合、これらのウィンドウは、同じ階層であるとみなされてもよい。
【００１５】
通信デバイス４００は、移動体通信網に接続し、通信（音声通話及びデータ通信）を行うためのデバイスである。通信デバイス４００は、アンテナや、無線通信を制御するための無線通信回路などを備える。
ストレージデバイス５００は、データを記憶し、これを読み出すためのデバイスである。ストレージデバイス５００は、例えば、ハードディスクドライブである。また、ストレージデバイス５００は、いわゆるメモリカードのような着脱可能な記憶手段にデータを読み書きするものであってもよい。
入力デバイス６００は、ユーザが操作し、情報や指示を入力するためのデバイスである。入力デバイス６００は、ボタン（キー）やスイッチを備え、ユーザの操作を表す操作信号を制御部２００に供給する。入力デバイス６００は、表示デバイス３００に重ねて設けられたタッチスクリーン（タッチパネル）を含んでもよい。
【００１６】
カメラデバイス７００は、静止画又は動画を撮影するためのデバイスである。カメラデバイス７００は、ＣＣＤ（Charge Coupled Device）等の撮像素子を用いたイメージセンサや、イメージセンサから得られる電気信号を静止画や動画のデータに変換する画像処理回路などを備える。
オーディオデバイス８００は、音声を入力及び出力するためのデバイスである。オーディオデバイス８００は、マイクロホン及びスピーカと、これらに接続される音声処理回路などを備える。
ワンセグデバイス９００は、地上デジタルテレビジョン放送を視聴するためのデバイスである。ワンセグデバイス９００は、デジタル放送を受信するためのチューナなどを備える。なお、ここでいう「ワンセグ」は、地上デジタルテレビジョン放送の一規格である。よって、ワンセグデバイス９００は、他の規格のデジタル放送を視聴するためのデバイスに置き換えられてもよい。ここでいう他の規格には、例えば、ＤＶＢ−Ｈ（Digital Video Broadcasting - Handheld）などがある。
【００１７】
制御部２００は、情報処理装置１００の全体的な動作を制御する手段である。本実施形態において、本発明に係る競合管理装置に相当する機能は、制御部２００によって実現される。制御部２００は、より詳細には、ＣＰＵ（Central Processing Unit）等の演算処理装置や、主記憶装置に相当するメモリなどを備え、所定のプログラムを実行することによって上述した各デバイスにアクセスし、これらの動作を制御する。
【００１８】
また、制御部２００は、複数の異なる実行環境を実現する。ここにおいて、実行環境とは、アプリケーションを実行するために必要な所定のまとまりを有するプログラム群をいう。実行環境は、例えば、ＯＳ（Operating System）単位で区別されるものであるが、ＯＳであるとは限らない。また、実行環境は、仮想化によって、ホストＯＳに対するゲストＯＳ（すなわち、仮想的な実行環境）として実現されてもよい。
【００１９】
図２は、制御部２００の機能的構成を示す機能ブロック図である。制御部２００は、複数のプログラムを実行することによって、図２に示す実行環境２１１、２１２、２１３と、実行環境制御部２２０とを実現し、これらが協働することによって表示デバイス１２０や他のデバイスを利用するように構成されている。なお、制御部２００が実現可能な実行環境の数は、ここでは便宜上「３」であるとするが、これより多くても少なくてもよい。また、実行環境２１１、２１２、２１３は、同時に複数実行されてもよいものである。
【００２０】
実行環境２１１、２１２、２１３は、利用可能なデバイスに対応するデバイスドライバをそれぞれ有し、デバイスドライバを介して各デバイスにアクセスする。なお、実行環境２１１、２１２、２１３は、すべてのデバイスについてデバイスドライバを有している必要はなく、当該実行環境が利用しないデバイスがあれば、そのデバイスに対応するデバイスドライバを有している必要はない。実行環境２１１、２１２、２１３は、各デバイスに直接アクセスするのではなく、実行環境制御部２２０を介して各デバイスにアクセスする。
【００２１】
実行環境制御部２２０は、本発明に係る競合管理装置に相当する機能を実現するものであり、実行環境２１１、２１２、２１３によるデバイスの利用を制御する。実行環境制御部２２０は、より詳細には、判断部２２１、管理部２２２、確認部２２３、設定部２２４及び選択部２２５を有する。
【００２２】
判断部２２１は、実行環境２１１、２１２、２１３による他のデバイスの利用状況を判断する。判断部２２１は、監視ファイルをデータとして記憶し、この監視ファイルを用いて、実行環境２１１、２１２、２１３による他のデバイスの利用状況を判断する。
【００２３】
図３は、監視ファイルの一例を示す図である。監視ファイルは、他のデバイスの各々がその時にどの実行環境によって利用されているかを示すデータであり、図３に示すように、デバイス名とその利用状況とを対応付けて記述したファイルである。ある実行環境があるデバイスを利用している場合、監視ファイルには、それぞれのデバイスと実行環境の名称が対応付けて記述される。一方、あるデバイスがどの実行環境によっても利用されていない場合、監視ファイルには、当該デバイスに対応する実行環境の名称が記述されず、利用中でないことを示す所定の値（図中では「−」）が記述される。なお、図３（及び図４）においては、説明の便宜上、デバイスや実行環境の名称が実施形態中の符号で表現されている。
【００２４】
判断部２２１は、あるデバイスを利用する実行環境が切り替わると、監視ファイルを書き換え、更新する。すなわち、判断部２２１は、この監視ファイルを参照することによって、どのデバイスがどの実行環境によって利用されているか（又は利用されていないか）を、随時、容易に判断することが可能である。
【００２５】
管理部２２２は、実行環境２１１、２１２、２１３による他のデバイスの利用の態様を管理する。具体的には、管理部２２２は、判断部２２１により判断された利用状況に基づき、他のデバイスを利用する実行環境を切り替えるタイミングを管理する。管理部２２２は、競合管理ファイルをデータとして記憶し、この競合管理ファイルを用いて実行環境の切り替えのタイミングを決定する。
【００２６】
図４は、競合管理ファイルの一例を示す図である。競合管理ファイルは、デバイスの利用に競合が生じた場合にどの実行環境（又はアプリケーション）を優先するかを記述したファイルである。競合管理ファイルは、競合が生じ得る実行環境（又はアプリケーション）の組み合わせを記述したファイルであるともいえる。競合管理ファイルは、情報処理装置１００においてあらかじめ設定されているものであり、本発明に係る設定情報の一例に相当するものである。
【００２７】
競合管理ファイルは、図４に示すように、デバイス名と実行環境名及びアプリケーション名（同図においては「アプリ名」と略記している。）との組み合わせと、かかる組み合わせのそれぞれに対して割り当てられた優先度とを記述したファイルである。図４の例において、優先度は、各々のアプリケーションに対応するウィンドウが前面に表示されている場合と背面に表示されている場合とで異なる値を割り当てることができる（ただし、同一の値であってもよい。）。優先度を前面の場合と背面の場合とで異ならせる場合には、前面の場合の方が大きな値である方が望ましい。この例において、優先度は、その値が大きいほど優先的に利用されることを表している。
【００２８】
図４の競合管理ファイルは、ストレージデバイス５００が、実行環境２１１が実行するアプリケーション「Ａ」と、実行環境２１２が実行するアプリケーション「Ｂ」と、実行環境２１３が実行するアプリケーション「Ｃ」によって利用されることを表しており、これらのアプリケーションによって競合が生じる可能性があることを表している。換言すれば、この例においては、ストレージデバイス５００は、アプリケーション「Ａ」、「Ｂ」、「Ｃ」以外の他のアプリケーションによっては利用されず、かかる他のアプリケーションによっては競合が生じる可能性もないといえる。管理部２２２は、このような競合管理ファイルを参照することによって、競合を生じる関係にある実行環境又はアプリケーションの組み合わせを容易に認識することが可能になる。
【００２９】
確認部２２３は、実行環境２１１、２１２、２１３のそれぞれが利用可能なデバイスを確認するための機能を有し、各実行環境による各デバイスの利用の可否が記述されたデータを保持している。実行環境２１１、２１２、２１３は、それぞれにおいて利用可能なデバイスを認識しようとするとき、確認部２２３に問い合わせる。確認部２２３は、この問い合わせに応じ、各デバイスの利用の可否を通知する。
【００３０】
なお、確認部２２３は、望ましくは、実行環境２１１、２１２、２１３に対して、各デバイスの利用の可否に関する情報を、自らの情報についてのみ確認可能にし、他の実行環境の情報については確認できないように制限する。このようにすれば、どの実行環境がどのデバイスを利用可能であるかを他の実行環境に対して隠蔽することが可能である。
【００３１】
設定部２２４は、上述した優先度をユーザの操作に応じた値に変更する機能を有する。つまり、設定部２２４は、あらかじめ決められた優先度に代えて、ユーザが所望する値の新たな優先度を設定することを可能にするものである。選択部２２５は、設定部２２４による設定（すなわち優先度の変更）の可否をユーザに選択させる機能を有する。設定部２２４は、選択部２２５により変更が許可された場合に当該変更を可能にし、あらかじめ決められた優先度よりもユーザが設定した優先度が優先されるようにする。設定部２２４及び選択部２２５は、表示デバイス３００や入力デバイス６００を用いて、かかる設定や変更を実現するためのユーザインタフェースを提供する。
【００３２】
なお、設定部２２４による設定や選択部２２５による選択は、特定のデバイス又は実行環境に限定して実行されるようになっていてもよい。また、かかる設定や選択は、実行環境制御部２２０が設定した所定のタイミングで実行されてもよいし、ユーザが所望するタイミングで実行されてもよい。
【００３３】
情報処理装置１００の構成は、以上のとおりである。この構成のもと、情報処理装置１００は、複数の実行環境によってデバイスを利用し、ユーザの操作などに応じた機能を実現する。情報処理装置１００は、例えば、他の携帯電話機のユーザと通話するためのアプリケーションを実行することにより、オーディオデバイス８００によって生成された音声データを通信デバイス４００を介して送信したり、ワンセグによって放送されているテレビ番組を録画するためのアプリケーションを実行することにより、ワンセグデバイス９００によって番組データを受信し、これをストレージデバイス５００に記録したりすることが可能である。また、情報処理装置１００は、このように一つのアプリケーションを実行することで複数の他のデバイスを利用することがある一方で、一つのアプリケーションを実行することで一つの他のデバイスしか利用しないこともある。
【００３４】
また、情報処理装置１００は、表示デバイス３００に画面を表示する実行環境が切り替わる場合において、その切り替え後の実行環境が他のデバイスも利用するとき、当該切り替え後の実行環境に当該他のデバイスを利用可能にさせるタイミングを以下のように制御する。なお、ここにおいて、画面の切り替えには、切り替え前の画面が非表示になって切り替え後の画面が表示される場合と、画面の階層が切り替えの前後で変化する場合とがある。後者の場合とは、例えば、複数の画面が表示されているときに、それまで背面に表示されていた画面が前面に表示され、それまで前面に表示されていた画面の一部を隠してしまうような場合である。
【００３５】
図５は、実行環境制御部２２０が他のデバイスのアクセス制御に際して実行する処理の一例を示すフローチャートである。図５に示す処理において、実行環境制御部２２０は、まず、画面の切り替えを検知する（ステップＳ１０１）。ここでは、画面の切り替えによって他のデバイスを利用する実行環境が変化するとし、その切り替え前の画面に対応する実行環境を「第１の実行環境」といい、切り替え後の画面に対応する実行環境を「第２の実行環境」というものとする。
【００３６】
次に、実行環境制御部２２０は、第２の実行環境が利用する他のデバイスを特定する（ステップＳ１０２）。実行環境制御部２２０は、上述した競合管理ファイルを用いることでこの特定を行うことが可能である。実行環境制御部２２０は、競合管理ファイルに第２の実行環境と対応付けて記述された他のデバイスがあれば、当該デバイスを第２の実行環境が利用するものであると特定することができる。
【００３７】
続いて、実行環境制御部２２０は、第２の実行環境が利用する他のデバイスの利用状況を判断する（ステップＳ１０３）。実行環境制御部２２０は、上述した監視ファイルを用いて利用状況を判断することができる。ここで、実行環境制御部２２０は、第２の実行環境が利用しようとしている他のデバイスが他の実行環境によって利用中であるか否かを判断する（ステップＳ１０４）。このとき、第２の実行環境が利用しようとしている他のデバイスが他の実行環境によって利用されていない場合には、当該デバイスについて競合が生じる可能性はないといえる。よって、かかる場合、実行環境制御部２２０は、画面を切り替えるタイミングに同期して、当該デバイスの状態を第２の実行環境が利用可能な状態に切り替える（ステップＳ１０６）。
【００３８】
一方、実行環境制御部２２０は、第２の実行環境が利用しようとしている他のデバイスが他の実行環境によって利用されている場合には、当該デバイスについて競合が生じる可能性がある。よって、かかる場合、実行環境制御部２２０は、競合管理ファイルに記述された優先度を参照することによって当該デバイスの状態を画面の切り替えと同期的に切り替えるか否かを判断する（ステップＳ１０５）。ステップＳ１０５の判断は、当該デバイスを利用中の実行環境の当該デバイスに関する優先度と、第２の実行環境の当該デバイスに関する優先度とを比較し、第２の実行環境の優先度の方が高いか否かによって行われる。実行環境制御部２２０は、第２の実行環境の優先度の方が高い場合には、当該デバイスの状態を画面の切り替えと同期的に切り替え（ステップＳ１０６）、そうでない場合には、当該デバイスの状態を画面を切り替えるタイミングでは切り替えずに、当該タイミングよりも遅らせて切り替える。具体的には、実行環境制御部２２０は、他のデバイスを利用している実行環境が当該デバイスの利用を終えてから、当該デバイスの状態を切り替える。
【００３９】
図６は、実行環境制御部２２０が実行する処理の他の例を示すフローチャートである。図６に示す処理において、実行環境制御部２２０は、画面の切り替えを検知した後に、他のデバイスの状態を画面の切り替えと同期的に切り替えるか否かを判断する（ステップＳ２０１、Ｓ２０２）。ステップＳ２０１の処理は、図５に示すステップＳ１０１の処理と同様のものである。また、ステップＳ２０２の処理は、図５に示すステップＳ１０２〜Ｓ１０５の処理を適宜組み合わせて用いることが可能である。すなわち、以下のステップＳ２０３の処理は、図５に示す処理と一緒に（具体的には、ステップＳ１０５とステップＳ１０６の間に）実行されてもよい。
【００４０】
続いて、ステップＳ２０３において、実行環境制御部２２０は、画面を切り替える要求がユーザの操作によるか否かを判断する。ここにおいて、ユーザの操作による画面の切り替えとは、ユーザがボタン入力によって実行環境の起動を指示した場合のように、ユーザの操作が直接的な契機となっている画面の切り替えのことである。一方、ユーザの操作によらない画面の切り替えとは、実行環境制御部２２０において内部的に発生したシステムイベントが契機となる場合などがこれに該当する。あるいは、他の携帯電話機から通話の着信があり、当該着信に応じた画面（電話番号等を表示する画面）を表示する場合などもこれに該当する。実行環境制御部２２０は、画面を切り替える要求がユーザの操作によるものである場合には、他のデバイスの状態を画面の切り替えと同期的に切り替え（ステップＳ２０４）、そうでない場合には、当該デバイスの状態を画面を切り替えるタイミングでは切り替えずに、当該タイミングよりも遅らせて切り替える。なお、ステップＳ２０４の処理は、図５に示すステップＳ１０６の処理と同様のものである。
【００４１】
実行環境制御部２２０は、このような処理を第２の実行環境が利用する他のデバイスのそれぞれについて実行する。その結果、第２の実行環境による他のデバイスの利用は、画面の切り替えに同期して可能になる場合と、画面の切り替えには同期せずに、利用中の他の実行環境による利用が終了してから可能になる場合とが生じる。後者の場合、他のデバイスを利用する実行環境の切り替えは、画面の切り替えと異なるタイミングで行われる。よって、かかる切り替え前の実行環境は、第２の実行環境によって当該他のデバイスの利用を妨げられることなく継続することができる。
【００４２】
以上の処理によれば、例えば、テレビ番組の録画中に他の携帯電話機から通話の着信があったとしても、ワンセグデバイス９００やストレージデバイス５００が通話時に利用されないのであれば、当該着信によってテレビ番組の録画処理が強制的に遮断されないようにすることが可能である。一方、他のデバイスに競合が生じる場合であって、切り替え後の実行環境（第２の実行環境）の優先度が切り替え前の実行環境の優先度よりも低いような場合には、切り替え前の実行環境による他のデバイスの利用が終了してから、当該デバイスを切り替え後の実行環境が利用可能になる。
【００４３】
［変形例］
上述した実施形態は、本発明の実施の一態様である。本発明は、上述した実施形態に対して以下の変形を適用した態様で実施することも可能である。なお、以下に示す変形例は、必要に応じて、各々を適当に組み合わせて実施されてもよいものである。
【００４４】
（変形例１）
本発明に係る他のデバイスは、上述した実施形態に記載したものの一部であってもよい。また、本発明に係る他のデバイスは、モータによって振動を発生させるバイブレータデバイス、ＬＥＤ（Light Emitting Diode）等の光源の明滅を制御する照明デバイス、ＵＳＢ（Universal Serial Bus）規格に準拠した端子やケーブルを介してパーソナルコンピュータ等の外部機器と通信するためのＵＳＢデバイスなどであってもよい。
【００４５】
（変形例２）
本発明における優先度は、「優先する（デバイスを利用する）」、「優先しない（デバイスを利用しない）」という二値的なものであってもよい。また、優先度は、複数の実行環境又はアプリケーションによってデバイスを共用することが可能である場合には、当該デバイスを優先する程度を表すことができる。この場合、実行環境制御部２２０は、優先度に応じてメモリ等のリソースの割当量を変えたりすることが可能である。つまり、本発明は、他のデバイスを一つの実行環境又はアプリケーションのみが排他的に利用する場合と、他のデバイスを複数の実行環境又はアプリケーションが共用する場合の双方に適用可能なものである。また、本発明に係る情報処理装置は、排他的に利用される他のデバイスと共用が可能な他のデバイスとが混在した構成であってもよい。
【００４６】
（変形例３）
本発明に係る情報処理装置は、携帯電話機やスマートフォンに限らず、例えば、音楽プレーヤ、ゲーム機、ＰＤＡ（Personal Digital Assistant）、デスクトップ型又はラップトップ型のパーソナルコンピュータ、サーバ装置などであってもよい。本発明に係る情報処理装置は、表示デバイスと、１又は複数の他のデバイスとを備え、複数の実行環境を実行可能なものであれば、いかなるものであってもよい。
【００４７】
また、本発明は、競合管理装置に対応する方法やプログラムの発明としても提供され得るものである。また、本発明に係るプログラムは。これを記憶させた光ディスク等の記録媒体の形態で提供されたり、インターネット等のネットワークを介して、コンピュータにダウンロードさせ、これをインストールして利用可能にするなどの形態で提供されたりすることも可能である。
【符号の説明】
【００４８】
１００…情報処理装置、２００…制御部、２１１、２１２、２１３…実行環境、２２０…実行環境制御部、２２１…判断部、２２２…管理部、２２３…確認部、２２４…設定部、２２５…選択部、３００…表示デバイス、４００…通信デバイス、５００…ストレージデバイス、６００…入力デバイス、７００…カメラデバイス、８００…オーディオデバイス、９００…ワンセグデバイス
【図１】
0005566182.tif 000002
【図２】
0005566182.tif 000003
【図３】
0005566182.tif 000004
【図４】
0005566182.tif 000005
【図５】
0005566182.tif 000006
【図６】
0005566182.tif 000007