(57)【特許請求の範囲】
【請求項１】
電力供給を受けてデータを記憶した状態を維持する第１の記憶手段と、
第１の処理の処理識別情報と、当該第１の処理の後に行われる第２の処理の処理識別情報とを対応付けて記憶し、電力供給を受けずにデータを記憶した状態を維持する第２の記憶手段と、
前記第１の記憶手段に電力を供給する電力供給状態、又は、前記第１の記憶手段に電力を供給しない電力非供給状態のいずれかに移行させる状態移行手段と、
前記状態移行手段によって前記電力供給状態から前記電力非供給状態に移行させられるまでに、前記第１の記憶手段に記憶されているデータを、当該データを用いた処理の単位で複数のデータに区分して前記第２の記憶手段に記憶させる第１の記憶制御手段と、
前記第１の記憶制御手段によって前記第２の記憶手段に記憶させられた各々のデータの記憶場所と、当該データに関連する処理との対応関係を記憶する対応関係記憶手段と、
前記状態移行手段によって前記電力非供給状態から前記電力供給状態に移行させられた後、前記データに関連する処理のうちの或る第１の処理の実行が指示されると、前記対応関係記憶手段によって記憶されている対応関係に基づいて前記第１の処理に対応する前記記憶場所を特定する特定手段と、
前記特定手段が前記第１の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第２の記憶手段から読み出して、前記第１の記憶手段に記憶させる第２の記憶制御手段とを備え、
前記特定手段は、前記電力供給状態において前記第２の記憶制御手段によって前記第１の記憶手段に記憶させられたデータを用いて前記第１の処理が行われると、当該第１の処理の後に行われる処理として、前記第２の記憶手段において当該第１の処理の処理識別情報に対応付けて記憶された処理識別情報の前記第２の処理を特定し、前記対応関係記憶手段によって記憶されている対応関係に基づいて当該第２の処理に対応する前記記憶場所を特定し、
前記第２の記憶制御手段は、前記特定手段が前記第２の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第２の記憶手段から読み出して、前記第１の記憶手段に記憶させる
ことを特徴とするデータ管理装置。
【請求項２】
前記特定手段は、
前記電力供給状態において利用者の指示に従って行われる複数の処理の順序を記録していき、記録した順序から、前記第１の処理の処理識別情報と、当該第１の処理の後に行われる第２の処理の処理識別情報とを特定して前記第２の記憶手段に記憶させる
ことを特徴とする請求項１記載のデータ管理装置。
【請求項３】
前記第１の記憶制御手段は、前記電力供給状態において前記第１の処理が行われると、当該第１の処理の処理識別情報に対応付けて記憶された前記第２の処理の処理識別情報を特定し、前記第１の記憶手段に記憶されているデータを区分した複数のデータのうち、前記第２の処理に関連するデータ以外のデータを、前記第２の記憶手段に記憶させ、その後に、前記第２の処理に関連するデータを記憶させる
ことを特徴とする請求項１記載のデータ管理装置。
【請求項４】
前記第１の記憶制御手段によって区分された各々のデータごとに、当該データに関連した処理が行われた頻度を記憶する頻度記憶手段を備え、
前記第１の記憶制御手段は、各々の前記データを、当該データに関連する処理が行われた頻度が低いものから順に前記第２の記憶手段に記憶させる
ことを特徴とする請求項１記載のデータ管理装置。
【請求項５】
前記電力供給状態には、消費電力が多い第１の電力供給状態と、消費電力が少ない第２の電力供給状態とが含まれており、
前記状態移行手段は、
前記第１の電力供給状態から前記電力非供給状態又は前記第２の電力供給状態のうちのいずれかに移行させるための移行条件であって、その移行後に前記第１の電力供給状態に再度移行させるまでに要する消費電力が少なくなるような移行条件を記憶しておき、
記憶している前記移行条件に基づいて、前記第１の電力供給状態から前記電力非供給状態に移行させるか又は前記第１の電力供給状態から前記第２の電力供給状態に移行させるかを決定し、決定した状態へと移行させる
ことを特徴とする請求項１記載のデータ管理装置。
【請求項６】
請求項１〜５のいずれか１項に記載のデータ管理装置と、
前記第１の記憶手段に記憶されたデータを用いて処理を行う処理手段と、
前記処理手段によって処理された結果を出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項７】
電力供給を受けてデータを記憶した状態を維持する第１の記憶手段と、第１の処理の処理識別情報と、当該第１の処理の後に行われる第２の処理の処理識別情報とを対応付けて記憶し、電力供給を受けずにデータを記憶した状態を維持する第２の記憶手段とを備えたコンピュータを、
前記第１の記憶手段に電力を供給する電力供給状態、又は、前記第１の記憶手段に電力を供給しない電力非供給状態のいずれかに移行させる状態移行手段と、
前記状態移行手段によって前記電力供給状態から前記電力非供給状態に移行させられるまでに、前記第１の記憶手段に記憶されているデータを、当該データを用いた処理の単位で複数のデータに区分して前記第２の記憶手段に記憶させる第１の記憶制御手段と、
前記第１の記憶制御手段によって前記第２の記憶手段に記憶させられた各々のデータの記憶場所と、当該データに関連する処理との対応関係を記憶する対応関係記憶手段と、
前記状態移行手段によって前記電力非供給状態から前記電力供給状態に移行させられた後、前記処理のうちの或る第１の処理の実行が指示されると、前記対応関係記憶手段によって記憶されている対応関係に基づいて前記第１の処理に対応する前記記憶場所を特定する特定手段と、
前記特定手段が前記第１の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第２の記憶手段から読み出して、前記第１の記憶手段に記憶させる第２の記憶制御手段として機能させるためのプログラムであって、
前記特定手段は、前記電力供給状態において前記第２の記憶制御手段によって前記第１の記憶手段に記憶させられたデータを用いて前記第１の処理が行われると、当該第１の処理の後に行われる処理として、前記第２の記憶手段において当該第１の処理の処理識別情報に対応付けて記憶された処理識別情報の前記第２の処理を特定し、前記対応関係記憶手段によって記憶されている対応関係に基づいて当該第２の処理に対応する前記記憶場所を特定し、
前記第２の記憶制御手段は、前記特定手段が前記第２の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第２の記憶手段から読み出して、前記第１の記憶手段に記憶させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電力供給を受けてデータを記憶した状態を維持する記憶手段と、電力供給を受けずにデータを記憶した状態を維持する記憶手段との間でデータを移動させる技術に関する。
【背景技術】
【０００２】
コンピュータの電源を投入したときにそれ以前に電源を切った時の作業内容が復元される、ハイバネーションという技術が知られている。例えば、特許文献１には、電源を切る前に揮発性メモリ内のデータを不揮発性メモリに書き込んでおいてから、電源オフの電力非供給状態に移行し、電源が再度投入されたときには、不揮発性メモリに書き込まれたデータを揮発性メモリに書き戻す技術が開示されている。また、特許文献２には、スリープモードに移行する前に、揮発性メモリ内のデータのうち、データ領域とバックアップ領域に保存されているデータのみを不揮発性メモリに書き込む技術が開示されている。特許文献２に開示された技術によれば、揮発性メモリ内の全てのデータを書き戻す場合と比べて、不揮発性メモリに書き込むデータの量が少なくなるため、不揮発性メモリに記憶されているデータを短時間で揮発性メモリに書き戻すことができる。
【特許文献１】特開２００５−１１５７２０号公報
【特許文献２】特開２００７−３８５８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、マルチタスク機能を有するコンピュータでは、タイムシェアリングなどによって、複数の処理を並行して実行することができる。この場合、利用者は、複数の処理を実行させた状態で電源を切った後、電源を再投入したときには、まず、実行されていた複数の処理のうちいずれか１つの処理についての作業を再開することになる。つまり、マルチタスクが可能な環境下においては、上述した特許文献１及び２に開示された技術のように、電源を切る前に実行されていた全ての処理の作業内容をいっせいに不揮発性メモリに退避させ、さらに電源投入後にそれらを揮発性メモリに全て復元したとしても、利用者はそのうちの一部しか使用しないことになる。この場合、使用されない作業内容までをも復元する分だけ、その復元処理に要する時間が長くなるとともに、揮発性メモリの容量を無駄に費やしてしまう。
【０００４】
本発明は、このような背景に鑑みてなされたものであり、その目的は、電力供給を行わない電力非供給状態に移行するまでにデータを退避させておき、その電力非供給状態が解かれたときには退避させていたデータを復元する、という処理を従来よりも効率よく行うことにある。
【課題を解決するための手段】
【０００５】
上記課題を解決するため、本発明は、電力供給を受けてデータを記憶した状態を維持する第１の記憶手段と、電力供給を受けずにデータを記憶した状態を維持する第２の記憶手段と、前記第１の記憶手段に電力を供給する電力供給状態、又は、前記第１の記憶手段に電力を供給しない電力非供給状態のいずれかに移行させる状態移行手段と、前記状態移行手段によって前記電力供給状態から前記電力非供給状態に移行させられるまでに、前記第１の記憶手段に記憶されているデータを複数のデータに区分して前記第２の記憶手段に記憶させる第１の記憶制御手段と、前記第１の記憶制御手段によって前記第２の記憶手段に記憶させられた各々のデータの記憶場所と、当該データに関連する処理との対応関係を記憶する対応関係記憶手段と、前記状態移行手段によって前記電力非供給状態から前記電力供給状態に移行させられると、前記対応関係記憶手段によって記憶されている対応関係に基づいて各々の前記処理に対応する前記記憶場所を特定する特定手段と、前記特定手段が前記処理ごとに特定した各々の記憶場所に記憶されているデータを前記第２の記憶手段から読み出して、前記第１の記憶手段に記憶させる第２の記憶制御手段とを備えることを特徴とするデータ管理装置を提供する。
これにより、電力供給を行わない電力非供給状態に移行するまでにデータを退避させておき、その電力非供給状態が解かれたときには退避させていたデータを復元する、という処理を従来よりも効率よく行うことができる。
【０００６】
本発明の好ましい態様において、前記第１の記憶制御手段は、前記第１の記憶手段に記憶されているデータを、当該データを用いた処理の単位で複数のデータに区分して前記第２の記憶手段に記憶させてもよい。
これにより、退避させていたデータを、処理で用いられる単位で区分されたデータ毎に復元させることができる。
【０００７】
本発明の好ましい態様において、前記第１の記憶制御手段は、前記第１の記憶手段に記憶されているデータを、所定のデータサイズ単位で複数のデータに区分して前記第２の記憶手段に記憶させてもよい。
これにより、退避させていたデータを、所定のデータサイズ単位で区分されたデータ毎に復元させることができる。
【０００８】
本発明の好ましい態様において、前記特定手段は、複数の前記処理のうちの或る第１の処理の処理識別情報と、当該第１の処理の後に行われる第２の処理の処理識別情報とを対応付けて記憶しており、前記電力供給状態において行われる処理として前記第１の処理を特定すると、当該第１の処理の後に行われる処理として、当該第１の処理の処理識別情報に対応付けて記憶された処理識別情報の前記第２の処理を特定し、前記対応関係記憶手段によって記憶されている対応関係に基づいて当該第２の処理に対応する前記記憶場所を特定し、前記第２の記憶制御手段は、前記特定手段が前記第２の処理に対応するものとして特定した記憶場所に記憶されているデータを前記第２の記憶手段から読み出して、前記第１の記憶手段に記憶させてもよい。
これにより、電力供給状態において第１の処理が行われたときに、その第１の処理の後に行われる第２の処理を迅速に実行することができる。
【０００９】
本発明の好ましい態様において、前記特定手段は、前記電力供給状態において利用者の指示に従って行われる複数の処理の順序を記録していき、記録した順序から、前記或る第１の処理の処理識別情報と、当該第１の処理の後に行われる第２の処理の処理識別情報とを特定して記憶してもよい。
これにより、電力供給状態において第１の処理が行われたときに、利用者の指示に従って行われた処理の順序に基づいて第１の処理の後に行われる処理として特定された第２の処理を迅速に実行することができる。
【００１０】
本発明の好ましい態様において、前記第１の記憶制御手段は、複数の前記処理のうちの或る第１の処理の処理識別情報と、当該第１の処理の後に行われる第２の処理の処理識別情報とを対応付けて記憶しており、前記電力供給状態において前記第１の処理が行われると、当該第１の処理の処理識別情報に対応付けて記憶された前記第２の処理の処理識別情報を特定し、前記第１の記憶手段に記憶されているデータを区分した複数のデータのうち、前記第２の処理に関連するデータ以外のデータを、前記第２の記憶手段に記憶させ、その後に、前記第２の処理に関連するデータを記憶させてもよい。
これにより、電力供給状態において第１の処理が行われた後に第２の処理の実行が指示された場合に、第1の記憶制御手段を迅速に実行することができる。
【００１１】
本発明の好ましい態様において、前記第１の記憶制御手段は、前記電力供給状態において利用者の指示に従って行われる複数の処理の順序を記録していき、記録した順序から、前記或る第１の処理の処理識別情報と、当該第１の処理の後に行われる第２の処理の処理識別情報とを特定して記憶させてもよい。
これにより、電力供給状態において第１の処理が行われた後に第２の処理の実行が指示されたときに、利用者の指示に従って行われた処理の順序に基づいて第１の処理の後に行われる処理として特定された第２の処理を迅速に実行することができる。
【００１２】
本発明の好ましい態様においては、前記第１の記憶制御手段によって区分された各々のデータごとに、当該データに関連した処理が行われた頻度を記憶する頻度記憶手段を備え、前記第２の記憶制御手段は、各々の前記データを、当該データに関連する処理が行われた頻度が高いものから順に前記第２の記憶手段から読み出して、前記第１の記憶手段に記憶させてもよい。
これにより、退避させていたデータを、そのデータに関連する処理が行われた頻度が高いものから順に復元させることができる。
【００１３】
本発明の好ましい態様においては、前記第１の記憶制御手段によって区分された各々のデータごとに、当該データに関連した処理が行われた頻度を記憶する頻度記憶手段を備え、前記第１の記憶制御手段は、各々の前記データを、当該データに関連する処理が行われた頻度が低いものから順に前記第２の記憶手段に記憶させてもよい。
これにより、第１の記憶手段に記憶されているデータを、そのデータに関連する処理が行われた頻度が低いものから順に退避させることができる。
【００１４】
本発明の好ましい態様において、前記電力供給状態には、消費電力が多い第１の電力供給状態と、消費電力が少ない第２の電力供給状態とが含まれており、前記状態移行手段は、前記第１の電力供給状態から前記電力非供給状態又は前記第２の電力供給状態のうちのいずれかに移行させるための移行条件であって、その移行後に前記第１の電力供給状態に再度移行させるまでに要する消費電力が少なくなるような移行条件を記憶しておき、記憶している前記移行条件に基づいて、前記第１の電力供給状態から前記電力非供給状態に移行させるか又は前記第１の電力供給状態から前記第２の電力供給状態に移行させるかを決定し、決定した状態へと移行させてもよい。
これにより、消費電力を少なくすることができる。
【００１５】
また、本発明は、上記のいずれかに記載のデータ管理装置と、前記第１の記憶手段に記憶されたデータを用いて処理を行う処理手段と、前記処理手段によって処理された結果を出力する出力手段とを備えることを特徴とする情報処理装置を提供する。
これにより、電力供給を行わない電力非供給状態に移行するまでにデータを退避させておき、その電力非供給状態が解かれたときには退避させていたデータを復元する、という処理を従来よりも効率よく行うことができる。
【００１６】
また、本発明は、電力供給を受けてデータを記憶した状態を維持する第１の記憶手段と、電力供給を受けずにデータを記憶した状態を維持する第２の記憶手段とを備えたコンピュータを、前記第１の記憶手段に電力を供給する電力供給状態、又は、前記第１の記憶手段に電力を供給しない電力非供給状態のいずれかに移行させる状態移行手段と、前記状態移行手段によって前記電力供給状態から前記電力非供給状態に移行させられるまでに、前記第１の記憶手段に記憶されているデータを複数のデータに区分して前記第２の記憶手段に記憶させる第１の記憶制御手段と、前記第１の記憶制御手段によって前記第２の記憶手段に記憶させられた各々のデータの記憶場所と、当該データに関連する処理との対応関係を記憶する対応関係記憶手段と、前記状態移行手段によって前記電力非供給状態から前記電力供給状態に移行させられると、前記対応関係記憶手段によって記憶されている対応関係に基づいて各々の前記処理に対応する前記記憶場所を特定する特定手段と、前記特定手段が前記処理ごとに特定した各々の記憶場所に記憶されているデータを前記第２の記憶手段から読み出して、前記第１の記憶手段に記憶させる第２の記憶制御手段として機能させるためのプログラムを提供する。
これにより、電力供給を行わない電力非供給状態に移行するまでにデータを退避させておき、その電力非供給状態が解かれたときには退避させていたデータを復元する、という処理を従来よりも効率よく行うことができる。
【発明を実施するための最良の形態】
【００１７】
［構成］
図１は、本実施形態に係る表示装置１の構成を示す図である。同図に示すように、表示装置１は、ＣＰＵ（Central Processing Unit）１０と、ＲＯＭ（Read Only Memory）２０と、ＲＡＭ（Random Access Memory）３０と、フラッシュメモリ４０と、操作部５０と、表示部６０と、電源部７０とを備えている。ＣＰＵ１０と、ＲＯＭ２０と、ＲＡＭ３０と、フラッシュメモリ４０と、操作部５０と、表示部６０は、バス８０を介して接続されている。また、これらの各部１０〜６０と電源部７０とは図示せぬ電源線を介して接続されている。
【００１８】
ＲＯＭ２０は、読み出し専用の記憶媒体であり、表示装置１の起動処理を司るブートプログラムやＯＳ（Operation System）などの各種制御プログラムなどを記憶している。ＣＰＵ１０は、ＲＯＭ２０に記憶されている制御プログラムを実行することにより、表示装置１の動作を制御したり、また、フラッシュメモリ４０に記憶されている各種処理プログラムを実行することにより、各種の処理を行って、その処理結果を表示部６０により出力したりする。
【００１９】
ＲＡＭ３０は、電源部７０から電力供給を受けてデータを記憶した状態を維持する揮発性記憶媒体である。すなわち、ＲＡＭ３０に記憶されたデータは、電源部７０からＲＡＭ３０に電力が供給されている期間にわたっては記憶され続けるが、電源部７０からの電力供給がなくなると消去される。このＲＡＭ３０は、ＣＰＵ１０のワークエリアとして使用され、例えばＣＰＵ１０が実行中の処理において用いられるデータを記憶する。このデータには、ＲＯＭ２０やフラッシュメモリ４０から読み出されてＲＡＭ３０にロードされた各種のプログラムや関数のほか、実行中の処理で用いられている各種の値や引数などが含まれている。以下では、ＲＡＭ３０に記憶されているこれらのデータを「処理データ」と総称する。
【００２０】
フラッシュメモリ４０は、電源部７０から電力供給を受けなくてもデータを記憶した状態を維持し得る不揮発性記憶媒体である。このフラッシュメモリ４０には、上述した処理プログラムが記憶されているほか、ＣＰＵ１０が処理実行中のＲＡＭ３０上の処理データを記憶するための記憶領域が設けられている。このように、ＲＡＭ３０は、電力供給を受けて処理データを記憶した状態を維持する第１の記憶手段として機能するの対し、フラッシュメモリ４０は、電力供給を受けずに処理データを記憶した状態を維持する第２の記憶手段として機能する。
【００２１】
操作部５０は、例えばペンデバイスやジョイスティックなどを備え、利用者の操作に応じた操作信号をＣＰＵ１０に供給する。表示部６０は、例えばコレステリック液晶や電気泳動などを利用した記憶性液晶表示体や表示制御回路を備え、ＣＰＵ１０による指示の下で各種の画像を表示する。電源部７０は、例えば充電可能な電池や電源制御回路を備え、表示装置１を構成する各部に電力を供給する。
【００２２】
ここで、表示装置１の起動状態について説明する。表示装置１は、「オン状態」、「スリープ状態」、「オフ状態」の３つの起動状態を有しており、これらのうちのいずれかの１つの起動状態をとるようになっている。まず、「オン状態」は、表示装置１の各部に電力が供給される電力供給状態であり、表示装置１が通常の動作を行う状態である。この「オン状態」では、ＣＰＵ１０によって各種の処理が行われることになる。次に、「スリープ状態」は、表示装置１の限られた部品のみに電力が供給され、表示装置１が動作しない状態である。この「スリープ状態」では、ＣＰＵ１０や表示部６０には電力が供給されないが、それ以外の部品（ＲＡＭ３０を含む）には電力が供給される。よって、「オン状態」は、消費電力が多い第１の電力供給状態であるし、「スリープ状態」は、消費電力が少ない第２の電力供給状態であると言える。そして、「オフ状態」は、電源部７０がオフになったときの状態である。この「オフ状態」では、表示装置１の各部に電力が供給されないので、表示装置１はいっさい動作しない。上述した「オン状態」から「スリープ状態」への移行は、例えば「オン状態」においてＣＰＵ１０が処理を行わない待機時間が所定時間以上になった時に行われる。また、「スリープ状態」から「オン状態」への移行は、例えば操作部５０が操作された時に行われる。なお、「オン状態」及び「スリープ状態」が、表示装置１の各部のうち少なくともＲＡＭ３０に電力を供給する「電力供給状態」であるのに対し、「オフ状態」はＲＡＭ３０に電力を供給しない「電力非供給状態」である。
【００２３】
［動作］
次に、表示装置１の動作について説明する。
（データ退避処理）
ここでは、まず、図２を参照して、表示装置１の起動状態が上述した「電力供給状態」から「電力非供給状態」に移行するときに、ＲＡＭ３０に記憶されているデータを退避させるデータ退避処理について説明する。ここでいうデータの退避とは、ＲＡＭ３０に記憶されているデータをフラッシュメモリ４０に記憶させることである。
【００２４】
例えば表示装置１が「オン状態」の時に、利用者が操作部５０を操作して、例えば文章を作成するとともに、その文書中で参照する画像を作成している場合を想定する。ＣＰＵ１０は、この操作に応じて、各々の処理に用いる処理データを生成したり又はフラッシュメモリ４０から読み出したりしてＲＡＭ３０に記憶し（ステップＳ１１）、これらの処理データを用いて、文章を作成するための処理Ａと画像を作成するための処理Ｂとを並列的に実行する（ステップＳ１２）。
【００２５】
図３の上段は、このときのＲＡＭ３０の記憶内容の一例を示す図である。ＣＰＵ１０は、自身の処理の単位毎にＲＡＭ３０の記憶領域を１又複数確保し、確保した各記憶領域に対応する処理データを記憶する。同図上段に示した例では、処理Ａにおいて用いられる処理データＡがＲＡＭ３０の記憶領域ａ１，ａ４に記憶されており、処理Ｂにおいて用いられる処理データＢがＲＡＭ３０の記憶領域ａ２，ａ３に記憶されている。共通の処理に用いられる処理データが、異なる記憶領域に分散して記憶されているのは、データの性質としての違い故に例えばスタティック領域とヒープ領域とスタック領域などに分けて処理データが記憶されるからである。ここでいうスタティック領域は静的データが記憶される記憶領域であり、ヒープ領域は動的に割り当てられる記憶領域であり、スタック領域はスタックとして機能する記憶領域である。
【００２６】
ＣＰＵ１０は、処理データＡに基づいて処理Ａを実行するとともに、処理データＢに基づいて処理Ｂを実行する。図４は、処理Ａと処理Ｂの実行に伴って、表示部６０に表示される表示画面Ｓ１の一例を示す図である。この表示画面Ｓ１には、文章を作成するための処理Ａの処理過程を利用者に提示する処理提示画像ｆａと、画像を作成するための処理Ｂの処理過程を利用者に提示する処理提示画像ｆｂとが重ねて配置されている。利用者は、例えば文章を作成する作業を行うときには、処理提示画像ｆａを見ながら操作部５０を操作し、処理Ａの作業を進めていく。ＣＰＵ１０は、この操作に応じてステップＳ１１とステップＳ１２とを適宜繰り返すことで、ＲＡＭ３０に記憶されている処理データＡを更新しながら、処理Ａの各手順を実行していく。また、利用者は、画像を作成する作業を行う場合には、処理提示画像ｆｂを見ながら操作部５０を操作し、処理Ｂの作業を進めていく。ＣＰＵ１０は、この操作に応じてステップＳ１１とステップＳ１２とを適宜繰り返すことで、ＲＡＭ３０に記憶されている処理データＢを更新しながら、処理Ｂの各手順を実行していく。
【００２７】
さて、利用者は、作業を中断する場合、操作部５０の図示せぬ電源ボタンを押下するなどの操作を行って表示装置１に電源オフを指示する。このとき、ＣＰＵ１０は、利用者によって電源オフが指示されたか否かを判定する（図２のステップＳ１３）。例えば、利用者によって電源オフを指示する操作が行われていない場合、ＣＰＵ１０は、電源オフが指示されていないと判定し（ステップＳ１３：ＮＯ）、上述したステップＳ１１の処理に戻る。一方、利用者によって電源ボタンを押下するなどの電源オフを指示する操作が行われた場合、ＣＰＵ１０は、利用者によって電源オフが指示されたと判定して（ステップＳ１３：ＹＥＳ）、ＲＡＭ３０に記憶されている処理データを、その処理データが用いられる処理の単位で区分してフラッシュメモリ４０に記憶させる（ステップＳ１４）。この例では、図３上段に示したＲＡＭ３０に記憶されている処理データが、図３下段に示すように、処理Ａにおいて用いられる処理データＡと、処理Ｂにおいて用いられる処理データＢとに区分されて、フラッシュメモリ４０の記憶領域Ａ１，Ａ２にそれぞれ記憶される。この場合、この処理データＡには、図４の処理提示画像ｆａを表すデータが含まれている。また、処理データＢには、図４の処理提示画像ｆｂを表すデータが含まれている。また、この時に、ＣＰＵ１０に設けられたレジスタに記憶されている値なども、フラッシュメモリ４０に記憶される。
【００２８】
続いて、ＣＰＵ１０は、フラッシュメモリ４０に記憶された各々の処理データの記憶場所と、その処理データを用いる処理との対応関係を表すデータ管理テーブルを作成する（ステップＳ１５）。
図５は、このデータ管理テーブルＴ１の一例を示す図である。同図に示すように、このデータ管理テーブルＴ１には、各々の処理データの記憶場所を表す「アドレス」と、その処理データを用いる処理の「処理識別情報」とが対応付けられている。なお、この「アドレス」は、データが記憶されている記憶領域の先頭アドレスである。この「処理識別情報」とは、各処理に割り当てられたものであり、例えば処理を実現するプログラムのプログラム名や処理名などである。例えば、図中の１番上のレコードには、処理データＡの記憶場所を表すアドレスである「０１２０」と、処理Ａの処理識別情報である「ｔａｓｋＡ」とが対応付けられている。これは、「ｔａｓｋＡ」が表す処理、すなわち処理Ａにおいて用いられる処理データＡが、「０１２０」というアドレスから記憶されていることを表している。また、図中の上から２番目のレコードには、処理データＢの記憶場所を表すアドレスである「０４３０」と、処理Ｂの処理識別情報である「ｔａｓｋＢ」とが対応付けられている。これは、「ｔａｓｋＢ」が表す処理、すなわち処理Ｂにおいて用いられる処理データＢが、「０４３０」というアドレスから記憶されていることを表している。ＣＰＵ１０は、このデータ管理テーブルＴ１に記述された対応関係を参照することで、指示された処理に関する処理データの記憶場所を特定することができる。
【００２９】
続いて、ＣＰＵ１０は、作成したデータ管理テーブルＴ１をフラッシュメモリ４０に記憶させる。データ管理テーブルＴ１を記憶させると、ＣＰＵ１０は、電源部７０をオフにし、表示装置１の起動状態を「オン状態」から「オフ状態」に移行させる（図２のステップＳ１６）。これにより、表示装置１の各部に電力が供給されなくなり、ＲＡＭ３０に記憶されているデータが消去される。
【００３０】
（データ復元処理）
続いて、図６を参照して、表示装置１の起動状態が「オフ状態」から「オン状態」に復帰させられたときに、フラッシュメモリ４０に退避させていたデータを復元させるデータ復元処理について説明する。ここでいう復帰とは、表示装置１の起動状態が、「電力供給状態」から「電力非供給状態」に移行させられた後に、「電力非供給状態」から再び「電力供給状態」に移行させられることをいう。また、データの復元とは、ＲＡＭ３０からフラッシュメモリ４０に退避させていたデータを再びＲＡＭ３０に記憶させることである。
【００３１】
利用者によって操作部５０の電源ボタンがオンにされると（ステップＳ２１）、ＣＰＵ１０は、ＲＯＭ２０に記憶されている制御プログラムを実行して、表示装置１を起動させる（ステップＳ２２）。これにより、表示装置１の起動状態が「オフ状態」から「オン状態」に移行させられる。表示装置１が「オン状態」になると、利用者は、操作部５０を操作して、所望するプログラムを指定し、それを実行するよう指示する。
【００３２】
このとき、ＣＰＵ１０は、フラッシュメモリ４０のデータ管理テーブルＴ１に基づいて、利用者に指示された処理が、表示装置１が「オフ状態」に移行する前に実行されていたか否かを判定する（ステップＳ２３）。例えば、利用者に指示された処理の処理識別情報がデータ管理テーブルＴ１に記述されていない場合、ＣＰＵ１０は、利用者に指示された処理が「オフ状態」に移行する前に実行されていなかったと判定する（ステップＳ２３：ＮＯ）。この場合、ＣＰＵ１０は、再開する処理がないとみなし、データ復元処理を行わずに待機する一方、利用者に指示された処理を通常の手順で実行する。ここでいう再開とは、表示装置１が「オフ状態」に移行する前の処理過程から継続して処理を実行することである。
【００３３】
一方、利用者に指示された処理の処理識別情報がデータ管理テーブルＴ１に記述されている場合、ＣＰＵ１０は、利用者に指示された処理が「オフ状態」に移行する前に実行されていたと判定する（ステップＳ２３：ＹＥＳ）。この場合、ＣＰＵ１０は、フラッシュメモリ４０のデータ管理テーブルＴ１を参照して、利用者によって指示された処理に対応するアドレスを特定する（ステップＳ２４）。続いて、ＣＰＵ１０は、特定したアドレスから記憶されている処理データをフラッシュメモリ４０から読み出して、ＲＡＭ３０の空き領域に記憶させる（ステップＳ２５）。この時に、「オフ状態」に移行する前にＣＰＵ１０のレジスタに記憶されていた値も、フラッシュメモリ４０から読み出されて再びレジスタに記憶される。そして、ＣＰＵ１０は、ＲＡＭ３０に記憶させた処理データに基づいて、利用者によって指示された処理を実行する（ステップＳ２６）。
【００３４】
例えば、画像を作成する処理Ｂを再開させたい場合、利用者は、操作部５０を操作して処理Ｂの実行を指示する。図５に示したデータ管理テーブルＴ１には、利用者に指示された処理Ｂの処理識別情報である「ｔａｓｋＢ」が記述されている。この場合、ステップＳ２３では、利用者に指示された処理が「オフ状態」に移行する前に実行されていたと判定される（ステップＳ２３：ＹＥＳ）。続くステップＳ２４では、図５に示したデータ管理テーブルＴ１において、この「ｔａｓｋＢ」と対応付けて記憶されているアドレス、すなわち「０４３０」が特定される。続くステップＳ２５では、特定された「０４３０」というアドレスから記憶されている処理データＢがフラッシュメモリ４０から読み出されて、ＲＡＭ３０に記憶される。そして、ステップＳ２６では、ＲＡＭ３０に記憶された処理データＢに基づいて処理Ｂが実行される。
【００３５】
図７は、処理Ｂの実行に伴って、表示部６０に表示される表示画面Ｓ２の一例を示す図である。処理データＢには、上述したように、図４の処理提示画像ｆｂを表すデータが含まれているから、この表示画面Ｓ２には、図４に示したものと同様の処理提示画像ｆｂが配置されている。これは、「オフ状態」に移行する前の処理過程から継続して処理Ｂが実行可能であることを表している。これにより、利用者は、「オフ状態」に移行する前の処理の過程から処理Ｂを進めることができる。
【００３６】
また、利用者は、上述と同様にして再開させたい処理を指定することにより、さらに他の処理を再開させることができる。例えば、文章を作成するための処理Ａをさらに再開させたい場合、利用者は、操作部５０を操作して処理Ａの実行を指示する。ＣＰＵ１０は、上述したステップＳ２６において処理を実行した後にステップＳ２３の処理に戻り、利用者によって新たな処理の実行が指示されると、その新たに指示された処理が、表示装置１が「オフ状態」に移行する前に実行されていたか否かを判定する。図５に示したデータ管理テーブルＴ１には、利用者に指示された処理Ａの処理識別情報である「ｔａｓｋＡ」が記述されている。この場合、ステップＳ２３では、利用者に指示された処理が「オフ状態」に移行する前に実行されていたと判定される（図６のステップＳ２３：ＹＥＳ）。続くステップＳ２４では、図５に示したデータ管理テーブルＴ１において、この「ｔａｓｋＡ」と対応付けて記憶されているアドレス、すなわち「０１２０」が特定される。続くステップＳ２５では、特定された「０１２０」というアドレスから記憶されている処理データＡがフラッシュメモリ４０から読み出されて、ＲＡＭ３０に記憶される。そして、ステップＳ２６では、ＲＡＭ３０に記憶された処理データＡに基づいて処理Ａが実行される。
【００３７】
図８は、処理Ａの実行に伴って、表示部６０に表示される表示画面Ｓ３の一例を示す図である。処理データＡには、上述したように図４の処理提示画像ｆａを表すデータが含まれているから、この表示画面Ｓ３には、上述した処理提示画像ｆｂに加えて、図４に示したものと同様の処理提示画像ｆａが配置されている。これは、「オフ状態」に移行する前の処理過程から継続して処理Ａを実行可能であることを表している。これにより、利用者は、「オフ状態」に移行する前の処理の過程から処理Ａを進めることができる。
【００３８】
このように、表示装置１が「オン状態」から「オフ状態」に移行するときにはデータ退避処理を実行し、「オフ状態」から「オン状態」に復帰したときにはデータ復元処理を実行する。なお、オン状態とスリープ状態は、電力供給状態であるという点では共通であるから、これらオン状態とスリープ状態との間では、上記のようなデータ退避処理やデータ復元処理は行われない。
【００３９】
以上説明した実施形態によれば、「電力供給状態」（「オン状態」又は「スリープ状態」）から「電力非供給状態」（「オフ状態」）に移行するときには、処理の単位毎に区分して処理データを退避させておき、「電力非供給状態」から「電力供給状態」に移行するときに、利用者の再開させたい処理に用いられる処理データのみを復元する。そのため、「電力非供給状態」に移行する前に実行されていた全ての処理で用いられる処理データを復元する構成に比べて、データの復元に要する時間が短くなり、またＲＡＭ３０において費やされるメモリ容量も少なくてすむ。すなわち、「電力非供給状態」に移行するまでにデータを退避させておき、「電力非供給状態」が解かれたときには退避させていたデータを復元するという処理を効率よく行うことができる。
【００４０】
［変形例］
以上が実施形態の説明であるが、この実施形態の内容は以下のように変形し得る。また、以下の変形例を適宜組み合わせてもよい。
（変形例１）
上述した実施形態においては、図３に示したように、フラッシュメモリ４０においては、１つの処理で用いられる処理データをひとまとまりのデータとして取り扱っていたが、これに対し、各処理で用いられる処理データをさらに複数に分類して取り扱うようにしてもよい。図９上段は、この変形例に係るＲＡＭ３０の記憶内容の一例を示す図である。同図上段に示すように、このＲＡＭ３０には、スタティック領域とヒープ領域とスタック領域とが確保されている。上述したように、スタティック領域は静的データが記憶される記憶領域であり、ヒープ領域は動的に割り当てられる記憶領域であり、スタック領域はスタックとして機能する記憶領域である。スタティック領域には、処理Ａで用いられる処理データａ１と、処理Ｂで用いられる処理データｂ１と、処理Ａ及び処理Ｂで共用される処理データａ２，ｂ２とが記憶されている。また、ヒープ領域には、処理Ａで用いられる処理データａ３と、処理Ｂで用いられる処理データｂ３とが記憶されている。さらに、スタック領域には、処理Ａで用いられる処理データａ４と、処理Ｂで用いられる処理データｂ４とが記憶されている。
【００４１】
この場合、ＣＰＵ１０は、処理データａ１、処理データａ２，ｂ２、処理データａ３及び処理データａ４を処理Ａとして区分し、処理データｂ１、処理データａ２，ｂ２、処理データｂ３及び処理データｂ４を処理Ｂとして区分して、フラッシュメモリ４０に記憶させる。フラッシュメモリ４０には、図３下段に示したように、同じ処理に関する処理データをアドレスが連続する１つの記憶領域にまとめて記憶させてもよいし、図９下段に示すように、フラッシュメモリ４０もスタティック領域とヒープ領域とスタック領域とに分け、各々の領域に対応する処理データを記憶させるようにしてもよい。そして、ＣＰＵ１０は、各々の処理データの記憶場所を表すアドレスと、その処理データを用いる処理と、さらにその処理データが記憶されていたＲＡＭ３０の記憶領域との対応関係を表すデータ管理テーブルを作成する。
【００４２】
この構成において、例えば利用者に処理Ａの実行が指示された場合、ＣＰＵ１０は、作成したデータ管理テーブルを参照して、利用者に指示された処理Ａに対応するアドレスとＲＡＭ３０の記憶領域とを特定する。続いて、ＣＰＵ１０は、特定したアドレスに記憶されている処理データａ１、処理データａ２，ｂ２、処理データａ３及び処理データａ４をフラッシュメモリ４０から読み出す。そして、ＣＰＵ１０は、読み出したこれらの処理データを、ＲＡＭ３０の特定した各記憶領域に記憶させる。この例では、処理データａ１及び処理データａ２，ｂ２がＲＡＭ３０のスタティック領域に記憶され、処理データａ３がＲＡＭ３０のヒープ領域に記憶され、処理データａ４がＲＡＭ３０のスタック領域に記憶される。続いて、利用者に処理Ｂの実行が指示された場合にも、ＣＰＵ１０は上述と同様にしてデータを復元させる。ただし、ＣＰＵ１０は、既にＲＡＭ３０上にデータが復元されている処理データａ２，ｂ２については、復元させない。
このように、ＲＡＭ３０に記憶されているデータを複数のデータに区分してフラッシュメモリ４０に記憶する構成であれば、ＲＡＭ３０やフラッシュメモリ４０において各々のデータを記憶する記憶領域をどのように構成してもよい。
【００４３】
（変形例２）
上述した実施形態では、ＲＡＭ３０に記憶されている処理データを、その処理データが用いられる処理の単位で区分してフラッシュメモリ４０に記憶させていた。この処理の単位は、上述したように、利用者が指定する処理Ａや処理Ｂなどに対応する単位、すなわちタスク単位であってもよいし、それよりも小さな単位、例えば処理を実現する処理プログラムのプロセス単位や関数単位であってもよい。
【００４４】
また、ＲＡＭ３０に記憶されている処理データを、上記のような各種処理の単位ではなく、所定のデータサイズ単位で区分してフラッシュメモリ４０に記憶させてもよい。図１０は、この変形例に係るＲＡＭ３０とフラッシュメモリ４０の記憶内容の一例を示す図であり、図１１は、この変形例に係るデータ管理テーブルＴ２の一例を示す図である。データ退避時にＲＡＭ３０から読み出された処理データは、フラッシュメモリ４０に一定のデータサイズで区分されて記憶される。この一定のデータサイズは、ＲＡＭ３０やフラッシュメモリ４０などを管理するための仕組みに応じて予め決定される。図に示した例では、処理データＡ，Ｂが１００というデータサイズで区分されてフラッシュメモリ４０に記憶されている。すなわち、図１１に示すアドレス「０１００」、「０２００」・・・・間の記憶領域に記憶されるデータサイズは一定である。また、アドレス「０３００」から記憶されている処理データには、処理Ａの処理データと、処理Ｂの処理データとが記憶されている。
【００４５】
この構成において、処理Ａにて用いられる処理データを復元するときには、フラッシュメモリ４０のアドレス「０１００」，「０２００」，「０３００」から処理データＡ及び処理データＢの一部を読み出し、ＲＡＭ３０に記憶させる。なお、この場合、ＲＡＭ３０に記憶された処理データＢの一部については、使用されない。また、処理Ｂにて用いられる処理データを復元するときには、フラッシュメモリ４０のアドレス「０３００」，「０４００」，「０５００」から処理データＢ及び処理データＡの一部を読み出し、ＲＡＭ３０に記憶させる。なお、この場合、ＲＡＭ３０に記憶された処理データＡの一部については、使用されない。このように、処理データを処理単位で区分していない場合には、フラッシュメモリ４０へと復帰させた処理データのうち一部が使用されないことになり、フラッシュメモリ４０に無駄な記憶領域が生じてしまうことになる。しかしながら、データの読み書きを固定長のデータ単位で管理することができるため、データの退避や復元を簡素な手順により高速で行うことができる。
【００４６】
（変形例３）
上述した実施形態では、利用者によって指示された処理で用いられる処理データのみが復元されていたが、これに限らない。例えば、利用者に指示された処理の処理データを復元した後に、この処理の後に行われる可能性が高い処理を推定し、その処理データを復元するようにしてもよい。この場合、フラッシュメモリ４０には、各々の処理の処理名（第１の処理の処理識別情報）と、その処理の後に行われる処理の処理名（第２の処理の処理識別情報）とが予め対応付けて記憶されている。この対応関係は、例えば以下の方法によって決定する。
【００４７】
（ａ１）利用者は、予め、操作部５０を操作して、各々の処理の処理名とその処理の後に再開させたい処理の処理名とを指定し、これらを対応付けてフラッシュメモリ４０に記憶させておく。例えば或る文章を表示させた後には必ず或る画像を表示するというような場合には、或る文章を表示させる処理の処理名と、或る画像を表示する処理の処理名とを指定するといった具合である。ＣＰＵ１０は、上述した図６のステップＳ２６において処理を実行すると、この対応関係を参照して、実行した処理の処理名に対応付けられた処理名を特定する。続いて、ＣＰＵ１０は、特定した処理名の処理に対応するアドレスを特定し、特定したアドレスに記憶されている処理データをフラッシュメモリ４０から読み出して、ＲＡＭ３０に記憶させる。この構成によれば、「オン状態」に復帰した表示装置１においてある処理が実行されると、その処理の後に再開させたい処理として利用者が指定した処理の処理データが自動的に復元される。これにより、各処理の後に再開させたい処理として指定された処理をすばやく実行することができる。
【００４８】
（ａ２）ＣＰＵ１０は、予め、各処理の内容に基づいて、各々の処理の処理名とその処理によって呼び出される処理の処理名とを対応付けてフラッシュメモリ４０に記憶させておく。例えば、処理Ｃが処理Ｄ，Ｅ，Ｆのいずれかの処理の選択を促すメニュー画面を表示する処理である場合、この処理Ｃの手順が記述されたプログラムには、処理Ｃによって呼び出される側の処理である処理Ｄ，Ｅ，Ｆの処理名が記述されている。従って、ＣＰＵ１０はこれを参照して、処理Ｃの処理名に、処理Ｄ，Ｅ，Ｆの各処理名を対応付けてＲＡＭ３０などに記憶する。この構成において、例えば上述した図６のステップＳ２６において処理Ｃが実行された場合、ＣＰＵ１０は、上述と同様にして、処理Ｃに呼び出される処理、すなわち処理Ｄ，Ｅ，Ｆを特定し、特定した処理の処理データをそれぞれ復元する。この構成によれば、「オン状態」に復帰した表示装置１においてある処理が実行されると、その処理によって呼び出される処理の処理データが自動的に復元される。これにより、各処理によって呼び出される処理をすばやく実行することができる。
【００４９】
（ａ３）ＣＰＵ１０は、予め、各処理の処理履歴に基づいて、各々の処理の処理名とその処理の後に実行された頻度が高い処理の処理名とを対応付けてフラッシュメモリ４０に記憶させておく。この頻度は、例えば処理が実行された回数の絶対値であってもよいし、処理が実行された回数を相対評価した結果（例えば処理の回数が一定期間又は一定回数に占める割合）であってもよい。ＣＰＵ１０は、利用者によって指示された処理の順番を処理履歴として蓄積し、その処理履歴に含まれる処理の順序を統計的に分析して、どの処理の後にはどの処理が実行された頻度が高いかを判断し、その判断結果をフラッシュメモリ４０に記憶しておく。例えば、処理Ｂの後に処理Ａが実行された頻度が高いと判断された場合、処理Ｂの処理名には、処理Ａの処理名が対応付けて記憶される。また、処理Ｃに続いて他の処理が実行された後に処理Ｄが実行された頻度が高いと判断された場合、処理Ｃの処理名には、処理Ｄの処理名が対応付けて記憶される。この構成において、例えば上述した図６のステップＳ２６において処理Ｂが実行された場合、ＣＰＵ１０は、上述と同様にして、処理Ｂの後に実行された頻度が高い処理、すなわち処理Ａを特定し、特定した処理の処理データを復元する。この構成によれば、「オン状態」に復帰した表示装置１においてある処理が実行されると、その処理が実行された後に実行された頻度が高い処理の処理データが自動的に復元される。これにより、各処理が実行された後に実行される可能性が高い処理をすばやく実行することができる。
なお、上述した処理履歴は、表示装置１が工場出荷時以降に初めて使用された時点から蓄積されたものであってもよいし、週に１回などの所定のタイミングでリセットされてから蓄積されたものであってもよい。処理履歴をリセットせずに蓄積した場合には、長期的にみて、各処理が実行された後に実行される頻度が高い処理の処理データが自動的に復元される。一方、処理履歴を所定のタイミングでリセットした場合には、短期的にみて、各処理が実行された後に実行される頻度が高い処理の処理データが自動的に復元される。
【００５０】
（変形例４）
上述した実施形態では、利用者に指示された処理で用いられる処理データを復元させていたが、復元する対象となる処理データを特定する方法は、これに限らない。例えば次のような方法が考えられる。
（ｂ１）例えば、ＣＰＵ１０は、利用者によって処理が指示されるのを待たずに、自ら能動的に処理データを復元してもよい。例えばＣＰＵ１０は、各々の処理が実行された頻度を求めておき、フラッシュメモリ４０に退避させた処理データを、その実行頻度が高い処理で用いられる処理データから順に復元させてもよい。この場合、フラッシュメモリ４０には、各々の処理データ毎に、その処理データを用いる処理が行われた頻度が記憶される。この頻度は、変形例３と同じく、処理が実行された回数の絶対値であってもよいし、処理が実行された回数を相対評価した結果であってもよい。ＣＰＵ１０は、上述したステップＳ２２において表示装置１を起動した後、フラッシュメモリ４０に退避させておいた処理データを、実行頻度が高いものから順に復元させる。この構成では、実行頻度が高い処理において用いられる処理データが、実行頻度が低い処理において用いられる処理データよりも先に復元される。これにより、利用者が処理を指示しなくても、実行頻度が高い処理をすばやく実行することができる。
【００５１】
（ｂ２）また、ＣＰＵ１０が、「電力非供給状態」に移行する前に実行されていた処理に基づいて、その処理の後に行われる処理で用いられる処理データを復元させてもよい。この場合、フラッシュメモリ４０には、各々の処理の処理名と、その処理の後に「電力非供給状態」を経由して「オン状態」に復帰したときに行われる処理の処理名とが対応付けて記憶される。この対応関係は、上述と同様にして、処理の内容に基づいてＣＰＵ１０が決定してもよいし、処理の実行順序に基づいてＣＰＵ１０が決定してもよい。この構成において、ＣＰＵ１０は、上述したステップＳ２２において表示装置１を起動した後、フラッシュメモリ４０のデータ管理テーブルＴ１に基づいて、表示装置１が「電力非供給状態」になる前に実行していた処理を特定する。続いて、ＣＰＵ１０は、上述した対応関係を参照して、特定した処理の後に「電力非供給状態」を経由して「オン状態」に復帰したときに行われる処理を特定する。そして、ＣＰＵ１０は、特定した処理で用いられる処理データをフラッシュメモリ４０から読み出し、ＲＡＭ３０に記憶させる。これにより、表示装置１が「オン状態」に復帰したときに行われる可能性が高い処理をすばやく実行することができる。
【００５２】
（ｂ３）上述した実施形態では、利用者によって指示された処理で用いられる処理データを復元させていたが、これに限らない。例えば、ＣＰＵ１０が、「オフ状態」に移行する前にアクティブになっていた処理で用いられる処理データを復元させてもよい。ここでいうアクティブになっている処理とは、マルチタスクで処理されている複数の処理のうち、利用者が作業を行っている処理であり、大抵の場合、表示画面の最前面に処理経過が表示されている処理である。この場合、ＣＰＵ１０は、アクティブになっている処理の処理データをフラッシュメモリ４０に記憶させるときには、アクティブな処理であることを表す情報を付加しておく。この構成において、ＣＰＵ１０は、上述した図６のステップＳ２２において表示装置１を起動した後、アクティブな処理であることを表す情報が付加されている処理データをフラッシュメモリ４０から読み出して、ＲＡＭ３０に記憶させる。これにより、表示装置１が「オン状態」に復帰した時に行われる可能性が高い処理をすばやく実行することができる。
【００５３】
（変形例５）
上述した実施形態では、表示装置１の起動状態が「電力供給状態」から「電力非供給状態」に移行する、まさにその移行タイミングにデータの退避が行われていたが、データを退避させるタイミングはこれに限らず、ＣＰＵ１０による処理やプロセスが行われない期間を利用して処理データを退避させるようにしてもよい。例えば、ＣＰＵ１０は、各々の処理が終了する度に、その処理で用いた処理データを退避させてもよい。あるいは、ＣＰＵ１０は、各処理を構成する各々のプロセスが終了する度に、そのプロセスで用いられた処理データを退避するようにしてもよい。また、ＣＰＵ１０は、これらの両者を併用してもよい。この構成によれば、利用者が処理データを逐一保存させなくても、処理データが自動的にフラッシュメモリ４０に記憶される。これにより、例えば電力不足などの理由で処理データの保存を行わずに処理が終了してしまったために、処理データが消えてしまったという事態を防ぐことができる。さらに、この構成において、ＣＰＵ１０は、各々の処理が終了する度に、表示装置１の起動状態を「オン状態」から「電力非供給状態」に移行させてもよい。これにより、表示装置１の消費電力を削減することができる。
【００５４】
（変形例６）
上述した実施形態では、複数の処理データを退避させる順番については特に説明しなかったが、上記変形例５のように処理やプロセスが行われない期間を利用して処理データを退避させる構成においては、処理データの退避の順番を次のようにしてもよい。
（ｃ１）ＣＰＵ１０は、処理データを用いる処理の実行頻度が低いものから順に退避させてもよい。この場合、フラッシュメモリ４０には、各々の処理データ毎に、その処理データを用いる処理が行われた頻度が記憶されている。この頻度は、変形例３と同じく、処理が実行された回数の絶対値であってもよいし、処理が実行された回数を相対評価した結果であってもよい。ＣＰＵ１０は、処理やプロセスが行われない期間があると、ＲＡＭ３０に記憶させた処理データを、実行頻度が低いものから順に読み出して、フラッシュメモリ４０に記憶させる。この構成では、実行頻度が高い処理において用いられる処理データが、実行頻度が低い処理において用いられる処理データよりも後に退避される。このようにすれば、実行される可能性が低い処理の処理データ、すなわち変更される可能性の少ない処理データを優先的に退避することができるので、全体的な退避作業をすばやく実行することができる。
【００５５】
（ｃ２）また、実行中の処理の後に行われる可能性の高い処理の処理データがＲＡＭ３０に記憶されている場合には、ＣＰＵ１０は、後に行われる可能性の高い処理以外の処理の処理データを先に退避させる。この場合、フラッシュメモリ４０には、上述の変形例３と同様にして、各々の処理の処理名と、その処理の後に行われる可能性の高い処理の処理名とが対応付けて記憶されている。つまり、この対応関係は、上述と同様にして、利用者が指定してもよいし、処理の内容に基づいてＣＰＵ１０が決定してもよいし、あるいは処理の実行順序に基づいてＣＰＵ１０が決定してもよい。ＣＰＵ１０は、処理やプロセスが行われない期間があると、上述した対応関係に基づいて、実行中の処理の後に実行される処理を特定する。続いて、ＣＰＵ１０は、特定した処理で用いられる処理データがＲＡＭ３０に記憶されているか否かを判定し、記憶されている場合には、その処理データ以外の処理データを読み出して、フラッシュメモリ４０に記憶させる。このようにすれば、実行される可能性が低い処理の処理データを優先的にフラッシュメモリ４０に退避することができるので、全体的な退避作業をすばやく実行することができる。
【００５６】
（変形例７）
上述した実施形態は、ＣＰＵ１０、ＲＡＭ３０及びフラッシュメモリ４０からなるデータ管理装置を表示装置に適用した例であったが、これに限らない。要するに、このデータ管理装置と、電力供給を受けずにデータを記憶した状態を維持する記憶手段に記憶された処理データを用いて処理を行う処理手段と、その処理手段によって処理された結果を出力する出力手段とを備える情報処理装置に適用可能である。
また、上述した実施形態では、ＣＰＵ１０が、ＲＡＭ３０からデータを退避させる処理、及び、フラッシュメモリ４０からデータを復元させる処理を行っていた。このＣＰＵ１０に代わって、ＭＭＵ（Memory Management Unit）などの、記憶手段専用の制御装置がこれらの処理を行ってもよい。具体的な動作は以下のとおりである。まず、ＣＰＵ１０は、利用者に指示された処理の処理データをＭＭＵに要求する。ＭＭＵは、要求された処理データがＲＡＭ３０に記憶されている場合には、その処理データがＲＡＭ３０に記憶されていることをＣＰＵ１０に通知する。ＣＰＵ１０は、ＲＡＭ３０に記憶されている処理データに基づいて、利用者によって指示された処理を実行する。一方、要求された処理データがＲＡＭ３０に記憶されていない場合には、ＭＭＵは、その旨のフォルト信号をＣＰＵ１０に通知する。ＣＰＵ１０は、この通知に応じて、要求した処理データをフラッシュメモリ４０からＲＡＭ３０に復帰させるよう、ＭＭＵに指示する。ＭＭＵはこの指示に応じて、フラッシュメモリ４０から読み出した処理データをＲＡＭ３０に記憶させて、その旨をＣＰＵ１０に通知する。ＣＰＵ１０は、ＲＡＭ３０に記憶されている処理データに基づいて、利用者によって指示された処理を実行する。
【００５７】
（変形例８）
上述した実施形態では、表示装置１が「オフ状態」から「オン状態」に復帰させられると、利用者が操作部５０を操作して所望するプログラムを指定し、それを実行するよう指示していたが、これ以外にも、処理の指示方法は様々な方法が考えられる。例えばＣＰＵ１０が前回の電源オフ時に実行中であった処理の処理名の一覧を表示部６０に表示させ、その一覧の中から利用者に所望の処理を選択させるという方法であってもよい。また、利用者が処理Ａを所望するときには操作部５０の図示せぬテンキーの「１」を押下し、処理Ｂを所望するときには操作部５０の図示せぬテンキーの「２」を押下するなどといった具合に、利用者が処理毎に決められた操作を行うという方法であってもよい。
【００５８】
（変形例９）
上述した実施形態において、「オン状態」から「スリープ状態」への移行は、ＣＰＵ１０の待機時間が所定時間以上になった時に行われていたが、この移行条件はこれに限らない。例えば、「オン状態」において実行されている処理の内容に応じて、上記の所定時間を長くしたり短くしたりしてもよい。一例を挙げると、「オン状態」において、利用者によるメニュー選択操作を促すメニュー画面の表示処理が実行された後にＣＰＵ１０が待機状態になった場合には、その待機時間が通常の所定時間よりも長い時間以上になった時に「オン状態」から「スリープ状態」に移行させてもよい。これは、ＣＰＵ１０が待機状態になっている原因として、利用者による作業の中断や中止ではなく、利用者が操作の意思決定に時間がかかっている場合が考えられるからである。
【００５９】
また、ＣＰＵ１０の待機時間が所定時間以上となった場合には、表示装置１を「オフ状態」に移行させるのか又は「スリープ状態」に移行させるのかを、どちらが消費電力の削減になるかという観点から判断するようにしてもよい。つまり、ＣＰＵ１０は、「スリープ状態」に移行させた方が消費電力の削減になる場合には、表示装置１を「オフ状態」に移行させずに、「スリープ状態」に移行させる。
【００６０】
ここで、図１２を参照して、各起動状態における消費電力について説明する。同図に示すように、「オフ状態」では消費電力がほぼ０となるが、「オフ状態」から「オン状態」に復帰するときには、表示装置１の各部を起動するために一時的に多くの電力を消費する。よって、「オフ状態」の時間が短い時には、「オフ状態」を経由して「オン状態」に復帰するよりも、「スリープ状態」を経由して「オン状態」に復帰した方が、消費電力の削減になる。そこで、フラッシュメモリ４０には、「オン状態」から「オフ状態」又は「スリープ状態」のうちのいずれかに移行させるための移行条件であって、その移行後に「オン状態」に再度移行させるまでに要する消費電力が少なくなるような移行条件が予め記憶されている。そして、ＣＰＵ１０は、その移行条件に基づいて、「オン状態」から「オフ状態」に移行させるか又は「スリープ状態」に移行させるかを決定し、決定した状態へと移行させる。このようにすれば、表示装置１における消費電力を削減することが可能となる。
【００６１】
具体的に説明すると、ＣＰＵ１０は、電源部７０から常時電力供給を受けるタイマを用いて、表示装置１が「オフ状態」になっている時間を記録しておき、その記録時間に基づいて、「オフ状態」に移行させるのか又は「スリープ状態」に移行させるのかを判断する。例えば前回「オフ状態」になっていた時間が閾値未満である場合には、今回、ＣＰＵ１０の待機時間が所定時間以上となると、表示装置１を「スリープ状態」に移行させる。一方、前回「オフ状態」になっていた時間が閾値以上である場合には、今回、ＣＰＵ１０の待機時間が所定時間以上となると、表示装置１を「オフ状態」に移行させる。この場合、前回の待機時間と比較される閾値は、図１２で説明したような「オフ状態」を経由して「オン状態」に復帰したときの消費電力量と、「スリープ状態」を経由して「オン状態」に復帰したときの消費電力量が等しくなるような時間である。そして、このときフラッシュメモリ４０に記憶されている移行条件は、この閾値と、前回の待機時間と、これらの大小関係に基づいて「オフ状態」又は「スリープ状態」のいずれに移行させるかというアルゴリズムである。
【００６２】
また、過去に表示装置１が「オフ状態」となっていた時間の平均値が閾値未満である場合には、ＣＰＵ１０の待機時間が所定時間以上となると、表示装置１を「スリープ状態」に移行させる。一方、過去に表示装置１が「オフ状態」となっていた時間の平均値が閾値以上である場合には、ＣＰＵ１０の待機時間が所定時間以上となると、表示装置１を「オフ状態」に移行させる。この場合の閾値も、「オフ状態」を経由して「オン状態」に復帰したときの消費電力量と、「スリープ状態」を経由して「オン状態」に復帰したときの消費電力量が等しくなるような時間である。そして、このときフラッシュメモリ４０に記憶されている移行条件は、この閾値と、過去に表示装置１が「オフ状態」となっていた時間の平均値と、これらの大小関係に基づいて「オフ状態」又は「スリープ状態」のいずれに移行させるかというアルゴリズムである。
【００６３】
また、ＣＰＵ１０は、「オン状態」において実行されていた処理が、「オフ状態」になってもすぐに「オン状態」に復帰されるような類の処理であると判断した場合には、「オフ状態」に移行させずに「スリープ状態」に移行させるようにしてもよい。すぐに「オン状態」に復帰される類の処理であるか否かは、各々の処理の内容に応じて予め決められていてもよいし、ＣＰＵ１０が過去の処理履歴から学習的に求めてもよい。この場合、フラッシュメモリ４０に記憶されている移行条件は、すぐに「オン状態」に復帰されるような類の処理であると予め決められた処理の処理名と、処理の処理名に基づいてオフ状態又はスリープ状態のいずれに移行させるかというアルゴリズムである。
【００６４】
（変形例１０）
上述した実施形態では、電力供給を受けてデータを記憶した状態を維持する第１の記憶手段としてＲＡＭ３０を例示し、電力供給を受けずにデータを記憶した状態を維持する第２の記憶手段としてフラッシュメモリ４０を例示していたが、これら記憶手段の具体例は、実施形態の例示に限定されることはない。
【００６５】
（変形例１１）
上述した実施形態では、「オン状態」及び「スリープ状態」を「電力供給状態」とし、「オフ状態」を「電力非供給状態」としていたが、一般に「スリープ状態」と呼ばれる起動状態を「電力供給状態」に分類するか「電力非供給状態」に分類するかは、ＲＡＭ３０に電力を供給するか否かによって決めればよい。「スリープ状態」を「電力非供給状態」に分類した場合には、上述した図２のステップＳ１３で、ＣＰＵ１０が、自身の待機時間が所定時間以上であるか否かを判断し、所定時間以上であればステップＳ１４の処理に進む。そして、ステップＳ１６では、ＣＰＵ１０が、表示装置１の起動状態を「オン状態」から「スリープ状態」に移行させる。これにより、表示装置１の起動状態が「オン状態」から「スリープ状態」に移行される場合のデータ退避処理が実行される。また、上述したステップＳ２１及びＳ２２では、利用者によって操作部５０が操作されると、ＣＰＵ１０が表示装置１の起動状態を「スリープ状態」から「オン状態」に移行させる。これにより、表示装置１の起動状態が「スリープ状態」から「オン状態」に復帰した場合にデータ復元処理が実行される。
【００６６】
（変形例１２）
また、上述した表示装置１のＣＰＵ１０が実行するプログラムは、磁気テープ、磁気ディスク、フレキシブルディスク、光記録媒体、光磁気記録媒体、ＣＤ（Compact Disk）、ＤＶＤ（Digital Versatile Disk）、ＲＡＭなどの記録媒体に記録した状態で提供し得る。また、インターネットなどのネットワーク経由で表示装置１にダウンロードさせることも可能である。即ち、本発明をプログラムとして実現することもできる。
【図面の簡単な説明】
【００６７】
【図１】本実施形態に係る表示装置の構成を示す図である。
【図２】同表示装置によるデータ退避処理を示すフロー図である。
【図３】本実施形態に係るＲＡＭとフラッシュメモリの記憶内容の一例を示す図である。
【図４】処理Ａ，Ｂの実行に伴う表示画面の一例を示す図である。
【図５】本実施形態に係るデータ管理テーブルの一例を示す図である
【図６】同表示装置によるデータ復元処理を示すフロー図である。
【図７】処理Ｂの実行に伴う表示画面の一例を示す図である。
【図８】処理Ａの実行に伴う表示画面の一例を示す図である。
【図９】変形例に係るＲＡＭとフラッシュメモリの記憶内容の一例を示す図である。
【図１０】変形例に係るＲＡＭとフラッシュメモリの記憶内容の一例を示す図である。
【図１１】変形例に係るデータ管理テーブルの一例を示す図である。
【図１２】各起動状態における消費電力を説明する図である。
【符号の説明】
【００６８】
１…表示装置、１０…ＣＰＵ、２０…ＲＯＭ、３０…ＲＡＭ、４０…フラッシュメモリ、５０…操作部、６０…表示部、７０…電源部、８０…バス。
【図１】
0005034861.tif 000002
【図２】
0005034861.tif 000003
【図３】
0005034861.tif 000004
【図４】
0005034861.tif 000005
【図５】
0005034861.tif 000006
【図６】
0005034861.tif 000007
【図７】
0005034861.tif 000008
【図８】
0005034861.tif 000009
【図９】
0005034861.tif 000010
【図１０】
0005034861.tif 000011
【図１１】
0005034861.tif 000012
【図１２】
0005034861.tif 000013