(57)【特許請求の範囲】
【請求項１】
画像処理装置に現在適用されているファームウェアのバージョンである更新前バージョンの情報を含む取得要求を画像処理装置より受信したことに応じて、更新後バージョンのファームウェアを前記画像処理装置に配信するファームウェア配信手段と、
ファームウェアのバージョンの組み合わせと画像処理装置の記憶装置に記憶されている設定情報の移行が必要か否かの情報とが対応付けられている第１テーブルに基づいて、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新に伴い設定情報の移行が必要か否かを判定する判定手段と、
前記判定手段で設定情報の移行が必要であると判定された場合、設定情報の移行に用いられる設定移行プログラムを前記画像処理装置に配信する設定移行プログラム配信手段と、
を有することを特徴とする配信装置。
【請求項２】
前記判定手段で設定情報の移行が必要であると判定された場合、ファームウェアのバージョンの組み合わせと設定移行プログラムとが対応付けられている第２テーブルに基づいて、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新に対応する設定移行プログラムを選択する選択手段を更に有し、
前記設定移行プログラム配信手段は、前記選択手段で選択された設定移行プログラムを前記画像処理装置に配信することを特徴とする請求項１に記載の配信装置。
【請求項３】
前記選択手段は、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新が、あるバージョンからあるバージョンへの更新を複数含む更新である場合、各更新に対応する複数の設定移行プログラムを選択することを特徴とする請求項２に記載の配信装置。
【請求項４】
記憶装置に設定情報が記憶されている画像処理装置と、前記画像処理装置に対してファームウェアを配信する配信装置と、を含むシステムであって、
前記画像処理装置は、
画像処理装置に現在適用されているファームウェアのバージョンである更新前バージョンの情報を含む取得要求を前記配信装置に送信する取得要求送信手段と、
前記配信装置より配信された更新後バージョンのファームウェアを適用し、ファームウェアを更新するファームウェア適用手段と、
前記配信装置より配信された設定情報の移行に用いられる設定移行プログラムを実行し、設定情報を移行する設定移行プログラム適用手段と、
を有し、
前記配信装置は、
前記取得要求を画像処理装置より受信したことに応じて、更新後バージョンのファームウェアを前記画像処理装置に配信するファームウェア配信手段と、
ファームウェアのバージョンの組み合わせと画像処理装置の記憶装置に記憶されている設定情報の移行が必要か否かの情報とが対応付けられている第１テーブルに基づいて、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新に伴い設定情報の移行が必要か否かを判定する判定手段と、
前記判定手段で設定情報の移行が必要であると判定された場合、設定情報の移行に用いられる設定移行プログラムを前記画像処理装置に配信する設定移行プログラム配信手段と、
を有することを特徴とするシステム。
【請求項５】
配信装置が実行する情報処理方法であって、
画像処理装置に現在適用されているファームウェアのバージョンである更新前バージョンの情報を含む取得要求を画像処理装置より受信したことに応じて、更新後バージョンのファームウェアを前記画像処理装置に配信するファームウェア配信ステップと、
ファームウェアのバージョンの組み合わせと画像処理装置の記憶装置に記憶されている設定情報の移行が必要か否かの情報とが対応付けられている第１テーブルに基づいて、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新に伴い設定情報の移行が必要か否かを判定する判定ステップと、
前記判定ステップで設定情報の移行が必要であると判定された場合、設定情報の移行に用いられる設定移行プログラムを前記画像処理装置に配信する設定移行プログラム配信ステップと、
を有することを特徴とする情報処理方法。
【請求項６】
前記判定ステップで設定情報の移行が必要であると判定された場合、ファームウェアのバージョンの組み合わせと設定移行プログラムとが対応付けられている第２テーブルに基づいて、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新に対応する設定移行プログラムを選択する選択ステップを更に有し、
前記設定移行プログラム配信ステップでは、前記選択ステップで選択された設定移行プログラムを前記画像処理装置に配信することを特徴とする請求項５に記載の情報処理方法。
【請求項７】
前記選択ステップでは、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新が、あるバージョンからあるバージョンへの更新を複数含む更新である場合、各更新に対応する複数の設定移行プログラムを選択することを特徴とする請求項６に記載の情報処理方法。
【請求項８】
記憶装置に設定情報が記憶されている画像処理装置と、前記画像処理装置に対してファームウェアを配信する配信装置と、を含むシステムにおける情報処理方法であって、
前記画像処理装置が、画像処理装置に現在適用されているファームウェアのバージョンである更新前バージョンの情報を含む取得要求を前記配信装置に送信する取得要求送信ステップと、
前記配信装置が、前記取得要求を画像処理装置より受信したことに応じて、更新後バージョンのファームウェアを前記画像処理装置に配信するファームウェア配信ステップと、
前記画像処理装置が、前記配信装置より配信された更新後バージョンのファームウェアを適用し、ファームウェアを更新するファームウェア適用ステップと、
前記配信装置が、ファームウェアのバージョンの組み合わせと画像処理装置の記憶装置に記憶されている設定情報の移行が必要か否かの情報とが対応付けられている第１テーブルに基づいて、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新に伴い設定情報の移行が必要か否かを判定する判定ステップと、
前記配信装置が、前記判定ステップで設定情報の移行が必要であると判定された場合、設定情報の移行に用いられる設定移行プログラムを前記画像処理装置に配信する設定移行プログラム配信ステップと、
前記画像処理装置が、前記配信装置より配信された設定情報の移行に用いられる設定移行プログラムを実行し、設定情報を移行する設定移行プログラム適用ステップと、
を含むことを特徴とする情報処理方法。
【請求項９】
請求項５乃至７の何れか１項に記載のステップをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、配信装置、システム、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、画像処理装置等の周辺装置の稼働状態を遠隔的に監視する監視システムがある。この監視システムの環境下において、画像処理装置のファームウェアのアップデートは以下のように行われていた。
つまり、バージョンアップ、障害等の理由によりファームウェアを更新する必要が生じた場合、サービスマンが顧客先に訪問し、手作業でアップデートを行っていた。そのため、ファームウェア更新のためのコストが高いものとなっていた。
【０００３】
特許文献１には、緊急にファームウェアの更新処理を行う必要がある場合に、生産性の低下を抑制することを目的とした技術が開示されている。
また、特許文献２には、オペレータによる作業負担を増やすことなく、且つコストアップすることなく、情報処理装置（プリンタ）のファームウェアを確実にアップデートすることを目的とした技術が開示されている。
また、特許文献３には、機器の設定を更新した場合でも問題なく使用することを目的として技術が開示されている。
【０００４】
【特許文献１】特開２００４−１６５７３４号公報
【特許文献２】特開２００３−０９１４２７号公報
【特許文献３】特開２００５−１８２１６３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、画像処理装置等の周辺装置の稼働状態を遠隔的に監視する監視システムの環境下で、この監視システムからの指示で、自動的にファームウェアをアップデートするシステムが検討されている。このようなシステムにおいては、画像処理装置が配信装置からファームウェアをダウンロードする。そして、その後、画像処理装置がリブートされた場合、画像処理装置がファームウェアを適用するようになっている。
【０００６】
一方、現在の画像処理装置ではファームウェアが動作設定等の設定情報を保持するためにＳＲＡＭ等の不揮発性メモリが使用されている。画像処理装置はファームウェアを構成する複数のアプリケーションが使用する領域をメモリマップとして予め割り当てておく。そして、各アプリケーションは、このメモリマップに従ってＳＲＡＭ等の不揮発性メモリに記憶されている設定情報等の読み出し／書き込みを行っている。
【０００７】
例えば、ファームウェアをバージョンアップする際等、構成ファームウェアの追加／削除や仕様変更に伴ってＳＲＡＭのメモリマップが変更されるような場合、画像処理装置はバージョンアップ後のファームウェア起動時にＳＲＡＭを自動的に初期化して起動する。しかしながらこの場合、ＳＲＡＭに保持していた設定情報等も初期化されるため、アドレス帳やユーザモード／サービスモード設定、ジョブ情報も初期化されてしまう。これを避けるためには、サービスマンが現地にてバージョンアップ直前の設定情報等をデバイス外部へ一旦退避し、バージョンアップ後に退避した設定情報等を書き戻す作業を行う必要がある。
【０００８】
特に配信サーバを用いたリモートからバージョンアップにおいて上記のようなサービスマンによる現地作業が発生するということは、現地作業を極力伴わずに効率的にバージョンアップを実現したいという趣旨からも解決すべき課題である。
【０００９】
本発明はこのような問題点に鑑みなされたもので、画像処理装置の設定情報を失わせることなく、効率的にファームウェアを更新することを目的とする。
また、本発明は全バージョンの組み合わせに対応した設定移行プログラムを準備することなく、少数の設定移行プログラムを準備しておくだけで全バージョン間の組み合わせに応じたバージョンアップ時の設定情報の引継ぎを可能とすることを更に別の目的とする。
【課題を解決するための手段】
【００１０】
そこで、本発明の配信装置は、画像処理装置に現在適用されているファームウェアのバージョンである更新前バージョンの情報を含む取得要求を画像処理装置より受信したことに応じて、更新後バージョンのファームウェアを前記画像処理装置に配信するファームウェア配信手段と、ファームウェアのバージョンの組み合わせと画像処理装置の記憶装置に記憶されている設定情報の移行が必要か否かの情報とが対応付けられている第１テーブルに基づいて、前記更新前バージョンから前記更新後バージョンへのファームウェアの更新に伴い設定情報の移行が必要か否かを判定する判定手段と、前記判定手段で設定情報の移行が必要であると判定された場合、設定情報の移行に用いられる設定移行プログラムを前記画像処理装置に配信する設定移行プログラム配信手段と、を有することを特徴とする。
【発明の効果】
【００１６】
本発明によれば、画像処理装置の不揮発性の記憶装置に記憶されている設定情報を失わせることなく、効率的にファームウェアを更新することができる。
また本発明の別の側面によれば全バージョンの組み合わせに対応した設定移行プログラムを準備することなく、少数の設定移行プログラムを準備しておくだけで全バージョン間の組み合わせに応じたバージョンアップ時の設定情報の引継ぎを可能とすることができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施形態について図面に基づいて説明する。
【００１８】
＜実施形態１＞
（システム構成）
図１は、監視システムのシステム構成の一例を示す図である。図１において、本監視システムには、システム１０１及びシステム１０６を始めとする複数の販売会社システムが接続されている。
【００１９】
販売会社のシステム１０１、１０６には、管轄の顧客の販売情報や監視システムに関わる情報を蓄積するデータベース１０３、１０８や、データベース１０３、１０８へのデータ登録や修正等の制御を行うＰＣ１０４、１０９が含まれる。ＰＣ１０４、１０９は、監視センタホスト１１１が提供するウェブサイトへアクセスしてデータの閲覧等を行う。なお、ホスト１０２、１０７は、操作部及び表示部（表示装置）を持ち、ＰＣ１０４、１０９の役割を果たす事もできる。ホスト１０２、データベース１０３、ＰＣ１０４は、ＬＡＮ１０５で接続されている。また、ホスト１０７、データベース１０８、ＰＣ１０９はＬＡＮ１１０で接続されている。なお、図１では、販売会社側の各々のシステムは、複数の装置から構成されるよう示されているが、後述の各機能を達成することができれば複数の装置から構成されていなくてもよい。例えば、データベース１０３、１０８は、物理的にホスト１０２、１０７内にそれぞれ存在してもよい。更に、データベース１０３、１０８は、ホスト１０２、１０７からアクセス可能であれば、インターネットを経由した別の場所に存在してもよい。
【００２０】
次に、販売会社側と顧客側の中間に、監視センタホスト１１１が存在する。データベース１１２は、監視のための情報や、顧客側から収集した画像処理装置の一例である画像形成装置のカウンタ、障害履歴情報、障害パターンテーブル等を蓄積する履歴記憶手段としてのデータベースである。監視センタホスト１１１とデータベース１１２とはＬＡＮ１１３で接続されている。また、ＬＡＮ１１３は、インターネットに接続可能となっている。なお、データベース１１２は、物理的に監視センタホスト１１１内に存在してもよい。更に、監視センタホスト１１１からアクセス可能であれば、インターネットを経由した別の場所に存在してもよい。本実施形態では、画像形成装置は、例えば、プリンタ、スキャナー、ファクシミリ及びこれらの複合機であれば好適である。なお、複合機には限らず、単なるプリンタ等も含む。
【００２１】
監視センタホスト１１１は、監視装置１１７、１２２、１２３、１３１から監視対象としての画像形成装置の情報、稼働状態を示す情報（障害情報を含む）を収集、蓄積、加工し、警告等を外部に提供する機能を有する。例えば、監視センタホスト１１１は、ホスト１０２、１０７にそれら情報を配信する役割を持つ機能を有する。稼働状態を示す情報には、トナー切れ、ドアオープン、ドラム交換、カートリッジなし、冷却ファン異常、基板異常、原稿台ガラス汚れ、ステイプル切れ、給紙センサ光量不足等がある。また、稼働状態を示す情報として、フォントメモリオーバーフロー、レンダリングエラー、定着器異常、カウンタ異常、両面ユニット異常、紙詰まり等もある。更にカウンタ情報として、販売会社の課金対象となる課金カウンタ、顧客の部門別に集計された部門カウンタ、用紙サイズ別に集計されたサイズ別カウンタ、画像形成装置内の部品の消耗度を示す部品カウンタ等がある。
【００２２】
課金カウンタは、画像形成装置の印刷枚数を示す。部門カウンタは、顧客が設定している部門毎の印刷枚数を示す。部品カウンタは、例えばドラム等の部品では、その回転数を示し、スキャナランプ等の部品では、時間（秒）を示すものとする。これらの情報が稼働情報となる。
【００２３】
更にまた、ホスト１０２、１０７がそれぞれから、監視対象としている画像形成装置の情報や監視に関する設定を監視センタホスト１１１に登録する事ことができる。監視センタホスト１１１では、各販売会社ホストから登録された監視対象の画像形成装置や、監視に関する設定をマージして一括管理できる。また、監視センタホスト１１１は、監視装置１１７、１２２、１２３や、画像形成装置１３１に対し、監視に関わる設定を行うこともできる。
【００２４】
ここで、本監視システムによるサービスは、販売会社と顧客との契約に基づき、提供されるものである。従って、販売会社が契約に基づき監視対象と決定した画像形成装置のみを、本監視システムの監視対象としている。監視センタホスト１１１は、インターネットを介して接続されたＰＣに対し、データベース１１２に蓄積した情報、又は加工した情報を閲覧するＷＥＢページを提供している。監視センタホスト１１１は、ユーザ認証により、販売会社別、顧客別、及びユーザの権限別に閲覧内容を限定してＷＥＢページで提供している。更に、監視センタホスト１１１は、ＷＥＢページから、一部データの変更も可能としている。
【００２５】
次に、販売会社側と顧客側との中間に、配信サーバ１３３が存在する。データベース１３４は、画像形成装置に適用するためのファームウェアやアプリケーション、ソフトウェアライセンス情報等を蓄積する履歴記憶手段としてのデータベースである。配信サーバ１３３とデータベース１３４とはＬＡＮ１３５で接続されている。また、ＬＡＮ１３５は、インターネットに接続可能となっている。なお、データベース１３４は、物理的に配信サーバ１３３内に存在してもよい。更に、データベース１３４は、配信サーバ１３３からアクセス可能であれば、インターネットを経由した別の場所に存在してもよい。なお、ＬＡＮ１１３とＬＡＮ１３５とは同一としてもよく、データベース１３４とデータベース１１２とはデータを共有してもよい。
【００２６】
図１中には、監視センタホスト１１１と、データベース１１２と、配信サーバ１３３と、データベース１３４と、は１つずつしか示されていない。しかし、多くの画像形成装置及び監視装置からの情報収集や、ファームウェア配信の負荷分散を行うために、複数の監視センタホスト、データベースに分散処理をさせてもよい。
【００２７】
次に、顧客側のシステム構成について説明する。顧客側の環境としては、異なる複数の環境がある。図１中では、顧客システム１１４、１１９、１２９が示されている。顧客システム１１４（Ａ社Ｘ事業所）においては、インターネットに接続されたＬＡＮ１１８に接続された監視装置１１７が画像形成装置１１５、１１６を監視している。監視装置１１７は、インターネット経由で監視センタホスト１１１と通信を行っている。一方、顧客システム（Ａ社Ｙ事業所）においては、監視装置１２２、１２３がＬＡＮ１２８上の画像形成装置を管理している。監視装置１２２は、画像形成装置１２０、１２１、１２４、１２５を管理している。監視装置１２３は、画像形成装置１２６、１２７を管理している。監視装置１１７、１２２、１２３は、データベース（不図示）と接続されている。監視装置は、画像形成装置から収集した情報の蓄積、蓄積したデータの加工結果の保存を行うと共に、画像形成装置監視に関わる設定もデータベース（不図示）内に保存している。なお、不図示のデータベースは、ＬＡＮ１１８上に接続され、独立して存在してもよい。更に、監視装置１１７、１２２、１２３からアクセス可能であれば、インターネットを経由した別の場所に存在しても構わない。監視装置は、画像形成装置の状態情報（例えば障害等の発生）を、画像形成装置から受信する都度、監視センタホスト１１１に送信する。
【００２８】
顧客１２９（Ｂ社）においては、インターネットに接続されたＬＡＮ１３０に接続された画像形成装置１３１自身が直接、インターネット経由で監視センタホスト１１１と通信を行っている。画像形成装置１３１は、自身の情報（例えばカウンタ情報や障害等の発生）を積極的に監視センタホスト１１１に送信している。ＰＣ（不図示）は、ＷＥＢブラウザを搭載したＰＣであり、顧客環境からだけでなく、直接インターネットを介し監視センタホスト１１１に接続し、前述の監視センタホスト１１１が提供するＷＥＢページを閲覧する事ができる。
【００２９】
なお、以下の点に留意する必要がある。
（１）以上説明した構成におけるインターネットを介した通信においては、ＨＴＴＰ／ＳＯＡＰプロトコルを利用することができる。ＳＯＡＰは、Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌの略称である。ＳＯＡＰは、ＸＭＬ（ｅＸｔｅｎｄｅｄ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）をベースとして、あるコンピュータから他のコンピュータのデータやサービスを呼び出すためのプロトコルである。本例では、ＳＯＡＰはＨＴＴＰ上に実装される。ＳＯＡＰによる通信では、ＸＭＬ文書に付帯情報を付けたＳＯＡＰメッセージを交換する。したがってＳＯＡＰをサポートするコンピュータには、ＳＯＡＰメッセージを生成するＳＯＡＰメッセージ生成部と、ＳＯＡＰメッセージを解釈するＳＯＡＰメッセージ解釈部とが備えられている。画像形成装置の状態情報は、本実施形態ではＳＯＡＰメッセージによって監視センタホスト１１１に送信される。
（２）Ａ社における各画像形成装置は監視装置を介して監視センタホスト１１１と通信を行うように説明した。しかし、設定の変更により、Ｂ社に設置される画像形成装置１３１と同様に監視装置を介することなく、監視センタホスト１１１との通信を行うことができる（通信可能）。
【００３０】
（ハードウェア構成）
図２は、監視センタホスト１１１のハードウェア構成の一例を示す図である。なお、配信サーバ１３３、ホスト１０２、１０７のハードウェア構成も同様である。図２において、第１ＣＰＵ２０１、第２ＣＰＵ２０２は、本装置上の各処理を司る。ＲＯＭ２０３は、本装置の各処理に関わるプログラムやデータを記憶し、書換え不可能である。ＲＡＭ２０４は、本装置の各処理に関わる一時的なデータを電気的に記憶でき、かつ書き換え可能である。第１ＨＤＤ２０５、第２ＨＤＤ２０６は、本装置の各処理に関わるプログラムやデータ、一時的なデータ、本実施形態に関わる監視対象の画像形成装置に関する情報、画像形成装置から収集した情報等を記憶する。例えば、部品カウンタ、課金カウンタ、部門カウンタ等がハードディスクに保存される。入力装置２０７は、本装置への指示入力を受け付けるキーボードやポインティングデバイスである。表示部（表示装置）２０８は、本装置の動作状況や、本装置上で動作する各プログラムが出力する情報を表示する。ＮｅｔｗｏｒｋＩ／Ｆ２０９は、ネットワーク経由でＬＡＮ及びインターネットに接続し、外部と情報交換を行う。外部機器Ｉ／Ｆ２１０は、外部記憶機器等を接続する。これらの要素がシステムバス２１１を介して結び付き、データをやりとりしている。
【００３１】
図３は、監視装置１１７、１２２、１２３のハードウェア構成の一例を示す図である。なお、ＰＣ１０４、１０９、１３４のハードウェア構成も同様である。
ＣＰＵ３０１は、本装置上の各処理を司る。ＲＯＭ３０２は、本装置の各処理に関わるプログラムやデータを記憶し、書換え不可能である。ＲＡＭ３０３は、本装置の各処理に関わる一時的なデータを電気的に記憶でき、かつ書き換え可能である。監視装置１１７では、本装置の各処理に関わるプログラムやデータ、一時的なデータ、監視対象の画像形成装置に関する情報、画像形成装置から収集した情報等をＨＤＤ３０４に記憶する。ＰＣ１０４、１０９、１３４においては、ＷＥＢブラウザ等をＨＤＤ３０４に記憶する。入力装置３０５は、本装置への指示入力を受け付けるキーボードやポインティングデバイスである。表示部（表示装置）３０６は、本装置の動作状況や、本装置上で動作する各プログラムが出力する情報を表示する。ＮｅｔｗｏｒｋＩ／Ｆ３０７は、ネットワーク経由でＬＡＮ及びインターネットに接続し、外部と情報交換を行う。外部機器Ｉ／Ｆ３０８は、外部記憶機器等を接続する。これらの要素がシステムバス３０９を介して結び付き、データをやりとりしている。
【００３２】
図４は、監視装置１１７、１２２、１２３のハードウェア構成の他の例を示す図である。ＣＰＵ４０１は、本装置上の各処理を司る。ＲＯＭ４０２は、本装置の各処理に関わるプログラムやデータを記憶し、書換え不可能である。ＦｌａｓｈＲＯＭ４０３は、本装置の各処理に関わるデータ、一時的なデータ、監視対象の画像形成装置に関する情報、画像形成装置から収集した情報等を記憶する。シリアルＩ／Ｆ４０４は、本装置上のプログラムに基づいて動作しているＣＰＵ４０１がエラーやログを出力しており、シリアルケーブルを用いて端末等を接続する事ができる。ＮｅｔｗｏｒｋＩ／Ｆ４０５は、ネットワーク経由でＬＡＮ及びインターネットに接続し、外部と情報交換を行う。これらがシステムバス４０６により結び付き、データをやりとりしている。
【００３３】
図５は、画像形成装置１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７、１３１のハードウェア構成の一例を示す図である。画像形成装置としては、より具体的には、プリンタ及びファクシミリ機能が統合的に設けられた複合機や、ＰＣ等からデータを受信し、印刷するプリンタ（電子写真方式及びインクジェット方式を含む）、スキャナー、ファクシミリ等である。図５では、画像形成装置の一例として複合機の構成を示している。
【００３４】
イメージリーダ５０２は、原稿給送部５０１で原稿を読み込む。イメージリーダ５０２、画像形成部５０３は、読み込んだ原稿や、ネットワーク経由で受信したデータを印刷画像に変換・印刷出力する。排紙部５０４は、印刷出力した紙を排出し、ソートやステイプル等の処理を施す。ＮｅｔｗｏｒｋＩ／Ｆ５０５は、ネットワーク経由でＬＡＮ及びインターネットに接続し、外部と情報交換を行う。ＣＰＵ５０６は、本装置上の各処理を司る。ＣＰＵ５０６は、プログラムに基づき、画像形成装置の動作状態を監視し、障害等の特定のイベントが発生した場合には、その状態を示す状態情報を、予め定めた宛先へと送信する。宛先は例えば、監視センタホスト１１１や監視装置等である。不揮発性記憶手段のＲＯＭ５０７は、本装置の各処理に関わるプログラムやデータを記憶する。書き換え可能なＲＡＭ５０８は、本装置の各処理に関わる一時的なデータを電気的に記憶する。ＨＤＤ５０９は、本装置の各処理に関わるプログラムやデータ、一時的なデータ、本装置へ送信されてきたユーザデータ等を記憶する。操作部５１０は、本装置への指示入力を受け付ける。表示部（表示装置）５１１は、本装置の動作状況及び操作部５１０に対する操作に関わる情報を表示する。これらの要素がシステムバス５１２を介して結び付き、データをやりとりしている。
なお、デバイス自身が監視のための情報を積極的に送信する機能を持つ画像形成装置１３１では、ＲＯＭ５０７或いはＨＤＤ５０９内に、監視データ送出処理にかかわるプログラムやデータが保持されている。
【００３５】
（ソフトウェア）
図６は、監視センタホスト１１１、配信サーバ１３３における本実施形態に係るソフトウェア構成の一例を示す図である。ＳＯＡＰ通信部６０１は、監視装置１１７、又は画像形成装置１３１よりＮｅｔｗｏｒｋＩ／Ｆ２０９を介して受信したＳＯＡＰデータをＳＯＡＰメッセージ解析部６０２に渡す。また、ＳＯＡＰ通信部６０１は、ＳＯＡＰメッセージ作成部６０３が作成したＳＯＡＰデータをＮｅｔｗｏｒｋＩ／Ｆ２０９を介して監視装置１１７、又は画像形成装置１３１に送信する。
【００３６】
収集情報処理部６０４は、監視下の監視装置１１７、又は画像形成装置１３１から受診した情報をそのまま、又は、加工し、データベースアクセス部６０６を介してデータベース１１２、データベース１３４に格納する。
また、収集情報処理部６０４は、遠隔監視システムに関わる機能を実現する。収集情報処理部６０４は、例えば、監視下の監視装置１１７、又は画像形成装置１３１から受信した情報及びデータベース１１２、データベース１３４に格納されているデータを基に、ファームウェアの最新情報等を担当のサービスマンや顧客側の管理者へ通知する。なお、収集情報処理部６０４は、ファームウェアの最新情報以外にもカウンタ情報の集計、エラー情報等も担当のサービスマンや顧客側の管理者へ通知する。
【００３７】
監視制御部６０５は、監視装置１１７、又は画像形成装置１３１の情報を取得しに行くスケジュール管理や、監視内容、方法の制御を行う。更に、監視制御部６０５は、必要に応じて、監視下の監視装置１１７、又は画像形成装置１３１へ、ＳＯＡＰメッセージ作成部６０３、ＳＯＡＰ通信部６０１、ＮｅｔｗｏｒｋＩ／Ｆ２０９を介して、指示を送信する。
【００３８】
図７は、監視装置１１７、１２２、１２３における本実施形態に係るソフトウェア構成の一例を示す図である。
ＳＯＡＰ通信部７０１は、監視センタホスト１１１よりＮｅｔｗｏｒｋＩ／Ｆ３０７、４０５を介して受信したＳＯＡＰデータをＳＯＡＰメッセージ解析部７０３に渡す。また、ＳＯＡＰ通信部７０１は、ＳＯＡＰメッセージ作成部７０２が作成したＳＯＡＰデータをＮｅｔｗｏｒｋＩ／Ｆ３０７、４０５を介して監視センタホスト１１１、配信サーバ１３３に送信する。
【００３９】
監視制御部７０４は、後述する監視センタホスト１１１からの監視設定に従い、情報蓄積部７０６に保持する監視画像形成装置情報を更新し、画像形成装置１１５、１１６の情報を取得し、スケジュール管理を行う。
デバイス情報処理部７０５は、監視制御部７０４が管理するスケジュールにより、本装置が積極的に画像形成装置１１５、１１６から収集したカウンタ情報、サービスコール、ジャム、トナー切れ等の情報を、情報蓄積部７０６に蓄積する。又は、デバイス情報処理部７０５は、この蓄積を、画像形成装置１１５、１１６の状態に応じて行う。
【００４０】
情報蓄積部７０６に蓄積されたデータは、デバイス情報処理部７０５を介してそのままＳＯＡＰメッセージ作成部７０２に渡され、監視センタホスト１１１へ送信される。或いは、情報蓄積部７０６に蓄積されたデータは、デバイス情報処理部７０５内で解釈、加工されてからＳＯＡＰメッセージ作成部７０２に渡され、監視センタホスト１１１へ送信される。
【００４１】
図８は、各画像形成装置１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７、１３１における本実施形態に係るソフトウェア構成の一例を示す図である。
ＳＯＡＰ通信部８０１は、監視センタホスト１１１、配信サーバ１３３よりＮｅｔｗｏｒｋＩ／Ｆ５０５を介して受信したＳＯＡＰデータをＳＯＡＰメッセージ解析部８０３に渡す。また、ＳＯＡＰ通信部８０１は、ＳＯＡＰメッセージ作成部８０２が作成したＳＯＡＰデータをＮｅｔｗｏｒｋＩ／Ｆ５０５を介して監視センタホスト１１１、配信サーバ１３３に送信する。
【００４２】
ネットワーク情報取得部８０４は、ＤＨＣＰ環境においてはＩＰアドレス、ＤＮＳサーバ、ゲートウェイアドレスを自動的に取得する事ができる。
また、ネットワーク情報取得部８０４は、操作部５１０から入力されＨＤＤ５０９に保存されたネットワーク情報が存在する場合は、その情報を取得する。
【００４３】
デバイス情報収集部８０５は、本複合機内部のスケジュールにより、又は、監視センタホスト１１１からの指示により、内部に保持するカウンタ情報を取得し、また、内部で発生したサービスコールやジャム、トナー切れ等の情報を取得する。
デバイス情報収集部８０５が取得したデータは、そのままＳＯＡＰメッセージ作成部８０２に渡され、監視センタホスト１１１へ送信される。また、デバイス情報収集部８０５が取得したデータは、デバイス情報収集部８０５内で蓄積、解釈、加工されてからＳＯＡＰメッセージ作成部８０２に渡され、監視センタホスト１１１へ送信される場合もある。
【００４４】
図９は、監視センタホスト１１１、配信サーバ１３３或いは、監視装置１１７、１２２、１２３或いは、画像形成装置１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７、１３１におけるメモリマップの構造の一例を示す図である。本実施形態に係る処理プログラムを実行する際、監視センタホスト１１１ではＲＡＭ２０４上に、各監視装置１１７ではＲＡＭ３０３或いはＦｌａｓｈＲＯＭ４０３上に、各画像形成装置ではＲＡＭ５０８上にプログラムがロードされる。
【００４５】
メモリマップは、基本Ｉ／Ｏプログラム９０１、システム・プログラム９０２、本実施例の処理プログラムを初めとする各種処理プログラム９０３、関連データを格納するエリア９０４、プログラムのワークエリア９０５で構成される。基本Ｉ／Ｏプログラム９０１は、本装置上の入出力を司る。システム・プログラム９０２は、各処理プログラムに動作環境を提供する。なお、容量の制約により９０１〜９０５として利用する領域が足りなくなった場合、第１ＨＤＤ２０５又は第２ＨＤＤ２０６をＲＡＭ２０４の、ＨＤＤ３０４をＲＡＭ３０３の、ＨＤＤ５０９をＲＡＭ５０８の領域の一部として扱うこともできる。
【００４６】
図１０は、図１の画像形成装置１２４他、配信サーバ１３３、監視センタホスト１１１等での全般的なファームウェア及び設定移行プログラムの配信処理の一例を示す図である。
配信サーバ１３３には予め、開発を終えたファームウェアを転送するサーバ（転送サーバ）からファームウェアが転送されているものとする。すると、配信サーバ１３３から監視センタホスト１１１にファーム情報が送信される（ＳＱ１００１）。つまり、監視センタホスト１１１は、配信サーバ１３３よりファーム情報（ファームウェア情報）を受信する。このファーム情報とはどの種類の画像形成装置のどのようなバージョンのファームウェアが転送サーバにアップされているかの情報である。
【００４７】
一方、販売会社の配信指示担当者は監視センタホスト１１１にアクセスし、認証を受ける（ＳＱ１００２）。すると、監視センタホスト１１１は、ＵＩ表示を行う（表示制御）（ＳＱ１００３）。ここで販売会社の配信指示担当者は、指定した画像形成装置へ指定したバージョンのファームウェアを配信すべく、ダウンロード指示を行う（ＳＱ１００４）。画像形成装置側からは監視センタホスト１１１に対し、定期的にポーリングを行い（ＳＱ１００５）、ダウンロード指示があるか否かの情報及びダウロード指示がある場合はファームウェアのバージョン（更新後バージョン）等を取得する。
【００４８】
画像形成装置１２４は、監視センタホスト１１１から取得した情報に後述するファームウェア配信コマンド及び設定移行プログラム配信コマンドがあれば、その指示に従い、配信サーバ１３３に対し、以下の取得指示（取得要求）を送信する（取得要求送信）。つまり、画像形成装置１２４は、現在、画像形成装置１２４に適用されているファームウェアのバージョン（更新前バージョン）及び更新後バージョン等を含む、ファームウェアと設定移行プログラムとの取得指示を配信サーバ１３３に送信する（ＳＱ１００６）。その指示を受け、配信サーバ１３３は、更新後バージョンに対応するファームウェア及び更新前バージョンから更新後バージョンへのファームウェアの更新に伴う設定移行プログラムを選択する（ＳＱ１００７）。ここで設定移行プログラムとは、ＲＡＭ５０８に含まれるＳＲＡＭ上のユーザ設定等のコンフィグ情報（設定情報）のメモリマップがファームウェアのバージョンアップに伴い、変更される場合、メモリマップのマッピングを変更するプログラムファイルである。なお、配信サーバにおける設定移行プログラムの選択の詳細は後述する図１４を用いて説明する。配信サーバ１３３は、ファームウェア及び設定移行プログラムを画像形成装置１２４に配信する（ＳＱ１００８）。
【００４９】
画像形成装置１２４は、配信されたファームウェアと設定移行プログラムとを適用する（ＳＱ１００９）。なお、ファームウェアや設定移行プログラムの適用の詳細は後述する図１８を用いて説明する。配信サーバ１３３は、その配信状況をステータスとして監視センタホスト１１１に返す（ＳＱ１０１０）。監視センタホスト１１１は、配信指示担当者に対し、そのステータスを表示する（ＳＱ１０１１）。なお、配信サーバ１３３は、そのファームウェア及び／又は設定移行プログラムの大きさによって、分割配信を行う場合もあり、ファームウェア及び設定移行プログラムの配信の一連の動作は数回繰り返される場合もある。
【００５０】
図１１は、監視センタホスト１１１におけるＵＩ表示（ＳＱ１００３）からダウンロード指示（ＳＱ１００４）までの処理の一例を示すフローチャートである。
まず、Ｓ１１０１において、監視センタホスト１１１は、ＵＩ表示処理を行い、配信指示担当者に対し、ファームウェアの配信を促す。図１２は、Ｓ１１０１において表示されるＵＩ（画面）の一例を示す図である。更新指定画面の一例である図１２のＵＩは、特定の画像形成装置へのファームウェアの配信を選択した後、その適用等についての選択を促すＵＩである。配信指示担当者は、図１２に示されるＵＩを用いて、適用の"手動／自動"、マイグレーションの配信の"有無"、配信するファームウェアの"バージョン"の選択が可能である。なお、マイグレーションとは、設定移行プログラムのことであり、その表現の一つである。また、これらの初期値は画像形成装置毎に異なり、ファームウェアの情報に含まれる属性によりこれらの初期値が決まる。ここでは販社配信指示担当者により「適用−自動」、「マイグレーション−配信する」、「アップデートバージョン−１．４」が選択され、ファームウェアの配信が実行されたとする。
【００５１】
Ｓ１１０２において、監視センタホスト１１１は、ＵＩ上での指定指示（又は選択指示）に応じて、配信指示があったか否かを判定する。監視センタホスト１１１は、配信指示があったと判定すると、Ｓ１１０３に進み、配信指示がなかったと判定すると、Ｓ１１０９に進む。Ｓ１１０９では、監視センタホスト１１１は、別処理を実行する。
【００５２】
Ｓ１１０３において、監視センタホスト１１１は、ＵＩ上での指定指示に応じて、適用が自動か否かを判定する。監視センタホスト１１１は、適用が自動であると判定すると、Ｓ１１０４に進み、適用が自動でない（つまり例えばサービスマン等である）と判定すると、Ｓ１１０７に進む。
【００５３】
Ｓ１１０４において、監視センタホスト１１１は、ＵＩ上での指定指示に応じて、マイグレーション（つまり設定移行プログラム）を配信するか否かを判定する。監視センタホスト１１１は、マイグレーションを配信すると判定すると、Ｓ１１０５に進み、マイグレーションを配信しないと判定すると、Ｓ１１０６に進む。
【００５４】
Ｓ１１０５において、監視センタホスト１１１は、設定移行プログラムの配信を指示する設定移行プログラム配信コマンドを作成する。また、Ｓ１１０６において、監視センタホスト１１１は、ファームウェアや設定移行プログラムの自動適用を指示する自動適用コマンドを作成する。一方、Ｓ１１０７において、監視センタホスト１１１は、ファームウェアや設定移行プログラムの適用の保留を指示する適用保留コマンドを作成する。
【００５５】
Ｓ１１０８において、監視センタホスト１１０８は、ファームウェアの配信を指示するファームウェア配信コマンドを作成する。なお、監視センタホスト１１０８は、ＵＩ上での指定指示に応じて、指示されたファームウェアのアップデートバージョンの情報を含むファームウェア配信コマンドを作成する。
【００５６】
以下、図１０のＳＱ１００７、ＳＱ１００８の処理を図１３及び図１４等を用いて説明する。図１３は、配信サーバ１３３におけるファームウェアの配信処理の一例を示すフローチャートである。配信サーバ１３３は、画像形成装置１２４より取得指示を受け取ると以下に示す処理を開始する。
Ｓ１３０１において、配信サーバ１３３は、画像形成装置１２４より受け取った取得指示に含まれるアップデートバージョンの情報を取得する。
【００５７】
Ｓ１３０２において、配信サーバ１３３は、Ｓ１３０１で取得したアップデートバージョンのファームウェアを選択し、取得指示の送信元である画像形成装置１２４に配信する。
以下、配信サーバ１３３は、図１４に示す処理を実行する。図１４は、配信サーバ１３３における設定移行プログラムの配信処理の一例を示すフローチャートである。
【００５８】
Ｓ１４０１において、配信サーバ１３３は、画像形成装置１２４より受け取った取得指示に基づいて、設定移行プログラムの配信指示があったか否かを判定する。配信サーバ１３３は、取得指示に設定移行プログラムの配信指示が含まれていた場合は、設定移行プログラムの配信指示があったと判定し、Ｓ１４０２に進む。一方、配信サーバ１３３は、取得指示に設定移行プログラムの配信指示が含まれていなかった場合は、設定移行プログラムの配信指示がなかったと判定し、図１４に示す処理を終了する。
【００５９】
Ｓ１４０２において、配信サーバ１３３は、取得指示に含まれる配信先デバイスである画像形成装置１２４に現在、適用されているファームウェアのバージョン情報である更新前バージョンを取得する。また、Ｓ１４０３において、配信サーバ１３３は、取得指示に含まれる画像形成装置１２４に配信する（又は配信した）更新に係るファームウェアのバージョン情報である更新後バージョンを取得する。
【００６０】
Ｓ１４０４において、配信サーバ１３３は、Ｓ１４０２で取得した更新前バージョンと、Ｓ１４０３で取得した更新後バージョンと、に基づいて、図１５に示される設定情報データの一例であるコンフィグ情報テーブルを検索し、対応する情報を取得する。ここで、図１５は、コンフィグ情報テーブルの一例を示す図である。図１５に示されるコンフィグ情報テーブルは、例えば、配信サーバ１３３のハードディスク等に記憶されている。なお、図１５において、○は、コンフィグ情報を形成するメモリマップに変更がないため、ファームウェアをそのままアップデート可能であることを示す情報である。×は、コンフィグ情報を形成するメモリマップに変更があるため、コンフィグ情報の変換が必要であることを示す情報である。
図１５に示されるように、コンフィグ情報テーブルでは、ファームウェアのバージョンの組み合わせと、設定情報（コンフィグ情報）の変換（移行）が必要か否かの情報と、が対応付けられている。
【００６１】
Ｓ１４０５において、配信サーバ１３３は、Ｓ１４０４で取得した情報（つまり、○、又は×）に基づいて、コンフィグ情報（設定情報）の変換が必要か否かを判定する。配信サーバ１３３は、コンフィグ情報の変換が必要であると判定すると、Ｓ１４０６に進み、コンフィグ情報の変換が必要でないと判定すると、図１４に示す処理を終了する。
【００６２】
Ｓ１４０６において配信サーバ１３３はＳ１４０２で取得した更新前バージョンとＳ１４０３で取得した更新後バージョンとに基づいて、図１６に示される設定移行プログラムデータの一例である設定移行プログラムテーブルを検索し、対応する情報を取得する。ここで、図１６は、設定移行プログラムテーブルの一例を示す図である。図１６に示される設定移行プログラムテーブルは、例えば、配信サーバ１３３のハードディスク等に記憶されている。なお、図１６において、Ａ、Ｂ、Ｃは、それぞれファームウェアのバージョンアップに伴い、設定情報の移行に必要な設定移行プログラム（又は設定移行プログラムを識別する識別情報）である。また、×は、専用の設定移行プログラムがないことを示す情報である。
図１６に示されるように、設定移行プログラムテーブルでは、ファームウェアのバージョンの組み合わせと、設定移行プログラムが必要か否か及び必要な場合は設定移行プログラムがあるか否か及びある場合はその設定移行プログラムと、が対応付けられている。
【００６３】
配信サーバ１３３は、取得した情報に基づいて、設定移行プログラムがあるか否かを判定する。配信サーバ１３３は、設定移行プログラムがあると判定した場合、Ｓ１４０８に進み、設定移行プログラムがないと判定した場合、Ｓ１４０７に進む。
Ｓ１４０７において、配信サーバ１３３は、更新前バージョンをインクリメントする。Ｓ１４０９において、配信サーバ１３３は、更新前バージョンが更新後バージョンと一致するか否かを判定する。配信サーバ１３３は、更新前バージョンが更新後バージョンと一致したと判定すると、Ｓ１４１２に進み、更新前バージョンが更新後バージョンと一致しないと判定すると、Ｓ１４０６に戻る。
【００６４】
一方、Ｓ１４０８において、配信サーバ１３３は、Ｓ１４０６で取得した情報（設定移行プログラムを識別する識別情報）に基づいて、設定移行プログラムを選択する。Ｓ１４１０において、配信サーバ１３３は、ターゲットの設定移行プログラム、つまり更新前バージョンから更新後バージョンへのファームウェアの更新に対応する設定移行プログラム、が揃ったか否かを判定する。配信サーバ１３３は、ターゲットの設定移行プログラムが揃ったと判定すると、Ｓ１４１２に進み、ターゲットの設定移行プログラムが揃っていないと判定すると、Ｓ１４１１に進む。
【００６５】
Ｓ１４１１において、配信サーバ１３３は、更新後バージョンを設定移行プログラムがあった更新前バージョンまでデクリメントすると共に、更新前バージョンをＳ１４０２において取得した更新前バージョンに戻す。一方、Ｓ１４１２において、配信サーバ１３３は、設定移行プログラムを取得指示の送信元である画像形成装置１２４に配信する。
【００６６】
ここで、Ｓ１４０２で取得された更新前バージョンが１．０、Ｓ１４０３で取得された更新後バージョンが１．４であった場合を例に上述した処理を説明する。すると、Ｓ１４０４において、配信サーバ１３３は、図１５のコンフィグ情報テーブルより×、つまりコンフィグ情報の変換が必要であることを示す情報を取得する。そして、Ｓ１４０５において、配信サーバ１３３は、コンフィグ情報の変換が必要であると判定する。
【００６７】
Ｓ１４０６において、配信サーバ１３３は、更新前バージョン１．０と、更新後バージョン１．４と、に基づいて、図１６の設定移行プログラムテーブルを検索し、対応する情報として×、つまり専用の設定移行プログラムがないことを示す情報を取得する。よって、配信サーバ１３３は、Ｓ１４０７において、更新前バージョンを１．０から１．１にインクリメントする。Ｓ１４０９において、配信サーバ１３３は、更新前バージョンが１．１で、更新後バージョンが１．４であるため、一致しないと判定し、Ｓ１４０６に処理を戻す。
【００６８】
Ｓ１４０６において、配信サーバ１３３は、更新前バージョン１．１と、更新後バージョン１．４と、に基づいて、図１６の設定移行プログラムテーブルを検索し、対応する情報として×、つまり専用の設定移行プログラムがないことを示す情報を取得する。よって、配信サーバ１３３は、Ｓ１４０７において、更新前バージョンを１．１から１．２にインクリメントする。Ｓ１４０９において、配信サーバ１３３は、更新前バージョンが１．２で、更新後バージョンが１．４であるため、一致しないと判定し、Ｓ１４０６に処理を戻す。
【００６９】
以上、同様の処理が繰り返され、更新前バージョンが１．３、更新後バージョンが１．４になったとき、Ｓ１４０６において、配信サーバ１３３は、図１６の設定移行プログラムテーブルより対応する情報として設定移行プログラムＣを識別する情報を取得する。よって、配信サーバ１３３は、Ｓ１４０８において、設定移行プログラムＣを選択する。
【００７０】
Ｓ１４０１０において、配信サーバ１３３は、更新前バージョン１．０から更新後バージョン１．４へのファームウェアの更新に対応する設定移行プログラム、が揃ったか否かを判定する。設定移行プログラムＣは、設定移行プログラムテーブルより、１．３から１．４へのファームウェアの更新に対応する設定移行プログラムであるため、配信サーバ１３３は、ターゲットの設定移行プログラムが揃っていないと判定し、Ｓ１４１１に進む。
【００７１】
Ｓ１４１１において、配信サーバ１３３は、更新後バージョン１．４を設定移行プログラムＣがあった更新前バージョン、つまり１．３、までデクリメントする。また、配信サーバ１３３は、更新前バージョン１．３をＳ１４０２において取得した更新前バージョン１．０に戻し、Ｓ１４０６に処理を戻す。
【００７２】
以上、上述した処理を繰り返し、設定移行プログラムＡ、Ｂ、Ｃが揃ったとき、配信サーバ１３３は、Ｓ１４１０において、設定移行プログラムデータより、ターゲットの設定移行プログラムが揃ったと判定し、Ｓ１４１２に進む。そして、Ｓ１４１２において、配信サーバ１３３は、設定移行プログラムＡ、Ｂ、Ｃを取得指示の送信元である画像形成装置１２４に配信する。
【００７３】
以下、図１０のＳＱ１００９の処理を、図１８等を用いて説明する。まず、図１７は、画像形成装置のソフトウェア構成の一例を示した図である。図１８は、画像形成装置１２４におけるファームウェア及び設定移行プログラムの適用処理（アップデート処理）の一例を示すフローチャートである。ここで、特に表記がない場合、以下に示すフローチャートの各ステップは図１７のアップデート制御部１３０９が行う。つまり、ＣＰＵ５０６は、アップデート制御部１３０９（に対応するプログラム）をＨＤＤ５０９からＲＡＭ５０８に読み込み、アップデート制御部１３０９（に対応するプログラム）に基づき、処理を実行する。
【００７４】
Ｓ１８０１において、アップデート制御部１３０９は、配信サーバ１３３より配信されたファームウェアを受け取る。
また、Ｓ１８０２において、アップデート制御部１３０９は、配信サーバ１３３より配信された設定移行プログラムを受け取る。
【００７５】
Ｓ１８０３において、アップデート制御部１３０９は、Ｓ１８０１で受け取ったファームウェアを適用する処理を実行する（ファームウェア適用）。より具体的に説明するとアップデート制御部１３０９は、Ｓ１８０１で受け取ったファームウェアをある特定の領域（／ＢＯＯＴＤＥＶ／ＤＯＷＮ等）に転送し、このファームウェアを画像形成装置１２４のリブート時に展開して新しいファームウェアに更新する。なお、本実施形態におけるファームウェアの適用の方法はこれに限定されるものではなく、任意の方法により、画像形成装置１２４に適用されてもよい。
【００７６】
Ｓ１８０４において、アップデート制御部１３０９は、Ｓ１８０２で配信サーバ１３３より設定移行プログラムを受け取ったか否かを判定する。アップデート制御部１３０９は、設定移行プログラムを受け取っており、設定移行プログラムが所定の領域に存在すると判定すると、Ｓ１８０５に進む。一方、アップデート制御部１３０９は、設定移行プログラムを受け取っておらず、設定移行プログラムが所定の領域に存在しないと判定すると、図１８に示す処理を終了する。
【００７７】
Ｓ１８０５において、アップデート制御部１３０９は、Ｓ１８０２で配信サーバ１３３より受け取った設定移行プログラムが複数の設定移行プログラムで構成されているか（設定移行プログラムを複数含んでいるか）否かを判定する。アップデート制御部１３０９は、Ｓ１８０２で配信サーバ１３３より受け取った設定移行プログラムが複数の設定移行プログラムで構成されていると判定すると、Ｓ１８０６に進む。一方、アップデート制御部１３０９は、Ｓ１８０２で配信サーバ１３３より受け取った設定移行プログラムが複数の設定移行プログラムで構成されていないと判定すると、Ｓ１８０７に進む。
【００７８】
Ｓ１８０６においてアップデート制御部１３０９はＳ１８０２で配信サーバ１３３より受け取った複数の設定移行プログラム（以下プログラム群という）でまだ選択していない設定移行プログラムの内、更新前バージョンに最も近い設定移行プログラムを選択する。
より具体的に説明すると、配信サーバ１３３からは設定移行プログラム群と、各設定移行プログラムがファームウェアの幾つのバージョンから幾つのバージョンへの更新に対応する設定移行プログラムであるかを示す情報と、が送られてくる。つまり、配信サーバ１３３からは設定移行プログラムＡ（１．１→１．２）、設定移行プログラムＢ（１．２→１．３）、設定移行プログラムＣ（１．３→１．４）等の情報が送られてくる。アップデート制御部１３０９は、これらの情報に基づいて、プログラム群の内、元バージョン、つまり更新前バージョン（例えば、１．０）、に最も近い設定移行プログラムとしてまず設定移行プログラムＡを選択する。
【００７９】
なお、配信サーバ１３３は、設定移行プログラム群と共に、設定移行プログラムテーブルを画像形成装置１２４に送信するようにしてもよい。また、配信サーバ１３３と、画像形成装置１２４と、で設定移行プログラムテーブルを同期させて持つようにしてもよい。
【００８０】
Ｓ１８０７において、アップデート制御部１３０９は、Ｓ１８０６で選択した設定移行プログラムを適用する（設定移行プログラム適用）。より具体的に説明すると、アップデート制御部１３０９は、Ｓ１８０６で選択した設定移行プログラムを実行し、設定情報を移行する。
【００８１】
Ｓ１８０８において、アップデート制御部１３０９は、ターゲットバージョンまで、つまり更新後バージョンまで、の設定移行プログラムが適用されたか否かを判定する。アップデート制御部１３０９は、ターゲットバージョンまでの設定移行プログラムが適用されたと判定すると、図１８に示す処理を終了し、ターゲットバージョンまでの設定移行プログラムが適用されていないと判定すると、Ｓ１８０６に戻る。アップデート制御部１３０９は、Ｓ１８０６で、次に例えば設定移行プログラムＢを選択し、Ｓ１８０７で、設定移行プログラムＢを適用する。このようにアップデート制御部１３０９は、順次、プログラム群に含まれる設定移行プログラムを選択、適用し、更新後バージョンまでの設定移行プログラムを適用する。
【００８２】
図１９は、メモリマップの一例を示す図である。
より具体的に説明すると、図１９の（Ａ）は、ファームウェアのバージョン１．０（１．１）におけるメモリマップを表しており、（Ｂ）は、ファームウェアのバージョン１．２におけるメモリマップを表している。また、図１９の（Ｃ）は、ファームウェアのバージョン１．３におけるメモリマップを表しており、（Ｄ）は、ファームウェアのバージョン１．４におけるメモリマップを表している。
図１９の（Ｂ）と図１９の（Ａ）とを比べると図１９の（Ｂ）では例えばアプリケーションＡが使用する領域が増えているが、設定移行プログラムＡを適用していることによりアプリケーションＢは、自分の使用する領域を誤り無く読み込むことができる。
【００８３】
＜その他の実施形態＞
また、本発明の目的は、以下のようにすることによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（又は記録媒体）を、システム或いは装置に供給する。そして、そのシステム或いは装置の中央演算処理手段（ＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを記録した記憶媒体は本発明を構成することになる。
【００８４】
また、システム或いは装置の前記中央演算処理手段が読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、システム或いは装置上で稼働しているオペレーティングシステム（ＯＳ）等が実際の処理の一部又は全部を行う。その処理によって上述した実施形態の機能が実現される場合も含まれる。
【００８５】
更に、記憶媒体から読み出されたプログラムコードが、前記システム或いは装置に挿入された機能拡張カードや、接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【００８６】
本発明を前記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【００８７】
上述した実施形態によれば、配信サーバ側では画像処理装置の変更前バージョンと変更後バージョンとを認識し、２つのバージョン間に存在する全てのバージョンに対応する設定移行プログラムを自動的に選択してファームウェアと共に配信することができる。また、画像形成装置側では、ファームウェアを適用すると共に配信サーバから取得した全ての設定移行プログラムを順番に実行して設定情報を移行することにより、バージョンアップ時に設定情報が失われることなく設定情報を引き継ぐことができる。
つまり、画像処理装置の設定情報を失わせることなく、効率的にファームウェアを更新することができる。
【００８８】
また上述した実施形態によれば、配信サーバ側では設定情報を引き継ぐための設定移行プログラムを予め準備する際、全バージョンの組み合わせに対応した設定移行プログラムを準備する必要がなく、少数の設定移行プログラムのみを準備しておくだけでよい。
【００８９】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【００９０】
【図１】監視システムのシステム構成の一例を示す図である。
【図２】監視センタホスト１１１のハードウェア構成の一例を示す図である。
【図３】監視装置１１７、１２２、１２３のハードウェア構成の一例を示す図である。
【図４】監視装置１１７、１２２、１２３のハードウェア構成の他の例を示す図である。
【図５】画像形成装置１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７、１３１のハードウェア構成の一例を示す図である。
【図６】監視センタホスト１１１、配信サーバ１３３における本実施形態に係るソフトウェア構成の一例を示す図である。
【図７】監視装置１１７、１２２、１２３における本実施形態に係るソフトウェア構成の一例を示す図である。
【図８】各画像形成装置１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７、１３１における本実施形態に係るソフトウェア構成の一例を示す図である。
【図９】監視センタホスト１１１、配信サーバ１３３或いは、監視装置１１７、１２２、１２３或いは、画像形成装置１１５、１１６、１２０、１２１、１２４、１２５、１２６、１２７、１３１におけるメモリマップの構造の一例を示す図である。
【図１０】図１の画像形成装置１２４他、配信サーバ１３３、監視センタホスト１１１等での全般的なファームウェア及び設定移行プログラムの配信処理の一例を示す図である。
【図１１】監視センタホスト１１１におけるＵＩ表示（ＳＱ１００３）からダウンロード指示（ＳＱ１００４）までの処理の一例を示すフローチャートである。
【図１２】Ｓ１１０１において表示されるＵＩ（画面）の一例を示す図である。
【図１３】配信サーバ１３３におけるファームウェアの配信処理の一例を示すフローチャートである。
【図１４】配信サーバ１３３における設定移行プログラムの配信処理の一例を示すフローチャートである。
【図１５】コンフィグ情報テーブルの一例を示す図である。
【図１６】設定移行プログラムテーブルの一例を示す図である。
【図１７】画像形成装置のソフトウェア構成の一例を示した図である。
【図１８】画像形成装置１２４におけるファームウェア及び設定移行プログラムの適用処理（アップデート処理）の一例を示すフローチャートである。
【図１９】メモリマップの一例を示す図である。
【符号の説明】
【００９１】
１２４    画像形成装置
１３３    配信サーバ
１３０９  アップデート制御部
【図１】
0005038163.tif 000002
【図２】
0005038163.tif 000003
【図３】
0005038163.tif 000004
【図４】
0005038163.tif 000005
【図５】
0005038163.tif 000006
【図６】
0005038163.tif 000007
【図７】
0005038163.tif 000008
【図８】
0005038163.tif 000009
【図９】
0005038163.tif 000010
【図１０】
0005038163.tif 000011
【図１１】
0005038163.tif 000012
【図１２】
0005038163.tif 000013
【図１３】
0005038163.tif 000014
【図１４】
0005038163.tif 000015
【図１５】
0005038163.tif 000016
【図１６】
0005038163.tif 000017
【図１７】
0005038163.tif 000018
【図１８】
0005038163.tif 000019
【図１９】
0005038163.tif 000020