(57)【要約】【課題】  安全にシステムファームウェアなどのプログラム更新を行なうことができる画像形成装置、プログラムおよび記録媒体を提供すること。【解決手段】本発明の画像形成装置１０は、複数のシステムにより多重化された画像形成装置であって、複数のシステムのうち、起動させるシステム２５０を指定する起動制御フラグを参照して、指定されたシステム２５０に対応する制御プログラム３１０を読出し、起動処理を実行する起動制御手段２１０と、外部取得した更新データに従って、更新を開始させる対象システムと相違する他のシステムの指定値を起動制御フラグ３００に設定し、かつ、対象システムと更新が完了したシステムとを示す更新進捗情報３０２を設定して、対象システムに対する制御プログラムの更新処理を開始する更新制御手段２１４とを含む。【選択図】図３
2009042818.tif 000002
【特許請求の範囲】
【請求項１】
複数のシステムにより多重化された画像形成装置であって、前記画像形成装置は、
前記複数のシステムのうち、起動させるシステムを指定する起動制御フラグを参照して、指定された前記システムに対応する制御プログラムを読出し、起動処理を実行する起動制御手段と、
外部取得した更新データに従って、更新を開始させる対象システムと相違する他のシステムの指定値を前記起動制御フラグに設定し、かつ、前記対象システムと更新が完了したシステムとを示す更新進捗情報を設定して、前記対象システムに対する制御プログラムの更新処理を開始する更新制御手段と
を含む、画像形成装置。
【請求項２】
前記更新制御手段は、前記更新進捗情報を参照して、前記更新処理の中断が発生していたことを検知し、また前記中断時に更新中であったシステムと前記中断までに更新が完了したシステムとを判定し、前記更新中であったシステムから順次、未完了のシステムに対する更新処理を開始する、請求項１に記載の画像形成装置。
【請求項３】
前記更新制御手段は、すべての前記複数のシステムに対する更新処理が完了した場合に、前記起動制御フラグを既定値に設定し、かつ、前記更新進捗情報の設定を消去する、請求項１または２に記載の画像形成装置。
【請求項４】
前記更新制御手段は、前記更新データに含まれる更新対象モジュール識別値と、更新を開始させる前に前記更新進捗情報とともに設定される更新中モジュール識別値とを比較して、前記中断前後での更新対象のモジュールの一致を確認する、請求項２または３に記載の画像形成装置。
【請求項５】
前記更新制御手段は、前記更新データに含まれる電子署名を参照して、前記更新データの正当性を判定する、請求項１〜４のいずれか１項に記載の画像形成装置。
【請求項６】
前記更新処理が失敗したことに応答して、失敗した旨および失敗理由を通知する通知手段を含む、請求項１〜５のいずれか１項に記載の画像形成装置。
【請求項７】
前記画像形成装置は、取得した前記更新データのデータ構造を解析して、各システムの更新処理を開始させる際の動作を規定する、前記起動制御フラグに設定するための指定値および前記各システムに対する更新処理の実行順位を抽出する解析手段をさらに含み、
前記更新制御手段は、抽出された前記指定値を前記起動制御フラグに設定し、かつ、抽出された前記実行順位を前記更新進捗情報として設定し、前記各システムに対する前記更新処理を開始する、請求項１〜６のいずれか１項に記載の画像形成装置。
【請求項８】
画像形成装置を、請求項１〜７のいずれか１項に記載の各手段として機能させるための装置実行可能なプログラム。
【請求項９】
請求項１〜７のいずれか１項に記載の各手段として、画像形成装置を機能させるための装置実行可能なプログラムを記録した装置可読な記録媒体。
【請求項１０】
請求項１〜７のいずれか１項に記載の画像形成装置が用いる記録媒体であって、
更新モジュールの制御プログラムと、前記制御プログラムの正当性を保証する電子署名と、前記制御プログラムに対応付けられたモジュール識別値と、各システムについて、当該システムと相違する他のシステムによる起動を指定する指定値および当該システムに対する更新処理の実行順位と
を含むデータ構造を有する更新データを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関し、より詳細には、安全にプログラム更新を行なう画像形成装置、プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
プリンタや複合機などの画像形成装置のネットワーク対応に伴い、画像形成装置のシステム・ファームウェアなどのプログラム更新を行なう場合に、ＲＯＭ交換やＳＤ（Secure Digital）メモリカードなどのメディアを介したプログラム更新のように作業者が行なう方法に加え、ネットワーク経由でダウンロードした更新ファイルによるリモート更新も可能となっている。ネットワークを介したプログラム更新に関連する技術として、例えば特開平１１−２０３２１８号公報（特許文献１）を挙げることができる。
【０００３】
また、画像形成装置が備える記憶容量の増大に伴い、システムを二重化し、システムの障害耐性を高めた画像形成装置も開発されている。このような画像形成装置では、一方のシステムが、システム・ファームウェアの更新処理中の電源断などによって障害を受けた場合であっても、他方のシステムによる起動が可能とされる。上述した冗長システムでは、システム・ファームウェアの再更新によって、システムを復旧することができ、装置が起動できなくなるという事態を好適に防止することができる。システムの二重化に関連して、例えば特開２００５−３３９２７１号公報（特許文献２）は、カード型メモリを用いたレスキューシステムを開示する。
【特許文献１】特開平１１−２０３２１８号公報
【特許文献２】特開２００５−３３９２７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述のようにシステムを二重化した場合であっても、システム・ファームウェアのプログラム更新の中断によって、２つのシステムが共に障害を受けてしまう可能性があり、２つのシステムが共に破壊された状態に陥ると、システムの復旧および利用ができなくなってしまうという問題点があった。
【０００５】
例えば、システムＡおよびシステムＢとして二重化された画像形成装置においては、システムＡの更新中に電源断が発生してシステムＡが破壊された場合であっても、システムＢによる起動が可能とされている。しかしながら、さらにシステムＢの更新中に再度電源断が発生し、システムＢも破壊された場合には、両方のシステムが破壊された状態となるため、起動不能となってしまうという問題点があった。
【０００６】
また、上述のような二重化されたシステムにおいては、２つのシステムの更新状態の同期が取られていることが好ましく、１つの更新ファイルによって連続的に更新処理を行なうことが望まれていた。
【０００７】
本発明は、上記問題点に鑑みてなされたものであり、システム・ファームウェアなど、更新処理の中断によりシステムに障害を与える可能性のあるソフトウェア・モジュールのプログラム更新において、如何なるタイミングで当該更新処理の中断が発生した場合であっても、また中断が連続して発生した場合であっても、少なくとも１つのシステムによる起動および障害を受けたシステムの復旧を可能とし、もってプログラム更新処理を安全に行なうことを可能とする画像形成装置、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、上記課題を解決するために、複数のシステムにより多重化された画像形成装置において、複数のシステムのうち、起動させるシステムを指定する起動制御フラグを参照して、指定されたシステムに対応する制御プログラムを読出し、起動処理を実行する起動制御手段と、取得した更新データに従って、対象システムに対する制御プログラムの更新処理を開始する更新制御手段とを含む構成を採用する。
【０００９】
本発明において複数システムによる多重化とは、オペレーティング・システムと、画像形成装置の機能を提供するための各種制御サービスとからなるシステム・ファームウェアに対応する制御プログラムを、複数組、記憶手段に記憶し、起動制御フラグに応じて、制御プログラムを読出し起動させるシステム・ファームウェアを切換可能とされた構成をいう。本発明の更新制御手段は、更新を開始させる対象システムと相違する他のシステムの指定値を、不揮発性の記憶手段などに格納される起動制御フラグに設定し、かつ、対象システムと更新が完了したシステムとを示す更新進捗情報を設定してから、対象システムに対する更新処理を開始する制御を行なう。
【００１０】
この制御により、更新処理中に電源断などによって処理が中断された場合であっても、次回起動時には、中断時に更新されていたシステムとは異なる他のシステムにより起動され、また、再更新によりシステムを復旧させる場合には、更新が中断されたシステムから再更新を行なって、その完了後に次のシステムに対する更新処理が開始することが可能となる。かくして、如何なるタイミングで当該更新処理の中断が発生した場合であっても、また中断が連続して発生した場合であっても、少なくとも１つのシステムによる起動が保証され、もって、プログラム更新処理の安全性が向上される。
【００１１】
すなわち本発明によれば、複数のシステムにより多重化された画像形成装置であって、前記画像形成装置は、
前記複数のシステムのうち、起動させるシステムを指定する起動制御フラグを参照して、指定された前記システムに対応する制御プログラムを読出し、起動処理を実行する起動制御手段と、
外部取得した更新データに従って、更新を開始させる対象システムと相違する他のシステムの指定値を前記起動制御フラグに設定し、かつ、前記対象システムと更新が完了したシステムとを示す更新進捗情報を設定して、前記対象システムに対する制御プログラムの更新処理を開始する更新制御手段と
を含む、画像形成装置が提供される。
【００１２】
前記更新制御手段は、前記更新進捗情報を参照して、前記更新処理の中断が発生していたことを検知し、また前記中断時に更新中であったシステムと前記中断までに更新が完了したシステムとを判定し、前記更新中であったシステムから順次、未完了のシステムに対する更新処理を開始することができる。また、前記更新制御手段は、すべての前記複数のシステムに対する更新処理が完了した場合に、前記起動制御フラグを既定値に設定し、かつ、前記更新進捗情報の設定を消去することができる。さらに、前記更新制御手段は、前記更新データに含まれる更新対象モジュール識別値と、更新を開始させる前に前記更新進捗情報とともに設定される更新中モジュール識別値とを比較して、前記中断前後での更新対象のモジュールの一致を確認することができる。また前記更新制御手段は、前記更新データに含まれる電子署名を参照して、前記更新データの正当性を判定することができる。さらに、前記更新処理が失敗したことに応答して、失敗した旨および失敗理由を通知する通知手段を含むことができる。
【００１３】
さらに前記画像形成装置は、取得した前記更新データのデータ構造を解析して、各システムの更新処理を開始させる際の動作を規定する、前記起動制御フラグに設定するための指定値および前記各システムに対する更新処理の実行順位を抽出する解析手段をさらに含み、前記更新制御手段は、抽出された前記指定値を前記起動制御フラグに設定し、かつ、抽出された前記実行順位を前記更新進捗情報として設定し、前記各システムに対する前記更新処理を開始することができる。
【００１４】
さらに本発明によれば、画像形成装置を、上記の各手段として機能させるための装置実行可能なプログラムが提供される。また本発明によれば、上記の各手段として、画像形成装置を機能させるための装置実行可能なプログラムを記録した装置可読な記録媒体が提供される。さらに本発明によれば、上記画像形成装置が用いる記録媒体であって、更新モジュールの制御プログラムと、前記制御プログラムの正当性を保証する電子署名と、前記制御プログラムに対応付けられたモジュール識別値と、各システムについて、当該システムと相違する他のシステムによる起動を指定する指定値および当該システムに対する更新処理の実行順位とを含むデータ構造を有する更新データを記録したコンピュータ読取可能な記録媒体が提供される。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施形態を説明するが、本発明の実施形態は、以下の実施形態に限定されるものではない。なお本実施形態では、画像形成装置の一例として、コピー、ファクシミリ、スキャナ、プリント等の画像を扱う複合機能を有する複合機１０を用いた例を説明する。
【００１６】
図１は、複合機１０のハードウェア構成の実施形態を示す。複合機１０は、コントローラ１２と、オペレーション・パネル４２と、ＦＣＵ（ファクシミリ・コントロール・ユニット）４４と、エンジン部４６とを含み構成される。コントローラ１２は、ＣＰＵ（中央演算処理装置）１４と、ＮＢ（ノース・ブリッジ）１８と、ＮＢ１８を介してＣＰＵ１４と接続するＡＳＩＣ２０と、システムメモリ１６とを含み構成される。ＡＳＩＣ２０は、各種画像処理を実行し、ＡＧＰ（Accelerated Graphic Port）４８を介してＮＢ１８と接続される。システムメモリ１６は、描画用メモリなどとして用いられる。
【００１７】
ＡＳＩＣ２０は、ローカルメモリ２２と、ハードディスクドライブ（以下、ＨＤＤとして参照する。）２４と、フラッシュメモリなどからなる不揮発性メモリ２６（以下、ＮＶ−ＲＡＭとして参照する。）と接続される。ＨＤＤ２４は、画像データなどを蓄積するストレージ・デバイスであり、本実施形態では、その記憶領域が２つのパーティションに論理的に分割され、システムを二重化するための各システム・ファームウェアに対応する制御プログラム群が各パーティションに記憶されている。ＮＶ−ＲＡＭ２６は、複合機１０の各種システム情報や各種設定情報を格納し、本実施形態では、後述するレスキューフラグおよび更新中断情報を格納する。
【００１８】
コントローラ１２は、さらにＳＢ（サウス・ブリッジ）２８と、ＮＩＣ（ネットワーク・インタフェース・カード）３０と、ＳＤカード・スロット３２と、ＵＳＢインタフェース３４と、ＩＥＥＥ１３９４インタフェース３６と、セントロニクス・インタフェース３８とを含み構成され、これらはＰＣＩバス５０を介してＮＢ１８と接続される。ＳＤカード・スロット３２は、ＳＤメモリカードが着脱可能に構成され、装着したＳＤメモリカードからシステム・ファームウェアの更新ファイルを読出すことができる。ＮＩＣ３０は、複合機１０をインターネットやＬＡＮなどのネットワークに接続するインタフェース機器であり、ネットワークを介して、システム・ファームウェアの更新ファイルを受信することができる。ＵＳＢインタフェース３４、ＩＥＥＥ１３９４インタフェース３６およびセントロニクス・インタフェース３８は、それぞれの規格に準じたインタフェースであり、印刷ジョブを受付けている。
【００１９】
オペレーション・パネル４２は、コントローラ１２のＡＳＩＣ２０と接続され、オペレータからの各種指示の入力を受付け、画面表示を行なうためのユーザ・インタフェースを提供する。ＦＣＵ４４およびエンジン部４６は、ＰＣＩバス５２を介してＡＳＩＣ２０と接続する。エンジン部４６は、アプリケーションが発行したプリント指令やスキャン指令を受け、画像形成処理や画像読取処理を実行する。
【００２０】
図２は、本実施形態の複合機１０のソフトウェアおよびハードウェア構成を示す。図２に示した複合機１０は、各種機能を提供するための各種アプリケーション６２〜７０からなるアプリケーション層６０と、ＡＰＩ７２に含まれる予め定義された関数により、各種アプリケーション６２〜７０からの処理要求を受付けているプラットフォーム層１００と、エンジン・インタフェース（Ｉ／Ｆ）９８を介してプラットフォーム層１００と接続されるハードウェア・リソース１０２とを含んで構成される。
【００２１】
アプリケーション層６０は、図２に示した実施形態では、コピー・アプリケーション６２と、ファックス・アプリケーション６４と、スキャナ・アプリケーション６６と、プリンタ・アプリケーション６８とを含み構成され、画像に関連するユーザ・サービスに固有の処理を実行する。また、本実施形態の複合機１０のアプリケーション層６０は、リモート更新アプリケーション７０をさらに含み、リモート更新アプリケーション７０は、システム・ファームウェアなどの更新ファイルの受信を制御する。
【００２２】
プラットフォーム層１００は、ＯＳ９４とともにアプリケーション６２〜７０からの処理要求を解釈して、ハードウェア資源の獲得要求を発生する制御サービス７４〜８４と、１つまたは複数のハードウェア資源を管理し、各制御サービス７４〜８４からの獲得要求を調停するシステム資源管理マネージャ（ＳＲＭ）９０と、ＯＳ９４を通してエンジン部４６およびコントローラ間の画像データの転送を制御するイメージメモリハンドラ（ＩＭＨ）９２とを含み構成される。ＯＳ９４としては例えば、ＵＮＩＸ（登録商標）を採用することができるが、ＷＩＮＤＯＷＳ（登録商標）や、その他、如何なるＯＳを採用することができる。
【００２３】
プラットフォーム層１００は、図２に示した実施形態では、エンジン制御サービス（ＥＣＳ）７４と、メモリ制御サービス（ＭＣＳ）７６と、オペレーション制御サービス（ＯＣＳ）７８と、ファクシミリ制御サービス（ＦＣＳ）８０と、ネットワーク制御サービス（ＮＣＳ）８２と、システム制御サービス（ＳＣＳ）８４とを含んで構成されている。
【００２４】
ＳＣＳ８４は、アプリケーション６２〜７０の管理、システム画面表示やＬＥＤ表示などのユーザ・インタフェースの制御、ハードウェア資源の管理、割込みアプリケーションの制御などを行う。ＭＣＳ７６は、画像メモリの取得および解放、画像データの圧縮・伸張等のメモリ制御などを行う。ＥＣＳ７４は、エンジン部４６やＨＤＤ２４などのハードウェア資源を制御し、画像読込みや画像形成動作などを制御する。ＦＣＳ８０は、ＧＳＴＮインタフェースと接続し、ＧＳＴＮ網を使用したファクシミリ送受信、ファクシミリ読取りなどを制御する。ＯＣＳ７８は、オペレータと本体制御との間のインタフェースとなるオペレーション・パネル４２の制御を行う。ＮＣＳ８２は、ＮＩＣ３０を制御して、複合機１０をイーサネット（登録商標）やインターネットと接続させ、ネットワークＩ／Ｏを必要とするアプリケーションに対して共通に利用可能なサービスを提供し、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分け、各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。なお、上述したＯＳ９４を含むプラットフォーム層１００のソフトウェア手段からなる集合を、システム・ファームウェアして参照する。
【００２５】
複合機起動部５８は、複合機１０の電源投入時に起動され、上述までのプラットフォーム層１００およびアプリケーション層６０のプロセス群に対応する制御プログラムを、図示しないＲＯＭや、ＨＤＤ２４や、図示しないＳＤカードなどから読出して、ＣＰＵ１４の作業メモリ領域を提供するシステムメモリ１６上に展開して、ソフトウェア手段のプロセスを起動する。これにより、上記したソフトウェア手段および後述する各機能手段を実現する。
【００２６】
本実施形態の複合機１０は、通常使用されるプライマリシステムと、予備のレスキュー用のセカンダリシステムとにより２重に冗長化されており、一方のシステムが、例えば更新処理の中断により障害を被った場合であっても、他方のシステムによる起動が可能となるように構成されている。なお、ここでシステムとは、上記システム・ファームウェアと、その上位の各アプリケーション６２〜７０とからなる集合をいう。またシステムによる２重化とは、システムに対応する制御プログラムを２組、例えばＨＤＤ２４の区切られた各パーティションに記憶し、起動させるシステムを選択可能とされた構成をいう。各システムは、同一構成であっても良く、通常システムと、最小構成のみからなるレスキューシステムとの組合わせなど、相違する構成を備えてもよい。また、本実施形態では、システムを２重化した場合を例として説明するが、２以上のシステムにより多重化することもできる。以下、複合機１０の起動処理について詳細を説明する。
【００２７】
図３は、本実施形態の複合機１０の起動処理に関する主要な機能構成を示すブロック図である。図３には、ブートローダ２１０と、ＮＶ−ＲＡＭ２６と、ＨＤＤ２４の記憶領域により与えられる第１パーティション２４ａおよび第２パーティション２４ｂとが示されている。ＨＤＤ２４の第１パーティション２４ａは、プライマリシステム用の制御プログラム３１０ａを記憶し、第２パーティション２４ｂは、セカンダリシステム用の制御プログラム３１０ｂを記憶しており、本複合機１０は、起動させるべきシステムの指定に応じて、制御プログラムを読出すパーティションを切換える。ＮＶ−ＲＡＭ２６には、起動させるシステムを指定するレスキューフラグ３００が記憶されており、ブートローダ２１０は、複合機１０の電源投入時にまず最初に起動され、ＮＶ−ＲＡＭ２６に記憶されているレスキューフラグ３００を参照して起動させるべきシステムを判定し、指定されたシステムに対応するパーティションから制御プログラムを読出して、システム２５０の起動処理を実行する。なお、本実施形態においては、ブートローダ２１０が起動制御手段を構成し、レスキューフラグ３００が起動制御フラグを構成する。
【００２８】
ＮＶ−ＲＡＭ２６には、さらに、更新処理のステータスを示す更新中断情報３０２が記憶されている。更新中断情報３０２は、詳細について後述するが、更新対象のモジュールＩＤと、更新処理の進捗状況を示すインデックスとを含み構成される。ブートローダ２１０により起動されたシステム２５０は、更新中断検知部２１２と更新部２１４とを含み構成され、更新部２１４は、各システムを構成するソフトウェア・モジュールのプログラム更新を実行する。更新中断検知部２１２は、更新中断情報３０２の参照を試みて、モジュールの更新処理が中断されたことを検知する。本実施形態において更新中断情報３０２は、更新処理の開始により設定され、更新処理の完了をもってその設定が消去される。このため、更新中断情報３０２の存在は、電源断などにより更新処理が中断されたことを示している。つまり、更新中断検知部２１２は、更新中断情報３０２の有無から更新の中断を検知する。更新の中断を検知した場合には、更新中断検知部２１２は、オペレーション・パネル４２に対して、図１０に示すような更新処理の中断が検知された旨の表示を行なわせ、オペレータに通知を行なう。
【００２９】
図１０は、更新処理の中断が検知された場合にオペレーション・パネル４２に表示されるグラフィカル・ユーザ・インタフェース（ＧＵＩ）画面４００の一例を示す。以下、説明を容易にするために、オペレーション・パネル４２がタッチパネルなどにより構成された場合を例として説明する。
【００３０】
図１０に示したＧＵＩ画面４００は、システム・ファームウェアの更新中断を検知した旨を表示し、所定のソフトウェア・モジュールの更新が未完了である旨のメッセージ４０２と、未完了のモジュールを表示するメッセージ４０４と、再更新開始ボタン４０６と、確認ボタン４０８とを含み構成されている。再更新開始ボタン４０６は、オペレータからの再更新開始の指示を待受け、押下に応じて、更新部２１４を起動させ、システム・ファームウェアの再更新処理を開始させる。一方、確認ボタン４０８は、一度、通常様式によるシステム起動後、改めて再更新の開始を指示するためのボタンであり、押下に応答して通常様式での起動処理が実行される。この場合、改めてオペレータからの指示などの再更新開始の要求を受領すると、複合機１０は、更新部２１４を起動し、システム・ファームウェアの再更新処理を開始することとなる。
【００３１】
以下、更新部２１４によるソフトウェア・モジュールのプログラム更新の詳細について説明する。図４は、本実施形態の複合機１０におけるプログラム更新に関する主要な機能構成を示すブロック図である。図４には、更新部２１４と、ＮＶ−ＲＡＭ２６と、第１パーティション２４ａおよび第２パーティション２４ｂと、プログラム更新のための更新ファイル３０４とが示されている。更新ファイル３０４は、リモート更新アプリケーション７０によるネットワークを介した受信や、更新ファイル３０４を格納するＳＤメモリカード５４などのリムーバブルメディアから読出され、システムメモリ１６などの記憶領域に展開される。
【００３２】
図４に示した更新部２１４は、より具体的には、プログラム更新処理の実行を制御する更新制御部２１６と、各システムの制御プログラムを書換える書換部２１８と、取得した更新ファイル３０４を解析する解析部２２０とを含み構成されている。解析部２２０は、更新ファイル３０４を予め定められたデータ構造に従って解析し、更新に必要な情報を抽出する。更新制御部２１６は、更新処理の進行を制御し、各システムに対する更新処理を開始させる前に、都度、レスキューフラグ３００および更新中断情報３０２の設定を行なってから、順次、書換部２１８により各システムの制御プログラム書換えを実行させる。書換部２１８は、更新制御部２１６の制御のもと、プライマリシステム用制御プログラム３１０ａの更新部分３１２ａと、セカンダリシステム用制御プログラム３１０ｂの更新部分３１２ｂとを、順に、更新ファイルに従って書換える。
【００３３】
以下、上述したプログラム更新に用いられる更新ファイル３０４の詳細を説明する。図５は、更新ファイル３０４のデータ構造の一例を示す。更新ファイル３０４は、共通ヘッダとプライマリシステム用ヘッダとセカンダリシステム用ヘッダとを含むヘッダ部と、電子署名と更新実体データとを含むデータ部とから構成されている。共通ヘッダは、当該更新ファイル３０４による更新対象となる機種の識別値が入力される機種ＩＤフィールドと、当該更新ファイル３０４により更新対象となるソフトウェア・モジュールの識別値が入力されるモジュールＩＤフィールドとを含んで構成される。
【００３４】
データ部に含まれる更新実体データは、更新対象のソフトウェア・モジュールの、バイナリ実行コードにより記述される制御プログラムを含み、各パーティション２４ａ，ｂの各更新部分３１２ａ，ｂを書換えるための実体データである。電子署名は、当該更新実体データの正当性を保証するために添付されるものであり、その正当性を確認することによって更新実体データの改竄などを検知することが可能となる。このような電子署名としては、如何なる方式の電子署名を採用することができ、例えば、ＲＳＡ署名、ＤＳＡ（Digital Signature Algorithm）署名、Schnorr署名、楕円Schnorr署名、ElGamal署名、楕円ElGamal署名などを挙げることができる。
【００３５】
各システム用ヘッダは、更新先の記憶領域を示す更新先アドレス・フィールドと、更新先の記憶領域の大きさを示す更新先領域長フィールドと、レスキューフラッグ指定値フィールドと、インデックス指定値フィールドとを含んで構成される。ここで、レスキューフラグ指定値フィールドには、各システムの制御プログラムの更新を開始させる前にレスキューフラグ３００に設定するための値が入力され、更新ファイル３０４は、各ヘッダのシステムと相違するシステムによる起動を指定する値が入力された状態で配布することができる。つまり、本実施形態では、プライマリシステム用ヘッダのレスキューフラグ指定値には、レスキュー用セカンダリシステムによる起動を指定する［ＯＮ］の値が入力され、セカンダリシステム用ヘッダのレスキューフラグ指定値には、プライマリシステムによる起動を指定する［ＯＦＦ］の値が入力される。
【００３６】
またインデックス指定値フィールドには、各システムの制御プログラムの更新を開始させる前に、更新中断情報３０２のインデックスに設定するための値が入力される。ここで、インデックスとは、複数の書込み先を識別するための情報であり、また更新処理の実行順位を示す情報である。つまり、プライマリシステム、セカンダリシステムの順で更新するよう規定されている場合には、更新ファイル３０４は、プライマリシステム用ヘッダのインデックス指定値は［１／２］が入力され、セカンダリシステム用ヘッダのインデックス指定値は［２／２］が入力された状態で配布される。インデックスの始めの数字が各システムの更新処理の実行順位を示し、後の数字が総処理数を示す。また、インデックスは、更新処理の開始前にＮＶ−ＲＡＭ２６の更新中断情報３０２として設定されることによって、更新処理の進捗情報が保持される。
【００３７】
更新先アドレス・フィールドには、各システムの更新対象となるモジュールの、複合機１０の記憶領域上のアドレスが入力され、更新先領域長フィールドには、当該モジュールの記憶領域サイズが入力され、書換えられる制御プログラムが記憶されている領域の開始位置および終了位置を示す。例えば、プライマリシステム用ヘッダの更新先アドレス・フィールドには、第１パーティション２４ａ上の更新部分３１２ａに対応するアドレスおよびサイズが入力されることとなる。
【００３８】
なお本実施形態においては、更新ファイル３０４が１つの更新対象ソフトウェア・モジュールの更新実体データを含むものとして参照してきたが、更新ファイル３０４が複数の更新対象モジュールの更新実体データを含んでいてもよい。
【００３９】
以下、図６および図７を参照して更新処理フローの詳細を説明する。図６および図７は、本実施形態の更新制御部２１６が実行する、プログラム更新における制御のフローチャートを示す。図に示した制御は、例えば、更新ファイル３０４を格納するＳＤメモリカード５４の挿入や、リモート更新を行なうための配布サーバからの更新ファイル３０４の受信を契機として、更新処理を実行するための起動様式により再起動されて、ステップＳ１００から開始される。
【００４０】
まずステップＳ１０１では、ＮＶ−ＲＡＭ２６に更新中断情報３０２が存在するか否かを判定する。このステップＳ１０１では、更新中断情報３０２の存在を確認することにより、前回の更新中に電源断などを要因として処理が中断されていたことを検知している。ステップＳ１０１で更新中断情報３０２が存在すると判定された場合（ＹＥＳ）には、制御をポイントＡに分岐させる。ポイントＡ以降の制御については後述する。一方、ステップＳ１０１で更新中断情報３０２が存在しないと判定された場合（ＹＥＳ）には、ステップＳ１０２へ制御を分岐させ、更新ファイル３０４の共通ヘッダから機種ＩＤおよびモジュールＩＤを取得し、本複合機１０に適合した更新ファイル３０４であるかを検証する。続いてステップＳ１０３では、更新ファイル３０４の電子署名により、更新実体データの正当性を検証する。
【００４１】
ステップＳ１０４では、ステップＳ１０２およびＳ１０３の検証の結果から、更新処理の実行を継続するか否かを判定する。ここでは、機種ＩＤが本複合機１０のものと一致し、モジュールＩＤに対応するソフトウェア・モジュールを本複合機１０が備えており、かつ、電子署名による更新実体データの正当性が証明された場合に、更新処理の実行を継続するものと判定することができる。なお、他の実施形態では、ここで、更新ファイル３０４に含まれる更新実体データが、複合機１０が備えるモジュールよりも新しいバージョンに対応しているか否かを検証する制御とすることもできる。ステップＳ１０４で更新処理の実行を継続すると判定された場合（ＹＥＳ）には、制御をステップＳ１０５へ分岐させ、以降、ステップＳ１０５からステップＳ１０８までのプライマリシステムに対する更新処理と、ステップＳ１０９からステップＳ１１２までのセカンダリシステムに対する更新処理とが、順次実行されることとなる。
【００４２】
ステップＳ１０５では、プライマリシステム用ヘッダから、更新先アドレス、更新先領域長、レスキューフラグ指定値およびインデックス指定値を取得する。ステップＳ１０６では、ＮＶ−ＲＡＭ２６に記憶されるレスキューフラグ３００、モジュールＩＤおよびインデックスを、取得したレスキューフラグ指定値、モジュールＩＤおよびインデックス指定値にそれぞれ設定する。ステップＳ１０７では、書換部２１８によりプライマリシステムの更新処理を開始させる。ステップＳ１０８では、書換部２１８からの応答を待受けて、プライマリシステムに対する更新処理が完了したか否かを判定し、完了していない間（ＮＯ）は、制御をステップＳ１０８内でループさせる。書換部２１８からの正常完了応答を受領し、ステップＳ１０８で更新処理が完了したと判定された場合（ＹＥＳ）には、制御をステップＳ１０９へ分岐させる。
【００４３】
ステップＳ１０９では、セカンダリシステム用ヘッダから、更新先アドレス、更新先領域長、レスキューフラグ指定値およびインデックス指定値を取得し、ステップＳ１１０では、ＮＶ−ＲＡＭ２６に記憶されるレスキューフラグ、モジュールＩＤおよびインデックスを、取得したレスキューフラグ指定値、モジュールＩＤおよびインデックス指定値にそれぞれ設定する。ステップＳ１１１では、書換部２１８によりセカンダリシステムの更新処理を開始させる。ステップＳ１１２では、書換部２１８からの応答を待受け、セカンダリシステムに対する更新処理が完了したか否かを判定し、完了していない間（ＮＯ）は、制御をステップＳ１１２内でループさせる。書換部２１８からの正常完了応答を受領し、ステップＳ１１２で更新処理が完了したと判定された場合（ＹＥＳ）には、制御をステップＳ１１３へ分岐させる。
【００４４】
プライマリおよびセカンダリシステムの更新処理が共に完了し、ステップＳ１１３では、更新中断情報３０２をＮＶ−ＲＡＭ２６から消去し、ステップＳ１１４でオペレーション・パネル４２にプログラム更新が正常に完了した旨の通知を行なわせ、ステップＳ１１５で制御を終了させる。一方で、ステップＳ１０４で更新処理の実行を継続しないと判定された場合（ＮＯ）には、制御は、ステップＳ１１６へ分岐させされる。ステップＳ１１６では、更新ファイルが適合しない旨、または更新実体データの正当性が確認できない旨などのエラー要因に関する情報とともに、オペレーション・パネル４２にエラー通知を行なわせ、ステップＳ１１５で制御を終了させる。
【００４５】
上述のステップＳ１０１の判定を再び参照すると、ステップＳ１０１で更新中断情報３０２が存在すると判定された場合（ＹＥＳ）には、上述したように、図７のステップＳ１１７へ制御が分岐させられ、プログラム更新の中断からの復旧のための再更新処理が行なわれることとなる。ステップＳ１１７では、モジュールＩＤおよびインデックスを含む更新中断情報３０２をＮＶ−ＲＡＭ２６から読出す。続いてステップＳ１１８では、更新ファイル３０４の共通ヘッダから、機種ＩＤおよびモジュールＩＤを取得し、本複合機１０に適合した更新ファイル３０４であるかを検証する。復旧時には、さらにステップＳ１１９で、ＮＶ−ＲＡＭ２６から読出した更新中断情報３０２のモジュールＩＤと、更新ファイル３０４の共通ヘッダから取得したモジュールＩＤとが一致するかを検証する。続いてステップＳ１２０では、更新ファイル３０４の電子署名により、更新実体データの正当性を検証する。
【００４６】
ステップＳ１２１では、ステップＳ１１８〜ステップＳ１２０の検証の結果から、更新処理の実行を継続するか否かを判定する。ここでは、機種ＩＤが本複合機１０のものと一致し、モジュールＩＤに対応するソフトウェア・モジュールを本複合機１０が備えており、電子署名による更新実体データの正当性が証明され、かつ、モジュールＩＤが一致している場合に、更新処理の実行を継続するものと判定することができる。ステップＳ１２１で更新処理の実行を継続しないと判定された場合（ＮＯ）には、ポイントＣへ、つまり図６のステップＳ１１６の制御へ分岐させる。ステップＳ１１６では、更新ファイルが適合しない旨、更新実体データの正当性が確認できない旨、またはモジュールが一致しない場合には更新ファイルが中断前後において相違する旨、オペレーション・パネル４２にエラー通知を行なわせ、ステップＳ１１５で制御を終了させる。
【００４７】
一方、ステップＳ１２１で更新処理の実行を継続すると判定された場合（ＹＥＳ）には、制御をステップＳ１２２へ分岐させ、以降、ステップＳ１２２からステップＳ１２６までのプライマリシステムに対する再更新と、ステップＳ１２７からステップＳ１３０までのセカンダリシステムに対する再更新とが、順次、試みられることとなる。
【００４８】
ステップＳ１２２では、プライマリシステム用ヘッダから、更新先アドレス、更新先領域長、レスキューフラグ指定値およびインデックス指定値を取得する。ステップＳ１２３では、更新中断情報３０２のインデックスの値と、ヘッダから取得されたインデックス指定値とを比較して、更新中断情報３０２のインデックスが示す更新処理の実行順位が、インデックス指定値が示す実行順位以下であるか否かを判定する。更新中断情報３０２のインデックスが示す実行順位がインデックス指定値のものより大きい場合は、前回の中断前に、そのシステムに対する更新処理が既に完了していたことを意味している。よって、ステップＳ１２２で、インデックス指定値が示す実行順位以下ではないと判定された場合（ＮＯ）には、プライマリシステムの再更新処理をスキップして、ステップＳ１２７へ分岐させる。
【００４９】
一方、ステップＳ１２２の判定で、インデックス指定値が示す実行順位以下であると判定された場合（ＹＥＳ）には、ステップＳ１２４へ制御を分岐させ、ＮＶ−ＲＡＭ２６に記憶されるレスキューフラグ３００、モジュールＩＤおよびインデックスを、取得したレスキューフラグ指定値、モジュールＩＤおよびインデックス指定値にそれぞれ設定し、ステップＳ１２５で、書換部２１８によりプライマリシステムの再更新処理を開始させる。ステップＳ１２６では、書換部２１８からの応答を待受けて、プライマリシステムに対する再更新処理が完了したか否かを判定し、完了していない間（ＮＯ）は、制御をステップＳ１２６内でループさせる。書換部２１８からの正常完了応答を受領し、ステップＳ１２６で更新処理が完了したと判定された場合（ＹＥＳ）には、制御をステップＳ１２７へ分岐させる。
【００５０】
ステップＳ１２７では、セカンダリシステム用ヘッダから、更新先アドレス、更新先領域長、レスキューフラグ指定値およびインデックス指定値を取得する。ステップＳ１２８では、ＮＶ−ＲＡＭ２６に記憶されるレスキューフラグ３００、モジュールＩＤおよびインデックスを、取得したレスキューフラグ指定値、モジュールＩＤおよびインデックス指定値にそれぞれ設定し、ステップＳ１２９で、書換部２１８によりセカンダリシステムの再更新処理を開始させる。ステップＳ１３０では、書換部２１８からの応答を待受けて、セカンダリシステムに対する再更新処理が完了したか否かを判定し、完了していない間（ＮＯ）は、制御をステップＳ１３０内でループさせる。書換部２１８からの正常完了応答を受領し、ステップＳ１３０で更新処理が完了したと判定された場合（ＹＥＳ）には、制御をポイントＢ、つまり図６のステップＳ１１３へ分岐させ、更新中断情報３０２をＮＶ−ＲＡＭ２６から消去し、ステップＳ１１４でオペレーション・パネル４２にプログラム更新の正常完了通知を行なわせ、ステップＳ１１５で制御を終了させる。
【００５１】
以下、図６および図７に示す制御フローによって、オペレーション・パネル４２に表示されるユーザ通知画面について説明する。図１１（Ａ）は、図６のステップＳ１１４の処理により、更新処理が正常に完了した旨を通知するために、オペレーション・パネル４２に表示されるＧＵＩ画面４２０の一例を示す。図１１（Ａ）に示したＧＵＩ画面４２０は、プログラム更新が正常に完了した旨のメッセージ４２２と、更新が完了したモジュールＩＤを示すメッセージ４２４と、オペレータからの確認を待受ける確認ボタン４２６とを含み構成される。
【００５２】
図１１（Ｂ）は、図６のステップＳ１１６の処理において、更新ファイル３０４の更新実体データの正当性が確認なかった旨をエラー通知するために、オペレーション・パネル４２に表示されるＧＵＩ画面４４０の一例を示す。図１１（Ｂ）に示したＧＵＩ画面４４０は、更新ファイル３０４の正当性が確認できなかった旨のメッセージ４４２と、オペレータからの確認を待受ける確認ボタン４４４とを含み構成される。
【００５３】
なお本実施形態では、オペレーション・パネル４２を介したユーザ通知を一例として説明しているが、ユーザ通知を行なうための機能手段は、オペレーション・パネル４２に限定されるものではない。他の実施形態では、プログラム更新中の中断を検知した旨の通知、更新処理が完了した旨の通知、更新エラー通知などを、ＮＩＣ３０を用いてメール送信によって行なったり、エンジン部４６を用いてサービスプリントによって行なってもよい。上記通知手段を備える構成により、オペレータは、プログラム更新のステータスを容易に把握することが可能となり、利便性が向上される。
【００５４】
以下、上述した更新処理の進行に従って遷移する上記レスキューフラグ、モジュールＩＤおよびインデックスについて、図８を参照して説明する。図８は、ＮＶ−ＲＡＭ２６に記憶される制御情報の更新処理進行に従った遷移を模式的に示す図である。図８には、レスキューフラグ、モジュールＩＤ、インデックスの制御情報の各項目について、その制御情報の値が遷移してゆく様子が示されている。図８において矢印は、時間経過を示し、各制御情報について、プライマリシステムの更新開始、セカンダリシステム更新開始および更新完了のタイミングでスライスされた、計４つの時間区間における値が示されている。
【００５５】
図８を参照すると、プライマリシステムの更新が開始される前、つまり更新処理自体が開始される前の段階では、レスキューフラグには、既定値である［ＯＦＦ］が設定され、モジュールＩＤおよびインデックスが、ＮＶ−ＲＡＭ２６上に存在していないことが示されている。そして、プライマリシステムの更新を開始したタイミングで、レスキューフラグが［ＯＮ］に設定され、更新中断情報３０２が設定され、図８では、モジュールＩＤには、［ＳＹＳＴＥＭ］の値、インデックスには［１／２］の値が設定されることが示されている。
【００５６】
さらに図８を参照すると、プライマリシステムの更新が完了し、セカンダリシステムの更新が開始された段階では、レスキューフラグが［ＯＦＦ］に再設定され、インデックスが［２／２］に再設定されていることが示されている。またセカンダリシステムの更新が完了した後、つまりすべての更新処理が完了された後では、インデックスおよびモジュールＩＤからなる更新中断情報３０２がＮＶ−ＲＡＭ２６上から消去され、レスキューフラグが既定値の［ＯＮ］に戻されていることが示されている。
【００５７】
上述のように、更新処理の進行に応じてＮＶ−ＲＡＭ２６に記憶されるレスキューフラグ、モジュールＩＤおよびインデックスなどの制御情報が遷移することとなり、複合機１０は、これらの制御情報に従って動作する。以下、図８に示した時間区間Ｉおよび時間区間ＩＩにおいて、電源断などによってプログラム更新が中断された場合の複合機１０の動作について説明する。
【００５８】
図９は、更新処理が中断された場合の複合機１０の動作を示すフローチャートである。図９（Ａ）は、図８に示した時間区間Ｉにおいて更新処理が中断された場合のフローチャートを示す。図９（Ａ）に示した動作は、時間区間Ｉにおいて中断された後、オペレータからの電源投入を受けて、ステップＳ２００から開始される。まず、プライマリシステムの更新中に更新処理が中断された場合にはレスキューフラグが［ＯＮ］に設定されているため、ステップＳ２０１では、複合機１０がセカンダリシステムにより起動される。以降、再更新処理が開始され、ステップＳ２０２では、更新ファイル３０４の共通ヘッダが解析され、ステップＳ２０３では、更新ファイル３０４に含まれる電子証明書によって電子認証が行なわれる。
【００５９】
続いてステップＳ２０４では、プライマリシステム用ヘッダが解析される。時間区間Ｉにおいて中断された場合には、更新中断情報３０２のインデックスには［１／２］が設定されているため、更新中断情報３０２のインデックスの実行順位が、プライマリシステム用ヘッダのインデックス指定値の実行順位と等しくなり、ステップＳ２０５でプライマリシステムの更新が実行される。続いてステップＳ２０６では、セカンダリシステム用ヘッダが解析され、ステップＳ２０７でセカンダリシステムの更新が実行され、ステップＳ２０８で更新処理が完了される。このように、プライマリシステムの更新中に更新の中断があった場合であっても、セカンダリシステムによって起動し、前回中断時に更新中であったプライマリシステムから再更新が行なわれるため、少なくとも一方のシステムによる起動が保証されることとなる。
【００６０】
図９（Ｂ）は、図８に示した時間区間ＩＩにおいて更新処理が中断された場合のフローチャートを示す。図９（Ａ）に示した動作は、時間区間ＩＩにおいて中断された後、オペレータからの電源投入を受けて、ステップＳ３００から開始し、ステップＳ３０１では、
セカンダリシステムの更新中に更新処理が中断された場合にはレスキューフラグが［ＯＦＦ］に設定されているため、複合機１０は、プライマリシステムにより起動される。以降、再更新処理が開始され、ステップＳ３０２では、更新ファイル３０４の共通ヘッダが解析され、ステップＳ３０３では、更新ファイル３０４に含まれる電子証明書によって電子認証が行なわれる。
【００６１】
続いてステップＳ３０４では、プライマリシステム用ヘッダが解析される。この場合、更新中断情報３０２のインデックスには［２／２］が設定されているため、更新中断情報３０２のインデックスの実行順位が、プライマリシステム用ヘッダのインデックス指定値の実行順位より大きくなり、プライマリシステムの更新がスキップされる。そしてステップＳ３０５では、セカンダリシステム用ヘッダが解析され、ステップＳ３０６でセカンダリシステムの更新が実行され、ステップＳ３０７で更新処理を完了させる。このように、セカンダリシステムの更新中に更新の中断があった場合であっても、プライマリシステムによって起動し、前回完了済のプライマリシステムの更新がスキップされ、中断のあったセカンダリシステムから再更新が行なわれるため、少なくとも一方のシステムによる起動が保証される。
【００６２】
また、図９（Ａ）のステップＳ２０４のプライマリシステムの更新中にさらに中断があったとしても、複合機１０は、再び図９（Ａ）と同じ動作をし、図９（Ａ）のステップＳ２０６のセカンダリシステムの更新時に中断があったとしても、複合機１０は、図９（Ｂ）と同じ動作をし、図９（Ｂ）のステップＳ３０５のセカンダリシステムの更新時に中断があったとしても、複合機１０は、図９（Ｂ）と同じ動作をし、少なくとも１つのシステムによる起動が保証されることとなる。
【００６３】
図６および図７に示した制御フローにおいて、更新処理を開始させる前に、その処理対象のシステムと相違する他システムによる起動を指定する値をレスキューフラッグに設定することにより、その更新処理中に電源断が発生した場合であっても、次回の起動時に、更新処理の対象ではなかった正常な他システムにより起動させることが可能となる。また、再更新によりシステムを復旧させる場合には、更新処理の進捗を示すインデックスが参照されて、更新が中断されたシステムから再更新が行なわれ、その完了後に順次他のシステムに対する更新処理が開始されることとなり、復旧前にプライマリシステムとセカンダリシステムとが共に更新中断を被ってしまう事態が好適に防止される。このようにして、如何なるタイミングで当該更新処理の中断が発生した場合であっても、また中断が連続して発生した場合であっても、少なくとも１つのシステムによる起動を保証することが可能となる。
【００６４】
以上説明したように、本実施形態によれば、システム・ファームウェアなど、更新処理の中断によりシステムに障害を与える可能性のあるソフトウェア・モジュールのプログラム更新において、如何なるタイミングで当該更新処理の中断が発生した場合であっても、また中断が連続して発生した場合であっても、少なくとも１つのシステムによる起動および障害を受けたシステムの復旧を可能とし、もってプログラム更新処理を安全に行なうことが可能な画像形成装置、プログラムおよび記録媒体を提供することができる。
【００６５】
オペレーティング・システムやプラットフォーム層のソフトウェア・モジュールなどからなるシステム・ファームウェアは、更新処理の中断により障害が発生した場合に、致命的なエラーを生じさせ易いため、本実施形態のプログラム更新制御は、このようなシステム・ファームウェアを構成するソフトウェア・モジュールの更新の際に好ましく適用することができる。
【００６６】
画像形成装置としては、上述した実施形態の複合機能を有した複合機に限られるものではなく、特定の用途に応じて、複写機、プリンタ、印刷機、ファクシミリなどの装置として構成することができる。また各システムの制御プログラムを格納する記憶手段は、上述した実施形態のＨＤＤに限定されるものではなく、フラッシュメモリなどの不揮発性記憶媒体、ＳＤメモリカードやＣＦ（コンパクトフラッシュ（登録商標））カードなどの着脱可能な記録媒体とすることができ、また各システムは異なる記憶手段に格納されていてもよい。
【００６７】
また、上記機能は、アセンブラ、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）、などのレガシープログラミング言語やオブジェクト指向プログラミング言語などで記述された装置実行可能なプログラムにより実現でき、ＲＯＭ、ＥＥＰＲＯＭ、ＥＰＲＯＭ、フラッシュメモリ、フレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤ−ＲＷ、ＤＶＤ、ＳＤメモリ、ＭＯなど装置可読な記録媒体に格納して頒布することができる。
【００６８】
以上本発明の特定の実施形態について説明してきたが、本発明の実施形態は上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【図面の簡単な説明】
【００６９】
【図１】複合機のハードウェア構成の実施形態を示す図。
【図２】本実施形態の複合機のソフトウェアおよびハードウェア構成を示す図。
【図３】本実施形態の複合機の起動処理に関する主要な機能構成を示すブロック図。
【図４】本実施形態の複合機におけるプログラム更新に関する主要な機能構成を示すブロック図。
【図５】更新ファイルのデータ構造の一例を示す図。
【図６】本実施形態の更新制御部が実行するプログラム更新における制御のフローチャート（１／２）。
【図７】本実施形態の更新制御部が実行するプログラム更新における制御のフローチャート（２／２）。
【図８】ＮＶ−ＲＡＭに記憶される制御情報の更新処理進行に従った遷移を模式的に示す図。
【図９】更新処理が中断された場合の複合機の動作を示すフローチャート。
【図１０】更新処理の中断が検知された場合にオペレーション・パネルに表示されるＧＵＩ画面の一例を示す図。
【図１１】オペレーション・パネル４２に表示されるＧＵＩ画面の一例を示す図。
【符号の説明】
【００７０】
１０…複合機、１２…コントローラ、１４…ＣＰＵ、１６…システムメモリ、１８…ＮＢ（ノース・ブリッジ）、２０…ＡＳＩＣ、２２…ローカルメモリ、２４…ＨＤＤ、２６…ＮＶ−ＲＡＭ、２８…ＳＢ（サウス・ブリッジ）、３０…ＮＩＣ、３２…スロット、３４…ＵＳＢＩ／Ｆ、３６…ＩＥＥＥ１３９４Ｉ／Ｆ、３８…セントロニクスＩ／Ｆ、４２…オペレーション・パネル、４４…ＦＣＵ、４６…エンジン部、４８…ＡＧＰ、５０、５２…ＰＣＩバス、５４…ＳＤメモリカード、５８…複合機起動部、６０…アプリケーション層、６２…コピー・アプリケーション、６４…ファックス・アプリケーション、６６…スキャナ・アプリケーション、６８…プリンタ・アプリケーション、７０…リモート更新アプリケーション、７２…ＡＰＩ、７４…ＥＣＳ、７６…ＭＣＳ、７８…ＯＣＳ、８０…ＦＣＳ、８２…ＮＣＳ、８４…ＳＣＳ、９０…ＳＲＭ、９２…ＩＭＨ、９４…ＯＳ、９８…エンジンＩ／Ｆ、１００…プラットフォーム層、１０２…ハードウェア・リソース、２１０…ブートローダ、２１２…更新中断検知部、２１４…更新部、２１６…更新制御部、２１８…書換部、２２０…解析部、２５０…起動システム、３００…レスキューフラグ、３０２…更新中断情報、３０４…更新ファイル、３１０…システム用制御プログラム、３１２…更新部分、４００，４２０，４４０…ＧＵＩ画面、４０２，４０４，４２２，４２４，４４２…メッセージ、４０６，４０８，４２６，４４４…ボタン
【図１】
2009042818.tif 000003
【図２】
2009042818.tif 000004
【図３】
2009042818.tif 000005
【図４】
2009042818.tif 000006
【図５】
2009042818.tif 000007
【図６】
2009042818.tif 000008
【図７】
2009042818.tif 000009
【図８】
2009042818.tif 000010
【図９】
2009042818.tif 000011
【図１０】
2009042818.tif 000012
【図１１】
2009042818.tif 000013