(57)【特許請求の範囲】
【請求項１】
機器における操作部と、前記操作部との通信に基づき前記機器の制御を行う主制御手段と、前記機器の電源部を制御する副制御手段とを有し、前記操作部と前記主制御手段との間で通信不良が発生したときリブートを行うリブートシステムであって、
前記操作部は操作部制御手段を有し、前記操作部制御手段は前記主制御手段と通信を行うと共に、前記主制御手段と前記操作部制御手段との間の通信不良を監視する第１の通信監視手段と、前記第１の通信監視手段が通信不良と判断したとき、その旨を前記副制御手段に通知する通知手段とを有し、
前記副制御手段は、前記操作部から通信不良が通知されたとき、前記電源部にリブート要求を行うリブート制御手段と、前記主制御手段と当該主制御手段に接続された記憶手段との通信の有無を監視する第２の通信監視手段とを有し、
前記副制御手段は、前記第１の通信監視手段が前記通信不良と判断し、かつ第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信無しと判断したことを条件に、前記リブート要求を行い、
前記副制御手段は、前記第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信有りと判断したとき、前記主制御手段と前記記憶手段との間の通信を停止制御する通信停止制御手段と、前記第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信が所定時間停止していないと判断したとき、前記主制御手段が前記記憶手段に加える制御信号がアサートされていることを条件に、前記主制御手段に前記記憶手段との間の通信を停止制御する通信停止制御手段とを有することを特徴とするリブートシステム。
【請求項２】
機器における操作部と、前記操作部との通信に基づき前記機器の制御を行う主制御手段と、前記機器の電源部を制御する副制御手段とを有し、前記操作部と前記主制御手段との間で通信不良が発生したときリブートを行うリブートシステムであって、
前記操作部は操作部制御手段を有し、前記操作部制御手段は前記主制御手段と通信を行うと共に、前記主制御手段と前記操作部制御手段との間の通信不良を監視する第１の通信監視手段と、前記第１の通信監視手段が通信不良と判断したとき、その旨を前記副制御手段に通知する通知手段とを有し、
前記副制御手段は、前記操作部から通信不良が通知されたとき、前記電源部にリブート要求を行うリブート制御手段と、前記主制御手段と当該主制御手段に接続された記憶手段との通信の有無を監視する第２の通信監視手段とを有し、
前記副制御手段は、前記第１の通信監視手段が前記通信不良と判断し、かつ第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信無しと判断したことを条件に、前記リブート要求を行い、
前記副制御手段は、前記第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信有りと判断したとき、前記主制御手段と前記記憶手段との間の通信を停止制御する通信停止制御手段を有し、
前記副制御手段は、前記第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信が所定時間停止していないと判断したとき、前記主制御手段の前記記憶手段に加える制御信号をマスクして通信を停止させることを特徴とするリブートシステム。
【請求項３】
機器における操作部と、前記操作部との通信に基づき前記機器の制御を行う主制御手段と、前記機器の電源部を制御する副制御手段とを有し、前記操作部と前記主制御手段との間で通信不良が発生したときリブートを行うリブートシステムであって、
前記操作部は操作部制御手段を有し、前記操作部制御手段は前記主制御手段と通信を行うと共に、前記主制御手段と前記操作部制御手段との間の通信不良を監視する第１の通信監視手段と、前記第１の通信監視手段が通信不良と判断したとき、その旨を前記副制御手段に通知する通知手段とを有し、
前記副制御手段は、前記操作部から通信不良が通知されたとき、前記電源部にリブート要求を行うリブート制御手段を有し、
前記副制御手段は、前記リブート要求に応じてリブートが実施されてから所定の期間は、前記操作部から通信不良が通知されてもリブート要求を行わないことを特徴とするリブートシステム。
【請求項４】
請求項１乃至３のいずれかに記載されたリブートシステムにおいて、
前記副制御手段は、前記リブート要求に応じて実施されたリブートの回数をカウントし、カウントしたリブートの回数が一定回数以上になったとき、前記操作部にエラーメッセージを通知することを特徴とするリブートシステム。
【請求項５】
請求項３に記載されたリブートシステムにおいて、
前記所定の期間は、前記電源部の起動回数が所定値になるまでの期間であることを特徴とするリブートシステム。
【請求項６】
請求項３に記載されたリブートシステムにおいて、
前記所定の期間は、前記電源部が省エネモードからの復帰によりオンした回数が所定値になるまでの期間であることを特徴とするリブートシステム。
【請求項７】
機器における操作部と、前記操作部との通信に基づき前記機器の制御を行う主制御手段と、前記機器の電源部を制御する副制御手段とを有し、前記操作部と前記主制御手段との間で通信不良が発生したときリブートを行うリブートシステムにおけるリブート方法であって、
前記操作部の操作部制御手段で行う、前記主制御手段と前記操作部制御手段との間の通信不良を監視する第１の通信監視工程と、前記第１の通信監視工程における通信不良の判断工程と、前記判断工程で通信不良と判断したとき、その旨を前記副制御手段に通知する通知工程と、
前記副制御手段で行う、前記操作部から通信不良が通知されたとき、前記電源部にリブート要求を行うリブート制御工程と、前記主制御手段と当該主制御手段に接続された記憶手段との通信の有無を監視する第２の通信監視工程を有し、
前記リブート制御工程では、前記第１の通信監視工程で前記通信不良と判断し、かつ第２の通信監視工程で前記主制御手段と前記記憶手段との間の通信無しと判断したことを条件に、前記リブート要求を行い、
前記副制御手段で行う、前記第２の通信監視工程で前記主制御手段と前記記憶手段との間の通信有りと判断したとき、前記主制御手段と前記記憶手段との間の通信を停止制御する通信停止制御工程と、前記第２の通信監視工程で前記主制御手段と前記記憶手段との間の通信が所定時間停止していないと判断したとき、前記主制御手段が前記記憶手段に加える制御信号がアサートされていることを条件に、前記主制御手段に前記記憶手段との間の通信を停止制御する通信停止制御工程とを有することを特徴とするリブート方法。
【請求項８】
機器における操作部と、前記操作部との通信に基づき前記機器の制御を行う主制御手段と、前記機器の電源部を制御する副制御手段とを有し、前記操作部と前記主制御手段との間で通信不良が発生したときリブートを行うリブートシステムにおけるリブート方法であって、
前記操作部の操作部制御手段で行う、前記主制御手段と前記操作部制御手段との間の通信不良を監視する第１の通信監視工程と、前記第１の通信監視工程における通信不良の判断工程と、前記判断工程で通信不良と判断したとき、その旨を前記副制御手段に通知する通知工程と、
前記副制御手段で行う、前記操作部から通信不良が通知されたとき、前記電源部にリブート要求を行うリブート制御工程と、前記主制御手段と当該主制御手段に接続された記憶手段との通信の有無を監視する第２の通信監視工程とを有し、
前記リブート制御工程では、前記第１の通信監視工程で前記通信不良と判断し、かつ第２の通信監視工程で前記主制御手段と前記記憶手段との間の通信無しと判断したことを条件に、前記リブート要求を行い、
前記副制御手段で行う、前記第２の通信監視工程が前記主制御手段と前記記憶手段との間の通信有りと判断したとき、前記主制御手段と前記記憶手段との間の通信を停止制御する通信停止制御工程を有し、
前記通信停止制御工程では、前記第２の通信監視工程で前記主制御手段と前記記憶手段との間の通信が所定時間停止していないと判断したとき、前記主制御手段の前記記憶手段に加える制御信号をマスクして通信を停止させることを特徴とするリブートシステム。
【請求項９】
機器における操作部と、前記操作部との通信に基づき前記機器の制御を行う主制御手段と、前記機器の電源部を制御する副制御手段とを有し、前記操作部と前記主制御手段との間で通信不良が発生したときリブートを行うリブートシステムにおけるリブート方法であって、
前記操作部の操作部制御手段で行う、前記主制御手段と前記操作部制御手段との間の通信不良を監視する第１の通信監視工程と、前記第１の通信監視工程における通信不良の判断工程と、前記判断工程で通信不良と判断したとき、その旨を前記副制御手段に通知する通知工程と、
前記副制御手段で行う、前記操作部から通信不良が通知されたとき、前記電源部にリブート要求を行うリブート制御工程と、
を有し、
前記リブート制御工程では、前記リブート要求に応じてリブートが実施されてから所定の期間は、前記操作部から通信不良が通知されてもリブート要求を行わないことを特徴とするリブート方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リブートシステム、詳しくは機器における操作部と制御部間の通信不良発生時の電源リブートを行うリブートシステムおよびリブート方法に関する。
【背景技術】
【０００２】
画像形成装置などの機器において、その制御部であるコントローラボードとコントローラボードの操作部間の接続の有無を判断するために接続確認を行うことが知られている。この接続確認は、定期的に通信をしている操作部とコントローラボード内のＣＰＵ（Central Processing Unit）との通信が一時的にでも遮断した際に、操作部にエラーメッセージを表示させる。
その場合は、通信の接続のための復旧作業を行うことになるが、従来は、ユーザが電源のオフ／オン操作を行い、或いはサービスマンによるコントローラボード、周辺部品の交換等を行っている。そのため、その復旧時にユーザの手間やサービスコストが掛かるという問題がある。
【０００３】
この問題に対して、例えば、特許文献１（特開２００５−２１９２４７公報）には、ユーザの手間を減らす目的で、電源のオフ／オンによって復旧する可能性の高い故障のうち、リブート対象となる故障を検出する手段と、ハードウェア資源およびプログラムをリブートするシステムが開示されている。このシステムでは、復旧時に自動でリブートを行う。しかし、操作部とコントローラ間の通信不良の際には、必ずサービスマンコール（ＳＣ）になるという問題がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、上記従来の問題に鑑みてなされたものであって、その目的は、機器の操作部と制御部間の通信不良発生時にリブートを行うリブートシステムにおいて、そのリブートを自動でできるようにし、ユーザの手間及びサービスコストを低下させることである。
【課題を解決するための手段】
【０００５】
本発明は、機器における操作部と、前記操作部との通信に基づき前記機器の制御を行う主制御手段と、前記機器の電源部を制御する副制御手段とを有し、前記操作部と前記主制御手段との間で通信不良が発生したときリブートを行うリブートシステムであって、前記操作部は操作部制御手段を有し、前記操作部制御手段は前記主制御手段と通信を行うと共に、前記主制御手段と前記操作部制御手段との間の通信不良を監視する第１の通信監視手段と、前記第１の通信監視手段が通信不良と判断したとき、その旨を前記副制御手段に通知する通知手段とを有し、前記副制御手段は、前記操作部から通信不良が通知されたとき、前記電源部にリブート要求を行うリブート制御手段と、前記主制御手段と当該主制御手段に接続された記憶手段との通信の有無を監視する第２の通信監視手段とを有し、前記副制御手段は、前記第１の通信監視手段が前記通信不良と判断し、かつ第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信無しと判断したことを条件に、前記リブート要求を行い、前記副制御手段は、前記第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信有りと判断したとき、前記主制御手段と前記記憶手段との間の通信を停止制御する通信停止制御手段と、前記第２の通信監視手段が前記主制御手段と前記記憶手段との間の通信が所定時間停止していないと判断したとき、前記主制御手段が前記記憶手段に加える制御信号がアサートされていることを条件に、前記主制御手段に前記記憶手段との間の通信を停止制御する通信停止制御手段とを有することを特徴とするリブートシステムである。
【発明の効果】
【０００６】
本発明によれば、機器の操作部と制御部間の通信不良発生時にリブートを行うリブートシステムにおいて、そのリブートを自動でできるようにし、従来よりもユーザの手間及びサービスコストを低下させることができる。
【図面の簡単な説明】
【０００７】
【図１】本発明の第１の実施形態に係るリブートシステムの全体構成を示すブロック図である。
【図２】本発明の第１の実施形態に係るリブートシステムにおける自動リブート処理手順を示すフロー図である。
【図３】本発明の第２の実施形態に係るリブートシステムにおける自動リブート処理手順を示すフロー図である。
【図４】ＣＳ信号のＨＩＧＨ、ＬＯＷを示す波形図である。
【図５】本発明の第３の実施形態に係るリブートシステムにおける自動リブート処理手順を示すフロー図である。
【図６】サブＣＰＵがメインＣＰＵのＣＳ信号をマスクするための回路構成を示すブロック図である。
【図７】本発明の第４の実施形態に係るリブートシステムの全体構成を示すブロック図である。
【図８】本発明の第４の実施形態に係るリブートシステムにおける基本的な自動リブート処理手順を示すフロー図である。
【図９】本発明の第４の実施形態に係るリブートシステムにおける第１の自動リブート処理手順を示すフロー図である。
【図１０】本発明の第４の実施形態に係るリブートシステムにおける第２の自動リブート処理手順を示すフロー図である。
【図１１】本発明の第４の実施形態に係るリブートシステムにおける第３の自動リブート処理手順を示すフロー図である。
【図１２】本発明の第４の実施形態に係るリブートシステムにおける第４の自動リブート処理手順を示すフロー図である。
【図１３】本発明の第４の実施形態に係るリブートシステムにおける第１の自動リブート処理手順及び第２の自動リブート処理手順を実行するか否かを設定する手順の第１の例を示すフロー図である。
【図１４】本発明の第４の実施形態に係るリブートシステムにおける第１の自動リブート処理手順及び第２の自動リブート処理手順を実行するか否かを設定する手順の第２の例を示すフロー図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態の説明を行うが、その前に、本発明の実施形態を概略的に説明する。即ち、本発明の実施形態は、機器における操作部と制御部間の通信不良発生時のリブートを行うに際して、以下の特徴を有する。
要するに、本発明の実施形態は、制御部内にメインＣＰＵとは別のサブＣＰＵを設け、操作部とサブＣＰＵに通信手段を設ける。ここで、メインＣＰＵと操作部は定期的に通信するが、何らかの原因でメインＣＰＵが動作を停止した場合は、メインＣＰＵは定期的な通信に応答しなくなる。その場合、操作部はメインＣＰＵからの応答がないことを検知すると、サブＣＰＵに通知を行う。操作部からの通知を受けたサブＣＰＵは自動で電源装置にリブート要求を行う。このリブート要求により、電源装置がオフ／オンされ（オン状態→オフ状態→オン状態となり）、システムのリブートが行われる。
【０００９】
以下、本発明のリブートシステムの実施形態について添付図面を用いて説明する。
［第１の実施形態］
図１は、本発明の第１の実施形態に係るリブートシステムの全体構成を示すブロック図である。
本実施形態では、リブートシステム１は、図示のように、コントローラボード１０、操作部１２、電源部である電源装置１４で構成されている。
コントローラボード１０は、主制御手段であるメインＣＰＵ１００、副制御手段であるサブＣＰＵ１０２、不揮発性メモリ１０４を有し、操作部１２は操作部制御手段である操作部ＣＰＵ１２０を有する。
電源装置１４は、コントローラボード１０のメインＣＰＵ１００、サブＣＰＵ１０２、操作部ＣＰＵ１２０とそれぞれ接続されており、コントローラボード１０、操作部１２のそれぞれに対して電力を供給する電力供給線が設けられている。このため、コントローラボード１０（メインＣＰＵ１００、サブＣＰＵ１０２）の指示により画像形成装置の各デバイスへ電力を供給する電源装置１４の電力制御を可能にしている。また、メインＣＰＵ１００は、操作部ＣＰＵ１２０との通信に基づき装置全体の制御を行う。
【００１０】
コントローラボード１０と操作部１２は、それぞれのメインＣＰＵ１００、操作部ＣＰＵ１２０によって接続されており、一定時間おきに通信を行い、お互いの接続を常に確認しながら通信を行っている。また、操作部１２とコントローラボード１０の通信不良を通知するために操作部ＣＰＵ１２０とサブＣＰＵ１０２が接続されている。
ここで、操作部１２の操作部ＣＰＵ１２０は、操作部ＣＰＵ１２０とメインＣＰＵ１００間の通信を監視し、通信不良を検知すると、サブＣＰＵ１０２に通知するための手段（第１の通信監視手段１２０ａおよび通知手段１２０ｂ）として機能する。
【００１１】
また、コントローラボード１０内のメインＣＰＵ１００は不揮発性メモリ１０４と接続されており、サブＣＰＵ１０２はメインＣＰＵ１００と不揮発性メモリ１０４の通信（接続）を監視するための手段（第２の通信監視手段１０２ａ）として機能する。
サブＣＰＵ１０２は、さらに、メインＣＰＵ１００に対して不揮発性メモリ１０４の通信（接続）の停止を要求して停止させる通信停止制御手段１０２ｂ及び、電源装置１４にリブート要求を行い、電源装置１４をオフ／オン制御するリブート制御手段１０２ｃとしても機能する。
即ち、操作部ＣＰＵ１２０、サブＣＰＵ１０２のこれらの手段は、操作部ＣＰＵ１２０、サブＣＰＵ１０２で構成する各コンピュータにプログラムを読み取らせることにより実現する機能実現手段である。
【００１２】
不揮発性メモリ１０４には、例えば、図示のようにＮＶＲＡＭ（Non-Volatile Random Access Memory）１０４ａ、ＨＤＤ（ハードディスク）１０４ｂ、ＮＯＲ型フラッシュメモリ１０４ｃ、ＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）１０４ｄなどがある。
【００１３】
図２は、本発明の第１の実施形態に係るリブートシステムにおける自動リブート処理手順を示すフロー図である。このフロー図に従い、本実施形態に係るリブートシステムによる自動リブート処理手順を説明する。
図１に示すリブートシステム１において、電源装置１４をオンすると、コントローラボード１０内のメインＣＰＵ１００と操作部ＣＰＵ１２０は一定時間おきに通信を行う（ステップＳ１０１）。
ここで、操作部１２からの通信（アクセス）に対し、メインＣＰＵ１００からの応答がなかった場合は、操作部ＣＰＵ１２０（の第１の通信監視手段１２０ａ）は通信不良と判断する（ステップＳ１０１：No）。通信不良と判断した操作部ＣＰＵ１２０（の通知手段１２０ｂ）は、コントローラボード１０内のサブＣＰＵ１０２に対して通信不良を通知する（ステップＳ１０２）。
【００１４】
以後の処理は実施されたリブート回数により異なる。
即ち、サブＣＰＵ１０２は実施されたリブート回数をカウントとして記録しており、リブート回数が一定回数（Ｎ回）以上の場合は（ステップＳ１０３：Yes）、リブートによるエラー回避ができない場合にリブートを繰り返してしまうことを防止するため、リブート要求を行わず、操作部１２にエラーメッセージを通知、具体的には、例えばサービスマンコールを表示し（ステップＳ１０４）、この処理を終了する。
一方、実施したリブート回数が一定回数未満の場合は（ステップＳ１０３：No）、サブＣＰＵ１０２（の第２の通信監視手段１０２ａ）は、メインＣＰＵ１００と不揮発性メモリ１０４との通信の有・無（有り・無し）を確認する（ステップＳ１０５）。
ステップＳ１０５では、サブＣＰＵ１０２が一定時間おきに通信の確認を行い、メインＣＰＵ１００と不揮発性メモリ１０４との通信の停止（無し）を確認できたときにリブートを行いスタートへ移行する。
【００１５】
具体的には、例えばサブＣＰＵ１０２がメインＣＰＵ１００と不揮発性メモリ１０４との間の通信を確認する際に時間制限（一定時間）を設け（ステップＳ１０６）、制限時間内において（ステップＳ１０６：No）、通信無しが確認されれば（ステップＳ１０９：No）、サブＣＰＵ１０２（のリブート制御手段１０２ｃ）は電源装置１４にリブート要求を行い、電源装置１４のオフ／オン制御を実施して（ステップＳ１１０）、システム全体のリブートを行い、スタートへ移行する。
ステップＳ１０６で、制限時間内において（ステップＳ１０６：No）、通信が確認されれば（通信有り）（ステップＳ１０９：Yes）、ステップＳ１０５に戻り、制限時間の経過を待ち、その制限時間の経過まで通信が継続した場合は（ステップＳ１０６：Yes）、サブＣＰＵ１０２（の通信停止制御手段１０２ｂ）からメインＣＰＵ１００に通信停止の要求を行う（ステップＳ１０７）。ここで、通信停止要求は、例えばメインＣＰＵ１００へのリセット信号をアサートすることであり、これによりメインＣＰＵ１００の不揮発性メモリ１０４との通信を停止させる（ステップＳ１０８）。通信の停止後に、サブＣＰＵ１０２が電源装置１４のオフ／オン制御を実施して（ステップＳ１１０）、システム全体のリブートを行い、スタートへ移行する。
【００１６】
［第２の実施形態］
第１の実施形態では、メインＣＰＵ１００と不揮発性メモリ１０４との間の通信が一定時間継続したときは、サブＣＰＵ１０２からメインＣＰＵ１００に通信停止要求を実施して通信を停止させる。
ただ、これだと、不揮発性メモリ１０４にアクセス（通信）中に電源装置１４の電源オフが実行されると、不揮発性メモリ１０４のデータが壊れる恐れがある。そのため、第２の実施形態では、メインＣＰＵ１００と不揮発性メモリ１０４との間で通信が継続しているとき（通信有りのとき）は、不揮発性メモリ１０４に加える制御信号（ここではＣＳ信号）がアサートされているとき、つまりそのことを条件に、サブＣＰＵ１０２からメインＣＰＵ１００へ通信停止を要求するようにしている。第２の実施形態の説明は、多少簡略化するが他の点では第１の実施形態と同じである。
【００１７】
図３は、本発明の第２の実施形態に係るリブートシステムにおける自動リブート処理手順を示すフロー図である。
電源装置１４をオンすると、コントローラボード１０内のメインＣＰＵ１００と操作部ＣＰＵ１２０は一定時間おきに通信を行う。ここで、操作部ＣＰＵ１２０は、操作部１２からの通信（アクセス）に対しメインＣＰＵ１００からの応答がないときは、通信不良と判断する（ステップＳ２０１：No）。次に、操作部ＣＰＵ１２０は、通信不良と判断したコントローラボード１０内のサブＣＰＵ１０２に対して通信不良を通知する（ステップＳ２０２）。
【００１８】
以後の処理は実施されたリブート回数により異なる。
即ち、サブＣＰＵ１０２は実施されたリブート回数をカウントとして記録しており、リブート回数が一定回数（Ｎ回）以上の場合は（ステップＳ２０３：Yes）、リブート要求を行わず、操作部１２にサービスマンコールを表示し（ステップＳ２０４）、この処理を終了する。
一方、リブート回数が一定未満の場合は（ステップＳ２０３：No）、サブＣＰＵ１０２がメインＣＰＵ１００と不揮発性メモリ１０４との通信の有無を確認する（ステップＳ２０５）。ステップＳ２０５では、一定時間おきに通信の確認を行い、通信の停止（無）を確認できた場合は、同様にシステム全体のリブートを行う（スタートへ）。
【００１９】
具体的には、例えば、サブＣＰＵ１０２がメインＣＰＵ１００と不揮発性メモリ１０４の通信を確認する際に、時間制限（一定時間）を設け（ステップＳ２０６）、制限時間内において（ステップＳ２０６：No）、通信無しが確認されれば（ステップＳ２１０：No）、サブＣＰＵ１０２が電源装置１４にリブート要求を行い、電源装置１４のオフ／オン制御を実施して（ステップＳ２１１）、システム全体のリブートを行い、スタートへ移行する。
【００２０】
ステップＳ２０６で、制限時間内において（ステップＳ２０６：No）、通信有りが確認されれば（ステップＳ２１０：Yes）、ステップＳ２０５に戻り、一定時間経過を待ち（ステップＳ２０６：Yes）、その制限時間の経過まで通信が継続していた場合は、メインＣＰＵ１００のＣＳ（Chip Select）信号がＬＯＷでなくなるのを待つ（ステップＳ２０７）。そして、ＬＯＷでなくなった（つまりＨＩＧＨになった；図４参照）とき（ステップＳ２０７：No）、サブＣＰＵ１０２からメインＣＰＵ１００に通信停止の要求を行う（ステップＳ２０８）。
ここで、通信停止要求は、第１の実施形態と同様に、例えば、メインＣＰＵ１００にリセット信号をアサートすることであり、それによってメインＣＰＵ１００の動作を停止させる（ステップＳ２０９）。通信の停止後に、サブＣＰＵ１０２が電源装置１４にリブート要求を行い、電源装置１４のオフ／オン制御を実施して（ステップＳ２１１）、システム全体のリブートを行い、スタートへ移行する。
【００２１】
図４は、ＣＳ信号のＨＩＧＨ，ＬＯＷを示す波形図である。
第２の実施形態では、サブＣＰＵ１０２は、メインＣＰＵ１００に通信の停止要求をする前に、ＣＳ信号の確認を行うが、その場合、メインＣＰＵ１００のＣＳ信号が図４においてＬＯＷを示している間は不揮発性メモリ１０４とアクセスしていると判断する。そのため、ＣＳ信号（ＣＳ_Ｎ）がＨＩＧＨであることを確認し、つまりそのことを条件に通信停止要求を行う。
図中×は、通信停止の要求不可を、また○は通信停止の要求可を表す。
第２の実施形態により、不揮発性メモリ１０４にアクセス中に電源装置１４の電源オフが実行されてそのデータが壊れる恐れを解消することができる。
【００２２】
［第３の実施形態］
次に本発明の第３の実施形態について説明する。
第１及び第２の実施形態では、サブＣＰＵ１０２からメインＣＰＵ１００に通信停止要求を行って、メインＣＰＵ１００と不揮発性メモリ１０４との間の通信を停止させている。これに対し、第３の実施形態では、メインＣＰＵ１００から不揮発性メモリ１０４に発信されるＣＳ信号をマスクしてメインＣＰＵ１００と不揮発性メモリ１０４のアクセスを停止させる。即ち、メインＣＰＵ１００と不揮発性メモリ１０４との通信が一定時間停止していないときは、サブＣＰＵ１０２（のＣＳ信号マスク手段）がＣＳ信号をマスクすることで通信停止要求を行い、通信を停止させる。第３の実施形態は、この点で第１、第２の実施形態と相異し、他の点では同様である。
【００２３】
図５は、本発明の第３の実施形態に係るリブートシステムにおける自動リブート処理手順を示すフロー図である。このフロー図に従い、リブートシステムによる自動リブートの処理手順を説明する。
操作部１２からの通信に対し、メインＣＰＵ１００からの応答がなかった場合は（ステップＳ３０１：No）、操作部ＣＰＵ１２０は通信不良と判断し、通信不良と判断した操作部ＣＰＵ１２０は、コントローラボード１０内のサブＣＰＵ１０２に対して通信不良を通知する（ステップＳ３０２）。
【００２４】
以後の処理は実施されたリブート回数により異なる。
即ち、サブＣＰＵ１０２は実施されたリブート回数をカウントとして記録しており、リブート回数が一定回数（Ｎ回）以上の場合は（ステップＳ３０３：Yes）、リブート要求を行わず、操作部１２にサービスマンコールを表示し（ステップＳ３０４）、この処理を終了する。
この場合、サブＣＰＵ１０２はリブートを行うことになるが、サブＣＰＵ１０２は通信不良による電源装置１４のリブート回数を記録しており、リブート回数が一定回数以上の場合は（ステップＳ３０３：Yes）リブートは行わず、操作部１２にサービスマンコールの表示を行い（ステップＳ３０４）、この処理を終了する。
ステップＳ３０３でリブート回数が一定回数未満の場合は（ステップＳ３０３：No）、サブＣＰＵ１０２がメインＣＰＵ１００の不揮発性メモリ１０４との通信の有無を確認するステップ（ステップＳ３０５）に進む。
ステップＳ３０５では、一定時間おきに通信の確認を行い、通信の停止（無）を確認できた場合は、同様にシステム全体のリブートを行う（スタートへ）。
【００２５】
具体的には、例えばサブＣＰＵ１０２がメインＣＰＵ１００と不揮発性メモリ１０４の通信を確認する際に、時間制限を設け（ステップＳ３０６）、制限時間（一定時間）内において（ステップＳ３０６：No）、通信無しが確認されれば（ステップＳ３０９：No）、サブＣＰＵ１０２が電源装置１４にリブート要求を行い、電源装置１４のオフ／オン制御を実施して（ステップＳ３１０）、システム全体のリブートを行い、スタートへ移行する。
【００２６】
ステップＳ３０６で、制限時間内において（ステップＳ３０６：No）、通信有りが確認されれば（ステップＳ３０９：Yes）、ステップＳ３０５に戻り、一定時間経過を待ち、その制限時間の経過まで通信が継続していたときは（ステップＳ３０６：Yes）、サブＣＰＵ１０２（の制御信号マスク手段）が、制御信号、ここではＣＳ信号をマスクする（ステップＳ３０７）。これにより、メインＣＰＵ１００と不揮発性メモリ１０４との間の通信が停止する（ステップＳ３０８）。通信の停止後にサブＣＰＵ１０２が電源装置１４に対するオフ／オン制御を実施し（ステップＳ３１０）、システム全体のリブートを行い、スタートに移行する。
【００２７】
図６は、サブＣＰＵ１０２がメインＣＰＵ１００のＣＳ信号をマスクするための回路構成を示すブロック図である。
即ち、図１のリブートシステム１において、メインＣＰＵ１００とサブＣＰＵ１０２と、不揮発性メモリ１０４との間にＮＡＮＤ回路１０１が配置されている。
ここで、サブＣＰＵ１０２は、メインＣＰＵ１００のＣＳ信号を受けて、メインＣＰＵ１００と不揮発性メモリ１０４との通信有りを確認すると、ＮＡＮＤ回路１０１にＣＳ信号マスク用信号（ＣＳ_ＭＡＳＫ_Ｎ）を出力する。この場合、不揮発性メモリ１０４側のＣＳ信号（ＣＳ_Ｎ）は、メインＣＰＵ１００の出力がＨＩＧＨ、ＬＯＷのいずれであってもＨＩＧＨとなるようにして、不揮発性メモリ１０４へのアクセスを停止状態にする。
このように第３の実施形態においても、不揮発性メモリ１０４にアクセス中に電源装置１４の電源オフが実行されてそのデータが壊れる恐れを解消することができる。
【００２８】
［第４の実施形態］
まず本発明の第４の実施形態について概略的に説明する。本発明の第４の実施形態では、コントローラボードと操作部との間で通信不良を起こした際に、コントローラボード内のサブＣＰＵによる電源部に対するリブート要求に応じて、システムの自動リブートを行う。自動リブートの際にサブＣＰＵは不揮発領域にリブート履歴を記録する。自動リブート後、システムが確実に正常な状態になるとは限らない。そこで、サブＣＰＵは時間の経過又は電源のオフ／オンの回数を監視することで、連続してリブートすることが出来ない期間を設けている。
【００２９】
〈リブートシステムの全体構成〉
図７は、本発明の第４の実施形態に係るリブートシステムの全体構成を示すブロック図である。
本実施形態では、リブートシステム２は、図示のように、コントローラボード２０、及び操作部２１で構成されている。このリブートシステムも、第１の実施形態（図１）と同様、例えば画像形成装置に適用される。
【００３０】
コントローラボード２０は、主制御手段であるメインＣＰＵ２０１、副制御手段であるサブＣＰＵ２０２、及び電源部である電源回路２０３を有し、操作部２１は、操作表示手段である操作パネル２１１、及び操作部制御手段である操作部ＣＰＵ２１２を有する。
【００３１】
電源回路２０３は、コントローラボード２０のメインＣＰＵ２０１及びサブＣＰＵ２０２、並びに操作部２１の操作部ＣＰＵ２１２とそれぞれ接続されており、コントローラボード２０、操作部２１のそれぞれに対して電力を供給する電力供給線が設けられている。このため、コントローラボード２０（メインＣＰＵ２０１、サブＣＰＵ２０２）の指示により、画像形成装置の各デバイスへ電力を供給する電源回路２０３の電力制御を可能にしている。また、メインＣＰＵ２０１は、操作部ＣＰＵ２１２との通信に基づき装置全体の制御を行う。
【００３２】
コントローラボード２０と操作部２１は、それぞれのメインＣＰＵ２０１、操作部ＣＰＵ２１２によって接続されており、一定時間おきに通信を行い、お互いの接続を常に確認しながら通信を行っている。また、操作部２１とコントローラボード２０の通信不良を通知するために、操作部ＣＰＵ２１２とサブＣＰＵ２０２とが接続されている。
ここで、操作部２１の操作部ＣＰＵ２１２は、第１の通信監視手段２１２ａ、通知手段２１２ｂ、設定情報入力画面生成手段２１２ｃ、及び設定情報取得手段２１２ｄとして機能する。
【００３３】
第１の通信監視手段２１２ａは、第１の実施形態における第１の通信監視手段１２０aと同様に、操作部ＣＰＵ２１２とメインＣＰＵ２０１との間の通信を監視し、通信不良を検知する。通知手段２１２ｂは、第１の通信監視手段２１２ａが通信不良を検知すると、通信不良をサブＣＰＵ２０２に通知する（通信不良通知信号の送信）。また、通知手段２１２ｂは、設定情報取得手段２１２ｄにより取得された設定情報（詳細については後述する）をサブＣＰＵ２０２に通知する（設定情報通知信号の送信）。
設定情報入力画面生成手段２１２ｃは、操作パネル２１１に設定情報入力画面（詳細については後述する）を表示させるための画像を生成する。設定情報取得手段２１２ｄは、設定情報入力画面から入力された設定情報を取得する。
【００３４】
コントローラボード２０のサブＣＰＵ２０２は、電源監視手段２０２ａ、タイマー２０２ｂ、カウンタ２０２ｃ、およびリブート制御手段２０２ｄとして機能する。
電源監視手段２０２ａは、電源回路２０３の状態（オン、オフなど）を監視する。タイマー２０２ｂは様々な時間（具体例については後述する）をカウントする。カウンタ２０２ｃは様々な事象（具体例については後述する）の発生回数をカウントする。リブート制御手段２０２ｄは、電源回路２０３にリブート要求を行う。
【００３５】
操作部ＣＰＵ２１２、及びサブＣＰＵ２０２のこれらの手段は、操作部ＣＰＵ２１２、サブＣＰＵ２０２で構成する各コンピュータにプログラムを読み取らせることにより実現する機能実現手段である。
【００３６】
また、サブＣＰＵ２０２は、ＥＥＰＲＯＭなどで構成された不揮発性領域２０２ｅを備えている。不揮発性領域２０２ｅには、リブートフラグ記憶部２０２ｆ、起動回数記憶部２０２ｇ、省エネ復帰回数記憶部２０２ｈが設けられている。サブＣＰＵ２０２は、リブートフラグ記憶部２０２ｆの制御（フラグのオン、オフなど）、起動回数記憶部２０２ｇの記憶値の制御（インクリメント、クリアなど）、省エネ復帰回数記憶部２０２ｈの記憶値の制御（インクリメント、クリアなど）などを行う。なお、サブＣＰＵ２０２の外部に不揮発性メモリを接続し、その内部にリブートフラグ記憶部２０２ｆ、起動回数記憶部２０２ｇ、省エネ復帰回数記憶部２０２ｈを設けてもよい。
【００３７】
また、サブＣＰＵ２０２は、操作部ＣＰＵ２１２から通信不良を通知されたとき、リブートフラグがオン（以下、「立っている」、「有る」とも言う）場合、操作部ＣＰＵ２１２に対してエラー通知信号を送信する。操作部ＣＰＵ２１２は、エラー通知信号に基づいて、操作パネル２１１にエラー情報（サービスマンコールなど）を表示させる。
【００３８】
〈基本的な自動リブート処理手順〉
図８は、本発明の第４の実施形態に係るリブートシステムにおける基本的な自動リブート処理手順を示すフロー図である。
【００３９】
前述のとおり、コントローラボード２０内のメインＣＰＵ２０１と操作部ＣＰＵ２１２とは一定時間おきに通信を行っている。そして、操作部ＣＰＵ２１２からの通信に対し、メインＣＰＵ２０１からの応答がなかった場合、操作部ＣＰＵ２１２（の第１通信監視手段２１２ａ）は通信不良と判断する（ステップＳ４０１：No）。操作部ＣＰＵ２１２（の通知手段２１２ｂ）は、コントローラボード内のサブＣＰＵ２０２に対して通信不良を通知する（ステップＳ４０２）。
【００４０】
サブＣＰＵ２０２（のリブート制御手段２０２ｄ）は通信不良によるリブートの際にリブートフラグを立てており、リブートフラグが立っている場合は（ステップＳ４０３：Yes）、サブＣＰＵ２０２は操作部ＣＰＵ２１２にエラー通知信号を送信する（ステップＳ４０４）。操作部ＣＰＵ２１２は、エラー通知信号に基づいて、操作パネル２１１によりサービスマンコールの表示を行う。リブートフラグが立っていない場合は（ステップＳ４０３：No）、不揮発性領域２０２ｅ内のリブートフラグ記憶部２０２ｆにリブートフラグを立て（ステップＳ４０５）、電源回路２０３にリブート要求を行う（ステップＳ４０６）。このリブート要求により、電源回路２０３がオフ／オンされ、リブートが実行される。
【００４１】
〈第１の自動リブート処理手順〉
図９は、本発明の第４の実施形態に係るリブートシステムにおける第１の自動リブート処理手順を示すフロー図である。
この手順は、ＡＣプラグの挿入で供給される電源でサブＣＰＵ２０２を駆動することを想定したものである。この場合、ＡＣプラグの挿入中はサブＣＰＵ２０２の電源が切れることがないため、タイマー２０２ｂにより時間をカウントすることができる。
コントローラボード２０と操作部２１との間の通信が途切れた際に、図９に示すフローに従いシステムが１度目のリブートを実施した場合を想定する。例えば、リブートフラグの解除時間を２４時間に設定することで、一度リブートをした後、２４時間の間はリブートが実施されない期間を作り出すことができる。これにより、エラーが頻発し、ユーザの意図しないリブートを抑えることができる。
【００４２】
以下、フローチャートにそって説明する。
サブＣＰＵ２０２はリブートフラグが立っているか否かを判断する（ステップＳ５０１）。
リブートフラグが立っていない場合は（ステップＳ５０１：No）、サブＣＰＵ２０２は操作部ＣＰＵ２１２からの通信不良通知を待っている状態となる（ステップＳ５０６：No→ステップＳ５０１）。
リブートフラグが立っている場合は（ステップＳ５０１：Yes）、サブＣＰＵ２０２はタイマー２０２ｂを開始（スタート）させる（ステップＳ５０２）。ただし、タイマー２０２ｂが既に動いている場合はステップＳ５０２を実施しない。
【００４３】
タイマー開始後、時間を確認し、時間の経過を判断する（ステップＳ５０３）。そして、一定時間経過していれば（ステップＳ５０３：Yes）、タイマー２０２ｂを停止させ（ステップＳ５０４）、リブートフラグを解除する(ステップＳ５０５)。一定時間経過していない場合は（ステップＳ５０３：No）、操作部ＣＰＵ２１２からの通信不良通知を待ちながら、時間経過をカウントする（ステップＳ５０６：No→ステップＳ５０１：Yes→ステップＳ５０３）。
【００４４】
操作部ＣＰＵ２１２からの通信不良通知が来た場合（ステップＳ５０６：Yes）、サブＣＰＵ２０２（のリブート制御手段２０２ｄ）は、リブートフラグの有無で動作を判断する。即ち、リブートフラグ有り（立っている）の場合は（ステップＳ５０７：Yes）、リブート後一定時間が経過していないと判断し、再度リブートせずに、操作部２１へのエラー通知を実施する（ステップＳ５０８）。リブートフラグが無い（立っていない）場合は（ステップＳ５０７：No）、サブＣＰＵ２０２の不揮発性領域２０２ｅにリブートフラグを立て（ステップＳ５０９）、電源回路２０３にリブート要求を行う（ステップＳ５１０）。
【００４５】
〈第２の自動リブート処理手順〉
図１０は、本発明の第４の実施形態に係るリブートシステムにおける第２の自動リブート処理手順を示すフロー図である。
この手順は、サブＣＰＵ２０２をＡＣプラグの挿入で供給される電源又はシャットダウン状態（スイッチオン／オフのオフ）で切れる電源で駆動することを想定した手順である。ＡＣプラグの挿入で供給される電源で駆動する場合は電源回路２０３を監視することで、シャットダウン状態で切れる電源で駆動する場合は自身の起動回数をカウンタ２０２ｃでカウントすることで電源のオン／オフをカウントすることができる。
例えば、シャットダウンで切れる電源で駆動する場合に、サブＣＰＵ２０２の電源がオフ→オンを３回するまでリブートできないようにする場合、リブート時にリブートフラグを立て、カウンタ２０２ｃでカウントした起動回数を不揮発性領域２０２ｅの起動回数記憶部２０２ｇに書き込み、その後３回起動（電源オフ→オン）された場合にリブートフラグを解除することで実現できる。
【００４６】
以下、シャットダウンで切れる電源で駆動する場合についてフローチャートに沿って説明する。
サブＣＰＵ２０２は電源投入（オン）後、まずリブートフラグが立っているか否かを判断する（ステップＳ６０１）。そして、リブートフラグが立っていない場合は（ステップＳ６０１：No）、サブＣＰＵ２０２は操作部ＣＰＵ２１２からの通信不良通知を待っている状態となる（ステップＳ６０６）。リブートフラグが立っている場合は（ステップＳ６０１：Yes）、不揮発性領域２０２ｅ内の起動回数記憶部２０２ｇにより保持されている起動回数を１インクリメントする（ステップＳ６０２）。
【００４７】
その後、起動回数が所定値（ここではＮ）以上か否かを判断する（ステップＳ６０３）。起動回数が所定値未満の場合は（ステップＳ６０３：No）、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となる（ステップＳ６０６）。起動回数が所定値以上の場合は（ステップＳ６０３：Yes）、起動回数記憶部２０２ｇにより保持されている起動回数のクリア（ステップＳ６０４）、及びリブートフラグ記憶部２０２ｆにより保持されているリブートフラグの解除（ステップＳ６０５）を行う。
【００４８】
その後、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となる（ステップＳ６０６）。操作部ＣＰＵ２１２からの通信不良通知が来た場合は（ステップＳ６０６：Yes）、リブートフラグが立っているか否かで判断する（ステップＳ６０７）。即ち、リブートフラグが立っている場合は（ステップＳ６０７：Yes）、リブートせずに操作部ＣＰＵ２１２へのエラー通知を実施する（ステップＳ６０８）。リブートフラグが立っていない場合は（ステップＳ６０７：No）、リブートフラグを立て（ステップＳ６０９）、電源回路２０３にリブート要求を行う（ステップＳ６１０）。リブート要求に応じて、電源回路２０３によりサブＣＰＵ２０２の電源は切られ、再度投入される。
【００４９】
〈第３の自動リブート処理手順〉
図１１は、本発明の第４の実施形態に係るリブートシステムにおける第３の自動リブート処理手順を示すフロー図である。
この手順は、ＡＣプラグの挿入により供給される電源又はシャットダウン状態で切れる電源又は省エネ状態で切れる電源でサブＣＰＵ２０２を駆動することを想定した手順である。例えば、ＡＣプラグの挿入で供給される電源で駆動する場合は電源回路２０３を監視することで、省エネ状態で切れる電源で駆動する場合は電源のオフ→オンをカウントすることで、省エネ状態からの復帰回数が一定回数以下の場合はリブートできない期間を作り出すことができる。
【００５０】
以下、シャットダウンで切れる電源で駆動する場合についてフローチャートに沿って説明する。
サブＣＰＵ２０２は電源回路２０３を監視し、省エネ状態で切れる電源（以下、省エネ電源）がオフであるか否かを判断する（ステップＳ７０１）。省エネ電源がオンの場合は（ステップＳ７０１：No）、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となり（ステップＳ７０８）、省エネ状態になるまでステップＳ７０１及びステップＳ７０８を繰り返す。
【００５１】
省エネ電源がオフの場合は（ステップＳ７０１：Yes）、省エネ電源がオンされるまで待機する（ステップＳ７０２）。省エネ電源がオンされると（ステップＳ７０２：Yes）、リブートフラグが立っているか否かを確認する（ステップＳ７０３）。
リブートフラグが立っていない場合は（ステップＳ７０３：No）、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となり（ステップＳ７０８）、省エネ状態になるまでステップＳ７０１及びステップＳ７０８を繰り返す。
リブートフラグが立っている場合は（ステップＳ７０３：Yes）、省エネ復帰回数記憶部２０２ｈにより保持されている省エネ復帰回数を１インクリメントし（ステップＳ７０４）、省エネ復帰回数が所定値（ここではＮ）以上か否かを判断する（ステップＳ７０５）。
【００５２】
省エネ復帰回数が所定値未満の場合は（ステップＳ７０５：No）、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となり（ステップＳ７０８）、省エネ状態になるまでステップＳ７０１及びステップＳ７０８を繰り返す。
省エネ復帰回数が所定値以上の場合は（ステップＳ７０５：Yes）、省エネ復帰回数記憶部２０２ｈにより保持されている省エネ復帰回数のクリア（ステップＳ７０６）、及びリブートフラグ記憶部２０２ｆにより保持されているリブートフラグの解除（ステップＳ７０７）を行う。その後、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となり（ステップＳ７０８）、省エネ状態になるまでステップＳ７０１及びステップＳ７０８繰り返す。
【００５３】
操作部ＣＰＵ２１２からの通信不良通知が来た場合は（ステップＳ７０８：Yes）、リブートフラグが立っているか否かで判断する（ステップＳ７０９）。即ち、リブートフラグが立っている場合は（ステップＳ７０９：Yes）、リブートせずに操作部ＣＰＵ２１２へのエラー通知を実施する（ステップＳ７１０）。リブートフラグが立っていない場合は（ステップＳ７０９：No）、リブートフラグを立て（ステップＳ７１１）、電源回路２０３にリブート要求を行う（ステップＳ７１２）。リブート要求に応じて、電源回路２０３によりサブＣＰＵ２０２の電源は切られ、再度投入される。
【００５４】
〈第４の自動リブート処理手順〉
以上説明した第１の自動リブート処理手順では、ＡＣプラグが挿入されている間はサブＣＰＵ２０２の電源がオンのため消費電力が高くなる。第２の自動リブート処理手順では、省エネに対応できない。また、シャットダウンを行わないユーザがいた場合に、一度リブートを行うと、以後リブートを行えなくなる可能性がある。第３の自動リブート処理手順では、省エネモードを使用しないユーザがいた場合に対応できない可能性がある。
【００５５】
そこで、第４の自動リブート処理手順では、第１乃至第３の自動リブート処理手順を組み合わせることで、これらの問題を解決した。この手順は、ＡＣプラグの挿入により供給される電源又はシャットダウン状態で切れる電源又は省エネ電源でサブＣＰＵ２０２を駆動することを想定した手順である。
図１２は、本発明の第４の実施形態に係るリブートシステムにおける第４の自動リブート処理手順を示すフロー図である。
【００５６】
例えば、省エネ電源で駆動する場合、サブＣＰＵ２０２は自身の起動回数のカウントと時間のカウントを行う。ここでは仮にリブートのできない期間を起動回数：１０回、時間：２４時間とし、どちらか一方の条件が満たされるまでの期間、連続してリブートできないようにする。この仕組みは以下の(i)、(ii)のようなケースを想定している。
(i）ユーザが省エネモード、シャットダウンを使用する場合
サブＣＰＵ２０２が自身の電源オフ→オンをカウンタ２０２ｃでカウントすることで起動回数が１０回となるまでの間リブートできない期間を実現する。
(ii)ユーザが省エネモード、シャットダウンを使用しない場合
サブＣＰＵ２０２がタイマー２０２ｂで時間をカウントし、２４時間経過するまでの間リブートできない期間を実現する。
【００５７】
以下、省エネ電源で駆動する場合について、フローチャートに沿って説明する。
サブＣＰＵ２０２は電源投入後、まずリブートフラグが立っているか否かを判断する（ステップＳ８０１）。リブートフラグが立っていない場合は（ステップＳ８０１：No）、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となる（ステップＳ８０６：No→ステップＳ８１２）。
【００５８】
リブートフラグが立っている場合は（ステップＳ８０１：Yes）、不揮発性領域２０２ｅ内の起動回数記憶部２０２ｇにより保持されている起動回数を１インクリメントし（ステップＳ８０２）、起動回数が所定値（ここではＮ）以上か否かを判断する（ステップＳ８０３）。
起動回数が所定値以上の場合は（ステップＳ８０３：Yes）、起動回数のクリア（ステップＳ８０４）、及びリブートフラグの解除（ステップＳ８０５）を行う。その後、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となる（ステップＳ８０６：No→ステップＳ８１２）。
起動回数が所定値未満の場合は（ステップＳ８０３：No）、サブＣＰＵ２０２はタイマー２０２ｂを開始（スタート）させる（ステップＳ８０７）。ただし、タイマー２０２ｂが既に動いている場合はステップＳ８０７を実施しない。タイマー開始後、時間を確認し、時間の経過を判断する（ステップＳ８０８）。
【００５９】
そして、一定時間経過していれば（ステップＳ８０８：Yes）、タイマーの停止（ステップＳ８０９）、起動回数のクリア（ステップＳ８１０）、及びリブートフラグの解除（ステップＳ８１１）を行う。その後、操作部ＣＰＵ２１２からの通信不良通知を待っている状態となる（ステップＳ８１２）。
一定時間経過していない場合は（ステップＳ８０８：No）、操作部ＣＰＵ２１２からの通信不良通知を待ちながら時間経過をカウントする（ステップＳ８１２：No→ステップＳ８０６→ステップＳ８０８）。操作部ＣＰＵ２１２からの通信不良通知が来た場合は（ステップＳ８１２：Yes）、リブートフラグが立っているか否かで判断する。即ち、リブートフラグが立っている場合は（ステップＳ８１３：Yes）、リブートせずに操作部ＣＰＵ２１２へのエラー通知を実施する（ステップＳ８１４）。リブートフラグが立っていない場合は（ステップＳ８１３：No）、リブートフラグを立て（ステップＳ８１５）、電源回路２０３にリブート要求を行う（ステップＳ８１６）。リブート要求に応じて、電源回路２０３によりサブＣＰＵ２０２の電源は切られ、再度投入される。
【００６０】
〈第１の自動リブート処理手順及び第２の自動リブート処理手順の設定（その１）〉
図１３は、第１の自動リブート処理手順及び第２の自動リブート処理手順を実行するか否かを設定する手順の第１の例を示すフロー図である。
【００６１】
ユーザが操作パネル２１１から設定情報入力画面（以下、設定画面）を選択する操作を行うと（ステップＳ９０１：Yes）、操作部ＣＰＵ２１２の設定情報入力画面生成手段２１２ｃにより、設定画面が生成され、操作パネル２１１に表示される。操作部ＣＰＵ２１２の設定情報取得手段２１２ｄは、設定画面上でユーザが起動回数によるリブートフラグ解除を使用することを選択（入力）したか否かを判断する（ステップＳ９０２）。
【００６２】
ユーザが使用することを選択した場合は（ステップＳ９０２：Yes）、使用するに設定し（ステップＳ９０３）、使用することを選択しなかった場合は（ステップＳ９０２：No）、使用しないに設定する（ステップＳ９０４）。
【００６３】
次に設定情報取得手段２１２ｄは、ユーザがタイマーによるリブートフラグ解除を使用することを設定画面上で選択（入力）したか否かを判断する（ステップＳ９０５）。ユーザが使用することを選択した場合は（ステップＳ９０５：Yes）、使用するに設定し（ステップＳ９０６）、使用することを選択しなかった場合は（ステップＳ９０５：No）、使用しないに設定する（ステップＳ９０７）。
【００６４】
これらの設定情報は、設定情報取得手段２１２ｄにより取得され、通知手段２１２ｂによりコントローラボード２０のサブＣＰＵ２０２に通知され、コントローラボード２０の動作に反映される。
【００６５】
〈第１の自動リブート処理手順及び第２の自動リブート処理手順の設定（その２）〉
図１４は、第１の自動リブート処理手順及び第２の自動リブート処理手順を実行するか否かを設定する手順の第２の例を示すフロー図である。
【００６６】
ユーザが操作パネル２１１から設定画面を選択する操作を行うと（ステップＳ１００１：Yes）、設定情報入力画面生成手段２１２ｃにより、設定画面が生成され、操作パネル２１１に表示される。操作部ＣＰＵ２１２の設定情報取得手段２１２ｄは、設定画面上でユーザが起動回数によるリブートフラグ解除を使用することを選択（入力）したか否かを判断する（ステップＳ１００２）。
ユーザが使用することを選択した場合は（ステップＳ１００２：Yes）、使用するに設定し（ステップＳ１００３）、使用することを選択しなかった場合は（ステップＳ１００２：No）、使用しないに設定する（ステップＳ１００４）。また、ステップＳ１００３を実施した場合は、設定画面から入力されたフラグ解除回数の入力値を設定する（ステップＳ１００５）。
【００６７】
ステップＳ１００４又はステップＳ１００５を実施した後、設定情報取得手段２１２ｄは、ユーザがタイマーによるリブートフラグ解除を使用することを設定画面上で選択（入力）したか否かを判断する（ステップＳ１００６）。ユーザが使用することを選択した場合は（ステップＳ１００６：Yes）、使用するに設定し（ステップＳ１００７）、使用することを選択しなかった場合は（ステップＳ１００６：No）、使用しないに設定する（ステップＳ１００８）。また、ステップＳ１００７を実施した場合は、次にフラグ解除時間の入力値を設定する（ステップＳ１００９）。
【００６８】
これらの設定情報は、設定情報取得手段２１２ｄにより取得され、通知手段２１２ｂによりコントローラボード２０のサブＣＰＵ２０２に通知され、コントローラボード２０の動作に反映される。
【００６９】
図１３又は図１４に示す手順を実施することにより、ユーザは必要のない機能を自由に設定することができる。即ち、例えば省エネモードを使用しているためタイマーを使用しないといったカスタマイズが可能となる。また、カスタマーエンジニアがユーザの使用方法に合わせて適切な設定に変更することもできる。即ち、例えば省エネ機能を使用しており、１日の終わりには電源オフをするようなユーザには時間のカウントをオフにするといった設定をすることで、必要以上のリブートを抑えることができる。
【００７０】
なお、以上の説明では、第４の実施形態に係るリブートシステムが、第１乃至第４の自動リブート処理手順（図９乃至図１２）の全てを実施する機能を備えており、かつユーザがそれらのうち、１つ以上を実施することを選択可能な構成を有するものとしたが、第１乃至第４の自動リブート処理手順のうちの１つ又は２つ又は３つを実施する機能を備え、かつユーザがそれらのうち、１つ以上を実施することを選択可能な構成を有するものとしてもよい。
【符号の説明】
【００７１】
１，２…リブートシステム、１０，２０…コントローラボード、１４…電源装置、１００，２０１…メインＣＰＵ、１０２、２０２…サブＣＰＵ、１０２ａ…第２の通信監視手段、１０２ｂ…通信停止制御手段、１０２ｃ，２０２ｄ…リブート制御手段、１０４…不揮発性メモリ、１２，２１…操作部、１２０，２１２…操作部ＣＰＵ、１２０ａ，２１２ａ…第１の通信監視手段、１２０ｂ，２１２ｂ…通知手段、２０３…電源回路。
【先行技術文献】
【特許文献】
【００７２】
【特許文献１】特開２００５−２１９２４７公報
【図１】
0006623901.tif 000002
【図２】
0006623901.tif 000003
【図３】
0006623901.tif 000004
【図４】
0006623901.tif 000005
【図５】
0006623901.tif 000006
【図６】
0006623901.tif 000007
【図７】
0006623901.tif 000008
【図８】
0006623901.tif 000009
【図９】
0006623901.tif 000010
【図１０】
0006623901.tif 000011
【図１１】
0006623901.tif 000012
【図１２】
0006623901.tif 000013
【図１３】
0006623901.tif 000014
【図１４】
0006623901.tif 000015