(57)【要約】【課題】  電源のオフ操作がされてからすぐ後にオン操作がされた場合において、画像形成装置のＯＳの起動に要する時間を従来よりも短くすることを目的とする。【解決手段】  ＲＡＭ１０ｂと、オフ操作までに標準スナップショットデータ６Ａを取得する標準スナップショット処理部１０２と、オフ操作からＯＳの終了までにオン操作された場合に高速スナップショット処理の進捗を判断するスナップショット進行判断部１５９と、進捗が基準を上回っている場合に高速スナップショット処理を開始しまたは継続し、進捗が基準を下回っている場合にこの処理を開始せずまたは中断する高速スナップショット処理部１５４と、ＯＳの終了後、この処理が完了した場合に高速スナップショットデータ６Ｂを用いてＯＳを起動し、完了しなかった場合に標準スナップショットデータ６Ａを用いてＯＳを起動する起動部１０１と、を備える。【選択図】図２
2018005683.tif 000002
【特許請求の範囲】
【請求項１】
揮発性メモリと、
システムの起動が開始してから完了するまでの所定の時点において前記揮発性メモリに記憶されているデータの所定の一部またはすべてである第１のデータを、電源をオフにする切断指示がなされるまでに取得する、第１の取得手段と、
前記切断指示がなされてから前記システムが終了するまでに前記電源をオンにする接続指示がなされた場合に、所定の処理の進捗を判断する、判断手段と、
前記進捗が所定の基準を上回っている場合に、前記第１のデータよりも大きい、前記システムの起動が完了した時点において前記揮発性メモリに記憶されているデータの所定の一部またはすべてである第２のデータの取得を開始しまたは開始していれば継続し、当該進捗が当該所定の基準を下回っている場合に、当該第２のデータの取得を開始せずまたは既に開始していれば中断する、第２の取得手段と、
前記システムが終了した後、前記第２の取得手段による前記第２のデータの取得が完了した場合に、前記第２のデータを用いて前記システムを起動し、当該取得が完了しなかった場合に、前記第１のデータを用いて当該システムを起動する、起動手段と、を備える、
ことを特徴とする画像形成装置。
【請求項２】
前記所定の処理は、前記第２のデータの取得であり、
前記判断手段は、前記進捗として前記第２のデータの取得の進捗を判断する、
請求項１に記載の画像形成装置。
【請求項３】
前記判断手段は、前記進捗として、前記第２のデータのうちの前記接続指示がなされた時点において前記第２の取得手段によって取得された部分のサイズを判断する、
請求項１または請求項２に記載の画像形成装置。
【請求項４】
前記所定の基準は、前記切断指示がなされてから前記電源が切断されることなく前記第１のデータを用いた前記システムの起動が完了するまでの時間と当該切断指示がなされてから当該電源が切断されることなく当該第２のデータを用いた当該システムの起動が完了するまでの時間とが等しい場合において当該切断指示がなされてから当該接続指示がなされるまでの間に前記第２の取得手段が取得することができる当該第２のデータの部分のサイズである、
請求項３に記載の画像形成装置。
【請求項５】
指示されたジョブを実行する、複数の実行手段と、
前記切断指示がなされてから前記実行手段を終了させる、終了手段と、を有し、
前記所定の処理は、前記実行手段を終了させる処理であり、
前記判断手段は、前記進捗として、終了された前記実行手段の数を判断する、
請求項１に記載の画像形成装置。
【請求項６】
前記切断指示がなされてから前記接続指示がなされるまでの経過時間を計測する、計測手段を有し、
前記第２の取得手段は、前記経過時間があらかじめ定められた時間より短い場合は、前記進捗に関わらず前記第２のデータの取得を行わない、
請求項１ないし請求項５のいずれかに記載の画像形成装置。
【請求項７】
前記第２の取得手段は、前記接続指示がなされた後に前記電源を再度オフにする再切断指示がなされた場合は、前記進捗に関わらず前記第２のデータの取得を開始せずまたは当該取得を中断する、
請求項１ないし請求項６のいずれかに記載の画像形成装置。
【請求項８】
揮発性メモリを備える画像形成装置が行う起動方法であって、
システムの起動が開始してから完了するまでの所定の時点において前記揮発性メモリに記憶されているデータの所定の一部またはすべてである第１のデータを、電源をオフにする切断指示がなされるまでに取得する、第１の取得ステップと、
前記切断指示がなされてから前記システムが終了するまでに前記電源をオンにする接続指示がなされた場合に、所定の処理の進捗を判断する、判断ステップと、
前記進捗が所定の基準を上回っている場合に、前記第１のデータよりも大きい、前記システムの起動が完了した時点において前記揮発性メモリに記憶されているデータの所定の一部またはすべてである第２のデータの取得を開始しまたは開始していれば継続し、当該進捗が当該所定の基準を下回っている場合に、当該第２のデータの取得を開始せずまたは既に開始していれば中断する、第２の取得ステップと、
前記システムが終了した後、前記第２の取得手段による前記第２のデータの取得が完了した場合に、前記第２のデータを用いて前記システムを起動し、当該取得が完了しなかった場合に、前記第１のデータを用いて当該システムを起動する、起動ステップと、
を備えることを特徴とする起動方法。
【請求項９】
揮発性メモリと、システムの起動が開始してから完了するまでの所定の時点において当該揮発性メモリに記憶されているデータの所定の一部またはすべてであり電源をオフにする切断指示がなされるまでに取得された第１のデータ、および当該第１のデータよりも大きい、当該システムの起動が完了した時点において当該揮発性メモリに記憶されているデータの所定の一部またはすべてである第２のデータのうち、当該第２のデータをすべて取得している場合に当該第２のデータを用いて当該システムを起動し、取得していない場合に当該第１のデータを用いて当該システムを起動する、起動手段と、を備える画像形成装置に用いられるコンピュータプログラムであって、
前記画像形成装置に、
前記切断指示がなされてから前記システムが終了するまでに前記電源をオンにする接続指示がなされた場合に、所定の処理の進捗を判断する、判断処理を実行させ、
前記進捗が所定の基準を上回っている場合に、前記第２のデータの取得を開始しまたは開始していれば継続し、当該進捗が当該所定の基準を下回っている場合に、当該第２のデータの取得を開始せずまたは既に開始していれば中断する、取得処理を実行させる、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置のシステムの起動時間を短縮させる技術に関する。
【背景技術】
【０００２】
パーソナルコンピュータなどの従来の情報機器は、ユーザによって電源をオフにする操作がなされると、ＯＳ（Operating System）を終了させる処理であるシャットダウンが、電源の切断前に行われる。シャットダウンでは、作業中のデータがディスクに書き込まれたり、ＯＳまたはアプリケーションに加えられた変更が保存されたりする。
【０００３】
「複合機」または「ＭＦＰ（Multi Function Peripherals）」と呼ばれる画像形成装置も、電源を切断する前に同様のシャットダウンを行う。画像形成装置におけるシャットダウンに関連する技術として、例えば以下のようなものが知られている。
【０００４】
特許文献１に記載の画像形成装置は、電源スイッチのオフ操作が検知されると、オフ操作が検知されたときの通常状態を保存し、次に電源スイッチのオン操作が検知されたときに通常状態に復帰可能なサスペンド状態に画像形成装置の状態を移行し、サスペンド状態に移行すると、時間計測を開始し、サスペンド状態のときに電源スイッチのオン操作が検知されると、計測された時間計測値を取得し、取得された時間計測値に応じて、画像形成装置を再起動させるか、または保存しておいた通常状態に復帰させる。ここで、サスペンド状態ではなくハイバーネーション状態であっても、同様に実現可能である。なお、ハイバーネーション状態とは、コンピュータの使用を一旦中断する場合に、作業状態を保持しつつ電力の消費を抑えるために、メモリ上のデータをスナップショットと呼ばれるファイルとして記憶装置に丸ごとコピーする機能を利用して、起動途中や起動完了時のメモリ状態をスナップショットとして記憶装置に保存している状態である。
【０００５】
特許文献２に記載の画像形成装置は、用紙のサイズ、用紙の枚数、または画像の濃淡などの画像形成条件などを記憶する記憶手段と、画像形成装置の電源が切られてからの時間を計る計時手段と、電源の投入時に、記憶手段に記憶されている画像形成条件などを設定するレジューム手段と、画像形成装置の電源が投入されたときに、上記計時手段により計られた時間が、所定の時間に満たない場合には、レジューム手段を動作させ、上記所定の時間を経過した場合には、レジューム手段を動作させない制御手段とを備える。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１３−２０６０６号公報
【特許文献２】特開平１０−２６９１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ところで、ユーザが画像形成装置の電源をオフにする操作を行ってから、すぐに電源をオンにする操作を行う場合がある。例えば、ユーザが電源をオフにしてから印刷物の不備に気が付いて、再度印刷するために電源をオンにする場合などである。
【０００８】
特許文献１の画像形成装置は、サスペンド状態またはハイバーネーション状態からの起動および通常の再起動が可能である。特許文献２の画像形成装置は、レジューム手段を動作させた起動および通常の起動が可能である。これらの画像形成装置は、複数種類ある起動方法を使い分けて、起動に要する時間をある程度短縮している。この短縮できる時間をさらに大きくできれば、ユーザは、従来よりも早く印刷などの作業を開始することができる。
【０００９】
本発明は、このような問題点に鑑み、電源をオフにする操作がされてからすぐ後に電源をオンにする操作がされた場合において、画像形成装置のシステムの起動に要する時間を従来よりも短くすることを、目的とする。
【課題を解決するための手段】
【００１０】
本発明の一実施形態に係る画像形成装置は、揮発性メモリと、システムの起動が開始してから完了するまでの所定の時点において前記揮発性メモリに記憶されているデータの所定の一部またはすべてである第１のデータを、電源をオフにする切断指示がなされるまでに取得する、第１の取得手段と、前記切断指示がなされてから前記システムが終了するまでに前記電源をオンにする接続指示がなされた場合に、所定の処理の進捗を判断する、判断手段と、前記進捗が所定の基準を上回っている場合に、前記第１のデータよりも大きい、前記システムの起動が完了した時点において前記揮発性メモリに記憶されているデータの所定の一部またはすべてである第２のデータの取得を開始しまたは開始していれば継続し、当該進捗が当該所定の基準を下回っている場合に、当該第２のデータの取得を開始せずまたは既に開始していれば中断する、第２の取得手段と、前記システムが終了した後、前記第２の取得手段による前記第２のデータの取得が完了した場合に、前記第２のデータを用いて前記システムを起動し、当該取得が完了しなかった場合に、前記第１のデータを用いて当該システムを起動する、起動手段と、を備えることを特徴とする。
【００１１】
好ましくは、前記所定の処理は、前記取得であり、前記判断手段は、前記進捗として前記取得の進捗を判断する。
【００１２】
好ましくは、前記判断手段は、前記進捗として、前記第２のデータのうちの前記接続指示がなされた時点において前記第２の取得手段によって取得された部分のサイズを判断する。
【００１３】
好ましくは、前記所定の基準は、前記切断指示がなされてから前記電源が切断されることなく前記第１のデータを用いた前記システムの起動が完了するまでの時間と当該切断指示がなされてから当該電源が切断されることなく当該第２のデータを用いた当該システムの起動が完了するまでの時間とが等しい場合において当該切断指示がなされてから当該接続指示がなされるまでの間に前記第２の取得手段が取得することができる当該第２のデータの部分のサイズである。
【００１４】
本発明の他の実施形態に係る画像形成装置は、指示されたジョブを実行する、複数の実行手段と、前記切断指示がなされてから前記実行手段を終了させる、終了手段と、を有し、前記所定の処理は、前記実行手段を終了させる処理であり、前記判断手段は、前記進捗として、終了された前記実行手段の数を判断する。
【発明の効果】
【００１５】
本発明によると、電源をオフにする操作がされてからすぐ後に電源をオンにする操作がされた場合において、画像形成装置のシステムの起動に要する時間を従来よりも短くすることができる。
【図面の簡単な説明】
【００１６】
【図１】画像形成装置のハードウェア構成の例を示す図である。
【図２】終了時における画像形成装置の機能的構成の例を示す図である。
【図３】終了準備処理が行われている間のタッチパネルディスプレイおよび電源ランプの状況の例を示す図である。
【図４】高速スナップショット処理が行われている間のタッチパネルディスプレイおよび電源ランプの状況の例を示す図である。
【図５】電源が切断されて以降のタッチパネルディスプレイおよび電源ランプの状況の例を示す図である。
【図６】高速スナップショットデータ全体のサイズおよび保存済データサイズの組合せごとの、高速スナップショット処理の継続または中断の判断の結果の例を示す図である。
【図７】起動時における画像形成装置の機能的構成の例を示す図である。
【図８】画像形成装置の全体的な処理の流れの例を示すフローチャートである。
【図９】起動制御処理の流れの例を示すフローチャートである。
【図１０】終了制御処理の流れの例を示すフローチャートである。
【図１１】割込電源処理の流れの例を示すフローチャートである。
【図１２】終了時における画像形成装置の機能的構成の例を示す図である。
【図１３】終了制御処理の流れの例を示すフローチャートである。
【図１４】割込電源処理の流れの例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
〔第１の実施形態〕
図１は、画像形成装置１のハードウェア構成の例を示す図である。
【００１８】
画像形成装置１は、コピー、ＰＣプリント、ファックス、スキャナ、およびボックスなどの機能を集約した装置である。一般に、「複合機」または「ＭＦＰ（Multi Function Peripherals）」などと呼ばれることがある。
【００１９】
ＰＣプリント機能は、画像形成装置１と通信可能に接続されたパーソナルコンピュータなどから受信した画像データに基づいて画像を用紙に印刷する機能である。「ネットワークプリンティング」または「ネットワークプリント」などと呼ばれることもある。
【００２０】
ボックス機能は、ユーザごとに「ボックス」または「パーソナルボックス」などと呼ばれる記憶領域を与えておき、各ユーザが自分の記憶領域によって画像データなどを保存し管理するための機能である。グループごとにボックスを設けておき、グループのメンバで共用することもできる。ボックスは、パーソナルコンピュータにおける「フォルダ」または「ディレクトリ」に相当する。
【００２１】
画像形成装置１は、図１に示すように、ＣＰＵ（Central Processing Unit）１０ａ、ＲＡＭ（Random Access Memory）１０ｂ、ＲＯＭ（Read Only Memory）１０ｃ、補助記憶装置１０ｄ、ｅＭＭＣ（embedded MultiMediaCard）１０ｅ、電源ユニット１０ｆ、電源スイッチ１１ｆ、電源ランプ１２ｆ、タッチパネルディスプレイ１０ｇ、操作ボタン群１０ｈ、ＮＩＣ（Network Interface Card）１０ｉ、ファックス通信ユニット１０ｊ、スキャンユニット１０ｋ、およびプリントユニット１０ｍなどのハードウェアモジュールによって構成される。
【００２２】
ｅＭＭＣ１０ｅは、組み込み型の外部記憶装置である。不揮発性の記憶媒体であるため、画像形成装置１に電力の供給が停止されても、ｅＭＭＣ１０ｅに記憶されている情報は保持される。
【００２３】
電源ユニット１０ｆは、商用電源に接続されており、ユーザによる後述する電源スイッチ１１ｆの操作またはＣＰＵ１０ａからの指令に応じて、画像形成装置１のハードウェアモジュールへ電力を供給する。
【００２４】
電源スイッチ１１ｆは、ユーザからの画像形成装置１の電源をオンにする操作およびオフにする操作を受け付ける。以下、電源スイッチ１１ｆに対する電源をオンにする操作を「オン操作」と記載し、電源スイッチ１１ｆに対する電源をオフにする操作を「オフ操作」と記載する。
【００２５】
電源ランプ１２ｆは、画像形成装置１の電源のオン／オフの状況を示すランプである。画像形成装置１の電源がオンである場合は点灯し、オフである場合は消灯する。
【００２６】
タッチパネルディスプレイ１０ｇは、ユーザに対するメッセージを示す画面、ユーザがコマンドまたは情報を入力するための画面、およびＣＰＵ１０ａが実行した処理の結果を示す画面などを表示する。また、タッチパネルディスプレイ１０ｇは、タッチされた位置を示す信号をＣＰＵ１０ａへ送る。
【００２７】
操作ボタン群１０ｈは、いわゆるハードウェアキーボードであって、テンキー、スタートキー、ストップキー、ファンクションキーなどによって構成される。
【００２８】
ＮＩＣ１０ｉは、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）などのプロトコルでパーソナルコンピュータまたはタブレットコンピュータなどとの通信を行う。
【００２９】
ファックス通信ユニット１０ｊは、ファックス端末との間でＧ３などのプロトコルで画像データをやり取りする。
【００３０】
スキャンユニット１０ｋは、プラテンガラスの上にセットされたシートに記されている画像を読み取って画像データを生成する。
【００３１】
プリントユニット１０ｍは、スキャンユニット１０ｋによって読み取られた画像のほか、ＮＩＣ１０ｉまたはファックス通信ユニット１０ｊによって他の装置から受信した画像を用紙に印刷する。
【００３２】
ＲＯＭ１０ｃまたは補助記憶装置１０ｄには、上述のコピーなどの各機能を実現するためのプログラムが記憶されている。さらに、起動制御プログラム１０Ｐ（図７参照）および終了制御プログラム１５Ｐ（図２参照）が記憶されている。
【００３３】
起動制御プログラム１０Ｐは、画像形成装置１のＯＳ（Operating System）を起動させるためのプログラムである。
【００３４】
終了制御プログラム１５Ｐは、画像形成装置１のＯＳを終了させるためのプログラムである。終了制御プログラム１５Ｐによると、画像形成装置１の起動に要する時間を従来よりも短くすることができる。
【００３５】
これらのプログラムは、必要に応じてＲＡＭ１０ｂにロードされ、ＣＰＵ１０ａによって実行される。補助記憶装置１０ｄとして、ハードディスクドライブまたはＳＳＤ（Solid State Drive）などが用いられる。
【００３６】
〔画像形成装置１の終了時における各部の処理〕
図２は、終了時における画像形成装置１の機能的構成の例を示す図である。図３は、終了準備処理が行われている間のタッチパネルディスプレイ１０ｇおよび電源ランプ１２ｆの状況の例を示す図である。図４は、高速スナップショット処理が行われている間のタッチパネルディスプレイ１０ｇおよび電源ランプ１２ｆの状況の例を示す図である。図５は、電源がオフにされて以降のタッチパネルディスプレイ１０ｇおよび電源ランプ１２ｆの状況の例を示す図である。図６は、高速スナップショットデータ６Ｂ全体のサイズおよび保存済データサイズ６Ｂ１の組合せごとの、高速スナップショット処理の継続または中断の判断の結果の例を、示す図である。
【００３７】
終了制御プログラム１５Ｐによると、図２に示す電源オフ検知部１５１、時間計測部１５２、終了準備処理部１５３、高速スナップショット処理部１５４、電源切断部１５５、電源オン検知部１５６、時間判断部１５７、終了準備完了判断部１５８、スナップショット進行判断部１５９、スナップショット中断部１６０、および初期化部１６１が画像形成装置１に実現される。以下、画像形成装置１の終了時における各部の処理を、図２ないし図６を参照しながら説明する。
【００３８】
ユーザが、画像形成装置１のＯＳが稼働している状態において、オフ操作を行うと、画像形成装置１の各部は次のように動作する。
【００３９】
電源オフ検知部１５１は、オフ操作を検知する。この検知の直後に電源はすぐにはオフにされない。つまり、電力の供給はすぐには停止されない。後述の終了準備処理および高速スナップショット処理が完了してから、後述の電源切断部１５５によって電源がオフにされる。
【００４０】
時間計測部１５２は、オフ操作を電源オフ検知部１５１が検知すると、時間の計測を開始する。そして、ＯＳが稼働している間にオン操作を後述の電源オン検知部１５６が検知するまで、時間の計測を続ける。つまり、オフ操作が行われてからオン操作が行われるまでの時間（以下、「オフ時間Ｔ１」と記載する。）を計測する。
【００４１】
終了準備処理部１５３は、画像形成装置１のファックス通信ユニット１０ｊおよびスキャンユニット１０ｋなどのハードウェアモジュールを、電源を切断できる状態にする。例えば、まだ実行されていない印刷の指示をキャンセルしたり、特定のアプリケーションを終了させたりする。また、ＲＡＭ１０ｂに保持されているデータ、例えば各ハードウェアモジュールのドライバおよび各ハードウェアモジュールの状態を示すデータなどを、画像形成装置１のＯＳの起動が完了した時点の内容に変更する。つまり、ＲＡＭ１０ｂのデータの内容を元に戻す。以下、これらの処理を「終了準備処理」と記載する。
【００４２】
なお、図３に示すように、終了準備処理が行われている間は、タッチパネルディスプレイ１０ｇには画像形成装置１がＯＳを終了するためのシャットダウン処理（終了準備処理）を実行している最中である旨のメッセージが表示される。また、電源ランプ１２ｆが点灯している。
【００４３】
高速スナップショット処理部１５４は、ＲＡＭ１０ｂの上述のように元に戻されたデータを１つに纏めて高速スナップショットデータ６ＢとしてｅＭＭＣ１０ｅに保存する。以下、この処理を「高速スナップショット処理」と記載する。この処理の完了には、ｅＭＭＣ１０ｅへの書込速度に応じて、ある程度の時間を要する。また、後述のスナップショット中断部１６０によって、この処理が中断される場合がある。
【００４４】
なお、図４に示すように、高速スナップショット処理が行われている間、タッチパネルディスプレイ１０ｇには何も表示されないが、電源ランプ１２ｆは点灯している。
【００４５】
高速スナップショットデータ６Ｂは、後述する起動部１０１が画像形成装置１のＯＳを起動する際に使用される。通常、画像形成装置１のＯＳの起動において、システムの初期化処理、またはドライバの起動処理および初期化処理など、様々な処理を行う必要がある。しかし、この高速スナップショットデータ６Ｂが用いられることで、ＯＳの起動が完了した時点のＲＡＭ１０ｂの状態を一挙に復元できる。
【００４６】
電源切断部１５５は、高速スナップショット処理が完了した後に、画像形成装置１の電源をオフにするよう、電源ユニット１０ｆを制御する。電源がオフになると、ＲＡＭ１０ｂに記憶されていたデータが消去される。
【００４７】
なお、図５に示すように、電源がオフになると、タッチパネルディスプレイ１０ｇには何も表示されず、電源ランプ１２ｆは消灯する。
【００４８】
電源オン検知部１５６は、画像形成装置１のＯＳが稼働している間に、オン操作が行われたことを検知する。オン操作が検知されると、再起動モードが画像形成装置１に設定される。再起動モードが設定されると、ＯＳの終了の処理が完了した後、速やかにＲＡＭ１０ｂに記憶されているデータが消去されて、ＯＳの再起動が開始される。
【００４９】
時間判断部１５７は、電源オン検知部１５６によってオン操作が検知されたら、時間計測部１５２によって計測されたオフ時間Ｔ１が基準時間Ｔ２より長いか否かを判断する。
【００５０】
オフ時間Ｔ１があまりに短い場合、終了準備処理が完了していないことは明らかである。このような場合において、後述の終了準備完了判断部１５８およびスナップショット進行判断部１５９による判断を省略して処理を簡略化するために、オフ時間Ｔ１および基準時間Ｔ２を比較する。なお、基準時間Ｔ２はあらかじめ定められた時間である。具体的には、後述する時間Ｓ２１よりも短い時間（例えば、時間Ｓ２１の１０分の１程度の時間）である。
【００５１】
オフ時間Ｔ１が基準時間Ｔ２よりも長いと時間判断部１５７によって判断された場合に、終了準備完了判断部１５８およびスナップショット進行判断部１５９によって次の処理が行われる。
【００５２】
終了準備完了判断部１５８は、終了準備処理が完了しているか否かを判断する。スナップショット進行判断部１５９は、電源オン検知部１５６によってオン操作が検知された時点において、高速スナップショット処理の進捗を判断する。詳細には、高速スナップショットデータ６Ｂの、ｅＭＭＣ１０ｅに既に保存されている部分である保存済データサイズ６Ｂ１、残りの部分である未保存データサイズ６Ｂ２、および、あらかじめ定められたサイズである所定サイズ６Ｃを用いて、次のように高速スナップショット処理の進捗を判断する。
【００５３】
保存済データサイズ６Ｂ１が所定サイズ６Ｃより大きい場合、スナップショット進行判断部１５９は、高速スナップショット処理の進捗が少なくとも所定の基準を上回っていると判断する。
【００５４】
一方、保存済データサイズ６Ｂ１が所定サイズ６Ｃより小さい場合、スナップショット進行判断部１５９は、高速スナップショット処理の進捗が所定の基準を下回っていると判断する。
【００５５】
所定サイズ６Ｃは、電源スイッチ１１ｆに対してオフ操作が行われてからオン操作が行われるまでの時間（後述の時間Ｓ２）であって、かつ時間Ｈおよび時間Ｓが等しいときの時間である時間Ｓ２１の間に、ＲＡＭ１０ｂからｅＭＭＣ１０ｅへ保存することができるデータのサイズである。
【００５６】
時間Ｈは、オフ操作が行われてから、高速スナップショットデータ６Ｂを使用したＯＳの起動が完了するまでの時間であり、
Ｈ＝Ｈ１＋Ｈ２＋Ｈ３＋Ｈ４  ・・・（１）
である。
【００５７】
時間Ｈ１は、終了準備処理を完了させるために要する時間である。時間Ｈ２は、高速スナップショット処理を完了させるために要する時間である。時間Ｈ３は、ＢＩＯＳ（Basic Input/Output System）の起動の開始から完了までに要する時間である。時間Ｈ４は、高速スナップショットデータ６ＢによるＯＳの起動の開始から終了までに要する時間である。
【００５８】
時間Ｓは、オフ操作が行われてから、後述する標準スナップショットデータ６ＡによるＯＳの起動が完了するまでの時間であり、
Ｓ＝Ｓ１＋Ｓ２＋Ｓ３＋Ｓ４  ・・・（２）
である。
【００５９】
時間Ｓ１は、終了準備処理を完了させるために要する時間である。時間Ｓ２は、ユーザによってオフ操作が行われてからオン操作が行われるまでの時間であり、オフ時間Ｔ１でもある。時間Ｓ３は、ＢＩＯＳの起動の開始から完了までに要する時間である。時間Ｓ４は、標準スナップショットデータ６ＡによるＯＳの起動の開始から終了までに要する時間である。
【００６０】
上述のように、時間Ｓ２１は、オフ操作が行われてからオン操作が行われるまでの時間Ｓ２であって、時間Ｈおよび時間Ｓが等しいとき、つまり「Ｈ＝Ｓ」が成立するときの時間である。
【００６１】
ここで、（１）式の右辺および（２）式の右辺を「Ｈ＝Ｓ」に代入し、Ｓ２にＳ２１を代入すると、
Ｈ１＋Ｈ２＋Ｈ３＋Ｈ４＝Ｓ１＋Ｓ２１＋Ｓ３＋Ｓ４  ・・・（３）
になる。
【００６２】
（３）式より、時間Ｓ２１を求めると、
Ｓ２１＝Ｈ１＋Ｈ２＋Ｈ３＋Ｈ４−（Ｓ１＋Ｓ３＋Ｓ４）  ・・・（４）
になる。
【００６３】
オフ操作が行われてから高速スナップショットデータ６ＢによるＯＳの起動が完了するまでの間に行われる終了準備処理も、オフ操作が行われてから標準スナップショットデータ６ＡによるＯＳの起動が完了するまでの間に行われる終了準備処理も、同じである。ＢＩＯＳの起動についても、同様である。したがって、時間Ｓ１と時間Ｈ１とは等しく、また時間Ｓ３と時間Ｈ３とは等しい。よって、
Ｓ２１＝Ｈ２＋Ｈ４−Ｓ４  ・・・（５）
になる。
【００６４】
時間Ｈ２および時間Ｈ４は、高速スナップショットデータ６Ｂのサイズに応じて決まる。上述のように、高速スナップショットデータ６Ｂは、ＯＳの起動が完了した時点においてＲＡＭ１０ｂに保持されているデータであり、主に画像形成装置１のハードウェアおよびソフトウェアに関する情報を示している。画像形成装置１のハードウェアおよびソフトウェアの機能はほとんど変化しないため、このデータもほとんど変化しない。よって、時間Ｈ２および時間Ｈ４はほぼ固定されている。
【００６５】
また、時間Ｓ４は、標準スナップショットデータ６Ａのサイズに応じて決まる。後述するように、標準スナップショットデータ６Ａは、ＯＳが起動している途中の特定の時点においてＲＡＭ１０ｂに保持されているデータである。このデータも高速スナップショットデータ６Ｂ同様ほとんど変化せず、また特定の時点もほとんど変化しない。よって、時間Ｓ４もほぼ固定されている。
【００６６】
例えば、時間Ｈ１が２秒、時間Ｈ２が１５秒、時間Ｈ３が２秒、および時間Ｈ４が７秒であり、時間Ｓ４が１６秒であるとする。この場合、時間Ｓ２が６秒であれば、時間Ｈと時間Ｓとは同じ２６秒になる。この６秒が、時間Ｓ２１である。
【００６７】
時間Ｓ２が時間Ｓ２１より少しでも長い場合、例えば２秒長いとすると、時間Ｓは２８秒となる。時間Ｈは２６秒なので、時間Ｓの方が時間は長い。つまり、高速スナップショットデータ６ＢによるＯＳの起動の方が、標準スナップショットデータ６ＡによるＯＳの起動よりも早く完了する。
【００６８】
一方、時間Ｓ２が時間Ｓ２１より少しでも短い場合、例えば２秒短いとすると、時間Ｓは２４秒となる。時間Ｈは２６秒なので、時間Ｓの方が時間は短い。つまり、標準スナップショットデータ６ＡによるＯＳの起動の方が、高速スナップショットデータ６ＢによるＯＳの起動よりも早く完了する。
【００６９】
ここで、１秒当たり１０ＭＢの高速スナップショットデータ６ＢがＲＡＭ１０ｂからｅＭＭＣ１０ｅに保存されるとすると（つまり、書込速度が１０ＭＢ／秒であるとすると）、時間Ｓ２１の間に保存される保存済データサイズ６Ｂ１は、上述の例に基づくと６０ＭＢとなる。これが、所定サイズ６Ｃである。時間Ｓ２が時間Ｓ２１より２秒長い場合は、所定サイズ６Ｃよりも大きい８０ＭＢとなり、時間Ｓ２が時間Ｓ２１より２秒短い場合は、所定サイズ６Ｃよりも小さい４０ＭＢとなる。
【００７０】
以上を踏まえると、時間Ｓ２が時間Ｓ２１より長い場合、つまり保存済データサイズ６Ｂ１が所定サイズ６Ｃよりも大きくなるまで高速スナップショット処理が進行した場合、高速スナップショットデータ６ＢによるＯＳの起動の方が標準スナップショットデータ６Ａによる起動よりも早く完了する。
【００７１】
一方、時間Ｓ２が時間Ｓ２１より短い場合、つまり保存済データサイズ６Ｂ１が所定サイズ６Ｃよりも大きくなるまで高速スナップショット処理が進行していない場合、標準スナップショットデータ６ＡによるＯＳの起動の方が高速スナップショットデータ６Ｂによる起動よりも早く完了する。
【００７２】
なお、所定サイズ６Ｃおよび時間Ｓ２１は、以前行われた画像形成装置１の起動の処理および終了準備処理の結果から得られた数値に基づいて算出しておけばよい。または、画像形成装置１の運用を開始する前に起動の処理および終了準備処理を実行し、その結果から得られた数値に基づいて算出しておいてもよい。または、ハードウェアまたはソフトウェアの機能が変わるごとに、算出し直してもよい。または、画像形成装置１の稼働の状況または画像形成装置１の運用の期間に応じて算出し直してもよい。
【００７３】
図２に戻って、スナップショット中断部１６０は、高速スナップショット処理の進捗が所定の基準を下回っていると（保存済データサイズ６Ｂ１が所定サイズ６Ｃ未満であると）スナップショット進行判断部１５９によって判断された場合は、標準スナップショットデータ６ＡによるＯＳの起動の方が高速スナップショットデータ６Ｂによる起動よりも早く完了するため、高速スナップショット処理を中断させる。そうでない場合は、高速スナップショット処理は継続される。
【００７４】
なお、高速スナップショット処理の進捗がちょうど所定の基準に達している場合、高速スナップショット処理は継続されてもよいし、中断されてもよい。
【００７５】
ここで、高速スナップショットデータ６Ｂ全体がどのようなサイズであり、保存済データサイズ６Ｂ１すなわちオン操作がなされた時点で取得された高速スナップショットデータ６Ｂのサイズがどのようなサイズである場合に、高速スナップショット処理が継続されまたは中断されるのかの例を、図６を参照しながら説明する。
【００７６】
図６には、高速スナップショットデータ６Ｂ全体のサイズ６Ｄ１（６８０ＭＢ、７１０ＭＢ、７４０ＭＢ、…、９２０ＭＢ）ごとに欄６Ｄ２１、６Ｄ２２、６Ｄ２３、…、６Ｄ２９が１つずつ示されている。
【００７７】
各欄には、保存済データサイズ６Ｂ１つまりオン操作がなされた時点で取得された高速スナップショットデータ６Ｂのサイズ（０ＭＢ、１５０ＭＢ、１８０ＭＢ、２１０ＭＢ、…、９３０ＭＢ）ごとの、その欄に対応する高速スナップショットデータ６Ｂの高速スナップショット処理の継続または中断の判断の結果が示されている。
【００７８】
例えば、欄６Ｄ２１には、６８０ＭＢの高速スナップショットデータ６Ｂの、高速スナップショットデータ６Ｂのサイズごとの高速スナップショット処理の継続または中断の判断の結果が示されている。
【００７９】
各欄の各保存済データサイズ６Ｂ１のセルには、「１」、「０」のいずれかが示される。
【００８０】
「１」は、高速スナップショット処理が中断されることを示す。つまり、保存済データサイズ６Ｂ１は所定サイズ６Ｃを下回っていることをも示す。「０」は、高速スナップショット処理を継続されることを示す。つまり、保存済データサイズ６Ｂ１は所定サイズ６Ｃを上回っていることをも示す。なお、斜線が記載されている欄は、保存済データサイズ６Ｂ１が高速スナップショットデータ６Ｂのサイズを上回っているので判断が不能であることを示す。
【００８１】
例えば、スナップショットサイズ６Ｄ１つまり高速スナップショットデータ６Ｂのサイズが８００ＭＢである場合は、欄６Ｄ２５の通り、３００ＭＢ以下の保存済データサイズ６Ｂ１は「１」であり、高速スナップショット処理が中断される。つまり、所定サイズ６Ｃを下回っている。３３０ＭＢ以上の保存済データサイズ６Ｂ１は「０」であり、高速スナップショット処理が継続される。つまり、所定サイズ６Ｃを上回っている。また、所定サイズ６Ｃは３００ＭＢよりも大きく３３０ＭＢよりも小さい範囲内にある。
【００８２】
初期化部１６１は、高速スナップショット処理が中断された場合は、中断まで行われていた高速スナップショット処理を初期化する。つまり、高速スナップショットデータ６ＢのｅＭＭＣ１０ｅに保存されている部分をｅＭＭＣ１０ｅから削除する。これにより、ＯＳの終了の処理が完了する。
【００８３】
その後、ＲＡＭ１０ｂなどが初期化され、画像形成装置１のＢＩＯＳの起動が開始される。オフ時間Ｔ１が基準時間Ｔ２よりも短いと時間判断部１５７によって判断された場合も、同様である。
【００８４】
〔画像形成装置１の起動時における各部の処理〕
図７は、起動時における画像形成装置１の機能的構成の例を示す図である。
【００８５】
起動制御プログラム１０Ｐによると、図７に示す起動部１０１および標準スナップショット処理部１０２が画像形成装置１に実現される。以下、画像形成装置１の各部の処理を、図７を参照しながら説明する。
【００８６】
電源が完全に切断された状態でユーザがオン操作を行った場合、および、再起動モードが設定された状態でＯＳの終了の処理が完了した場合に、画像形成装置１は、次のように動作する。
【００８７】
ＢＩＯＳが起動し、起動制御プログラム１０ＰがＲＡＭ１０ｂへ読み出される。そして、起動制御プログラム１０Ｐによって図７の各部が処理を行う。
【００８８】
起動部１０１は、高速スナップショット処理が完了している場合は、ｅＭＭＣ１０ｅから高速スナップショットデータ６ＢをＲＡＭ１０ｂへ読み出す。これによって、ＲＡＭ１０ｂの状態がＯＳの起動が完了した時点の状態に復元されて、ＯＳを起動させる処理が完了する。
【００８９】
高速スナップショットデータ６Ｂではなく、後述する標準スナップショットデータ６ＡがｅＭＭＣ１０ｅに保存されている場合、起動部１０１は、標準スナップショットデータ６Ａを読み出す。これによって、ＲＡＭ１０ｂの状態が、ＯＳを起動する特定の段階の状態にまで復元される。つまり、ＯＳを起動させる処理が一部完了する。完了しなかった残りの処理については、通常通り行われる。これらにより、ＯＳを起動させる処理が完了する。
【００９０】
標準スナップショットデータ６ＡによるＯＳの起動は、一部、通常の起動の処理が行われる分、高速スナップショットデータ６ＢによるＯＳの起動よりも時間が掛かる。
【００９１】
高速スナップショットデータ６Ｂおよび標準スナップショットデータ６Ａの何れも保存されていない場合、起動部１０１は、ハードウェアまたはプログラムの初期化の処理、ドライバの起動の処理、およびその他の様々な処理を行って、通常通りにＯＳを起動させる。
【００９２】
通常の起動は、高速スナップショットデータ６ＢによるＯＳの起動および標準スナップショットデータ６ＡによるＯＳの起動よりも時間が掛かる。
【００９３】
標準スナップショット処理部１０２は、ＯＳが起動している途中にＲＡＭ１０ｂに保存されているデータを、標準スナップショットデータ６ＡとしてｅＭＭＣ１０ｅに保存する。以下、この処理を「標準スナップショット処理」と記載する。
【００９４】
標準スナップショットデータ６Ａは、高速スナップショットデータ６Ｂと同様に、起動部１０１が画像形成装置１のＯＳを起動する際に使用される。ただし、ＯＳが起動している途中の特定の時点のＲＡＭ１０ｂのデータである。よって、上述の通り、高速スナップショットデータ６Ｂを使用した場合よりもＯＳの起動に時間が掛かる。なお、特定の時点とは、あらかじめ設定されたタイミングである。
【００９５】
〔全体的な処理の流れ〕
図８は、画像形成装置１の全体的な処理の流れの例を示すフローチャートである。図９は、起動制御処理の流れの例を示すフローチャートである。図１０は、終了制御処理の流れの例を示すフローチャートである。図１１は、割込電源処理の流れの例を示すフローチャートである。
【００９６】
次に、画像形成装置１における全体的な処理の流れを、図８ないし図１０のフローチャートを参照しながら説明する。
【００９７】
ユーザによって、電源スイッチ１１ｆがオンに操作されると（図８の＃１１）、電源ユニット１０ｆが各ハードウェアモジュールへの電力の供給を開始し（＃１２）、ＢＩＯＳが起動し、起動制御プログラム１０ＰがＲＡＭ１０ｂへ読み出される。そして、起動制御プログラム１０Ｐに基づいて、図９に示す起動制御処理が行われる（＃１３）。
【００９８】
高速スナップショットデータ６Ｂおよび標準スナップショットデータ６Ａの何れもｅＭＭＣ１０ｅに保存されていない場合（図９の＃６０１でＮｏ）、起動部１０１はＯＳを起動するための通常の処理を最初から行う（＃６０２）。
【００９９】
高速スナップショットデータ６ＢがｅＭＭＣ１０ｅに保存されている場合（＃６０１でＹｅｓ、＃６０３でＹｅｓ）、起動部１０１は高速スナップショットデータ６ＢをＲＡＭ１０ｂへ読み出すことによって、ＯＳを起動する（＃６０４）。
【０１００】
高速スナップショットデータ６Ｂが保存されておらず、標準スナップショットデータ６Ａが保存されている場合（＃６０１でＹｅｓ、＃６０３でＮｏ）、起動部１０１は標準スナップショットデータ６ＡをＲＡＭ１０ｂへ読み出す（＃６０５）。これにより、ＯＳの起動の特定の段階までの処理が完了する。そして、ＯＳの起動の残りの処理を行う（＃６０６）。
【０１０１】
標準スナップショット処理部１０２は、ステップ＃６０２または＃６０６において、適宜、起動の途中の特定の段階の、ＲＡＭ１０ｂのデータを標準スナップショットデータ６Ａとして取得し、ｅＭＭＣ１０ｅへ保存する。
【０１０２】
図８に戻って、ＯＳの起動が完了したら、画像形成装置１は、ユーザの指示に基づいて印刷またはファックス送信などのジョブを実行する（＃１４）。
【０１０３】
ユーザによってオフ操作がなされると（＃１５でＹｅｓ）、図１０に示す終了制御処理を行う（＃１６）。
【０１０４】
電源オフ検知部１５１は、オフ操作が行われたことを検知する（図１０の＃６５１）。それを受けて、時間計測部１５２は、オフ時間Ｔ１の計測を開始し（＃６５２）、終了準備処理部１５３は、終了準備処理を開始する（＃６５４）。終了準備処理は、ユーザがオン操作を行わない限り（＃６５３でＮｏ）、中止することなく継続して行われる。
【０１０５】
終了準備処理が完了し（＃６５５でＹｅｓ）、ユーザによるオン操作が検知されない場合（＃６５６でＮｏ）、高速スナップショット処理部１５４は、高速スナップショット処理を開始する（＃６５７）。高速スナップショット処理も、ユーザがオン操作を行わない限り（＃６５６でＮｏ）、中止することなく継続して行われる。
【０１０６】
オン操作が検知されることなく高速スナップショット処理が完了すると（＃６５８でＹｅｓ）、電源切断部１５５は電源をオフにする（＃６５９）。
【０１０７】
終了準備処理または高速スナップショット処理の途中で、電源オン検知部１５６が、ユーザによってオン操作が行われたことを検知すると（＃６５３でＹｅｓ、または＃６５６でＹｅｓ）、必要によって高速スナップショット処理を中断させるための割込電源処理が、図１１に示すような手順で行われる（＃６６０）。また、このときに再起動モードが設定される。
【０１０８】
時間判断部１５７は、時間計測部１５２の計測したオフ時間Ｔ１が基準時間Ｔ２よりも長いか否かを判断する（図１１の＃６８１）。オフ時間Ｔ１が基準時間Ｔ２より長い場合（＃６８２でＹｅｓ）、終了準備完了判断部１５８は、終了準備処理が完了しているか否かを判断する（＃６８３）。
【０１０９】
終了準備処理が完了していると判断された場合（＃６８４でＹｅｓ）、スナップショット進行判断部１５９は、高速スナップショット処理の進捗を判断する（＃６８５）。
【０１１０】
高速スナップショット処理の進捗が所定の基準を上回っている場合（＃６８６でＹｅｓ）、高速スナップショット処理部１５４は高速スナップショット処理を継続する（＃６８７）。そして、初期化部１６１は、ＲＡＭ１０ｂのデータを初期化する（＃６８８）。
【０１１１】
オフ時間Ｔ１が基準時間Ｔ２より短い場合（＃６８２でＮｏ）、または終了準備処理が完了していない場合（＃６８４でＮｏ）、終了準備処理部１５３は、終了準備処理を継続する（＃６８９）。ただし、終了準備処理を未だ開始していない場合は、終了準備処理を開始する。
【０１１２】
高速スナップショット処理の進捗が所定の基準を下回っている場合は（＃６８６でＮｏ）、スナップショット中断部１６０は、高速スナップショット処理を中断させ、初期化部１６１は、それまで行われていた高速スナップショット処理の内容を初期化する（＃６９０）。そして、初期化部１６１は、ＲＡＭ１０ｂのデータを初期化する（＃６８８）。
【０１１３】
図８に戻って、再起動モードが画像形成装置１に設定されていない場合は（＃１７でＮｏ）、画像形成装置１の電源がオフになる。
【０１１４】
一方、再起動モードが設定された場合は（＃１７でＹｅｓ）、図９に示す起動制御処理が行われる（＃１３）。
【０１１５】
〔第２の実施形態〕
画像形成装置１のハードウェアモジュールの数およびＲＡＭ１０ｂのデータによっては、終了準備処理に要する時間が長くなる場合がある。すると、高速スナップショットデータ６ＢによるＯＳの起動を高速スナップショット処理の最中ではなく終了準備処理の最中に中止して標準スナップショットデータ６ＡによるＯＳの起動を行う方が、ＯＳの起動を早く完了できることがある。
【０１１６】
第２の実施形態では、終了準備処理の進捗に基づいて、高速スナップショット処理を実行するか否かを判断する例について説明する。なお、上述の第１の実施形態と重複する点は、説明を省略する。
【０１１７】
画像形成装置１のハードウェアの構成は、第１の実施形態と同様であり、図１に示した通りである。ただし、終了制御プログラム１５Ｐの代わりに終了制御プログラム１６Ｐ（図１２参照）がＲＯＭ１０ｃまたは補助記憶装置１０ｄに記憶されている。この終了制御プログラム１６Ｐによっても、画像形成装置１の起動に要する時間を従来よりも短くすることができる。
【０１１８】
〔画像形成装置１の終了時における各部の制御〕
図１２は、終了時における画像形成装置１の機能的構成の例を示す図である。
【０１１９】
終了制御プログラム１６Ｐによると、図１２に示される電源オフ検知部１７１、時間計測部１７２、終了準備処理部１７３、高速スナップショット処理部１７４、電源切断部１７５、電源オン検知部１７６、時間判断部１７７、終了準備進行判断部１７８、終了準備中断部１７９、および初期化部１８０が、画像形成装置１に実現される。
【０１２０】
電源オフ検知部１７１、時間計測部１７２、電源切断部１７５、電源オン検知部１７６、および時間判断部１７７は、それぞれ、第１の実施形態の電源オフ検知部１５１、時間計測部１５２、電源切断部１５５、電源オン検知部１５６、および時間判断部１５７（図２参照）と同様の処理を行う。
【０１２１】
終了準備処理部１７３は、上述の終了準備処理部１５３と同様に終了準備処理を行うが、後述の終了準備中断部１７９によって、この処理が中断される場合がある。
【０１２２】
高速スナップショット処理部１７４は、上述の高速スナップショット処理部１５４と同様に高速スナップショット処理を行うが、この処理は中断されない。
【０１２３】
終了準備進行判断部１７８は、電源オン検知部１５６によってオン操作が検知された時点における終了準備処理の進捗を判断する。
【０１２４】
終了準備進行判断部１７８は、オン操作が検知された時点における電源を切断できる状態になったハードウェアモジュールの数である完了数６Ｅを参照する。そして、閾値６Ｆと完了数６Ｅとを比較することによって終了準備処理の進捗を判断する。
【０１２５】
閾値６Ｆは、オフ操作が行われてからオン操作が行われるまでの時間（後述のＳ５）であって、かつ時間Ｈおよび時間Ｓが等しいときの時間である時間Ｓ５１の間に、終了準備処理部１７３によって電源を切断できる状態にされたハードウェアモジュールの数である。
【０１２６】
時間Ｈは、第１の実施形態と同様に、オフ操作が行われてから、高速スナップショットデータ６ＢによるＯＳの起動が完了するまでの時間である。上述の（１）式と同じである。
【０１２７】
時間Ｓは、オフ操作が行われてから、後述する標準スナップショットデータ６ＡによるＯＳの起動が完了するまでの時間であり、
Ｓ＝Ｓ５＋Ｓ３＋Ｓ４  ・・・（６）
となる。
【０１２８】
時間Ｓ５は、終了準備処理に要する時間である。ただし、終了準備処理が行われている間にオン操作が行われると、終了準備処理は中断される場合がある。この場合、時間Ｓ５は短くなる。時間Ｓ３は、上述のようにＢＩＯＳの起動の開始から完了までに要する時間である。時間Ｓ４は、上述のように標準スナップショットデータ６Ａを使用したＯＳの起動の開始から終了までに要する時間である。
【０１２９】
上述のように、時間Ｓ５１は、オフ操作が行われてからオン操作が行われるまでの時間Ｓ５であって、時間Ｈおよび時間Ｓが等しいとき、つまり「Ｈ＝Ｓ」が成立するときの時間である。
【０１３０】
ここで、（１）式の右辺および（６）式の右辺を「Ｈ＝Ｓ」に代入し、Ｓ５にＳ５１を代入すると、
Ｈ１＋Ｈ２＋Ｈ３＋Ｈ４＝Ｓ５１＋Ｓ３＋Ｓ４  ・・・（７）
になる。
【０１３１】
（７）式より、時間Ｓ５１を求めると、
Ｓ５１＝Ｈ１＋Ｈ２＋Ｈ３＋Ｈ４−（Ｓ３＋Ｓ４）  ・・・（４）
になる。
【０１３２】
上述のように、高速スナップショットデータ６ＢによるＯＳの起動の処理におけるＢＩＯＳの起動の処理と、標準スナップショットデータ６ＡによるＯＳの起動の処理におけるＢＩＯＳの起動の処理と、は同じであるため、時間Ｓ３と時間Ｈ３とは等しくなる。すると、
Ｓ５１＝Ｈ１＋Ｈ２＋Ｈ４−Ｓ４  ・・・（５）
になる。
【０１３３】
時間Ｈ２および時間Ｈ４は、上述のように高速スナップショットデータ６Ｂのサイズに応じて決まり、ほぼ固定されている。また、時間Ｓ４は、上述のように標準スナップショットデータ６Ａのサイズおよび特定の時点に応じて決まり、ほぼ固定されている。
【０１３４】
例えば、時間Ｈ１が１５秒、時間Ｈ２が２秒、時間Ｈ３が２秒、および時間Ｈ４が７秒であり、時間Ｓ４が１６秒であるとする。この場合、時間Ｓ５が８秒であれば、時間Ｈと時間Ｓとは同じ２６秒になる。この８秒が、時間Ｓ５１である。
【０１３５】
時間Ｓ５が時間Ｓ５１より少しでも長い場合、例えば２秒長いとすると、時間Ｓは２８秒となる。時間Ｈは２６秒なので、時間Ｓの方が時間は長い。つまり、高速スナップショットデータ６ＢによるＯＳの起動の方が、標準スナップショットデータ６ＡによるＯＳの起動よりも早く完了する。
【０１３６】
一方、時間Ｓ５が時間Ｓ５１より少しでも短い場合、例えば２秒短いとすると、時間Ｓは２４秒となる。時間Ｈは２６秒なので、時間Ｓの方が時間は短い。つまり、標準スナップショットデータ６ＡによるＯＳの起動の方が、高速スナップショットデータ６ＢによるＯＳの起動よりも早く完了する。
【０１３７】
ここで、２秒当たり１つのハードウェアモジュールの電源が切断できる状態にされ、かつ電源を切断できる状態になるハードウェアモジュールの数が時間に比例して増えるとすると、時間Ｓ５１の間に電源を切断できる状態になるハードウェモジュールの数である閾値６Ｆは、上述の例に従うと４個となる。時間Ｓ２が時間Ｓ２１より２秒長い場合は、完了数６Ｅは閾値６Ｆよりも大きい５個となり、時間Ｓ２が時間Ｓ２１より２秒短い場合は、閾値６Ｆよりも小さい３個となる。
【０１３８】
以上を踏まえると、時間Ｓ５が時間Ｓ５１より長い場合、つまり完了数６Ｅが閾値６Ｆを上回るまで終了準備処理が進行した場合、高速スナップショットデータ６ＢによるＯＳの起動の方が標準スナップショットデータ６ＡによるＯＳの起動よりも早く完了する。
【０１３９】
一方、時間Ｓ５が時間Ｓ５１より短い場合、つまり完了数６Ｅが閾値６Ｆよりも多くなるまで終了準備処理が進行していない場合、標準スナップショットデータ６ＡによるＯＳの起動の方が高速スナップショットデータ６Ｂによる起動よりも早く完了する。
【０１４０】
なお、閾値６Ｆおよび時間Ｓ５１は、以前に行われた終了準備処理および画像形成装置１の起動の結果から得られた数値に基づいて算出しておけばよい。または、画像形成装置１の運用を開始する前に起動の処理および終了準備処理を実行し、その結果から得られた数値に基づいて算出しておいてもよい。または、ハードウェアまたはソフトウェアの機能が変わるごとに、算出し直してもよい。または、画像形成装置１の稼働の状況または画像形成装置１の運用の期間に応じて算出し直してもよい。
【０１４１】
図１２に戻って、終了準備中断部１７９は、終了準備処理の進捗が所定の基準を下回っていると（完了数６Ｅが閾値６Ｆ未満であると）終了準備進行判断部１７８によって判断された場合は、上述のように標準スナップショットデータ６ＡによるＯＳの起動の方が高速スナップショットデータ６Ｂによる起動よりも早く完了するため、終了準備処理を中断させる。
【０１４２】
なお、終了準備処理の進捗がちょうど所定の基準に達している場合、終了準備処理は継続されてもよいし、中断されてもよい。
【０１４３】
初期化部１８０は、ＲＡＭ１０ｂの内容を初期化する。なお、スナップショット進行判断部１５９およびスナップショット中断部１６０がないため、高速スナップショット処理の初期化は行わない。
【０１４４】
一方、完了数６Ｅが閾値６Ｆ以上である場合は、終了準備処理が中断されることなく最後まで行われ、高速スナップ処理が実行される。
【０１４５】
〔全体的な処理の流れ〕
図１３は、終了制御処理の流れの例を示すフローチャートである。図１４は、割込電源処理の流れの例を示すフローチャートである。
【０１４６】
第２の実施形態における画像形成装置１の全体的な処理の流れは、基本的に第１の実施形態と同様であり、図８に示した通りである。
【０１４７】
ただし、ステップ＃１６の終了準備処理の手順が第１の実施形態とは異なり、図１３に示す手順で行われる。
【０１４８】
第１の実施形態と同様に、オフ操作を電源オフ検知部１７１が検知すると（図１３の＃７５１）、時間計測部１７２がオフ時間Ｔ１の計測を開始し（＃７５２）、オン操作が検知されなければ（＃７５３でＮｏ）、終了準備処理部１７３が終了準備処理を開始する（＃７５４）。
【０１４９】
終了準備処理が完了しない時点で（＃７５５でＮｏ）、オン操作が検知されると（＃７５３でＹｅｓ）、割込電源処理が開始される（＃７５８）。割込電源処理の手順は、図１４に示す通りである。
【０１５０】
時間判断部１７７が、オフ時間Ｔ１が基準時間Ｔ２より長いと判断した場合（図１４の＃７８１、＃７８２でＹｅｓ）、終了準備進行判断部１７８は、終了準備処理の進捗（完了数６Ｅ）を判断する（＃７８３）。
【０１５１】
終了準備処理の進捗が所定の基準を上回っている場合（＃７８４でＹｅｓ）、終了準備処理が継続して行われ（＃７８５）、その後、高速スナップショット処理部１７４によって高速スナップショット処理が行われる（＃７８６）。
【０１５２】
オフ時間Ｔ１が基準時間Ｔ２より短い場合（＃７８２でＮｏ）、または終了準備処理の進捗が所定の基準を下回っている場合（＃７８４でＮｏ）、終了準備中断部１７９は、終了準備処理を中断させる（＃７８８）。この場合、高速スナップショット処理は行われない。
【０１５３】
そして、初期化部１６１は、終了準備処理の中断の後または高速スナップショット処理の完了後、ＲＡＭ１０ｂのデータを初期化する（＃７８７）。
【０１５４】
図１３に戻って、終了準備処理が完了した場合は（＃７５５でＹｅｓ）、高速スナップショット処理部１７４は、高速スナップ処理を実行する（＃７５６）。
【０１５５】
そして、高速スナップショット処理が完了すると、電源切断部１７５は、電源をオフにする（＃７５７）。
【０１５６】
第１の実施形態および第２の実施形態によると、ユーザによってオフ操作がされてからすぐ後にオン操作がされた場合において、画像形成装置１のシステムの起動に要する時間を従来よりも短くすることができる。
【０１５７】
上述の各実施形態において、電源オン検知部１５６が電源のオンを検知した直後に電源オフ検知部１５１が電源のオフを検知した場合は、高速スナップショット処理を省略しまたは実行中の高速スナップショット処理を中断させてもよい。そして、高速スナップショットデータ６Ｂを用いずに標準スナップショットデータ６Ａを用いて、画像形成装置１のＯＳを起動してもよい。短時間でオン操作およびオフ操作が繰り返された場合、ユーザはエラーを解除する目的で操作を行っていると考えられる。そのため、エラーを再度発生させるおそれのある高速スナップショットデータ６Ｂを用いないほうが望ましい。
【０１５８】
具体的には、オフ時間Ｔ１と電源オン検知部１５６が電源のオンを検知してから電源オフ検知部１５１が電源のオフを再度検知するまでのオン時間Ｔ３とを加算した時間が所定の時間より短い場合（例えば、Ｔ１＋Ｔ３≦２秒）、高速スナップショット処理を省略しまたは中断すればよい。または、オフ時間Ｔ１およびオン時間Ｔ３が、それぞれの所定の時間以下である場合（例えば、Ｔ１≦１秒、Ｔ２≦１．５秒）、高速スナップショット処理を省略しまたは中断すればよい。
【０１５９】
なお、標準スナップショットデータ６Ａを用いた場合でもエラーが発生する場合があるため、標準スナップショットデータ６Ａおよび高速スナップショットデータ６Ｂを用いずに、通常の起動を行ってもよい。
【０１６０】
上述の各実施形態では、オフ時間Ｔ１が基準時間Ｔ２より長いか否かを判断したが、この判断を省略して、終了準備処理が完了しているか否か、または完了数６Ｅが閾値６Ｆを上回っているか否かを判断してもよい。
【０１６１】
上述の各実施形態では、ＲＡＭ１０ｂのデータをスナップショットデータとして取得したが、各ハードウェアモジュールのＲＡＭのデータもスナップショットデータとして取得してもよい。そして、取得したスナップショットデータを用いて、各ハードウェアモジュールのＲＡＭの状態を復元すればよい。
【０１６２】
第１の実施形態では、スナップショット進行判断部１５９は、保存済データサイズ６Ｂ１、未保存データサイズ６Ｂ２、および所定サイズ６Ｃを用いて、高速スナップショット処理の進捗を判断した。または、第２の実施形態では、終了準備進行判断部１７８は、完了数６Ｅおよび閾値６Ｆを用いて、終了準備処理の進捗を判断した。しかし、時間Ｓ２および時間Ｓ２１を用いて、高速スナップショット処理の進捗を判断してもよい。または、時間Ｓ５および時間Ｓ５１を用いて、終了準備処理の進捗を判断してもよい。
【０１６３】
例えば、高速スナップショット処理の進捗を判断する場合は、時間Ｓ２が時間Ｓ２１より長ければ、スナップショット進行判断部１５９は高速スナップショット処理の進捗が所定の基準を上回っていると判断し、時間Ｓ２が時間Ｓ２１より短ければ、スナップショット進行判断部１５９は高速スナップショット処理の進行の状況が所定の基準を下回っていると判断する。または、終了準備処理の進捗を判断する場合は、時間Ｓ５が時間Ｓ５１より長ければ、終了準備進行判断部１７８は終了準備処理の進捗が所定の基準を上回っていると判断し、時間Ｓ５が時間Ｓ５１より短ければ、終了準備進行判断部１７８は終了準備処理の進捗が所定の基準を下回っていると判断する。
【０１６４】
上述の第１の実施形態および第２の実施形態を組み合わせてもよい。例えば、第１の実施形態においても、第２の実施形態のように終了準備処理の進捗が所定の基準を上回っているか否かを判断し、その進捗に応じて終了準備処理を中断し、高速スナップショット処理を省略して標準スナップショットデータ６ＡによるＯＳの起動を行ってもよい。
【０１６５】
その他、画像形成装置１の全体またはモジュールの構成、処理の内容、処理の順序、データの構成などは、本発明の趣旨に沿って適宜変更することができる。
【符号の説明】
【０１６６】
１０ｂ  ＲＡＭ（揮発性メモリ）
６Ａ  標準スナップショットデータ（第１のデータ）
１０２  標準スナップショット処理部（第１の取得手段）
１５９  スナップショット進行判断部（判断手段）
１７８  終了準備進行判断部（判断手段）
６Ｂ  高速スナップショットデータ（第２のデータ）
１５４  高速スナップショット処理部（第２の取得手段）
１７４  高速スナップショット処理部（第２の取得手段）
６Ｃ  所定サイズ（所定の基準）
６Ｆ  閾値（所定の基準）
１０１  起動部（起動手段）
１７３  終了準備処理部（終了手段）
Ｔ１  オフ時間（経過時間）
１５７  時間判断部（計測手段）
１７７  時間判断部（計測手段）
【図１】
2018005683.tif 000003
【図２】
2018005683.tif 000004
【図３】
2018005683.tif 000005
【図４】
2018005683.tif 000006
【図５】
2018005683.tif 000007
【図６】
2018005683.tif 000008
【図７】
2018005683.tif 000009
【図８】
2018005683.tif 000010
【図９】
2018005683.tif 000011
【図１０】
2018005683.tif 000012
【図１１】
2018005683.tif 000013
【図１２】
2018005683.tif 000014
【図１３】
2018005683.tif 000015
【図１４】
2018005683.tif 000016