JP5034861B2 - データ管理装置、情報処理装置及びプログラム - Google Patents

データ管理装置、情報処理装置及びプログラム Download PDF

Info

Publication number
JP5034861B2
JP5034861B2 JP2007274159A JP2007274159A JP5034861B2 JP 5034861 B2 JP5034861 B2 JP 5034861B2 JP 2007274159 A JP2007274159 A JP 2007274159A JP 2007274159 A JP2007274159 A JP 2007274159A JP 5034861 B2 JP5034861 B2 JP 5034861B2
Authority
JP
Japan
Prior art keywords
data
storage
state
stored
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007274159A
Other languages
English (en)
Other versions
JP2009104320A (ja
Inventor
薫雄 田島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2007274159A priority Critical patent/JP5034861B2/ja
Publication of JP2009104320A publication Critical patent/JP2009104320A/ja
Application granted granted Critical
Publication of JP5034861B2 publication Critical patent/JP5034861B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Power Sources (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

本発明は、電力供給を受けてデータを記憶した状態を維持する記憶手段と、電力供給を受けずにデータを記憶した状態を維持する記憶手段との間でデータを移動させる技術に関する。
コンピュータの電源を投入したときにそれ以前に電源を切った時の作業内容が復元される、ハイバネーションという技術が知られている。例えば、特許文献1には、電源を切る前に揮発性メモリ内のデータを不揮発性メモリに書き込んでおいてから、電源オフの電力非供給状態に移行し、電源が再度投入されたときには、不揮発性メモリに書き込まれたデータを揮発性メモリに書き戻す技術が開示されている。また、特許文献2には、スリープモードに移行する前に、揮発性メモリ内のデータのうち、データ領域とバックアップ領域に保存されているデータのみを不揮発性メモリに書き込む技術が開示されている。特許文献2に開示された技術によれば、揮発性メモリ内の全てのデータを書き戻す場合と比べて、不揮発性メモリに書き込むデータの量が少なくなるため、不揮発性メモリに記憶されているデータを短時間で揮発性メモリに書き戻すことができる。
特開2005−115720号公報 特開2007−38580号公報
ところで、マルチタスク機能を有するコンピュータでは、タイムシェアリングなどによって、複数の処理を並行して実行することができる。この場合、利用者は、複数の処理を実行させた状態で電源を切った後、電源を再投入したときには、まず、実行されていた複数の処理のうちいずれか1つの処理についての作業を再開することになる。つまり、マルチタスクが可能な環境下においては、上述した特許文献1及び2に開示された技術のように、電源を切る前に実行されていた全ての処理の作業内容をいっせいに不揮発性メモリに退避させ、さらに電源投入後にそれらを揮発性メモリに全て復元したとしても、利用者はそのうちの一部しか使用しないことになる。この場合、使用されない作業内容までをも復元する分だけ、その復元処理に要する時間が長くなるとともに、揮発性メモリの容量を無駄に費やしてしまう。
本発明は、このような背景に鑑みてなされたものであり、その目的は、電力供給を行わない電力非供給状態に移行するまでにデータを退避させておき、その電力非供給状態が解かれたときには退避させていたデータを復元する、という処理を従来よりも効率よく行うことにある。
上記課題を解決するため、本発明は、電力供給を受けてデータを記憶した状態を維持する第1の記憶手段と、電力供給を受けずにデータを記憶した状態を維持する第2の記憶手段と、前記第1の記憶手段に電力を供給する電力供給状態、又は、前記第1の記憶手段に電力を供給しない電力非供給状態のいずれかに移行させる状態移行手段と、前記状態移行手段によって前記電力供給状態から前記電力非供給状態に移行させられるまでに、前記第1の記憶手段に記憶されているデータを複数のデータに区分して前記第2の記憶手段に記憶させる第1の記憶制御手段と、前記第1の記憶制御手段によって前記第2の記憶手段に記憶させられた各々のデータの記憶場所と、当該データに関連する処理との対応関係を記憶する対応関係記憶手段と、前記状態移行手段によって前記電力非供給状態から前記電力供給状態に移行させられると、前記対応関係記憶手段によって記憶されている対応関係に基づいて各々の前記処理に対応する前記記憶場所を特定する特定手段と、前記特定手段が前記処理ごとに特定した各々の記憶場所に記憶されているデータを前記第2の記憶手段から読み出して、前記第1の記憶手段に記憶させる第2の記憶制御手段とを備えることを特徴とするデータ管理装置を提供する。
これにより、電力供給を行わない電力非供給状態に移行するまでにデータを退避させておき、その電力非供給状態が解かれたときには退避させていたデータを復元する、という処理を従来よりも効率よく行うことができる。
本発明の好ましい態様において、前記第1の記憶制御手段は、前記第1の記憶手段に記憶されているデータを、当該データを用いた処理の単位で複数のデータに区分して前記第2の記憶手段に記憶させてもよい。
これにより、退避させていたデータを、処理で用いられる単位で区分されたデータ毎に復元させることができる。
本発明の好ましい態様において、前記第1の記憶制御手段は、前記第1の記憶手段に記憶されているデータを、所定のデータサイズ単位で複数のデータに区分して前記第2の記憶手段に記憶させてもよい。
これにより、退避させていたデータを、所定のデータサイズ単位で区分されたデータ毎に復元させることができる。
本発明の好ましい態様において、前記特定手段は、複数の前記処理のうちの或る第1の処理の処理識別情報と、当該第1の処理の後に行われる第2の処理の処理識別情報とを対応付けて記憶しており、前記電力供給状態において行われる処理として前記第1の処理を特定すると、当該第1の処理の後に行われる処理として、当該第1の処理の処理識別情報に対応付けて記憶された処理識別情報の前記第2の処理を特定し、前記対応関係記憶手段によって記憶されている対応関係に基づいて当該第2の処理に対応する前記記憶場所を特定し、前記第2の記憶制御手段は、前記特定手段が前記第2の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第2の記憶手段から読み出して、前記第1の記憶手段に記憶させてもよい。
これにより、電力供給状態において第1の処理が行われたときに、その第1の処理の後に行われる第2の処理を迅速に実行することができる。
本発明の好ましい態様において、前記特定手段は、前記電力供給状態において利用者の指示に従って行われる複数の処理の順序を記録していき、記録した順序から、前記或る第1の処理の処理識別情報と、当該第1の処理の後に行われる第2の処理の処理識別情報とを特定して記憶してもよい。
これにより、電力供給状態において第1の処理が行われたときに、利用者の指示に従って行われた処理の順序に基づいて第1の処理の後に行われる処理として特定された第2の処理を迅速に実行することができる。
本発明の好ましい態様において、前記第1の記憶制御手段は、複数の前記処理のうちの或る第1の処理の処理識別情報と、当該第1の処理の後に行われる第2の処理の処理識別情報とを対応付けて記憶しており、前記電力供給状態において前記第1の処理が行われると、当該第1の処理の処理識別情報に対応付けて記憶された前記第2の処理の処理識別情報を特定し、前記第1の記憶手段に記憶されているデータを区分した複数のデータのうち、前記第2の処理に関連するデータ以外のデータを、前記第2の記憶手段に記憶させ、その後に、前記第2の処理に関連するデータを記憶させてもよい。
これにより、電力供給状態において第1の処理が行われた後に第2の処理の実行が指示された場合に、第1の記憶制御手段を迅速に実行することができる。
本発明の好ましい態様において、前記第1の記憶制御手段は、前記電力供給状態において利用者の指示に従って行われる複数の処理の順序を記録していき、記録した順序から、前記或る第1の処理の処理識別情報と、当該第1の処理の後に行われる第2の処理の処理識別情報とを特定して記憶させてもよい。
これにより、電力供給状態において第1の処理が行われた後に第2の処理の実行が指示されたときに、利用者の指示に従って行われた処理の順序に基づいて第1の処理の後に行われる処理として特定された第2の処理を迅速に実行することができる。
本発明の好ましい態様においては、前記第1の記憶制御手段によって区分された各々のデータごとに、当該データに関連した処理が行われた頻度を記憶する頻度記憶手段を備え、前記第2の記憶制御手段は、各々の前記データを、当該データに関連する処理が行われた頻度が高いものから順に前記第2の記憶手段から読み出して、前記第1の記憶手段に記憶させてもよい。
これにより、退避させていたデータを、そのデータに関連する処理が行われた頻度が高いものから順に復元させることができる。
本発明の好ましい態様においては、前記第1の記憶制御手段によって区分された各々のデータごとに、当該データに関連した処理が行われた頻度を記憶する頻度記憶手段を備え、前記第1の記憶制御手段は、各々の前記データを、当該データに関連する処理が行われた頻度が低いものから順に前記第2の記憶手段に記憶させてもよい。
これにより、第1の記憶手段に記憶されているデータを、そのデータに関連する処理が行われた頻度が低いものから順に退避させることができる。
本発明の好ましい態様において、前記電力供給状態には、消費電力が多い第1の電力供給状態と、消費電力が少ない第2の電力供給状態とが含まれており、前記状態移行手段は、前記第1の電力供給状態から前記電力非供給状態又は前記第2の電力供給状態のうちのいずれかに移行させるための移行条件であって、その移行後に前記第1の電力供給状態に再度移行させるまでに要する消費電力が少なくなるような移行条件を記憶しておき、記憶している前記移行条件に基づいて、前記第1の電力供給状態から前記電力非供給状態に移行させるか又は前記第1の電力供給状態から前記第2の電力供給状態に移行させるかを決定し、決定した状態へと移行させてもよい。
これにより、消費電力を少なくすることができる。
また、本発明は、上記のいずれかに記載のデータ管理装置と、前記第1の記憶手段に記憶されたデータを用いて処理を行う処理手段と、前記処理手段によって処理された結果を出力する出力手段とを備えることを特徴とする情報処理装置を提供する。
これにより、電力供給を行わない電力非供給状態に移行するまでにデータを退避させておき、その電力非供給状態が解かれたときには退避させていたデータを復元する、という処理を従来よりも効率よく行うことができる。
また、本発明は、電力供給を受けてデータを記憶した状態を維持する第1の記憶手段と、電力供給を受けずにデータを記憶した状態を維持する第2の記憶手段とを備えたコンピュータを、前記第1の記憶手段に電力を供給する電力供給状態、又は、前記第1の記憶手段に電力を供給しない電力非供給状態のいずれかに移行させる状態移行手段と、前記状態移行手段によって前記電力供給状態から前記電力非供給状態に移行させられるまでに、前記第1の記憶手段に記憶されているデータを複数のデータに区分して前記第2の記憶手段に記憶させる第1の記憶制御手段と、前記第1の記憶制御手段によって前記第2の記憶手段に記憶させられた各々のデータの記憶場所と、当該データに関連する処理との対応関係を記憶する対応関係記憶手段と、前記状態移行手段によって前記電力非供給状態から前記電力供給状態に移行させられると、前記対応関係記憶手段によって記憶されている対応関係に基づいて各々の前記処理に対応する前記記憶場所を特定する特定手段と、前記特定手段が前記処理ごとに特定した各々の記憶場所に記憶されているデータを前記第2の記憶手段から読み出して、前記第1の記憶手段に記憶させる第2の記憶制御手段として機能させるためのプログラムを提供する。
これにより、電力供給を行わない電力非供給状態に移行するまでにデータを退避させておき、その電力非供給状態が解かれたときには退避させていたデータを復元する、という処理を従来よりも効率よく行うことができる。
[構成]
図1は、本実施形態に係る表示装置1の構成を示す図である。同図に示すように、表示装置1は、CPU(Central Processing Unit)10と、ROM(Read Only Memory)20と、RAM(Random Access Memory)30と、フラッシュメモリ40と、操作部50と、表示部60と、電源部70とを備えている。CPU10と、ROM20と、RAM30と、フラッシュメモリ40と、操作部50と、表示部60は、バス80を介して接続されている。また、これらの各部10〜60と電源部70とは図示せぬ電源線を介して接続されている。
ROM20は、読み出し専用の記憶媒体であり、表示装置1の起動処理を司るブートプログラムやOS(Operation System)などの各種制御プログラムなどを記憶している。CPU10は、ROM20に記憶されている制御プログラムを実行することにより、表示装置1の動作を制御したり、また、フラッシュメモリ40に記憶されている各種処理プログラムを実行することにより、各種の処理を行って、その処理結果を表示部60により出力したりする。
RAM30は、電源部70から電力供給を受けてデータを記憶した状態を維持する揮発性記憶媒体である。すなわち、RAM30に記憶されたデータは、電源部70からRAM30に電力が供給されている期間にわたっては記憶され続けるが、電源部70からの電力供給がなくなると消去される。このRAM30は、CPU10のワークエリアとして使用され、例えばCPU10が実行中の処理において用いられるデータを記憶する。このデータには、ROM20やフラッシュメモリ40から読み出されてRAM30にロードされた各種のプログラムや関数のほか、実行中の処理で用いられている各種の値や引数などが含まれている。以下では、RAM30に記憶されているこれらのデータを「処理データ」と総称する。
フラッシュメモリ40は、電源部70から電力供給を受けなくてもデータを記憶した状態を維持し得る不揮発性記憶媒体である。このフラッシュメモリ40には、上述した処理プログラムが記憶されているほか、CPU10が処理実行中のRAM30上の処理データを記憶するための記憶領域が設けられている。このように、RAM30は、電力供給を受けて処理データを記憶した状態を維持する第1の記憶手段として機能するの対し、フラッシュメモリ40は、電力供給を受けずに処理データを記憶した状態を維持する第2の記憶手段として機能する。
操作部50は、例えばペンデバイスやジョイスティックなどを備え、利用者の操作に応じた操作信号をCPU10に供給する。表示部60は、例えばコレステリック液晶や電気泳動などを利用した記憶性液晶表示体や表示制御回路を備え、CPU10による指示の下で各種の画像を表示する。電源部70は、例えば充電可能な電池や電源制御回路を備え、表示装置1を構成する各部に電力を供給する。
ここで、表示装置1の起動状態について説明する。表示装置1は、「オン状態」、「スリープ状態」、「オフ状態」の3つの起動状態を有しており、これらのうちのいずれかの1つの起動状態をとるようになっている。まず、「オン状態」は、表示装置1の各部に電力が供給される電力供給状態であり、表示装置1が通常の動作を行う状態である。この「オン状態」では、CPU10によって各種の処理が行われることになる。次に、「スリープ状態」は、表示装置1の限られた部品のみに電力が供給され、表示装置1が動作しない状態である。この「スリープ状態」では、CPU10や表示部60には電力が供給されないが、それ以外の部品(RAM30を含む)には電力が供給される。よって、「オン状態」は、消費電力が多い第1の電力供給状態であるし、「スリープ状態」は、消費電力が少ない第2の電力供給状態であると言える。そして、「オフ状態」は、電源部70がオフになったときの状態である。この「オフ状態」では、表示装置1の各部に電力が供給されないので、表示装置1はいっさい動作しない。上述した「オン状態」から「スリープ状態」への移行は、例えば「オン状態」においてCPU10が処理を行わない待機時間が所定時間以上になった時に行われる。また、「スリープ状態」から「オン状態」への移行は、例えば操作部50が操作された時に行われる。なお、「オン状態」及び「スリープ状態」が、表示装置1の各部のうち少なくともRAM30に電力を供給する「電力供給状態」であるのに対し、「オフ状態」はRAM30に電力を供給しない「電力非供給状態」である。
[動作]
次に、表示装置1の動作について説明する。
(データ退避処理)
ここでは、まず、図2を参照して、表示装置1の起動状態が上述した「電力供給状態」から「電力非供給状態」に移行するときに、RAM30に記憶されているデータを退避させるデータ退避処理について説明する。ここでいうデータの退避とは、RAM30に記憶されているデータをフラッシュメモリ40に記憶させることである。
例えば表示装置1が「オン状態」の時に、利用者が操作部50を操作して、例えば文章を作成するとともに、その文書中で参照する画像を作成している場合を想定する。CPU10は、この操作に応じて、各々の処理に用いる処理データを生成したり又はフラッシュメモリ40から読み出したりしてRAM30に記憶し(ステップS11)、これらの処理データを用いて、文章を作成するための処理Aと画像を作成するための処理Bとを並列的に実行する(ステップS12)。
図3の上段は、このときのRAM30の記憶内容の一例を示す図である。CPU10は、自身の処理の単位毎にRAM30の記憶領域を1又複数確保し、確保した各記憶領域に対応する処理データを記憶する。同図上段に示した例では、処理Aにおいて用いられる処理データAがRAM30の記憶領域a1,a4に記憶されており、処理Bにおいて用いられる処理データBがRAM30の記憶領域a2,a3に記憶されている。共通の処理に用いられる処理データが、異なる記憶領域に分散して記憶されているのは、データの性質としての違い故に例えばスタティック領域とヒープ領域とスタック領域などに分けて処理データが記憶されるからである。ここでいうスタティック領域は静的データが記憶される記憶領域であり、ヒープ領域は動的に割り当てられる記憶領域であり、スタック領域はスタックとして機能する記憶領域である。
CPU10は、処理データAに基づいて処理Aを実行するとともに、処理データBに基づいて処理Bを実行する。図4は、処理Aと処理Bの実行に伴って、表示部60に表示される表示画面S1の一例を示す図である。この表示画面S1には、文章を作成するための処理Aの処理過程を利用者に提示する処理提示画像faと、画像を作成するための処理Bの処理過程を利用者に提示する処理提示画像fbとが重ねて配置されている。利用者は、例えば文章を作成する作業を行うときには、処理提示画像faを見ながら操作部50を操作し、処理Aの作業を進めていく。CPU10は、この操作に応じてステップS11とステップS12とを適宜繰り返すことで、RAM30に記憶されている処理データAを更新しながら、処理Aの各手順を実行していく。また、利用者は、画像を作成する作業を行う場合には、処理提示画像fbを見ながら操作部50を操作し、処理Bの作業を進めていく。CPU10は、この操作に応じてステップS11とステップS12とを適宜繰り返すことで、RAM30に記憶されている処理データBを更新しながら、処理Bの各手順を実行していく。
さて、利用者は、作業を中断する場合、操作部50の図示せぬ電源ボタンを押下するなどの操作を行って表示装置1に電源オフを指示する。このとき、CPU10は、利用者によって電源オフが指示されたか否かを判定する(図2のステップS13)。例えば、利用者によって電源オフを指示する操作が行われていない場合、CPU10は、電源オフが指示されていないと判定し(ステップS13:NO)、上述したステップS11の処理に戻る。一方、利用者によって電源ボタンを押下するなどの電源オフを指示する操作が行われた場合、CPU10は、利用者によって電源オフが指示されたと判定して(ステップS13:YES)、RAM30に記憶されている処理データを、その処理データが用いられる処理の単位で区分してフラッシュメモリ40に記憶させる(ステップS14)。この例では、図3上段に示したRAM30に記憶されている処理データが、図3下段に示すように、処理Aにおいて用いられる処理データAと、処理Bにおいて用いられる処理データBとに区分されて、フラッシュメモリ40の記憶領域A1,A2にそれぞれ記憶される。この場合、この処理データAには、図4の処理提示画像faを表すデータが含まれている。また、処理データBには、図4の処理提示画像fbを表すデータが含まれている。また、この時に、CPU10に設けられたレジスタに記憶されている値なども、フラッシュメモリ40に記憶される。
続いて、CPU10は、フラッシュメモリ40に記憶された各々の処理データの記憶場所と、その処理データを用いる処理との対応関係を表すデータ管理テーブルを作成する(ステップS15)。
図5は、このデータ管理テーブルT1の一例を示す図である。同図に示すように、このデータ管理テーブルT1には、各々の処理データの記憶場所を表す「アドレス」と、その処理データを用いる処理の「処理識別情報」とが対応付けられている。なお、この「アドレス」は、データが記憶されている記憶領域の先頭アドレスである。この「処理識別情報」とは、各処理に割り当てられたものであり、例えば処理を実現するプログラムのプログラム名や処理名などである。例えば、図中の1番上のレコードには、処理データAの記憶場所を表すアドレスである「0120」と、処理Aの処理識別情報である「taskA」とが対応付けられている。これは、「taskA」が表す処理、すなわち処理Aにおいて用いられる処理データAが、「0120」というアドレスから記憶されていることを表している。また、図中の上から2番目のレコードには、処理データBの記憶場所を表すアドレスである「0430」と、処理Bの処理識別情報である「taskB」とが対応付けられている。これは、「taskB」が表す処理、すなわち処理Bにおいて用いられる処理データBが、「0430」というアドレスから記憶されていることを表している。CPU10は、このデータ管理テーブルT1に記述された対応関係を参照することで、指示された処理に関する処理データの記憶場所を特定することができる。
続いて、CPU10は、作成したデータ管理テーブルT1をフラッシュメモリ40に記憶させる。データ管理テーブルT1を記憶させると、CPU10は、電源部70をオフにし、表示装置1の起動状態を「オン状態」から「オフ状態」に移行させる(図2のステップS16)。これにより、表示装置1の各部に電力が供給されなくなり、RAM30に記憶されているデータが消去される。
(データ復元処理)
続いて、図6を参照して、表示装置1の起動状態が「オフ状態」から「オン状態」に復帰させられたときに、フラッシュメモリ40に退避させていたデータを復元させるデータ復元処理について説明する。ここでいう復帰とは、表示装置1の起動状態が、「電力供給状態」から「電力非供給状態」に移行させられた後に、「電力非供給状態」から再び「電力供給状態」に移行させられることをいう。また、データの復元とは、RAM30からフラッシュメモリ40に退避させていたデータを再びRAM30に記憶させることである。
利用者によって操作部50の電源ボタンがオンにされると(ステップS21)、CPU10は、ROM20に記憶されている制御プログラムを実行して、表示装置1を起動させる(ステップS22)。これにより、表示装置1の起動状態が「オフ状態」から「オン状態」に移行させられる。表示装置1が「オン状態」になると、利用者は、操作部50を操作して、所望するプログラムを指定し、それを実行するよう指示する。
このとき、CPU10は、フラッシュメモリ40のデータ管理テーブルT1に基づいて、利用者に指示された処理が、表示装置1が「オフ状態」に移行する前に実行されていたか否かを判定する(ステップS23)。例えば、利用者に指示された処理の処理識別情報がデータ管理テーブルT1に記述されていない場合、CPU10は、利用者に指示された処理が「オフ状態」に移行する前に実行されていなかったと判定する(ステップS23:NO)。この場合、CPU10は、再開する処理がないとみなし、データ復元処理を行わずに待機する一方、利用者に指示された処理を通常の手順で実行する。ここでいう再開とは、表示装置1が「オフ状態」に移行する前の処理過程から継続して処理を実行することである。
一方、利用者に指示された処理の処理識別情報がデータ管理テーブルT1に記述されている場合、CPU10は、利用者に指示された処理が「オフ状態」に移行する前に実行されていたと判定する(ステップS23:YES)。この場合、CPU10は、フラッシュメモリ40のデータ管理テーブルT1を参照して、利用者によって指示された処理に対応するアドレスを特定する(ステップS24)。続いて、CPU10は、特定したアドレスから記憶されている処理データをフラッシュメモリ40から読み出して、RAM30の空き領域に記憶させる(ステップS25)。この時に、「オフ状態」に移行する前にCPU10のレジスタに記憶されていた値も、フラッシュメモリ40から読み出されて再びレジスタに記憶される。そして、CPU10は、RAM30に記憶させた処理データに基づいて、利用者によって指示された処理を実行する(ステップS26)。
例えば、画像を作成する処理Bを再開させたい場合、利用者は、操作部50を操作して処理Bの実行を指示する。図5に示したデータ管理テーブルT1には、利用者に指示された処理Bの処理識別情報である「taskB」が記述されている。この場合、ステップS23では、利用者に指示された処理が「オフ状態」に移行する前に実行されていたと判定される(ステップS23:YES)。続くステップS24では、図5に示したデータ管理テーブルT1において、この「taskB」と対応付けて記憶されているアドレス、すなわち「0430」が特定される。続くステップS25では、特定された「0430」というアドレスから記憶されている処理データBがフラッシュメモリ40から読み出されて、RAM30に記憶される。そして、ステップS26では、RAM30に記憶された処理データBに基づいて処理Bが実行される。
図7は、処理Bの実行に伴って、表示部60に表示される表示画面S2の一例を示す図である。処理データBには、上述したように、図4の処理提示画像fbを表すデータが含まれているから、この表示画面S2には、図4に示したものと同様の処理提示画像fbが配置されている。これは、「オフ状態」に移行する前の処理過程から継続して処理Bが実行可能であることを表している。これにより、利用者は、「オフ状態」に移行する前の処理の過程から処理Bを進めることができる。
また、利用者は、上述と同様にして再開させたい処理を指定することにより、さらに他の処理を再開させることができる。例えば、文章を作成するための処理Aをさらに再開させたい場合、利用者は、操作部50を操作して処理Aの実行を指示する。CPU10は、上述したステップS26において処理を実行した後にステップS23の処理に戻り、利用者によって新たな処理の実行が指示されると、その新たに指示された処理が、表示装置1が「オフ状態」に移行する前に実行されていたか否かを判定する。図5に示したデータ管理テーブルT1には、利用者に指示された処理Aの処理識別情報である「taskA」が記述されている。この場合、ステップS23では、利用者に指示された処理が「オフ状態」に移行する前に実行されていたと判定される(図6のステップS23:YES)。続くステップS24では、図5に示したデータ管理テーブルT1において、この「taskA」と対応付けて記憶されているアドレス、すなわち「0120」が特定される。続くステップS25では、特定された「0120」というアドレスから記憶されている処理データAがフラッシュメモリ40から読み出されて、RAM30に記憶される。そして、ステップS26では、RAM30に記憶された処理データAに基づいて処理Aが実行される。
図8は、処理Aの実行に伴って、表示部60に表示される表示画面S3の一例を示す図である。処理データAには、上述したように図4の処理提示画像faを表すデータが含まれているから、この表示画面S3には、上述した処理提示画像fbに加えて、図4に示したものと同様の処理提示画像faが配置されている。これは、「オフ状態」に移行する前の処理過程から継続して処理Aを実行可能であることを表している。これにより、利用者は、「オフ状態」に移行する前の処理の過程から処理Aを進めることができる。
このように、表示装置1が「オン状態」から「オフ状態」に移行するときにはデータ退避処理を実行し、「オフ状態」から「オン状態」に復帰したときにはデータ復元処理を実行する。なお、オン状態とスリープ状態は、電力供給状態であるという点では共通であるから、これらオン状態とスリープ状態との間では、上記のようなデータ退避処理やデータ復元処理は行われない。
以上説明した実施形態によれば、「電力供給状態」(「オン状態」又は「スリープ状態」)から「電力非供給状態」(「オフ状態」)に移行するときには、処理の単位毎に区分して処理データを退避させておき、「電力非供給状態」から「電力供給状態」に移行するときに、利用者の再開させたい処理に用いられる処理データのみを復元する。そのため、「電力非供給状態」に移行する前に実行されていた全ての処理で用いられる処理データを復元する構成に比べて、データの復元に要する時間が短くなり、またRAM30において費やされるメモリ容量も少なくてすむ。すなわち、「電力非供給状態」に移行するまでにデータを退避させておき、「電力非供給状態」が解かれたときには退避させていたデータを復元するという処理を効率よく行うことができる。
[変形例]
以上が実施形態の説明であるが、この実施形態の内容は以下のように変形し得る。また、以下の変形例を適宜組み合わせてもよい。
(変形例1)
上述した実施形態においては、図3に示したように、フラッシュメモリ40においては、1つの処理で用いられる処理データをひとまとまりのデータとして取り扱っていたが、これに対し、各処理で用いられる処理データをさらに複数に分類して取り扱うようにしてもよい。図9上段は、この変形例に係るRAM30の記憶内容の一例を示す図である。同図上段に示すように、このRAM30には、スタティック領域とヒープ領域とスタック領域とが確保されている。上述したように、スタティック領域は静的データが記憶される記憶領域であり、ヒープ領域は動的に割り当てられる記憶領域であり、スタック領域はスタックとして機能する記憶領域である。スタティック領域には、処理Aで用いられる処理データa1と、処理Bで用いられる処理データb1と、処理A及び処理Bで共用される処理データa2,b2とが記憶されている。また、ヒープ領域には、処理Aで用いられる処理データa3と、処理Bで用いられる処理データb3とが記憶されている。さらに、スタック領域には、処理Aで用いられる処理データa4と、処理Bで用いられる処理データb4とが記憶されている。
この場合、CPU10は、処理データa1、処理データa2,b2、処理データa3及び処理データa4を処理Aとして区分し、処理データb1、処理データa2,b2、処理データb3及び処理データb4を処理Bとして区分して、フラッシュメモリ40に記憶させる。フラッシュメモリ40には、図3下段に示したように、同じ処理に関する処理データをアドレスが連続する1つの記憶領域にまとめて記憶させてもよいし、図9下段に示すように、フラッシュメモリ40もスタティック領域とヒープ領域とスタック領域とに分け、各々の領域に対応する処理データを記憶させるようにしてもよい。そして、CPU10は、各々の処理データの記憶場所を表すアドレスと、その処理データを用いる処理と、さらにその処理データが記憶されていたRAM30の記憶領域との対応関係を表すデータ管理テーブルを作成する。
この構成において、例えば利用者に処理Aの実行が指示された場合、CPU10は、作成したデータ管理テーブルを参照して、利用者に指示された処理Aに対応するアドレスとRAM30の記憶領域とを特定する。続いて、CPU10は、特定したアドレスに記憶されている処理データa1、処理データa2,b2、処理データa3及び処理データa4をフラッシュメモリ40から読み出す。そして、CPU10は、読み出したこれらの処理データを、RAM30の特定した各記憶領域に記憶させる。この例では、処理データa1及び処理データa2,b2がRAM30のスタティック領域に記憶され、処理データa3がRAM30のヒープ領域に記憶され、処理データa4がRAM30のスタック領域に記憶される。続いて、利用者に処理Bの実行が指示された場合にも、CPU10は上述と同様にしてデータを復元させる。ただし、CPU10は、既にRAM30上にデータが復元されている処理データa2,b2については、復元させない。
このように、RAM30に記憶されているデータを複数のデータに区分してフラッシュメモリ40に記憶する構成であれば、RAM30やフラッシュメモリ40において各々のデータを記憶する記憶領域をどのように構成してもよい。
(変形例2)
上述した実施形態では、RAM30に記憶されている処理データを、その処理データが用いられる処理の単位で区分してフラッシュメモリ40に記憶させていた。この処理の単位は、上述したように、利用者が指定する処理Aや処理Bなどに対応する単位、すなわちタスク単位であってもよいし、それよりも小さな単位、例えば処理を実現する処理プログラムのプロセス単位や関数単位であってもよい。
また、RAM30に記憶されている処理データを、上記のような各種処理の単位ではなく、所定のデータサイズ単位で区分してフラッシュメモリ40に記憶させてもよい。図10は、この変形例に係るRAM30とフラッシュメモリ40の記憶内容の一例を示す図であり、図11は、この変形例に係るデータ管理テーブルT2の一例を示す図である。データ退避時にRAM30から読み出された処理データは、フラッシュメモリ40に一定のデータサイズで区分されて記憶される。この一定のデータサイズは、RAM30やフラッシュメモリ40などを管理するための仕組みに応じて予め決定される。図に示した例では、処理データA,Bが100というデータサイズで区分されてフラッシュメモリ40に記憶されている。すなわち、図11に示すアドレス「0100」、「0200」・・・・間の記憶領域に記憶されるデータサイズは一定である。また、アドレス「0300」から記憶されている処理データには、処理Aの処理データと、処理Bの処理データとが記憶されている。
この構成において、処理Aにて用いられる処理データを復元するときには、フラッシュメモリ40のアドレス「0100」,「0200」,「0300」から処理データA及び処理データBの一部を読み出し、RAM30に記憶させる。なお、この場合、RAM30に記憶された処理データBの一部については、使用されない。また、処理Bにて用いられる処理データを復元するときには、フラッシュメモリ40のアドレス「0300」,「0400」,「0500」から処理データB及び処理データAの一部を読み出し、RAM30に記憶させる。なお、この場合、RAM30に記憶された処理データAの一部については、使用されない。このように、処理データを処理単位で区分していない場合には、フラッシュメモリ40へと復帰させた処理データのうち一部が使用されないことになり、フラッシュメモリ40に無駄な記憶領域が生じてしまうことになる。しかしながら、データの読み書きを固定長のデータ単位で管理することができるため、データの退避や復元を簡素な手順により高速で行うことができる。
(変形例3)
上述した実施形態では、利用者によって指示された処理で用いられる処理データのみが復元されていたが、これに限らない。例えば、利用者に指示された処理の処理データを復元した後に、この処理の後に行われる可能性が高い処理を推定し、その処理データを復元するようにしてもよい。この場合、フラッシュメモリ40には、各々の処理の処理名(第1の処理の処理識別情報)と、その処理の後に行われる処理の処理名(第2の処理の処理識別情報)とが予め対応付けて記憶されている。この対応関係は、例えば以下の方法によって決定する。
(a1)利用者は、予め、操作部50を操作して、各々の処理の処理名とその処理の後に再開させたい処理の処理名とを指定し、これらを対応付けてフラッシュメモリ40に記憶させておく。例えば或る文章を表示させた後には必ず或る画像を表示するというような場合には、或る文章を表示させる処理の処理名と、或る画像を表示する処理の処理名とを指定するといった具合である。CPU10は、上述した図6のステップS26において処理を実行すると、この対応関係を参照して、実行した処理の処理名に対応付けられた処理名を特定する。続いて、CPU10は、特定した処理名の処理に対応するアドレスを特定し、特定したアドレスに記憶されている処理データをフラッシュメモリ40から読み出して、RAM30に記憶させる。この構成によれば、「オン状態」に復帰した表示装置1においてある処理が実行されると、その処理の後に再開させたい処理として利用者が指定した処理の処理データが自動的に復元される。これにより、各処理の後に再開させたい処理として指定された処理をすばやく実行することができる。
(a2)CPU10は、予め、各処理の内容に基づいて、各々の処理の処理名とその処理によって呼び出される処理の処理名とを対応付けてフラッシュメモリ40に記憶させておく。例えば、処理Cが処理D,E,Fのいずれかの処理の選択を促すメニュー画面を表示する処理である場合、この処理Cの手順が記述されたプログラムには、処理Cによって呼び出される側の処理である処理D,E,Fの処理名が記述されている。従って、CPU10はこれを参照して、処理Cの処理名に、処理D,E,Fの各処理名を対応付けてRAM30などに記憶する。この構成において、例えば上述した図6のステップS26において処理Cが実行された場合、CPU10は、上述と同様にして、処理Cに呼び出される処理、すなわち処理D,E,Fを特定し、特定した処理の処理データをそれぞれ復元する。この構成によれば、「オン状態」に復帰した表示装置1においてある処理が実行されると、その処理によって呼び出される処理の処理データが自動的に復元される。これにより、各処理によって呼び出される処理をすばやく実行することができる。
(a3)CPU10は、予め、各処理の処理履歴に基づいて、各々の処理の処理名とその処理の後に実行された頻度が高い処理の処理名とを対応付けてフラッシュメモリ40に記憶させておく。この頻度は、例えば処理が実行された回数の絶対値であってもよいし、処理が実行された回数を相対評価した結果(例えば処理の回数が一定期間又は一定回数に占める割合)であってもよい。CPU10は、利用者によって指示された処理の順番を処理履歴として蓄積し、その処理履歴に含まれる処理の順序を統計的に分析して、どの処理の後にはどの処理が実行された頻度が高いかを判断し、その判断結果をフラッシュメモリ40に記憶しておく。例えば、処理Bの後に処理Aが実行された頻度が高いと判断された場合、処理Bの処理名には、処理Aの処理名が対応付けて記憶される。また、処理Cに続いて他の処理が実行された後に処理Dが実行された頻度が高いと判断された場合、処理Cの処理名には、処理Dの処理名が対応付けて記憶される。この構成において、例えば上述した図6のステップS26において処理Bが実行された場合、CPU10は、上述と同様にして、処理Bの後に実行された頻度が高い処理、すなわち処理Aを特定し、特定した処理の処理データを復元する。この構成によれば、「オン状態」に復帰した表示装置1においてある処理が実行されると、その処理が実行された後に実行された頻度が高い処理の処理データが自動的に復元される。これにより、各処理が実行された後に実行される可能性が高い処理をすばやく実行することができる。
なお、上述した処理履歴は、表示装置1が工場出荷時以降に初めて使用された時点から蓄積されたものであってもよいし、週に1回などの所定のタイミングでリセットされてから蓄積されたものであってもよい。処理履歴をリセットせずに蓄積した場合には、長期的にみて、各処理が実行された後に実行される頻度が高い処理の処理データが自動的に復元される。一方、処理履歴を所定のタイミングでリセットした場合には、短期的にみて、各処理が実行された後に実行される頻度が高い処理の処理データが自動的に復元される。
(変形例4)
上述した実施形態では、利用者に指示された処理で用いられる処理データを復元させていたが、復元する対象となる処理データを特定する方法は、これに限らない。例えば次のような方法が考えられる。
(b1)例えば、CPU10は、利用者によって処理が指示されるのを待たずに、自ら能動的に処理データを復元してもよい。例えばCPU10は、各々の処理が実行された頻度を求めておき、フラッシュメモリ40に退避させた処理データを、その実行頻度が高い処理で用いられる処理データから順に復元させてもよい。この場合、フラッシュメモリ40には、各々の処理データ毎に、その処理データを用いる処理が行われた頻度が記憶される。この頻度は、変形例3と同じく、処理が実行された回数の絶対値であってもよいし、処理が実行された回数を相対評価した結果であってもよい。CPU10は、上述したステップS22において表示装置1を起動した後、フラッシュメモリ40に退避させておいた処理データを、実行頻度が高いものから順に復元させる。この構成では、実行頻度が高い処理において用いられる処理データが、実行頻度が低い処理において用いられる処理データよりも先に復元される。これにより、利用者が処理を指示しなくても、実行頻度が高い処理をすばやく実行することができる。
(b2)また、CPU10が、「電力非供給状態」に移行する前に実行されていた処理に基づいて、その処理の後に行われる処理で用いられる処理データを復元させてもよい。この場合、フラッシュメモリ40には、各々の処理の処理名と、その処理の後に「電力非供給状態」を経由して「オン状態」に復帰したときに行われる処理の処理名とが対応付けて記憶される。この対応関係は、上述と同様にして、処理の内容に基づいてCPU10が決定してもよいし、処理の実行順序に基づいてCPU10が決定してもよい。この構成において、CPU10は、上述したステップS22において表示装置1を起動した後、フラッシュメモリ40のデータ管理テーブルT1に基づいて、表示装置1が「電力非供給状態」になる前に実行していた処理を特定する。続いて、CPU10は、上述した対応関係を参照して、特定した処理の後に「電力非供給状態」を経由して「オン状態」に復帰したときに行われる処理を特定する。そして、CPU10は、特定した処理で用いられる処理データをフラッシュメモリ40から読み出し、RAM30に記憶させる。これにより、表示装置1が「オン状態」に復帰したときに行われる可能性が高い処理をすばやく実行することができる。
(b3)上述した実施形態では、利用者によって指示された処理で用いられる処理データを復元させていたが、これに限らない。例えば、CPU10が、「オフ状態」に移行する前にアクティブになっていた処理で用いられる処理データを復元させてもよい。ここでいうアクティブになっている処理とは、マルチタスクで処理されている複数の処理のうち、利用者が作業を行っている処理であり、大抵の場合、表示画面の最前面に処理経過が表示されている処理である。この場合、CPU10は、アクティブになっている処理の処理データをフラッシュメモリ40に記憶させるときには、アクティブな処理であることを表す情報を付加しておく。この構成において、CPU10は、上述した図6のステップS22において表示装置1を起動した後、アクティブな処理であることを表す情報が付加されている処理データをフラッシュメモリ40から読み出して、RAM30に記憶させる。これにより、表示装置1が「オン状態」に復帰した時に行われる可能性が高い処理をすばやく実行することができる。
(変形例5)
上述した実施形態では、表示装置1の起動状態が「電力供給状態」から「電力非供給状態」に移行する、まさにその移行タイミングにデータの退避が行われていたが、データを退避させるタイミングはこれに限らず、CPU10による処理やプロセスが行われない期間を利用して処理データを退避させるようにしてもよい。例えば、CPU10は、各々の処理が終了する度に、その処理で用いた処理データを退避させてもよい。あるいは、CPU10は、各処理を構成する各々のプロセスが終了する度に、そのプロセスで用いられた処理データを退避するようにしてもよい。また、CPU10は、これらの両者を併用してもよい。この構成によれば、利用者が処理データを逐一保存させなくても、処理データが自動的にフラッシュメモリ40に記憶される。これにより、例えば電力不足などの理由で処理データの保存を行わずに処理が終了してしまったために、処理データが消えてしまったという事態を防ぐことができる。さらに、この構成において、CPU10は、各々の処理が終了する度に、表示装置1の起動状態を「オン状態」から「電力非供給状態」に移行させてもよい。これにより、表示装置1の消費電力を削減することができる。
(変形例6)
上述した実施形態では、複数の処理データを退避させる順番については特に説明しなかったが、上記変形例5のように処理やプロセスが行われない期間を利用して処理データを退避させる構成においては、処理データの退避の順番を次のようにしてもよい。
(c1)CPU10は、処理データを用いる処理の実行頻度が低いものから順に退避させてもよい。この場合、フラッシュメモリ40には、各々の処理データ毎に、その処理データを用いる処理が行われた頻度が記憶されている。この頻度は、変形例3と同じく、処理が実行された回数の絶対値であってもよいし、処理が実行された回数を相対評価した結果であってもよい。CPU10は、処理やプロセスが行われない期間があると、RAM30に記憶させた処理データを、実行頻度が低いものから順に読み出して、フラッシュメモリ40に記憶させる。この構成では、実行頻度が高い処理において用いられる処理データが、実行頻度が低い処理において用いられる処理データよりも後に退避される。このようにすれば、実行される可能性が低い処理の処理データ、すなわち変更される可能性の少ない処理データを優先的に退避することができるので、全体的な退避作業をすばやく実行することができる。
(c2)また、実行中の処理の後に行われる可能性の高い処理の処理データがRAM30に記憶されている場合には、CPU10は、後に行われる可能性の高い処理以外の処理の処理データを先に退避させる。この場合、フラッシュメモリ40には、上述の変形例3と同様にして、各々の処理の処理名と、その処理の後に行われる可能性の高い処理の処理名とが対応付けて記憶されている。つまり、この対応関係は、上述と同様にして、利用者が指定してもよいし、処理の内容に基づいてCPU10が決定してもよいし、あるいは処理の実行順序に基づいてCPU10が決定してもよい。CPU10は、処理やプロセスが行われない期間があると、上述した対応関係に基づいて、実行中の処理の後に実行される処理を特定する。続いて、CPU10は、特定した処理で用いられる処理データがRAM30に記憶されているか否かを判定し、記憶されている場合には、その処理データ以外の処理データを読み出して、フラッシュメモリ40に記憶させる。このようにすれば、実行される可能性が低い処理の処理データを優先的にフラッシュメモリ40に退避することができるので、全体的な退避作業をすばやく実行することができる。
(変形例7)
上述した実施形態は、CPU10、RAM30及びフラッシュメモリ40からなるデータ管理装置を表示装置に適用した例であったが、これに限らない。要するに、このデータ管理装置と、電力供給を受けずにデータを記憶した状態を維持する記憶手段に記憶された処理データを用いて処理を行う処理手段と、その処理手段によって処理された結果を出力する出力手段とを備える情報処理装置に適用可能である。
また、上述した実施形態では、CPU10が、RAM30からデータを退避させる処理、及び、フラッシュメモリ40からデータを復元させる処理を行っていた。このCPU10に代わって、MMU(Memory Management Unit)などの、記憶手段専用の制御装置がこれらの処理を行ってもよい。具体的な動作は以下のとおりである。まず、CPU10は、利用者に指示された処理の処理データをMMUに要求する。MMUは、要求された処理データがRAM30に記憶されている場合には、その処理データがRAM30に記憶されていることをCPU10に通知する。CPU10は、RAM30に記憶されている処理データに基づいて、利用者によって指示された処理を実行する。一方、要求された処理データがRAM30に記憶されていない場合には、MMUは、その旨のフォルト信号をCPU10に通知する。CPU10は、この通知に応じて、要求した処理データをフラッシュメモリ40からRAM30に復帰させるよう、MMUに指示する。MMUはこの指示に応じて、フラッシュメモリ40から読み出した処理データをRAM30に記憶させて、その旨をCPU10に通知する。CPU10は、RAM30に記憶されている処理データに基づいて、利用者によって指示された処理を実行する。
(変形例8)
上述した実施形態では、表示装置1が「オフ状態」から「オン状態」に復帰させられると、利用者が操作部50を操作して所望するプログラムを指定し、それを実行するよう指示していたが、これ以外にも、処理の指示方法は様々な方法が考えられる。例えばCPU10が前回の電源オフ時に実行中であった処理の処理名の一覧を表示部60に表示させ、その一覧の中から利用者に所望の処理を選択させるという方法であってもよい。また、利用者が処理Aを所望するときには操作部50の図示せぬテンキーの「1」を押下し、処理Bを所望するときには操作部50の図示せぬテンキーの「2」を押下するなどといった具合に、利用者が処理毎に決められた操作を行うという方法であってもよい。
(変形例9)
上述した実施形態において、「オン状態」から「スリープ状態」への移行は、CPU10の待機時間が所定時間以上になった時に行われていたが、この移行条件はこれに限らない。例えば、「オン状態」において実行されている処理の内容に応じて、上記の所定時間を長くしたり短くしたりしてもよい。一例を挙げると、「オン状態」において、利用者によるメニュー選択操作を促すメニュー画面の表示処理が実行された後にCPU10が待機状態になった場合には、その待機時間が通常の所定時間よりも長い時間以上になった時に「オン状態」から「スリープ状態」に移行させてもよい。これは、CPU10が待機状態になっている原因として、利用者による作業の中断や中止ではなく、利用者が操作の意思決定に時間がかかっている場合が考えられるからである。
また、CPU10の待機時間が所定時間以上となった場合には、表示装置1を「オフ状態」に移行させるのか又は「スリープ状態」に移行させるのかを、どちらが消費電力の削減になるかという観点から判断するようにしてもよい。つまり、CPU10は、「スリープ状態」に移行させた方が消費電力の削減になる場合には、表示装置1を「オフ状態」に移行させずに、「スリープ状態」に移行させる。
ここで、図12を参照して、各起動状態における消費電力について説明する。同図に示すように、「オフ状態」では消費電力がほぼ0となるが、「オフ状態」から「オン状態」に復帰するときには、表示装置1の各部を起動するために一時的に多くの電力を消費する。よって、「オフ状態」の時間が短い時には、「オフ状態」を経由して「オン状態」に復帰するよりも、「スリープ状態」を経由して「オン状態」に復帰した方が、消費電力の削減になる。そこで、フラッシュメモリ40には、「オン状態」から「オフ状態」又は「スリープ状態」のうちのいずれかに移行させるための移行条件であって、その移行後に「オン状態」に再度移行させるまでに要する消費電力が少なくなるような移行条件が予め記憶されている。そして、CPU10は、その移行条件に基づいて、「オン状態」から「オフ状態」に移行させるか又は「スリープ状態」に移行させるかを決定し、決定した状態へと移行させる。このようにすれば、表示装置1における消費電力を削減することが可能となる。
具体的に説明すると、CPU10は、電源部70から常時電力供給を受けるタイマを用いて、表示装置1が「オフ状態」になっている時間を記録しておき、その記録時間に基づいて、「オフ状態」に移行させるのか又は「スリープ状態」に移行させるのかを判断する。例えば前回「オフ状態」になっていた時間が閾値未満である場合には、今回、CPU10の待機時間が所定時間以上となると、表示装置1を「スリープ状態」に移行させる。一方、前回「オフ状態」になっていた時間が閾値以上である場合には、今回、CPU10の待機時間が所定時間以上となると、表示装置1を「オフ状態」に移行させる。この場合、前回の待機時間と比較される閾値は、図12で説明したような「オフ状態」を経由して「オン状態」に復帰したときの消費電力量と、「スリープ状態」を経由して「オン状態」に復帰したときの消費電力量が等しくなるような時間である。そして、このときフラッシュメモリ40に記憶されている移行条件は、この閾値と、前回の待機時間と、これらの大小関係に基づいて「オフ状態」又は「スリープ状態」のいずれに移行させるかというアルゴリズムである。
また、過去に表示装置1が「オフ状態」となっていた時間の平均値が閾値未満である場合には、CPU10の待機時間が所定時間以上となると、表示装置1を「スリープ状態」に移行させる。一方、過去に表示装置1が「オフ状態」となっていた時間の平均値が閾値以上である場合には、CPU10の待機時間が所定時間以上となると、表示装置1を「オフ状態」に移行させる。この場合の閾値も、「オフ状態」を経由して「オン状態」に復帰したときの消費電力量と、「スリープ状態」を経由して「オン状態」に復帰したときの消費電力量が等しくなるような時間である。そして、このときフラッシュメモリ40に記憶されている移行条件は、この閾値と、過去に表示装置1が「オフ状態」となっていた時間の平均値と、これらの大小関係に基づいて「オフ状態」又は「スリープ状態」のいずれに移行させるかというアルゴリズムである。
また、CPU10は、「オン状態」において実行されていた処理が、「オフ状態」になってもすぐに「オン状態」に復帰されるような類の処理であると判断した場合には、「オフ状態」に移行させずに「スリープ状態」に移行させるようにしてもよい。すぐに「オン状態」に復帰される類の処理であるか否かは、各々の処理の内容に応じて予め決められていてもよいし、CPU10が過去の処理履歴から学習的に求めてもよい。この場合、フラッシュメモリ40に記憶されている移行条件は、すぐに「オン状態」に復帰されるような類の処理であると予め決められた処理の処理名と、処理の処理名に基づいてオフ状態又はスリープ状態のいずれに移行させるかというアルゴリズムである。
(変形例10)
上述した実施形態では、電力供給を受けてデータを記憶した状態を維持する第1の記憶手段としてRAM30を例示し、電力供給を受けずにデータを記憶した状態を維持する第2の記憶手段としてフラッシュメモリ40を例示していたが、これら記憶手段の具体例は、実施形態の例示に限定されることはない。
(変形例11)
上述した実施形態では、「オン状態」及び「スリープ状態」を「電力供給状態」とし、「オフ状態」を「電力非供給状態」としていたが、一般に「スリープ状態」と呼ばれる起動状態を「電力供給状態」に分類するか「電力非供給状態」に分類するかは、RAM30に電力を供給するか否かによって決めればよい。「スリープ状態」を「電力非供給状態」に分類した場合には、上述した図2のステップS13で、CPU10が、自身の待機時間が所定時間以上であるか否かを判断し、所定時間以上であればステップS14の処理に進む。そして、ステップS16では、CPU10が、表示装置1の起動状態を「オン状態」から「スリープ状態」に移行させる。これにより、表示装置1の起動状態が「オン状態」から「スリープ状態」に移行される場合のデータ退避処理が実行される。また、上述したステップS21及びS22では、利用者によって操作部50が操作されると、CPU10が表示装置1の起動状態を「スリープ状態」から「オン状態」に移行させる。これにより、表示装置1の起動状態が「スリープ状態」から「オン状態」に復帰した場合にデータ復元処理が実行される。
(変形例12)
また、上述した表示装置1のCPU10が実行するプログラムは、磁気テープ、磁気ディスク、フレキシブルディスク、光記録媒体、光磁気記録媒体、CD(Compact Disk)、DVD(Digital Versatile Disk)、RAMなどの記録媒体に記録した状態で提供し得る。また、インターネットなどのネットワーク経由で表示装置1にダウンロードさせることも可能である。即ち、本発明をプログラムとして実現することもできる。
本実施形態に係る表示装置の構成を示す図である。 同表示装置によるデータ退避処理を示すフロー図である。 本実施形態に係るRAMとフラッシュメモリの記憶内容の一例を示す図である。 処理A,Bの実行に伴う表示画面の一例を示す図である。 本実施形態に係るデータ管理テーブルの一例を示す図である 同表示装置によるデータ復元処理を示すフロー図である。 処理Bの実行に伴う表示画面の一例を示す図である。 処理Aの実行に伴う表示画面の一例を示す図である。 変形例に係るRAMとフラッシュメモリの記憶内容の一例を示す図である。 変形例に係るRAMとフラッシュメモリの記憶内容の一例を示す図である。 変形例に係るデータ管理テーブルの一例を示す図である。 各起動状態における消費電力を説明する図である。
符号の説明
1…表示装置、10…CPU、20…ROM、30…RAM、40…フラッシュメモリ、50…操作部、60…表示部、70…電源部、80…バス。

Claims (7)

  1. 電力供給を受けてデータを記憶した状態を維持する第1の記憶手段と、
    第1の処理の処理識別情報と、当該第1の処理の後に行われる第2の処理の処理識別情報とを対応付けて記憶し、電力供給を受けずにデータを記憶した状態を維持する第2の記憶手段と、
    前記第1の記憶手段に電力を供給する電力供給状態、又は、前記第1の記憶手段に電力を供給しない電力非供給状態のいずれかに移行させる状態移行手段と、
    前記状態移行手段によって前記電力供給状態から前記電力非供給状態に移行させられるまでに、前記第1の記憶手段に記憶されているデータを、当該データを用いた処理の単位で複数のデータに区分して前記第2の記憶手段に記憶させる第1の記憶制御手段と、
    前記第1の記憶制御手段によって前記第2の記憶手段に記憶させられた各々のデータの記憶場所と、当該データに関連する処理との対応関係を記憶する対応関係記憶手段と、
    前記状態移行手段によって前記電力非供給状態から前記電力供給状態に移行させられた後、前記データに関連する処理のうちの或る第1の処理の実行が指示されると、前記対応関係記憶手段によって記憶されている対応関係に基づいて前記第1の処理に対応する前記記憶場所を特定する特定手段と、
    前記特定手段が前記第1の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第2の記憶手段から読み出して、前記第1の記憶手段に記憶させる第2の記憶制御手段とを備え、
    前記特定手段は、前記電力供給状態において前記第2の記憶制御手段によって前記第1の記憶手段に記憶させられたデータを用いて前記第1の処理が行われると、当該第1の処理の後に行われる処理として、前記第2の記憶手段において当該第1の処理の処理識別情報に対応付けて記憶された処理識別情報の前記第2の処理を特定し、前記対応関係記憶手段によって記憶されている対応関係に基づいて当該第2の処理に対応する前記記憶場所を特定し、
    前記第2の記憶制御手段は、前記特定手段が前記第2の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第2の記憶手段から読み出して、前記第1の記憶手段に記憶させる
    ことを特徴とするデータ管理装置。
  2. 前記特定手段は、
    前記電力供給状態において利用者の指示に従って行われる複数の処理の順序を記録していき、記録した順序から、前記第1の処理の処理識別情報と、当該第1の処理の後に行われる第2の処理の処理識別情報とを特定して前記第2の記憶手段に記憶させる
    ことを特徴とする請求項記載のデータ管理装置。
  3. 前記第1の記憶制御手段は、前記電力供給状態において前記第1の処理が行われると、当該第1の処理の処理識別情報に対応付けて記憶された前記第2の処理の処理識別情報を特定し、前記第1の記憶手段に記憶されているデータを区分した複数のデータのうち、前記第2の処理に関連するデータ以外のデータを、前記第2の記憶手段に記憶させ、その後に、前記第2の処理に関連するデータを記憶させる
    ことを特徴とする請求項1記載のデータ管理装置。
  4. 前記第1の記憶制御手段によって区分された各々のデータごとに、当該データに関連した処理が行われた頻度を記憶する頻度記憶手段を備え、
    前記第1の記憶制御手段は、各々の前記データを、当該データに関連する処理が行われた頻度が低いものから順に前記第2の記憶手段に記憶させる
    ことを特徴とする請求項1記載のデータ管理装置。
  5. 前記電力供給状態には、消費電力が多い第1の電力供給状態と、消費電力が少ない第2の電力供給状態とが含まれており、
    前記状態移行手段は、
    前記第1の電力供給状態から前記電力非供給状態又は前記第2の電力供給状態のうちのいずれかに移行させるための移行条件であって、その移行後に前記第1の電力供給状態に再度移行させるまでに要する消費電力が少なくなるような移行条件を記憶しておき、
    記憶している前記移行条件に基づいて、前記第1の電力供給状態から前記電力非供給状態に移行させるか又は前記第1の電力供給状態から前記第2の電力供給状態に移行させるかを決定し、決定した状態へと移行させる
    ことを特徴とする請求項1記載のデータ管理装置。
  6. 請求項1〜のいずれか1項に記載のデータ管理装置と、
    前記第1の記憶手段に記憶されたデータを用いて処理を行う処理手段と、
    前記処理手段によって処理された結果を出力する出力手段と
    を備えることを特徴とする情報処理装置。
  7. 電力供給を受けてデータを記憶した状態を維持する第1の記憶手段と、第1の処理の処理識別情報と、当該第1の処理の後に行われる第2の処理の処理識別情報とを対応付けて記憶し、電力供給を受けずにデータを記憶した状態を維持する第2の記憶手段とを備えたコンピュータを、
    前記第1の記憶手段に電力を供給する電力供給状態、又は、前記第1の記憶手段に電力を供給しない電力非供給状態のいずれかに移行させる状態移行手段と、
    前記状態移行手段によって前記電力供給状態から前記電力非供給状態に移行させられるまでに、前記第1の記憶手段に記憶されているデータを、当該データを用いた処理の単位で複数のデータに区分して前記第2の記憶手段に記憶させる第1の記憶制御手段と、
    前記第1の記憶制御手段によって前記第2の記憶手段に記憶させられた各々のデータの記憶場所と、当該データに関連する処理との対応関係を記憶する対応関係記憶手段と、
    前記状態移行手段によって前記電力非供給状態から前記電力供給状態に移行させられた後、前記処理のうちの或る第1の処理の実行が指示されると、前記対応関係記憶手段によって記憶されている対応関係に基づいて前記第1の処理に対応する前記記憶場所を特定する特定手段と、
    前記特定手段が前記第1の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第2の記憶手段から読み出して、前記第1の記憶手段に記憶させる第2の記憶制御手段として機能させるためのプログラムであって、
    前記特定手段は、前記電力供給状態において前記第2の記憶制御手段によって前記第1の記憶手段に記憶させられたデータを用いて前記第1の処理が行われると、当該第1の処理の後に行われる処理として、前記第2の記憶手段において当該第1の処理の処理識別情報に対応付けて記憶された処理識別情報の前記第2の処理を特定し、前記対応関係記憶手段によって記憶されている対応関係に基づいて当該第2の処理に対応する前記記憶場所を特定し、
    前記第2の記憶制御手段は、前記特定手段が前記第2の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第2の記憶手段から読み出して、前記第1の記憶手段に記憶させる
    プログラム。
JP2007274159A 2007-10-22 2007-10-22 データ管理装置、情報処理装置及びプログラム Expired - Fee Related JP5034861B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007274159A JP5034861B2 (ja) 2007-10-22 2007-10-22 データ管理装置、情報処理装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007274159A JP5034861B2 (ja) 2007-10-22 2007-10-22 データ管理装置、情報処理装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2009104320A JP2009104320A (ja) 2009-05-14
JP5034861B2 true JP5034861B2 (ja) 2012-09-26

Family

ID=40705941

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007274159A Expired - Fee Related JP5034861B2 (ja) 2007-10-22 2007-10-22 データ管理装置、情報処理装置及びプログラム

Country Status (1)

Country Link
JP (1) JP5034861B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012013774A (ja) * 2010-06-29 2012-01-19 Brother Ind Ltd 表示装置、表示方法、及び表示プログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0561696A (ja) * 1991-09-05 1993-03-12 Kyushu Nippon Denki Software Kk タスク状態保護方式
JPH0728544A (ja) * 1993-07-12 1995-01-31 Matsushita Electric Ind Co Ltd コンピュータシステム
JP2000250667A (ja) * 1999-02-26 2000-09-14 Nec Corp システム処理機能を提供するサスペンド・レジューム方法
JP4407043B2 (ja) * 2000-11-24 2010-02-03 ソニー株式会社 データ処理装置および方法
JP4281421B2 (ja) * 2003-06-06 2009-06-17 ソニー株式会社 情報処理システム及びその制御方法、並びにコンピュータ・プログラム
JP4182090B2 (ja) * 2004-08-05 2008-11-19 キヤノン株式会社 データ処理装置
JP2006095741A (ja) * 2004-09-28 2006-04-13 Fuji Xerox Co Ltd 情報処理装置
JP4513554B2 (ja) * 2004-12-24 2010-07-28 株式会社デンソーウェーブ データ処理端末,データ処理端末のデータ管理方法及びコンピュータプログラム

Also Published As

Publication number Publication date
JP2009104320A (ja) 2009-05-14

Similar Documents

Publication Publication Date Title
JP4436219B2 (ja) 情報処理装置及び電源制御方法
JP2988866B2 (ja) コンピュータシステム
JP4175838B2 (ja) 待機モード付情報処理装置およびその待機モード開始方法と待機モード解除方法
JP5181708B2 (ja) 画像書き換え制御装置、情報表示装置およびプログラム
JP4281421B2 (ja) 情報処理システム及びその制御方法、並びにコンピュータ・プログラム
JPH1097353A (ja) コンピュータシステム及び同システムに適用するレジューム処理方法
US5680540A (en) Suspend-to-disk system for removable hard drive
US20060230304A1 (en) Frequency control method and information processing apparatus
JPH077316B2 (ja) システム再起動装置
JP2017112548A (ja) 画像形成装置およびプログラム
JP5034861B2 (ja) データ管理装置、情報処理装置及びプログラム
JP2005115720A (ja) 情報処理装置及びこれに用いるプログラム
JP4782184B2 (ja) 情報処理装置及び電源制御方法
JPH10240391A (ja) 携帯型ドキュメント表示/処理装置及び同装置に適用されるパワー管理制御方法
JP2014174710A (ja) 情報処理装置、及び情報処理方法、プログラム
JP3427010B2 (ja) コンピュータシステム
JP2009129026A (ja) データ管理装置、情報処理装置及びプログラム
JP4910785B2 (ja) 電子機器、電子機器の電源制御プログラムおよび電源制御方法
JP2007164392A (ja) 計算機
KR100225985B1 (ko) 컴퓨터의 전력 소모 방지 장치 및 그 제어 방법
JP4872328B2 (ja) 動作環境切り替えプログラム及び情報処理装置
JP2012198690A (ja) 情報処理装置、通信制御装置、処理実行方法および処理実行プログラム
JP2002268955A (ja) メモリバックアップ方法および装置
JP2012173579A (ja) 表示装置、及び、表示装置の制御方法
JPH0566951A (ja) コンピユータ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101004

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111026

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111216

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120605

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120618

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150713

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees