情報処理装置および表示制御方法
【課題】ユーザがどのディスプレイを使用しているかをより正確に判別し、ユーザが使用していると判別されたディスプレイ以外のディスプレイを省電力状態に移行させることができる情報処理装置および表示制御方法を提供する。
【解決手段】ディスプレイ1、2、・・・nの各々に対応した複数のビデオメモリ105a、105b、・・・105nを備えており、複数のビデオメモリ105a、105b、・・・105nの少なくとも1つに予め設定されたトリガーを検出した場合は、検出結果に基づいて、該当するディスプレイの動作状態を変更する。
【解決手段】ディスプレイ1、2、・・・nの各々に対応した複数のビデオメモリ105a、105b、・・・105nを備えており、複数のビデオメモリ105a、105b、・・・105nの少なくとも1つに予め設定されたトリガーを検出した場合は、検出結果に基づいて、該当するディスプレイの動作状態を変更する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はパーソナルコンピュータのような情報処理装置に係り、特に複数のディスプレイを接続可能な情報処理装置および表示制御方法に関する。
【背景技術】
【0002】
一般的に、パーソナルコンピュータ等においては、その消費電力を低減するための様々な省電力制御技術が開発されている。VESA(Video Electronics Standards Association)によって規格化されたDPMS(Display Power Management Signaling)もその省電力制御技術の一つである。このDPMSは、パーソナルコンピュータのディスプレイモニタをパワーセーブするための規格であり、例えばキー入力が行われなくなってからの経過時間の長さ等をソフトウェアによって検出し、それに応じて、ディスプレイモニタを段階的に省電力状態に移行させる(パワーセーブする)というものである。
【0003】
また、最近では、コンピュータに複数のディスプレイを接続して使用する形態が増えてきている。特許文献1には、複数のディスプレイを接続したコンピュータが、それぞれのディスプレイのアクティブウィンドウの有無やカーソル移動の有無を検出し、これらが検出されなかったディスプレイを省電力状態に移行させる技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2000−163035号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、特許文献1の技術によっては、ユーザが実際には使用していないのにも関わらず省電力状態に移行されない場合があった。例えば、ウインドウがアクティブ状態であっても、実際には何ら作業されていない場合がある。
【0006】
そこで、コンピュータに接続された複数のディスプレイのうち、ユーザがどのディスプレイを使用しているかをより正確に判別し、それ以外のディスプレイを省電力状態に移行させるためには、新たな機能が必要となる。
【0007】
本発明は上述の事情を考慮してなされたものであり、ユーザがどのディスプレイを使用しているかをより正確に判別し、ユーザが使用していると判別されたディスプレイ以外のディスプレイを省電力状態に移行させることができる情報処理装置および表示制御方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するために、本発明の一態様によれば、複数のディスプレイを接続可能な情報処理装置であって、前記複数のディスプレイの各々に出力される映像信号を記憶するため、前記複数のディスプレイの各々に対応した複数のビデオメモリと、前記複数のビデオメモリの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがある状態か否かを判別する判別手段と、前記判別手段により、前記複数のビデオメモリのうちの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがない状態と判別された場合には、前記アクセスがないと判別されたビデオメモリに対応するディスプレイの動作状態を、判別された時点における第1の動作状態から、より消費電力の少ない第2の動作状態に変更する変更手段と、を具備することを特徴とする情報処理装置が提供される。
【0009】
また、本発明の一態様によれば、複数のディスプレイを接続可能な情報処理装置で用いる表示制御方法であって、前記情報処理装置は、前記複数のディスプレイの各々に出力される映像信号を記憶するため、前記複数のディスプレイの各々に対応した複数のビデオメモリを備え、前記複数のビデオメモリの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがある状態か否かを判別し、前記複数のビデオメモリのうちの少なくとも1つに、予め設定された条件に該当するアクセスがない状態と判別された場合には、前記アクセスがないと判別されたビデオメモリに対応するディスプレイの動作状態を、判別された時点における第1の動作状態から、前記第1の動作状態より消費電力が少ない第2の動作状態に変更することを特徴とする表示制御方法が提供される。
【発明の効果】
【0010】
本発明によれば、ユーザがどのディスプレイを使用しているかをより正確に判別し、ユーザが使用していると判別されたディスプレイ以外のディスプレイを省電力状態に移行させることができる。
【図面の簡単な説明】
【0011】
【図1】本発明の一実施形態に係る情報処理装置の構成を示すブロック図。
【図2】同実施形態の情報処理装置におけるディスプレイドライバの制御の下、省電力制御モジュール(アプリケーション)によって実行される表示制御処理の概要を示した図。
【図3】同実施形態の情報処理装置が備えるグラフィックスコントローラとフレームバッファ(VRAM)の接続状態を模式的に示した図。
【図4】同実施形態の情報処理装置が備える4つの物理VRAMを論理空間にマッピングした状態を模式的に示した図。
【図5】同実施形態の情報処理装置が備えるフレームバッファ(論理VRAM領域)から複数のディスプレイに出力部を介して映像信号を出力する形態を模式的に示した図。
【図6】同実施形態の情報処理装置のディスプレイドライバ及び省電力制御モジュール(アプリケーション)によって、ユーザが使用しているディスプレイか否かを判別する方法について模式的に示した図。
【図7】同実施形態の情報処理装置で用いるトリガーのうち、3D表示等のフルスクリーン表示処理及び動画の再生処理のいずれか1つ以上が検出された場合について模式的に説明した図。
【図8】同実施形態の情報処理装置に接続されるディスプレイに3D表示等のフルスクリーン表示処理が検出された場合を模式的に示した図。
【図9】同実施形態の情報処理装置に接続されるディスプレイに動画の再生処理が検出された場合を模式的に示した図。
【図10】同実施形態の情報処理装置で適用されるトリガーの検出方法について模式的に示した図。
【図11】同実施形態の情報処理装置に接続されるディスプレイにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を時系列順に番号を付した図。
【図12】同実施形態の情報処理装置に接続されるディスプレイにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を時系列順に番号を付した図。
【図13】同実施形態の情報処理装置に接続されるディスプレイにおける分割VRAM領域の所定領域のみが更新されている状態を模式的に示す図。
【図14】同実施形態の情報処理装置のディスプレイドライバによりマウスカーソルの移動を検出した場合を模式的に示した図。
【図15】同実施形態の情報処理装置であるコンピュータによって実行される表示制御処理の手順を示すフローチャート。
【図16】同実施形態の情報処理装置であるコンピュータによって実行される表示制御処理(省電力状態の解除処理)の手順を示すフローチャート。
【発明を実施するための形態】
【0012】
以下、図面を参照して、本発明の実施形態を説明する。
【0013】
図1は、本発明の一実施形態に係る情報処理装置の構成を示している。この情報処理装置は、例えば、パーソナルコンピュータとして実現される。この情報処理装置は複数のディスプレイを接続可能な接続インターフェースおよび複数のディスプレイに対応するビデオメモリを備えており、複数のディスプレイを用いたマルチディスプレイ状態で使用することができる(複数のディスプレイの各々に出力する映像信号を記憶する複数のディスプレイの各々に対応した複数のビデオメモリを備えている)。
【0014】
コンピュータ10には、図示のように、CPU(Central Processing Unit)101、主メモリ103、グラフィックコントローラ104、フレームバッファ(VRAM(Video RAM):ビデオメモリ)105、フレームバッファ105から各ディスプレイ1、2、・・・nに出力される映像信号の出力部180−1〜180−n、電源部150、ハードディスクドライブ(HDD)109が設けられている。
【0015】
CPU101は本コンピュータの動作を制御するために設けられたプロセッサであり、ハードディスクドライブ(HDD)109から主メモリ103にロードされたオペレーティングシステム(OS)121、ディスプレイドライバ122および省電力制御モジュール(アプリケーションプログラム)(以下、省電力制御モジュール(アプリケーション)とも称する)123等の各種アプリケーションプログラムを実行する。また、CPU101は必要に応じて各種データ124を主メモリ103にロードする。ディスプレイドライバ122はOS121と共同してグラフィックコントローラ104を制御する。これらディスプレイドライバ122およびOS121の制御により、マルチディスプレイ機能が実現される。また、各ディスプレイ1、2、・・・nに対する省電力制御は、変更手段であるCPU101の制御の下、ディスプレイドライバ122および省電力制御モジュール(アプリケーション)123の制御により実現される。この省電力制御は、ディスプレイの動作状態をオン状態以外の省電力状態に変更(移行)する機能として実現される。オン状態以外のディスプレイの動作状態としては、例えば、ディスプレイの電源をオフする状態、ディスプレイのリフレッシュレート制御状態(リフレッシュレートの周波数を下げる)、およびディスプレイの輝度制御状態(バックライト等の輝度を下げる)等である。
【0016】
マルチディスプレイ機能は、複数のディスプレイ1、2、・・・nに同時にデスクトップの表示を実現する機能である。各デスクトップには、複数のアプリケーションのウインドウを表示することができる。各デスクトップの画面イメージデータ(映像信号)は、グラフィックコントローラ104に設けられているフレームバッファ105(VRAM)上に描画される。このフレームバッファ105(VRAM)は、各ディスプレイ1、2、・・・nに表示させるデスクトップの画面イメージデータに対応しているため、接続可能なディスプレイの数だけフレームバッファ105(VRAM)を設けている。例えば、図示されるように、フレームバッファ105(VRAM)には、ディスプレイ1用105a、ディスプレイ2用105b・・・ディスプレイn用105nのフレームバッファが設けられている。
【0017】
さらに、グラフィックコントローラ104は、ディスプレイドライバ122の制御の下、フレームバッファ105(VRAM)であるディスプレイ1用105a、ディスプレイ2用105b・・・ディスプレイn用105nのそれぞれに描画された各デスクトップの画面イメージデータをディスプレイ1、2、・・・nの画面にそれぞれ表示させる。
【0018】
次に、図2を参照して、ディスプレイドライバ122の制御の下、省電力制御モジュール(アプリケーション)123によって実行される表示制御処理の概要を説明する。
【0019】
ディスプレイドライバ122は、フルスクリーンアプリケーション情報およびVRAMアクセス情報を管理している。フルスクリーンアプリケーション情報とは、ディスプレイドライバ122によって、各ディスプレイ1、2、・・・nに表示するためのデスクトップの画面イメージデータがフルスクリーン表示であると判別された情報である。なお、フルスクリーン表示とは、デスクトップの画面上でウインドウ表示ではなく全画面表示されている状態である。VRAMアクセス情報は、各ディスプレイ1、2、・・・nに対応しているフレームバッファ(VRAM)105の記憶領域を所定の数に分割し、分割された各領域(分割VRAM領域)が保持するアクセス情報(更新情報)である。この更新情報は、例えば、分割された各領域の最終書き込み時間、単位時間における書き込み回数等である。これらの情報から、フレームバッファ(VRAM)105の各領域の更新(アクセス)の傾向を検出することができる。例えば、ディスプレイドライバ122は、最終書き込み時間(アクセス時間)に基づいて、フレームバッファ(VRAM)105の各領域の更新の方向(縦方向、横方向等)を検出できる。さらに、ディスプレイドライバ122は、更新された領域の広さを検出できる。例えばユーザがディスプレイ上で、テキストを入力している場合は、フレームバッファ(VRAM)105が横方向に更新される。ディスプレイドライバ122は、このフレームバッファ(VRAM)105の領域における更新の方向を検出し、この更新が検出されたフレームバッファ(VRAM)105に対応するディスプレイをユーザが使用しているディスプレイであると検出することができる。また、例えばユーザがディスプレイ上で、Webサイト等をブラウジングしている場合は、フレームバッファ(VRAM)105が縦方向に広い面積で更新される。ディスプレイドライバ122は、このフレームバッファ(VRAM)105の領域における更新の方向及び更新の広さを検出し、この更新が検出されたフレームバッファ(VRAM)105に対応するディスプレイをユーザが使用しているディスプレイであると検出することができる。このようにして、判別手段であるCPU101の制御の下、ディスプレイドライバ122は、ディスプレイの表示を予め設定された表示に更新するアクセスがある状態か否かを判別する。
【0020】
省電力制御モジュール(アプリケーション)123は、ディスプレイドライバ122からフルスクリーンアプリケーション情報またはVRAMアクセス情報を受信すると、これらの情報に該当しないディスプレイをユーザが使用していないディスプレイとして検出する。検出されたディスプレイには、省電力制御モジュール(アプリケーション)123から省電力状態に移行するための省電力要求信号を通知し、通知を受けたディスプレイを省電力状態に移行させる(判別結果に基づいて、該当するディスプレイの動作状態を変更する)。
【0021】
図3は、グラフィックスコントローラ104とフレームバッファ(VRAM)105の接続状態を模式的に示した図である。フレームバッファ(VRAM)105には、例えば、VRAM(A1)、VRAM(A2)、VRAM(B1)、及びVRAM(B2)の計4つの物理的なVRAM(物理VRAM)が設けられている。また、グラフィックスコントローラ104には、FB(Fully Buffered)バスAおよびBが設けられている。例えば、FBバスAの各32bit幅を用いてVRAM(A1)およびVRAM(A2)が接続されており、FBバスBの各32bit幅を用いてVRAM(B1)およびVRAM(B2)が接続されている。
【0022】
以上のように構成された物理VRAMを用いて、論理空間にマッピングしてメモリ領域であるフレームバッファ(以下、論理VRAM領域とも称する)105を生成する。図4は、上述した4つの物理VRAMを論理空間にマッピングした状態を模式的に示した図である。
【0023】
フレームバッファ105には、コンピュータ10に接続された各ディスプレイ(例えばディスプレイ1、2、・・・n)のデスクトップの画面イメージがそれぞれ記憶される。フレームバッファ105には、上述した4つの物理VRAMの各セルのメモリが分割されてマッピングされる(割り当てられる)。例えば、VRAM(A1)の分割されたセル210は、フレームバッファ105である論理VRAM領域の分割された領域200内の領域にマッピングされる。続いて、例えば、VRAM(A2)の分割されたセル211は、フレームバッファ105である論理VRAM領域の分割された領域200内の領域に順にマッピングされる。同様に、VRAM(A1)の分割されたセルおよびVRAM(A2)の分割されたセルを交互にマッピングする。さらに、VRAM(B1)の分割されたセルおよびVRAM(B2)の分割されたセルを交互にマッピングする。このようにして、フレームバッファ105である論理VRAM領域の分割された領域200内の領域に各物理VRAMの各セルがマッピングされる。このようにして、OS121や省電力制御モジュール(アプリケーション)122等の各種アプリケーションが使用するメモリ領域が生成される。
【0024】
図5は、フレームバッファ(論理VRAM領域)105から複数のディスプレイ1、2、・・・nに出力部180−1、180−2、・・・180−nを介して映像信号を出力する形態を模式的に示した図である。フレームバッファ(論理VRAM領域)105には、各ディスプレイ1、2、・・・nに出力するためのデスクトップの画面イメージが記憶されている。各デスクトップの画面イメージ(ディスプレイ1、2、・・・n)は、それぞれディスプレイ1用105a、ディスプレイ2用105b・・・ディスプレイn用105nのフレームバッファに記憶されている。これらの各デスクトップの画面イメージ(ディスプレイ1、2、・・・n)は、出力部180−1、180−2、・・・180−nを介してディスプレイ1、2、・・・nに出力される。このような状態で、CPU101の制御の下、ディスプレイドライバ122及び省電力制御モジュール(アプリケーション)123によって、ユーザが使用していないディスプレイであると判別された場合は、省電力制御モジュール(アプリケーション)123から省電力状態に移行するための省電力要求信号を該当するディスプレイに通知し、通知を受けたディスプレイを省電力状態に移行させる。この省電力状態への移行は、上述したように、ディスプレイの動作状態をオン状態以外の省電力状態に変更(移行)する機能として実現される。オン状態以外のディスプレイの動作状態としては、例えば、ディスプレイの電源をオフする状態、ディスプレイのリフレッシュレート制御状態(リフレッシュレートの周波数を下げる)、およびディスプレイの輝度制御状態(バックライト等の輝度を下げる)等である。
【0025】
図6は、ディスプレイドライバ122及び省電力制御モジュール(アプリケーション)123によって、ユーザが使用しているディスプレイか否かを判別する方法について模式的に示した図である。
【0026】
ディスプレイドライバ122及び省電力制御モジュール(アプリケーション)123によって、以下に示すトリガーとなる状態(予め設定された条件に該当するアクセスがある状態)を検出すると、ユーザが使用しているディスプレイとして検出し、省電力状態に移行させないように制御する。トリガーとなる状態としては、例えば、ディスプレイ上でテキスト入力処理が検出された場合、縦方向のスクロール処理が検出された場合、動画の再生処理が検出された場合、3D表示等のフルスクリーン表示処理が検出された場合、マウスポインタ(マウスカーソル)の移動処理が検出された場合等が挙げられる。なお、図に示す横軸は時間を表しており、上述したトリガーのすべてのイベントが発生以内期間では、ユーザが予め設定した時間(5分など)が経過した場合は、該当するディスプレイを省電力状態に移行させる処理を行う(A)。一方、上述したトリガーのいずれかのイベントを検出した場合、且つ該当するディスプレイが省電力状態であれば、ディスプレイの省電力状態を解除する処理を行う(B)。
【0027】
図7は、上述したトリガーのうち、3D表示等のフルスクリーン表示処理及び動画の再生処理のいずれか1つ以上が検出された場合について模式的に説明した図である。ディスプレイドライバ122は、上述したトリガーのうち、例えばディスプレイ1に、3D表示等のフルスクリーン表示処理及び動画の再生処理のいずれか1つ以上が検出された場合は、検出されたディスプレイを省電力制御モジュール(アプリケーション)123に通知する。省電力制御モジュール(アプリケーション)123は、通知を受けたディスプレイ1以外のディスプレイ2、・・・nに対して省電力状態に移行させるための省電力要求信号を通知する。ディスプレイ1以外のディスプレイ2、・・・nは省電力要求信号に基づいて省電力状態に移行する。なお、ディスプレイドライバ122によって、ディスプレイ1に、3D表示等のフルスクリーン表示処理及び動画の再生処理のいずれか1つ以上が検出された場合、且つディスプレイ1が省電力状態である場合は、ディスプレイ1の省電力状態を解除する。
【0028】
図8は、ディスプレイ1に、上述したトリガーのうち、3D表示等のフルスクリーン表示処理が検出された場合を模式的に示した図である。3D表示等のフルスクリーン表示処理は、ディスプレイドライバ122によって検出され、省電力制御モジュール(アプリケーション)123に通知される。すなわち、フルスクリーン表示処理が検出されたディスプレイ1は、省電力状態に移行させない。一方、フルスクリーン表示処理が検出されたディスプレイ1以外のディスプレイ2、・・・nは、上述したトリガーのいずれも検出されないため、省電力状態に移行させる。なお、3D表示等のフルスクリーン表示処理の検出については後述する。
【0029】
図9は、ディスプレイ2に、上述したトリガーのうち、動画の再生処理が検出された場合を模式的に示した図である。動画の再生処理は、ディスプレイドライバ122によって検出され、省電力制御モジュール(アプリケーション)123に通知される。すなわち、動画の再生処理が検出されたディスプレイ2は、省電力状態に移行させない。一方、動画の再生処理が検出されたディスプレイ2以外のディスプレイ1、・・・nは、上述したトリガーのいずれも検出されないため、省電力状態に移行させる。なお、動画の再生処理の検出については後述する。
【0030】
図10は、上述したトリガーの検出方法について模式的に示した図である。
【0031】
上記トリガーを検出するために、まず、フレームバッファ(論理VRAM領域)105を、例えば6×6の領域に分割する。分割された分割VRAM領域は、それぞれ最終書き込み時間(最終アクセス時間)、単位時間における書き込み回数、及び書き込み内容(3D、2D、動画、テキスト)等の情報を持っており、ディスプレイドライバ122によりこれらを検出する。分割された分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)により分割VRAM領域のアクセス方向を検出することができる。また、ディスプレイドライバ122により検出される、分割VRAM領域への書き込み内容(3D、2D、動画、テキスト)及び書き込み領域の情報(全画面か否か等)により、3D表示等のフルスクリーン表示処理の検出及び動画の再生処理の検出を行うことができる。
【0032】
また、例えば、フレームバッファ(論理VRAM領域)105を、例えば8×8の64個の領域に分割する場合、分割された分割VRAM領域をVRAM(x,y)と表現する。(64分割の場合は、VRAM(0,0)〜VRAM(7,7)と表現される)。この場合、VRAM(0,0)にVRAMの書き込みが行われたとする。この書き込みが行われて例えば5秒以内に、その右部分であるVRAM(1,0)に書き込みが行われたとする。このような場合、ユーザがテキスト入力を横方向に行った可能性が高いと判別する。また、同様に5秒以内に、その下部分であるVRAM(0,1)に書き込みが行われたとする。このような場合、ユーザがテキスト入力を縦方向、もしくは、改行を行った可能性が高いと判別する。
【0033】
図11は、ディスプレイnにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を時系列順に番号を付した図である。番号が順に横方向に並んでおり、省電力制御モジュール(アプリケーション)123により横方向に分割VRAM領域が更新されたことが検出されている。また、書き込み内容(3D、2D、動画、テキスト)により分割VRAM領域にテキスト入力がされたことが検出されている。このため、当該ディスプレイnは、ユーザがテキスト等の入力を行い、メインで使用している作業領域(ディスプレイ)であると判別される。このため、省電力状態に移行する処理は行わない。
【0034】
図12は、ディスプレイnにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を時系列順に番号を付した図である。番号が順に縦方向に並んでおり、ディスプレイドライバ122により縦方向に分割VRAM領域が更新されたことが検出されている。このため、当該ディスプレイnは、ユーザがブラウザ等を用いた閲覧で縦方向にスクロール等を行い、メインで使用している作業領域(ディスプレイ)であると判別される。このため、省電力状態に移行する処理は行わない。なお、ブラウザ等を用いた閲覧で縦方向にスクロールが行われている状態は、図11に示すように横方向に分割VRAM領域が更新されている状態と比べて、比較的広い範囲の分割VRAM領域が更新されている場合が多い。
【0035】
図13は、ディスプレイnにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を示した図である。分割VRAM領域tのみが定期的に更新されている。このため、省電力制御モジュール(アプリケーション)123により、ユーザによる更新ではなく、アプリケーション等による自動更新であると判別される。すなわち、省電力制御モジュール(アプリケーション)123により、当該ディスプレイnは、ユーザがメインで使用している作業領域(ディスプレイ)でないと判別される。このため、省電力制御モジュール(アプリケーション)123は、例えば所定時間経過した場合に省電力状態に移行する処理を行う。
【0036】
また、同様に、以下のような更新が行われる場合は、ユーザがそのディスプレイを使用していると判別せずに所定時間経過後に省電力状態に移行する。VRAM(0,0)にVRAMの書き込みが行われた場合、この書き込みが行われた後、再度VRAM(0,0)に書き込みが行われ、その後、断続的にVRAM(0,0)に書き込みが行われた場合等である。
【0037】
なお、画面のリフレッシュも同様に、ディスプレイドライバ122によって「ユーザによるディスプレイの使用」とはみなさない。画面のリフレッシュは、ディスプレイドライバ122及びグラフィックスコントローラ104が管理しており、画面リフレッシュによるVRAMの変化と、ユーザのテキスト入力、ブラウジングによるVRAMの変化とは、区別することができる。従って、画面のリフレッシュは省電力制御には特に影響しない。このような場合、アプリケーションが自動的に表示を更新する為に、VRAMに書き込みが行われている可能性が高い。自動更新の例としては、定期的にニュース情報を表示するニュースティッカーや、株情報を表示するウィンドウなどがある。その為、このような場合は、ディスプレイドライバ122によってユーザがそのディスプレイを使用しているとはみなさない(所定時間経過後に省電力状態に移行する)。
【0038】
図14は、ディスプレイドライバ122によりマウスカーソルの移動を検出した場合を模式的に示した図である。例えば、ディスプレイ1からディスプレイ2のマウスカーソルが移動したことをディスプレイドライバ122により検出された場合は、ディスプレイ2は、ユーザがメインで使用している作業領域(ディスプレイ)であると判別される。このため、省電力状態に移行する処理は行わない。一方、ディスプレイ1は、マウスカーソルが検出されないので、ユーザがメインで使用している作業領域(ディスプレイ)でないと判別される。このため、省電力制御モジュール(アプリケーション)123は、例えば所定時間経過した場合に省電力状態に移行する処理を行う。
【0039】
上述したように、トリガーが1つ以上検出された場合には、省電力状態に移行する処理は行わない。一方、すべてのトリガーが検出されない状態で、例えば所定時間経過した場合に省電力状態に移行する処理を行う。
【0040】
次に、図15のフローチャートを参照して、本実施形態のコンピュータ10によって実行される表示制御処理の手順を説明する。
【0041】
コンピュータ10に複数のディスプレイ1、2、・・・nが接続されている場合、これらのディスプレイ1、2、・・・nのそれぞれについて表示制御処理を行う。本実施形態では、表示制御処理を行う対象を例えばディスプレイnとして説明する。
【0042】
まず、ユーザが指定した省電力状態に移行する時間T(例えば、5分等)をコンピュータ10のHDD109等に予め記憶する(ステップS101)。
【0043】
コンピュータ10のCPU101は主メモリ103にディスプレイドライバ122及び省電力制御モジュール(アプリケーション)123をロードする。省電力制御モジュール(アプリケーション)123は、省電力状態に移行する時間をカウントするタイマー値であるtを0としてリセットする(ステップS102)。省電力制御モジュール(アプリケーション)123は、t+経過時間としてタイマーをスタートする(ステップS103)。ディスプレイドライバ122は、ディスプレイn上でユーザが注視するようなVRAMの書き込みが行われているか(トリガーを検出したか)を判別する(ステップS104)。ステップS104で、ディスプレイドライバ122によって、トリガーを検出したと判別された場合は(ステップS104のYES)、ステップS102に遷移する。一方、ステップS104で、ディスプレイドライバ122によって、トリガーを検出しないと判別された場合は(ステップS104のNO)、ディスプレイドライバ122は、動画の再生処理がディスプレイn上で実行されているか否かを判別する(ステップS105)。ステップS105で、ディスプレイドライバ122によって、動画の再生処理がディスプレイn上で実行されていると判別された場合は(ステップS105のYES)、ステップS102に遷移する。一方、ステップS105で、ディスプレイドライバ122によって、動画の再生処理がディスプレイn上で実行されていないと判別された場合は(ステップS105のNO)、ディスプレイドライバ122は、フルスクリーン3Dアプリケーションがディスプレイn上で実行されているか否かを判別する(ステップS106)。ステップS106で、ディスプレイドライバ122によって、フルスクリーン3Dアプリケーションがディスプレイn上で実行されていると判別された場合は(ステップS106のYES)、ステップS102に遷移する。一方、ステップS106で、ディスプレイドライバ122によって、フルスクリーン3Dアプリケーションがディスプレイn上で実行されていないと判別された場合は(ステップS106のNO)、ディスプレイドライバ122は、マウスポインタ(マウスカーソル)がディスプレイn上にあるか否かを判別する(ステップS107)。ステップS107で、ディスプレイドライバ122によって、マウスポインタ(マウスカーソル)がディスプレイn上にあると判別された場合は(ステップS107のYES)、ステップS102に遷移する。一方、ステップS107で、ディスプレイドライバ122によって、マウスポインタ(マウスカーソル)がディスプレイn上にないと判別された場合は(ステップS107のNO)、省電力制御モジュール(アプリケーション)123は、t>=Tであるか否かを判別する(ステップS108)。ステップS108で、省電力制御モジュール(アプリケーション)123によって、t>=Tでないと判別された場合は(ステップS108のNO)、ステップS103に遷移する(予め設定された時間が経過していない状態)。一方、ステップS108で、省電力制御モジュール(アプリケーション)123によって、t>=Tであると判別された場合は(ステップS108のYES)、ディスプレイnを省電力状態に移行(省電力操作実行)する処理を行う(ステップS109)。
【0044】
次に、図16のフローチャートを参照して、本実施形態のコンピュータ10によって実行される表示制御処理(省電力状態の解除処理)の手順を説明する。
【0045】
図15と同様に、コンピュータ10に複数のディスプレイ1、2、・・・nが接続されている場合、これらのディスプレイ1、2、・・・nのそれぞれについて表示制御処理(省電力状態の解除処理)を行う。本実施形態では、表示制御処理を行う対象を例えばディスプレイnとして説明する。
【0046】
ディスプレイドライバ122は、ディスプレイn上でユーザが注視するようなVRAMの書き込みが行われているか(トリガーを検出したか)を判別する(ステップS201)。ステップS201で、ディスプレイドライバ122によって、トリガーを検出したと判別された場合は(ステップS201のYES)、ディスプレイnの省電力状態を解除する(ステップS205)。一方、ステップS201で、ディスプレイドライバ122によって、トリガーを検出しないと判別された場合は(ステップS201のNO)、ディスプレイドライバ122は、動画の再生処理がディスプレイn上で実行されているか否かを判別する(ステップS202)。ステップS202で、ディスプレイドライバ122によって、動画の再生処理がディスプレイn上で実行されていると判別された場合は(ステップS202のYES)、ディスプレイnの省電力状態を解除する(ステップS205)。一方、ステップS202で、ディスプレイドライバ122によって、動画の再生処理がディスプレイn上で実行されていないと判別された場合は(ステップS202のNO)、ディスプレイドライバ122は、フルスクリーン3Dアプリケーションがディスプレイn上で実行されているか否かを判別する(ステップS203)。ステップS203で、ディスプレイドライバ122によって、フルスクリーン3Dアプリケーションがディスプレイn上で実行されていると判別された場合は(ステップS203のYES)、ディスプレイnの省電力状態を解除する(ステップS205)。一方、ステップS203で、ディスプレイドライバ122によって、フルスクリーン3Dアプリケーションがディスプレイn上で実行されていないと判別された場合は(ステップS203のNO)、ディスプレイドライバ122は、マウスポインタ(マウスカーソル)がディスプレイn上にあるか否かを判別する(ステップS204)。ステップS204で、ディスプレイドライバ122によって、マウスポインタ(マウスカーソル)がディスプレイn上にあると判別された場合は(ステップS204のYES)、ディスプレイnの省電力状態を解除する(ステップS205)。一方、ステップS204で、ディスプレイドライバ122によって、マウスポインタ(マウスカーソル)がディスプレイn上にないと判別された場合は(ステップS204のNO)、ステップS201に遷移する。
【0047】
本実施形態では、上述したように、複数のディスプレイが接続された状態で、ユーザがどのディスプレイを使用しているかをより正確に判別し、ユーザが使用していると判別されたディスプレイ以外のディスプレイを省電力状態に移行させることができる。
【0048】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【0049】
10…コンピュータ、101…CPU、103…主メモリ、104…グラフィックスコントローラ、105…ビデオメモリ(VRAM)、105a…ディスプレイ1用(ビデオメモリ(VRAM))、105b…ディスプレイ2用(ビデオメモリ(VRAM))、105n…ディスプレイn用(ビデオメモリ(VRAM))、109…HDD、121…OS、122…ディスプレイドライバ、123…省電力制御モジュール(アプリケーション)、150…電源部、180−1、180−2、・・・180−n…出力部。
【技術分野】
【0001】
本発明はパーソナルコンピュータのような情報処理装置に係り、特に複数のディスプレイを接続可能な情報処理装置および表示制御方法に関する。
【背景技術】
【0002】
一般的に、パーソナルコンピュータ等においては、その消費電力を低減するための様々な省電力制御技術が開発されている。VESA(Video Electronics Standards Association)によって規格化されたDPMS(Display Power Management Signaling)もその省電力制御技術の一つである。このDPMSは、パーソナルコンピュータのディスプレイモニタをパワーセーブするための規格であり、例えばキー入力が行われなくなってからの経過時間の長さ等をソフトウェアによって検出し、それに応じて、ディスプレイモニタを段階的に省電力状態に移行させる(パワーセーブする)というものである。
【0003】
また、最近では、コンピュータに複数のディスプレイを接続して使用する形態が増えてきている。特許文献1には、複数のディスプレイを接続したコンピュータが、それぞれのディスプレイのアクティブウィンドウの有無やカーソル移動の有無を検出し、これらが検出されなかったディスプレイを省電力状態に移行させる技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2000−163035号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、特許文献1の技術によっては、ユーザが実際には使用していないのにも関わらず省電力状態に移行されない場合があった。例えば、ウインドウがアクティブ状態であっても、実際には何ら作業されていない場合がある。
【0006】
そこで、コンピュータに接続された複数のディスプレイのうち、ユーザがどのディスプレイを使用しているかをより正確に判別し、それ以外のディスプレイを省電力状態に移行させるためには、新たな機能が必要となる。
【0007】
本発明は上述の事情を考慮してなされたものであり、ユーザがどのディスプレイを使用しているかをより正確に判別し、ユーザが使用していると判別されたディスプレイ以外のディスプレイを省電力状態に移行させることができる情報処理装置および表示制御方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記目的を達成するために、本発明の一態様によれば、複数のディスプレイを接続可能な情報処理装置であって、前記複数のディスプレイの各々に出力される映像信号を記憶するため、前記複数のディスプレイの各々に対応した複数のビデオメモリと、前記複数のビデオメモリの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがある状態か否かを判別する判別手段と、前記判別手段により、前記複数のビデオメモリのうちの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがない状態と判別された場合には、前記アクセスがないと判別されたビデオメモリに対応するディスプレイの動作状態を、判別された時点における第1の動作状態から、より消費電力の少ない第2の動作状態に変更する変更手段と、を具備することを特徴とする情報処理装置が提供される。
【0009】
また、本発明の一態様によれば、複数のディスプレイを接続可能な情報処理装置で用いる表示制御方法であって、前記情報処理装置は、前記複数のディスプレイの各々に出力される映像信号を記憶するため、前記複数のディスプレイの各々に対応した複数のビデオメモリを備え、前記複数のビデオメモリの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがある状態か否かを判別し、前記複数のビデオメモリのうちの少なくとも1つに、予め設定された条件に該当するアクセスがない状態と判別された場合には、前記アクセスがないと判別されたビデオメモリに対応するディスプレイの動作状態を、判別された時点における第1の動作状態から、前記第1の動作状態より消費電力が少ない第2の動作状態に変更することを特徴とする表示制御方法が提供される。
【発明の効果】
【0010】
本発明によれば、ユーザがどのディスプレイを使用しているかをより正確に判別し、ユーザが使用していると判別されたディスプレイ以外のディスプレイを省電力状態に移行させることができる。
【図面の簡単な説明】
【0011】
【図1】本発明の一実施形態に係る情報処理装置の構成を示すブロック図。
【図2】同実施形態の情報処理装置におけるディスプレイドライバの制御の下、省電力制御モジュール(アプリケーション)によって実行される表示制御処理の概要を示した図。
【図3】同実施形態の情報処理装置が備えるグラフィックスコントローラとフレームバッファ(VRAM)の接続状態を模式的に示した図。
【図4】同実施形態の情報処理装置が備える4つの物理VRAMを論理空間にマッピングした状態を模式的に示した図。
【図5】同実施形態の情報処理装置が備えるフレームバッファ(論理VRAM領域)から複数のディスプレイに出力部を介して映像信号を出力する形態を模式的に示した図。
【図6】同実施形態の情報処理装置のディスプレイドライバ及び省電力制御モジュール(アプリケーション)によって、ユーザが使用しているディスプレイか否かを判別する方法について模式的に示した図。
【図7】同実施形態の情報処理装置で用いるトリガーのうち、3D表示等のフルスクリーン表示処理及び動画の再生処理のいずれか1つ以上が検出された場合について模式的に説明した図。
【図8】同実施形態の情報処理装置に接続されるディスプレイに3D表示等のフルスクリーン表示処理が検出された場合を模式的に示した図。
【図9】同実施形態の情報処理装置に接続されるディスプレイに動画の再生処理が検出された場合を模式的に示した図。
【図10】同実施形態の情報処理装置で適用されるトリガーの検出方法について模式的に示した図。
【図11】同実施形態の情報処理装置に接続されるディスプレイにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を時系列順に番号を付した図。
【図12】同実施形態の情報処理装置に接続されるディスプレイにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を時系列順に番号を付した図。
【図13】同実施形態の情報処理装置に接続されるディスプレイにおける分割VRAM領域の所定領域のみが更新されている状態を模式的に示す図。
【図14】同実施形態の情報処理装置のディスプレイドライバによりマウスカーソルの移動を検出した場合を模式的に示した図。
【図15】同実施形態の情報処理装置であるコンピュータによって実行される表示制御処理の手順を示すフローチャート。
【図16】同実施形態の情報処理装置であるコンピュータによって実行される表示制御処理(省電力状態の解除処理)の手順を示すフローチャート。
【発明を実施するための形態】
【0012】
以下、図面を参照して、本発明の実施形態を説明する。
【0013】
図1は、本発明の一実施形態に係る情報処理装置の構成を示している。この情報処理装置は、例えば、パーソナルコンピュータとして実現される。この情報処理装置は複数のディスプレイを接続可能な接続インターフェースおよび複数のディスプレイに対応するビデオメモリを備えており、複数のディスプレイを用いたマルチディスプレイ状態で使用することができる(複数のディスプレイの各々に出力する映像信号を記憶する複数のディスプレイの各々に対応した複数のビデオメモリを備えている)。
【0014】
コンピュータ10には、図示のように、CPU(Central Processing Unit)101、主メモリ103、グラフィックコントローラ104、フレームバッファ(VRAM(Video RAM):ビデオメモリ)105、フレームバッファ105から各ディスプレイ1、2、・・・nに出力される映像信号の出力部180−1〜180−n、電源部150、ハードディスクドライブ(HDD)109が設けられている。
【0015】
CPU101は本コンピュータの動作を制御するために設けられたプロセッサであり、ハードディスクドライブ(HDD)109から主メモリ103にロードされたオペレーティングシステム(OS)121、ディスプレイドライバ122および省電力制御モジュール(アプリケーションプログラム)(以下、省電力制御モジュール(アプリケーション)とも称する)123等の各種アプリケーションプログラムを実行する。また、CPU101は必要に応じて各種データ124を主メモリ103にロードする。ディスプレイドライバ122はOS121と共同してグラフィックコントローラ104を制御する。これらディスプレイドライバ122およびOS121の制御により、マルチディスプレイ機能が実現される。また、各ディスプレイ1、2、・・・nに対する省電力制御は、変更手段であるCPU101の制御の下、ディスプレイドライバ122および省電力制御モジュール(アプリケーション)123の制御により実現される。この省電力制御は、ディスプレイの動作状態をオン状態以外の省電力状態に変更(移行)する機能として実現される。オン状態以外のディスプレイの動作状態としては、例えば、ディスプレイの電源をオフする状態、ディスプレイのリフレッシュレート制御状態(リフレッシュレートの周波数を下げる)、およびディスプレイの輝度制御状態(バックライト等の輝度を下げる)等である。
【0016】
マルチディスプレイ機能は、複数のディスプレイ1、2、・・・nに同時にデスクトップの表示を実現する機能である。各デスクトップには、複数のアプリケーションのウインドウを表示することができる。各デスクトップの画面イメージデータ(映像信号)は、グラフィックコントローラ104に設けられているフレームバッファ105(VRAM)上に描画される。このフレームバッファ105(VRAM)は、各ディスプレイ1、2、・・・nに表示させるデスクトップの画面イメージデータに対応しているため、接続可能なディスプレイの数だけフレームバッファ105(VRAM)を設けている。例えば、図示されるように、フレームバッファ105(VRAM)には、ディスプレイ1用105a、ディスプレイ2用105b・・・ディスプレイn用105nのフレームバッファが設けられている。
【0017】
さらに、グラフィックコントローラ104は、ディスプレイドライバ122の制御の下、フレームバッファ105(VRAM)であるディスプレイ1用105a、ディスプレイ2用105b・・・ディスプレイn用105nのそれぞれに描画された各デスクトップの画面イメージデータをディスプレイ1、2、・・・nの画面にそれぞれ表示させる。
【0018】
次に、図2を参照して、ディスプレイドライバ122の制御の下、省電力制御モジュール(アプリケーション)123によって実行される表示制御処理の概要を説明する。
【0019】
ディスプレイドライバ122は、フルスクリーンアプリケーション情報およびVRAMアクセス情報を管理している。フルスクリーンアプリケーション情報とは、ディスプレイドライバ122によって、各ディスプレイ1、2、・・・nに表示するためのデスクトップの画面イメージデータがフルスクリーン表示であると判別された情報である。なお、フルスクリーン表示とは、デスクトップの画面上でウインドウ表示ではなく全画面表示されている状態である。VRAMアクセス情報は、各ディスプレイ1、2、・・・nに対応しているフレームバッファ(VRAM)105の記憶領域を所定の数に分割し、分割された各領域(分割VRAM領域)が保持するアクセス情報(更新情報)である。この更新情報は、例えば、分割された各領域の最終書き込み時間、単位時間における書き込み回数等である。これらの情報から、フレームバッファ(VRAM)105の各領域の更新(アクセス)の傾向を検出することができる。例えば、ディスプレイドライバ122は、最終書き込み時間(アクセス時間)に基づいて、フレームバッファ(VRAM)105の各領域の更新の方向(縦方向、横方向等)を検出できる。さらに、ディスプレイドライバ122は、更新された領域の広さを検出できる。例えばユーザがディスプレイ上で、テキストを入力している場合は、フレームバッファ(VRAM)105が横方向に更新される。ディスプレイドライバ122は、このフレームバッファ(VRAM)105の領域における更新の方向を検出し、この更新が検出されたフレームバッファ(VRAM)105に対応するディスプレイをユーザが使用しているディスプレイであると検出することができる。また、例えばユーザがディスプレイ上で、Webサイト等をブラウジングしている場合は、フレームバッファ(VRAM)105が縦方向に広い面積で更新される。ディスプレイドライバ122は、このフレームバッファ(VRAM)105の領域における更新の方向及び更新の広さを検出し、この更新が検出されたフレームバッファ(VRAM)105に対応するディスプレイをユーザが使用しているディスプレイであると検出することができる。このようにして、判別手段であるCPU101の制御の下、ディスプレイドライバ122は、ディスプレイの表示を予め設定された表示に更新するアクセスがある状態か否かを判別する。
【0020】
省電力制御モジュール(アプリケーション)123は、ディスプレイドライバ122からフルスクリーンアプリケーション情報またはVRAMアクセス情報を受信すると、これらの情報に該当しないディスプレイをユーザが使用していないディスプレイとして検出する。検出されたディスプレイには、省電力制御モジュール(アプリケーション)123から省電力状態に移行するための省電力要求信号を通知し、通知を受けたディスプレイを省電力状態に移行させる(判別結果に基づいて、該当するディスプレイの動作状態を変更する)。
【0021】
図3は、グラフィックスコントローラ104とフレームバッファ(VRAM)105の接続状態を模式的に示した図である。フレームバッファ(VRAM)105には、例えば、VRAM(A1)、VRAM(A2)、VRAM(B1)、及びVRAM(B2)の計4つの物理的なVRAM(物理VRAM)が設けられている。また、グラフィックスコントローラ104には、FB(Fully Buffered)バスAおよびBが設けられている。例えば、FBバスAの各32bit幅を用いてVRAM(A1)およびVRAM(A2)が接続されており、FBバスBの各32bit幅を用いてVRAM(B1)およびVRAM(B2)が接続されている。
【0022】
以上のように構成された物理VRAMを用いて、論理空間にマッピングしてメモリ領域であるフレームバッファ(以下、論理VRAM領域とも称する)105を生成する。図4は、上述した4つの物理VRAMを論理空間にマッピングした状態を模式的に示した図である。
【0023】
フレームバッファ105には、コンピュータ10に接続された各ディスプレイ(例えばディスプレイ1、2、・・・n)のデスクトップの画面イメージがそれぞれ記憶される。フレームバッファ105には、上述した4つの物理VRAMの各セルのメモリが分割されてマッピングされる(割り当てられる)。例えば、VRAM(A1)の分割されたセル210は、フレームバッファ105である論理VRAM領域の分割された領域200内の領域にマッピングされる。続いて、例えば、VRAM(A2)の分割されたセル211は、フレームバッファ105である論理VRAM領域の分割された領域200内の領域に順にマッピングされる。同様に、VRAM(A1)の分割されたセルおよびVRAM(A2)の分割されたセルを交互にマッピングする。さらに、VRAM(B1)の分割されたセルおよびVRAM(B2)の分割されたセルを交互にマッピングする。このようにして、フレームバッファ105である論理VRAM領域の分割された領域200内の領域に各物理VRAMの各セルがマッピングされる。このようにして、OS121や省電力制御モジュール(アプリケーション)122等の各種アプリケーションが使用するメモリ領域が生成される。
【0024】
図5は、フレームバッファ(論理VRAM領域)105から複数のディスプレイ1、2、・・・nに出力部180−1、180−2、・・・180−nを介して映像信号を出力する形態を模式的に示した図である。フレームバッファ(論理VRAM領域)105には、各ディスプレイ1、2、・・・nに出力するためのデスクトップの画面イメージが記憶されている。各デスクトップの画面イメージ(ディスプレイ1、2、・・・n)は、それぞれディスプレイ1用105a、ディスプレイ2用105b・・・ディスプレイn用105nのフレームバッファに記憶されている。これらの各デスクトップの画面イメージ(ディスプレイ1、2、・・・n)は、出力部180−1、180−2、・・・180−nを介してディスプレイ1、2、・・・nに出力される。このような状態で、CPU101の制御の下、ディスプレイドライバ122及び省電力制御モジュール(アプリケーション)123によって、ユーザが使用していないディスプレイであると判別された場合は、省電力制御モジュール(アプリケーション)123から省電力状態に移行するための省電力要求信号を該当するディスプレイに通知し、通知を受けたディスプレイを省電力状態に移行させる。この省電力状態への移行は、上述したように、ディスプレイの動作状態をオン状態以外の省電力状態に変更(移行)する機能として実現される。オン状態以外のディスプレイの動作状態としては、例えば、ディスプレイの電源をオフする状態、ディスプレイのリフレッシュレート制御状態(リフレッシュレートの周波数を下げる)、およびディスプレイの輝度制御状態(バックライト等の輝度を下げる)等である。
【0025】
図6は、ディスプレイドライバ122及び省電力制御モジュール(アプリケーション)123によって、ユーザが使用しているディスプレイか否かを判別する方法について模式的に示した図である。
【0026】
ディスプレイドライバ122及び省電力制御モジュール(アプリケーション)123によって、以下に示すトリガーとなる状態(予め設定された条件に該当するアクセスがある状態)を検出すると、ユーザが使用しているディスプレイとして検出し、省電力状態に移行させないように制御する。トリガーとなる状態としては、例えば、ディスプレイ上でテキスト入力処理が検出された場合、縦方向のスクロール処理が検出された場合、動画の再生処理が検出された場合、3D表示等のフルスクリーン表示処理が検出された場合、マウスポインタ(マウスカーソル)の移動処理が検出された場合等が挙げられる。なお、図に示す横軸は時間を表しており、上述したトリガーのすべてのイベントが発生以内期間では、ユーザが予め設定した時間(5分など)が経過した場合は、該当するディスプレイを省電力状態に移行させる処理を行う(A)。一方、上述したトリガーのいずれかのイベントを検出した場合、且つ該当するディスプレイが省電力状態であれば、ディスプレイの省電力状態を解除する処理を行う(B)。
【0027】
図7は、上述したトリガーのうち、3D表示等のフルスクリーン表示処理及び動画の再生処理のいずれか1つ以上が検出された場合について模式的に説明した図である。ディスプレイドライバ122は、上述したトリガーのうち、例えばディスプレイ1に、3D表示等のフルスクリーン表示処理及び動画の再生処理のいずれか1つ以上が検出された場合は、検出されたディスプレイを省電力制御モジュール(アプリケーション)123に通知する。省電力制御モジュール(アプリケーション)123は、通知を受けたディスプレイ1以外のディスプレイ2、・・・nに対して省電力状態に移行させるための省電力要求信号を通知する。ディスプレイ1以外のディスプレイ2、・・・nは省電力要求信号に基づいて省電力状態に移行する。なお、ディスプレイドライバ122によって、ディスプレイ1に、3D表示等のフルスクリーン表示処理及び動画の再生処理のいずれか1つ以上が検出された場合、且つディスプレイ1が省電力状態である場合は、ディスプレイ1の省電力状態を解除する。
【0028】
図8は、ディスプレイ1に、上述したトリガーのうち、3D表示等のフルスクリーン表示処理が検出された場合を模式的に示した図である。3D表示等のフルスクリーン表示処理は、ディスプレイドライバ122によって検出され、省電力制御モジュール(アプリケーション)123に通知される。すなわち、フルスクリーン表示処理が検出されたディスプレイ1は、省電力状態に移行させない。一方、フルスクリーン表示処理が検出されたディスプレイ1以外のディスプレイ2、・・・nは、上述したトリガーのいずれも検出されないため、省電力状態に移行させる。なお、3D表示等のフルスクリーン表示処理の検出については後述する。
【0029】
図9は、ディスプレイ2に、上述したトリガーのうち、動画の再生処理が検出された場合を模式的に示した図である。動画の再生処理は、ディスプレイドライバ122によって検出され、省電力制御モジュール(アプリケーション)123に通知される。すなわち、動画の再生処理が検出されたディスプレイ2は、省電力状態に移行させない。一方、動画の再生処理が検出されたディスプレイ2以外のディスプレイ1、・・・nは、上述したトリガーのいずれも検出されないため、省電力状態に移行させる。なお、動画の再生処理の検出については後述する。
【0030】
図10は、上述したトリガーの検出方法について模式的に示した図である。
【0031】
上記トリガーを検出するために、まず、フレームバッファ(論理VRAM領域)105を、例えば6×6の領域に分割する。分割された分割VRAM領域は、それぞれ最終書き込み時間(最終アクセス時間)、単位時間における書き込み回数、及び書き込み内容(3D、2D、動画、テキスト)等の情報を持っており、ディスプレイドライバ122によりこれらを検出する。分割された分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)により分割VRAM領域のアクセス方向を検出することができる。また、ディスプレイドライバ122により検出される、分割VRAM領域への書き込み内容(3D、2D、動画、テキスト)及び書き込み領域の情報(全画面か否か等)により、3D表示等のフルスクリーン表示処理の検出及び動画の再生処理の検出を行うことができる。
【0032】
また、例えば、フレームバッファ(論理VRAM領域)105を、例えば8×8の64個の領域に分割する場合、分割された分割VRAM領域をVRAM(x,y)と表現する。(64分割の場合は、VRAM(0,0)〜VRAM(7,7)と表現される)。この場合、VRAM(0,0)にVRAMの書き込みが行われたとする。この書き込みが行われて例えば5秒以内に、その右部分であるVRAM(1,0)に書き込みが行われたとする。このような場合、ユーザがテキスト入力を横方向に行った可能性が高いと判別する。また、同様に5秒以内に、その下部分であるVRAM(0,1)に書き込みが行われたとする。このような場合、ユーザがテキスト入力を縦方向、もしくは、改行を行った可能性が高いと判別する。
【0033】
図11は、ディスプレイnにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を時系列順に番号を付した図である。番号が順に横方向に並んでおり、省電力制御モジュール(アプリケーション)123により横方向に分割VRAM領域が更新されたことが検出されている。また、書き込み内容(3D、2D、動画、テキスト)により分割VRAM領域にテキスト入力がされたことが検出されている。このため、当該ディスプレイnは、ユーザがテキスト等の入力を行い、メインで使用している作業領域(ディスプレイ)であると判別される。このため、省電力状態に移行する処理は行わない。
【0034】
図12は、ディスプレイnにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を時系列順に番号を付した図である。番号が順に縦方向に並んでおり、ディスプレイドライバ122により縦方向に分割VRAM領域が更新されたことが検出されている。このため、当該ディスプレイnは、ユーザがブラウザ等を用いた閲覧で縦方向にスクロール等を行い、メインで使用している作業領域(ディスプレイ)であると判別される。このため、省電力状態に移行する処理は行わない。なお、ブラウザ等を用いた閲覧で縦方向にスクロールが行われている状態は、図11に示すように横方向に分割VRAM領域が更新されている状態と比べて、比較的広い範囲の分割VRAM領域が更新されている場合が多い。
【0035】
図13は、ディスプレイnにおける分割VRAM領域のそれぞれの最終書き込み時間(最終アクセス時間)を示した図である。分割VRAM領域tのみが定期的に更新されている。このため、省電力制御モジュール(アプリケーション)123により、ユーザによる更新ではなく、アプリケーション等による自動更新であると判別される。すなわち、省電力制御モジュール(アプリケーション)123により、当該ディスプレイnは、ユーザがメインで使用している作業領域(ディスプレイ)でないと判別される。このため、省電力制御モジュール(アプリケーション)123は、例えば所定時間経過した場合に省電力状態に移行する処理を行う。
【0036】
また、同様に、以下のような更新が行われる場合は、ユーザがそのディスプレイを使用していると判別せずに所定時間経過後に省電力状態に移行する。VRAM(0,0)にVRAMの書き込みが行われた場合、この書き込みが行われた後、再度VRAM(0,0)に書き込みが行われ、その後、断続的にVRAM(0,0)に書き込みが行われた場合等である。
【0037】
なお、画面のリフレッシュも同様に、ディスプレイドライバ122によって「ユーザによるディスプレイの使用」とはみなさない。画面のリフレッシュは、ディスプレイドライバ122及びグラフィックスコントローラ104が管理しており、画面リフレッシュによるVRAMの変化と、ユーザのテキスト入力、ブラウジングによるVRAMの変化とは、区別することができる。従って、画面のリフレッシュは省電力制御には特に影響しない。このような場合、アプリケーションが自動的に表示を更新する為に、VRAMに書き込みが行われている可能性が高い。自動更新の例としては、定期的にニュース情報を表示するニュースティッカーや、株情報を表示するウィンドウなどがある。その為、このような場合は、ディスプレイドライバ122によってユーザがそのディスプレイを使用しているとはみなさない(所定時間経過後に省電力状態に移行する)。
【0038】
図14は、ディスプレイドライバ122によりマウスカーソルの移動を検出した場合を模式的に示した図である。例えば、ディスプレイ1からディスプレイ2のマウスカーソルが移動したことをディスプレイドライバ122により検出された場合は、ディスプレイ2は、ユーザがメインで使用している作業領域(ディスプレイ)であると判別される。このため、省電力状態に移行する処理は行わない。一方、ディスプレイ1は、マウスカーソルが検出されないので、ユーザがメインで使用している作業領域(ディスプレイ)でないと判別される。このため、省電力制御モジュール(アプリケーション)123は、例えば所定時間経過した場合に省電力状態に移行する処理を行う。
【0039】
上述したように、トリガーが1つ以上検出された場合には、省電力状態に移行する処理は行わない。一方、すべてのトリガーが検出されない状態で、例えば所定時間経過した場合に省電力状態に移行する処理を行う。
【0040】
次に、図15のフローチャートを参照して、本実施形態のコンピュータ10によって実行される表示制御処理の手順を説明する。
【0041】
コンピュータ10に複数のディスプレイ1、2、・・・nが接続されている場合、これらのディスプレイ1、2、・・・nのそれぞれについて表示制御処理を行う。本実施形態では、表示制御処理を行う対象を例えばディスプレイnとして説明する。
【0042】
まず、ユーザが指定した省電力状態に移行する時間T(例えば、5分等)をコンピュータ10のHDD109等に予め記憶する(ステップS101)。
【0043】
コンピュータ10のCPU101は主メモリ103にディスプレイドライバ122及び省電力制御モジュール(アプリケーション)123をロードする。省電力制御モジュール(アプリケーション)123は、省電力状態に移行する時間をカウントするタイマー値であるtを0としてリセットする(ステップS102)。省電力制御モジュール(アプリケーション)123は、t+経過時間としてタイマーをスタートする(ステップS103)。ディスプレイドライバ122は、ディスプレイn上でユーザが注視するようなVRAMの書き込みが行われているか(トリガーを検出したか)を判別する(ステップS104)。ステップS104で、ディスプレイドライバ122によって、トリガーを検出したと判別された場合は(ステップS104のYES)、ステップS102に遷移する。一方、ステップS104で、ディスプレイドライバ122によって、トリガーを検出しないと判別された場合は(ステップS104のNO)、ディスプレイドライバ122は、動画の再生処理がディスプレイn上で実行されているか否かを判別する(ステップS105)。ステップS105で、ディスプレイドライバ122によって、動画の再生処理がディスプレイn上で実行されていると判別された場合は(ステップS105のYES)、ステップS102に遷移する。一方、ステップS105で、ディスプレイドライバ122によって、動画の再生処理がディスプレイn上で実行されていないと判別された場合は(ステップS105のNO)、ディスプレイドライバ122は、フルスクリーン3Dアプリケーションがディスプレイn上で実行されているか否かを判別する(ステップS106)。ステップS106で、ディスプレイドライバ122によって、フルスクリーン3Dアプリケーションがディスプレイn上で実行されていると判別された場合は(ステップS106のYES)、ステップS102に遷移する。一方、ステップS106で、ディスプレイドライバ122によって、フルスクリーン3Dアプリケーションがディスプレイn上で実行されていないと判別された場合は(ステップS106のNO)、ディスプレイドライバ122は、マウスポインタ(マウスカーソル)がディスプレイn上にあるか否かを判別する(ステップS107)。ステップS107で、ディスプレイドライバ122によって、マウスポインタ(マウスカーソル)がディスプレイn上にあると判別された場合は(ステップS107のYES)、ステップS102に遷移する。一方、ステップS107で、ディスプレイドライバ122によって、マウスポインタ(マウスカーソル)がディスプレイn上にないと判別された場合は(ステップS107のNO)、省電力制御モジュール(アプリケーション)123は、t>=Tであるか否かを判別する(ステップS108)。ステップS108で、省電力制御モジュール(アプリケーション)123によって、t>=Tでないと判別された場合は(ステップS108のNO)、ステップS103に遷移する(予め設定された時間が経過していない状態)。一方、ステップS108で、省電力制御モジュール(アプリケーション)123によって、t>=Tであると判別された場合は(ステップS108のYES)、ディスプレイnを省電力状態に移行(省電力操作実行)する処理を行う(ステップS109)。
【0044】
次に、図16のフローチャートを参照して、本実施形態のコンピュータ10によって実行される表示制御処理(省電力状態の解除処理)の手順を説明する。
【0045】
図15と同様に、コンピュータ10に複数のディスプレイ1、2、・・・nが接続されている場合、これらのディスプレイ1、2、・・・nのそれぞれについて表示制御処理(省電力状態の解除処理)を行う。本実施形態では、表示制御処理を行う対象を例えばディスプレイnとして説明する。
【0046】
ディスプレイドライバ122は、ディスプレイn上でユーザが注視するようなVRAMの書き込みが行われているか(トリガーを検出したか)を判別する(ステップS201)。ステップS201で、ディスプレイドライバ122によって、トリガーを検出したと判別された場合は(ステップS201のYES)、ディスプレイnの省電力状態を解除する(ステップS205)。一方、ステップS201で、ディスプレイドライバ122によって、トリガーを検出しないと判別された場合は(ステップS201のNO)、ディスプレイドライバ122は、動画の再生処理がディスプレイn上で実行されているか否かを判別する(ステップS202)。ステップS202で、ディスプレイドライバ122によって、動画の再生処理がディスプレイn上で実行されていると判別された場合は(ステップS202のYES)、ディスプレイnの省電力状態を解除する(ステップS205)。一方、ステップS202で、ディスプレイドライバ122によって、動画の再生処理がディスプレイn上で実行されていないと判別された場合は(ステップS202のNO)、ディスプレイドライバ122は、フルスクリーン3Dアプリケーションがディスプレイn上で実行されているか否かを判別する(ステップS203)。ステップS203で、ディスプレイドライバ122によって、フルスクリーン3Dアプリケーションがディスプレイn上で実行されていると判別された場合は(ステップS203のYES)、ディスプレイnの省電力状態を解除する(ステップS205)。一方、ステップS203で、ディスプレイドライバ122によって、フルスクリーン3Dアプリケーションがディスプレイn上で実行されていないと判別された場合は(ステップS203のNO)、ディスプレイドライバ122は、マウスポインタ(マウスカーソル)がディスプレイn上にあるか否かを判別する(ステップS204)。ステップS204で、ディスプレイドライバ122によって、マウスポインタ(マウスカーソル)がディスプレイn上にあると判別された場合は(ステップS204のYES)、ディスプレイnの省電力状態を解除する(ステップS205)。一方、ステップS204で、ディスプレイドライバ122によって、マウスポインタ(マウスカーソル)がディスプレイn上にないと判別された場合は(ステップS204のNO)、ステップS201に遷移する。
【0047】
本実施形態では、上述したように、複数のディスプレイが接続された状態で、ユーザがどのディスプレイを使用しているかをより正確に判別し、ユーザが使用していると判別されたディスプレイ以外のディスプレイを省電力状態に移行させることができる。
【0048】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【0049】
10…コンピュータ、101…CPU、103…主メモリ、104…グラフィックスコントローラ、105…ビデオメモリ(VRAM)、105a…ディスプレイ1用(ビデオメモリ(VRAM))、105b…ディスプレイ2用(ビデオメモリ(VRAM))、105n…ディスプレイn用(ビデオメモリ(VRAM))、109…HDD、121…OS、122…ディスプレイドライバ、123…省電力制御モジュール(アプリケーション)、150…電源部、180−1、180−2、・・・180−n…出力部。
【特許請求の範囲】
【請求項1】
複数のディスプレイを接続可能な情報処理装置であって、
前記複数のディスプレイの各々に出力される映像信号を記憶するため、前記複数のディスプレイの各々に対応した複数のビデオメモリと、
前記複数のビデオメモリの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがある状態か否かを判別する判別手段と、
前記判別手段により、前記複数のビデオメモリのうちの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがない状態と判別された場合には、前記アクセスがないと判別されたビデオメモリに対応するディスプレイの動作状態を、判別された時点における第1の動作状態から、より消費電力の少ない第2の動作状態に変更する変更手段と、
を具備することを特徴とする情報処理装置。
【請求項2】
前記第2の動作状態は、前記ディスプレイの電源をオフした状態、前記ディスプレイのリフレッシュレートを低下させる状態、および前記ディスプレイの輝度を低下させる状態のうち、何れか1つであることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記アクセスがある状態は、前記ディスプレイの横方向に表示が更新される状態、および前記ディスプレイの縦方向に表示が更新される状態のいずれか1つ以上を含むことを特徴とする請求項2記載の情報処理装置。
【請求項4】
前記アクセスがある状態は、前記ディスプレイの表示がフルスクリーン表示である状態を含むことを特徴とする請求項2記載の情報処理装置。
【請求項5】
前記アクセスがある状態は、前記ディスプレイの表示が動画の表示である状態を含むことを特徴とする請求項2記載の情報処理装置。
【請求項6】
複数のディスプレイを接続可能な情報処理装置で用いる表示制御方法であって、
前記情報処理装置は、前記複数のディスプレイの各々に出力される映像信号を記憶するため、前記複数のディスプレイの各々に対応した複数のビデオメモリを備え、
前記複数のビデオメモリの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがある状態か否かを判別し、
前記複数のビデオメモリのうちの少なくとも1つに、予め設定された条件に該当するアクセスがない状態と判別された場合には、前記アクセスがないと判別されたビデオメモリに対応するディスプレイの動作状態を、判別された時点における第1の動作状態から、前記第1の動作状態より消費電力が少ない第2の動作状態に変更することを特徴とする表示制御方法。
【請求項7】
前記第2の動作状態は、前記ディスプレイの電源をオフした状態、前記ディスプレイのリフレッシュレートを低下させる状態、および前記ディスプレイの輝度を低下させる状態のうち、何れか1つであることを特徴とする請求項6に記載の表示制御方法。
【請求項8】
前記アクセスがある状態は、前記ディスプレイの横方向に表示が更新される状態、および前記ディスプレイの縦方向に表示が更新される状態のいずれか1つ以上を含むことを特徴とする請求項7記載の表示制御方法。
【請求項9】
前記アクセスがある状態は、前記ディスプレイの表示がフルスクリーン表示である状態を含むことを特徴とする請求項7記載の表示制御方法。
【請求項10】
前記アクセスがある状態は、前記ディスプレイの表示が動画の表示である状態を含むことを特徴とする請求項7記載の表示制御方法。
【請求項1】
複数のディスプレイを接続可能な情報処理装置であって、
前記複数のディスプレイの各々に出力される映像信号を記憶するため、前記複数のディスプレイの各々に対応した複数のビデオメモリと、
前記複数のビデオメモリの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがある状態か否かを判別する判別手段と、
前記判別手段により、前記複数のビデオメモリのうちの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがない状態と判別された場合には、前記アクセスがないと判別されたビデオメモリに対応するディスプレイの動作状態を、判別された時点における第1の動作状態から、より消費電力の少ない第2の動作状態に変更する変更手段と、
を具備することを特徴とする情報処理装置。
【請求項2】
前記第2の動作状態は、前記ディスプレイの電源をオフした状態、前記ディスプレイのリフレッシュレートを低下させる状態、および前記ディスプレイの輝度を低下させる状態のうち、何れか1つであることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記アクセスがある状態は、前記ディスプレイの横方向に表示が更新される状態、および前記ディスプレイの縦方向に表示が更新される状態のいずれか1つ以上を含むことを特徴とする請求項2記載の情報処理装置。
【請求項4】
前記アクセスがある状態は、前記ディスプレイの表示がフルスクリーン表示である状態を含むことを特徴とする請求項2記載の情報処理装置。
【請求項5】
前記アクセスがある状態は、前記ディスプレイの表示が動画の表示である状態を含むことを特徴とする請求項2記載の情報処理装置。
【請求項6】
複数のディスプレイを接続可能な情報処理装置で用いる表示制御方法であって、
前記情報処理装置は、前記複数のディスプレイの各々に出力される映像信号を記憶するため、前記複数のディスプレイの各々に対応した複数のビデオメモリを備え、
前記複数のビデオメモリの少なくとも1つに、前記ディスプレイの表示に対して予め設定された条件に該当するアクセスがある状態か否かを判別し、
前記複数のビデオメモリのうちの少なくとも1つに、予め設定された条件に該当するアクセスがない状態と判別された場合には、前記アクセスがないと判別されたビデオメモリに対応するディスプレイの動作状態を、判別された時点における第1の動作状態から、前記第1の動作状態より消費電力が少ない第2の動作状態に変更することを特徴とする表示制御方法。
【請求項7】
前記第2の動作状態は、前記ディスプレイの電源をオフした状態、前記ディスプレイのリフレッシュレートを低下させる状態、および前記ディスプレイの輝度を低下させる状態のうち、何れか1つであることを特徴とする請求項6に記載の表示制御方法。
【請求項8】
前記アクセスがある状態は、前記ディスプレイの横方向に表示が更新される状態、および前記ディスプレイの縦方向に表示が更新される状態のいずれか1つ以上を含むことを特徴とする請求項7記載の表示制御方法。
【請求項9】
前記アクセスがある状態は、前記ディスプレイの表示がフルスクリーン表示である状態を含むことを特徴とする請求項7記載の表示制御方法。
【請求項10】
前記アクセスがある状態は、前記ディスプレイの表示が動画の表示である状態を含むことを特徴とする請求項7記載の表示制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2011−8592(P2011−8592A)
【公開日】平成23年1月13日(2011.1.13)
【国際特許分類】
【出願番号】特願2009−152353(P2009−152353)
【出願日】平成21年6月26日(2009.6.26)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成23年1月13日(2011.1.13)
【国際特許分類】
【出願日】平成21年6月26日(2009.6.26)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]