(57)【要約】【課題】構成要素の交換によりアクセスエラーが生じても使用することができる画像形成装置、その制御方法、プログラム、及び記憶媒体を提供する。【解決手段】画像形成装置は、ディスクコントローラ１０５及びＨＤＤ１０６を備える。ディスクコントローラ１０５は、ＨＤＤ１０６に対するアクセスを行う。構成変更検出モジュール２０５によりＨＤＤ１０６の変更が検知された場合において、ＨＤＤ１０６に対するアクセスがエラーになったときは、ＨＤＤ１０６の状態確認を行う回数と時間を変更してＨＤＤ１０６に対するアクセスを行う。その結果、ＨＤＤ１０６に対するアクセスが成功した回数が既定値を超過したときは、ＨＤＤ１０６の状態確認を行う回数と時間の既定値を変更する。【選択図】図２
2010268355.tif 000002
【特許請求の範囲】
【請求項１】
構成要素を備えると共に前記構成要素に対して既定の処理を実行する画像形成装置において、
前記構成要素の変更を検知する検知手段と、
前記構成要素の変更が検知されたときに当該構成要素に対して前記既定の処理が正常に実行されたか否かを判別する判別手段と、
前記処理が正常に実行されなかったと判別されたときに前記既定の処理とは異なる他の処理を実行する実行手段と、
前記他の処理が正常に実行されたときは、当該構成要素に対する既定の処理を当該他の処理に変更する変更手段とを備えることを特徴とする画像形成装置。
【請求項２】
前記他の処理が正常に実行された回数を記録する記録手段を備え、前記変更手段は、前記記録手段に記録された回数が既定値を超えたときは、前記既定の処理を当該他の処理に変更することを特徴とする画像形成装置。
【請求項３】
構成要素を備えると共に前記構成要素に対して既定の処理を実行する画像形成装置の制御方法において、
前記構成要素の変更を検知する検知ステップと、
前記構成要素の変更が検知されたときに当該構成要素に対して前記既定の処理が正常に実行されたか否かを判別する判別ステップと、
前記処理が正常に実行されなかったと判別されたときに前記既定の処理とは異なる他の処理を実行する実行ステップと、
前記他の処理が正常に実行されたときは、当該構成要素に対する既定の処理を当該他の処理に変更する変更ステップとを備えることを特徴とする制御方法。
【請求項４】
構成要素を備えると共に前記構成要素に対して既定の処理を実行する画像形成装置の制御方法をコンピュータに実行させるプログラムにおいて、前記制御方法は、
前記構成要素の変更を検知する検知ステップと、
前記構成要素の変更が検知されたときに当該構成要素に対して前記既定の処理が正常に実行されたか否かを判別する判別ステップと、
前記処理が正常に実行されなかったと判別されたときに前記既定の処理とは異なる他の処理を実行する実行ステップと、
前記他の処理が正常に実行されたときは、当該構成要素に対する既定の処理を当該他の処理に変更する変更ステップとを備えることを特徴とするプログラム。
【請求項５】
請求項４記載のプログラムを格納することを特徴とするコンピュータで読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、その制御方法、プログラム、及び記憶媒体に関し、特に、複数の構成要素を備えた画像形成装置、その制御方法、プログラム、及び記憶媒体に関するものである。
【背景技術】
【０００２】
近年、画像形成装置は、原稿から読み取った情報を印刷する複写機能や、画像情報を格納する機能や、公衆回線やネットワークを介してデータを送受信する機能など、複数の機能を有する複合機能装置が主流となってきている。これに伴い、画像形成装置は、パーソナルコンピュータ（ＰＣ）等の情報処理装置と同等の処理能力を有すると共に、情報処理装置と同様にハードディスク装置（ＨＤＤ）等のデバイスが接続されるようになってきている。
【０００３】
ＨＤＤ等の複数の構成要素からなる画像形成装置においては、構成要素の一つが着脱あるいは変更され、当該構成要素が有するアクセスタイミングが異なる場合に、アクセスが正常に行われなくなる。この場合、画像形成装置は、エラー表示を行って使用不能となるといった問題が生じる。
【０００４】
この問題に対処する方法として、電源投入時に周辺機器の画像形成装置への接続状態を確認し、以前と接続状態が変更されていた場合にエラー表示を行う方法が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平８−２０２２０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献１に記載された方法では、周辺機器などの構成要素の交換前と交換後の特性の差異に起因してアクセスがエラーとなり、画像形成装置が使用不能となる場合がある。そこで、構成要素の特性の差異が微細であれば、エラーとはせずに画像形成装置を使用できるようにする回避策を講じることが求められている。
【０００７】
本発明の目的は、構成要素の交換によりアクセスエラーが生じても使用することができる画像形成装置、その制御方法、プログラム、及び記憶媒体を提供することにある。
【課題を解決するための手段】
【０００８】
上述の目的を達成するために、請求項      1記載の画像形成装置は、構成要素を備えると共に前記構成要素に対して既定の処理を実行する画像形成装置において、前記構成要素の変更を検知する検知手段と、前記構成要素の変更が検知されたときに当該構成要素に対して前記既定の処理が正常に実行されたか否かを判別する判別手段と、前記処理が正常に実行されなかったと判別されたときに前記既定の処理とは異なる他の処理を実行する実行手段と、前記他の処理が正常に実行されたときは、当該構成要素に対する既定の処理を当該他の処理に変更する変更手段とを備えることを特徴とする。
【０００９】
上述の目的を達成するために、請求項３記載の制御方法は、構成要素を備えると共に前記構成要素に対して既定の処理を実行する画像形成装置の制御方法において、前記構成要素の変更を検知する検知ステップと、前記構成要素の変更が検知されたときに当該構成要素に対して前記既定の処理が正常に実行されたか否かを判別する判別ステップと、前記処理が正常に実行されなかったと判別されたときに前記既定の処理とは異なる他の処理を実行する実行ステップと、前記他の処理が正常に実行されたときは、当該構成要素に対する既定の処理を当該他の処理に変更する変更ステップとを備えることを特徴とする。
【００１０】
上述の目的を達成するために、請求項４記載のプログラムは、構成要素を備えると共に前記構成要素に対して既定の処理を実行する画像形成装置の制御方法をコンピュータに実行させるプログラムにおいて、前記制御方法は、前記構成要素の変更を検知する検知ステップと、前記構成要素の変更が検知されたときに当該構成要素に対して前記既定の処理が正常に実行されたか否かを判別する判別ステップと、前記処理が正常に実行されなかったと判別されたときに前記既定の処理とは異なる他の処理を実行する実行ステップと、前記他の処理が正常に実行されたときは、当該構成要素に対する既定の処理を当該他の処理に変更する変更ステップとを備えることを特徴とする。
【００１１】
上述の目的を達成するために、請求項５記載のコンピュータで読み取り可能な記憶媒体は、請求項４記載のプログラムを格納することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、構成要素の変更が検知されたときに当該構成要素に対して既定の処理が正常に実行されなかったと判別されたときに既定の処理とは異なる他の処理を実行する。また、他の処理が正常に実行されたときは、構成要素に対する既定の処理を当該他の処理に変更する。これにより、構成要素の交換によりアクセスエラーが生じても使用することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態に係る画像形成装置の構成を示すブロック図である。
【図２】図１におけるコントローラボード１００によって実行されるデバイスアクセス処理のモジュールの構成を示す図である。
【図３】図１におけるＣＰＵ１０２により実行されるデバイスアクセス処理のフローチャートである。
【図４】図３におけるステップＳ７０１のＨＤＤアクセス処理のフローチャートである。
【図５】図３におけるステップＳ７０３のエラー表示処理のフローチャートである。
【図６】図４におけるステップＳ３０２のエラー保護モード処理のフローチャートである。
【図７】図１におけるディスクコントローラ１０５に対してリセット指示を出した場合に、ＨＤＤ１０６がアクセス可能となるレディ状態になるまでの時間経過を示す図である。
【図８】図１におけるディスクコントローラ１０５に対してリセット指示を出した場合に、ＨＤＤ１０６がアクセス可能となるレディ状態になるまでの時間経過を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を図面を参照しながら詳述する。
【００１５】
[第１の実施の形態]
図１は、本発明の実施の形態に係る画像形成装置の構成を示すブロック図である。
【００１６】
図１において、本実施の形態に係る画像形成装置は、コントローラボード１００、ＳＲＡＭ１０８、ＨＤＤ（ハードディスク装置）１０６、ファクスエンジン１１０、プリントエンジン１１１、及びスキャンエンジン１１２を備える。
【００１７】
コントローラボード１００は、画像形成装置を制御する。コントローラボード１００は、ブートロム１０１、ＣＰＵ１０２、揮発性メモリ１０３、イメージプロセッサ１０４、ディスクコントローラ１０５、バスコントローラ１０７、及びデバイスコントローラ１０９を備える。
【００１８】
ブートロム１０１は、起動プログラムが格納された不揮発性メモリである。ＣＰＵ１０２は、起動プログラム及び他のプログラムを実行する演算装置である。揮発性メモリ１０３は、プログラムやデータを一時的に格納する。
【００１９】
イメージプロセッサ１０４は、画像形成処理を高速に実行する。ディスクコントローラ１０５は、ＨＤＤ１０６を制御する。バスコントローラ１０７は、ＳＲＡＭ１０８等の不揮発性記憶装置とのインタフェースを司る。
【００２０】
デバイスコントローラ１０９は、ファクスエンジン１１０、プリントエンジン１１１、及びスキャンエンジン１１２等の画像形成デバイスに接続され、これらの画像形成デバイスを制御して画像形成処理を実行する。
【００２１】
図２は、図１におけるコントローラボード１００によって実行されるデバイスアクセス処理のモジュールの構成を示す図である。
【００２２】
図２において、デバイスアクセス処理は、デバイスドライバ２００として実装される。デバイスドライバ２００は、ＯＳ（Operating System）２０６から呼び出され、ＯＳ２０６の要求にしたがって動作する。
【００２３】
なお、デバイスドライバ２００及びＯＳ２０６は、ＨＤＤ１０６等の不揮発性記憶装置に格納され、コントローラボード１００の電源投入時に、揮発性メモリ１０３に読み込まれ、ＣＰＵ１０２により実行される。
【００２４】
デバイスドライバ２００は、デバイスアクセスモジュール２０１、エラー制御モジュール２０２、エラー保護モードモジュール２０３、履歴管理モジュール２０４、及び構成変更検出モジュール２０５を備える。
【００２５】
デバイスアクセスモジュール２０１は、ＨＤＤ１０６等のデバイスを制御するモジュールである。エラー制御モジュール２０２は、エラー状況によりＬＣＤパネル等の画像形成装置が備える表示部に対してエラー表示を行う。エラー保護モードモジュール２０３は、エラー制御モジュール２０２により、直ぐにはエラー表示せずに通常とは異なるアクセス処理を行うことが指示された場合に呼び出される。履歴管理モジュール２０４は、エラー保護モードモジュール２０３における処理状態をＳＲＡＭ１０８等の不揮発性記憶装置に履歴として格納する。
【００２６】
構成変更検出モジュール２０５は、画像形成装置の起動毎に接続されている構成要素を検出し、ＳＲＡＭ１０８等の不揮発性記憶装置に格納された情報と比較し、差異があると構成が変更されたことをＳＲＡＭ１０８に記録する。また、構成変更検出モジュール２０５は、ＯＳ２０６からの要求に従って、構成の変更があったか否かの情報をＯＳ２０６に返却する。
【００２７】
以下、本実施の形態におけるデバイスアクセス処理を図３〜５のフローチャートを用いて、図１の画像形成装置が備えるコントローラボード１００のＨＤＤ１０６へのアクセスを例にして説明する。
【００２８】
アプリケーションプログラムなどからＨＤＤ１０６へのアクセス要求があると、ＯＳ２０６は、図３に示すフローチャートに従ってデバイスアクセス処理を実行する。
【００２９】
図３は、図１におけるＣＰＵ１０２により実行されるデバイスアクセス処理のフローチャートである。
【００３０】
図３において、まず、ＣＰＵ１０２は、後述する図４のＨＤＤアクセス処理を実行して、ＨＤＤ１０６へアクセスする（ステップＳ７０１）。次に、ＣＰＵ１０２は、ＨＤＤアクセス処理によりアクセスエラーの通知があったか否かを判別する（ステップＳ７０２）。
【００３１】
ステップＳ７０２の判別の結果、ＨＤＤアクセス処理によりアクセスエラーの通知がなかったとき、即ち、ＨＤＤ１０６へのアクセスが成功したときは、本処理を終了する。
【００３２】
一方、ステップＳ７０２の判別の結果、ＨＤＤアクセス処理によりアクセスエラーの通知があったときは、後述する図５のエラー表示処理を実行する（ステップＳ７０３）。次に、エラー表示処理によりエラー保護モードへの移行を指示する旨の通知があったか否かを判別する（ステップＳ７０４）。
【００３３】
ステップＳ７０４の判別の結果、エラー表示処理によりエラー保護モードへの移行を指示する旨の通知がなかったときは、本処理を終了する。
【００３４】
一方、ステップＳ７０４の判別の結果、エラー表示処理によりエラー保護モードへの移行を指示する旨の通知があったときは、ステップＳ７０５に進む。ステップＳ７０５では、ＳＲＡＭ１０８等の不揮発性記憶装置に格納されるエラー保護モードフラグをＯＮにして、ステップＳ７０１に戻る。
【００３５】
図４は、図３におけるステップＳ７０１のＨＤＤアクセス処理のフローチャートである。
【００３６】
図４において、まず、ＳＲＡＭ１０８等の不揮発性記憶装置に格納されたエラー保護モードフラグを参照することにより、現在のモードがエラー保護モードであるか否かを判別する（ステップＳ３０１）。
【００３７】
ステップＳ３０１の判別の結果、現在のモードがエラー保護モードであるときは、ステップＳ３０２に進む。一方、ステップＳ３０１の判別の結果、現在のモードがエラー保護モードではなく通常モードであるときは、ステップＳ３０３に進む。
【００３８】
ステップＳ３０２では、後述する図６のエラー保護モード処理を実行する。次に、エラー保護モード処理によりアクセスエラーの通知があったか否かを判別する（ステップＳ３１３）。
【００３９】
ステップＳ３１３の判別の結果、エラー保護モード処理によりアクセスエラーの通知があったときは、ステップＳ３０７に進む。ステップＳ３０７では、アクセスエラーの通知をＯＳ２０６に返却し、本処理を終了する。
【００４０】
一方、ステップＳ３１３の判別の結果、エラー保護モード処理によりアクセス成功の通知があったときは、ステップＳ３０８に進む。ステップＳ３０８では、ＨＤＤ１０６に対してリードやライトのアクセスを実行する。次に、ＨＤＤ１０６に対するアクセスに成功したか否かを判別する（ステップ３０９）。
【００４１】
ステップＳ３０９の判別の結果、ＨＤＤ１０６に対するアクセスに成功したときは、アクセス成功の通知をＯＳ２０６に返却し（ステップＳ３１０）、本処理を終了する。一方、ステップＳ３０９の判別の結果、ＨＤＤ１０６に対するアクセスに失敗したときは、ステップＳ３１１で、既定時間ウェイトした後、ステップＳ３１２に進む。
【００４２】
ステップＳ３１２では、ＨＤＤ１０６に対するアクセス回数が既定回数を超過しているか否かを判別する。ステップＳ３１２の判別の結果、ＨＤＤ１０６に対するアクセス回数が既定回数を超過していないときは、ステップＳ３０８に戻り、ＨＤＤ１０６に対するアクセスを実行する。一方、ステップＳ３１２の判別の結果、ＨＤＤ１０６に対するアクセス回数が既定回数を超過しているときは、ステップＳ３０７に進み、アクセスエラーの通知をＯＳ２０６に返却し、本処理を終了する。
【００４３】
一方、ステップＳ３０３では、ＣＰＵ１０２は、ディスクコントローラ１０５に対してＨＤＤ１０６のリセットを指示する。次に、ＣＰＵ１０２は、ＨＤＤ１０６のリセット処理が完了しＨＤＤ１０６がアクセス可能なレディ状態になっているか否かを判別する（ステップＳ３０４）。
【００４４】
ステップＳ３０４の判別の結果、ＨＤＤ１０６がアクセス可能なレディ状態になっているときは、ステップＳ３０８に進み、ＨＤＤ１０６に対するアクセスを実行する。
【００４５】
一方、ステップＳ３０４の判別の結果、ＨＤＤ１０６がアクセス可能なレディ状態になっていないときは、ステップＳ３０５に進む。ステップＳ３０５で、ＳＲＡＭ１０８に格納された既定時間ウェイトした後、ＨＤＤ１０６の状態確認回数がＳＲＡＭ１０８に格納された既定回数を超過しているか否かを判別する（ステップＳ３０６）。
【００４６】
ステップＳ３０６の判別の結果、ＨＤＤ１０６の状態確認回数がＳＲＡＭ１０８に格納された既定回数を超過していないときは、ステップＳ３０４に戻り、ＨＤＤ１０６がアクセス可能なレディ状態になっているか否かを判別する。
【００４７】
一方、ステップＳ３０６の判別の結果、ＨＤＤ１０６の状態確認回数がＳＲＡＭ１０８に格納された既定回数を超過しているときは、アクセスエラーの通知をＯＳ２０６に返却し（ステップＳ３０７）、本処理を終了する。
【００４８】
図５は、図３におけるステップＳ７０３のエラー表示処理のフローチャートである。
【００４９】
図５において、エラー表示処理は、エラー制御モジュール２０２により実行される。まず、ＳＲＡＭ１０８等の不揮発性記憶装置に格納されたエラー保護モードフラグを参照することにより、現在のモードがエラー保護モードであるか否かを判別する（ステップＳ４０１）。
【００５０】
ステップＳ４０１の判別の結果、現在のモードがエラー保護モードであるときは、ステップＳ４０２に進む。一方、ステップＳ４０１の判別の結果、現在のモードがエラー保護モードではなく通常モードであるときは、ステップＳ４０３に進む。
【００５１】
ステップＳ４０３では、ＨＤＤの交換があったか否かを構成変更検出モジュール２０５に問い合わせ、構成変更検出モジュール２０５の回答を参照して、ＨＤＤの交換があったか否かを判別する（ステップＳ４０４）。
【００５２】
ステップＳ４０４の判別の結果、ＨＤＤの交換がなかったときは、ステップＳ４０２に進む。一方、ステップＳ４０４の判別の結果、ＨＤＤの交換があったときは、エラー保護モードへの移行を指示する旨をＯＳ２０６に返却し（ステップＳ４０５）、本処理を終了する。
【００５３】
一方、ステップＳ４０２では、ＣＰＵ１０２は、エラー表示を行うと共に、システムを停止し、本処理を終了する。
【００５４】
なお、構成変更検出モジュールは、ＨＤＤに対して情報要求コマンドを発行する事により、モデル名やバージョン番号を取得し、これらをＳＲＡＭ１０８等の不揮発性記憶装置に格納し、画像形成装置の起動毎に差異があったかどうかを確認する。
【００５５】
図６は、図４におけるステップＳ３０２のエラー保護モード処理のフローチャートである。
【００５６】
図６において、まず、ＣＰＵ１０２は、ディスクコントローラ１０５に対してＨＤＤ１０６のリセットを指示する（ステップＳ８０１）。
【００５７】
次に、ＨＤＤ１０６のリセット処理が完了しＨＤＤ１０６がアクセス可能なレディ状態になっているか否かを判別する（ステップＳ８０２）。
【００５８】
ステップＳ８０２の判別の結果、ＨＤＤ１０６がアクセス可能なレディ状態になっていないときは、ステップＳ８０８に進む。一方、ステップＳ８０２の判別の結果、ＨＤＤ１０６がアクセス可能なレディ状態になっているときは、ステップＳ８０４に進む。
【００５９】
ステップＳ８０８で、ＳＲＡＭ１０８に格納された既定時間ウェイトした後、ＨＤＤ１０６の状態確認回数がＳＲＡＭ１０８に格納された既定回数を超過しているか否かを判別する（ステップＳ８０９）。
【００６０】
ステップＳ８０９の判別の結果、ＨＤＤ１０６の状態確認回数がＳＲＡＭ１０８に格納された既定回数を超過していないときは、ステップＳ８０２に戻り、ＨＤＤ１０６がアクセス可能なレディ状態になっているか否かを判別する。
【００６１】
一方、ステップＳ８０９の判別の結果、ＨＤＤ１０６の状態確認回数がＳＲＡＭ１０８に格納された既定回数を超過しているときは、ステップＳ８１０に進む。ステップＳ８１０では、予めＳＲＡＭ１０８等の不揮発性記憶装置に格納された代替ウェイト時間を取得する。次に、代替ウェイト時間の取得に成功したか否かを判別する（ステップＳ８１１）。
【００６２】
ステップＳ８１１の判別の結果、代替ウェイト時間の取得に成功したときは、取得した代替ウェイト時間に基づいて、ＳＲＡＭ１０８に格納された既定時間及び既定回数を変更し（ステップＳ８１２）、ステップＳ８０２に戻る。
【００６３】
一方、ステップＳ８１１の判別の結果、代替ウェイト時間の取得に失敗したとき、即ちこれ以上代替ウェイト時間が設定されていないときは、アクセスエラーの通知をＯＳ２０６に返却し（ステップＳ８１３）、本処理を終了する。
【００６４】
ステップＳ８０４では、履歴管理モジュール２０４に状態確認間隔及び状態確認回数を含む情報を通知する。通知された履歴管理モジュール２０４は、ＳＲＡＭ１０８等の不揮発性記憶装置に通知内容と通知回数を格納するとともに、通知回数をＯＳ２０６に返却する。
【００６５】
ステップＳ８０５では、ＯＳ２０６に返却された通知回数、即ちエラー保護モードの処理によりＨＤＤアクセスに成功した回数が既定値を超過しているか否かを判別する。ステップＳ８０５の判別の結果、通知回数が既定値を超過しているときは、ステップＳ８０６に進む。ステップＳ８０６では、状態確認間隔と状態確認回数を、ＳＲＡＭ１０８等の不揮発性記憶装置に格納された通常モードにおける既定値（ステップＳ３０５及びステップＳ３０６で参照）として設定し、ステップＳ８０７に進む。
【００６６】
一方、ステップＳ８０５の判別の結果、通知回数が既定値を超過していないときは、アクセス成功の通知をＯＳ２０６に返却し（ステップＳ８０７）、本処理を終了する。
【００６７】
図７及び図８は、図１におけるディスクコントローラ１０５に対してリセット指示を出した場合に、ＨＤＤ１０６がアクセス可能となるレディ状態になるまでの時間経過を示す図である。
【００６８】
図７に示すように、ディスクコントローラ１０５に対してリセット指示を行うと、ディスクコントローラ１０５に接続されたＨＤＤ１０６が、最大でＭＡＸｔ時間だけリセット状態となる。ＭＡＸｔはＨＤＤのモデル毎に既定されており、これを超える場合にはＨＤＤが故障していると判断される。
【００６９】
図７の例では、既定のウェイト時間を空けた上で、ＭＡＸｔ時間内で状態確認を複数回行っているが、状態確認が行われるタイミングで、ＨＤＤがリセット状態から復帰して、処理を受付可能なレディ状態にならない。したがって状態確認回数が既定回数を超過し、アクセスエラーとなる（図４のＳ３０６でＹＥＳ）。
【００７０】
一方、エラー保護モードでは、図８に示すように、ディスクコントローラ１０５に対してリセットを指示した後、ＨＤＤ１０６の状態確認を行う間隔を、例えば、図７の間隔の１／２に狭める。これにより、ＭＡＸｔ時間内で、ＨＤＤ１０６がレディ状態になったことを検出可能となる（図６のステップＳ８０２でＹＥＳ）。
【００７１】
本実施の形態のエラー保護モード処理では、ＨＤＤ１０６のリセットからレディになるまでのタイミングに着目して、ウェイト時間と繰り返し回数を変更する場合に関して説明したが、本発明はこれに限られるものではない。ＨＤＤ１０６へのリセット処理だけでなく、ＨＤＤ１０６の電源のＯＦＦ／ＯＮや自己診断モードの実行等を組み合わせてもよい。これにより、通常モードにおけるアクセス処理ではエラーとなっていたケースが、エラー保護モード処理により正常アクセスとなる確率を高めることが可能となる。
【００７２】
以上、説明したように本実施の形態によれば、ＨＤＤアクセスモジュールにおいて、ＨＤＤへのアクセスに失敗した場合に、エラー処理モジュールにおいて、ＨＤＤの交換が最近行われたかどうかの判別を行う。直近にＨＤＤの交換が行われていれば、直ぐにはエラー表示を行わずに、ＨＤＤアクセスモジュールに対して、エラー保護モードへの移行を通知する。この通知に呼応してＨＤＤアクセスモジュールは、エラー保護モードとして、通常のアクセス処理とは異なるタイミングや手法を用いてアクセスを試みる。エラー保護モードにおける処理によりＨＤＤへのアクセスが成功したか否かを記録しておき、ＨＤＤアクセスモジュールがＨＤＤアクセス時にこの情報を参照することにより、エラー保護モードにおける処理を実施するか否かを判断する。
【００７３】
以上により、ＨＤＤの交換に伴いアクセスタイミングがずれることにより、ＨＤＤアクセスに失敗し、エラーを表示して画像形成装置が停止することを抑制することを可能にするものである。
【００７４】
［第２の実施の形態］
第１の実施の形態では、ＨＤＤ１０６に対するアクセスに関して説明したが、その他の接続可能なデバイスに関しても同様に、通常処理に加えて通常とは異なるアクセス手法を試行することにより、エラーによるシステム停止の低減を図ることが可能である。
【００７５】
例えば、画像形成装置のコントローラは熱を発生する部位があるため、排熱のためファンを配置している。ファンは電流を流すことでモータを回転させ、その先に接続された羽根が回転することで、一定方向に空気の流れを生み出すものである。ファンはモータを用いているため、耐用時間が定められており、耐用時間が経過した場合、あるいは塵が詰まること等によりモータの回転軸が変芯した場合には、新しいものに交換する必要がある。ファンが停止した場合、画像形成装置内の温度が上昇し、熱に弱いチップ等の破損や、発熱や発火の可能性も生じることから、モータが回転しているか否かを識別するファンロック検知信号が具備されている。
【００７６】
図２のデバイスドライバ２００は、ファンに対するアクセスを行う。デバイスアクセスモジュール２０１によりファンロック検知信号が有効になったと判定した場合に、エラー制御モジュール２０２は、ファンが停止している旨を、ＬＣＤ等の表示部に表示し、一定時間経過後、画像形成装置の電源を切断する。
【００７７】
しかし、ファンを交換した場合は、モータの特性により、電源投入から、ファンロック検知信号が有効とならない状態になる回転数まで上昇するのに時間がかかる場合があり、この場合、ファンロック状態と認識され、エラー表示となる場合がある。
【００７８】
ここで、第１の実施の形態で説明したように、ファンが交換されたか否かを、構成変更検出モジュール２０５により判別する。この判別の結果、ファンが交換された場合において、ファンロックを検知したときは、エラー保護モードモジュール２０３は、ファンロック検出のウェイト時間と回数を制御する。これにより、モータ特性によりファンロックと誤検出されることを回避することができる。
【００７９】
また、本発明の目的は、以下の処理を実行することによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【００８０】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００８１】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【００８２】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００８３】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【符号の説明】
【００８４】
１００  コントローラボード
１０２  ＣＰＵ
１０５  ディスクコントローラ
１０６  ＨＤＤ
１０８  ＳＲＡＭ
【図１】
2010268355.tif 000003
【図２】
2010268355.tif 000004
【図３】
2010268355.tif 000005
【図４】
2010268355.tif 000006
【図５】
2010268355.tif 000007
【図６】
2010268355.tif 000008
【図７】
2010268355.tif 000009
【図８】
2010268355.tif 000010