(57)【要約】【課題】緊急にファームウェアを更新する必要がある場合でも、再度プリントジョブを投入する必要のない画像形成装置、及びプログラムを提供する。【解決手段】メインの制御モジュール４２１にて動作するファームウェアを新たなファームウェアに書き換えるとき、揮発性の符号メモリ４２２２内に画像データが存在する場合には、当該画像データをＨＤＤ４２１９に退避させてから再起動を行い、再起動後にＨＤＤ４２１９に退避されている画像データを符号メモリ４２２２に再度格納する。【選択図】          図２
2004148612.tif 000002
【特許請求の範囲】
【請求項１】
ファームウェアにより動作が制御される画像形成装置において、
ネットワークを介して取得した新たなファームウェアを、第１の記憶手段に格納する格納手段と、
前記新たなファームウェアを動作させるために再起動を指示する再起動手段と、
再起動される前に、揮発性メモリに格納されている画像データと、当該画像データに対応するプリントジョブに関する情報を、不揮発性の第２の記憶手段に退避させる退避手段と、
前記新たなファームウェアの動作が開始するときに、前記第２の記憶手段に退避された画像データ及びプリントジョブに関する情報を読み出し、前記揮発性メモリに再度格納する再格納手段とを含む
ことを特徴とする画像形成装置。
【請求項２】
前記画像形成装置は、
プリントジョブに関する管理を行うジョブ管理手段を備え、
前記再起動手段は、
前記ジョブ管理手段により管理されているプリントジョブの実行状態に基づいて再起動を指示するタイミングを制御する
ことを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記再起動手段は、
プリントジョブが、画像を複数部プリントするプリントジョブである場合に、１部のプリントが終了するのを待って再起動を指示する
ことを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記画像形成装置はさらに、
プリントジョブがネットワークを介して外部から投入されたものである場合に、当該プリントジョブを投入した投入元に対して、新たなファームウェアに更新される旨を通知する通知手段を備える
ことを特徴とする請求項１から３のいずれかに記載の画像形成装置。
【請求項５】
画像形成装置を制御するプロセッサにおいて動作するプログラムにおいて、
更新後の新たなプログラムを動作させるべく再起動の指示があったことを検出する再起動指示検出ステップと、
前記再起動指示検出ステップにおいて再起動の指示が検出された場合に、揮発性メモリに格納されている画像データと、当該画像データに対応するプリントジョブに関する情報を、不揮発性の記憶手段に退避させる退避ステップと、
再起動後の動作開始のとき、前記記憶手段に退避されている画像データ及びプリントジョブに関する情報を読み出し、前記揮発性メモリに再度格納する再格納ステップと
を含む処理をプロセッサに実行させる
ことを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像形成装置及び画像形成装置の動作を制御するプログラムに関する。
【０００２】
【従来の技術】
近年の画像形成装置の動作は、ファームウェアと称されるプログラムにより制御されることが多い。従来、ファームウェアはマスクＲＯＭに格納されており、バージョンアップ等の理由によりファームウェアを更新する必要が生じた場合には、マスクＲＯＭを交換することにより更新を行なっていた。しかし、マスクＲＯＭの交換のためにはサービスマンが画像形成装置の設置場所まで赴く必要があり、ファームウェア更新のためのコストが高いものとなっていた。そこで最近では、ファームウェアをフラッシュＲＯＭなどの書き換え可能な記憶装置に格納するようにして、電子メール等の手段を利用してインターネットを介してファームウェアを送信することにより、ファームウェアの更新を行う技術が考案されている。
【０００３】
【特許文献１】
特開２０００−１１５３９３号公報
【０００４】
【発明が解決しようとする課題】
画像形成装置で問題が発生した場合にサービスセンタにエラーコード等の情報を送信し、サービスセンタ側でエラーコード等を解析、診断して、可能であれば通信回線を通じて対処を行うようなシステムにおいて、画像形成装置で発生した問題が、例えばファームウェアが想定していないような条件で動作したことによるものであると診断された場合など、緊急にファームウェアの更新を行う必要があることがある。
【０００５】
しかしながら、ファームウェアの更新を行い、更新後の新たなファームウェアを動作させる場合には、通常再起動が必要であり、再起動時には画像データを記憶している揮発性メモリも初期化されてしまう。従って、再起動の前にプリントジョブを投入して、実行待ち状態となっていたような場合には、当該プリントジョブもクリアされてしまい、プリントジョブを再度投入する必要があるという問題点があった。
【０００６】
本発明は、係る問題点に鑑みてなされたものであって、緊急にファームウェアの更新処理を行う必要がある場合において、既にプリントジョブが投入されているような場合に、再度プリントジョブを投入する必要がない画像形成装置、及びプログラムを提供することを目的としている。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る画像形成装置は、ファームウェアにより動作が制御される画像形成装置において、ネットワークを介して取得した新たなファームウェアを、第１の記憶手段に格納する格納手段と、前記新たなファームウェアを動作させるために再起動を指示する再起動手段と、再起動される前に、揮発性メモリに格納されている画像データと、当該画像データに対応するプリントジョブに関する情報を、不揮発性の第２の記憶手段に退避させる退避手段と、前記新たなファームウェアの動作が開始するときに、前記第２の記憶手段に退避された画像データ及びプリントジョブに関する情報を読み出し、前記揮発性メモリに再度格納する再格納手段とを含むことを特徴としている。
【０００８】
ここで、第１の記憶手段としては、例えばフラッシュＲＯＭを用いることができるが、これに限定されず、ＭＲＡＭ（マグネチックＲＡＭ）、ＦｅＲＡＭ（強誘電体メモリ）やＯＵＭ（オボニクス・ユニファイド・メモリ）などの各種メモリを用いることもできる。再起動手段としては、例えばＣＰＵのリセット端子にリセット信号を送る電源制御Ｉ／Ｏを用いることができるが、これに限定されない。また、再起動の方法も種々考えられ、電源スイッチをオン・オフするような方法も考えられるし、ソフトウェアリセットとする場合もある。画像読取部や画像形成部を制御するファームウェアがメインのファームウェアと別個のＣＰＵで動作するような場合には、メインの制御モジュールからリセット信号を送ることもある。さらに、ファームウェアの更新内容によって再起動の方法を変えることもできる。
【０００９】
第２の記憶手段としては、例えばＨＤＤ（ハードディスクドライブ）を用いることができるが、これに限定されないのは第１の記憶手段と同様である。また、ネットワーク等を介して接続された外部の記憶装置を用いることもできる。退避手段や再格納手段はプログラムが動作可能なＣＰＵにより構成することができ、例えばファームウェアに含まれるＯＳ（オペレーティング・システム）の機能を利用して実現することができる。
【００１０】
また、前記画像形成装置は、プリントジョブに関する管理を行うジョブ管理手段を備え、前記再起動手段は、前記ジョブ管理手段により管理されているプリントジョブの実行状態に基づいて再起動を指示するタイミングを制御するようにすることが好ましい。
ジョブ管理手段は、例えば、各種センサや他のＣＰＵ等からの信号の入力を受け付け、ジョブの進行状況などを管理するＣＰＵなどにより構成することができ、再起動手段は、例えば前記ジョブ管理手段により管理されているジョブや各種資源の管理テーブルの内容を参照したり、各種信号入力に基づいて再起動のタイミングを制御する（遅延させる）ことができる。例えば、プリントジョブが、画像を複数部プリントするプリントジョブである場合に、１部のプリントが終了するのを待って再起動を指示するようにすれば、再起動時に、既にプリントが終了した分を利用する場合に便宜である。
【００１１】
前記画像形成装置はさらに、プリントジョブがネットワークを介して外部から投入されたものである場合に、当該プリントジョブを投入した投入元に対して、新たなファームウェアに更新される旨を通知する通知手段を備えることが好ましい。投入元では、通知に従って、種々の表示をすることができ、その表示方法はファームウェアを更新する旨に限らず、例えば、ジョブが一旦中断する旨や、再開する旨など任意の処理が可能である。
【００１２】
なお、本発明に係るプログラムは、画像形成装置を制御するプロセッサにおいて動作するプログラムにおいて、更新後の新たなプログラムを動作させるべく再起動の指示があったことを検出する再起動指示検出ステップと、前記再起動指示検出ステップにおいて再起動の指示が検出された場合に、揮発性メモリに格納されている画像データと、当該画像データに対応するプリントジョブに関する情報を、不揮発性の記憶手段に退避させる退避ステップと、再起動後の動作開始のとき、前記記憶手段に退避されている画像データ及びプリントジョブに関する情報を読み出し、前記揮発性メモリに再度格納する再格納ステップとを含む処理をプロセッサに実行させることを特徴とする。このプログラムは通常はファームウェアとして供給されるが、これに限らず、例えばＣＤ−ＲＯＭ等の各種記録媒体に格納され、ファームウェアとは別個のプログラムとして実行される場合もある。
【００１３】
【発明の実施の形態】
以下、本発明に係る画像形成装置やファームウェアプログラム（以下、単に「ファームウェア」という。）等の実施の形態について、図面を参照しながら説明する。
（１）画像形成装置の管理システムの全体構成
図１は、本実施の形態における画像形成装置の管理システム（以下、単に「管理システム」という。）の構成を示す図である。同図の管理システム１０は、サービスセンタ２０とユーザサイト４０とをインターネット３０にて接続した構成となっている。
【００１４】
サービスセンタ２０は、ユーザサイト４０に対して新たなファームウェアを送信し、ユーザサイト４０では、それまでのファームウェアを、送信されてきた新たなファームウェアで書き換える更新処理を行う。本実施の形態では、新たなファームウェアの送信を、インターネット３０を介した電子メール・メッセージにより行う。送信されてきたファームウェアは、ユーザサイト４０の画像形成装置４２内において、一旦フラッシュＲＯＭ等の書き換え可能な記憶装置に格納され、ファームウェアが動作するＣＰＵの再起動の際にＳＲＡＭ等の記憶手段にロードされて実際の動作を行う。
【００１５】
なお、サービスセンタ２０は複数のユーザサイトに対して各種画像形成装置の管理サービスを提供することができるが、いずれのユーザサイトに対して提供するサービスも新たなファームウェアの送信に関しては同様であるので、本実施の形態においてはユーザサイト４０を例として説明する。
サービスセンタ２０は、ルータ２５を介してインターネット３０に接続されているが、さらにセキュリティの保護のためファイアウォール２４が設けられている。サービスセンタ２０のホストコンピュータ２１は、ＬＡＮ２２を介してファイアウォール２４に接続されており、メールサーバ２３を介して各ユーザサイトと電子メールの送受信を行う。
【００１６】
ユーザサイト４０はルータ４５を介してインターネット３０に接続されており、サービスセンタ２０と同様にセキュリティ保護のためのファイアウォール４４が設けられている。ファイアウォール４４とルータ４５とを介してインターネット３０に接続されているＬＡＮ４７には、画像形成装置４２、クライアントＰＣ４３等が接続されている。ＬＡＮ４７には複数の画像形成装置を接続することが可能である。もっともこれらはユーザサイト４０の構成の一例であり、クライアントＰＣを備えていないユーザサイトもあり得る。
【００１７】
ユーザサイト４０に備えられているメールサーバ４６は、ファイアウォール４４に接続されており、クライアントＰＣ４３や画像形成装置４２等に対して電子メールの送受信サービスを提供する。なお、メールサーバを備えていないユーザサイトのクライアントＰＣや画像形成装置は外部のメールサーバ、例えばインターネットサービスプロバイダ（以下、「ＩＳＰ」と表記する。）が保有するメールサーバを利用することもできる。
【００１８】
本実施の形態での電子メールを利用したファイルの送受信には、例えばＳＭＴＰ（シンプル・メール・トランスファー・プロトコル：ＲＦＣ８２１等）、ＭＩＭＥ（マルチプル・インターネット・メール・エクステンション：ＲＦＣ１５２１等）やＰＯＰ３（ポスト・オフィス・プロトコル・バージョン３：ＲＦＣ１７２５、ＲＦＣ１９３９等）などのプロトコルを利用することができる。
【００１９】
（２）画像形成装置の構成
次に画像形成装置４２内のハードウェア構成について説明する。なお本実施の形態の画像形成装置４２は、複写機やプリンタとしての機能を兼ね備えた、いわゆるＭＦＰ（マルチ・ファンクション・ペリフェラル：デジタル複合機）であるが、本実施の形態の管理システム１０は、ＭＦＰの他にファクシミリ、複写機、プリンタ等、各種の画像形成装置を管理することが可能である。
【００２０】
図２は、画像形成装置４２のうち、特にファームウェアを実行して画像形成装置４２の動作を制御する３つの制御モジュールのハードウェア構成と各制御モジュールの接続状態を示す図である。
３つの制御モジュールはそれぞれ固有の役割を果たしているが、ハードウェア構成はほぼ同様であって、ＣＰＵやメモリ等が内部バスにて接続され、さらに内部バスに接続されたシリアルＩ／Ｆ（インターフェース）等により他の制御モジュールとシリアル通信する他、個別の機能に対応するＧＡ（ゲートアレイ）等が内部バスに接続されて構成されている。
【００２１】
さらに、制御モジュールごとのファームウェアを格納するフラッシュＲＯＭ、作業用メモリとして用いられるＳＲＡＭ（スタティックＲＡＭ）、動作設定等のパラメータを格納したＮＶＲＡＭ（不揮発性ＲＡＭ）が内部バスにそれぞれ接続されている。前記したようにファームウェアは一旦フラッシュＲＯＭに格納された後、再起動の際にＳＲＡＭにロードされるため、ＣＰＵはＳＲＡＭからファームウェアを読み出し、これに従って処理を実行する。
【００２２】
制御モジュール４２１は、画像形成装置４２のメインの制御モジュールであり、ＣＰＵ４２１１、フラッシュＲＯＭ４２１２、ＳＲＡＭ４２１３、ＮＶＲＡＭ４２１４を備えている。また、他の制御モジュール４２３、４２４とシリアル通信するためのシリアルＩ／Ｆ４２１５、４２１６やＬＡＮ４７を介して外部と通信するためのＮＩＣ（ネットワーク・インターフェース・カード）４２１７も内部バスに接続されており、さらに操作パネル４２１８も制御モジュール４２１の制御下にある。
【００２３】
制御モジュール４２１は、操作パネル４２１８等を介して、プリントジョブやコピージョブ、或いはファームウェア更新ジョブを受け付け、ジョブの実行に必要な処理を他の制御モジュール４２３、４２４に振り分けたり、各処理の順序やタイミングを指示する等の全体制御の機能を有する。また、本実施の形態では、外部から送信された画像データやＩＲ部で原稿画像を読み取って得た画像データの圧縮等を行う画像処理部４２２１、圧縮された画像が格納される揮発性メモリである符号メモリ４２２２を備えている。この符号メモリ４２２２は、ＳＲＡＭ４２１３と物理的に同一であってもよく、例えば、いわゆる電子ソート機能により、複数部の印刷がなされるような場合、圧縮された画像データを格納することができる。
【００２４】
本実施の形態の制御モジュール４２１は、ＨＤＤ（ハード・ディスク・ドライブ）４２１９を備えており、ファームウェアの更新要求があったとき、符号メモリ４２２２に画像データが存在する場合に、当該画像データをＨＤＤ４２１９等の記憶手段に退避する処理を行う。なお、ＨＤＤ４２１９は、不図示のＨＤＤ接続Ｉ／Ｆを介して内部バスに接続されており、ＣＰＵ４２１１は当該ＨＤＤ接続Ｉ／Ｆに指示することにより、ＨＤＤ４２１９にアクセスする。
【００２５】
ＮＶＲＡＭ４２１４に格納される各種設定値としては、メールサーバ４６のＩＰアドレス、メールサーバ４６から電子メールをダウンロードする際に必要となるアカウント名、パスワード等がある。前記したように制御モジュール４２１にはＮＩＣ４２１７が接続されており、ＬＡＮ４７等を介してインターネット３０に接続し、電子メールの送受信を行うことができる。
【００２６】
さらに制御モジュール４２１はタイマ４２２０を備えており、例えば、電子メールの受信の有無を確認してダウンロードするためにメールサーバ４６にアクセスするタイミングを取得したり、電子メールの送受信に用いるＳＭＴＰ、ＰＯＰ３等の下位層プロトコルであるＴＣＰ（トランスミッション・コントロール・プロトコル）によるパケット再送制御に必要なタイムアウトを検出するために用いられる。
【００２７】
本実施の形態のリセット部４２２３は、電源ユニット４２５からの電源を各制御モジュールに供給する電源制御Ｉ／Ｏを含んでいる。なお、当該電源制御Ｉ／Ｏは、各制御モジュールのＣＰＵ４２１１、４２３１、４２４１のリセット端子と接続されており、各制御モジュールに対して再起動を指示する機能を備える。各制御モジュールが再起動された場合に、フラッシュＲＯＭに格納された新たなファームウェアがＳＲＡＭにロードされて、実際に動作するようになる。
【００２８】
制御モジュール４２３は、ＣＰＵ４２３１等を内部バスに接続した構成を有しており、さらに原稿画像を読み取るためのイメージリーダ（ＩＲ）の動作を制御するためのＩＲ負荷制御部Ｉ／ＯＧＡ４２３５を備えている。また、制御モジュール４２１と通信するためのシリアルＩ／Ｆ４２３６が内部バスに接続されている。
【００２９】
制御モジュール４２３は、ＩＲ負荷制御部Ｉ／ＯＧＡ４２３５を介して、原稿の紙送りをする搬送モータを制御したり、イメージリーダを駆動する駆動モータや原稿面を照射するランプの点灯を制御したりする。そして、この制御は、操作パネル４２１８にて入力された指示に基づいて制御モジュール４２１が発行する制御命令に従って実行される。
【００３０】
制御モジュール４２４もＣＰＵ４２４１、フラッシュＲＯＭ４２４２、ＳＲＡＭ４２４３、及びＮＶＲＡＭ４２４４を内部バスに接続したハードウェア構成を有しており、さらに制御モジュール４２１とシリアル通信するためのシリアルＩ／Ｆ４２４５を備えている。また、プリント負荷を制御するためのプリント負荷制御部Ｉ／ＯＧＡ４２４６を備えている。
【００３１】
制御モジュール４２４は、画像形成部を制御するモジュールであり、感光体ドラム上に潜像を形成し、これを現像して記録シートに転写し、転写したトナー像を定着して記録シートを排出するまでの一連のプリント動作にかかわるレーザダイオードの点灯制御、ポリゴンミラーや搬送ローラの駆動等の制御を、制御モジュール４２１からの指示に基づいて実行する。
【００３２】
（３）ホストコンピュータ２１の構成
次に、サービスセンタ２０に配備され、ユーザサイト４０等に設置された画像形成装置を管理するホストコンピュータ２１の構成について説明する。なお、本実施の形態では、シングルプロセッサ構成の場合について説明するが、管理する画像形成装置が多数である等の場合にはマルチプロセッサ構成としてもよい。
【００３３】
図３は、ホストコンピュータ２１の構成を示す図である。同図に示されるようにホストコンピュータ２１は、本体部２１４と、これに接続された周辺機器であるディスプレイ２１１、キーボード２１２、マウス２１３からなっている。本体部２１４は、ＣＰＵ２１４４、ＲＯＭ２１４５、ＲＡＭ２１４６等を内部バスにて接続した構成を有している。
【００３４】
本体部２１４は、周辺機器との接続インターフェースとして、ディスプレイ２１１に画像出力するための表示制御部２１４１、キーボード２１２やマウス２１３からの入力を受け付けるための入力制御部２１４２、ＬＡＮ２２に接続するためのＮＩＣ２１４３を備え、これらも内部バスに接続されている。
不図示のインターフェース部を介して内部バスに接続された固定記憶装置２１４７には、本実施の形態においてファームウェアを添付した電子メールが送信される、ホストコンピュータ２１の管理下にある各画像形成装置の電子メールアドレスを含む情報を、画像形成装置ごとに記憶する送信先データベースを格納している他、実際に送信されるファームウェアが格納される。
【００３５】
ホストコンピュータ２１には、例えばＤＢＭＳ（データベース管理システム）がインストールされており、オペレータは当該ＤＢＭＳを介して前記送信先データベースにアクセスすることができるが、ＤＢＭＳを介さず他の手段でアクセスするようにしても構わない。また、ＤＢＭＳの種類として、本実施の形態ではＲＤＢＭＳ（リレーショナルＤＢＭＳ）を用いるものとするが、他の種類のＤＢＭＳを用いてもよい。
【００３６】
（４）ホストコンピュータ２１の処理内容
以上のような構成を有する管理システム１０に関し、以下、具体的な処理内容について説明するが、まず、サービスセンタ２０に設置されているホストコンピュータ２１の処理内容について、特にファームウェア更新のための電子メール送信処理に関する部分について簡単に説明する。図４は、ホストコンピュータ２１の処理内容を示すフローチャートである。
【００３７】
ホストコンピュータ２１は電源の投入により処理を開始し、まず初期化処理を行なう（Ｓ１）。初期化処理の内容としては、ＲＯＭ２１４５から読み出したブートプログラムによるＲＡＭ２１４６の初期化などのハードウェアの初期化、ＯＳ（オペレーティング・システム）や必要なアプリケーションプログラムの起動、ディスプレイ２１１への初期画面の表示などが含まれる。
【００３８】
初期化処理を終了すると、ホストコンピュータ２１は入力待ち状態となる。この状態において、ホストコンピュータ２１は、ファームウェアの更新に関する入力、即ち「通信設定処理」、「画像形成装置登録処理」、「ファームウェア送信処理」の各指示を、キーボード２１２上に配列されたファンクションキーＦ１〜Ｆ３により受け付ける。
【００３９】
ホストコンピュータ２１は、Ｆ１キーが押下されたのを検出すると（Ｓ２：Ｙｅｓ）、通信設定処理を行う（Ｓ３）。具体的には、キーボード２１２などを介して、電子メールの送信に必要なパラメータの設定、例えば、サービスセンタ２０側のＬＡＮ２２に接続されたメールサーバ２３のＩＰアドレス、ホストコンピュータ２１の電子メールアドレス等の入力を受け付け、固定記憶装置２１４７に格納する。
【００４０】
Ｆ１キーが押下されていない場合（Ｓ２：Ｎｏ）に、Ｆ２キーが押下されたことを検出すると（Ｓ４：Ｙｅｓ）、画像形成装置登録処理を行う（Ｓ５）。具体的には、ファームウェアを送信すべき画像形成装置の電子メールアドレスや、画像形成装置内の各制御モジュールの識別子、送信すべきファームウェアのファイル名、その画像形成装置のユーザの名称、住所、電話番号等の情報の入力を受け付け、それらの情報を固定記憶装置２１４７の送信先データベースに格納する。
【００４１】
前記の通り、本実施の形態でホストコンピュータ２１が固定記憶装置２１４７に保持しているデータベースはいわゆるリレーショナルデータベースであって、情報がテーブルの形式で記憶されている。図５は、上記送信先データベースの内容の一例を示す図である。同図に示されるように、送信先データベースでは、管理システム１０による管理の対象である画像形成装置のそれぞれに固有の識別子（以下、「装置ＩＤ」という。）を付与し、さらに画像形成装置が複数の制御モジュールを有している場合には、それぞれに制御モジュールの識別子を付与して、これらをキーとし、各画像形成装置、制御モジュールごとにデータを管理している。データの項目としては、送信先の「電子メールアドレス」、「ファームウェアファイル名」、及びその他の情報を含んでいる。
【００４２】
「制御モジュール識別子」は、画像形成装置４２の如く、一の画像形成装置が複数の制御モジュールを有する場合に、ファームウェアファイル名により指定されるファイルに含まれるファームウェアが、どの制御モジュールを制御するものであるかを識別するための識別子である。ファームウェアは通常バイナリデータの形式で作成される。電子メールにファームウェアを添付すべくテキストに変換する前に、いわゆる圧縮ソフトウェアを用いて、複数のファームウェアをまとめて圧縮するようにしてもよい。
【００４３】
ファイルの圧縮には、各種の圧縮ソフトウェアを用いることができ、圧縮後のファイルの拡張子は特に限定されず、電子メールを受信した画像形成装置の側での解凍が可能である限り、ｌｚｈ、ｌｈａ、ｚｉｐ、ｇｚ、ｓｉｔ、ｃｐｔ等、圧縮方式に対応して任意のものを用いることができる。以下、図５の例に示した場合において、装置ＩＤ「１」、制御モジュール識別子「１」の場合を例としてより具体的に説明する。
【００４４】
この場合の例では、バイナリデータのファームウェアがファイル名「Ｆｉｒｍｗｒ０１．ｄａｔ」のファイルに格納されている。ファームウェアを圧縮ソフトウェアにより圧縮した場合には、圧縮方式に応じて、圧縮ファイル名（例えば「Ｆｉｒｍｗｒ０１．ｌｚｈ」）を決定することができる。複数のファームウェアをまとめて圧縮した場合には、例えば「Ｆｉｒｍｗｒ．ｌｚｈ」というようなファイル名とすることができる。生成された圧縮ファイルはバイナリデータの形式であるから、これを、例えばｂａｓｅ６４などの方法でテキストに変換した後、電子メールに添付することができる。
【００４５】
なお、「その他の情報」としては、画像形成装置のユーザの名称、住所、電話番号等の情報がテキストデータとして格納されている。もっとも、これら「ユーザの名称」、「住所」等をそれぞれ別項目としてもよいことは勿論である。
図４のフローチャートに戻って、Ｆ２キーも押下されていない場合（Ｓ４：Ｎｏ）、Ｆ３キーが押下されたのを検出すると（Ｓ６：Ｙｅｓ）、ファームウェア送信処理を行う（Ｓ７）。具体的には、ファームウェアを電子メールに添付して画像形成装置に対して送信し、ファームウェアの更新を促す。
【００４６】
ここで、ファームウェア送信処理（Ｓ７）の内容について説明する。図６は、ファームウェア送信処理の詳細な内容を示すフローチャートである。ファームウェア送信処理では、まずホストコンピュータ２１が、ファームウェア送信の対象となる画像形成装置の装置ＩＤ及び制御モジュール識別子の指定を受け付ける（Ｓ１０）。より具体的には、ホストコンピュータ２１は、キーボード２１２等を介して、ファームウェアの送信対象を特定する情報として、装置ＩＤ、制御モジュール識別子等の入力を受け付ける。ホストコンピュータ２１は、入力されたデータをキーとして送信先データベースを読み出し、当該データに対応する登録情報を含むレコードを読み出す（Ｓ１１）。
【００４７】
次にホストコンピュータ２１は、登録情報に従い、固定記憶装置２１４７からファームウェアのファイルを読み出す（Ｓ１２）。本実施の形態では読み出されたファイルを圧縮ソフトウェアにより圧縮する（Ｓ１３）。圧縮ファイルのファイル名は、ファームウェアのファイル名や圧縮方式等により決定される。
圧縮ファイルはバイナリデータの形式で作成されるため、ホストコンピュータ２１は、得られた圧縮ファイルをＢａｓｅ６４等の方式によりテキストデータに変換する（Ｓ１４）。また、ホストコンピュータ２１は、得られた登録情報のレコードから電子メールアドレスを読み出し、当該電子メールアドレスを宛先とする電子メール・メッセージを作成する（Ｓ１５）。この電子メール・メッセージには、圧縮されたファームウェアの内容が添付される。なお、本実施の形態において、電子メール・メッセージのフォーマットはＲＦＣ８２２に準拠する。
【００４８】
次にホストコンピュータ２１は、作成された電子メール・メッセージをメールサーバ２３に送信する（Ｓ１６）。即ち、図４のステップＳ３にて設定されるメールサーバ２３のＩＰアドレス等を参照して、メールサーバ２３との間にＴＣＰコネクションを確立し、ＳＭＴＰに従ってメールサーバ２３に電子メール・メッセージを送付する。
【００４９】
以後、図４のフローチャートに戻り、ステップＳ６にてＦ３キーが押下されていない場合（Ｓ６：Ｎｏ）、若しくはファームウェア送信処理の終了後には、ステップＳ２へと戻り、繰返しファンクションキーＦ１〜Ｆ３の押下をチェックする。
（５）画像形成装置４２の処理内容
次に、画像形成装置４２において行われるファームウェア書き換え処理等の具体的な内容について説明する。図７は、画像形成装置４２、特に制御モジュール４２１１において実行される処理の内容を示すフローチャートである。画像形成装置４２は電源投入とともに動作を開始し、各メモリの内容の初期化や標準モードの設定等の初期化処理を行う（Ｓ２０）。なお、この初期化処理は、制御モジュール４２１、４２３、４２４のそれぞれにおいて個別に実行される。
【００５０】
初期化処理が終了すると、画像形成装置４２はファームウェアを受信するまで、通常の処理を繰り返し実行する。具体的には、画像形成装置４２は、操作パネル４２１８や画像形成装置４２内の各センサからの信号、或いはＬＡＮ４７を介して他の装置から送信されてくるプリントジョブ等の入力を受け付ける（Ｓ２１）。
【００５１】
画像形成装置４２は入力を受け付けると、これに続いてコピー制御を実行する（Ｓ２２）。ここでのコピー制御とは画像形成動作時に必要な処理の総称であって、例えば給紙制御、操作制御、感光体ドラム制御、現像器制御等の各部の制御、プリントジョブに関する処理等の処理をふくんでいる。制御ユニット４２１、４２３、４２４が連携してこれらのコピー制御を実行する。
【００５２】
通常の処理（Ｓ２１、Ｓ２２）を終了した後、制御モジュール４２１では、操作パネル４２１８上に設けられた設定キーが押下されたか否かを検出する（Ｓ２３）。そして、設定キーが押下されていた場合には（Ｓ２３：Ｙｅｓ）、通信設定処理を行う（Ｓ２４）。具体的には、操作パネル４２１８を介して電子メール・メッセージを送受信するために必要なパラメータの設定を受け付ける。必要なパラメータとしては、メールサーバ４６のＩＰアドレス、電子メールアカウント名とパスワード、メールサーバ４６に電子メール・メッセージが入着しているか否かを定期的に確認する際の時間間隔等がある。入力された情報は、それぞれＮＶＲＡＭ４２１４の所定アドレスに記憶される。
【００５３】
設定キーが押下されていない場合（Ｓ２３：Ｎｏ）、若しくは通信設定処理を終了した場合には、タイマ４２２０を参照し、最後にメールサーバ４６にアクセスしてから所定の確認間隔時間が経過したか否かを判定する（Ｓ２５）。所定の確認間隔時間とは、前記通信設定処理でＮＶＲＡＭ４２１４に格納されている値であって、メールサーバ４６に電子メール・メッセージが入着しているか否かを定期的に確認する際の時間間隔である。所定の確認間隔時間を経過していた場合には（Ｓ２５：Ｙｅｓ）、電子メール読み取り処理を行う（Ｓ２６）。
【００５４】
図８は電子メール読み取り処理の詳細な内容を示すフローチャートである。電子メール読み取り処理において、制御モジュール４２１は、まずメールサーバ４６との間でＴＣＰコネクションを確立する（Ｓ３１）。ＴＣＰコネクションを確立したら、ＰＯＰ３に従い、メールサーバ４６に新着メッセージ、即ち新たな電子メール・メッセージが入着したか否かを問い合わせる。新着メッセージがある場合には（Ｓ３２：Ｙｅｓ）、当該メッセージを制御モジュール４２１にダウンロードするようにメールサーバ４６に要求する（Ｓ３３）。
【００５５】
制御モジュール４２１は新着メッセージを受け取ると、現時刻を計時してＮＶＲＡＭ４２１４の所定アドレスに格納する。本実施の形態では、制御モジュール４２１は受け取った新着メッセージのメッセージ・ヘッダ部の「Ｃｏｎｔｅｎｔ−Ｄｅｓｃｒｉｐｔｉｏｎ」フィールドを参照して、そのフィールド・ボディに「Ｆｉｒｍｗａｒｅ」と記載されているか否かをチェックする。
【００５６】
前記フィールド・ボディに「Ｆｉｒｍｗａｒｅ」と表示されていたら、制御モジュール４２１は前記メッセージにファームウェアの内容が添付されていると判定し（Ｓ３４：Ｙｅｓ）、ファームウェアに相当するテキスト部分を取り出す（Ｓ３５）。なお、本実施の形態では、「Ｃｏｎｔｅｎｔ−Ｄｅｓｃｒｉｐｔｉｏｎ」フィールドのフィールド・ボディに「Ｆｉｒｍｗａｒｅ」と記載されているか否かにより、ファームウェアが含まれているか否かを判定したが、判定手法はこれに限定されず、「Ｓｕｂｊｅｃｔ」フィールドの内容、添付されているファイル名等を参照して判定するようにしてもよい。また、判定ミスの防止のため、上記の判定手法を組合せて（例えば、「Ｃｏｎｔｅｎｔ−Ｄｅｓｃｒｉｐｔｉｏｎ」フィールドの内容とファイル名の両方を参照する。）判定するようにしてもよい。
【００５７】
取り出されたＵＳ−ＡＳＣＩＩデータはＢａｓｅ６４方式に基づいて復号化され（逆Ｂａｓｅ６４変換）、ファームウェアを含む圧縮ファイル（本実施の形態では、ファイル名＝「Ｆｉｒｍｗｒ０１．ｌｚｈ」）に戻される（Ｓ３６）。この圧縮ファイルを解凍することによりファームウェアが得られる。複数のファームウェアがまとめて圧縮されている場合には、解凍により得られた複数のファイルのそれぞれのファイル名から、各ファイルがどの制御モジュールに対応するファームウェアかを判定することができる。制御モジュール４２１は、バイナリデータのチェックサムを計算して、ＮＶＲＡＭ４２１４の所定アドレスに格納する（Ｓ３７）。
【００５８】
以上のようにファームウェアのダウンロードを行なった後、制御モジュール４２１は、ＰＯＰ３に従い、メールサーバ４６からダウンロード済みの電子メール・メッセージを削除する（Ｓ３８）。そして、メールサーバ４６との間のＴＣＰコネクションを切断して（Ｓ３９）、電子メール読み取り処理を終了する。新着メッセージがない場合（Ｓ３２：Ｎｏ）、若しくは新着メッセージがあってもファームウェアが添付されていない場合には（Ｓ３４：Ｎｏ）、直接ステップＳ３９へと進み、メールサーバ４６との間のＴＣＰコネクションを切断して、電子メール読み取り処理を終了する。
【００５９】
なお、メールサーバ４６からダウンロード済みの電子メール・メッセージを削除する処理については、画像形成装置４２におけるファームウェアの更新等の処理が終了した後に実行するようにしてもよい。ファームウェアの更新の失敗は、チェックサムにて判断可能な場合（例えばデータ化け）だけでなく、更新途中で画像形成装置４２の電源がオフ状態とされた場合等にも生じ得るので、そのような場合にメールサーバ４６に電子メール・メッセージを残しておき、再度電源がオン状態となった場合に電子メール・メッセージを取得するようにすることなども考えられる。
【００６０】
また、電子メール・メッセージの削除は、必ずしもダウンロードの際に行う必要はなく、ダウンロードの際には電子メール・メッセージを残しておき、所定時間ごとに削除の処理を行うようにしたり、電源投入時に処理済みの電子メール・メッセージを削除するようにすることもできる。
電子メール読み取り処理を終了すると、図７のフローチャートへと戻って、制御モジュール４２１は、ファームウェアを受信したか否かを判定する（Ｓ２７）。ファームウェアを受信していない場合には（Ｓ２７：Ｎｏ）、ステップＳ２１に戻って通常の処理を継続する。
【００６１】
ファームウェアを受信した場合（Ｓ２７：Ｙｅｓ）には、ファームウェア書き換え処理を実行する（Ｓ２８）。以下、本実施の形態におけるファームウェア書き換え処理の詳細な内容について説明する。
図９は、ファームウェア書き換え処理の詳細な内容を示すフローチャートである。本実施の形態のファームウェア書き換え処理では、まず、プリントジョブ（実行中のジョブ及び実行待ち状態のジョブを含む。）が有るか否かを判定する（Ｓ４１）。プリントジョブが存在しない場合には（Ｓ４１：Ｎｏ）、特に他の処理を行うことなく取得したファームウェアをフラッシュＲＯＭに格納してよいので、そのままステップＳ４６へと進み、フラッシュＲＯＭの書き換えを行う。この場合、取得したファームウェアが動作する制御モジュールのみ書き換えを行うようにすればよいのは勿論である。本実施の形態では、取得したファームウェアがどの制御モジュールで動作するかは、電子メール・メッセージ中に記述されるファームウェアのファイル名から判断することができる。
【００６２】
プリントジョブが存在する場合には（Ｓ４１：Ｙｅｓ）、停止タイミングの制御処理を行う（Ｓ４２）。停止タイミング制御処理とは、例えば複数部の画像がプリントされるようなジョブの場合に、一部のプリント処理が終了したときに再起動を行うように、停止タイミングを制御する（遅延させる）処理である。図１０は、停止タイミング制御処理の内容を示すフローチャートである。
【００６３】
停止タイミング制御処理では、まず、紙切れ、紙詰まり等のエラーによりプリントジョブが停止中であるか否かが判断される（Ｓ５１）。停止中であれば（Ｓ５１：Ｙｅｓ）、あえてジョブの停止を制御せず、ファームウェアの更新を行っても差し支えないので、そのままリターンする。停止中でない場合には（Ｓ５１：Ｎｏ）、複数部をプリントするジョブであるか否かを判定する（Ｓ５２）。複数部プリントするジョブでない場合には（Ｓ５２：Ｎｏ）、当該ジョブの終了を待ってリターンする（Ｓ５３）。複数部プリントするジョブである場合には、プリント中の１部のプリントが終了するのを待って、リターンする（Ｓ５４）。このように１部のプリントが終了するのを待つことで、利用者がとりあえずプリント済みの文書のみを利用するような場合に便宜である。なお、ステップＳ５４では最終部をプリントしている途中である場合もある。この場合は当該１部のプリント終了がジョブの終了と一致するため、ジョブの終了に伴う処理（ジョブ管理テーブルからの削除等）を行うようにしてもよい。
【００６４】
停止タイミング制御処理を終了すると、図９のフローチャートへと戻って、更新中通知処理を行う（Ｓ４３）。更新中通知処理は、ファームウェアの書き換え処理を行う旨を画像形成装置４２の操作パネルや、プリントジョブを投入した端末装置（例えばクライアントＰＣ４３）に通知する処理である。図１１は、更新中通知処理の内容を示すフローチャートである。
【００６５】
更新中通知処理では、まずプリントジョブが有るか否かを判定する（Ｓ６１）。ここでは、実行待ち状態のジョブの他、停止タイミング制御処理において１部のプリントが終了したジョブやエラーで停止中のジョブ（いずれも実行中状態）が存在する場合も、プリントジョブ有りと判定される。
プリントジョブがない場合には（Ｓ６１：Ｎｏ）、そのままファームウェアの更新が行われるが、ファームウェア更新中に、例えば利用者がコピーしようとするのを防止するために、画像形成装置４２の操作パネル４２１８にファームウェア更新中である旨を表示する（Ｓ６２）。プリントジョブが有る場合には（Ｓ６１：Ｙｅｓ）、当該プリントジョブがコピージョブ（外部からネットワークを介して投入されたジョブではなく、画像形成装置４２のイメージリーダで読み取った画像をプリントするジョブ）であった場合には（Ｓ６３：Ｙｅｓ）、操作パネル４２１８にファームウェア更新中である旨を表示する（Ｓ６４）。ここで、当該ジョブが電子ソート機能を用いて複数部プリントしようとするジョブ等である場合には、「残りの分については、更新終了後に再開される」旨を併せて表示するようにしてもよい。
【００６６】
ステップＳ６３において、ジョブがコピージョブ以外の場合（Ｓ６３：Ｎｏ）、即ち、外部からネットワークを介して投入されたジョブであった場合には、当該プリントジョブを投入した端末装置に対して、ファームウェア更新中である旨を通知する（Ｓ６５）。ネットワークを介したプリントジョブの投入に際しては、通常投入端末のＩＰアドレスが付加されているので、当該ＩＰアドレスに対して、メッセージを通知すればよい。通知されてきたメッセージの出力（画面への出力、音声出力等）は、端末装置側に備えられたアプリケーションで処理される。
【００６７】
以上のような処理を終了した後、未処理のプリントジョブがあれば（Ｓ６６：Ｙｅｓ）、再度ステップＳ６３へと戻って同様の処理を行い、未処理のジョブがなければ（Ｓ６６：Ｎｏ）、更新中通知処理を終了する。
更新中通知処理を終了すると、図９のフローチャートへと戻ってメインの制御モジュール４２１のファームウェアが更新されるか否かを判定する（Ｓ４４）。このような判定を行うのは、本実施の形態では画像データに関する処理をメインの制御モジュール４２１で実行しており、この制御モジュール４２１の更新がされないのであれば（ＩＲ部を制御する制御モジュール４２３のファームウェアや、画像形成部を制御する制御モジュール４２４のファームウェアが更新される場合）、画像データをＨＤＤ４２１９に退避する処理を行う必要がないからである。
【００６８】
制御モジュール４２１のファームウェアが更新される場合には（Ｓ４４：Ｙｅｓ）、画像データの退避処理を行う（Ｓ４５）。具体的には、画像処理部４２２１を介して符号メモリ４２２２に格納されている画像データ（本実施の形態では圧縮された状態で符号メモリ４２２２に格納されているが、必ずしも圧縮されている必要はない。）を読み出しＨＤＤ４２１９に退避させる。なお、ファームウェアは例えばＶＸＷＯＲＫＳ（登録商標）等の機器組み込み型ＲＴＯＳ（リアル・タイム・オペレーション・システム）の機能を含んでおり、符号メモリ４２２２やＨＤＤ４２１９内のデータの取り扱い（退避、再格納等の処理）は当該ＯＳの機能を利用して行うことができる。
【００６９】
なお、本実施の形態では、ジョブの管理や符号メモリ４２２２内のデータ管理等を管理テーブルを用いて行っており（管理の具体的な管理内容は、例えば特開平１１−２３２０５５号公報等に開示されているごとく公知であるから、ここでの詳細な説明は省略する。）、画像データと併せて各種管理テーブルもＨＤＤ４２１９に退避させる。
【００７０】
画像データ等の退避処理を終了すると、新たなファームウェアによるフラッシュＲＯＭの書き換え処理を行う（Ｓ４６）。この書き換え処理は、ファームウェアが更新される制御モジュールにおいてのみ実行されるのは勿論である。以上のようなファームウェア書き換え処理を行なった後は、図７のフローチャートに戻って、書き換え後の新たなファームウェアによる動作を実行させるためのソフトウェアリセット（再起動）指示を行う（Ｓ２９）。本実施の形態では、リセット部４２２３内の電源制御Ｉ／Ｏから、ファームウェアの更新が行われる制御モジュールのＣＰＵのリセット端子に信号を送ることで再起動の指示を行うが、この方法に限定されるわけではなく、新たなファームウェアがＳＲＡＭにロードされてＣＰＵで動作するようになれば、他の方法（例えば物理的なスイッチのオン・オフで再起動させる）を用いてもよい。
【００７１】
次に、本実施の形態における再起動後の処理の内容について説明する。図１２は、再起動後に行われる処理の内容を詳細に説明するためのフローチャートである。もっとも、同図の処理は、再起動後、即ち新たなファームウェアがＳＲＡＭにロードされ、メイン制御モジュール４２１のＣＰＵ４２１１にて動作開始するときに実行されるものであるから、実際のファームウェアの処理内容としては、図９のフローチャートにおいて、例えば初期化処理（Ｓ２１）の中などで実行することができる。
【００７２】
同図に示される再起動後の処理として、まず、画像データや管理テーブルのデータがＨＤＤ４２１９に退避されているか否かを判定する（Ｓ７１）。この処理のためには、ＨＤＤ４２１９の管理テーブルを参照して、退避されているデータの存在を判定するようにしてもよいし、退避の際にＮＶＲＡＭ４２１４内のフラグをセットしておき、当該フラグの内容を参照するようにしてもよい。
【００７３】
データが退避されている場合に（Ｓ７１：Ｙｅｓ）、画像データの符号メモリ４２２２への復帰（Ｓ７２）、ジョブ管理テーブル等の管理テーブルのＳＲＡＭへの復帰（Ｓ７３）を行い、中断しているプリントジョブ（実行待ち状態も含む。）を再開させる処理を行う（Ｓ７４）。複数部プリントするジョブについては、ジョブ管理テーブル中にプリントすべき部数、及びプリント終了した部数を保持しておくことにより、残りの部数についてプリント処理を行うことができる。
【００７４】
さらに、再開されたプリントジョブを投入している端末装置については、ジョブ管理テーブル中に保持されているＩＰアドレスを参照して、プリントジョブが再開された旨を通知する（Ｓ７５）。以上の処理を終了すると、通常の入力受付、コピー制御処理等に移行する。以上のように、本実施の形態のようなファームウェアを用いることで、ファームウェア更新に際して中断したプリントジョブがあっても、再度投入することなく、ジョブを再開させることができる。
【００７５】
＜変形例＞
以上、本発明を実施の形態に基づいて説明してきたが、本発明の内容が、上記実施の形態に示された具体例に限定されないことは勿論であり、例えば、以下のような変形例を考えることができる。
（１）即ち、上記実施の形態では、画像処理部４２２１にて圧縮され、揮発性である符号メモリ４２２２に格納された画像データをＨＤＤ４２１９に退避させるようにしたが、画像データは圧縮されている必要はなく、また、画像データのフォーマットにも制限はない。従って、例えばＰＯＳＴＳＣＲＩＰＴ（登録商標）等のページ記述言語（ＰＤＬ）で記述されたデータを退避させるよう場合も有り得る。
【００７６】
（２）上記実施の形態では、画像形成装置４２内のＨＤＤ４２１９に画像データ等を退避させるようにしたが、退避先の記憶手段は、自機内のＨＤＤ等の各種不揮発性メモリに限定されず、他のＰＣ等に退避させるようにしてもよい。また、インターネットを介してサービスセンタに送信する、等の方法で退避させるようにしてもよい。
【００７７】
（３）上記実施の形態では、複数部プリントするジョブについて、プリント中の１部のプリントが終了した場合にファームウェアを更新するようにしたが、更新のタイミングもこれに限定されず、１部のプリントの終了を待たずに更新するようにしてもよい。この場合には、ジョブ管理テーブルにプリント終了したページ番号を保持しておき、再開時には、次のページからプリントを再開するようにすればよい。
【００７８】
（４）上記実施の形態では、ファームウェアの更新を行う旨、プリントジョブが再開される旨を、プリントジョブを投入した外部の端末に通知したり、操作パネルに表示するようにしているが、表示される文言等に制限がないことは勿論であり、「ファームウェアが更新される」旨、「プリントジョブが中断した」旨、のほか、単に「しばらくお待ち下さい」等の表示でもかまわない。
【００７９】
【発明の効果】
以上のように、本発明に係る画像形成装置等によれば、再起動の前に、揮発性メモリに格納されている画像データ等を、不揮発性の記憶手段に退避させ、更新後の新たなファームウェアの動作が開始するときに、退避された画像データ等を前記揮発性メモリに再度格納するようにしているので、ファームウェアの更新の際にメモリに画像データが存在している場合でも、当該画像データを失うことなくファームウェアの更新を行なうことができるという効果がある。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る画像形成装置の管理システムの構成を示す図である。
【図２】画像形成装置４２のうち、特にファームウェアを実行して画像形成装置４２の動作を制御する３つの制御モジュールのハードウェア構成と各制御モジュールの接続状態を示す図である。
【図３】ホストコンピュータ２１の構成を示す図である。
【図４】ホストコンピュータ２１の処理内容を示すフローチャートである。
【図５】送信先データベースの内容の一例を示す図である。
【図６】ファームウェア送信処理の詳細な内容を示すフローチャートである。
【図７】画像形成装置４２の処理内容について説明するためのフローチャートである。
【図８】電子メール読み取り処理の詳細な内容を示すフローチャートである。
【図９】ファームウェア書き換え処理の詳細な内容を示すフローチャートである。
【図１０】停止タイミング制御処理の内容を示すフローチャートである。
【図１１】更新中通知処理の内容を示すフローチャートである。
【図１２】再起動時の処理の内容について説明するためのフローチャートである。
【符号の説明】
１０                管理システム
２０                サービスセンタ
２１                ホストコンピュータ
３０                インターネット
４０                ユーザサイト
４２                画像形成装置
４２１              メイン制御モジュール
４２１９            ＨＤＤ
４２２２            符号メモリ
４２２３            リセット部
４６                メールサーバ
【図１】
2004148612.tif 000003
【図２】
2004148612.tif 000004
【図３】
2004148612.tif 000005
【図４】
2004148612.tif 000006
【図５】
2004148612.tif 000007
【図６】
2004148612.tif 000008
【図７】
2004148612.tif 000009
【図８】
2004148612.tif 000010
【図９】
2004148612.tif 000011
【図１０】
2004148612.tif 000012
【図１１】
2004148612.tif 000013
【図１２】
2004148612.tif 000014