(57)【要約】      （修正有）【課題】情報処理装置のプロセッサーを制御するファームウェアが正常に動作していない場合でも情報処理装置の動作が停止することを容易に且つ確実に抑制する情報処理装置、情報処理装置の制御方法、及びプログラムを提供する。【解決手段】ＣＰＵは、制御用ファームウェアが正常に格納されている場合に、判定フラグをＴＲＵＥとし、そうでない場合に判定フラグをＦＡＬＳＥにする。ＣＰＵは、ＭＦＰに対するシャットダウン要求があった場合に、判定フラグを参照し、判定フラグがＴＲＵＥである場合にのみシャットダウンを行い、判定フラグがＦＡＬＳＥである場合にはシャットダウン要求を無視し、シャットダウンを行わない。【選択図】図２
2018128778.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置であって、
前記情報処理装置のプロセッサーを制御するファームウェアのアップデートを行うアップデート手段と、
前記アップデートに伴う前記ファームウェアの状態に応じて、前記情報処理装置のシャットダウン、再起動、および電力モードの少なくとも何れか１つを制御する制御手段と、を有することを特徴とする情報処理装置。
【請求項２】
前記ファームウェアは、前記情報処理装置の不揮発性記憶装置に記憶されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記ファームウェアのアップデートが成功したか否かを示す第１情報を記憶装置に記憶する記憶手段を更に有し、
前記制御手段は、前記第１情報が、前記ファームウェアのアップデートが成功していないことを示す情報である場合、前記情報処理装置のシャットダウン、再起動、および節電モードへの移行を行わないことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記記憶手段は、前記第１情報を揮発性記憶装置に記憶することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記記憶手段は、前記ファームウェアのアップデートが終了する前に、前記第１情報として、前記ファームウェアのアップデートが成功していないことを示す情報を記憶し、前記ファームウェアのアップデートが成功すると、前記第１情報を、前記ファームウェアのアップデートが成功したことを示す情報に書き換えることを特徴とする請求項３または４に記載の情報処理装置。
【請求項６】
前記ファームウェアのアップデートが成功したか否かを判定する判定手段を更に有し、
前記制御手段は、前記判定手段により、前記ファームウェアのアップデートが成功していないと判定された後に、前記情報処理装置のシャットダウン、再起動、および節電モードへの移行を行わないことを特徴とする請求項１〜５の何れか１項に記載の情報処理装置。
【請求項７】
前記アップデート手段は、前記ファームウェアのアップデートが成功しなかった後に、前記ファームウェアのアップデートが可能な状態になると、前記ファームウェアを再度アップデートすることを特徴とする請求項１〜６の何れか１項に記載の情報処理装置。
【請求項８】
前記ファームウェアのアップデートが成功していない場合に、そのことを示す第２情報を出力する出力手段を更に有し、
前記制御手段は、前記出力手段により前記第２情報が出力された場合には、前記情報処理装置のシャットダウン、再起動、および節電モードへの移行の少なくとも何れか１つを行うことを特徴とする請求項１〜７の何れか１項に記載の情報処理装置。
【請求項９】
前記制御手段は、前記出力手段により前記第２情報が出力された場合には、前記情報処理装置のシャットダウンを行い、再起動および節電モードへの移行を行わないことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記出力手段は、前記出力手段により前記第２情報が出力された場合であって、前記情報処理装置のシャットダウンの要求が外部装置から受け付けられた場合、または、前記情報処理装置への電力の供給を停止する操作が行われた場合に、前記情報処理装置のシャットダウンを行うことを特徴とする請求項８または９に記載の情報処理装置。
【請求項１１】
前記制御手段は、前記情報処理装置のシャットダウンの要求が受け付けられた場合であって、前記ファームウェアのアップデートが成功していない場合に、前記情報処理装置のシャットダウンを行わないことを特徴とする請求項１〜１０の何れか１項に記載の情報処理装置。
【請求項１２】
前記制御手段は、前記情報処理装置に対する操作が、所定の時間、継続して行われない場合であって、前記ファームウェアのアップデートが成功していない場合に、前記情報処理装置のシャットダウンを行わないことを特徴とする請求項１〜１１の何れか１項に記載の情報処理装置。
【請求項１３】
前記情報処理装置に対する設定であって、前記情報処理装置のシャットダウンまたは再起動が必要な設定の変更を受け付ける受け付け手段を更に有し、
前記制御手段は、前記ファームウェアのアップデートが成功していない場合に、前記設定の変更に伴うシャットダウンまたは再起動を行わないことを特徴とする請求項１〜１２の何れか１項に記載の情報処理装置。
【請求項１４】
前記受け付け手段は、ファームウェアのアップデートが成功していない場合に、前記設定の変更を受け付けないことを特徴とする請求項１３に記載の情報処理装置。
【請求項１５】
前記制御手段は、前記情報処理装置の電力モードを節電モードに移行するための条件が成立した場合であって、前記ファームウェアのアップデートが成功していない場合に、前記情報処理装置の電力モードを節電モードに移行しないことを特徴とする請求項１〜１４の何れか１項に記載の情報処理装置。
【請求項１６】
前記情報処理装置は、画像を形成する画像形成手段を有する画像形成装置であることを特徴とする請求項１〜１５の何れか１項に記載の情報処理装置。
【請求項１７】
情報処理装置の制御方法であって、
前記情報処理装置のプロセッサーを制御するファームウェアのアップデートを行うアップデート工程と、
前記アップデートに伴う前記ファームウェアの状態に応じて、前記情報処理装置のシャットダウン、再起動、および電力モードの少なくとも何れか１つを制御する制御工程と、を有することを特徴とする情報処理装置の制御方法。
【請求項１８】
請求項１〜１６の何れか１項に記載の情報処理装置の各手段としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、及びプログラムに関し、特に、情報処理装置のプロセッサーを制御するファームウェアをアップデートするために用いて好適なものである。
【背景技術】
【０００２】
ＭＦＰ（ＭｕｌｔｉＦｕｎｃｔｉｏｎ Ｐｅｒｉｐｈｅｒａｌ）を代表とする画像形成装置は、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）を搭載する。このような画像形成装置では、ＣＰＵの起動時の制御用ファームウェアをＳＰＩ Ｆｌａｓｈ等の不揮発性記憶装置に格納することが一般的である。制御用ファームウェアそのものにバグが存在する場合や、新たに発見されたＣＰＵのエラッタを制御用ファームウェアで修正することが可能な場合、制御用ファームウェアをアップデートすることがある。
【０００３】
制御用ファームウェアのアップデートの方法の一つとして、以下の方法が存在する。即ち、画像形成装置が通電されＣＰＵが正常に動作している場合に、制御用ファームウェアのアップデート用ソフトウェアを用いて、不揮発性記憶装置内の制御用ファームウェアをアップデートする方法である。この方法では、アップデートの時点において画像形成装置のＣＰＵが正常に動作している必要がある。アップデート用ソフトウェアが正常に終了した後、次回の起動を行った際から新しい制御用ファームウェアによって画像形成装置は起動する。しかしながら、制御用ファームウェアのアップデート用ソフトウェアによるアップデートの実行を行う際に、ＣＰＵのレジスタの状態等に起因して、正常に制御用ファームウェアを不揮発性記憶装置に書き込めず、アップデートに失敗する場合がある。この場合、不揮発性記憶装置内の制御用ファームウェアが破壊され、次回の起動ができなくなる。
【０００４】
アップデート用ソフトウェアによるアップデートの実行に失敗した場合、このまま画像形成装置の再起動を行うと、制御用ファームウェアが破壊されているため、再起動時にＣＰＵが制御用ファームウェアを利用することができない。従って、画像形成装置（ＣＰＵ）の起動が不可能となる。一方、アップデートに失敗したとしても、画像形成装置の再起動を経ないようにした上で、アップデート用ソフトウェアの再度の実行に成功した場合には、再起動が可能となる。そのため、制御用ファームウェアの破壊が発生した場合は、制御用ファームウェアを破壊したままで、画像形成装置の再起動を経ないようにして、制御用ファームウェアを再度アップデートすることが望ましい。
【０００５】
尚、以上の再起動についての説明は、ＡＣＰＩ（Ａｄｖａｎｃｅｄ Ｃｏｎｆｉｇｕｒａｔｉｏｎ ａｎｄ Ｐｏｗｅｒ Ｉｎｔｅｒｆａｃｅ）で規定される電力状態であるＳ３状態への遷移とＳ０状態への復帰とを含む電力制御についても同様である。即ち、不揮発性記憶装置内の制御用ファームウェアが破壊されたままＳ３状態へ遷移すると、その後Ｓ３状態からの復帰が不可能となり、特別な冶具を用いた制御用ファームウェアのアップデートが不可避となる。
【０００６】
そこで特許文献１では、不揮発性記憶装置内の領域を次のように分けて利用している。即ち、特許文献１では、書き換え可能な領域には、制御用ファームウェアの更新データのみを圧縮して書き込み、書き換え不可の領域には、基本となる制御用ファームウェアとして、確実にコンピュータを起動させることが可能な制御用ファームウェアを確保する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１-１６４７５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、近年の制御用ファームウェアには、前述したような不揮発性記憶装置の利用をしないものもある。このような不揮発性記憶装置を用いる場合には、制御用ファームウェアのアップデートに失敗した場合でも、別途、確実に次回の起動を行える手段が必要となる。
また、前述の通り、制御用ファームウェアの破壊が発生した場合は、画像形成装置の再起動を経ないようにして再度アップデートを行うことが望ましい。しかしながら、制御用ファームウェアのアップデートが失敗した状態で、自動的にシャットダウンや再起動が行われる場合がある。
【０００９】
例えば、制御用ファームウェアのアップデート中に、オートシャットダウン機能等により画像形成装置が自動的にシャットダウンされる場合や、所定の設定変更を行った後、自動的に画像形成装置が再起動される場合等がある。オートシャットダウン機能とは、画像形成装置に対して所定時間操作が行われなかった等の所定の条件が満たされた場合に、自動的にシャットダウン処理を行う機能である。
これらの機能により、ユーザの意図に反し、制御用ファームウェアの破壊が発生した場合に、自動的にシャットダウンや再起動が行われてしまい、次回の起動ができなくなる場合があるという課題がある。
【００１０】
本発明は、このような問題点に鑑みてなされたものであり、情報処理装置のプロセッサーを制御するファームウェアが正常に動作していない場合でも情報処理装置の動作が停止することを容易に且つ確実に抑制することができるようにすることを目的とする。
【課題を解決するための手段】
【００１１】
本発明の情報処理装置は、情報処理装置であって、前記情報処理装置のプロセッサーを制御するファームウェアのアップデートを行うアップデート手段と、前記アップデートに伴う前記ファームウェアの状態に応じて、前記情報処理装置のシャットダウン、再起動、および電力モードの少なくとも何れか１つを制御する制御手段と、を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、情報処理装置のプロセッサーを制御するファームウェアが正常に動作していない場合でも情報処理装置の動作が停止することを容易に且つ確実に抑制することができる。
【図面の簡単な説明】
【００１３】
【図１】画像形成装置（ＭＦＰ）の構成を示す図である。
【図２】ＭＦＰの処理の第１の例を示すフローチャートである。
【図３】ＭＦＰの処理の第２の例を示すフローチャートである。
【図４】設定登録画面の一例を示す図である。
【図５】ＭＦＰの処理の第３の例を示すフローチャートである。
【図６】ＭＦＰの処理の第４の例を示すフローチャートである。
【図７】ＭＦＰの処理の第５の例を示すフローチャートである。
【図８】ＭＦＰの処理の第６の例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を用いて説明する。
（第１の実施形態）
まず、第１の実施形態について説明する。
図１は、画像形成装置の構成の一例を示す図である。本実施形態では、画像形成装置がＭＦＰである場合を例に挙げて説明する。
【００１５】
操作部４は、ＬＣＤ（Ｌｉｑｕｉｄ Ｃｒｙｓｔａｌ Ｄｉｓｐｌａｙ）／タッチパネル１０と操作キー１１とを有する。ＬＣＤ／タッチパネル１０は、ユーザへの情報の表示を行う。また、ＬＣＤ／タッチパネル１０は、ボタン画像を表示した後、ボタン画像が指等で押下されることによりボタン画像に対するユーザの操作がなされると、その操作の内容を受け付ける。このようにＬＣＤ／タッチパネル１０は、ＧＵＩ（Ｇｒａｐｈｉｃａｌ Ｕｓｅｒ Ｉｎｔｅｒｆａｃｅ）を有し、ユーザは、ＬＣＤ／タッチパネル１０に対してインタラクティブな操作を行うことが可能である。操作キー１１は、物理的なボタンスイッチ等で構成される。操作キー１１は、例えば、印刷部数等の数字を入力するためのボタンや、コピーの開始を指示するためのコピーボタンや、コピーのストップを指示するためのストップボタン等、ユーザが良く使用するためのボタンを有する。
【００１６】
人感センサ４１は、操作部４の近傍に物理的に配置されているものである。人感センサ４１は、ユーザを検知するためのセンサである。管理者は、ユーザが検知されたか否かを判定するための閾値を、操作部４の操作により、段階的に設定することが可能である。管理者は、ユーザがＭＦＰ８に近づいてきたときには未だユーザがＭＦＰ８から遠い位置にいる場合でもユーザを検知するように閾値を設定することや、ＭＦＰ８のごく近くまで近づかないとユーザを検知しないように閾値を設定することができる。ＭＦＰ８は、人感センサ４１がユーザを検知したときに、ＭＦＰ８の電力モードが節電モードである場合、電力モードをスタンバイモードに遷移させることが可能である。ここで、節電モードとは、ＣＰＵ１６が、ＡＣＰＩで規定される電力状態であるＳ３状態であることを含む電力モードである。また、スタンバイモードとは、ＣＰＵ１６が、ＡＣＰＩで規定される電力状態であるＳ０状態であることを含む電力モードである。
【００１７】
節電ボタン１２は、操作部４の近傍、もしくは操作部４と同一のユニットに配置される。節電ボタン１２は、ＭＦＰ８を節電モードから復帰させるためのスイッチである。つまり、スイッチ２２により操作部４の電源が落とされている場合でも、節電ボタン１２の押下を検出することが可能なように、節電ボタン１２は、操作部４とは電気的に分離された構成になっている。このため、図１では、節電ボタン１２を、操作部４の枠の外に記述している。このように節電ボタン１２は、操作部４とは独立してＣＰＵ１６と接続される。ＭＦＰ８は、節電ボタン１２のユーザによる押下に従って、電力モードを、節電モードに移行させたりスタンバイモードに復帰させたりすることが可能である。節電ボタン１２は、例えば、トグルスイッチを用いて実現される。節電ボタン１２が押下される度に、電力モードが切り替わるようにすることができる。
【００１８】
コントローラ部１は、ユーザ認証装置９、ネットワーク接続部１３、制御部１４、及び印刷データ記憶部１５を有する。制御部１４は、ＣＰＵ１６、ＳＰＩ（Ｓｅｒｉａｌ Ｐｅｒｉｐｈｅｒａｌ Ｉｎｔｅｒｆａｃｅ） Ｆｌａｓｈ２３、およびＲＡＭ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ）２４を有する。
【００１９】
ネットワーク接続部１３は、ネットワーク４０を介して相互に接続されたＰＣ（Ｐｅｒｓｏｎａｌ Ｃｏｍｐｕｔｅｒ）３９等の外部装置との間でデータの送受信を行う。ネットワーク接続部１３は、例えば、ＰＣ３９から印刷データ（印刷ジョブ）を受信する。印刷データ記憶部１５は、ネットワーク接続部１３で受信した印刷データを蓄積する。印刷データ記憶部１５は、例えば、ＨＤＤ（Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ）を有する。ユーザ認証装置９は、認証プリントのためにユーザの認証を行う機能を有する。
【００２０】
ＣＰＵ１６は、これらのデバイスと相互に接続され、コントローラ部１全体を制御する。ＣＰＵ１６は、例えば、ネットワーク接続部１３で受信したデータが、印刷データであるか否かを判断する。ＳＰＩ  Ｆｌａｓｈ２３は、ＣＰＵ１６の起動に必要な制御用ファームウェアを格納する不揮発性記憶装置である。ＲＡＭ２４は、ＣＰＵ１６への命令等を一時的に格納する。制御用ファームウェアは、例えば、ＢＩＯＳ（Ｂａｓｉｃ Ｉｎｐｕｔ/Ｏｕｔｐｕｔ Ｓｙｓｔｅｍ）である。
【００２１】
また、本実施形態のＭＦＰ８では、各デバイスの電源を細かく制御することで、ユーザの待ち時間を減らすことが可能である。これを実現するための電源制御部１８には、ＣＰＵ１６がリモート制御可能なスイッチ１９〜２２を有する。これらのスイッチ１９、２０、２１、２２は、図１に示す矢印線のように、それぞれ、プリンタ部３、スキャナ部２、ユーザ認証装置９、操作部４に接続される。ＣＰＵ１６は、スイッチ１９〜２２を制御することで装置の電力を制御することが可能である。スイッチ１９〜２２は、例えば、ＦＥＴ（Ｆｉｅｌｄ Ｅｆｆｅｃｔ Ｔｒａｎｓｉｓｔｏｒ）やリレー等を有する。
【００２２】
電力切替スイッチ１７は、プリンタ部３、スキャナ部２、ユーザ認証装置９、および操作部４を含むＭＦＰ８全体の電力供給を切り替えるために用いられるメインスイッチである。
本実施形態では、例えば、ＭＦＰ８を用いることにより情報処理装置の一例が実現される。
【００２３】
図２は、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンに係るＭＦＰ８の処理の一例を示すフローチャートである。図２では、ＭＦＰ８が制御用ファームウェアのアップデート中の場合には、シャットダウン要求が発生してもシャットダウンを行わず、それ以外の場合には、シャットダウン要求によりシャットダウンを行うフローを示す。図２では、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンに係る処理以外の処理についての説明を省略する。尚、図２において、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンに係る処理以外の処理を行う場合、例えば、後述するＳ２０２において、シャットダウン要求がないと判定された場合に当該処理を行った上でＳ２０１の処理に戻ればよい。
【００２４】
ＭＦＰ８の動作が開始すると、まず、Ｓ２００にて、ＣＰＵ１６は、起動時に、判定フラグをＴＲＵＥとする。ここで、判定フラグは、ＳＰＩ Ｆｌａｓｈ２３への制御用ファームウェアの書き込みに失敗したか否かを示すものである。判定フラグは、ＭＦＰ８の記憶装置、好ましくはＭＦＰ８の揮発性記憶装置に配置されていれば、特にその形式（ファイル、ＲＡＭ上のデータ）は問わない。本実施形態では、例えば、判定フラグを用いることにより第１情報の一例が実現される。制御用ファームウェアがアップデートされる前であれば、ＣＰＵ１６は、ＭＦＰ８の起動時に、正常に起動する。このことは、制御用ファームウェアが正常にＳＰＩ Ｆｌａｓｈ２３に格納されていることを意味する。このため、ＭＦＰ８は、判定フラグをＴＲＵＥとする。
【００２５】
次に、Ｓ２０１にて、ＣＰＵ１６は、制御用ファームウェアのアップデートの開始が指示されたか否かを判定する。この判定の結果、制御用ファームウェアのアップデートの開始が指示された場合、処理は、後述するＳ２０５に進む。一方、制御用ファームウェアのアップデートの開始が指示されていない場合、処理は、Ｓ２０２に進む。
【００２６】
ＭＦＰ８は、随時、ＭＦＰ８に対するシャットダウン要求を受け付ける。例えば、ＭＦＰ８のメインスイッチの操作によりＭＦＰ８に対するシャットダウン要求が発生する。そこで、Ｓ２０２にて、ＣＰＵ１６は、ＭＦＰ８に対するシャットダウン要求が発生したか否かを判定する。この判定の結果、ＭＦＰ８に対するシャットダウン要求が発生していない場合、処理は、Ｓ２０１に戻る。一方、ＭＦＰ８に対するシャットダウン要求が発生している場合、処理は、Ｓ２０３に進む。
【００２７】
そして、Ｓ２０３にて、ＣＰＵ１６は、判定フラグがＴＲＵＥであるか否かを判定する。この判定の結果、判定フラグがＴＲＵＥであれば、ＭＦＰ８のシャットダウンを行った場合でも、ＭＦＰ８は、次回起動時に正常に起動できる。このため、Ｓ２０４にて、ＣＰＵ１６は、ＭＦＰ８のシャットダウンを行う。一方、判定フラグがＴＲＵＥでない場合、ＭＦＰ８のシャットダウンを行うと、ＭＦＰ８は、次回起動時に正常に起動できない。このため、ＣＰＵ１６は、ＭＦＰ８のシャットダウンを行わない（シャットダウン要求を受け付けない）。そして、図２のフローチャートによる処理が終了する。
【００２８】
前述したようにＳ２０１の判定の結果、制御用ファームウェアのアップデートの開始が指示された場合、処理は、Ｓ２０５に進む。Ｓ２０５にて、ＣＰＵ１６は、制御用ファームウェアのアップデートを開始する。制御用ファームウェアのアップデート直後は、制御用ファームウェアのＳＰＩ Ｆｌａｓｈ２３への格納が不完全である。このため、Ｓ２０６にて、ＣＰＵ１６は、判定フラグをＦＡＬＳＥにする。
【００２９】
その後、Ｓ２０７にて、ＣＰＵ１６は、制御用ファームウェアのアップデートに成功したか否かを判定する。この判定の結果、制御用ファームウェアのアップデートに成功した場合、Ｓ２０８にて、ＣＰＵ１６は、判定フラグをＴＲＵＥに戻して、図２のフローチャートによる処理を終了する。一方、制御用ファームウェアのアップデートに失敗した場合、ＣＰＵ１６は、Ｓ２０８の処理をスキップし、判定フラグをＦＡＬＳＥのままとし、図２のフローチャートによる処理を終了する。
【００３０】
以上のように、ＣＰＵ１６は、アップデートに伴う制御用ファームウェアの状態に応じて、ＭＦＰ８のシャットダウンの動作を制御する。本実施形態では、ＣＰＵ１６は、制御用ファームウェアが正常に格納されている場合に判定フラグをＴＲＵＥとし、そうでない場合に判定フラグをＦＡＬＳＥにする。ＣＰＵ１６は、ＭＦＰ８に対するシャットダウン要求があった場合に、判定フラグを参照し、判定フラグがＴＲＵＥである場合にのみシャットダウンを行い、判定フラグがＦＡＬＳＥである場合にはシャットダウン要求を無視し、シャットダウンを行わない。従って、ＳＰＩ Ｆｌａｓｈ２３内の制御用ファームウェアが破壊されている場合に、ＭＦＰ８の動作が停止することを、ＳＰＩ Ｆｌａｓｈ２３の領域を分けることなく抑止することができる。よって、次回の正常な起動に失敗することと、特別な冶具を用いた制御用ファームウェアのアップデートを行うこととを回避することが可能となる。尚、制御用ファームウェアが破壊された状態とは、ファームウェアが正常に動作できなくなる状態を意味し、その発生原因は特に限定するものではない（このことはその他の説明においても同じである）。また、ＣＰＵ１６は、ＭＦＰ８に対するシャットダウン要求があった時に判定フラグがＴＲＵＥでない場合、制御用ファームウェアが正常に格納されていないことによりシャットダウンできないことを示す情報を、ＬＣＤ／タッチパネル１０等に表示させてもよい。
【００３１】
（第２の実施形態）
次に、第２の実施形態を説明する。第１の実施形態では、ＭＦＰ８に対するシャットダウン要求を受け付ける場合を例に挙げて説明した。これに対し、本実施形態では、ＭＦＰ８を一定時間操作しなかった場合に、ＭＦＰ８が自動的にシャットダウンする場合（シャットダウン要求が自動的に発生する場合）について説明する。このように本実施形態と第１の実施形態とでは、ＭＦＰ８がシャットダウンする際の処理が主として異なる。従って、本実施形態の説明において、第１の実施形態と同一の部分については、図１〜図２に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００３２】
ＭＦＰ８におけるシャットダウン要求の代表的なものとして、消費電力の低減の目的で広く行われている、オートシャットダウンという機能がある。オートシャットダウンは、計時手段を用いて、ＭＦＰ８に対して何の操作も行われない状態の継続時間を計時し、この計時手段による計時時間が一定時間を超えた場合に、自動的にシャットダウンを行うものである。以下の説明では、この計時手段をタイマと称する。本実施形態では、タイマを用いて、ＭＦＰ８に対して何の操作も行われない状態の継続時間を計時し、計時時間が４時間を超えた場合に、シャットダウンを自動的に行う場合を例に挙げて説明する。
【００３３】
図３は、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンに係るＭＦＰ８の処理の一例を示すフローチャートである。図３では、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンに係る処理以外の処理についての説明を省略する。
【００３４】
ＭＦＰ８の動作が開始すると、まず、Ｓ２００にて、ＣＰＵ１６は、起動時に、判定フラグをＴＲＵＥとする。
次に、Ｓ３００にて、ＣＰＵ１６は、タイマに４時間をセットし、タイマにカウントダウンを開始させる。
【００３５】
次に、Ｓ２０１にて、ＣＰＵ１６は、制御用ファームウェアのアップデートの開始が指示されたか否かを判定する。この判定の結果、制御用ファームウェアのアップデートの開始が指示された場合、処理は、Ｓ２０５に進む。Ｓ２０５〜Ｓ２０８の処理は、第１の実施形態と同様であるため、これらの処理の詳細な説明を省略する。一方、制御用ファームウェアのアップデートの開始が指示されていない場合、処理は、Ｓ３０１に進む。
【００３６】
そして、Ｓ３０１にて、ＣＰＵ１６は、ＭＦＰ８に対する操作が行われたか否かを判定する。この判定の結果、ＭＦＰ８に対する操作が行われていない場合、タイマは、そのままカウントダウンを継続する。そして、処理は、後述するＳ３０３に進む。一方、ＭＦＰ８に対する操作が行われ操作が行われた場合、Ｓ３０２にて、ＣＰＵ１６は、タイマに４時間をセットし、改めてカウントダウンを開始させる。そして、処理は、Ｓ３０３に進む。そして、Ｓ３０３にて、ＣＰＵ１６は、タイマのカウント値が０（ゼロ）になったか否かを判定する。この判定の結果、タイマのカウント値が０（ゼロ）になっていない場合、処理は、Ｓ２０１に戻る。一方、タイマのカウント値が０（ゼロ）になった場合、処理は、Ｓ２０３に進む。
【００３７】
Ｓ２０３およびＳ２０４の処理は、第１の実施形態と同様である。Ｓ２０３では、ＣＰＵ１６は、判定フラグがＴＲＵＥであるか否かを判定する。即ち、ＣＰＵ１６は、制御用ファームウェアが正常に格納されているか否かを判定する。この判定の結果、判定フラグがＴＲＵＥであり、制御用ファームウェアが正常に格納されている場合、ＭＦＰ８のシャットダウンを行っても次回起動時に問題がない。このため、Ｓ２０４にて、ＣＰＵ１６は、ＭＦＰ８のシャットダウンを行い、図３のフローチャートによる処理を終了する。これに対し、判定フラグがＴＲＵＥではなく（即ちＦＡＬＳＥであり）、制御用ファームウェアが正常に格納されていない場合、オートシャットダウンによるシャットダウン要求が発生しているものの、ＣＰＵ１６は、Ｓ２０４の処理を無視する。この場合、ＣＰＵ１６は、シャットダウンを行わずに、図３のフローチャートによる処理を終了する。
【００３８】
以上のように本実施形態では、ＣＰＵ１６は、制御用ファームウェアが正常に格納されている場合、オートシャットダウンによるシャットダウン要求が発生すると、シャットダウンを行う。これに対し、制御用ファームウェアが正常に格納されていない場合、ＣＰＵ１６は、オートシャットダウンによるシャットダウン要求が発生した場合であってもこれを無視し、シャットダウンを行わない。このため、制御用ファームウェアが破壊されている場合に、オートシャットダウンによるシャットダウンを抑止でき、次回の正常な起動に失敗することと、特別な冶具を用いた制御用ファームウェアのアップデートを行うこととを回避することが可能となる。また、例えば、ＣＰＵ１６のレジスタが正常のビットパターンになった後、再度、制御用ファームウェアのアップデート用ソフトウェアを実行することで、制御用ファームウェアを正常に格納させることができる。このようにした後に、手動でＭＦＰ８のシャットダウンを行うことで、次回の正常な起動が可能となる。これにより、オートシャットダウンによるシャットダウンを止めつつ、次回の正常な起動が可能となる。
【００３９】
本実施形態と第１の実施形態とを組み合わせてもよい。このようにする場合、例えば、Ｓ２０１とＳ３０１との間に、Ｓ２０２の処理が行われ、Ｓ２０２においてシャットダウン要求が発生した場合にはＳ２０３に進み、そうでない場合にはＳ３０１に進むようにする。
【００４０】
（第３の実施形態）
次に、第３の実施形態について説明する。第１および第２の実施形態では、ＭＦＰ８をシャットダウンする場合を例に挙げて説明した。これに対し、本実施形態では、ＭＦＰ８を再起動する場合を例に挙げて説明する。このように本実施形態は、第１〜第２の実施形態に対し、ＭＦＰ８を再起動させることによる処理が主として異なる。従って、本実施形態の説明において、第１〜第２の実施形態と同一の部分については、図１〜図３に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００４１】
本実施形態では、ＭＦＰ８の再起動の要求が操作部４によって発生する場合を例に挙げて説明する。
ユーザは、ＭＦＰ８の設定を変更するために操作部４のＬＣＤ／タッチパネル１０を操作する。図４は、ＭＦＰ８の設定・登録を行うための設定登録画面の一例を示す図である。設定登録画面４００は、ＧＵＩである。図４において、環境設定４０１を変更したいときを例にとると、ユーザは、環境設定４０１の変更後の設定値を入力した後、その入力を反映させるためにＬＣＤ／タッチパネル１０に表示される設定ボタン４０４を押下する必要がある。このとき、設定を変更する項目によっては設定値を反映させるためにＭＦＰ８を一旦シャットダウンしてから起動するという、いわゆる再起動処理を実行する場合がある。制御用ファームウェアが破壊された状態でＭＦＰ８の再起動が行われると、ＭＦＰ８の動作が停止する。そこで、本実施形態では、ＭＦＰ８は、以下の図４のフローチャートによる処理を行う。尚、図４に示す設定登録画面４００では、環境設定４０１に加え、調整／メンテナンス４０２及び管理設定４０３に対する設定・登録を行うことができる。また、設定登録画面４００に対する設定・登録を行わない場合、ユーザは、閉じるボタン４０５を押下する。
【００４２】
図５は、制御用ファームウェアのアップデートおよびＭＦＰ８の再起動に係るＭＦＰ８の処理の一例を示すフローチャートである。図５では、制御用ファームウェアのアップデートおよびＭＦＰ８の再起動に係る処理以外の処理についての説明を省略する。
ＭＦＰ８の動作が開始すると、まず、Ｓ２００にて、ＣＰＵ１６は、起動時に、判定フラグをＴＲＵＥとする。
次に、Ｓ２０１にて、ＣＰＵ１６は、制御用ファームウェアのアップデートの開始が指示されたか否かを判定する。この判定の結果、制御用ファームウェアのアップデートの開始が指示された場合には、Ｓ２０５に進む。Ｓ２０５〜Ｓ２０８の処理は、第１の実施形態と同様であるため、これらの処理の詳細な説明を省略する。一方、制御用ファームウェアのアップデートの開始が指示されていない場合、処理は、Ｓ５００に進む。
【００４３】
そして、Ｓ５００にて、ＣＰＵ１６は、設定登録画面４００に対する操作があったか否かを判定する。この判定の結果、設定登録画面４００に対する操作がない場合、処理は、Ｓ２０１に戻る。一方、設定登録画面４００に対する操作があった場合、処理は、Ｓ５０１に進む。そして、Ｓ５０１にて、ＣＰＵ１６は、設定登録画面４００に対する任意の設定値の入力を検知する。次に、Ｓ５０２にて、ＣＰＵ１６は、閉じるボタン４０５が押下されたか否かを判定する。この判定の結果、閉じるボタン４０５が押下された場合、処理は、Ｓ２０１に戻る。一方、閉じるボタン４０５が押下されていない場合、処理は、Ｓ５０３に進む。
【００４４】
そして、Ｓ５０３にて、ＣＰＵ１６は、設定ボタン４０４が押下されたか否かを判定する。この判定の結果、設定ボタン４０４が押下されていない場合、処理は、Ｓ５０１に戻る。一方、設定ボタン４０４が押下された場合、処理は、Ｓ５０４に進む。
そして、Ｓ５０４にて、ＣＰＵ１６は、設定を変更する項目が、ＭＦＰ８の再起動を必要とする項目であるか否かを判定する。この判定の結果、設定を変更する項目が、ＭＦＰ８の再起動を必要とする項目である場合、処理は、Ｓ５０５に進む。一方、設定を変更する項目が、ＭＦＰ８の再起動を必要とする項目でない場合、ＣＰＵ１６は、設定値を即時反映して図５のフローチャートによる処理を終了する。
【００４５】
Ｓ５０５にて、ＣＰＵ１６は、判定フラグがＴＲＵＥであるか否かを判定する。この判定の結果、判定フラグがＴＲＵＥであれば、ＭＦＰ８をシャットダウンした場合でも、次回起動時に正常にＭＦＰ８を起動できる。このため、Ｓ５０６にて、ＣＰＵ１６は、ＭＦＰ８の再起動を行う。そして、処理は、Ｓ２００に戻る。一方、判定フラグがＴＲＵＥではない（即ちＦＡＬＳＥである）場合、ＭＦＰ８のシャットダウンを行うと、次回起動時にＭＦＰ８を正常に起動できない。このため、ＣＰＵ１６は、ＭＦＰ８の再起動を行わずに（再起動の要求を受け付けずに）図５のフローチャートによる処理を終了する。再起動の要求の受け付けを制限する方法としては、例えば、設定ボタン４０４を押下できないようにグレーアウトする方法や、表示させないようにする方法がある。
【００４６】
以上のように、ＣＰＵ１６は、アップデートに伴う制御用ファームウェアの状態に応じて、ＭＦＰ８の再起動の動作を制御する。本実施形態では、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合、ＭＦＰ８の再起動要求を無視し、再起動を行わない。従って、制御用ファームウェアが破壊されている場合には、変更した設定値を反映させることを目的とした操作部４からの再起動要求による電力停止を抑止することができる。そのため、次回の正常な起動に失敗することと、特別な冶具を用いた制御用ファームウェアのアップデートを行うこととを回避することが可能となる。また、操作部４からの再起動要求を止めつつ、例えば、ＣＰＵ１６のレジスタが正常のビットパターンになった後、再度、制御用ファームウェアのアップデート用ソフトウェアを実行することで、制御用ファームウェアを正常に格納させることができる。このようにした後に、ＭＦＰ８の再起動を行うことで、正常な起動が可能となる。
【００４７】
ここで、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合、設定ボタン４０４を操作できないことを示すメッセージをＬＣＤ／タッチパネル１０に表示させることとしてもよい。ＣＰＵ１６は、例えば、このメッセージを、設定登録画面４００の上にポップアップ表示させることができる。
【００４８】
また、ＣＰＵ１６は、判定フラグがＴＲＵＥである場合、設定ボタン４０４を表示させずに自動的にＭＦＰ８を再起動させてもよい。例えば、この場合、ＣＰＵ１６は、判定フラグがＴＲＵＥでなければ、ＭＦＰ８の再起動を自動的に実行しないようにする。
【００４９】
また、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合（即ち、ＦＡＬＳＥである場合）には、常に、再起動の要求の受け付けを制限するようにしてもよい。再起動の要求の受け付けを制限する方法としては、例えば、設定ボタン４０４を押下できないようにグレーアウトする方法や、表示させないようにする方法がある。
【００５０】
本実施形態と、第１の実施形態および第２の実施形態の少なくとも何れか１つとを組み合わせてもよい。本実施形態と、第１の実施形態とを組み合わせる場合、例えば、図２のフローチャートのＳ２０２にて、シャットダウン要求が発生していないと判定された場合に、Ｓ５００〜Ｓ５０６の処理を行う。本実施形態と第２の実施形態とを組み合わせる場合、例えば、図３のフローチャートのＳ３０３にて、タイマのカウント値が０（ゼロ）になっていないと判定された場合に、Ｓ５００〜Ｓ５０６の処理を行う。その他の組み合わせについても、各フローチャートを組み合わせることにより実現することができるので、それらの詳細な説明を省略する。
【００５１】
（第４の実施形態）
次に、第４の実施形態を説明する。第１および第２の実施形態では、ＭＦＰ８をシャットダウンする場合、第３の実施形態では、ＭＦＰ８を再起動する場合を例に挙げて説明した。これに対し、本実施形態では、ＭＦＰ８の電力状態を省電力状態に移行する場合を例に挙げて説明する。このように本実施形態と第１〜第３の実施形態とは、ＭＦＰ８の電力状態を省電力状態に移行させることによる処理が主として異なる。従って、本実施形態の説明において、第１〜第３の実施形態と同一の部分については、図１〜図５に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００５２】
ＭＦＰ８は、機器の消費電力を抑えるために部分的に電力供給を停止することができる。この電力の制御の具体的手段は公知の技術で実現することができるため、その詳細な説明を省略する。尚、ＭＦＰ８には、複数の電力状態（電力モード）として、スタンバイモードと節電モードとを含むモードがある。スタンバイモードとは、図１のＭＦＰ８の全てのブロックに電力が供給されるモードである。節電モードとは、ＭＦＰ８の全てのブロックに電力が供給されず、例えば、人感センサ４１、節電ボタン１２、ＲＡＭ２４、およびネットワーク接続部１３に電力が供給されるモードである。ＭＦＰ８は、スタンバイモードのときに、所定の節電移行トリガーによる電力制御指示があると、節電モードに移行する。制御用ファームウェアが破壊された状態で節電モードへの移行を実施すると、ＭＦＰ８は、次回の節電モードからスタンバイモードへの遷移ができなくなる。
【００５３】
ここで、節電移行トリガーは、ＭＦＰ８の電力モードを節電モードに移行するための条件が成立した場合に発生する。節電移行トリガーは、例えば、ユーザが節電ボタン１２を押下した場合や、ＭＦＰ８が一定時間継続して操作されない場合や、人感センサ４１によってユーザが検知された場合に発生する。また、ＭＦＰ８は、節電モードのときには、スタンバイモードのようなスキャンやプリントといったジョブの実行はできないが、例えば、ＰＣ３９からネットワーク４０を介した印刷ジョブを受け付けることは可能である。ＭＦＰ８は、印刷ジョブを受け付けると、自動的にスタンバイモードに遷移させることで印刷ジョブを実行する。この場合、印刷ジョブの受け付けにより節電移行トリガーが発生する。
【００５４】
図６は、制御用ファームウェアのアップデートおよびＭＦＰ８の電力制御処理に係るＭＦＰ８の処理の一例を示すフローチャートである。図６では、制御用ファームウェアのアップデートおよびＭＦＰ８の電力制御に係る処理以外の処理についての説明を省略する。
ＭＦＰ８の動作が開始すると、まず、Ｓ２００にて、ＣＰＵ１６は、起動時に、判定フラグをＴＲＵＥとする。
【００５５】
次に、Ｓ２０１にて、ＣＰＵ１６は、制御用ファームウェアのアップデートの開始が指示されたか否かを判定する。この判定の結果、制御用ファームウェアのアップデートの開始が指示された場合には、Ｓ２０５に進む。Ｓ２０５〜Ｓ２０８の処理は、第１の実施形態と同様であるため、これらの処理の詳細な説明を省略する。一方、制御用ファームウェアのアップデートの開始が指示されていない場合、処理は、Ｓ６００に進む。
【００５６】
そして、Ｓ６００にて、ＣＰＵ１６は、節電移行トリガーが発生しているか否かを判定する。この判定の結果、節電移行トリガーが発生していない場合、処理は、Ｓ２０１に戻る。一方、節電移行トリガーが発生している場合、処理は、Ｓ６０１に進む。
そして、Ｓ６０１にて、判定フラグがＴＲＵＥであるか否かを判定する。この判定の結果、判定フラグがＴＲＵＥであれば、節電制御処理を行った場合でも、ＭＦＰ８は、次回のスタンバイモードへの移行時に正常に起動できる。このため、Ｓ６０２にて、ＣＰＵ１６は、節電制御処理を行って、図６のフローチャートによる処理を終了する。即ち、ＣＰＵ１６は、ＭＦＰ８をスタンバイモードから節電モードに移行させる。一方、判定フラグがＴＲＵＥではない（即ちＦＡＬＳＥである）場合、節電制御処理を行うと、ＭＦＰ８は、次回のスタンバイモードへの移行時に正常に起動できない。このため、ＣＰＵ１６は、節電制御処理を行わずに（節電移行の要求を受け付けずに）図６のフローチャートによる処理を終了する。
【００５７】
以上のように、ＣＰＵ１６は、アップデートに伴う制御用ファームウェアの状態に応じて、ＭＦＰ８の電力モードを制御する。本実施形態では、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合、ＭＦＰ８をスタンバイモードから節電モードに移行させない。従って、制御用ファームウェアが破壊されている場合に、節電移行トリガーの発生を契機とした節電移行要求による電力停止を抑止できる。そのため、節電モードからスタンバイモードへの移行や次回の正常な起動に失敗することと、特別な冶具を用いた制御用ファームウェアのアップデートを行うこととを回避することが可能となる。また、例えば、ＣＰＵ１６のレジスタが正常のビットパターンになった後、再度、制御用ファームウェアのアップデート用ソフトウェアを実行する。このようにすることで、節電モードへの移行を止めつつ、制御用ファームウェアを正常に格納した後に、節電モードからスタンバイモードへの移行や次回の正常な起動を実行することが可能となる。
【００５８】
本実施形態と、第１〜第３の実施形態の少なくとも何れか１つとを組み合わせてもよい。本実施形態と、第１の実施形態とを組み合わせる場合、例えば、図２のフローチャートのＳ２０２にて、シャットダウン要求が発生していないと判定された場合に、Ｓ６００〜Ｓ６０２の処理を行う。本実施形態と第２の実施形態とを組み合わせる場合、例えば、図３のフローチャートのＳ３０３にて、タイマのカウント値が０（ゼロ）になっていないと判定された場合に、Ｓ６００〜Ｓ６０２の処理を行う。本実施形態と第３の実施形態とを組み合わせる場合、例えば、図５のフローチャートのＳ５００にて、設定登録画面４００に対する操作がないと判定された場合に、Ｓ６００〜Ｓ６０２の処理を行う。その他の組み合わせについても、各フローチャートを組み合わせることにより実現することができるので、それらの詳細な説明を省略する。
【００５９】
（第５の実施形態）
次に、第５の実施形態について説明する。第１〜第４の実施形態では、判定フラグがＴＲＵＥでない場合には、ＭＦＰ８のシャットダウンや再起動を行わない場合を例に挙げて説明した。これに対し、本実施形態では、判定フラグがＴＲＵＥでない場合であっても、外部装置からのリモート指示によるシャットダウン要求があった場合には、ＭＦＰ８をシャットダウンさせる。このように本実施形態と第１〜第４の実施形態では、判定フラグがＴＲＵＥでない場合であってもＭＦＰ８をシャットダウンさせることによる処理が主として異なる。従って、本実施形態の説明において、第１〜第４の実施形態と同一の部分については、図１〜図６に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００６０】
本実施形態では、シャットダウンもしくは再起動の要求が、例えばＰＣ３９のような外部装置からのリモート指示によって発生する場合を例に挙げて説明する。
ＭＦＰ８は、ネットワーク４０を介して相互に接続された外部装置（ＰＣ３９）からリモートでのシャットダウンもしくは再起動の要求を受け付けることができる。この要求は主に、管理者からの要求である。リモートからの再起動の要求は、多数のＭＦＰ８の一括メンテナンスに際して、設定変更後に行われることが多い。また、リモートからのシャットダウンの要求としては、災害時において、ＭＦＰ８の緊急停止を目的として要求されるケースが考えられる。
【００６１】
図７は、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンおよび再起動に係るＭＦＰ８の処理の一例を説明するフローチャートである。図７では、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンおよび再起動に係る処理以外の処理についての説明を省略する。
ＭＦＰ８の動作が開始すると、まず、Ｓ２００にて、ＣＰＵ１６は、起動時に、判定フラグをＴＲＵＥとする。
次に、Ｓ２０１にて、ＣＰＵ１６は、制御用ファームウェアのアップデートの開始が指示されたか否かを判定する。この判定の結果、制御用ファームウェアのアップデートの開始が指示された場合、処理は、Ｓ２０５に進む。Ｓ２０５〜Ｓ２０８の処理は、第１の実施形態とほぼ同様である。ただし、Ｓ２０７にて、制御用ファームウェアのアップデートに失敗したと判定された場合には、図７のフローチャートによる処理を終了させずに、処理は、Ｓ７００に進む。そして、Ｓ７００にて、ＣＰＵ１６は、異常（制御用ファームウェアのアップデートに失敗したこと）を外部装置（ＰＣ３９）に通知して、図７のフローチャートによる処理を終了する。
【００６２】
Ｓ２０１にて、制御用ファームウェアのアップデートの開始が指示されていないと判定された場合、処理は、Ｓ７０１に進む。そして、Ｓ７０１にて、ＣＰＵ１６は、リモートからの電力停止要求があったか否かを判定する。この判定の結果、リモートからの電力停止要求がない場合、処理は、Ｓ２０１に戻る。一方、リモートからの電力停止要求がある場合、処理は、Ｓ７０２に進む。
【００６３】
そして、Ｓ７０２にて、ＣＰＵ１６は、Ｓ７０１で受け取ったと判定した電力停止要求が再起動要求であるか否かを判定する。この判定の結果、電力停止要求が再起動要求である場合、処理は、後述するＳ７０６に進む。一方、電力停止要求が再起動要求ではなく、シャットダウン要求である場合、処理は、Ｓ７０３に進む。そして、Ｓ７０３にて、ＣＰＵ１６は、判定フラグがＴＲＵＥであるか否かを判定する。この判定の結果、判定フラグがＴＲＵＥではなく（即ちＦＡＬＳＥであり）、制御用ファームウェアが正常に格納されていない場合、処理は、Ｓ７０４に進む。
【００６４】
そして、Ｓ７０４にて、ＣＰＵ１６は、異常（制御用ファームウェアのアップデートに失敗したこと）を外部装置（ＰＣ３９）に通知する。本実施形態では、例えば、このようにして出力される異常（制御用ファームウェアのアップデートに失敗したこと）を示す情報を用いることにより、第２情報の一例の一例が実現される。そして、Ｓ７０５にて、ＣＰＵ１６は、ＭＦＰ８のシャットダウンを行い、図７のフローチャートによる処理を終了する。一方、Ｓ７０３にて、判定フラグがＴＲＵＥであると判定された場合、制御用ファームウェアは正常に格納されているので、処理は、Ｓ７０４を省略してＳ７０５に進む。即ち、ＣＰＵ１６は、異常（制御用ファームウェアのアップデートに失敗したこと）を外部装置（ＰＣ３９）に通知することなく、ＭＦＰ８のシャットダウンを行う。そして、図７のフローチャートによる処理を終了する。
【００６５】
前述したようにＳ７０２にて、電力停止要求が再起動要求であると判定された場合、処理は、Ｓ７０６に進む。そして、Ｓ７０６にて、ＣＰＵ１６は、判定フラグがＴＲＵＥであるか否かを判定する。この判定の結果、判定フラグがＴＲＵＥであれば、ＭＦＰ８をシャットダウンした場合でも、次回起動時に正常にＭＦＰ８を起動できる。このため、Ｓ７０７にて、ＣＰＵ１６は、ＭＦＰ８の再起動を行う。そして、処理は、Ｓ２００に戻る。一方、判定フラグがＴＲＵＥではない（即ちＦＡＬＳＥである）場合、ＭＦＰ８のシャットダウンを行うと、次回起動時にＭＦＰ８を正常に起動できない。このため、ＣＰＵ１６は、ＭＦＰ８の再起動を行わずに（再起動の要求を受け付けずに）図７のフローチャートによる処理を終了する。
【００６６】
以上のように本実施形態では、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合に、リモートからの再起動要求があると、その要求を無視し、再起動を行わない。これに対し、判定フラグがＴＲＵＥでない場合でも、リモートからのシャットダウン要求があった場合には、ＣＰＵ１６は、外部装置（ＰＣ３９）に異常を通知した上でＭＦＰ８をシャットダウンする。従って、制御用ファームウェアが破壊されている場合には、リモートからの再起動要求による電力停止を抑止できる。そのため、次回の正常な起動に失敗することと、特別な冶具を用いた制御用ファームウェアのアップデートを行うこととを回避することが可能となる。一方、リモートからのシャットダウン要求による電力停止を受け付けるため、緊急停止の目的を損なうこともない。更に、ネットワーク４０を介して外部装置（ＰＣ３９）に異常を通知して外部装置にその記録を残す。このため、リモートからのシャットダウン要求を受け付けることでＭＦＰ８が正常に起動不能になった際の迅速な原因究明が可能となる。また、例えば、ＣＰＵ１６のレジスタが正常のビットパターンになった後、再度、制御用ファームウェアのアップデート用ソフトウェアを実行することで、制御用ファームウェアを正常に格納させることができる。このようにした後に、手動でＭＦＰ８のシャットダウンを行うことで、次回の正常な起動が可能となる。
【００６７】
本実施形態では、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合に、リモートからの再起動要求があった場合、その要求を無視し、再起動を行わない。しかしながら、リモートからの再起動要求があった場合にも、シャットダウン要求があった場合と同様に、ＣＰＵ１６は、外部装置に異常を通知した上でＭＦＰ８を再起動させてもよい。また、この場合、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合に、リモートからのシャットダウン要求があると、その要求を無視し、シャットダウンを行わなくてもよい。この他、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合に、節電モードへの移行の要求があった場合にも、外部装置に異常を通知した上でＭＦＰ８を節電モードへ移行させてもよい。
【００６８】
本実施形態と、第１〜第４の実施形態の少なくとも何れか１つとを組み合わせてもよい。本実施形態と、第１の実施形態とを組み合わせる場合、例えば、図７において、Ｓ２０１とＳ７０１との間でＳ２０２の処理を行う。そして、Ｓ２０２において、シャットダウン要求が発生したと判定された場合には、Ｓ２０３〜Ｓ２０４の処理を行い、シャットダウン要求が発生していないと判定された場合には、Ｓ７０２〜Ｓ７０７の処理を行う。本実施形態と、第２の実施形態とを組み合わせる場合、例えば、図７において、Ｓ２０１とＳ７０１との間でＳ３０１の処理を行う。そして、Ｓ３０１において、ＭＦＰ８に対する操作があったと判定された場合には、Ｓ３０１〜Ｓ３０３、Ｓ２０３、Ｓ２０４の処理を行い、ＭＦＰ８に対する操作がないと判定された場合には、Ｓ７０２〜Ｓ７０７の処理を行う。本実施形態と、第３の実施形態とを組み合わせる場合、例えば、図７において、Ｓ２０１とＳ７０１との間でＳ５００の処理を行う。そして、Ｓ５００において、設定登録画面４００に対する操作があったと判定された場合には、Ｓ５０１〜Ｓ５０６の処理を行い、設定登録画面４００に対する操作がないと判定された場合には、Ｓ７０２〜Ｓ７０７の処理を行う。本実施形態と、第４の実施形態とを組み合わせる場合、例えば、図７において、Ｓ２０１とＳ７０１との間でＳ６００の処理を行う。そして、Ｓ６００において、節電移行トリガーが発生したと判定された場合には、Ｓ６０１〜Ｓ６０２の処理を行い、節電移行トリガーが発生していないと判定された場合には、Ｓ７０２〜Ｓ７０７の処理を行う。その他の組み合わせについても、各フローチャートを組み合わせることにより実現することができるので、それらの詳細な説明を省略する。
【００６９】
（第６の実施形態）
次に、第６の実施形態について説明する。第５の実施形態では、リモートからのシャットダウン要求があった場合に、外部装置（ＰＣ３９）に異常を通知した上でＭＦＰ８をシャットダウンする場合を例に挙げて説明した。これに対し、本実施形態では、ＭＦＰ８に設けられている電力切替スイッチ１７の操作によってシャットダウン要求がある場合について説明する。このように本実施形態と第６の実施形態とは、シャットダウン要求の要求元が異なることによる処理と、ＭＦＰ８の再起動要求がなされないこととが主として異なる。従って、本実施形態の説明において、第１〜第５の実施形態と同一の部分については、図１〜図７に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００７０】
ＭＦＰ８は、電力切替スイッチ１７のユーザによる操作に基づいて、起動したり、シャットダウンしたりすることが可能である。一般的に、ユーザは、ＭＦＰ８の使用後は省電力を目的とし、電力切替スイッチ１７を用いて電源を切ることが想定される。
図８は、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンに係るＭＦＰ８の処理の一例を説明するフローチャートである。図８では、制御用ファームウェアのアップデートおよびＭＦＰ８のシャットダウンに係る処理以外の処理についての説明を省略する。
ＭＦＰ８の動作が開始すると、まず、Ｓ２００にて、ＣＰＵ１６は、起動時に、判定フラグをＴＲＵＥとする。
【００７１】
次に、Ｓ２０１にて、ＣＰＵ１６は、制御用ファームウェアのアップデートの開始が指示されたか否かを判定する。この判定の結果、制御用ファームウェアのアップデートの開始が指示された場合、処理は、Ｓ２０５に進む。Ｓ２０５〜Ｓ２０８、Ｓ７００の処理は、第５の実施形態と同様であるため、これらの処理の詳細な説明を省略する。一方、制御用ファームウェアのアップデートの開始が指示されていない場合、処理は、Ｓ８００に進む。
【００７２】
そして、Ｓ８００にて、ＣＰＵ１６は、電力切替スイッチ１７の操作によるシャットダウン要求があったか否かを判定する。この判定の結果、シャットダウン要求がない場合、処理は、Ｓ２０１に戻る。一方、シャットダウン要求があった場合、処理は、Ｓ８０１に進む。そして、Ｓ８０１にて、ＣＰＵ１６は、判定フラグがＴＲＵＥであるか否かを判定する。この判定の結果、判定フラグがＴＲＵＥではなく（即ちＦＡＬＳＥであり）、制御用ファームウェアが正常に格納されていない場合、処理は、Ｓ８０２に進む。
【００７３】
そして、Ｓ８０２にて、ＣＰＵ１６は、異常（制御用ファームウェアのアップデートに失敗したこと）を外部装置（ＰＣ３９）に通知する。本実施形態では、例えば、このようにして出力される異常（制御用ファームウェアのアップデートに失敗したこと）を示す情報を用いることにより、第２情報の一例の一例が実現される。そして、Ｓ８０３にて、ＣＰＵ１６は、ＭＦＰ８のシャットダウンを行い、図８のフローチャートによる処理を終了する。一方、Ｓ８０１にて、判定フラグがＴＲＵＥであると判定された場合、制御用ファームウェアは正常に格納されているので、処理は、Ｓ８０２を省略してＳ８０３に進む。即ち、ＣＰＵ１６は、異常（制御用ファームウェアのアップデートに失敗したこと）を外部装置（ＰＣ３９）に通知することなく、ＭＦＰ８のシャットダウンを行って、図８のフローチャートによる処理を終了する。
【００７４】
以上のように本実施形態では、ＣＰＵ１６は、判定フラグがＴＲＵＥでない場合に、電力切替スイッチ１７によるシャットダウン要求があった場合、外部装置（ＰＣ３９）に異常を通知した上でＭＦＰ８をシャットダウンする。このように、ＣＰＵ１６は、制御用ファームウェアが破壊されている場合であっても、電力切替スイッチ１７によるシャットダウン要求によって電力停止処理を受け付ける。そのため、次回の正常な起動に失敗することと、特別な冶具を用いた制御用ファームウェアのアップデートを行うこととを回避することは不可能となる。しかしながら、ネットワーク４０を介して外部装置（ＰＣ３９）に異常を通知して外部装置にその記録を残すため、電力切替スイッチ１７によるシャットダウン要求を受け付けることでＭＦＰ８が正常に起動不能になった際の迅速な原因究明が可能となる。
【００７５】
本実施形態と、第１〜第５の実施形態の少なくとも何れか１つとを組み合わせてもよい。本実施形態と、第１の実施形態とを組み合わせる場合、例えば、図８において、Ｓ２０１とＳ８００との間でＳ２０２の処理を行う。そして、Ｓ２０２において、シャットダウン要求が発生したと判定された場合には、Ｓ２０３〜Ｓ２０４の処理を行い、シャットダウン要求が発生していないと判定された場合には、Ｓ８０１〜Ｓ８０３の処理を行う。本実施形態と、第２の実施形態とを組み合わせる場合、例えば、図８において、Ｓ２０１とＳ８００との間でＳ３０１の処理を行う。そして、Ｓ３０１において、ＭＦＰ８に対する操作があったと判定された場合には、Ｓ３０１〜Ｓ３０３、Ｓ２０３、Ｓ２０４の処理を行い、ＭＦＰ８に対する操作がないと判定された場合には、Ｓ８０１〜Ｓ８０３の処理を行う。本実施形態と、第３の実施形態とを組み合わせる場合、例えば、図８において、Ｓ２０１とＳ８００との間でＳ５００の処理を行う。そして、Ｓ５００において、設定登録画面４００に対する操作があったと判定された場合には、Ｓ５０１〜Ｓ５０６の処理を行い、設定登録画面４００に対する操作がないと判定された場合には、Ｓ８０１〜Ｓ８０３の処理を行う。本実施形態と、第４の実施形態とを組み合わせる場合、例えば、図８において、Ｓ２０１とＳ８００との間でＳ６００の処理を行う。そして、Ｓ６００において、節電移行トリガーが発生したと判定された場合には、Ｓ６０１〜Ｓ６０２の処理を行い、節電移行トリガーが発生していないと判定された場合には、Ｓ８０１〜Ｓ８０３の処理を行う。本実施形態と、第５の実施形態とを組み合わせる場合、例えば、図８において、Ｓ２０１とＳ８００との間でＳ７０１の処理を行う。そして、Ｓ７０１において、リモートからの電力停止要求があったと判定された場合には、Ｓ７０２〜Ｓ７０７の処理を行い、リモートからの電力停止要求がないと判定された場合には、Ｓ８０１〜Ｓ８０３の処理を行う。その他の組み合わせについても、各フローチャートを組み合わせることにより実現することができるので、それらの詳細な説明を省略する。
【００７６】
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【００７７】
（その他の実施例）
本発明は、前述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７８】
４：操作部、８：ＭＦＰ、１６：ＣＰＵ、２３：ＳＰＩ  Ｆｌａｓｈ（不揮発性記憶装置）
【図１】
2018128778.tif 000003
【図２】
2018128778.tif 000004
【図３】
2018128778.tif 000005
【図４】
2018128778.tif 000006
【図５】
2018128778.tif 000007
【図６】
2018128778.tif 000008
【図７】
2018128778.tif 000009
【図８】
2018128778.tif 000010