(57)【特許請求の範囲】
【請求項１】
記憶装置のジャーナル領域にファイルを書き込んだ後に当該記憶装置のファイルシステム領域にファイルを書き込むジャーナリング機能を備える画像形成装置であって、
前記ジャーナル領域と前記ファイルシステム領域とを備え、前記ジャーナリング機能を用いてファイルが書き込まれる第１の記憶装置と、
前記ファイルシステム領域のファームウェアを更新するための更新ファームウェアを記憶する第２の記憶装置と、
前記更新ファームウェアに基づいて、前記ファイルシステム領域のファームウェアを更新する更新手段と、
前記更新手段が前記ファイルシステム領域のファームウェアを更新する場合に、前記ジャーナリング機能を無効にする制御手段とを備え、
前記ファイルシステム領域のファームウェアの更新が失敗した場合、前記更新手段は、前記更新ファームウェアに基づいて、前記ファイルシステム領域のファームウェアの更新を再度実行することを特徴とする画像形成装置。
【請求項２】
前記ファイルシステム領域のファームウェアの更新が成功した場合、前記制御手段は、前記ジャーナリング機能を有効にすることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記第１の記憶装置は、ハードディスクであることを特徴とする請求項１又は２に記載の画像形成装置。
【請求項４】
前記第２の記憶装置は、フラッシュディスクであることを特徴とする請求項１乃至３のいずれか１項に記載の画像形成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファームウェア更新方法、画像形成装置およびコンピュータプログラムに関する。
【背景技術】
【０００２】
画像形成装置を制御するためのファームウェアを更新することができるファームウェアアップデート機能を備えた画像形成装置が提供されている。ファームウェアアップデート機能は、画像形成装置の機能を向上させたり、不具合を解消させたりする目的で、画像形成装置のファームウェアを新しいファームウェアに書き換えるために必要となる場合がある。
【０００３】
しかし、ファームウェアを更新している最中に、停電や地震の影響などにより予期せず画像形成装置に電源断が発生する場合がある。電源断が発生すると、新しいファームウェアの書き込みが不完全な状態で停止してしまい、ファームウェアの更新が失敗する場合がある。この場合には、画像形成装置を再起動させることが不可能になる可能性があった。
【０００４】
そこで従来の画像形成装置には、ファームウェアアップデート機能により更新されるファームウェアとは別にもう一つファームウェアを用意しておき、アップデートが失敗した時には、もう一つのファームウェアを起動する構成とするものがあった。このような構成をとる画像形成装置では、もう一つのファームウェアに、例えばファームウェアアップデート機能を再実行するような機能を備えておくこと等により、アップデートが失敗した状態から、画像形成装置を復旧することが可能となる。例えば特許文献１が開示する通信装置は、ファームウェアのダウンロード後に、ファームウェアが書き換え中か書き換え完了かを示すフラグを設定し、通信装置の起動時にファームウェアが書き換え中の場合はリカバリを行う。特許文献１が開示する通信装置を画像形成装置として適用することにより、画像形成装置は、ファームウェアのアップデートに失敗した時でも、再起動した際にアップデートを再実行することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−３１８８７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
近年では、ファームウェアや画像データの管理にファイルシステムを用い、画像形成装置の記憶装置に各種データをファイルとして記憶装置に格納する画像形成装置が一般的に提供されている。ファイルシステムを用いる画像形成装置は、ファームウェアもファイルとして記憶装置等に格納する。
【０００７】
また、近年用いられているファイルシステムにはジャーナリング機能が備えられているのが一般的である。ジャーナリング機能とは、ファイルシステムにおける電源断による異常の発生を防止する機能の一種である。しかしながら、ジャーナリング機能を備えたファイルシステムでは記憶装置へのファイル書き込み性能が低下する。つまり、新しいファームウェアを記憶装置に書き込む際に時間がかかるため、同様にファームウェアアップデートに要する時間が長くなる。多数のファイルから構成される大規模ファームウェアを備える画像形成装置にとっては特に更新に要する時間が必要になるため、ユーザにとって手間である。
【０００８】
本発明は、ファームウェアを更新する場合は、ジャーナリング機能を無効化した状態でファームウェアを更新することにより、ファームウェアの更新に要する時間を低減させるファームウェア更新方法の提供を目的とする。
【課題を解決するための手段】
【０００９】
本発明の一実施形態の画像形成装置は、記憶装置のジャーナル領域にファイルを書き込んだ後に当該記憶装置のファイルシステム領域にファイルを書き込むジャーナリング機能を備える画像形成装置であって、前記ジャーナル領域と前記ファイルシステム領域とを備え、前記ジャーナリング機能を用いてファイルが書き込まれる第１の記憶装置と、前記ファイルシステム領域のファームウェアを更新するための更新ファームウェアを記憶する第２の記憶装置と、前記更新ファームウェアに基づいて、前記ファイルシステム領域のファームウェアを更新する更新手段と、前記更新手段が前記ファイルシステム領域のファームウェアを更新する場合に、前記ジャーナリング機能を無効にする制御手段とを備える。前記ファイルシステム領域のファームウェアの更新が失敗した場合、前記更新手段は、前記更新ファームウェアに基づいて、前記ファイルシステム領域のファームウェアの更新を再度実行する。
【発明の効果】
【００１０】
本発明のファームウェア更新方法によれば、ファームウェアを更新する場合はジャーナリング機能を無効化することにより、ファームウェアの更新に要する時間を低減させることが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る画像形成装置のシステムブロック図である。
【図２】画像形成装置のコントローラ部のブロック図である。
【図３】画像形成装置のハードディスク装置の記憶内容構成図である。
【図４】ジャーナリング機能の概要図である。
【図５】本発明のファームウェアアップデートのフロー図である。
【発明を実施するための形態】
【００１２】
図１は本実施形態の画像形成装置の構成例を示す図である。画像形成装置１は、スキャナ装置２、コントローラ（制御装置）３、プリンタ装置４、操作部５、ハードディスク装置６、ＦＡＸ装置７、電源スイッチ１０を備える。スキャナ装置２は、原稿給紙ユニット（ＤＦユニット）２１、およびスキャナユニット２２を備える。また、プリンタ装置４は、マーキングユニット４１、給紙ユニット４２、および排紙ユニット４３を備える。
【００１３】
スキャナ装置２は、原稿などの紙媒体から光学的に画像を読み取り、デジタル画像に変換する。コントローラ３は、上述した各モジュールに指示を出す事により画像形成装置上でジョブを実行させる。プリンタ装置４は、デジタル画像を紙デバイスに出力する。本装置の操作を行なうための操作部５は、コントローラ３から指示を受け画像形成装置１の操作を行う。ハードディスク装置６は、デジタル画像や画像形成装置を制御するファームウェア等を記憶する。ＦＡＸ装置７は、電話回線等にデジタル画像を送信する。画像形成装置１は、ＬＡＮ８などのネットワークを経由して、例えばコンピュータ９からデジタル画像の入出力や、ジョブの発行や機器に関する指示等も行なう。
【００１４】
スキャナ装置２が備える原稿給紙ユニット２１は、自動的に原稿束を自動的に逐次入れ替える。スキャナユニット２２は、原稿を光学スキャンしデジタル画像に変換する。スキャナユニットにより変換された画像データは、コントローラ３に送信される。
【００１５】
プリンタ装置４が備える給紙ユニット４２は、紙束から一枚ずつ逐次給紙し、マーキングユニット４１が給紙された紙に画像データを印刷する。また、プリンタ装置４が備える排紙ユニット４３は、印刷された紙を排紙する。
【００１６】
なお、操作部５は、ユーザが画像形成装置１に画像複写等の動作を指示したり、画像形成装置１の各種情報をユーザに提示したりするための、非図示の操作ボタンおよび液晶画面等の表示パネルを備える。
【００１７】
電源スイッチ１０はトグル型スイッチであり、ユーザは電源スイッチ１０を操作することで画像形成装置１の電源をＯＮ／ＯＦＦすることが可能である。
【００１８】
画像形成装置１は多彩なジョブを実行可能である。例えば、画像形成装置１は、以下の機能を有する。
・複写機能
スキャナ装置２から読み込んだ画像をハードディスク装置６に記録し、同時にプリンタ装置４を使用して印刷を行なう。
・画像送信機能
スキャナ装置２から読み込んだ画像を、ＬＡＮ８を介してコンピュータ９に送信する。
・画像保存機能
スキャナ装置２から読み込んだ画像をハードディスク装置６に記録し、必要に応じて画像送信や画像印刷を行なう
・画像印刷機能
コンピュータ９から送信された例えばページ記述言語を解析し、プリンタ装置４で印刷する。
【００１９】
図２は、コントローラの機能ブロック図の例である。本図を用いて本発明を具体的に適用するモジュールであるコントローラ３について説明する。コントローラ３は、メインボード２００とサブボード２２０とを備える。
【００２０】
メインボード２００は、本実施形態では汎用的なＣＰＵシステムである。メインボード２００は、ボード全体を制御するＣＰＵ２０１、ＢＩＯＳとも呼ばれる初期プログラムが含まれるブートロム２０２、ＣＰＵ２０１が主記憶メモリとして使用するメモリ２０３を備える。また、メインボード２００は、外部バスとのブリッジ機能を持つバスコントローラ２０４、電源断された場合でも消えない情報を保持する不揮発性メモリ２０５を備える。メインボード２００は、ストレージ装置を制御するディスクコントローラ２０６、半導体デバイスで構成された比較的小容量なストレージ装置であるフラッシュディスク（ＳＳＤ等）２０７、ＵＳＢメモリ２０９を制御可能なＵＳＢコントローラ２０８も備える。フラッシュディスク２０７は、ＣＰＵ２０１が実行するオペレーティングシステム（ＯＳ）やハードディスク装置６に格納された画像形成装置ファームウェアを更新するためのアップデートモードファームウェア２１２などのプログラムを備える。
【００２１】
また、メインボード２００は、電源制御回路２１１を備える。電源制御回路２１１は、不図示のリセット回路を制御してコントローラ３全体をリセットすることが可能なように構成されている。ＣＰＵ２０１は電源制御回路２１１を介してコントローラ３をリセットすることが可能であり、リセットによって画像形成装置１を再起動させることができる。
【００２２】
また、メインボード２００の外部には、外部記憶装置として機能するＵＳＢメモリ２０９、操作部５、ハードディスク装置６等が接続される。また、ネットワークインターフェース２１０を介してＬＡＮ８が接続され、コンピュータ９等と相互に通信することができる。
【００２３】
サブボード２２０は、比較的小さな汎用ＣＰＵシステムと、画像処理ハードウェアから構成される。サブボード２２０は、サブボード全体を制御するＣＰＵ２２１、ＣＰＵ２２１が主記憶メモリとして使用するメモリ２２３、外部バスとのブリッジ機能を持つバスコントローラ２２４を備える。ＣＰＵ２２１は、バスコントローラ２２４，２０４を介してＣＰＵ２０１と通信する。サブボード２２０はさらに、リアルタイムデジタル画像処理を行なう画像処理プロセッサ２２７とデバイスコントローラ２２６を有する。
【００２４】
また、サブボード２２０の外部には、スキャナ装置２とプリンタ装置４とＦＡＸ装置７等が接続される。画像処理プロセッサ２２７は、デバイスコントローラ２２６を介してプリンタ装置４およびスキャナ装置２にデジタル画像データの受け渡しを行なう。なお、ＦＡＸ装置７に関しては、ＣＰＵ２２１が直接制御を行なう。
【００２５】
本図はブロック図であり簡略化して記載している。例えばＣＰＵ２０１、ＣＰＵ２２１等にはチップセット、バスブリッジ、クロックジェネレータ等のＣＰＵ周辺ハードウェアが多数含まれているが、説明の粒度的に不必要であるため簡略化して記載しており、このブロック構成が本発明を制限するものではない。
【００２６】
コントローラ３の動作について、紙デバイスによる画像複写を例に説明する。ユーザが操作部５から画像複写を指示すると、ＣＰＵ２０１がＣＰＵ２２１を介してスキャナ装置２に画像読み取り命令を送る。スキャナ装置２は、紙原稿を光学スキャンし、スキャンした紙原稿をデジタル画像データに変換して、そしてデバイスコントローラ２２６を介して画像処理プロセッサ２２７に入力する。画像処理プロセッサ２２７は、ＣＰＵ２２１を介してメモリ２２３にＤＭＡ転送を行いデジタル画像データの一時保存を行なう。
【００２７】
ＣＰＵ２０１は、デジタル画像データがメモリ２２３に一定量もしくは全て入ったことを確認すると、ＣＰＵ２２１を介してプリンタ装置４に画像を出力するように指示を出す。ＣＰＵ２２１は、画像処理プロセッサ２２７にメモリ２２３の画像データの位置を教える。ＣＰＵ２２１は、プリンタ装置４からの同期信号に従って、画像処理プロセッサ２２７とデバイスコントローラ２２６を介してメモリ２２３上の画像データをプリンタ装置４に送信する。以上の処理により、プリンタ装置４は紙デバイスにデジタル画像データを印刷する。
【００２８】
複数部印刷を行なう場合は、ＣＰＵ２０１がメモリ２２３の画像データをハードディスク装置６に対して保存を行うため、２部目以降はスキャナ装置２から画像をもらわずともプリンタ装置４に画像を送ることが可能である。
【００２９】
図３は、ハードディスク装置の記憶内容を模式的に表したものである。ハードディスク装置６は、画像形成装置１のＯＳの機能の１つであるファイルシステムによって管理されており、各種のデータは個別にファイルとして記録される。本発明の画像形成装置は、ジャーナリング機能と呼ばれる機能を備えたファイルシステムを用いている。ハードディスク装置６の内部は、第１格納手段であるジャーナル領域６０２と、第２格納手段であるファイルシステム領域６０１の２つの領域に区画分割された状態となっている。
【００３０】
ファイルシステム領域６０１は、ハードディスク装置６に記憶するべきファイルを格納する領域である。ファイルシステム領域６０１には、画像形成装置を制御するためにＣＰＵ２０１により実行される画像形成装置ファームウェア６０３や、画像形成装置により処理される画像データ６０４がファイルとして格納されている。ジャーナル領域６０２は、ファイルシステムにより内部的に使用される特別な領域である。
【００３１】
ここで、ジャーナリング機能について説明する。ジャーナリング機能とは、ファイル書き込みの最中に電源断が起きた場合に、ファイルシステムに異常が発生することを防止する機能である。ジャーナリング機能を持たないファイルシステムにおいてファイルをハードディスク装置へ書き込んでいる最中に電源断が発生すると、書き込みが中途半端になり、異常が発生する場合がある。例えば、書き込んだはずのファイルが途中までしか読みだせない、書き込んだ内容と異なる内容が読みだされる、等の異常が起きる場合がある。ジャーナリング機能は、このような異常の発生からファイルを保護するための機能であり、書き込みが中途半端になっている場合に自動的にファイルの修復を行う。
【００３２】
本発明の画像形成装置では、ジャーナリング機能を備えたファイルシステムを用いることにより、ハードディスク装置６に格納される画像データ６０４が電源断により異常な状態となってしまうことを防止している。
【００３３】
図４は、ファイルシステムのジャーナリング機能の基本概念について説明した図である。図４（Ａ）は、ジャーナリング機能を備えたファイルシステムにおけるファイル書き込み動作の概要を示す。ジャーナリング機能を備えたファイルシステムでは、ＣＰＵは、ファイルを書き込むことにより更新される内容を、まずハードディスク装置６のジャーナル領域に対して書き込む（図４（Ａ）−（１））。ジャーナル領域６０２に対する書き込みを終えると、ＣＰＵ２０１はジャーナル領域に対する書き込みが完了していることを示すため、ジャーナル書き込み完了情報をジャーナル領域６０２に書き込む（図４（Ａ）−（２））。これらの処理が完了した後、ＣＰＵ２０１はファイルをファイルシステム領域６０１に書き込み、この一連の動作によってファイル書き込みが完了する（図４（Ａ）−（３））。ジャーナル領域６０２の内容は全ての処理が完了した後に破棄される。一般にジャーナリング機能を備えたファイルシステムではジャーナリング機能を持たないファイルシステムと比較すると、ジャーナル領域への書き込み動作が存在するためファイル書き込みに時間がかかる特徴がある。
【００３４】
図４（Ｂ）はジャーナリング機能を備えたファイルシステムで電源断が発生した場合に自動的に実行される修復処理について説明したフローチャートである。電源が復旧した後、ＣＰＵはこのフローに示す処理を実行する。
【００３５】
Ｓ４０１において、ＣＰＵ２０１はハードディスク装置６のジャーナル領域６０２を調べ、ジャーナル書き込み完了情報が書き込まれているかどうかを調べる。ジャーナル書き込み完了情報が書き込まれていないならば、ジャーナル領域６０２への書き込み途中で電源断が発生したことを意味するのでＳ４０２へ進み、書き込まれているならばＳ４０３へ進む。Ｓ４０２において、ＣＰＵ２０１は、図４（Ｄ）に示すようなロールバック動作を行う。ロールバック動作の場合、ＣＰＵ２０１がジャーナル領域に途中まで書き込まれている内容を破棄することで、ファイルシステム領域６０１の内容をファイル書き込み開始前の状態に維持する。ファイルシステム領域６０１へのファイルの書き込み途中で電源断が発生した場合は、Ｓ４０３において、であるので、ＣＰＵ２０１は図４（Ｃ）に示すようなロールフォーワード動作を行う。ロールフォーワード動作では、ＣＰＵ２０１はジャーナル領域６０２に書き込んだ内容に基づいてファイルシステム領域６０１へ再度ファイルの書き込みを実施する。これによりＣＰＵ２０１はファイルの書き込みを正しく完了させる。以上の動作により、ジャーナリング機能は電源断による異常が発生したとしてもファイルを保護することが可能となる。
【００３６】
もちろん図４はあくまでジャーナリング機能の基本的な概念について説明したものであって、ファイルシステムの個別の実装方式によっては実際の動作は細かく異なる場合がある。しかし本発明はジャーナリング機能を用いた画像形成装置に一般的に適用可能であり、特定のファイルシステムを用いた構成に限定されるものではない。
【００３７】
本発明を適用した画像形成装置におけるファイルシステムのファイル更新方法について説明する。図５は、本発明の画像形成装置のファームウェアアップデート機能の動作のフローチャートである。本発明の画像形成装置１は、ファームウェアアップデート機能を使用する際にはファームウェアアップデート機能専用のファームウェアを用いて画像形成装置１を起動するように構成される。また一般的に、ファームウェアアップデート機能を操作するユーザは画像形成装置のメンテナンスを担当するサービスマンである。ユーザが画像形成装置１の電源スイッチ１０を操作してＯＮ状態にすることにより、ＣＰＵ２０１はこのフローの実行を開始する。
【００３８】
まずＳ５０１において、ＣＰＵ２０１は、ブートロム２０２に格納された初期プログラムの実行を開始する。初期プログラムに従ってＣＰＵ２０１はフラッシュディスク２０７からＯＳをメモリ２０３へ読み込んで実行開始し、Ｓ５０２へ進む。
【００３９】
ユーザは電源スイッチ１０をＯＮ状態にした直後に操作部５の所定の操作ボタンを操作することによりファームウェアアップデート機能の実行を指示することができる。Ｓ５０２において、ＣＰＵ２０１は、ユーザがファームウェアアップデート機能の実行を指示しているかどうか判断する。すなわち、ＣＰＵ２０１は、ファームウェアの更新指示があるかを判断し、該更新指示がある場合に、ファームウェアを更新すると判断する判断手段として機能する。ファームウェアアップデート機能の実行が指示されている場合、処理はＳ５０３へ進む。
【００４０】
Ｓ５０３において、ＣＰＵ２０１は、フラッシュディスク２０７からアップデートモードファームウェア２１２をメモリ２０３へ読み込んでファームウェア２１２を起動する。Ｓ５０４において、ＣＰＵ２０１は、ＵＳＢコントローラ２０８にＵＳＢメモリ２０９が接続されているかどうか確認する。ＣＰＵ２０１は、ＵＳＢメモリ２０９が接続されていない場合、接続されるまでＳ５０４の処理を繰り返すか、または接続されるまでＳ５０４の状態を維持する。ＵＳＢメモリ２０９が接続されているならば、処理はＳ５０５へ進む。
【００４１】
Ｓ５０５において、ＣＰＵ２０１は、ＵＳＢメモリ２０９に画像形成装置の更新用ファームウェアが格納されているかどうか確認する。本実施形態では、更新用ファームウェアは、ＵＳＢ等、画像形成装置１の外部に設置された記憶メモリに格納されているものとする。従って、ファームウェアアップデート中に電源断などが生じた場合でも、更新用ファームウェア自体が破損したり消失する可能性が大幅に低減される。ファームウェアが格納されていないならば処理はＳ５０４へ戻り、格納されているならばＳ５０６へ進む。Ｓ５０６においてＣＰＵ２０１は、ファームウェアアップデート機能を実行中であることを示すアップデート中フラグを不揮発性メモリ２０５に設定する。すなわち、ＣＰＵ２０１は、更新用ファームウェアがＵＳＢメモリ２０９に記憶されている場合に、更新中であることを示す状態情報を設定する設定手段として機能する。
【００４２】
Ｓ５０７において、ＣＰＵ２０１は無効化手段として機能し、ＯＳのインターフェースを呼び出した後に、ファイルシステムのジャーナリング機能を無効にする。ジャーナリング機能の無効化は、これに限定されるわけではないが、先述のアップデート中フラグのセット後で、かつハードディスク装置６内の画像形成装置ファームウェア６０３の更新を開始する前に行われることが望ましい。
【００４３】
アップデートモードファームウェア２１２は、ファームウェアアップデート機能のみを提供するものであり、このファームウェアを実行している間は画像形成装置１が画像形成動作を行うことはない。このためファームウェアの更新以外の目的でのハードディスク装置６への書き込みが発生することは無く、画像データ６０４を書き換えることも無い。従って、電源断などが生じた場合でも、画像データ６０４等の情報に異常が生じることはない。ジャーナリング機能を停止することにより、ジャーナリング機能による異常発生防止の効果を受けられなくなるのはハードディスク装置６内の画像形成装置ファームウェア６０３のみである。
【００４４】
Ｓ５０８において、ＣＰＵ２０１は、ハードディスク装置６内の画像形成装置ファームウェア６０３のファイルを新しいファームウェアと置き換えるため、もともと記憶されていた画像形成装置ファームウェア６０３、つまり更新前のファームウェアを削除する。Ｓ５０９において、ＣＰＵ２０１は、ＵＳＢメモリ２０９から画像形成装置ファームウェアを読み取り、ハードディスク装置６へ新しい画像形成装置ファームウェア６０３のファイルとして書き込む。すなわち、ＣＰＵ２０１は、ジャーナリング機能が無効化された状態でファームウェアを更新用のファームウェアで更新する更新手段として機能する。無効化された状態でファームウェアの更新を行う更新処理により、ジャーナル機能を用いた更新処理に比べ更新時間を短縮することが可能となる。
【００４５】
更新用ファームウェアの書き込みが完了すると、Ｓ５１０においてＣＰＵ２０１は有効化手段として機能し、ファイルシステムのジャーナリング機能を有効化する。Ｓ５１１において、ＣＰＵ２０１は、アップデート中フラグを不揮発性メモリ２０５からクリアする。ジャーナリング機能の有効化は新しい画像形成装置ファームウェア６０３の書き込みが完全に終了した後で、かつアップデート中フラグをクリアする前に行うのが望ましい。すなわち、ＣＰＵ２０１は、ジャーナリング機能が有効化されたときに更新中であることを示す状態情報の設定を解除する解除手段として機能する。ハードディスク装置６内の画像形成装置ファームウェア６０３の更新が終わると、ＣＰＵ２０１は自動的に画像形成装置１を再起動させる。Ｓ５１２において、ＣＰＵ２０１は電源制御回路２１１を通じてコントローラ３をリセットし、画像形成装置１を再起動させる。
【００４６】
画像形成装置１の再起動によりＣＰＵ２０１は図５のフローを再び最初から実行することになる。この時ユーザはファームウェアアップデート機能の実行を指示しないので、Ｓ５０２においてＣＰＵ２０１はファームウェアを更新しないと判断し、処理はＳ５１３に進む。また、Ｓ５１３においてＣＰＵ２０１はアップデート中フラグが設定されているか確認する。ファームウェアが正常に更新を完了している場合はアップデート中フラグは解除されているため、ＣＰＵ２０１が更新を完了したと判断し、処理はＳ５１４へ進む。
【００４７】
Ｓ５１４において、ＣＰＵ２０１は、ハードディスク装置６から画像形成装置ファームウェア６０３をメモリ２０３へ読み込んでファームウェア６０３を起動する。これにより画像形成装置１は更新された新しいファームウェアで起動し、画像形成装置１が備える各種機能、ジョブを実行可能な状態となる。またＣＰＵ２０１は、ファームウェアの更新の完了を判断したことに起因してジャーナリング機能を有効化する。上記のようにして画像形成装置１のファームウェアの更新が完了し、ＣＰＵ２０１はジャーナリング機能を用いてファイルシステムを管理する。
【００４８】
しかし、現実には上述のようなファームウェアアップデート機能の実行中に停電などによる電源断が発生する可能性が稀ではあるが存在する。そこで、ファームウェアアップデート機能の実行中に電源断が発生した場合について説明する。
【００４９】
電源断が発生した後、ユーザが電源スイッチ１０を操作して画像形成装置１を起動させると、ＣＰＵ２０１は図５のフローを再び最初から実行し始める。以下、先述の電源断が発生せずに正常にファームウェア更新が完了した場合との動作の差分についてのみ説明する。
【００５０】
Ｓ５０２において、ＣＰＵ２０１はユーザがファームウェアアップデート機能の実行を指示しているかどうか判断する。なお、電源断が発生した場合にはユーザによる指示があってもよく、または画像形成装置１が自動で判断してもよい。ＣＰＵ２０１が、ファームウェアを更新すると判断した場合にはＳ５０３へ進み、更新しないと判断した場合にはＳ５１３に進む。
【００５１】
Ｓ５１３において、ＣＰＵ２０１はアップデート中フラグがセットされているか確認する。電源断が発生したのが画像形成装置ファームウェア６０３の更新中であり、ファイルの更新処理が完全には完了していない可能性がある場合はアップデート中フラグが設定された状態になっている。このためＣＰＵ２０１は、ファームウェアの更新が更新中に失敗したものと判断し、処理はＳ５０３へ進む。
【００５２】
Ｓ５０３において、ＣＰＵ２０１は、フラッシュディスク２０７からアップデートモードファームウェア２１２をメモリ２０３へ読み込んで実行開始し、ファームウェアアップデート機能を再度実行する。電源断が発生した場合でも、本発明におけるアップデートモードファームウェア２１２は破損することがなく必ず実行可能であることが保証されている。これはアップデートモードファームウェア２１２がファームウェアアップデート機能によって更新されるものではなく、またハードディスク装置６とは異なる記憶装置、例えばＵＳＢメモリ２０９に格納されているためである。
【００５３】
これ以降、先述したファームウェアの更新処理をもう一度実行することによりハードディスク装置６に新しい画像形成装置ファームウェア６０３が正常に書き込まれた状態にすることができる。この時、本発明の画像形成装置ではジャーナリング機能を無効化した状態でファイルを書き込むため、電源断によりハードディスク装置６内の画像形成装置ファームウェア６０３に異常が発生している可能性がある。しかし、仮に異常が発生していてもＳ５０８では、ＣＰＵ２０１が古いファームウェアのファイルを消去する処理を行うため、異常が発生したファイルも同様に消去される。従って、ＣＰＵ２０１は、新しい画像形成装置ファームウェアを改めて書き込むことになるので、例え異常が発生したファイルが存在したとしても、ＣＰＵ２０１は正確にファームウェアを更新することができる。つまり、ファームウェアアップデート機能の実行中に電源断が発生した場合でも、画像形成装置１のファームウェアを正常に更新することができる。
【００５４】
また、Ｓ５０６における処理では、アップデート中フラグの設定を一端解除し、改めてフラグを設定してもよく、あるいはＳ５１３においてＣＰＵ２０１が検知したアップデート中のフラグをそのまま維持し、Ｓ５０７に処理を進める構成としてもよい。また、Ｓ５１０とＳ５１１とにおける処理中に電源断が生じることが想定される。この場合、Ｓ５１３において、アップデート中フラグが設定されている場合、ジャーナリング機能は有効化された状態であるため、ＣＰＵ２０１は、ジャーナリング機能を再度無効化する。Ｓ５０９までの処理において電源断が発生した場合は、ジャーナリング機能が無効化された状態であるため、ＣＰＵ２０１はジャーナリング機能の無効化を維持すればよく、当然のことながらデフォルトにした上で再度無効化してもよい。
【００５５】
尚、本実施の形態ではハードディスク装置６内の画像形成装置ファームウェア６０３は１つのファイルとしたが、あくまで一例であって複数のファイルから構成されるものとしてもよく、本発明はこの構成に限定されるものではない。複数のファイルからファームウェアが構成されている場合、ジャーナリング機能を無効化することにより一層大幅に更新時間を短縮する効果が得られる。
【００５６】
以上のように、本実施形態で説明した画像形成装置のファームウェア更新方法によれば、ファームウェアアップデート機能の実行中にジャーナリング機能を停止することによってアップデートに要する時間を短縮できる。また、ファームウェアアップデート機能を実行中であることを示すアップデート中フラグを設定することによって更新中における電源断の発生を検知し、再度更新することによって正常にファームウェアの更新を完了させることができる。さらに本発明による画像形成装置は、ファームウェアアップデート機能の実行中でない間はジャーナリング機能を用いる。つまり、ファームウェアのファイル以外のファイルはジャーナリング機能を用いて更新を行う。これにより、画像形成装置自体が備える記憶装置を用いた更新処理においても、例えばハードディスク装置内の画像データを保護し、電源断などにおけるファイルの異常発生を防止する効果も得ることができる。
【００５７】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（コンピュータプログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そしてそのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００５８】
３  コントローラ
６  ハードディスク
２０９  ＵＳＢメモリ
【図１】
0005939896.tif 000002
【図２】
0005939896.tif 000003
【図３】
0005939896.tif 000004
【図４】
0005939896.tif 000005
【図５】
0005939896.tif 000006