(57)【特許請求の範囲】
【請求項１】
アクティブ状態とアイドル状態との間を遷移可能であって、前記アイドル状態は前記アクティブ状態よりも消費電力が少ない動作状態であるコンピュータシステムと、
前記アクティブ状態から前記アイドル状態への遷移を開始した後から前記アイドル状態における前記コンピュータシステムの消費電力を監視し、所定の消費電力の閾値を超える前記消費電力を検出したとき、前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させ、その後、再度前記コンピュータシステムの動作状態を前記アイドル状態に遷移させるコントローラと、
第１筐体、第２筐体、および、前記第１筐体と前記第２筐体の位置関係を検出するセンサと、を備え、
前記アクティブ状態から前記アイドル状態への遷移条件は、少なくとも前記第１筐体が前記第２筐体に対して閉じられることを含み、
前記コントローラは、
前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させるとき、前記第１筐体が前記第２筐体に対して閉じたままの状態で前記第１筐体が前記第２筐体に対して開いた状態を通知する際に出力される信号を前記コンピュータシステムに出力する
情報処理装置。
【請求項２】
アクティブ状態とアイドル状態との間を遷移可能であって、前記アイドル状態は前記アクティブ状態よりも消費電力が少ない動作状態であるコンピュータシステムと、
前記アクティブ状態から前記アイドル状態への遷移を開始した後から前記アイドル状態における前記コンピュータシステムの消費電力を監視し、所定の消費電力の閾値を超える前記消費電力を検出したとき、前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させ、その後、再度前記コンピュータシステムの動作状態を前記アイドル状態に遷移させるコントローラと、
前記コントローラによって制御可能な１以上の他のデバイスと、を備え、
前記コントローラは、
前記デバイスごとに異常時における消費電力の時系列を示す消費電力パターンが予め設定され、
前記消費電力パターンに基づいて、監視した前記消費電力の時系列に対応するデバイスを特定する
情報処理装置。
【請求項３】
前記コントローラは、
特定したデバイスを再起動させる
請求項２に記載の情報処理装置。
【請求項４】
表示部をさらに備え、
前記アイドル状態は、表示部の表示を停止した状態であって、所定のアクティブイベントに応じて前記表示部の表示が消えたままバックグラウンド処理を実行する状態と、迅速に前記アクティブ状態に復帰可能な低消費電力状態とを切り替え可能な状態である
請求項１から請求項３のいずれか一項に記載の情報処理装置。
【請求項５】
自装置に電力を供給する電源回路を備え、
前記コントローラは、前記電源回路からの電力の供給量を前記消費電力として監視する
請求項１から請求項４のいずれか一項に記載の情報処理装置。
【請求項６】
前記コントローラは、
前記アクティブ状態への復帰から所定時間経過後に、前記アクティブ状態から前記アイドル状態へ遷移させる
請求項１から請求項５のいずれか一項に記載の情報処理装置。
【請求項７】
アクティブ状態とアイドル状態との間を遷移可能であって、前記アイドル状態は前記アクティブ状態よりも消費電力が少ない動作状態であるコンピュータシステム、
コントローラ、第１筐体、第２筐体、および、前記第１筐体と前記第２筐体の位置関係を検出するセンサ、を備える情報処理装置における制御方法であって、
前記アクティブ状態から前記アイドル状態への遷移条件は、少なくとも前記第１筐体が前記第２筐体に対して閉じられることを含み、
前記コントローラが、
前記アクティブ状態から前記アイドル状態への遷移を開始した後から前記アイドル状態における前記コンピュータシステムの消費電力を監視し、所定の消費電力の閾値を超える前記消費電力を検出したとき、前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させる第１ステップと、
その後、再度前記コンピュータシステムの動作状態を前記アイドル状態に遷移させる第２ステップと、
前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させるとき、前記第１筐体が前記第２筐体に対して閉じたままの状態で前記第１筐体が前記第２筐体に対して開いた状態を通知する際に出力される信号を前記コンピュータシステムに出力する第３ステップと、を実行する
制御方法。
【請求項８】
アクティブ状態とアイドル状態との間を遷移可能であって、前記アイドル状態は前記アクティブ状態よりも消費電力が少ない動作状態であるコンピュータシステムと、
コントローラ、および、前記コントローラによって制御可能な１以上の他のデバイスと、を備える情報処理装置における制御方法であって、
前記コントローラは、
前記デバイスごとに異常時における消費電力の時系列を示す消費電力パターンが予め設定され、
前記アクティブ状態から前記アイドル状態への遷移を開始した後から前記アイドル状態における前記コンピュータシステムの消費電力を監視し、所定の消費電力の閾値を超える前記消費電力を検出したとき、前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させる第１ステップと、
その後、再度前記コンピュータシステムの動作状態を前記アイドル状態に遷移させる第２ステップと、
前記消費電力パターンに基づいて、監視した前記消費電力の時系列に対応するデバイスを特定する第３ステップと、を実行する
制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および制御方法に関する。
【背景技術】
【０００２】
パーソナルコンピュータ（ＰＣ：Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などの情報処理装置では、一層の消費電力の節減が期待されている。一般に、情報処理装置の消費電力の多くは、プロセッサの消費電力が占める。情報処理装置には、動作環境を検出し、多くの負荷が期待されない動作環境になるとき、通常の稼働状態の動作モード（以下、標準動作モード）からスリープモード（Ｓｌｅｅｐｉｎｇ  Ｍｏｄｅ）に変更する電力制御機構を備えているものがある。スリープモードは、標準動作モードよりも消費電力が少ない動作モードであり、低消費電力モード、省電力モード、待機電源モード、などと呼ばれることがある。スリープモードには、従来から普及しているスタンバイ（Ｓ３）に加え、モダンスタンバイ（Ｍｏｄｅｒｎ  Ｓｔａｎｄｂｙ）という動作モードがある。モダンスタンバイでは、情報処理装置は、所定の限定された機能を提供可能とし、従来のスタンバイよりも標準動作モードへの変更にかかる復帰時間（Ｒｅｓｕｍｅ  Ｔｉｍｅ）よりも短いという特徴を有する。所定の限定された機能には、例えば、ワンタッチログイン、データ同期および音声操作などがある。モダンスタンバイは、コネクテッドスタンバイ（Ｃｏｎｎｅｃｔｅｄ  Ｓｔａｎｄｂｙ）と呼ばれることもある。
【０００３】
例えば、特許文献１に記載の情報処理装置は、情報処理装置本体の稼働中のアプリを監視するアプリ監視手段と、情報処理装置本体の電力状況を監視する状況監視手段と、電力状況を記憶する記憶手段と、情報処理装置本体の動作状況及び電力情報に基づいて情報処理装置本体のハードウェアリソースの消費電力量の制限量を制御する制御手段と、を備える。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−６８８８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、ユーザの視点では稼働が期待されない状況にも関わらず、情報処理装置に備わるハードウェアまたは情報処理装置におけるソフトウェアが稼働している状態が継続するために、動作モードがスリープモードに変更されないことがあった。ひいては、消費電力が十分に減少しないことがあった。
【課題を解決するための手段】
【０００６】
本発明は上記の課題を解決するためになされたものであり、本発明の一態様に係る情報処理装置は、アクティブ状態とアイドル状態との間を遷移可能であって、前記アイドル状態は前記アクティブ状態よりも消費電力が少ない動作状態であるコンピュータシステムと、前記アクティブ状態から前記アイドル状態への遷移を開始した後から前記アイドル状態における前記コンピュータシステムの消費電力を監視し、所定の消費電力の閾値を超える前記消費電力を検出したとき、前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させ、その後、再度前記コンピュータシステムの動作状態を前記アイドル状態に遷移させるコントローラと、を備える。
【０００７】
上記の情報処理装置は、表示部をさらに備え、前記アイドル状態は、表示部の表示を停止した状態であって、所定のアクティブイベントに応じて前記表示部の表示が消えたままバックグラウンド処理を実行する状態と、迅速に前記アクティブ状態に復帰可能な低消費電力状態とを切り替え可能な状態であってもよい。
【０００８】
上記の情報処理装置は、第１筐体、第２筐体、および、前記第１筐体と前記第２筐体の位置関係を検出するセンサをさらに備え、前記アクティブ状態から前記アイドル状態への遷移条件は、少なくとも前記第１筐体が前記第２筐体に対して閉じられることを含み、前記コントローラは、前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させるとき、前記第１筐体が前記第２筐体に対して閉じたままで前記第１筐体が前記第２筐体に対して開いた状態を通知する際に出力される信号を前記コンピュータシステムに出力してもよい。
【０００９】
上記の情報処理装置は、自装置に電力を供給する電源回路を備え、前記コントローラは、前記電源回路からの電力の供給量を前記消費電力として監視してもよい。
【００１０】
上記の情報処理装置において、前記コントローラは、前記アクティブ状態への復帰の開始から所定時間経過後に、前記アクティブ状態から前記アイドル状態へ遷移させてもよい。
【００１１】
上記の情報処理装置は、前記コントローラによって制御可能な１以上の他のデバイスをさらに有し、前記コントローラは、前記デバイスごとに異常時における消費電力の時系列を示す消費電力パターンが予め設定され、前記消費電力パターンに基づいて、監視した前記消費電力の時系列に対応するデバイスを特定してもよい。
【００１２】
上記の情報処理装置において、前記コントローラは、特定したデバイスを再起動させてもよい。
【００１３】
本発明の他の態様に係る制御方法は、アクティブ状態とアイドル状態との間を遷移可能であって、前記アイドル状態は前記アクティブ状態よりも消費電力が少ない動作状態であるコンピュータシステムを備える情報処理装置における制御方法であって、前記アクティブ状態から前記アイドル状態への遷移を開始した後から前記アイドル状態における前記コンピュータシステムの消費電力を監視し、所定の消費電力の閾値を超える前記消費電力を検出したとき、前記コンピュータシステムの動作状態を前記アクティブ状態に復帰させる第１ステップと、その後、再度前記コンピュータシステムの動作状態を前記アイドル状態に遷移させる第２ステップと、を備える。
【発明の効果】
【００１４】
本発明の上記態様によれば、より確実に消費電力が減少する。
【図面の簡単な説明】
【００１５】
【図１】本実施形態に係る情報処理装置のハードウェアの構成例を示す概略ブロック図である。
【図２】本実施形態に係る情報処理装置の外観構成例を示す概略ブロック図である。
【図３】本実施形態に係る情報処理装置の機能構成例を示すブロック図である。
【図４】本実施形態に係るモード遷移準備処理の例を示すフローチャートである。
【図５】本実施形態に係るモード遷移準備処理が停止する原因の一例を示す図である。
【図６】本実施形態に係るモード遷移準備処理の一実行例を示すフローチャートである。
【図７】本実施形態に係るモード遷移準備処理の他の実行例を示すフローチャートである。
【図８】本実施形態に係るメインシステムの消費電力の例を示す図である。
【図９】異常時における消費電力パターンの第１例を示す図である。
【図１０】異常時における消費電力パターンの第２例を示す図である。
【図１１】異常時における消費電力パターンの第３例を示す図である。
【発明を実施するための形態】
【００１６】
まず、本発明の実施形態に係る情報処理装置１のハードウェア構成例について、図面を参照して説明する。以下の説明では、情報処理装置１が主にノートＰＣである場合を例にするが、これには限られない。情報処理装置１は、デスクトップＰＣ、タブレット端末装置、スマートフォンなど、いずれの形態で実現されてもよい。
【００１７】
図１は、本実施形態に係る情報処理装置１のハードウェアの構成例を示す概略ブロック図である。
情報処理装置１は、プロセッサ１１、システムメモリ１２、ビデオサブシステム１３、ディスプレイ１４、ＳｏＣ（Ｓｙｓｔｅｍ−ｏｎ−ａ−ｃｈｉｐ）２１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２２、ストレージ２３、入出力ＩＦ（Ｉｎｔｅｒｆａｃｅ）２４、カードリーダ２５、通信モジュール２６、オーディオシステム２７、ＥＣ（Ｅｍｂｅｄｄｅｄ  Ｃｏｎｔｒｏｌｌｅｒ）３１、入力部３２、センサ３３および電源回路３４を含んで構成される。他の観点では、情報処理装置１は、主たるコンピュータシステムとコントローラを備える。コンピュータシステムは、プロセッサ１１、およびシステムメモリ１２を備える。本願では、当該コンピュータシステムを、単にシステムまたは主システムと呼ぶことがある。コントローラは、ＥＣ３１を備える。
【００１８】
プロセッサ１１は、プログラム制御により各種の演算処理を行い、情報処理装置１全体の動作を制御する。プロセッサ１１は、例えば、１個または２個以上のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）からなる。
システムメモリ１２は、プロセッサ１１が実行するプログラムの読み込み領域、またはプログラムの実行により生成される処理データの書き込み作業領域として利用される書き込み可能メモリである。システムメモリ１２は、例えば、１個または２個以上のＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）チップを含んで構成される。実行プログラムには、例えば、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、周辺機器の動作を制御するためのドライバ、各種サービス／ユーティリティプログラム（以下、ユーティリティ）、アプリケーションプログラム（以下、アプリ）などが含まれる。なお、本願では、プログラムに記述された指令で指示される処理を行うことを、プログラムを実行する、プログラムの実行、などと呼ぶことがある。
【００１９】
ビデオサブシステム１３は、画像表示に関連する機能を実現するためのサブシステムである。ビデオサブシステム１３は、ビデオコントローラを含んで構成される。ビデオコントローラは、プロセッサ１１から入力される描画命令で指示される処理を行い、処理により得られる表示データを自部が有するビデオメモリに書き込む。ビデオコントローラは、ビデオメモリから書き込んだ表示データを読み出し、読み出した表示データをディスプレイ１４に出力する。
【００２０】
ディスプレイ１４は、ビデオサブシステム１３から入力される表示データに基づく画像を表示する。ディスプレイ１４は、例えば、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、ＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ  Ｄｉｓｐｌａｙ）などのいずれであってもよい。
【００２１】
ＳｏＣ２１は、プロセッサ１１と接続され、周辺入出力デバイスを用いた各種のデータの入出力を制御する。ＳｏＣ２１は、例えば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、シリアルＡＴＡ（Ａｄｖａｎｃｅｄ  Ｔｅｃｈｎｏｌｏｇｙ  Ａｔｔａｃｈｍｅｎｔ）、ＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）バス、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バス、ＰＣＩ−Ｅｘｐｒｅｓｓバス、およびＬＰＣ（Ｌｏｗ  Ｐｉｎ  Ｃｏｕｎｔ）バスなどのインタフェースを備え、それらに対応したデバイスを接続することができる。図１に示す例では、ＳｏＣ２１には、ＲＯＭ２２、ストレージ２３、入出力ＩＦ２４、カードリーダ２５、通信モジュール２６、およびオーディオシステム２７が接続されている。これらのデバイスは、情報処理装置１のサブシステムのサブシステムに相当する。また、ＳｏＣ２１に直接接続されているデバイスを親デバイスとし、他のデバイスが子デバイスとしてＳｏＣ２１に間接的に接続されてもよい。
【００２２】
ＲＯＭ２２は、電気的に書き換え可能とする不揮発性メモリを含んで構成される。ＲＯＭ２２には、例えば、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、ＥＣ３１などの動作を制御するためのシステムファームウェアなど、が記憶される。
ストレージ２３は、プロセッサ１１で実行される各種のプログラムやデータが記憶される。ストレージ２３は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、などである。
入出力ＩＦ２４は、他のデバイスと各種のデータを入出力可能に有線または無線で接続可能とするモジュールである。入出力ＩＦ２４は、例えば、シリアルバス規格の一種であるＴｈｕｎｄｅｒｂｏｌｔ（登録商標）規格に順じて他のデバイスと接続するためのコネクタを含んで構成される。入出力ＩＦ２４は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格に順じて接続するためのＵＳＢコネクタを備えてもよい。
【００２３】
カードリーダ２５は、記録媒体であるメモリカードを着脱可能とし、装着されたメモリカードからの各種のデータを読み出すための補助記憶装置である。カードリーダ２５は、自部に装着されたメモリカードへの各種のデータの書き込みを行ってもよい。なお、装着されるメモリカードは、カードリーダ２５を親デバイスとして、間接的にＳｏＣ２１に接続される。
通信モジュール２６は、ネットワークに有線または無線で接続し、ネットワークに接続された他の機器との間で各種のデータを送受信（通信）する。通信モジュール２６は、例えば、ＷＬＡＮ（Ｗｉｒｅｌｅｓｓ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）カードである。
オーディオシステム２７は、音声データを入出力する。オーディオシステム２７は、例えば、自部に入力される音声データに応じた音声を再生するスピーカと自部に到来する音を収音して音声データを取得するマイクロホンを含んで構成される。
【００２４】
ＥＣ３１は、プロセッサ１１やＳｏＣ２１とは独立に情報処理装置１の動作環境を監視（モニタ）し、情報処理装置１の動作状態を制御する。ＥＣ３１は、電源回路３４の動作を監視するための電源管理機能、および各種の入出力端子（図示せず）を備える。ＥＣ３１には、自部が備える入出力端子を用いて入力部３２、センサ３３、および電源回路３４が接続され、電源回路３４の動作を制御する。ＥＣ３１は、情報処理装置１の動作状態に対応した電源回路３４の制御を実行する。ＥＣ３１は、例えば、独自のプロセッサ、記憶部を含むマイクロコンピュータとして構成される。
【００２５】
本実施形態に係るＥＣ３１は、システムの消費電力を検出する。ＥＣ３１は、アクティブ状態からアイドル状態へのシステムの動作状態の遷移を開始した後、システムの消費電力が所定の消費電力の閾値を超えるとき、システムの動作状態をアクティブ状態に復元させる。その後、ＥＣ３１は、システムの動作状態のアイドル状態への遷移を再開させる。アクティブ状態は、情報処理装置１として期待される動作を実行可能とする通常動作モードである。これに対し、アイドル状態は、アクティブ状態よりも消費電力が少ない低消費電力モードである。アイドル状態では、一部の限定された機能を除き、情報処理装置１としてユーザにより期待される動作を実行しない。
【００２６】
入力部３２は、ユーザの操作を受け付け、受け付けた操作に応じた操作信号を生成し、生成した操作信号をＥＣ３１に出力する。入力部３２は、例えば、キーボード、タッチパッド、マウス等のポインティングデバイスのいずれか、またはそれらの任意のセットを含む。
【００２７】
センサ３３は、情報処理装置１の動作環境を検出し、検出した動作環境を示す検出信号をＥＣ３１に出力する。センサ３３は、例えば、動作環境として、ユーザの接近状態などに応じて変動する物理量を検出するセンサを含む。情報処理装置１が２個の筐体を備える場合には、センサ３３は、２個の筐体間の開閉状態に応じて変動する物理量を検出するためのセンサを含んでもよい。以下、２個の筐体を、それぞれ第１筐体６１、第２筐体６２と呼んで区別する。センサ３３は、例えば、赤外線センサ、静電容量センサ、磁気センサ、加速度センサ、応力センサ、などのいずれか、またはそれらの組み合わせでありうる。赤外線センサは、人物の体温に対応する波長の赤外線を検出し、検出した赤外線の強度に応じて人物の接近を検出する。静電容量センサは、人物の接近によるコンデンサの静電容量の増加を検出し、検出した静電容量は、人物の接近の検出に用いられる。磁気センサは、第１筐体６１と第２筐体６２のいずれか一方の一端に設置され、他方の筐体の一端に設置された永久磁石の磁場を検出する。磁場の大きさにより開閉状態が判定される。加速度センサは、２つの筐体のそれぞれに設置され、それぞれ重力の方向を検出する。検出された２つの重力の方向のなす角度は、第１筐体６１と第２筐体６２とのなす角度に相当し、この角度は開閉状態の判定に用いられる。応力センサは、第１筐体６１と第２筐体６２を係合するヒンジ部６３に、第１筐体６１と第２筐体６２の間の角度に応じて生ずる応力を検出する。
【００２８】
電源回路３４は、ＥＣ３１の制御に基づいて、情報処理装置１を構成する各デバイスへの電力の供給ならびに供給される電力の調整を行う。電源回路３４は、例えば、電源制御回路３５、ＤＣ／ＤＣ（Ｄｉｒｅｃｔ  Ｃｕｒｒｅｎｔ／Ｄｉｒｅｃｔ  Ｃｕｒｒｅｎｔ）コンバータ３６、電圧検出器３７および充放電ユニット３８を含んで構成される。
情報処理装置１の筐体には、電池ユニット５２を着脱可能とする電池格納部（図示せず）が設けられる。情報処理装置１には、電池ユニットの装着を検出するための装着検出ラインが設置されている。ＥＣ３１は、装着検出ラインを用いて電池ユニット５２が電池格納部に装着されたか否かを検出することができる。
【００２９】
電源制御回路３５は、例えば、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）で構成される。ＡＳＩＣは、論理回路、トランジスタ、レジスタおよび抵抗などの受動素子を含んで構成される。電源制御回路３５は、プロセッサを含まず、基本的な素子だけで構成されるため、消費電力はごくわずかである。電源制御回路３５には、電圧検出器３７、ＤＣ／ＤＣコンバータ３６、装着検出ライン（図示せず）および電源ボタン５３が接続される。
【００３０】
電源制御回路３５のレジスタには、例えば、動作状態ごとの電源制御情報が記憶される。電源制御情報は、電力の供給先となるデバイスの情報が含まれてもよい。電源制御情報には、デバイスごとの電圧、電流などの情報が含まれてもよい。電源制御回路３５は、ＳｏＣ２１またはＥＣ３１から動作状態を示す動作状態情報が入力されるとき、動作状態情報が示す動作状態に対応する電源制御情報をレジスタから読み取り、読み取った電源制御情報をＤＣ／ＤＣコンバータ３６に出力する。従って、ＥＣ３１は、電源制御回路３５を用いて動作モードに応じてＤＣ／ＤＣコンバータ３６の動作を制御することができる。
【００３１】
ＥＣ３１は、情報処理装置１を構成するコンピュータシステムの動作状態に応じて電源回路３４の動作を制御する。動作状態の指標として、例えば、ＡＣＰＩ（Ａｄｖａｎｃｅｄ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  ａｎｄ  Ｐｏｗｅｒ  Ｉｎｔｅｒｆａｃｅ）に規定されたパワーステートが用いられてもよい。ＡＣＰＩでは、６段階のパワーステートとしてＳ０状態〜Ｓ５状態が定義されている。Ｓ０状態〜Ｓ５状態の順に消費電力が少ない状態または深いアイドル状態を示す。深いアイドル状態とは、アクティブ状態への復帰時間が長い状態である。その他、Ｓ０状態は、アクティブ状態に相当し、６段階のパワーステートのうち最も消費電力が多い状態である。Ｓ１状態〜Ｓ５状態は、それぞれアイドル状態に相当し、その順で消費電力が少ない状態または深いスリープ状態を示す。本実施形態に係るシステムは、動作状態としてアクティブ状態に相当するＳ０状態、アイドル状態の一例であるモダンスタンバイモード、および、より深いアイドル状態の一例であるＳ４状態のいずれかの状態をとりうる。ＥＣ３１も、Ｓ０状態、モダンスタンバイモード、およびＳ４状態に対応している。モダンスタンバイモードとは、表示部として機能するディスプレイ１４の表示を停止した状態で、Ｓ０ｉｘ状態と、バックグラウンド処理が実行されるＳ０状態とを切り替えて使用される動作状態を意味する。Ｓ０ｉｘ状態は、Ｓ０状態よりも消費電力が少なく、かつ、Ｓ１状態よりも消費電力が多いアイドル状態の一形態であり、アクティブイベント（後述）の検出に応じて、より深いアイドル状態よりも迅速にＳ０状態に復帰可能な動作状態を指す。バックグラウンド処理とは、ディスプレイ１４の表示を伴わずに裏側（バックグラウンド）で実行される処理を意味する。バックグラウンド処理は、例えば、各種プログラムや設定データの更新など、必ずしもユーザへの実行の通知を要しない処理が該当する。
【００３２】
Ｓ０状態では、電源回路３４は、情報処理装置１に物理的に接続された全てのデバイスに電力を供給する。Ｓ０ｉｘ状態では、ビデオサブシステム１３とディスプレイ１４への電力の供給が停止されてもよい。Ｓ４状態では、さらにＲＯＭ２２、ストレージ２３、カードリーダ２５、通信モジュール２６、オーディオシステム２７、およびシステムメモリ１２への電力の供給が停止されてもよい。他方、Ｓ４状態では、ＳｏＣ２１、ＥＣ３１、センサ３３および電源制御回路３５、ＡＣ／ＤＣアダプタ５１、電池ユニット５２への電力の供給が継続されてもよい。
電源回路３４は、各デバイスに供給される電力を消費電力として検出し、検出した消費電力を示す消費電力情報としてＥＣ３１に出力する。
【００３３】
ＤＣ／ＤＣコンバータ３６は、電源制御回路３５による制御のもとで、ＡＣ／ＤＣアダプタ５１または電池ユニット５２から供給される電力の電圧を情報処理装置１の各デバイスで要求される電圧に変換する。ＤＣ／ＤＣコンバータ３６は、電源制御回路３５から入力される電源制御情報で示される供給先のデバイスに変換した電力を供給する。電源制御情報にデバイスごとの電圧の情報が含まれる場合には、ＤＣ／ＤＣコンバータ３６は、供給される電力の電圧を電源制御情報で指示される電圧に変換し、対応するデバイスに電圧を変換した電力を供給する。
【００３４】
電圧検出器３７は、ＡＣ／ＤＣアダプタ５１から供給される電力の電圧を検出し、検出した電圧が所定の範囲内の電圧であるか否かを判定する。電圧検出器３７は、検出した電圧が所定の判定内の電圧であるか否かを示す電圧検出信号を電源制御回路３５に出力する。また、電源制御回路３５は、電圧検出器３７から入力される電圧検出信号をレジスタに記録する。
【００３５】
ＡＣ／ＤＣ（Ａｌｔｅｒｎａｔｉｖｅ  Ｃｕｒｒｅｎｔ／Ｄｉｒｅｃｔ  Ｃｕｒｒｅｎｔ）アダプタ５１は、情報処理装置１の筐体の表面に設けられた電源端子に接続可能とする。ＡＣ／ＤＣアダプタ５１は、情報処理装置１の筐体に組み込まれ、一体化されてもよい。
ＡＣ／ＤＣアダプタ５１は、一端が商用電源のアウトレットに接続され、他端がＤＣ／ＤＣコンバータ３６に接続される。ＡＣ／ＤＣアダプタ５１は、商用電源から供給される交流電力を直流電力に変換し、変換した直流電力をＤＣ／ＤＣコンバータ３６に供給する。
電池ユニット５２は、ＡＣ／ＤＣアダプタ５１が情報処理装置１に接続されていないとき、自部に蓄積された電力をＤＣ／ＤＣコンバータ３６に充放電ユニット３８を用いて供給する（放電）。電池ユニット５２は、ＡＣ／ＤＣアダプタ５１から供給される電力を、充放電ユニット３８を用いて蓄積する（充電）。
電源ボタン５３は、ユーザが電源のオン／オフを操作するために用いられる。電源ボタン５３は、操作により情報処理装置１の動作を完全に停止した状態から起動させることができる。
【００３６】
電源制御回路３５は、電源ボタン５３の押下を示す押下信号をレジスタに記録する。ＥＣ３１は、レジスタを参照し押下信号の有無を判定することもできる。なお、ＥＣ３１は、電源ボタン５３から入力される押下信号を検出してもよい。ＥＣ３１は、情報処理装置１の動作が停止しているときに押下信号を検出するとき、情報処理装置１のすべてのデバイスを供給先として示す電源制御情報を読み出し、ＤＣ／ＤＣコンバータ３６に出力する（起動）。ＥＣ３１は、情報処理装置１（プロセッサ１１を含む）の起動を開始した後は、電源制御回路３５のレジスタに記録した押下信号を消去する。また、ＥＣ３１は、情報処理装置１が通常動作モードで動作しているときに、押下信号を検出するとき、情報処理装置１のすべてのデバイスへの電力の供給停止を示す電源制御情報を読み出し、ＤＣ／ＤＣコンバータ３６に出力する（動作停止）。
【００３７】
なお、情報処理装置１が、ノートＰＣとして構成される場合には、図２に例示されるように第１筐体６１、第２筐体６２、およびヒンジ部６３を備える。図１に示すＡＣ／ＤＣアダプタ５１以外の、各構成部は、第１筐体６１と第２筐体６２のいずれか一方に収容されうる。第１筐体６１、第２筐体６２は、厚みが、幅と奥行よりも小さい平べったい直方体の形状を有する。第１筐体６１と第２筐体６２のそれぞれの主面の長辺に沿って、ヒンジ部６３が係合され、その長辺に平行な回転軸周りに相対的に回動可能とする。従って、第１筐体６１と第２筐体６２の間の開き角θが可変となる。開き角θは、第１筐体６１と第２筐体６２の相互に対面する面（以下、内面）間のなす角度である。図２に示す例では、第１筐体６１の内面にキーボードＫＢが配置され、第２筐体６２の内面にディスプレイ１４が配置される。この配置のもとでは、第１筐体６１が第２筐体６２に対して閉じた状態では、ユーザによる使用は期待されない。
【００３８】
次に、本実施形態に係る情報処理装置１の機能構成例について説明する。図３は、本実施形態に係る情報処理装置１の機能構成例を示すブロック図である。情報処理装置１は、メインシステム１１０、制御部１２０、記憶部１５５、検出部１６０、通信部１６５、操作入力部１７０、収音部１７５および表示出力部１８０を含んで構成される。図３では、電力供給系をなす電源回路３４、ＡＣ／ＤＣアダプタ５１、電池ユニット５２、および電源ボタン５３の図示が省略されている。
【００３９】
メインシステム１１０は、情報処理装置１のコンピュータシステムの主要部である。プロセッサ１１は、所定のプログラム（例えば、ユーティリティ）を実行してメインシステム１１０の機能を実現する。メインシステム１１０は、モード制御部１１２と、リソース管理部１１４と、を含んで構成される。
モード制御部１１２は、メインシステムの動作状態に基づいて動作モードを制御する。リソース管理部１１４は、プロセッサ１１による各種のプログラムの実行を制御し、その実行に用いられるリソースを管理する。
【００４０】
制御部１２０は、情報処理装置１の動作環境や使用状況に基づいて、情報処理装置１の動作を制御する。ＥＣ３１は、所定のプログラムを実行して、制御部１２０の機能を実現する。制御部１２０は、イベント検出部１２２、電力監視部１２４およびモード制御部１２６を含んで構成される。
イベント検出部１２２は、情報処理装置１の動作環境または使用状況に応じて、プロセッサ１１の動作状態を遷移させる契機とするイベントを検出する。かかるイベントには、動作状態をアイドル状態からアクティブ状態に遷移させる契機とするイベント（以下、アクティブイベント）と、動作状態をアクティブ状態からアイドル状態に遷移させる契機とするイベント（以下、アイドルイベント）がある。アクティブイベント、アイドルイベントは、それぞれ動作状態をアイドル状態からアクティブ状態とする遷移条件を満たす事象、動作状態をアクティブ状態からアイドル状態とする遷移条件を満たす事象と捉えることもできる。アクティブイベントとアイドルイベントの例については、後述する。
電力監視部１２４は、電源回路３４から情報処理装置１の各部（主にメインシステム１１０）に供給される電力を消費電力として監視（モニタ）する。
モード制御部１２６は、イベント検出部１２２が検出したイベントと電力監視部１２４が監視した消費電力のいずれかまたは両者に基づいてメインシステム１１０の動作を制御する。
【００４１】
記憶部１５５は、システムメモリ１２、ＲＯＭ２２、ストレージ２３などの記憶媒体の他、カードリーダ２５に装着された記憶媒体、ＳｏＣ２１、ＥＣ３１の記憶媒体を含んで構成される。
検出部１６０、通信部１６５、操作入力部１７０、収音部１７５、表示出力部１８０は、それぞれ上記のセンサ３３、通信モジュール２６、入力部３２、オーディオシステム２７、ディスプレイ１４に相当する。
【００４２】
次に、メインシステム１１０が実行する処理について、より詳細に説明する。
モード制御部１１２は、情報処理装置１全体の動作モードとしてＧ０状態、Ｓ０ｉｘ状態、Ｇ１状態およびＧ３状態の相互間で遷移可能とする。そのうち、Ｇ０状態、Ｇ１状態およびＧ３状態が、所定の４段階のグローバルシステムステートのうちの３段階の状態に相当する。Ｇ０状態は、パワーステートとしてのＳ０状態、つまりアクティブ状態に相当する。Ｓ０ｉｘ状態およびＧ１状態がアイドル状態に相当する。Ｇ１状態は、パワーステートとしてのＳ４状態に相当する。Ｇ３状態は、電源供給系以外の情報処理装置１への電力の供給が停止し、待機電力が発生しないもしくは極めて少ない停止状態である。Ｇ３状態は、メカニカルオフステートとも呼ばれる。従って、Ｇ０状態よりもＧ１状態の方がシステムの消費電力が少ない。また、Ｇ１状態よりもＧ３状態の方がＧ０状態への復帰時間が長くなり、一般的にはシステムの消費電力が少ない。
【００４３】
Ｓ０ｉｘ状態は、Ｓ０状態を拡張した動作モードであるが、Ｓ０状態よりも消費電力が少ないアイドル状態である。但し、Ｓ０ｉｘ状態ではシステムメモリ１２への給電が維持されるため、Ｓ０ｉｘ状態では、Ｓ３状態よりも迅速に通常動作モードに変更されるが消費電力が多い。また、Ｓ０ｉｘ状態において、モード制御部１１２は、所定のアクティブイベントを検出するとき、動作状態をアクティブ状態（Ｓ０状態）に切り替える。モード制御部１１２は、例えば、制御部１２０またはリソース管理部１１４からアクティブイベントを示す通知情報が入力されることでアクティブイベントが通知される。例えば、制御部１２０からの通知情報が示すアクティブイベントには、情報処理装置１に備わる第１筐体６１、第２筐体６２が開いた状態、操作入力部１７０からの操作信号の入力、などがある。リソース管理部１１４からの通知情報が示すアクティブイベントは、Ｓ０ｉｘ状態で提供される所定の限定された機能（以下、限定機能）を実行して検出される所定の事象、などがある。所定の事象は、例えば、常時接続による新たな電子メールの受信、発話検出による音声コマンドの認識、指紋などのユーザ認証情報の取得によるユーザ認証、など、ユーザによる情報処理装置１の使用意思を推認させる事象がある。
【００４４】
より具体的には、電子メールの受信に際し、リソース管理部１１４は、所定のメールアプリを実行して電子メールを受信する際、通信部１６５を用いて所定のメールサーバに自装置宛の電子メール受信要求を送信する。リソース管理部１１４は、メールサーバから電子メール受信要求に対する応答として、自装置宛の新たな電子メールを受信してストレージ２３に蓄積する。その後、モード制御部１１２は、動作状態をアクティブ状態からアイドル状態に変更してもよい。音声コマンドの認識に際し、リソース管理部１１４は、所定の音声認識アプリを実行して、オーディオシステム２７から入力される音声データを待ち受ける。リソース管理部１１４は、入力される音声データに対して音声認識処理を行い、認識結果として得られる発話情報が予め定めた音声コマンドであるか否かを判定する。リソース管理部１１４が、発話情報が予め定めた音声コマンドであると判定するとき、モード制御部１１２は、プロセッサ１１の動作状態をＳ０ｉｘ状態からＳ０状態に変更する。リソース管理部１１４は、判定した音声コマンドで指示される処理を実行する。ユーザ認証に際し、例えば、所定のユーティリティを実行して検出部１６０から入力される認証情報と予め登録したユーザの認証情報とを照合し、両者が合致すると判定とき、モード制御部１１２は、システムの動作状態をＳ０ｉｘ状態からＳ０状態に変更する。認証情報は、例えば、指紋、虹彩、静脈パターンなどのいずれであってもよいし、検出部１６０として、認証情報を取得する可能とするデバイス（例えば、指紋センサ、虹彩、静脈パターンを撮影するためのカメラ）が含まれればよい。
【００４５】
他方、モード制御部１１２は、動作状態がＳ０状態であり、アイドル状態に変更する契機とするアイドルイベントを検出するとき、プロセッサ１１の動作状態をアクティブ状態であるＳ０状態からアイドル状態であるＳ０ｉｘ状態に変更する。モード制御部１１２は、例えば、制御部１２０またはリソース管理部１１４からアイドルイベントを示す通知情報が入力されることでアイドルイベントが通知される。例えば、制御部１２０からの通知情報が示すアイドルイベントは、情報処理装置１に備わる２個の筐体が閉じた状態、所定の文字入力キー（例えば、ホットキー）の押下、またはＯＳの設定画面に表示されるスリープメニューの選択、などがある。また、モード制御部１１２には、リソース管理部１１４からプロセッサ１１の使用率を示す通知情報が所定時間ごとに入力され、プロセッサ１１の使用率が所定の使用率（例えば、１〜５％）以下であって、操作入力部１７０から操作信号が入力されない時間が継続して所定時間（例えば、３〜１５分）以上経過する状態をアイドルイベントとして検出してもよい。
【００４６】
本実施形態では、モード制御部１１２は、プロセッサ１１の動作状態の変更を開始するとき、動作状態の変更開始を示す動作状態変更開始通知を制御部１２０に出力してもよい。
モード制御部１１２は、制御部１２０からアクティブ状態への遷移（起動）を示すモード遷移指示が入力されるとき、プロセッサ１１の動作状態をＳ０ｉｘ状態からＳ０状態に変更する。このとき、モード制御部１１２は、情報処理装置１の使用状況としてプロセッサ１１の動作状態をアクティブ状態であるＳ０状態からアイドル状態であるＳ０ｉｘ状態に変化させる遷移条件を解消する使用状況の一例としてアクティブイベントを示す通知情報が制御部１２０から入力されることがある。
モード制御部１１２は、制御部１２０からアイドル状態への遷移（スリープ）を示すモード遷移指示が入力されるとき、プロセッサ１１の動作状態をＳ０状態からＳ０ｉｘ状態に変更する。
【００４７】
なお、モード制御部１１２に情報処理装置１の使用予定期間を示すモード設定情報が予め設定されている場合には、モード制御部１１２はアイドル状態であるＳ０ｉｘ状態とより深いアイドル状態であるＳ４状態との相互間の遷移を実行してもよい。より具体的には、その時点の時刻が使用予定期間内から使用予定期間外になるとき、モード制御部１１２は、プロセッサ１１の動作状態をＳ０ｉｘ状態からＳ４状態に制御する。他方、その時点の時刻が使用予定期間外から使用予定期間内になるとき、モード制御部１１２は、プロセッサ１１の動作状態をＳ４状態からＳ０ｉｘ状態に制御する。使用予定時間は、曜日ごと、または平日と休日の区別ごとに、情報処理装置１が通常使用される時間帯である。使用予定時間は、所定の設定メニューに従ってユーザの操作に応じて設定可能であってもよいし、動作ログに記録された日ごとの最初の起動時刻と最後の停止時刻に基づいて設定されてもよい。
【００４８】
次に、制御部１２０が実行する処理について、より詳細に説明する。
イベント検出部１２２は、操作入力部１７０から入力される操作信号または通信部１６５から入力される検出信号に基づいて、情報処理装置１の動作モードを制御する契機とする動作環境、使用状況、またはそれらの変化をアクティブイベントまたはアイドルイベントとして検出する。イベント検出部１２２は、例えば、次の事象をアクティブイベントとして検出する。第１筐体６１が第２筐体６２に対して開いた状態（即ち、開き角θが所定の開き角（例えば、４５°〜９０°）以上である状態）、操作入力部１７０からの操作信号の入力、など。ここで、イベント検出部１２２は、検出部１６０から入力される検出信号に基づいて第１筐体６１の第２筐体６２に対する開閉状態を判定することができる。
【００４９】
他方、イベント検出部１２２は、次の事象をアイドルイベントとして検出する。第１筐体６１が第２筐体６２に対して閉じた状態（即ち、開き角θが所定の開き角（例えば、４５°〜９０°）未満となる状態）、所定の文字入力キーの選択（例えば、ＯＳの設定画面からの操作入力部１７０から入力される操作信号での文字入力キーの指示）、スリープメニューの選択（例えば、ＯＳの設定画面に配置された複数の各種メニューのうち操作入力部１７０から入力される操作信号でのスリープメニューの指示）、などがある。見方を変えれば、アクティブイベントは、アイドル状態からアクティブ状態への遷移条件を満たす動作状態または使用状況とみなすことができる。アイドルイベントは、アクティブ状態からアイドル状態への遷移条件を満たす動作状態または使用状況とみなすことができる。
イベント検出部１２２は、検出したイベントを示す通知情報をモード制御部１２６に出力する。
【００５０】
電力監視部１２４は、電源回路３４から入力される消費電力情報が示す消費電力（主にメインシステム１１０の消費電力）を所定の時間間隔（例えば、１〜１５秒）で監視（モニタ）する。電力監視部１２４は、入力される消費電力情報をモード制御部１２６に出力する。
【００５１】
モード制御部１２６は、イベント検出部１２２から入力される通知情報と電力監視部１２４から入力される消費電力情報の一方または両方に基づいて、メインシステム１１０の動作状態を制御する。モード制御部１２６は、メインシステム１１０のアクティブ状態からアイドル状態への遷移を開始した後、入力される消費電力情報が示す消費電力が所定の再起動判定閾値を超えるとき、メインシステム１１０の動作状態をアクティブ状態に一旦復元する。
モード制御部１２６は、例えば、メインシステム１１０のモード制御部１１２からアクティブ状態からアイドル状態への変更開始を示す動作状態変更開始通知が入力されるとき、メインシステム１１０のアクティブ状態からアイドル状態への遷移の開始を検出する。モード制御部１２６は、例えば、イベント検出部１２２からの最後のアクティブイベントを示す通知情報の入力後、アイドルイベントを示す通知情報が入力されるとき、アクティブ状態からアイドル状態への遷移を推定してもよい。その場合には、モード制御部１１２からの動作状態変更開始通知の出力と、モード制御部１２６における動作状態変更開始通知の待ち受けが省略されてもよい。
【００５２】
モード制御部１２６は、メインシステム１１０の動作状態をアクティブ状態に復元する際、アクティブ状態への遷移を示すモード遷移指示をモード制御部１１２に出力する。
その後、モード制御部１２６は、メインシステム１１０の動作状態をアイドル状態に再度遷移させる。モード制御部１２６は、メインシステム１１０の動作状態をアイドル状態に遷移させる際、アイドル状態への遷移を示すモード遷移指示をモード制御部１１２に出力する。
【００５３】
なお、メインシステム１１０の動作状態をアクティブ状態に復元する前に、所定のアイドルイベントを示す通知情報が入力されるときアクティブ状態からアイドル状態への遷移を推定する場合がある。その場合には、モード制御部１２６は、メインシステム１１０の動作状態をアクティブ状態に復元する際に、アイドル状態への遷移条件を解消する使用状況を示す通知情報をメインシステム１１０のモード制御部１１２に出力してもよい。かかる使用状況は、現実とは異なる仮想的な使用状況でもよく、例えば、２つの筐体が閉じた状態をアイドルイベントとする場合、２つの筐体が開いた状態を示すアクティブイベントのように、最後のアイドルイベントに相反する使用状況でありうる。メインシステム１１０のモード制御部１１２は、制御部１２０のモード制御部１２６から、このアクティブイベントを示す通知情報が入力される場合、動作状態をアクティブ状態に変更することができる。そのため、制御部１２０のモード制御部１２６は、この通知情報を出力する場合には、必ずしもアクティブ状態への遷移を示すモード遷移指示をモード制御部１１２に出力しなくてもよい。
アイドル状態への遷移条件を解消する使用状況は、例えば、操作入力部１７０からの操作信号の入力が所定時間以上継続して検出されない場合をアイドルイベントとする場合、操作入力部１７０からの操作信号の入力であってもよい。この操作信号の入力もアクティブイベントの一例である。メインシステム１１０のモード制御部１１２は、制御部１２０のモード制御部１２６から、このアクティブイベントを示す通知情報が入力される場合も、動作状態をアクティブ状態に変更することができる。
このように、現実にアイドル状態への遷移条件を解消する使用状況が生じていても、アイドル状態への遷移条件を解消する使用状況をメインシステム１１０に通知することで、メインシステム１１０の動作状態のアイドル状態への遷移を阻止し、アクティブ状態への動作状態を確実に変更することができる。
【００５４】
次に、アクティブ状態からアイドル状態へのモード遷移の準備に係る処理（以下、モード遷移準備処理）の例について説明する。
図４は、本実施形態に係るモード遷移準備処理の例を示すフローチャートである。
モード制御部１１２は、自システムの動作状態がアクティブ状態（通常動作モード）であってアクティブイベントが検出されるときに図４に示す処理を開始する。アクティブ状態は、非コネクテッドスタンバイ段階（Ｎｏ−ＣＳ（Ｃｏｎｎｅｃｔｅｄ  Ｓｔａｎｄｂｙ）ｐｈａｓｅ）とも呼ばれる。
【００５５】
（ステップＳ１０２）モード制御部１１２は、通信部１６５を経由して自装置に接続されている他の装置の有無を確認する（接続確認）。ステップＳ１０２の処理は、接続段階（Ｃｏｎｎｅｃｔｉｏｎ  ｐｈａｓｅ）とも呼ばれる。モード制御部１１２は、接続されている他の装置が存在するとき、ステップＳ１０４の処理に進み、接続されている他の装置が存在しないとき、図３に示す処理を中止する。
（ステップＳ１０４）モード制御部１１２は、所定の限定されたアプリ以外に、ＯＳ上のフォアグランドで実行中のアプリの有無を確認する（フォアグランドアプリ実行確認）。ステップＳ１０４の処理は、ＰＬＭ段階（Ｐｒｏｃｅｓｓ  Ｌｉｆｅｔｉｍｅ  Ｍａｎａｇｅｒ  ｐｈａｓｅ）とも呼ばれる。モード制御部１１２は、実行中のアプリが存在するとき、ステップＳ１０６の処理に進み、実行中のアプリが存在しないとき、図４に示す処理を中止する。
【００５６】
（ステップＳ１０６）モード制御部１１２は、実行中のメンテナンスタスクの有無を確認する（メンテナンスタスク実行確認）。ステップＳ１０６の処理は、メンテナンス段階（Ｍａｉｎｔｅｎａｎｃｅ  ｐｈａｓｅ）とも呼ばれる。モード制御部１１２は、実行中のメンテナンスタスクが存在するとき、ステップＳ１０８の処理に進み、実行中のメンテナンスタスクの終了を待機し、終了後にステップＳ１０８の処理に進む。
（ステップＳ１０８）モード制御部１１２は、アプリによる電力要求の撤回（ｄｒｏｐ）または所定時間（例えば、３〜１５分）経過後に強制的に消費電力を所定の消費量以下に低減する（アクティビティ調整）。ステップＳ１０８の処理は、ＤＡＭ段階（Ｄｅｓｋｔｏｐ  Ａｃｔｉｖｉｔｙ  Ｍｏｄｅｒａｔｏｒ  ｐｈａｓｅ）とも呼ばれる。その後、モード制御部１１２は、ステップＳ１１０の処理に進む。
【００５７】
（ステップＳ１１０）モード制御部１１２は、ビデオサブシステム１３およびＳｏＣ２１を用いて直接ならびに間接的に接続されている各デバイスにアクティブ状態からアイドル状態への遷移を示す通知情報を出力する（低電力通知）。ステップＳ１１０の処理は、低電力段階（Ｌｏｗ−ｐｏｗｅｒ  ｐｈａｓｅ）とも呼ばれる。
（ステップＳ１１２）各デバイスは、モード制御部１１２からアイドル状態への遷移を示す通知情報を受信する。この通知情報が受信された段階は、弾力性通知段階（Ｒｅｓｉｌｉｅｎｃｙ  ｎｏｔｉｆｉｃａｔｉｏｎ  ｐｈａｓｅ）とも呼ばれる。その後、各デバイスは、動作状態を標準の動作状態よりも消費電力がより少ない動作モードに変更、または動作を停止する（低電力モード／停止処理）。アイドル状態において動作が期待されないデバイスは、動作を停止してもよい。かかるデバイスは、例えば、ビデオサブシステム１３、ディスプレイ１４、ストレージ２３、入出力ＩＦ２４、カードリーダ２５などである。Ｓ０ｉｘ状態において、所定の限定された機能の提供に用いられるデバイスは、その機能の維持もしくはアクティブ状態への復元に要する消費電力にまで低減することができる。かかるデバイスは、例えば、ＥＣ３１、入力部３２、センサ３３、通信モジュール２６、およびオーディオシステム２７などである。他方、メインシステム１１０の動作状態は、低電力モード（アイドル状態）に遷移し、図４に示す処理を終了する。モード制御部１１２は、この段階において、さらに消費電力が低い動作状態（例えば、Ｓ４状態）に遷移することができる。この状態は、弾力性段階（Ｒｅｓｉｌｉｅｎｃｙ  ｐｈａｓｅ）とも呼ばれる。
【００５８】
図４に例示されるモード遷移準備処理は、複数の段階を有し、それらが順次実行される。そのため、ある段階の処理が完了しない場合には、以降の段階の処理に進まず、ひいてはアイドル状態への遷移が完了しない。そのため、情報処理装置１のシステム全体としての消費電力が十分に低減しない。例えば、ステップＳ１１２において、あるデバイスの動作が停止しない場合には、メインシステム１１０もそのデバイスの動作に対応したデバイス管理やリソース管理を行うため、動作状態をアイドル状態に移行することができない。
【００５９】
このような事象は、図５に例示されるように、動作状態をアクティブ状態からアイドル状態に遷移する直前に、入出力ＩＦ２４に接続されていた他デバイスＮＤが、入出力ＩＦ２４から除去されるときに生じることがある。これは、他デバイスＮＤが入出力ＩＦ２４から除去された時刻から、モード制御部１１２に他デバイスＮＤの除去が通知される通知時刻までの遅延（ｌａｔｅｎｃｙ）が一因となる。ＳｏＣ２１は、所定時間ごとに自部に直接または間接的に接続されるデバイスを監視し、新たに接続されたデバイスまたは新たに接続が切断されたデバイスを検出する。ＳｏＣ２１は、接続または切断のイベントと検出したデバイスを示すイベント通知をプロセッサ１１に出力する。そのため、他デバイスＮＤの除去から、他デバイスＮＤの除去がモード制御部１１２に通知されるまでに遅延が生ずる。
【００６０】
図６に例示されるように遅くともステップＳ１１０の処理の開始時刻よりもモード制御部１１２への他デバイスＮＤの除去の通知時刻の方が早ければ、ステップＳ１１０の処理は、他デバイスＮＤが存在しないことが認識された状態で実行される。そのため、ステップＳ１１０の処理、ひいては図４の処理が正常に終了する。他方、図７に例示されるように、ステップＳ１１０の処理の開始時刻よりもモード制御部１１２への他デバイスＮＤの除去の通知時刻の方が遅ければ、ステップＳ１１０の処理は、他デバイスＮＤが接続されていることを前提に試行される。しかしながら、その時点では、現実には他デバイスＮＤは接続されていないためステップＳ１１０の処理が完了しない。かかる事象は、たとえ、他デバイスＮＤの除去が動作状態の遷移に係る処理の開始時刻よりも前であっても生じうる。そのため、消費電力が十分に低減しないことがあった。
なお、動作状態の遷移直前のハードウェアの除去の他、アプリの実行終了、無応答（サスペンド）などがステップＳ１０８の処理を終了できない要因となり、動作状態の遷移が完了しない事象が発生させうる。
【００６１】
これに対し、本実施形態では、動作状態の遷移が開始されても消費電力が再起動判定閾値を超えるとき、モード制御部１２６は、メインシステム１１０の動作状態をアクティブ状態に一旦復元する。そして、モード制御部１２６は、メインシステム１１０の動作状態をアイドル状態に遷移する処理を試行させる。動作状態の遷移に係る処理が停止する原因が新たに発生しなければ、動作状態の遷移が完了する。そのため、消費電力をより確実に低減することができる。
【００６２】
次に、本実施形態に係るモード遷移処理の例について説明する。
図８は、本実施形態に係るメインシステム１１０の消費電力の例を示す図である。縦軸、横軸は、それぞれ消費電力、時刻を示す。図８は、メインシステム１１０の当初の動作状態がアクティブ状態（通常動作モード）であるときに、一連の処理が開始され、一連の処理のステップごとの消費電力の時間変化を例示する。
【００６３】
（ステップＳ２０２）制御部１２０のイベント検出部１２２は、検出部１６０からの検出信号と操作入力部１７０からの操作信号の入力を監視する。イベント検出部１２２は、アイドルイベントとして所定のユーザ操作（例えば、第１筐体６１を第２筐体６２に対して閉じること）を検出するか否かを判定する。イベント検出部１２２は、検出したアイドルイベントを示す通知情報をメインシステム１１０に出力する。メインシステム１１０のモード制御部１１２は、メインシステム１１０の動作状態のアクティブ状態からアイドル状態への遷移に対するモード遷移準備の実行を開始する（低電力モードに遷移開始）。モード遷移準備の進行によりメインシステム１１０の消費電力が減少する。その後、ステップＳ２０４の処理に進む。
【００６４】
（ステップＳ２０４）制御部１２０の電力監視部１２４は、メインシステム１１０の消費電力をアイドルイベントの検出から所定の第１期間Ｔ１監視する。第１期間Ｔ１は、モード遷移準備にかかる所要時間以上となればよい。イベント検出部１２２は、第１期間Ｔ１の終了時における消費電力が所定の再起動判定閾値よりも多いか否かを判定する。再起動判定閾値は、メインシステム１１０の動作状態がアイドル状態であるときの消費電力よりも多く、動作状態がアクティブ状態であるときの消費電力よりも少なければよい。この時点における消費電力が再起動判定閾値よりも多い場合、ステップＳ２０６の処理に進む。消費電力が再起動判定閾値以下となる場合、ステップＳ２１２の処理に進む。
【００６５】
（ステップＳ２０６）制御部１２０のモード制御部１２６は、メインシステム１１０の動作状態をアクティブ状態（通常動作モード）に遷移させる。ここで、モード制御部１２６は、アクティブ状態への遷移を示すモード遷移指示をメインシステム１１０に出力する。メインシステム１１０のモード制御部１１２は、メインシステム１１０の動作状態をアイドル状態からアクティブ状態（通常動作モード）に遷移する。メインシステム１１０の消費電力は、アイドル状態への遷移前の状態に増加する。
モード制御部１２６は、ステップＳ２０２において検出したアイドルイベントに相反するアクティブイベントが存在する場合には、そのアクティブイベント（例えば、第１筐体６１を第２筐体６２に対して開くこと）を示す通知情報をモード制御部１１２に出力する。その後、ステップＳ２０８の処理に進む。
【００６６】
（ステップＳ２０８）モード制御部１２６は、さらに所定の第２期間Ｔ２待機した後、メインシステム１１０の動作状態をアイドル状態（低電力モード）に遷移させる。イベント検出部１２２は、検出したアイドルイベントを示す通知情報をメインシステム１１０に出力する。メインシステム１１０のモード制御部１１２は、メインシステム１１０の動作状態のアクティブ状態からアイドル状態への遷移に対するモード遷移準備の実行を再開する。モード遷移準備の進行によりメインシステム１１０の消費電力が減少する。その後、ステップＳ２１０の処理に進む。第２期間Ｔ２は、メインシステム１１０の動作状態のアイドル状態からアクティブ状態への遷移に係る処理の所要時間以上となればよい。その後、ステップＳ２１０の処理に進む。
【００６７】
（ステップＳ２１０）制御部１２０の電力監視部１２４は、メインシステム１１０の消費電力をアイドルイベントの検出から再度所定の第１期間Ｔ１監視する。イベント検出部１２２は、第１期間Ｔ１の終了時における消費電力が再起動判定閾値よりも多いか否かを判定する。この時点における消費電力が再起動判定閾値よりも多い場合、ステップＳ２０６に戻り、ステップＳ２０６からステップＳ２１０の処理を繰り返してもよい。消費電力が再起動判定閾値以下となる場合、ステップＳ２１２の処理に進む。
【００６８】
（ステップＳ２１２）制御部１２０の電力監視部１２４は、メインシステム１１０の消費電力が再起動判定閾値以下となる状態がさらに第３期間Ｔ３（例えば、３〜１５分）以上継続するとき、制御部１２０の動作状態を、標準的な動作状態よりも消費電力が少ない低消費電力状態に変更してもよい。低消費電力状態では、所定の一部の機能（例えば、タイマ、電源ボタン５３の押下の検出など）を維持し、その他の機能が停止してもよい。
なお、制御部１２０の電力監視部１２４には、ステップＳ２０６からステップＳ２１０の処理の繰り返し回数の上限が予め設定されてもよい。電力監視部１２４は、ステップＳ２０６からステップＳ２１０の処理の繰り返し回数を計数し、計数した繰り返し回数が上限に達するとき、ステップＳ２０６からステップＳ２１０の処理をさらに繰り返さずに、モード遷移処理を中止してもよい。
【００６９】
（変形例）
なお、上記の説明は、制御部１２０によるメインシステム１１０の動作状態の制御を主としていたが、これには限られない。制御部１２０は、消費電力の時系列に基づいて、動作の異常が発生したデバイスを特定するデバイス制御部１２８（図示せず）をさらに備えてもよい。
そこで、記憶部１５５には、デバイスごとに異常時における消費電力の時系列（以下、消費電力パターン）を示す消費電力パターンデータを記憶させておく。以下、消費電力パターンデータが示す予め設定された消費電力の時系列を消費電力パターンと呼ぶ。図９、図１０、図１１は、それぞれ通信モジュール２６、入出力ＩＦ２４、ＳｏＣ２１の異常時における消費電力パターンを例示する。図９に例示される消費電力は、増加と減少を繰り返すことを示す。かかる現象は、例えば、他の機器との接続が不安定なときに生じがちである。図１０に例示される消費電力は、少ない状態が継続した後、急激に増加し、その後、減少するが、もとの消費電力よりも多い状態が継続することを示す。かかる現象は、例えば、他の機器との接続が中断したときに生じがちである。図１１に例示される消費電力は、多い状態が計測した後、急激に減少し、その後増加するが、もとの消費電力よりも少ない状態が継続することを示す。かかる現象は、例えば、メインシステム１１０とＳｏＣ２１との間のデータの入出力における同期がとれなくなるときに生じうる。
【００７０】
デバイス制御部１２８は、電力監視部１２４から入力される消費電力情報が示す各時刻における消費電力を、最新の時刻までの所定の観測期間内で集約して観測された消費電力の時系列（以下、観測消費電力パターン）を形成する。デバイス制御部１２８は、消費電力パターンデータが示す消費電力パターンごとに、形成した観測消費電力パターンとの類似度を示す指標を算出し、算出した指標が所定の下限値以上であって最も類似度が高い消費電力パターンを特定する。類似度を示す指標として、例えば、相関係数、ユークリッド距離などが利用可能である。デバイス制御部１２８は、特定した消費電力パターンに係るデバイスを特定することができる。
【００７１】
記憶部１５５には、デバイスごとに異常の発生を示す案内情報（ガイド）を予め記憶させておき、デバイス制御部１２８は、特定したデバイスに対応する案内情報を表示出力部１８０に出力してもよい。案内情報には、その異常の解消または緩和に役立つ対応情報が含まれてもよい。表示出力部１８０は、そのデバイスに対応する案内情報を提示することができる。案内情報に接したユーザは、デバイスに生じた異常に気付くことができる。ユーザは、対応情報に接することで、異常の解消または緩和のための措置を講ずることができる。
【００７２】
デバイス制御部１２８は、特定したデバイスに対して、発生した異常を解消するために所定の制御を行ってもよい。例えば、デバイス制御部１２８は、通信モジュール２６の異常を特定したとき、通信モジュール２６に再起動（リセット）を示す制御信号（以下、再起動信号）を出力する。通信モジュール２６は、デバイス制御部１２８から再起動信号が入力されるとき、自部の動作を停止し、停止を完了した後、起動する。これにより、通信モジュール２６を再起動させることができる。
デバイス制御部１２８は、入出力ＩＦ２４の異常を特定したとき、電源回路３４に入出力ＩＦ２４への電力供給の一時停止を示す制御信号（以下、電力停止信号）を出力する。電源回路３４は、デバイス制御部１２８から電力停止信号が入力されるとき、入出力ＩＦ２４への電力供給を停止し、その所定時間（例えば、１〜３秒）後に電力供給を再開する。これにより、入出力ＩＦ２４を再起動させることができる。
デバイス制御部１２８は、ＳｏＣ２１の異常を特定したとき、ＳｏＣ２１に対する再起動を示す制御信号（以下、再起動制御信号）をメインシステム１１０のリソース管理部１１４に出力する。リソース管理部１１４は、デバイス制御部１２８から再起動制御信号が入力されるとき、自部に接続されるデバイスとしてＳｏＣ２１を再度認識し、ＳｏＣ２１との間で同期処理を行う。この過程で、ＳｏＣ２１が再起動する。再起動の際に、これらのデバイスは所定の初期値を設定し、設定した初期値を用いて動作を再開することで、発生した異常が解消されうる。
【００７３】
以上に説明したように、本実施形態に係る情報処理装置１は、アクティブ状態とアイドル状態との間を遷移可能であって、アイドル状態はアクティブ状態よりも消費電力が少ない動作状態であるコンピュータシステム（例えば、メインシステム１１０）を備える。また、情報処理装置１は、アクティブ状態からアイドル状態への遷移を開始した後、コンピュータシステムの消費電力が所定の消費電力の閾値（例えば、再起動判定閾値）を超えるとき、コンピュータシステムの動作状態をアクティブ状態に復元させ、その後、コンピュータシステムの動作状態をアイドル状態に遷移させるコントローラ（例えば、制御部１２０）と、を備える。
この構成により、コンピュータシステムの動作状態のアイドル状態への遷移を開始しても、十分に消費電力が低下しない場合には、動作状態をアクティブ状態に一時的に戻したうえで、アイドル状態への遷移が再開する。動作状態をアクティブ状態に戻したときに、アイドル状態への遷移を阻害する原因が解消している場合には、アイドル状態への遷移が完了する。そのため、消費電力がより確実に減少する。
【００７４】
また、コンピュータシステムは、コントローラが検出した自装置の使用状況が所定の遷移条件を満たすとき（例えば、アイドルイベントを検出するとき）アクティブ状態からアイドル状態への遷移を開始してもよい。コントローラは、コンピュータシステムの動作状態をアクティブ状態に復元させるとき、遷移条件を解消する使用状況（例えば、アクティブイベント）をコンピュータシステムに通知してもよい。
この構成により、現実には使用状況が所定の遷移条件を満たす場合であっても、コンピュータシステムに、その遷移条件を解消する使用状況を認識させ、遷移条件を認識することによるアイドル状態への遷移を阻止することができるので、アクティブ状態に復元した動作状態を安定化することができる。
【００７５】
また、情報処理装置１は、第１筐体、第２筐体、および、第１筐体と第２筐体の位置関係を検出するセンサ（例えば、センサ３３）をさらに備えてもよい。アイドル状態への遷移条件は、第１筐体が第２筐体に対して閉じた状態であるとき、コントローラは、コンピュータシステムの動作状態をアクティブ状態に復元させるとき、遷移条件を解消する使用状況として第１筐体が第２筐体に対して開いた状態をコンピュータシステムに通知する。
この構成により、第１筐体が第２筐体に対して閉じたとき、コンピュータシステムの動作をアイドル状態にすることを基調としながら、動作状態を一時的にアクティブ状態に復元させるとき、第１筐体が第２筐体に対して開いた状態をコンピュータシステムに通知させることで、コンピュータシステムのアクティブ状態に復元した動作状態を安定化させることができる。
【００７６】
また、情報処理装置１は、自装置に電力を供給する電源回路３４を備えてもよい。コントローラは、電源回路からの電力の供給量を消費電力として監視してもよい。
この構成によれば、コントローラはコンピュータシステムとは独立に、その消費電力を監視することで、コンピュータシステムの動作状態の制御における独立性を高めることができる。
【００７７】
また、コントローラは、アクティブ状態への復元の開始から所定時間（例えば、第２期間Ｔ２）経過後に、アクティブ状態からアイドル状態への遷移を再開させてもよい。
この構成によれば、アイドル状態への遷移の再開を、コンピュータシステムの動作状態のアクティブ状態への遷移が完了した後にすることができる。そのため、アクティブ状態への遷移の完了により、アイドル状態への遷移を阻害していた原因（例えば、処理の遅延、無応答、など）が解消する可能性が高くなるので、より確実にアイドル状態への遷移を成功させ、消費電力の低下を図ることができる。
【００７８】
また、コンピュータシステムと協働する１以上の他のデバイス（例えば、ＲＯＭ２２、ストレージ２３、入出力ＩＦ２４、カードリーダ２５、通信モジュール２６、オーディオシステム２７など）が接続されてもよい。コントローラには、デバイスごとに異常時における消費電力の時系列を示す消費電力パターンが予め設定され、消費電力パターンに基づいて、監視した消費電力の時系列に対応するデバイスを特定してもよい。
この構成によれば、コントローラは、異常が発生したデバイスをコンピュータシステムに頼らずに特定することができる。そのため、コンピュータシステムと独立に、異常が発生したデバイスに対して、異常を解消または緩和するための措置を講ずることができる。
【００７９】
また、コントローラは、特定したデバイスを再起動させてもよい。
この構成によれば、異常が発生したデバイスを再起動させることで、そのデバイスに生じた異常を解消または緩和することができる。そのため、動作状態のアイドル状態への遷移を阻害していた異常を解消または緩和することで、アイドル状態への遷移をより確実に完了させ、ひいては、より確実に消費電力を低下させることができる。
【００８０】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成は上述の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。上述の実施形態において説明した各構成は、任意に組み合わせることができる。
例えば、ストレージ２３、入出力ＩＦ２４、カードリーダ２５、通信モジュール２６、オーディオシステム２７のうちの一部または全部のデバイスは、省略されてもよいし、着脱可能としてもよい。ディスプレイ１４と入力部３２は、各種のデータを入出力可能に情報処理装置１のその他の部分と接続されていれば、必ずしも情報処理装置１と一体化されていなくてもよい。
また、第１筐体６１は、第２筐体６２と着脱可能としてもよい。
情報処理装置１は、ノートＰＣのように、第１筐体６１と第２筐体６２を備え、第１筐体６１が第２筐体６２に対して開閉可能とする構成を有さず、デスクトップＰＣのように、その他の部材を支持する単一の筐体を備える構成を有してもよい。その場合は、モード制御部１１２とイベント検出部１２２は、それぞれ第１筐体６１と第２筐体６２の開閉状態をアクティブイベントまたはアイドルイベントとして採用しない。
【符号の説明】
【００８１】
１…情報処理装置、１１…プロセッサ、１２…システムメモリ、１３…ビデオサブシステム、１４…ディスプレイ、２１…ＳｏＣ、２２…ＲＯＭ、２３…ストレージ、２４…入出力ＩＦ、２５…カードリーダ、２６…通信モジュール、２７…オーディオシステム、３１…ＥＣ、３２…入力部、３３…センサ、３４…電源回路、３５…電源制御回路、３６…ＤＣ／ＤＣコンバータ、３７…電圧検出器、３８…充放電ユニット、５１…ＡＣ／ＤＣアダプタ、５２…電池ユニット、５３…電源ボタン、６１…第１筐体、６２…第２筐体、６３…ヒンジ部、１１０…メインシステム、１１２…モード制御部、１１４…リソース管理部、１２０…制御部、１２２…イベント検出部、１２４…電力監視部、１２６…モード制御部、１５５…記憶部、１６０…検出部、１６５…通信部、１７０…操作入力部、１７５…収音部、１８０…表示出力部
【図１】
0006876113.tif 000002
【図２】
0006876113.tif 000003
【図３】
0006876113.tif 000004
【図４】
0006876113.tif 000005
【図５】
0006876113.tif 000006
【図６】
0006876113.tif 000007
【図７】
0006876113.tif 000008
【図８】
0006876113.tif 000009
【図９】
0006876113.tif 000010
【図１０】
0006876113.tif 000011
【図１１】
0006876113.tif 000012