(57)【特許請求の範囲】
【請求項１】
情報処理装置であって、
前記情報処理装置の電源をオフにするための指示を受け付ける受付手段と、
前記受付手段が前記指示を受け付けた際に、前記情報処理装置の電源をオフにする必要があるか否か判断する判断手段と、
前記判断手段が前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置の電源をオフにするように制御し、前記判断手段が前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置の電源をオフにしないように制御する制御手段とを有することを特徴とする情報処理装置。
【請求項２】
前記判断手段は、前記情報処理装置のソフトウェアが不正な状態になっている場合に、前記情報処理装置の電源をオフにする必要があると判断することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記判断手段は、前記情報処理装置において前記受付手段が前記指示を受け付ける前に入力されたジョブが実行されていない場合に、前記情報処理装置の電源をオフにする必要があると判断することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記判断手段は、前記情報処理装置において終了していないジョブが存在する場合に、前記情報処理装置の電源をオフにする必要があると判断することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記判断手段は、前記情報処理装置においてエラーが発生している場合に、前記情報処理装置の電源をオフにする必要があると判断することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記制御手段は、前記判断手段が前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置を再起動させるように制御することを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
前記制御手段は、前記判断手段が前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置を省電力状態に移行させるように制御することを特徴とする請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
情報処理装置の制御方法であって、
前記情報処理装置の電源をオフにするための指示を受け付ける受付ステップと、前記受付ステップで前記指示を受け付けた際に、前記情報処理装置の電源をオフにする必要があるか否か判断する判断ステップと、
前記判断ステップで前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置の電源をオフにするように制御し、前記判断ステップで前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置の電源をオフにしないように制御する制御ステップとを有することを特徴とする情報処理装置の制御方法。
【請求項９】
情報処理装置の制御方法をコンピュータに実行させるプログラムであって、前記情報処理装置の制御方法は、
前記情報処理装置の電源をオフにするための指示を受け付ける受付ステップと、前記受付ステップで前記指示を受け付けた際に、前記情報処理装置の電源をオフにする必要があるか否か判断する判断ステップと、
前記判断ステップで前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置の電源をオフにするように制御し、前記判断ステップで前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置の電源をオフにしないように制御する制御ステップとを有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びその制御方法、並びにプログラムに関し、特に、ソフトウェアにより動作する情報処理装置及びその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、画像形成装置が多機能化するのに伴い、システムは複雑になり、ソフトウェアの起動にかかる時間は拡大傾向にある。
【０００３】
それらを解決するため、画像形成装置のスイッチをオフにした際に、ソフトウェアが展開されている揮発性メモリ（例えばＤＲＡＭ）だけ電力を供給しておき、次回スイッチがオンにされた場合に、その状態から復帰することによってソフトウェアの起動にかかる時間を短縮する技術が確立されている。
【０００４】
この技術に関し、スリープ中にユーザ操作の少ないタイミングを統計的に導き出し、そのタイミングでソフトウェアの再起動を行う技術が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２２９５０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
スイッチをオフにした際に、ソフトウェアが展開されている揮発名メモリだけに電力を供給しておく場合に、画像形成装置のスイッチをオフにする前にソフトウェアトラブル（例えばフリーズやメモリ枯渇）が発生している状態で、スイッチをオフにし、そしてオンにしても同じ状態に復帰するという問題点があった。
【０００７】
このように、従来の技術では、ソフトウェアの動作が不正な状態から正常に動作させることは困難であるという問題点があった。
【０００８】
本発明の目的は、ソフトウェアの動作が不正な状態から正常に動作させることができる情報処理装置及びその制御方法、並びにプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、請求項１の情報処理装置は、情報処理装置であって、前記情報処理装置の電源をオフにするための指示を受け付ける受付手段と、前記受付手段が前記指示を受け付けた際に、前記情報処理装置の電源をオフにする必要があるか否か判断する判断手段と、前記判断手段が前記情報処理装置の電源をオフにする必要があると判断した場合に、前記情報処理装置の電源をオフにするように制御し、前記判断手段が前記情報処理装置の電源をオフにする必要がないと判断した場合に、前記情報処理装置の電源をオフにしないように制御する制御手段とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ソフトウェアの動作が不正な状態から正常に動作させることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態に係る画像形成装置の概略構成を示す図である。
【図２】図１の画像処理装置により実行される電源制御処理の手順を示すフローチャートである。
【図３】図１の画像処理装置により実行される電源制御処理の変形例１の手順を示すフローチャートである。
【図４】図１の画像処理装置により実行される電源制御処理の変形例２の手順を示すフローチャートである。
【図５】図１の画像処理装置により実行される電源制御処理の変形例３の手順を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について図面を参照しながら詳述する。
【００１３】
図１は、本発明の実施の形態に係る画像形成装置２００の概略構成を示す図である。
【００１４】
図１において、画像形成装置２００は、コントローラ１（制御手段）、ＵＳＢメモリ９、操作部５、スイッチ１０、ＨＤＤ６、電源装置８、プリンタ装置４、スキャナ装置２、及びＦＡＸ装置７で構成される。
【００１５】
コントローラ１はメインボード１００と、サブボード１２０から構成される。
【００１６】
メインボード１００はいわゆる汎用的なＣＰＵシステムである。メインボード１００は、ＣＰＵ１０１、ブートロム１０２、ＵＳＢコントローラ１０８、メモリ１０３、バスコントローラ１０４、不揮発性メモリ１０５、電力制御部１０９、ディスクコントローラ１０６、及びフラッシュディスク１０７で構成される。
【００１７】
ＣＰＵ１０１は、メインボード１００全体を制御する。ブートロム１０２は、ブートプログラムが記憶されている。メモリ１０３は、揮発性のメモリであり、ＣＰＵ１０１がワークメモリとして使用する。通常、ソフトウェアは不揮発性メモリ１０５に記憶されており、それを動作させるための一時的なデータ等がメモリ１０３には展開されるが、このデータに加え、メモリ１０３には不揮発性メモリ１０５に記憶されているソフトウェアから生成されたソフトウェアが展開されることもある。コントローラ１はソフトウェアに従って画像形成装置２００を制御することとなるが、メモリ１０３に記憶されたデータやソフトウェア等の情報に不具合が発生することにより、ソフトウェアの動作状態が不正な状態となる。この場合、メモリ１０３に電源を供給して他のデバイス（例えばプリンタ装置４）等を再起動しても、当然に不安定な状態が継続することとなる。従って、コントローラ１への電力の供給を遮断することでメモリ１０３への電力の供給を遮断して再起動することで、ソフトウェアの動作が不正な状態から正常に動作させることができる。
【００１８】
バスコントローラ１０４は、外部バスとのブリッジ機能を有する。不揮発性メモリ１０５は、電源の供給が断たれた場合でも情報を保持することができる。ディスクコントローラ１０６は、ストレージ装置を制御する。フラッシュディスク（例えばＳＳＤ等）１０７は、半導体デバイスで構成された比較的小容量なストレージ装置である。ＵＳＢコントローラ１０８は、ＵＳＢを制御することが可能なコントローラである。電力制御部１０９は、メインボード１００の電力が必要な各部への電力の供給を管理する。
【００１９】
メインボード１００には外部に上述したＵＳＢメモリ９、操作部５、ＨＤＤ６、及びスイッチ１０が接続される。また、ＨＤＤ６は不揮発デバイスであればその種を問わない。このうちの操作部５は、ユーザに情報を表示したり、ユーザが操作するための各種ボタンやタッチパネル等で構成される。スイッチ１０は、ユーザにより操作されるとＣＰＵ１０１へ割り込みを入れる。ＣＰＵ１０１は割り込みを検知すると状態にあわせて、電力制御部１０９、１２８を制御する。こうしてユーザが画像形成装置２００の主電源をオン、オフするものであるが、オフにした場合でも、電源の供給が全て断たれるものではない。
【００２０】
サブボード１２０は比較的小さな汎用ＣＰＵシステムと、画像処理ハードウェアから構成される。
【００２１】
サブボード１２０は、ＣＰＵ１２１、メモリ１２３、バスコントローラ１２４、不揮発性メモリ１２５、電力制御部１２８、画像処理プロセッサ１２７、デバイスコントローラ１２６，１２８で構成される。
【００２２】
ＣＰＵ１２１は、サブボード１２０全体を制御する。メモリ１２３は、ＣＰＵ１２１がワークメモリとして使用する。バスコントローラ１２４は、外部バスとのブリッジ機能を有する。不揮発性メモリ１２５は、電源の供給が断たれた場合でも情報を保持することができる。
【００２３】
画像処理プロセッサ１２７は、リアルタイムデジタル画像処理を行う。デバイスコントローラ１２６，１２８は、それぞれプリンタ装置４、スキャナ装置２と画像処理プロセッサ１２７との間のデータの受け渡しを行う。ＦＡＸ装置７はＣＰＵ１２１が直接制御を行う。
【００２４】
電力制御部１２８は、サブボード１２０の電力が必要な各部への電力の供給を管理する。
【００２５】
メインボード１００、及びサブボード１２０の電源は電源装置８から電力が供給される。スイッチ１０はユーザの電源オフ、ＯＮ操作を受けるもので、スイッチ１０が操作されるとＣＰＵ１０１へ割り込みが入る。ＣＰＵ１０１は割り込みを検知すると状態にあわせて、電力制御部１０９、１２８を制御する。
【００２６】
なお、図１は説明を簡単にするために、画像形成装置２００の構成を簡略化したものとなっている。例えばＣＰＵ１０１、ＣＰＵ１２１等にはチップセット、バスブリッジ、クロックジェネレータ等のＣＰＵ周辺ハードウェアが多数含まれているが、説明の粒度的に不必要であるため簡略化記載しており、このブロック構成が本発明を制限するものではない。
【００２７】
上記構成におけるコントローラ１の動作について、画像複写を例に説明する。
【００２８】
ユーザが操作部５から画像複写を指示すると、ＣＰＵ１０１がＣＰＵ１２１を介してスキャナ装置２に画像読み取り命令を送る。スキャナ装置２は紙原稿を光学スキャンしデジタル画像データに変換してデバイスコントローラ１２６を介して画像処理プロセッサ１２７に入力する。画像処理プロセッサはＣＰＵ１２１を介してメモリ１２３にＤＭＡ転送を行いデジタル画像データの一時保存を行う。
【００２９】
ＣＰＵ１０１はデジタル画像データがメモリ１２３に一定量もしくは全て入ったことが確認できると、ＣＰＵ１２１を介してプリンタ装置４に画像出力指示を出す。ＣＰＵ１２１は画像処理プロセッサ１２７にメモリ１２３の画像データの位置を教える。プリンタ装置４からの同期信号に従ってメモリ１２３上の画像データは画像処理プロセッサとデバイスコントローラ１２６を介してプリンタ装置４に送信され、プリンタ装置４にて紙デバイスにデジタル画像データが印刷される。
【００３０】
複数部印刷を行う場合、ＣＰＵ１０１がメモリ１２３の画像データをＨＤＤ６に対して保存を行い、２部目以降はスキャナ装置２から画像をもらわずともプリンタ装置４に画像を送ることが可能である。
【００３１】
図２は、図１の画像形成装置２００により実行される電源制御処理の手順を示すフローチャートである。
【００３２】
図２の処理は、図１の画像形成装置２００におけるＣＰＵ１０１によって実行される。
【００３３】
図２において、ユーザ操作によってスイッチ１０がオフにされると（ステップＳ１０１）、電力制御部１０９，１２８を通じてソフトウェアが割り込みを検知する。次いで、割り込みを受けたソフトウェアの動作状態が不正な状態になっているか否か判別し（ステップＳ１０２）（判別手段）、ソフトウェアの動作状態が不正な状態になっていないとき（ステップＳ１０２でＮＯ）、電力制御部１０９，１２８を介して、コントローラ１をスリープ状態に移行して（ステップＳ１０３）、本処理を終了する。
【００３４】
ステップＳ１０２の判別の結果、ソフトウェアの動作状態が不正な状態になっているとき（ステップＳ１０２でＹＥＳ）、電力制御部１０９，１２８を介して、コントローラ１への電力の供給を遮断して（ステップＳ１０４）（遮断手段）、本処理を終了する。
【００３５】
上記スリープ状態とは、コントローラ１への電力以外の電力の供給を遮断することを意味するが、少なくともメモリ１０３への電力が遮断されていない状態であればよい。
【００３６】
図２の処理によれば、スイッチ１０がオフとされたときに、ソフトウェアの動作状態が不正な状態となっているか否かを判別し（ステップＳ１０２）、ソフトウェアの動作状態が不正な状態となっていると判別されたとき（ステップＳ１０２でＹＥＳ）、コントローラ１への電力の供給を遮断するので、ソフトウェアの動作が不正な状態から正常に動作させることができる。
【００３７】
図３は、図１の画像形成装置２００により実行される電源制御処理の変形例１の手順を示すフローチャートである。
【００３８】
この図３の処理において、ジョブは予め定められた処理であり、例えば印刷処理等が挙げられるが、基本的にはアイドル時以外に動作する処理であればよい。
【００３９】
図３において、ユーザ操作によってスイッチ１０がオフにされると（ステップＳ２０１）、電力制御部１０９，１２８を通じてソフトウェアが割り込みを検知する。次いで、スイッチがオンとなってから、ジョブが全く実行されていないか否かを判別し、ジョブが全く実行されなかったとき（ステップＳ２０２でＮＯ）、電力制御部１０９，１２８を介して、コントローラ１の電源をオフにして（ステップＳ２０５）、本処理を終了する。
【００４０】
ステップＳ２０２の判別の結果、ジョブが少なくとも一度は実行されたとき（ステップＳ２０２でＹＥＳ）、終了していないジョブが存在するか否か判別し（ステップＳ２０３）、存在するとき（ステップＳ２０３でＹＥＳ）、上記ステップＳ２０５に進み、存在しないとき（ステップＳ２０３でＮＯ）、電力制御部１０９，１２８を介して、コントローラ１をスリープ状態に移行して（ステップＳ２０４）、本処理を終了する。
【００４１】
上記処理では、ジョブが全く実行されたか否か、及び終了していないジョブが存在するか否かの２点で判別が行われたが、ジョブが全く実行されていない場合は、起動時、又はアイドル時に何らかのソフトウェアトラブルが発生したことが想定される。また、終了してないジョブが存在する場合は、ジョブ実行中に何らかのソフトウェアトラブルが発生したことが想定される。
【００４２】
図４は、図１の画像形成装置２００により実行される電源制御処理の変形例２の手順を示すフローチャートである。
【００４３】
図４において、ユーザ操作によってスイッチ１０がオフにされると（ステップＳ３０１）、電力制御部１０９，１２８を通じてソフトウェアが割り込みを検知する。次いで、電源オフ、オンでしか復帰しないエラー、すなわち、電力の供給を遮断する以外に復旧できないエラーが発生しているか否か判別し、エラーが発生していないとき（ステップＳ３０２でＮＯ）、電力制御部１０９，１２８を介して、コントローラ１をスリープ状態に移行して（ステップＳ３０３）、本処理を終了する。
【００４４】
ステップＳ３０２の判別の結果、ソフトウェアが不正な状態になっているとき（ステップＳ３０２でＹＥＳ）、電力制御部１０９，１２８を介して、コントローラ１の電源をオフにして（ステップＳ３０４）、本処理を終了する。
【００４５】
図５は、図１の画像形成装置２００により実行される電源制御処理の変形例３の手順を示すフローチャートである。
【００４６】
図５において、ユーザ操作によってスイッチ１０がオフにされると（ステップＳ４０１）、電力制御部１０９，１２８を通じてソフトウェアが割り込みを検知する。次いで、割り込みを受けたソフトウェアが不正な状態になっているか否か判別し、ソフトウェアが不正な状態になっていないとき（ステップＳ４０２でＮＯ）、電力制御部１０９，１２８を介して、コントローラ１をスリープ状態に移行して（ステップＳ４０３）、本処理を終了する。
【００４７】
ステップＳ１０２の判別の結果、ソフトウェアが不正な状態になっているとき（ステップＳ４０２でＹＥＳ）、ソフトウェアを再起動し、それと同時に電力制御部１０９，１２８を通して、ソフトウェアの再起動に伴って初期化が必要なハードウェアデバイスの再起動を行い（ステップＳ４０４）、電力制御部１０９，１２８を介して、コントローラ１をスリープ状態に移行して（ステップＳ４０３）、本処理を終了する。
【００４８】
図２の処理と比較して、再起動を行う分、スイッチ１０のオフから低電力状態へ移行時間は遅くなる傾向にあるが、次回スイッチ１０のオンからの復帰時間は速くなる。この図５の処理は、図３、図４の処理に対しても適用可能である。
【００４９】
（他の実施の形態）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００５０】
１  コントローラ
８  電源装置
１０  スイッチ
１０１  ＣＰＵ
１０３、１２３  メモリ
１０９、１２８  電力制御部
【図１】
0005665529.tif 000002
【図２】
0005665529.tif 000003
【図３】
0005665529.tif 000004
【図４】
0005665529.tif 000005
【図５】
0005665529.tif 000006