(58)【調査した分野】(Int.Cl.,DB名)
前記判定手段は、前記新たな更新プログラムのバージョンが前記バックアップ用の更新プログラムのバージョンより新しいか否かを判定し、前記新たな更新プログラムのバージョンが前記バックアップ用の更新プログラムのバージョンより新しい場合に、前記新たな更新プログラムの信頼性が高いか否かを判定する
請求項1に記載の画像処理装置。
前記更新手段は、新たな更新プログラムの機能プログラムのうち、一の機能プログラムのアップデートを完了すると、当該機能プログラムに対応するアップデート履歴テーブルの機能プログラムの項目に、成功情報を付加し、
前記判定手段は、前記新たな更新プログラムのアップデート履歴テーブルの成功情報と、前記バックアップ用の更新プログラムのアップデート履歴テーブルの成功情報とを各機能プログラムの項目毎に比較して、当該新たな更新プログラムのアップデート履歴テーブルの成功情報が、前記バックアップ用の更新プログラムのアップデート履歴テーブルの成功情報と同等以上であるか否かを判定する
請求項1又は2に記載の画像処理装置。
【背景技術】
【0002】
近年、情報処理及び通信技術の発達に伴い、制御プログラムを使った各種のネットワーク機器等の情報処理装置などの端末装置について、遠隔更新(リモートアップデート)の技術が提案されている。
【0003】
これは、端末装置が、遠隔の運用拠点にあるホスト装置から、新しいプログラムと書き換え指令を通信回線で受信し、制御プログラムを更新するものである。このような遠隔更新により、一部の設定ファイルなどの小さな保守に留まらず、リモート保守のための通信モジュール(例えば、TCP/IPモジュールなど)を含む、システムの大部分を書き換えようとする場合、次のリスクがある。
【0004】
第一は、予期せぬ停止による障害である。すなわち、書き換え途中に停電などによって装置が停止すると、制御プログラムが上書き途中となって破壊され装置が正常に動作しなくなることがあり、遠隔地からは復旧不能になることが多い。
【0005】
第二は、新しいプログラムの障害で、これは、新たに書き換えた制御プログラムに障害があって装置が正常に動作しなくなる場合である。テスト済みの制御プログラムで書き換えた場合でも、装置やネットワークの設定状態によって発生するような障害の場合、実際の装置に適用してみてはじめて障害が顕在化し、それにより遠隔地からは復旧不能になることがある。
【0006】
このようなリスクに対して、例えば、特開2005−284902号公報(特許文献1)には、応用ソフトウェアと、二つの更新プログラムと、を用いる端末装置が開示されている。この端末装置では、前記更新プログラムは、前記端末装置のコンピュータを制御することにより、前記応用ソフトウェア及び他方の更新プログラムを所定の通信手段経由のダウンロードにより更新する手段を実現することを特徴とする。これにより、更新中の電源断などの事故による予期せぬ停止で更新が失敗したり、更新でダウンロードした新しいプログラムに障害があっても、更新処理を行った側の古い更新プログラムが無傷で残るため、再度起動時等に更新をやり直すことが出来るとしている。又、更新プログラムの更新は、二段階で行い、新しい更新プログラムは、その更新プログラム自体を前記通信手段経由で更新することにより、正常動作を確認することが出来るとしている。
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1に記載の技術では、新しい更新プログラムが、その更新プログラム自体を前記通信手段経由にて更新出来たことにより動作保証をしており、応用ソフトウェアの更新機能に関して十分に保証していないという問題がある。
【0009】
ここで、応用ソフトウェアは、システム制御プログラムだけでなく、エンジン制御プログラムやスキャナ制御プログラム等の多岐のプログラムにわたるため、古い更新プログラムと比較して、応用ソフトウェアの更新機能が劣る新しい更新プログラムが更新される可能性がある。この場合、二つの更新プログラムが、ともにユーザーが求める応用ソフトウェアの更新機能を満たしていない状態に陥ってしまい、ユーザーに余分な更新プログラムのダウンロードを要求してしまうという問題がある。
【0010】
そこで、本発明は、前記問題を解決するためになされたものであり、信頼性の高いプログラムをバックアップして、プログラムの更新機能の低下を防止することが可能な画像処理装置及びプログラムのバックアップ方法を提供することを目的とする。
【課題を解決するための手段】
【0011】
上述した課題を解決し、目的を達成するために、本発明に係る画像処理装置は、バックアップ用の更新プログラムを所定のメモリーに記憶させておく画像処理装置であって、以下の構成を採用する。
【0012】
即ち、本発明は、新たな更新プログラムの実行中に、当該新たな更新プログラムにおける各機能プログラムのアップデートの成否を示すアップデート履歴を付ける更新手段と、前記新たな更新プログラムの実行が完了すると、当該新たな更新プログラムのアップデート履歴と、前記バックアップ用の更新プログラムのアップデート履歴とに基づいて、当該新たな更新プログラムの信頼性が高いか否かを判定する判定手段と、前記判定の結果、前記新たな更新プログラムの信頼性が高いと判定された場合に、前記バックアップ用の更新プログラムを、前記新たな更新プログラムに書き換えるバックアップ手段とを備えることを特徴とする。
【0013】
又、前記判定手段は、前記新たな更新プログラムのバージョンが前記バックアップ用の更新プログラムのバージョンより新しいか否かを判定し、前記新たな更新プログラムのバージョンが前記バックアップ用の更新プログラムのバージョンより新しい場合に、前記新たな更新プログラムの信頼性が高いか否かを判定する。
【0014】
又、前記更新手段は、新たな更新プログラムの機能プログラムのうち、一の機能プログラムのアップデートを完了すると、当該機能プログラムに対応するアップデート履歴テーブルの機能プログラムの項目に、成功情報を付加し、前記判定手段は、前記新たな更新プログラムのアップデート履歴テーブルの成功情報と、前記バックアップ用の更新プログラムのアップデート履歴テーブルの
成功情報とを各機能プログラムの項目毎に比較して、当該新たな更新プログラムのアップデート履歴テーブルの成功情報が、前記バックアップ用の更新プログラムのアップデート履歴テーブルの成功情報と同等以上であるか否かを判定する。
【0015】
又、前記更新手段は、前記新たな更新プログラムの実行自体が失敗した場合、前記バックアップ用の更新プログラムを実行する。
【0016】
又、本発明は、バックアップ用の更新プログラムを所定のメモリーに記憶させておくプログラムのバックアップ方法として提供することが出来る。
【0017】
即ち、本発明は、新たな更新プログラムの実行中に、当該新たな更新プログラムにおける各機能プログラムのアップデートの成否を示すアップデート履歴を付けるステップと、前記新たな更新プログラムの実行が完了すると、当該新たな更新プログラムのアップデート履歴と、前記バックアップ用の更新プログラムのアップデート履歴とに基づいて、当該新たな更新プログラムの信頼性が高いか否かを判定するステップと、前記判定の結果、前記新たな更新プログラムの信頼性が高いと判定された場合に、前記バックアップ用の更新プログラムを、前記新たな更新プログラムに書き換えるステップとを備えることを特徴とする。
【0018】
又、本発明は、電気通信回線などを介して個別に流通する、コンピュータに実行させるためのプログラムとして提供することができる。この場合、中央演算処理装置(CPU)が、本発明のプログラムに従ってCPU以外の各回路と協働して制御動作を実現する。又、前記プログラム及びCPUを用いて実現される各手段は、専用のハードウェアを用いて構成することもできる。又、当該プログラムは、CD−ROMなどのコンピュータ読み取り可能な記録媒体に記録された状態で流通させることも可能である。
【発明の効果】
【0019】
本発明の画像処理装置及びプログラムのバックアップ方法によれば、信頼性の高いプログラムをバックアップして、プログラムの更新機能の低下を防止することが可能となる。
【発明を実施するための形態】
【0021】
以下に、添付図面を参照して、本発明の画像処理装置の実施形態について説明し、本発明の理解に供する。尚、以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格のものではない。又、フローチャートにおける数字の前に付されたアルファベットSはステップを意味する。
【0022】
<画像処理装置>
以下に、本発明の実施形態に係る画像処理装置について説明する。
図1は、本発明の実施形態に係る画像処理装置の概略模式図である。但し、本発明に直接には関係しない各部の詳細は省略している。
【0023】
尚、本発明の画像処理装置は、例えば、コピー、スキャナ、プリンタ等の機能を備えた複合機が該当し、コピー機能、ファクシミリ送受信機能、スキャナ機能、プリンタ機能等を備えた画像処理装置として機能する。
【0024】
以下に、例えば、ユーザが、コピー機能を利用する場合の複合機100(MFP:Multi Function Peripheral)の動作を簡単に説明する。
【0025】
先ず、ユーザが複合機100を利用する場合、原稿を筐体部の上面に備えられている原稿台101に載置する。続いて、ユーザは、前記原稿台101近傍に備えられている操作部102(操作パネル)を使用して、画像形成に関する設定条件の入力を当該操作部102の初期画面(操作画面)から入力する。そして、ユーザが、画像形成に対応するコピー機能を選択して、前記操作部102に設けられたスタートキーを押下すると、前記複合機100が、前記設定条件に対応するコピー機能を開始する。
【0026】
ここで、画像読取部103において、光源104から照射された光が、前記原稿台101に置かれた原稿に反射される。反射された光は、ミラー105、106、107によって撮像素子108に導かれる。導かれた光は前記撮像素子108により光電変換されて、前記原稿に対応する画像データが生成される。
【0027】
ここで、前記画像データに基づいてトナー像を形成する部分が画像形成部109である。前記画像形成部109には感光体ドラム110が備えられている。上記感光体ドラム110は、一定速度で所定の方向に回転し、その周囲には、回転方向の上流側から順に、帯電器111、露光ユニット112、現像器113、転写器114、クリーニングユニット115などが配置されている。
【0028】
前記帯電器111は、前記感光体ドラム110表面を一様に帯電させる。前記露光ユニット112は、帯電された感光体ドラム110の表面に、前記画像データに基づいてレーザーを照射し、静電潜像を形成する。前記現像器113は、形成された静電潜像に、トナーを付着させてトナー像を形成する。形成されたトナー像は、前記転写器114により、記録媒体(例えば、用紙、シート)に転写される。前記クリーニングユニット115は、前記感光体ドラム110の表面に残された余分なトナーを取り除く。これらの一連のプロセスは、前記感光体ドラム110が回転することにより実行される。
【0029】
前記シートは、複合機100に備えられた複数の給紙カセット116から搬送される。搬送される時は、前記シートは、ピックアップローラ117により何れか1つの給紙カセット116から搬送路へ引き出される。各給紙カセット116には、それぞれ異なる紙種のシートが収容されており、画像形成に関する設定条件に基づいてシートが給紙される。
【0030】
搬送路に引き出されたシートは、搬送ローラ118やレジストローラ119により感光体ドラム110と転写器114の間に送り込まれる。送り込まれると、前記シートは前記転写器114により前記トナー像が転写され、定着装置120に搬送される。
【0031】
前記トナー像が転写されたシートが、前記定着装置120に備えられた加熱ローラと加圧ローラの間を通過すると、前記トナー像に熱と圧力が印加されて、可視像がシートに定着される。前記加熱ローラの熱量は、紙種に応じて最適に設定され、前記定着が適切に行われる。前記可視像がシートに定着されて画像形成が終了し、当該シートは搬送ローラ118により、排紙口121を介して、前記筐体部の胴内に設けられた胴内トレイ122へ排紙される。前記シートは、前記胴内トレイ122に積載され、収容される。上記手順により、複合機100は画像形成機能をユーザに提供する。
【0032】
又、複合機100には、ネットワーク300と通信可能な通信部200を備えており、当該通信部200は、ネットワーク300を介して、他の端末装置からデータ等のやり取りをすることが可能である。又、複合機100には、外部記憶媒体(例えば、USBメモリー)400と接続可能であり、当該外部記憶媒体400からデータ等のやり取りをすることが可能である。
【0033】
図2は、本発明の実施形態に係る操作部の全体構成を示す概念図である。ユーザは、前記操作部102を用いて、上述のような画像形成についての設定条件を入力したり、入力された設定条件を確認したりする。前記設定条件が入力される場合、前記操作部102に備えられたタッチパネル201(操作パネル)、タッチペン202、操作キー203が用いられる。
【0034】
前記タッチパネル201には、設定条件を入力する機能と当該設定条件を表示する機能が兼ね備えられている。即ち、タッチパネル201上に表示された画面内のキーを押下することによって、当該押下されたキーに対応する設定条件が入力される。
【0035】
前記タッチパネル201の背面には、LCD(Liquid Crystal Display)等の表示部(図示せず)が設けられており、当該表示部が、例えば、前記初期画面等の操作画面を表示する。前記タッチパネル201の近傍には、タッチペン202が備えられており、ユーザがそのタッチペン202の先をタッチパネル201に接触させると、タッチパネル201下に設けられたセンサーが接触先を検知する。
【0036】
更に、タッチパネル201近傍には、所定数の操作キー203が設けられ、例えば、テンキー204、スタートキー205、クリアキー206、ストップキー207、リセットキー208、電源キー209が備えられている。
【0037】
次に、
図3を用いて、複合機100の制御系ハードウェアの構成を説明する。
図3は、本発明に係る複合機100の制御系ハードウェアの構成を示す図である。ただし、本発明に直接には関係しない各部の詳細は省略している。
【0038】
複合機100の制御回路は、CPU(Central Processing Unit)301、ROM(Read Only Memory)302、RAM(Random Access Memory)303、HDD(Hard Disk Drive)304、各駆動部に対応するドライバ305、タッチパネル201、操作キー203を内部バス306によって接続している。
【0039】
CPU301は、例えば、RAM303を作業領域として利用し、ROM302、HDD304等に記憶されているプログラムを実行し、当該実行結果に基づいてドライバ305、タッチパネル201からのデータや指示、操作キー203に対応する信号、命令等を授受し、
図1に示した各駆動部の動作を制御する。又、CPU301は、通信部200を介してネットワーク300の端末装置や外部記憶媒体400からデータ等を受信したり送信したりする。
【0040】
又、前記駆動部以外の後述する各手段(
図4に示す)についても、上述と同様に、CPU301がプログラムを実行することで当該各手段を実現する。ROM302、HDD304等には、以下に説明する各手段を実現するプログラムやデータが記憶されている。
【0041】
<本発明の実施形態>
次に、
図4、
図5を参照しながら、本発明の実施形態に係る構成及び実行手順について説明する。
図4は、本発明の複合機の機能ブロック図である。又、
図5は、本発明の実行手順を示すためのフローチャートである。
【0042】
先ず、ユーザーが、複合機100に電源を投入すると、当該複合機100の表示受付手段401が、初期画面をタッチパネル201上に表示して、ユーザーから指示の入力を受け付ける。
【0043】
ここで、ユーザーが、複合機100の各機能を実行するための複数の機能プログラム(応用ソフトウェア)をバージョンアップ(更新)しようと考え、前記初期画面からシステム画面へ移行させ、バージョンアップキーを押下すると、表示受付手段401が、当該バージョンアップキーの押下を受け付けて、その旨を更新手段402に通知する。当該通知を受けた更新手段402は、機能プログラムのバージョンアップを開始する(
図5:S101)。
【0044】
更新手段402が機能プログラムのバージョンアップを開始する方法は、どのような方法でも構わないが、例えば、ユーザーの選択により、ネットワーク300を介して所定の端末装置に記憶されている新たな更新プログラムをダウンロードする方法、USBメモリー400等の外部記憶媒体を介して新たな更新プログラムをダウンロードする方法等が挙げられる。
【0045】
ここでは、例えば、更新手段402が、USBメモリー400を介して新たな更新プログラムをダウンロードし、当該新たな更新プログラムを所定のメモリーの通常領域に記憶させる(
図5:S102)。このメモリーの通常領域は、例えば、複合機100が各機能の実行の際に利用するメモリー領域を意味し、例えば、バックアップのためのメモリー領域とは異なる。
【0046】
新たな更新プログラムを所定のメモリーの通常領域に記憶させると、更新手段402は、当該新たな更新プログラムを実行することで(
図5:S103)、機能プログラムをバージョンアップする。
【0047】
ここで、更新手段402が、新たな更新プログラムを実行すると、当該新たな更新プログラムには、各機能プログラムを順次アップデートする手順が記憶されているため、更新手段402は、新たな更新プログラムに記憶された機能プログラムをアップデートする(
図5:S104)。
【0048】
この機能プログラムは、複合機100の各機能に関係するプログラムに対応し、例えば、応用ソフトウェアであれば、BOOTプログラム、システムプログラム、オプション言語データ、エンジンプログラム、スキャナプログラム、エンハンス系プログラム等を挙げることが出来る。
【0049】
さて、更新手段402が、機能プログラムをアップデートする方法は、どのような方法でも構わないが、例えば、ネットワーク300経由であれば、所定の端末装置から所定の機能プログラムをダウンロードする方法となり、USBメモリー400経由であれば、複合機100に接続されたUSBメモリー400から所定の機能プログラムをダウンロードする方法となる。上述では、USBメモリーから各機能プログラムをダウンロードすることになる。
【0050】
尚、機能プログラムのアップデートは、例えば、ユーザーが予め選択して要求した機能プログラムがあれば、更新手段402が、それを受けて、ユーザーの要求に対応して機能プログラムをアップデートしても良い。
【0051】
ここで、更新手段402は、新たな更新プログラムの実行中に、当該新たな更新プログラムにおける各機能プログラムのアップデートの成否を示すアップデート履歴を付ける。
【0052】
具体的には、更新手段402が、一の機能プログラム(例えば、BOOTプログラム)のアップデートを完了(成功)すると(
図5:S105YES)、更新プログラムのアップデート履歴テーブルのうち、完了した機能プログラムに対応して、アップデートが完了した旨を示す成功情報(例えば、「1」)をフラグとして付加する(
図5:S106)。
【0053】
ここで、前記更新プログラムのアップデート履歴テーブル600は、
図6(A)に示すように、更新プログラムのバージョン601(例えば、「1.5」)と、各機能プログラムを示す項目602と、各機能プログラムをアップデートした手段603(例えば、USB経由か、ネットワーク経由)と、アップデートが完了したか否かを示す成否情報604(例えば、完了した旨を示す成功情報の「1」か、完了しない旨を示す不成功情報「0」)が関連付けて記憶される。更新手段402が、更新プログラムの履歴テーブル600へ成功情報を付加することで、更新プログラムの成功具合をアップデート履歴として残すことが可能となる。
【0054】
前記成功情報を履歴テーブルに付加すると、更新手段402は、次にアップデートする機能プログラムがあるか否かを判定する(
図5:S107)。前記判定の結果、次にアップデートする機能プログラムがある場合(
図5:S107NO)、更新手段402は、S104に戻って、次の機能プログラムをアップデートすることになる(
図5:S104)。これにより、更新手段402は、機能プログラムを順次アップデートすることになる。
【0055】
ところで、S105において、更新手段402が、一の機能プログラムのアップデートを何らかの理由(機能劣化、機能の不整合、通信不良、互換性不良等)により完了できなかった場合は(
図5:S105NO)、前記成功情報を付加することなく、前記不成功情報を付加したまま、S107へ移行することになる。
【0056】
尚、今回の新たな更新プログラムでは、BOOTプログラム、システムプログラム、オプション言語データのアップデートを実行し、それぞれのアップデートが成功したものとする。
【0057】
さて、更新手段402が、S104からS107を繰り返すことで、全ての機能プログラムのアップデート(更新プログラムの実行)を完了すると(
図5:S107YES)、その旨を判定手段403に通知する。当該通知を受けた判定手段403は、先ず、所定のメモリーのバックアップ領域に記憶されている古い更新プログラムのバージョン(例えば、「1.2」)を参照して、先ほど実行された新たな更新プログラムのバージョン(「1.5」)が、前記バックアップ用の(古い)更新プログラムのバージョン(「1.2」)より新しいか否かを判定する(
図5:S108)。
【0058】
前記判定の結果、先ほど実行された新たな更新プログラムのバージョン(「1.5」)が、前記バックアップ用の更新プログラムのバージョン(「1.2」)より新しい場合に(
図5:S108YES)、判定手段403は、先ほど実行された新たな更新プログラムはバックアップの対象としても良いと判断し、次に、新たな更新プログラムのアップデート履歴と、前記バックアップ用の更新プログラムのアップデート履歴とに基づいて、当該新たな更新プログラムの信頼性が高いか否かを判定する(
図5:S109)。
【0059】
判定手段403が、新たな更新プログラムの信頼性が高いか否かを判定する方法は、どのような方法でも構わないが、例えば、以下のようになされる。
【0060】
即ち、先ず、判定手段403が、上述した前記新たな更新プログラムのアップデート履歴テーブル600を参照するとともに、前記バックアップ用の更新プログラムのアップデート履歴テーブルを参照する。
【0061】
ここで、前記新たな更新プログラムのアップデート履歴テーブル605と、前記バックアップ用の更新プログラムのアップデート履歴テーブル606とは、
図6(B)に示すように、各機能プログラムを示す項目602に対して成否情報604が関連付けて記憶されている。
【0062】
そこで、判定手段403は、前記新たな更新プログラムのアップデート履歴テーブル605の成否情報604と、前記バックアップ用の更新プログラムのアップデート履歴テーブル606の成否情報604とを各機能プログラムの項目602毎に比較する。この際、判定手段403は、ダウンロードする手段603(例えば、USB経由)を共通として、同一の機能プログラムの項目602における記新たな更新プログラムのアップデート履歴テーブル605の成否情報604と、前記バックアップ用の更新プログラムのアップデート履歴テーブル606の成否情報604とを比較する。そして、判定手段403は、前記新たな更新プログラムのアップデート履歴テーブル605の成功情報(「1」)が、前記バックアップ用の更新プログラムのアップデート履歴テーブル606の成功情報(「1」)と同等以上であるか否か、つまり、前記新たな更新プログラムのアップデート履歴テーブル605の成功情報(「1」)が、前記バックアップ用の更新プログラムのアップデート履歴テーブル606の成功情報(「1」)を包含しているか否かを判定する(
図5:S109)。
【0063】
前記判定の結果、前記新たな更新プログラムのアップデート履歴テーブル605の成功情報が、前記バックアップ用の更新プログラムのアップデート履歴テーブル606の成功情報と同等以上である場合(
図5:S109YES)、判定手段403は、新たな更新プログラムの信頼性が高いと判定し、その旨をバックアップ手段404に通知する。当該通知を受けたバックアップ手段404は、前記バックアップ用の更新プログラムを、前記新たな更新プログラムに書き換える(
図5:S110)。具体的には、バックアップ手段404が、メモリーのバックアップ領域に記憶されたバックアップ用の更新プログラムを、通常領域に記憶した新たな更新プログラムに書き換える。
【0064】
これにより、アップデートで成功した実績のある更新プログラムのみをバックアップ領域に格納することが可能となるため、各機能プログラム(応用ソフトウェア)の更新機能の低下を防止することが可能となる。又、新たな更新プログラムにおいてアップデートが失敗し、バックアップ用の更新プログラムでリカバリ処理を実行する場合に、更に、アップデートが失敗するというリスクを軽減することが可能となる。
【0065】
又、仮に、各機能プログラムにおいて更新機能の低下に陥った場合に、通常であれば、更新プログラムを新たにダウンロードすることになるが、本発明では、アップデートで成功の実績がある更新プログラムをバックアップ用としているため、それを実行すれば、かなりの確率で機能プログラムのアップデートが成功することになる。そのため、従来における、更新機能の低下による更新プログラムのダウンロードの回数を軽減することが可能となる。
【0066】
一方、S109において、前記判定の結果、前記新たな更新プログラムのアップデート履歴テーブル605の成功情報が、前記バックアップ用の更新プログラムのアップデート履歴テーブル606の成功情報と同等以上でない場合(
図5:S109NO)は、以下のようになる。
【0067】
例えば、
図6(B)に示すように、前記新たな更新プログラムのアップデート履歴テーブル605では、USB経由において、BOOTプログラム、システムプログラム、オプション言語データに成功情報が付加され、前記バックアップ用の更新プログラムのアップデート履歴テーブル606では、BOOTプログラム、システムプログラム、オプション言語データ、エンジンプログラムに成功情報が付加されている場合、明らかに前記バックアップ用の更新プログラムが、アップデートでの成功実績を有することになる。この場合は、判定手段403は、新たな更新プログラムの信頼性が低いと判定し、処理を終了する。つまり、この場合は、前記バックアップ用の更新プログラムは、そのまま記憶され続けることになる。
【0068】
これにより、何らかの理由により、バックアップ用の更新プログラムを実行する場合に、アップデートでの成功実績を有する更新プログラムを実行することになるため、円滑に更新プログラムの実行を進行させることが可能となる。
【0069】
又、S108において、前記判定の結果、新たな更新プログラムのバージョンが、前記バックアップ用の更新プログラムのバージョンより古い場合(
図5:S108NO)、判定手段403は、何らかの理由により古い更新プログラムを実行し、この古い更新プログラムをバックアップ用の更新プログラムにすべきでないと判定し、処理を終了する。この場合は、上述と同様に、前記バックアップ用の更新プログラムは、そのまま記憶され続けることになる。
【0070】
このように、本発明では、新たな更新プログラムの実行中に、当該新たな更新プログラムにおける各機能プログラムのアップデートの成否を示すアップデート履歴を付ける更新手段402と、前記新たな更新プログラムの実行が完了すると、当該新たな更新プログラムのアップデート履歴と、前記バックアップ用の更新プログラムのアップデート履歴とに基づいて、当該新たな更新プログラムの信頼性が高いか否かを判定する判定手段403と、前記判定の結果、前記新たな更新プログラムの信頼性が高いと判定された場合に、前記バックアップ用の更新プログラムを、前記新たな更新プログラムに書き換えるバックアップ手段404とを備えることを特徴とする。これにより、信頼性の高いプログラムをバックアップして、プログラムの更新機能の低下を防止することが可能となる。
【0071】
尚、本発明の実施形態では、更新プログラムの実行自体が失敗した場合を想定しなかったが、前記更新プログラムの実行自体が失敗した場合、例えば、当該高新プログラムの機能プログラムのアップデートが全て失敗した場合は、更新手段402が、前記バックアップ用の更新プログラムを実行するよう構成しても良い。これにより、新たな更新プログラムに何らかの欠陥があった場合は、信頼性の高いバックアップ用の更新プログラムを実行して、リカバリ処理を行うことが可能となるため、システムを正常に戻すことが可能となる。
【0072】
又、本発明の実施形態では、複合機100が各手段を備えるよう構成したが、当該各手段を実現するプログラムを記憶媒体に記憶させ、当該記憶媒体を提供するよう構成しても構わない。当該構成では、前記プログラムを複合機100に読み出させ、当該複合機100が前記各手段を実現する。その場合、前記記録媒体から読み出されたプログラム自体が本発明の作用効果を奏する。さらに、各手段が実行するステップをハードディスクに記憶させる方法として提供することも可能である。