(57)【要約】【課題】ユーザにコールドブートをさせる手間をなくさせる技術を提供する。【解決手段】監視部１７０はバッテリ１６０の状態を監視し、バッテリ残量が所定値を下回ったことを検出すると、状態制御部１４０が電子機器１０の電源をオフする。その後、電子機器１０が充電器に接続されると、充電制御部１５０はバッテリ１６０への充電を開始する。状態制御部１４０は、充電の開始を契機として、コールドブートを実行し、電子機器１０をサスペンド状態にする。【選択図】図７
2013121266.tif 000002
【特許請求の範囲】
【請求項１】
電子機器であって、
バッテリへの充電を制御する充電制御部と、
バッテリへの充電が開始されると、コールドブートを実行後、サスペンド状態とする状態制御部と、
を備えることを特徴とする電子機器。
【請求項２】
バッテリ残量を監視する監視部をさらに備え、
前記監視部が、バッテリ残量が第１の所定値を下回ったことを検出すると、前記状態制御部は当該電子機器の電源をオフし、
前記充電制御部が、バッテリへの充電を開始すると、前記状態制御部は、コールドブートを実行することを特徴とする請求項１に記載の電子機器。
【請求項３】
前記監視部が、バッテリ残量が第１の所定値を下回ったことを判定すると、前記状態制御部は、サスペンド状態への移行直前にメモリに保存したシステムデータの少なくとも一部を、復帰用データとして不揮発性メモリに記憶させた後、当該電子機器の電源をオフすることを特徴とする請求項２に記載の電子機器。
【請求項４】
前記状態制御部は、前記状態制御部は、コールドブートを実行後、前記不揮発性メモリに記憶された復帰用データを、別のメモリに移すことを特徴とする請求項３に記載の電子機器。
【請求項５】
前記状態制御部がコールドブートを実行後、復帰用データを用いて、タイマに設定時刻を登録するタイマ管理部をさらに備えることを特徴とする請求項３または４に記載の電子機器。
【請求項６】
監視部が、バッテリ残量が第２の所定値を上回ったことを検出すると、前記状態制御部が、コールドブートを実行することを特徴とする請求項１から５のいずれかに記載の電子機器。
【請求項７】
バッテリ残量が所定値を下回った場合に、電子機器の電源をオフするステップと、
バッテリへの充電が開始された後に、コールドブートを実行するステップと、
電源をオフする直前のサスペンド状態にてメモリに保存していたシステムデータの少なくとも一部を用いてサスペンド状態を設定するステップと、
を備えることを特徴とする電子機器の状態制御方法。
【請求項８】
コンピュータに、
バッテリ残量が所定値を下回った場合に、電子機器の電源をオフする機能と、
バッテリへの充電が開始された後に、コールドブートを実行する機能と、
電源をオフする直前のサスペンド状態にてメモリに保存していたシステムデータの少なくとも一部を用いてサスペンド状態を設定する機能と、
を実現させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電力制御機能を搭載した電子機器に関する。
【背景技術】
【０００２】
携帯型のゲーム機やＰＤＡ（Personal Digital Assistant）等の電子機器が普及している。近年では、多くの電子機器が通信機能を搭載し、またスマートフォンのように、携帯電話やＰＤＡ等の機能を一つにまとめた多機能型の電子機器も登場している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許第７，５５８，８２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
携帯型の電子機器はバッテリで駆動されるため、無用な電力消費を可能な限り低減できることが好ましい。そのため、一般的に電子機器は省電力機能を搭載して、電子機器がユーザにより操作されない状態が所定時間継続したときに、自律的に省電力状態に遷移するようになっている。一方でシステムサスペンドの状態であっても、定期的に所定の処理の実行を要求するアプリケーションが存在する。メールアプリケーションはその代表格であり、電子機器がサスペンド状態にあっても、定期的にメールサーバから新着メールを受信することを要求する。これによりユーザは、電子機器をアウェイク状態に復帰させたときに、すぐに最新の受信メールを閲覧できるようになる。
【０００５】
定期的にシステムレジュームを要求するアプリケーションが複数存在する場合、高頻度でシステムレジュームを発生させると、バッテリの消費量が大きくなるという問題がある。そこで、システムレジュームをタイマ起動する際に、タイマの時刻を効率的に設定する技術の登場が望まれている。
【０００６】
またバッテリ残量が所定値よりも少なくなると、電源は自動的にオフされる。ユーザは電子機器を使用しないとき、充電器があれば電子機器を充電するが、バッテリ残量が不足したことにより電源オフとなった電子機器を充電すると、ユーザが次回電子機器を使用する際には、電源ボタンを押して、システムをコールドブートしなければならない。電子機器が電源オフとなっていたことをユーザが知らなければ、コールドブートしなければならないことも認識していないため、ユーザは、次回使用時に違和感を覚えることがある。
【０００７】
そこで本発明は、タイマの時刻を効率的に設定する技術を提供することを目的とし、また、ユーザにコールドブートをさせる手間をなくさせる技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のある態様の電子機器はバッテリへの充電を制御する充電制御部と、バッテリへの充電が開始されると、コールドブートを実行後、サスペンド状態とする状態制御部とを備える。
【０００９】
本発明の別の態様は、電子機器の状態制御方法である。この方法は、バッテリ残量が所定値を下回った場合に、電子機器の電源をオフするステップと、バッテリへの充電が開始された後に、コールドブートを実行するステップと、電源をオフする直前のサスペンド状態にてメモリに保存していたシステムデータの少なくとも一部を用いてサスペンド状態を設定するステップとを備える。
【００１０】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１１】
本発明によると、タイマの時刻を効率的に設定する技術を提供できる。また本発明によると、ユーザにコールドブートをさせる手間をなくさせる技術を提供できる。
【図面の簡単な説明】
【００１２】
【図１】（ａ）は電子機器の前面を示す図であり、（ｂ）は電子機器の背面を示す図である。
【図２】（ａ）は電子機器の上面を示す図であり、（ｂ）は電子機器の下面を示す図であり、（ｃ）は電子機器の左側面を示す図である。
【図３】電子機器の回路構成を示す図である。
【図４】電子機器の状態遷移を説明するための図である。
【図５】タイマレジューム処理を行う電子機器の機能ブロックを示す図である。
【図６】（ａ）〜（ｃ）は、０時以降のタイマ設定時刻と、起動するアプリケーションの各例の関係を示す図である。
【図７】自動コールドブート処理を行う電子機器の機能ブロックを示す図である。
【発明を実施するための形態】
【００１３】
本実施例の電子機器は、バッテリ駆動される情報端末装置であって、動作状態を通常（アウェイク）状態と、通常状態よりも電力消費の少ない省電力状態との間で遷移させる機能をもつ。省電力状態は段階的に用意され、第１の段階は、ディスプレイの輝度値を下げる減光状態であり、第２の段階はサスペンド状態である。この電力制御機能は、システムソフトウェアに組み込まれる電力制御アプリケーションにより実現され、電力制御アプリケーションは、ユーザからの操作入力がない無操作時間を計測して、無操作時間が所定時間に到達すると、動作状態を通常状態から省電力状態に遷移させる。
【００１４】
本実施例では、電子機器に、複数のアプリケーションがインストールされている。これらのアプリケーションは、システムサスペンドの状態において、それぞれ所定の処理を定期的に実行するような設定がされている。電子機器は、各アプリケーションからの要求を受けて、サスペンド状態から、タイマを用いて、アプリケーションを実行可能な状態に遷移させるレジューム処理を実行する。本実施例において、アプリケーションを実行可能な状態とは、省電力状態における第１の段階（減光状態）または通常状態（アウェイク状態）を含む。このとき電子機器は、複数のアプリケーションの要求を集約して、タイマ起動する時刻を設定することで、レジューム処理を効率的に実現する。
【００１５】
本実施例の電子機器の外観構成および回路構成を説明する。以下に示す電子機器は、携帯型のゲーム機であるが、他の種類の携帯型端末装置であってもよい。
【００１６】
［前面部の構成］
図１（ａ）は、電子機器１０の前面を示す。電子機器１０は、横長の筐体により形成され、ユーザが把持する左右の領域は、円弧状の外郭を有している。電子機器１０の前面には、矩形のタッチパネル５０が設けられる。タッチパネル５０は、表示装置２０と、表示装置２０の表面を覆う透明な前面タッチパッド２１から構成される。表示装置２０は有機ＥＬ（Electro-Liminescence）パネルであり、画像を表示する。なお表示装置２０は液晶パネルなどの表示手段であってもよい。前面タッチパッド２１は、同時にタッチされた複数ポイントの検出機能をもつマルチタッチパッドであって、タッチパネル５０はマルチタッチスクリーンとして構成される。
【００１７】
タッチパネル５０の右側には、菱形の頂点にそれぞれ位置する△ボタン２２ａ、○ボタン２２ｂ、×ボタン２２ｃ、□ボタン２２ｄ（以下、総称する場合には「操作ボタン２２」とよぶ）が設けられ、タッチパネル５０の左側には、上キー２３ａ、左キー２３ｂ、下キー２３ｃ、右キー２３ｄ（以下、総称する場合には「方向キー２３」とよぶ）が設けられる。ユーザは方向キー２３を操作して、上下左右および斜方の８方向を入力できる。方向キー２３の下側には左スティック２４ａが設けられ、また操作ボタン２２の下側には右スティック２４ｂが設けられる。ユーザは左スティック２４ａまたは右スティック２４ｂ（以下、総称する場合には「アナログスティック２４」とよぶ）を傾動して、方向および傾動量を入力する。筐体の左右頂部には、Ｌボタン２６ａ、Ｒボタン２６ｂが設けられる。操作ボタン２２、方向キー２３、アナログスティック２４、Ｌボタン２６ａ、Ｒボタン２６ｂは、ユーザが操作する操作手段を構成する。
【００１８】
操作ボタン２２の近傍に、前面カメラ３０が設けられる。左スティック２４ａの左側および右スティック２４ｂの右側には、それぞれ音声を出力する左スピーカ２５ａおよび右スピーカ２５ｂ（以下、総称する場合には「スピーカ２５」とよぶ）が設けられる。また左スティック２４ａの下側にＨＯＭＥボタン２７が設けられ、右スティック２４ｂの下側にＳＴＡＲＴボタン２８およびＳＥＬＥＣＴボタン２９が設けられる。
【００１９】
［背面部の構成］
図１（ｂ）は、電子機器１０の背面を示す。電子機器１０の背面には、背面カメラ３１および背面タッチパッド３２が設けられる。背面タッチパッド３２は、前面タッチパッド２１と同様に、マルチタッチパッドとして構成される。電子機器１０は、前面および背面において、２つのカメラおよびタッチパッドを搭載している。
【００２０】
［上面部の構成］
図２（ａ）は、電子機器１０の上面を示す。既述したように、電子機器１０の上面の左右端側に、Ｌボタン２６ａ、Ｒボタン２６ｂがそれぞれ設けられる。Ｌボタン２６ａの右側には電源ボタン３３が設けられ、ユーザは、電源ボタン３３を所定時間（たとえば２秒）以上押下することで、電源をオンまたはオフする。なお電子機器１０は、操作手段が操作されない時間（無操作時間）が所定時間続くと、サスペンド状態に遷移する電力制御機能を有している。電子機器１０がサスペンド状態に入ると、ユーザは電源ボタン３３を短時間（たとえば２秒以内）押下することで、電子機器１０をサスペンド状態からアウェイク状態に復帰させることができる。
【００２１】
ゲームカードスロット３４は、ゲームカードを差し込むための差込口であり、この図では、ゲームカードスロット３４がスロットカバーにより覆われている状態が示される。なおゲームカードスロット３４の近傍に、ゲームカードがアクセスされているときに点滅するＬＥＤランプが設けられてもよい。アクセサリ端子３５は、周辺機器（アクセサリ）を接続するための端子であり、この図ではアクセサリ端子３５が端子カバーにより覆われている状態が示される。アクセサリ端子３５とＲボタン２６ｂの間には、ボリュームを調整するための−ボタン３６ａと＋ボタン３６ｂが設けられている。
【００２２】
［下面部の構成］
図２（ｂ）は、電子機器１０の下面を示す。メモリカードスロット３７は、メモリカードを差し込むための差込口であり、この図では、メモリカードスロット３７が、スロットカバーにより覆われている状態が示される。電子機器１０の下面において、音声入出力端子３８、マイク３９およびマルチユース端子４０が設けられる。マルチユース端子４０はＵＳＢ（Universal Serial Bus）に対応し、ＵＳＢケーブルを介して他の機器と接続できる。
【００２３】
［左側面部の構成］
図２（ｃ）は、電子機器１０の左側面を示す。電子機器１０の左側面には、ＳＩＭカードの差込口であるＳＩＭカードスロット４１が設けられる。
【００２４】
［電子機器の回路構成］
図３は、電子機器１０の回路構成を示す。各構成はバス９２によって互いに接続されている。無線通信モジュール７１はＩＥＥＥ８０２．１１ｂ／ｇ等の通信規格に準拠した無線ＬＡＮモジュールによって構成され、ＡＰ２を介して、外部ネットワークに接続する。なお無線通信モジュール７１は、ブルートゥース（登録商標）プロトコルの通信機能を有してもよい。携帯電話モジュール７２は、ＩＴＵ（International Telecommunication Union；国際電気通信連合）によって定められたＩＭＴ−２０００（International Mobile Telecommunication 2000）規格に準拠した第３世代（3rd Generation）デジタル携帯電話方式に対応し、携帯電話網４に接続する。ＳＩＭカードスロット４１には、携帯電話の電話番号を特定するための固有のＩＤ番号が記録されたＳＩＭカード７４が挿入される。ＳＩＭカード７４がＳＩＭカードスロット４１に挿入されることで、携帯電話モジュール７２は、携帯電話網４との間で通信可能となる。
【００２５】
ＣＰＵ（Central Processing Unit）６０は、メインメモリ６４にロードされたプログラムなどを実行する。ＧＰＵ（Graphics Processing Unit）６２は、画像処理に必要な計算を実行する。メインメモリ６４は、ＲＡＭ（Random Access Memory）などにより構成され、ＣＰＵ６０が使用するプログラムやデータなどを記憶する。ストレージ６６は、ＮＡＮＤ型フラッシュメモリ（NAND-type flash memory）などにより構成され、内蔵型の補助記憶装置として利用される。
【００２６】
モーションセンサ６７は、電子機器１０の動きを検出し、地磁気センサ６８は、３軸方向の地磁気を検出する。ＧＰＳ制御部６９は、ＧＰＳ衛星からの信号を受信し、現在位置を算出する。前面カメラ３０および背面カメラ３１は、画像を撮像し、画像データを入力する。前面カメラ３０および背面カメラ３１は、ＣＭＯＳイメージセンサ（Complementary Metal Oxide Semiconductor Image Sensor）によって構成される。
【００２７】
表示装置２０は、有機ＥＬ表示装置であり、陰極および陽極に電圧を印加することで発光する発光素子を有する。省電力モードでは、電極間に印加する電圧を通常よりも低くすることで、表示装置２０を減光状態とすることができ、電力消費を抑えられる。なお表示装置２０はバックライトを備えた液晶パネル表示装置であってもよい。省電力モードでは、バックライトの光量を下げることで、液晶パネル表示装置を減光状態として、電力消費を抑えることができる。
【００２８】
インタフェース９０において、操作部７０は、電子機器１０における各種操作手段を含み、具体的には、操作ボタン２２、方向キー２３、アナログスティック２４、Ｌボタン２６ａ、Ｒボタン２６ｂ、ＨＯＭＥボタン２７、ＳＴＡＲＴボタン２８、ＳＥＬＥＣＴボタン２９、電源ボタン３３、−ボタン３６ａ、＋ボタン３６ｂを含む。前面タッチパッド２１および背面タッチパッド３２は、マルチタッチパッドであり、前面タッチパッド２１は、表示装置２０の表面に重ね合わせて配置される。スピーカ２５は、電子機器１０の各機能により生成される音声を出力し、マイク３９は、電子機器１０の周辺の音声を入力する。音声入出力端子３８は、外部のマイクからステレオ音声を入力し、外部のヘッドホンなどへステレオ音声を出力する。
【００２９】
ゲームカードスロット３４には、ゲームファイルを記録したゲームカード７６が差し込まれる。ゲームカード７６は、データの書込可能な記録領域を有しており、ゲームカードスロット３４に装着されると、メディアドライブにより、データの書込／読出が行われる。メモリカードスロット３７には、メモリカード７８が差し込まれる。メモリカード７８は、メモリカードスロット３７に装着されると、外付け型の補助記憶装置として利用される。マルチユース端子４０は、ＵＳＢ端子として利用でき、ＵＳＢケーブル８０を接続されて、他のＵＳＢ機器とデータの送受信を行う。アクセサリ端子３５には、周辺機器が接続される。
【００３０】
図４は、電子機器１０の状態遷移を説明するための図である。本実施例の電子機器１０では、省電力状態として、表示装置２０を減光する減光状態と、電子機器１０のシステムをサスペンドするサスペンド状態とが段階的に用意されている。減光状態では、表示装置２０が減光され、これにより表示装置２０の電力消費量を低減できる。またサスペンド状態では、サスペンド状態になる直前の作業状態を保存したＲＡＭや、レジューム処理を行うための制御信号を出力するタイマなどへの電力は供給されるものの、その他の部品への電力供給が停止される。ＣＰＵ６０への電力供給も停止されるため、サスペンド状態は、高い省電力効果が実現される。なおサスペンド状態では、表示装置２０が完全に消灯されるため、一段階前の省電力状態を減光状態とすることで、ユーザに、段階的な省電力制御が実行されていることを認識させることができる。なお減光状態では、表示装置２０が完全に消灯されてもよく、特にタイマレジュームによるサスペンド状態から減光状態への遷移時には、表示装置２０が完全に消灯されてよい。
【００３１】
電源オフの状態から、ユーザが電源ボタン３３を所定時間（たとえば２秒）以上押すと、電子機器１０はコールドブートして、アウェイク状態となる。コールドブートはメモリチェックを行ったり、ＯＳの初期化作業などを行うため、システム起動にかかる時間は長い。アウェイク状態において、無操作時間が時間Ｔ１に到達すると電子機器１０は減光状態となり、無操作時間が時間Ｔ２（Ｔ２＞Ｔ１）に到達すると電子機器１０はサスペンド状態となる。減光状態およびサスペンド状態において、ユーザが電源ボタン３３を短時間（たとえば２秒以内）押すと、電子機器１０はアウェイク状態に遷移する。
【００３２】
本実施例において、サスペンド状態にある電子機器１０は、メールアプリケーションやＧＰＳによる測位アプリケーションなどの要請に基づいて、減光状態に復帰するレジューム処理を実行する。レジューム処理の実行時刻は、サスペンド状態に入る前に予めタイマに登録されており、レジューム処理により、メールアプリケーションおよび測位アプリケーションが起動し、各アプリケーションにより予定されていた処理が完了すると、再びサスペンド状態に戻る。なおレジューム処理により、サスペンド状態からアウェイク状態に復帰してもよく、いずれにしてもアプリケーションが実行可能な状態に復帰すればよい。
【００３３】
なお、サスペンド状態にある電子機器１０は、僅かながらも電力を消費する。そのためサスペンド状態でバッテリ残量が次第に少なくなっていき、サスペンド状態を維持することが困難になると、電子機器１０は、残量不足を検出して、サスペンド状態から自律的に電源オフの状態となる。その後、電子機器１０の充電が開始されると、本実施例の電子機器１０は、電源オフの状態を維持するのではなく、自動的にコールドブートして、その後、サスペンド状態に遷移する。
【００３４】
以下、図４に示す状態遷移において、サスペンド状態からタイマレジューム処理により減光状態に復帰する動作と、電源オフの状態から充電開始によりサスペンド状態に遷移する動作について説明する。
【００３５】
図５は、タイマレジューム処理を行う電子機器１０の機能ブロックを示す。電子機器１０は、タイマ管理部１１０、タイマ１３０および状態制御部１４０を備える。状態制御部１４０は、図４に示す状態遷移を制御する。これらの構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、レジューム機能を実現するためのこれらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００３６】
タイマ管理部１１０は、タイマ１３０に設定時刻を登録する。タイマ１３０は、時刻を計時し、計時値が設定時刻になると所定の信号を出力する。状態制御部１４０は、タイマ１３０から所定の信号を受け取ると、レジューム処理を実行する。レジューム処理では、サスペンド状態への移行直前にメモリにセーブされたシステムデータを用いて、サスペンド状態への移行直前の作業環境が復元される。なおタイマ１３０および状態制御部１４０によるレジューム処理は、既知のタイマ起動処理であり、本実施例では、タイマ管理部１１０が、タイマ１３０に効率的に設定時刻を登録することを特徴とする。
【００３７】
本実施例では、複数のアプリケーション１００ａ、１００ｂが、サスペンド状態において、定期的に所定の処理を実行するように設定されている。たとえば、この設定は、ユーザにより行われてもよく、システムにより行われてもよい。タイマ管理部１１０は複数のアプリケーション１００ａ、１００ｂからの要求を受け取り、各アプリケーションの要求を集約して、サスペンド状態から減光状態に復帰したときに、可能な限り多くのアプリケーションが所定の処理を実行できるように、タイマ１３０に設定時刻を登録する。たとえばアプリケーション１００ａはメールアプリケーションであって、３０分ごとに、メールサーバから新着メールを受信することを要求し、アプリケーション１００ｂはＧＰＳ測位アプリケーションであって、１５分ごとに測位処理を実行することを要求する。
【００３８】
ここでタイマ管理部が、各アプリケーション１００からの要求を集約せずに、それぞれ独立して応答する場合について説明する。たとえば電子機器１０が、０時から２時までの間にサスペンド状態にあり、この間にタイマ管理部が、各アプリケーション１００の要求に独立して応える形でタイマ１３０の設定時刻を登録する。０時から２時までの間において、アプリケーション１００ａの最初の起動時刻が０：１０である場合、以降の起動時刻は、０：４０，１：１０，１：４０となる。またアプリケーション１００ｂの最初の起動時刻が０：０５である場合、以降の起動時刻は、０：２０，０：３５，０：５０，１：０５，１：２０，１：３５，１：５０となる。したがって、３０分間隔で起動するアプリケーション１００ａのために、状態制御部１４０は、４回レジューム処理を実行し、また１５分間隔で起動するアプリケーション１００ｂのために、状態制御部１４０は、８回レジューム処理を実行する。したがって、各アプリケーション１００の要求に独立して応じる場合には、計１２回のレジューム処理が行われることになる。
【００３９】
そこで、本実施例のタイマ管理部１１０は、各アプリケーション１００からの要求を集約して、複数のアプリケーション１００が１回のレジューム処理時に起動できるように、タイマ１３０の設定時刻を登録する。たとえばタイマ管理部１１０は、０時から２時までのサスペンド状態において、レジューム処理の実行時刻を、０：０５，０：２０，０：３５，０：５０，１：０５，１：２０，１：３５，１：５０に設定する。このときアプリケーション１００ａは、０：０５，０：３５，１：０５，１：３５に、３０分間隔でメール受信処理を実行でき、またアプリケーション１００ｂは、０：０５，０：２０，０：３５，０：５０，１：０５，１：２０，１：３５，１：５０に、１５分間隔で測位処理を実行できる。このように本実施例の電子機器１０のタイマ時刻設定機能によると、計８回のレジューム処理で、各アプリケーション１００ａ、１００ｂの要求に応えることができる。レジューム処理の回数を少なくすることで、バッテリの消費量を低減することが可能となる。
【００４０】
なお、たとえばＴＶ番組を録画予約するアプリケーションでは、アプリケーションの起動時刻が重要であり、その場合には、予約指定された時刻に、タイマ１３０の設定時刻が登録される必要がある。したがって本実施例のタイマ管理部１１０は、定期的に処理を実行するアプリケーション１００が存在する場合のレジューム処理を制御することを前提としている。
【００４１】
タイマ管理部１１０は、時間間隔保持部１１２、時間情報受付部１１４および設定部１１６を有する。時間間隔保持部１１２は、アプリケーションを実行可能な状態に復帰させる時間間隔Ｔを保持する。時間間隔Ｔは固定値であり、タイマ１３０に設定される時刻の最小間隔に相当し、前回の設定時刻から今回の設定時刻の間隔は、時間間隔Ｔ×Ｎ（Ｎは自然数）に設定される。時間情報受付部１１４は、アプリケーション１００が所定の処理を実行する時間間隔を特定する時間情報を受け付けて、保持する。設定部１１６は、時間情報受付部１１４が受け付けた時間情報と、時間間隔Ｔに基づいて、タイマ１３０に設定時刻を登録する。
【００４２】
電源オフの状態から、ユーザが電源ボタン３３を押すと、電子機器１０はコールドブートして、アウェイク状態となる。コールドブートの際、時間情報受付部１１４は、各アプリケーション１００から、サスペンド状態における処理の実行時間間隔を特定する時間情報を受け付け、ここではアプリケーション１００ａから時間情報Ｔａを、アプリケーション１００ｂから時間情報Ｔｂを受け付けて、保持する。設定部１１６は、複数のアプリケーション１００ａ、１００ｂから取得した時間情報Ｔａ、Ｔｂをもとに、タイマ１３０の設定時刻を定める。
【００４３】
なおアプリケーション１００は、任意のタイミングで時間情報を時間情報受付部１１４に提供してもよい。たとえば、サスペンド状態において定期的に所定の処理を実行することをユーザがアプリケーション１００に設定したタイミングで、アプリケーション１００が、時間情報を時間情報受付部１１４に提供してもよい。また時間情報受付部１１４が、アプリケーション１００に対して時間情報を問い合わせ、アプリケーション１００が、それに応答して時間情報を提供してもよい。時間情報受付部１１４は、受け付けた全ての時間情報を保持する。なお、アプリケーション１００が定期的な処理の実行をしない設定になった場合、アプリケーション１００は、定期的な処理をしなくなったことを時間情報受付部１１４に通知し、時間情報受付部１１４は、そのアプリケーション１００の時間情報を破棄する。以下では、コールドブートの際に、時間情報受付部１１４が、複数のアプリケーション１００から時間情報を受け付ける場合について説明する。
【００４４】
本実施例のタイマ１３０は、設定時刻を１つだけ登録できる。したがって設定部１１６は、設定時刻をタイマ１３０に登録すると、タイマ１３０の計時値が設定時刻になった後に、すぐに次の設定時刻を導出して、タイマ１３０に登録する。設定部１１６は、電子機器１０の動作状態に関わらず、タイマ１３０の設定時刻を決定し、したがって仮にタイマ１３０の設定時刻に電子機器１０がアウェイク状態にあったとしても、次回のタイマ１３０の設定時刻を求めて登録する。状態制御部１４０は、タイマ１３０から制御信号を受けたとき、サスペンド状態にある場合に限って、システムレジュームを実行する。
【００４５】
設定部１１６は、コールドブート後、最初の設定時刻をタイマ１３０に登録する。最初の設定時刻は、コールドブート時刻に時間間隔Ｔを加えた時刻であってよい。また最初の設定時刻は、０≦Ｋ＜ＴとなるＫをランダムに選択し、コールドブート時刻に、時間Ｋを加えた時刻であってもよい。なお設定部１１６は、０≦Ｋ＜ＴとなるＫをランダムに選択し、現在時刻がＦ時Ｇ分だとすると、最も早く到来するＦ時（Ｋ＋Ｍ×Ｔ）分に、最初の設定時刻を決定してもよい。ここでＭは０以上の整数である。このように設定部１１６は、コールドブート後の最初の設定時刻を、ランダム値を用いて決定する。なお、コールドブート時刻は、ランダム値に対応する。これにより当該電子機器１０と、他の電子機器１０とが、一斉に同じタイミングでタイマ起動する可能性を低減でき、たとえばメールサーバに同じタイミングでアクセスが集中する事態を回避できる。
【００４６】
設定部１１６は、最初の設定時刻Ｔｉｎｉを決定し、タイマ１３０に登録する。続いて、時間が経過し、タイマ１３０の計時値が設定時刻Ｔｉｎｉになると、設定部１１６は、次に設定する時刻を算出する。ここで設定部１１６は、設定時刻を、前回設定時刻に、時間間隔Ｔ×Ｎ（Ｎは自然数）を加えた時刻に定める。このとき、設定部１１６は、時間間隔Ｔと、アプリケーション１００から提供された時間情報Ｔａ、Ｔｂとを比較する。
【００４７】
（第１例）
ここで時間間隔保持部１１２が保持する時間間隔Ｔが１５分、時間情報Ｔａが３０分、時間情報Ｔｂが１５分であったとする。Ｔ≧ＴａまたはＴ≧Ｔｂである場合、設定部１１６は、最初の設定時刻の次の設定時刻をＴｉｎｉ＋Ｔに決定する。つまり、アプリケーション１００が要求する起動間隔Ｔａ、Ｔｂが、レジューム処理する最小の時間間隔Ｔ以下であれば、タイマ１３０には、時間間隔Ｔごとに設定時刻が登録され、状態制御部１４０は、時間間隔Ｔごとにレジューム処理を実行する。これによりアプリケーション１００の要求に応えることが可能となる。
【００４８】
この例では、Ｔ＝１５分、Ｔｂ＝１５分であるため、Ｔ≧Ｔｂであり、次の設定時刻はＴｉｎｉ＋Ｔに決定される。このように、本実施例のタイマ管理部１１０では、Ｔ≧Ｔｂとなるアプリケーション１００が１つでも存在すれば、設定部１１６は、Ｔごとにタイマ１３０の設定時刻を決定し、登録する。その結果、上記したように、０時から２時までのサスペンド状態において、レジューム処理の実行時刻を、０：０５，０：２０，０：３５，０：５０，１：０５，１：２０，１：３５，１：５０に設定し、このときアプリケーション１００ａは、０：０５，０：３５，１：０５，１：３５に、３０分間隔でメール受信処理を実行でき、またアプリケーション１００ｂは、０：０５，０：２０，０：３５，０：５０，１：０５，１：２０，１：３５，１：５０に、１５分間隔で測位処理を実行できる。このように本実施例の電子機器１０のタイマ時刻設定機能によると、複数のアプリケーション１００からの要求を集約することで、レジューム処理の回数を少なくしつつ、各アプリケーション１００ａ、１００ｂの要求に応えることができる。
【００４９】
図６（ａ）は、０時以降のタイマ設定時刻と、起動するアプリケーションの第１例の関係を示す。設定部１１６は、時間情報受付部１１４で受け付けた時間情報を用いてタイマ１３０に設定時刻を登録するとともに、各設定時刻において起動するアプリケーション１００を特定する情報を状態制御部１４０に提供する。この第１例では設定部１１６が、１５分おきの設定時刻を決定してタイマ１３０に登録し、また３０分ごとにアプリケーション１００ａを特定する情報を、また１５分ごとにアプリケーション１００ｂを特定する情報を状態制御部１４０に通知する。状態制御部１４０は、タイマ１３０から１５分ごとに所定の信号を受け取るとレジューム処理を実行し、予め通知された特定情報を用いて、対応するアプリケーション１００を起動する。これにより、アプリケーション１００ａは、０：０５，０：３５，１：０５，１：３５に、３０分間隔でメール受信処理を実行し、またアプリケーション１００ｂは、０：０５，０：２０，０：３５，０：５０，１：０５，１：２０，１：３５，１：５０に、１５分間隔で測位処理を実行する。
【００５０】
図６（ａ）には、０：０５，０：３５，１：０５，１：３５に、アプリケーション１００ａ、１００ｂが同時にそれぞれの処理を実行している様子が示される。１回のレジューム時に、まとめて複数のアプリケーション１００ａ、１００ｂが処理を実行することで、全体のレジューム処理回数を少なくでき、バッテリの消費量を低減できる。なお、この場合、サスペンド状態が終了する２時以降においても、設定部１１６が、タイマ１３０に設定時刻（２：０５，２：２０）を登録している様子が示されており、２時以降の各アプリケーション１００の動作は、各アプリケーション１００に依存する。
【００５１】
（第２例）
次に、Ｔ＜Ｔａ、Ｔ＜Ｔｂである場合について説明する。たとえばＴ＝１５分、Ｔａ＝３０分、Ｔｂ＝６０分であるとする。設定部１１６は、各アプリケーションから受け付けた時間情報のいずれもが、時間間隔Ｔよりも大きい場合には、設定時刻を、前回設定時刻に、時間間隔Ｔ×Ｎ（Ｎは２以上の自然数）を加えた時刻に定めることがある。設定部１１６は、Ｔ＜Ｔａ、Ｔ＜Ｔｂから、時間間隔Ｔごとにシステムレジュームする必要のないことを判定し、各アプリケーション１００ごとに起動するべき周期を導出する。具体的に、設定部１１６は、Ｔ×Ｐ≧Ｔａ、Ｔ×Ｑ≧Ｔｂとなる最小のＰ，Ｑ（Ｐ，Ｑは自然数）を求め、アプリケーション１００ａに対してはＴ×Ｐの周期で、アプリケーション１００ｂに対してはＴ×Ｑの周期でシステムレジュームすればよいことを認識する。ここでは、Ｐ＝２，Ｑ＝４であることが求められ、したがって、アプリケーション１００ａに対しては３０分ごとに、アプリケーション１００ｂに対しては６０分ごとに、システムレジュームすればよいことが導出される。また、Ｐ＜Ｑであって、ＱがＰの整数倍であるため、設定部１１６は、Ｔ×Ｐ（３０分）ごとにシステムレジュームすれば、アプリケーション１００ｂの要求にも応えられることを認識する。
【００５２】
したがって設定部１１６は、Ｔ×Ｐごとにタイマ１３０の設定時刻を決定し、登録する。その結果、０時から２時までのサスペンド状態において、レジューム処理の実行時刻を、０：０５，０：３５，１：０５，１：３５に設定し、このときアプリケーション１００ａは、０：０５，０：３５，１：０５，１：３５に、３０分間隔でメール受信処理を実行でき、またアプリケーション１００ｂは、０：０５，１：０５に、６０分間隔で測位処理を実行できる。このように本実施例の電子機器１０のタイマ時刻設定機能によると、複数のアプリケーション１００からの要求を集約することで、レジューム処理の回数を少なくしつつ、各アプリケーション１００ａ、１００ｂの要求に応えることができる。
【００５３】
図６（ｂ）は、０時以降のタイマ設定時刻と、起動するアプリケーションの第２例の関係を示す。第２例では設定部１１６が、３０分おきの設定時刻を決定してタイマ１３０に登録し、また３０分ごとにアプリケーション１００ａを特定する情報を、また６０分ごとにアプリケーション１００ｂを特定する情報を状態制御部１４０に通知する。状態制御部１４０は、タイマ１３０から３０分ごとに所定の信号を受け取るとレジューム処理を実行し、予め通知された特定情報を用いて、対応するアプリケーション１００を起動する。これにより、アプリケーション１００ａは、０：０５，０：３５，１：０５，１：３５に、３０分間隔でメール受信処理を実行し、またアプリケーション１００ｂは、０：０５，１：０５に、６０分間隔で測位処理を実行する。
【００５４】
図６（ｂ）には、０：０５，１：０５に、アプリケーション１００ａ、１００ｂが同時にそれぞれの処理を実行している様子が示される。１回のレジューム時に、まとめて複数のアプリケーション１００ａ、１００ｂが処理を実行することで、全体のレジューム処理回数を少なくでき、バッテリの消費量を低減できる。
【００５５】
（第３例）
第２例では、ＱがＰの整数倍であったが、以下の例では、Ｔ＜Ｔａ、Ｔ＜Ｔｂである場合であって、ＱがＰの整数倍でない例を説明する。たとえばＴ＝１５分、Ｔａ＝３０分、Ｔｂ＝４０分であるとする。設定部１１６は、各アプリケーションから受け付けた時間情報のいずれもが、時間間隔Ｔよりも大きいため、Ｔｉｎｉの次の設定時刻を、Ｔｉｎｉに、時間間隔Ｔ×Ｎ（Ｎは２以上の自然数）を加えた時刻に定める。
【００５６】
このとき設定部１１６は、Ｔ＜Ｔａ、Ｔ＜Ｔｂから、毎回、Ｔごとにシステムレジュームする必要のないことを判定し、各アプリケーション１００ごとに起動するべきタイミングを導出する。具体的に、設定部１１６は、Ｔ×Ｐ≧Ｔａ、Ｔ×Ｑ≧Ｔｂとなる最小のＰ，Ｑ（Ｐ，Ｑは自然数）を求め、アプリケーション１００ａに対してはＴ×Ｐの周期で、アプリケーション１００ｂに対してはＴ×Ｑの周期でシステムレジュームすればよいことを認識する。ここでは、Ｐ＝２，Ｑ＝３であることが求められ、したがって、アプリケーション１００ａに対しては３０分ごとに、アプリケーション１００ｂに対しては４５分ごとに、システムレジュームすればよいことが導出される。
【００５７】
このように設定部１１６は、Ｔ×Ｐ、Ｔ×Ｑごとにタイマ１３０の設定時刻を決定し、登録する。その結果、０時から２時までのサスペンド状態において、レジューム処理の実行時刻を、０：０５，０：３５，０：５０，１：０５，１：３５に設定し、このときアプリケーション１００ａは、０：０５，０：３５，１：０５，１：３５に、３０分間隔でメール受信処理を実行でき、またアプリケーション１００ｂは、０：０５，０：５０，１：３５に、４５分間隔で測位処理を実行できる。本実施例の電子機器１０のタイマ時刻設定機能によると、複数のアプリケーション１００からの要求を集約することで、レジューム処理の回数を少なくしつつ、各アプリケーション１００ａ、１００ｂの要求に応えることができる。なお、アプリケーション１００ｂは、４０分ごとに測位することを要求しているが、Ｔ×Ｑ≧Ｔｂとなる最小のＱを求めることで、可能な限り、アプリケーション１００ｂの要求に沿ったレジューム処理を実現できる。
【００５８】
図６（ｃ）は、０時以降のタイマ設定時刻と、起動するアプリケーションの第３例の関係を示す。図６（ｃ）には、０：０５，１：３５に、アプリケーション１００ａ、１００ｂが同時にそれぞれの処理を実行している様子が示される。１回のレジューム時に、まとめて複数のアプリケーション１００ａ、１００ｂが処理を実行することで、全体のレジューム処理回数を少なくでき、バッテリの消費量を低減できる。
【００５９】
タイマ起動された各アプリケーション１００は、所定の処理を終了すると、状態制御部１４０に対して、処理が終了したことを通知して、起動を終了する。アプリケーション１００は、タイマ起動された場合、タイマ起動時に設定されている所定の処理を終了すると、状態制御部１４０に対して、処理の終了を通知する機能をもつ。状態制御部１４０は、処理実行を予定していた全てのアプリケーション１００から終了通知を受け取ると、電子機器１０の動作状態をサスペンド状態に遷移させる。なお、この時点では、既に設定部１１６によるタイマ１３０の設定時刻登録は完了しており、タイマ１３０は、計時値が設定時刻に一致すると、状態制御部１４０に対して所定の信号を出力する。
【００６０】
上記したように、タイマ管理部１１０は、コールドブート後に、最初の設定時刻Ｔｉｎｉをランダム値を用いて決定し、タイマ１３０の計時値がＴｉｎｉとなったとき、次の設定時刻を、アプリケーション１００から受け付けた時間情報をもとに、（Ｔｉｎｉ＋時間間隔Ｔ×Ｎ（Ｎは自然数））に決定する。このように次の設定時刻は、あくまでもアプリケーション１００から受け付けた時間情報をもとに決定されるため、タイマ１３０の計時値がＴｉｎｉとなったときに、アプリケーション１００から時間情報を受け付けていなければ、次の設定時刻は決定されない。この場合、アプリケーション１００から時間情報を受け付けた時点で、タイマ管理部１１０は、受け付けた時間情報に基づいて、次の設定時刻を、（Ｔｉｎｉ＋時間間隔Ｔ×Ｎ）に決定する。なおタイマ管理部１１０は、最初の設定時刻Ｔｉｎｉを、アプリケーション１００から時間情報を受け付けたことを契機として、決定してもよい。
【００６１】
次に、図４に示す状態遷移において、電源オフの状態から充電処理によりサスペンド状態に遷移する動作について説明する。
【００６２】
図７は、自動コールドブート処理を行う電子機器１０の機能ブロックを示す。電子機器１０は、状態制御部１４０、充電制御部１５０および監視部１７０を備える。図５に示したように、状態制御部１４０は、電子機器１０の動作状態を制御する。なお図５に関しては、状態制御部１４０が、レジューム処理を実行したが、図７に関しては、状態制御部１４０は、電源オフからサスペンド状態への遷移処理を実行する。これらの構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、自動コールドブート機能を実現するためのこれらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００６３】
サスペンド状態にある電子機器１０は、ＲＡＭなどへの電力供給により、僅かではあるが電力を消費している。そのためサスペンド状態でバッテリ残量が次第に少なくなっていき、サスペンド状態を維持することが困難になると、電子機器１０は、残量不足であることを検出して、サスペンド状態から自律的に電源オフの状態となる。この自動電源オフ処理は、状態制御部１４０および監視部１７０によって実現される。具体的に、監視部１７０は、バッテリ１６０の残量を監視しており、バッテリ残量が第１の所定値を下回ったことを検出すると、状態制御部１４０が、電子機器１０の電源をオフする。
【００６４】
状態制御部１４０は電子機器１０の電源をオフする前に、以下の処理を実行する。
（１）状態制御部１４０は、サスペンド状態への移行直前にメモリに保存したシステムデータの少なくとも一部を、復帰用データとして、不揮発性メモリ（たとえばフラッシュメモリ１７２）の所定領域に記憶させる。フラッシュメモリ１７２は、ストレージ６６であってよい。
（２）状態制御部１４０は、フラッシュメモリ１７２の所定領域に、バッテリ残量が不足したことにより電源オフしたことを示す情報（フラグ）を記録する。
【００６５】
システムデータは、サスペンド状態への移行直前の作業状態を特定するデータであり、サスペンド状態から復帰する際に利用されるものである。たとえばシステムデータは、アウェイク状態において実行されていたアプリケーションの状態データや、タイマ管理部１１０がタイマ１３０の時刻設定に使用するデータを含む。状態制御部１４０は、システムデータの全てをフラッシュメモリ１７２に退避させることが好ましいが、バッテリ１６０の残量不足による電源オフの直前には、システムデータの全てをフラッシュメモリ１７２に転送する時間が足りない。そこで状態制御部１４０は、システムデータの一部を復帰用データとしてフラッシュメモリ１７２に記憶させる。復帰用データは、少なくともタイマ管理部１１０がタイマ設定に使用するデータを含み、具体的にはタイマ管理部１１０がアプリケーション１００から受け付けた時間情報を含む。また復帰用データは、アウェイク状態において実行していたアプリケーションを特定する情報を含んでよい。なお電源オフまでの時間が十分あれば、状態制御部１４０は、全てのシステムデータを、フラッシュメモリ１７２に退避させてもよい。
状態制御部１４０は、少なくとも以上の２つの処理を実行した後、電源をオフする。
【００６６】
その後、ユーザが電子機器１０を充電器に接続すると、充電制御部１５０が、バッテリ１６０への充電を制御する。具体的に充電制御部１５０は、電源線を通じて供給される外部電源からの電力をバッテリ１６０に供給する。たとえば充電制御部１５０は、予備充電電流Ｉ１による予備充電後、最大充電電流をＩ２（Ｉ２＞Ｉ１）とする急速充電を実行してもよい。なお充電制御部１５０は、携帯端末装置において既知の充電制御を実行するものであってよい。
【００６７】
充電制御部１５０がバッテリ１６０への充電を開始すると、状態制御部１４０はコールドブートを実行する。監視部１７０が充電の開始を検出すると、状態制御部１４０は、フラッシュメモリ１７２の所定領域を参照して、バッテリ残量不足により電源オフしたことを示す情報（ローバッテリ電源オフ情報）が存在することを確認し、コールドブートを実行する。なお、ローバッテリ電源オフ情報が存在しなければ、状態制御部１４０は、コールドブートを実行しない。なお、監視部１７０がバッテリ残量が第２の所定値を上回ったことを検出したときに、状態制御部１４０が、コールドブートを実行するようにしてもよい。第２の所定値は、コールドブートを実行するのに十分な値に設定される。
【００６８】
状態制御部１４０は、コールドブートを実行後、電子機器１０の動作状態をサスペンド状態とする。具体的に状態制御部１４０は、コールドブート実行後、フラッシュメモリ１７２に記憶された復帰用データを、レジューム処理時に使用される揮発性メモリ（メインメモリ６４であってよい）の領域に移し、フラッシュメモリ１７２から復帰用データを削除する。またタイマ管理部１１０に対して、復帰用データに含まれるアプリケーション１００の時間情報を提供し、タイマ管理部１１０は、時間情報を用いて、タイマ１３０に設定時刻を登録するとともに、その設定時刻に起動するアプリケーション１００を特定する情報を状態制御部１４０に通知する。以上の処理が行われた後、状態制御部１４０は、動作状態をサスペンド状態とする。以後、充電制御部１５０によりバッテリ１６０の充電処理が続けられる。
【００６９】
以上のように、バッテリ１６０の残量不足により電源オフとなった場合であっても、状態制御部１４０が充電開始にともなって自動的にコールドブートを行って、サスペンドするため、ユーザは、電子機器１０の次回使用時に、電源ボタン３３を長押しする必要なく、電子機器１０を扱うことができるようになる。また、電源オフ直前のシステムデータの少なくとも一部をフラッシュメモリ１７２に退避させておき、コールドブート後に、退避させた復帰用データを用いてサスペンド状態を再構成することで、電源オフになる直前の状態を、可能な限り再現することが可能となる。
【００７０】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【符号の説明】
【００７１】
１０・・・電子機器、２０・・・表示装置、３３・・・電源ボタン、１００・・・アプリケーション、１１０・・・タイマ管理部、１１２・・・時間間隔保持部、１１４・・・時間情報受付部、１１６・・・設定部、１３０・・・タイマ、１４０・・・状態制御部、１５０・・・充電制御部、１６０・・・バッテリ。
【図１】
2013121266.tif 000003
【図２】
2013121266.tif 000004
【図３】
2013121266.tif 000005
【図４】
2013121266.tif 000006
【図５】
2013121266.tif 000007
【図６】
2013121266.tif 000008
【図７】
2013121266.tif 000009