JP4128516B2 - 画像形成装置、プログラム更新方法 - Google Patents

画像形成装置、プログラム更新方法 Download PDF

Info

Publication number
JP4128516B2
JP4128516B2 JP2003364032A JP2003364032A JP4128516B2 JP 4128516 B2 JP4128516 B2 JP 4128516B2 JP 2003364032 A JP2003364032 A JP 2003364032A JP 2003364032 A JP2003364032 A JP 2003364032A JP 4128516 B2 JP4128516 B2 JP 4128516B2
Authority
JP
Japan
Prior art keywords
update
program
image forming
forming apparatus
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003364032A
Other languages
English (en)
Other versions
JP2004194298A (ja
Inventor
悟 杉下
良彦 阿部
良一 加藤
勝彦 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2003364032A priority Critical patent/JP4128516B2/ja
Priority to US10/713,195 priority patent/US7380243B2/en
Publication of JP2004194298A publication Critical patent/JP2004194298A/ja
Application granted granted Critical
Publication of JP4128516B2 publication Critical patent/JP4128516B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Facsimiles In General (AREA)
  • Stored Programmes (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、1つ以上のプログラムの更新に関し、特にプログラムを更新する画像形成装置、及びそのプログラム更新方法に関する。
近年、ファクシミリ、プリンタ、コピーおよびスキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、融合機という)が知られるようになった。この融合機は、1つの筐体内に表示部、印刷部および撮像部などを設けると共に、ファクシミリ、プリンタ、コピーおよびスキャナにそれぞれ対応する4種類のアプリケーションを設け、そのアプリケーションを切り替えることより、ファクシミリ、プリンタ、コピーおよびスキャナとして動作させるものである。
このように、融合機は、プログラムに基づき処理を実行する種々のアプリケーションやモジュールにより動作しているため、NV−RAMなどに書き込まれたプログラムを更新することにより、新たな機能の追加などを行うことができる。
このプログラムの更新処理は、インターネットなどのネットワークを介し、更新プログラムが格納されたサーバに接続し更新プログラムを取得(以下、ダウンロードと記す)することにより行われることがある。
このダウンロードした更新プログラムは、プリンタのプログラムを更新するものや、印刷用紙に関する制御を行うプログラムを更新するものなど、複数のプログラムが含まれ、それらが連続し、1つのデータのようになっている。
この更新プログラムのデータ構造は、例えば図37に示されるように、更新プログラム全体のヘッダである更新プログラムヘッダが先頭にあり、次に個々の更新プログラムのヘッダである個別更新プログラムヘッダと更新プログラム本体が、更新プログラムの数だけ連続するデータ構造となっている。
更新プログラムヘッダの全レングスは、更新プログラムヘッダを除く全体のデータ長を表し、全プログラム数は、この更新プログラムに含まれる全ての更新プログラムの数を示す。また、個別更新プログラムヘッダのプログラム種類は、例えばプリンタ用プログラムなどのプログラムの種類を表し、バージョンは、更新プログラムのバージョンを表し、レングスは更新プログラム本体のデータ長を表す。
このように連続した更新プログラムを、図37に示したデータ構造の順序通りにプログラムの更新を行うと、プログラムの更新ができなくなる可能性がある。
また、サービスマンなどが画像形成装置を直接操作せず、ネットワークを介して行われるプログラムの更新の場合、プログラムを更新した画像形成装置の画面には、プログラムの更新が完了したことが表示されることがある。
画像形成装置にそのような画面が表示されていると、オペレータが使用する際に戸惑う原因となる。また、プログラムの更新によりオペレータが電源を入れ直したりしなければならない。
このように、サービスマンなどが画像形成装置を直接操作せず、ネットワークを介して行われるプログラムの更新の場合、プログラムの更新が夜間などに自動的に行われることも相俟って、オペレータは、プログラムが更新されたことや更新結果を知ることができないか困難であった。
本発明は、このような問題点に鑑み、プログラムをネットワークを介して更新する画像形成装置に好適なプログラム更新方法、そのプログラム更新方法を搭載した画像形成装置を提供することを目的とする。
上記課題を解決するために、本発明は、画像形成に係る処理を行う1つ以上の処理部と、前記処理部と直接または他の処理部を介して通信する制御部と、前記処理部と前記制御部とを動作させるプログラムとを有する画像形成装置において、前記プログラムを更新する更新プログラムを取得する更新プログラム取得部と、一の処理部の前記プログラムを、該一の処理部と前記制御部とが通信をするために経由する処理部の数に応じて定まる順番で、前記更新プログラムに更新させるプログラム更新部とを有することを特徴とする。
また、上記課題を解決するために、本発明は、前記プログラム更新部は、前記更新プログラム取得部が取得した更新プログラムに基づき、前記順番を定める更新順番情報を生成することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新順番情報は、前記順番と、取得した更新プログラムにより更新されるプログラムの種類とを対応付けた情報を有することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新順番情報は、取得した更新プログラムにより更新されるプログラムの更新状況を示す情報を有することを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、画像形成処理に係る処理を実行する1つ以上のアプリケーションを有し、前記プログラム更新部は、各アプリケーションのプログラムを個々に更新することが可能であることを特徴とする。
また、上記課題を解決するために、本発明は、前記プログラム更新部は、前記画像形成装置を操作するオペレータに対して該画像形成装置に関する情報を表示する処理を行う処理部の前記プログラムを更新する順番を最後の順番とすることを特徴とする。
また、上記課題を解決するために、本発明は、ネットワークと接続するための通信部をさらに有し、前記更新プログラム取得部は、前記通信部により前記更新プログラムを取得することを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、前記プログラムの更新が終了した処理部の順に該処理部を再起動させることを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、前記プログラムを更新する全ての処理部が更新を終了した後に、前記プログラムを更新した処理部を再起動させることを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、自らのプログラムを更新する際に、該プログラムが格納された記憶領域とは異なる他の記憶領域に格納された更新用プログラムで動作することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新用プログラムは、揮発性記憶部の領域に格納されることを特徴とする。
また、上記課題を解決するために、本発明は、前記更新用プログラムのサイズは、前記制御部のプログラムのサイズより小さいことを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、前記処理部のプログラムを更新する際に、該処理部に対し、処理の実行を制限させることを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、前記プログラムを更新した処理部との通信が切断すると、自らを再起動することを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、再起動をさせる前記処理部のうち、最後に処理部を再起動させてから所定の時間が経過した後に自らを再起動することを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、自らが再起動する際に、画像形成装置に係る装置状態を不揮発性記憶部に記憶し、前記制御部の再起動後、記憶した前記装置状態に前記画像形成装置の状態を遷移させることを特徴とする。
また、上記課題を解決するために、本発明は、前記装置状態は、前記画像形成装置の消費電力を低減する状態である省電力状態であることを特徴とする。
また、上記課題を解決するために、本発明は、前記画像形成装置に関する情報を表示する表示部を有し、前記装置状態は、前記表示部に表示されている情報の状態であることを特徴とする。
また、上記課題を解決するために、本発明は、前記表示部は、前記プログラムの更新の進捗状況を表示することを特徴とする。
また、上記課題を解決するために、本発明は、前記表示部は、前記画像形成装置の消費電力を低減する状態であれば、前記プログラムの更新の進捗状況を表示しないことを特徴とする。
また、上記課題を解決するために、本発明は、前記プログラム更新部は、取得した更新プログラムに関する情報を含む更新管理テーブルを生成することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新管理テーブルは、取得した更新プログラムを特定するモジュールIDを含むことを特徴とする。
また、上記課題を解決するために、本発明は、前記処理部は、前記制御部が直接に再起動可能な処理部と、前記制御部が前記処理部に対して再起動要求を行うことにより再起動可能な処理部との2つの種類があることを特徴とする。
また、上記課題を解決するために、本発明は、前記プログラムを更新した結果を示す更新結果情報を生成する更新結果情報生成部と、前記更新結果情報に基づいた更新結果を出力する更新結果出力部とをさらに有することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果出力部は、前記更新結果を印刷するか、電子メールで送信するか、画像形成装置に関する情報を表示する表示部に表示することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果情報は、更新前のプログラムのバージョンと、更新後のプログラムのバージョンと、更新した日時と、更新の成否のうち、いずれか1つ以上を含むことを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果情報生成部は、前記更新結果情報を不揮発性記憶部に記憶することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果情報生成部は、過去に行った更新での更新結果情報に基づく更新履歴情報に、生成した更新結果情報を追記することを特徴とする。
また、上記課題を解決するために、本発明は、前記制御部は、前記更新結果情報生成部が前記更新結果情報を不揮発性記憶部に記憶した後に、前記画像形成装置を再起動し、前記更新結果出力部は、再起動後に前記更新結果を出力することを特徴とする。
また、上記課題を解決するために、本発明は、画像形成に係る処理を行う1つ以上の処理部と、前記処理部と直接または他の処理部を介して通信する制御部と、前記処理部と前記制御部とを動作させるプログラムとを有する画像形成装置のプログラム更新方法であって、前記プログラムを更新する更新プログラムを取得する更新プログラム取得段階と、一の処理部の前記プログラムを、該一の処理部と前記制御部との通信をするために経由する処理部の数に応じて定まる順番で、前記更新プログラムに更新させるプログラム更新段階とを有することを特徴とする。
また、上記課題を解決するために、本発明は、画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行う1つ以上の処理部と、該処理部を動作させるプログラムと、通信部とを有する画像形成装置のプログラム更新方法であって、前記プログラムを更新する更新プログラムを、前記通信部により取得する更新プログラム取得段階と、前記プログラムを、前記更新プログラムで更新するプログラム更新段階と、前記プログラムを更新した処理部を再起動させる再起動段階とを有することを特徴とする。
また、上記課題を解決するために、本発明は、前記再起動段階は、前記プログラムの更新をした処理部の順に再起動することを特徴とする。
また、上記課題を解決するために、本発明は、画像形成処理で使用されるハードウェア資源と、画像形成に係る処理を行うプログラムと、通信部とを有する画像形成装置のプログラム更新方法において、前記プログラムを更新する更新プログラムを前記通信部により取得する更新プログラム取得段階と、前記プログラムを、前記更新プログラムで更新するプログラム更新段階と、前記プログラムを更新した結果を示す更新結果情報を生成する更新結果情報生成段階と、前記更新結果情報に基づく更新結果を出力する更新結果出力段階とを有することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果出力段階では、前記更新結果を印刷するか、電子メールで送信するか、前記画像形成装置が有する表示部に表示することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果情報は、更新前のプログラムのバージョンと、更新後のプログラムのバージョンと、更新した日時と、更新の成否のうち、いずれか1つ以上を含むことを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果情報生成段階では、過去に行った更新の更新結果情報に基づく更新履歴情報に、生成した更新結果情報を追記することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果情報生成段階の後に、前記画像形成装置の再起動後を行う再起動段階をさらに有することを特徴とする。
また、上記課題を解決するために、本発明は、前記更新結果情報生成段階は、前記画像形成装置が再起動する前に、前記画像形成装置が有する不揮発性記憶部に、前記更新結果情報を記憶することを特徴とする。
以上説明したように、本発明によれば、プログラムをネットワークを介して更新する画像形成装置に好適なプログラム更新方法、そのプログラム更新方法を搭載した画像形成装置が得られる。
以下、本発明の実施例を図面に基づいて説明する。なお、本実施例において、更新プログラムをダウンロードするとは、更新プログラムを取得し、メモリなどの所定の記憶領域に更新プログラムを格納することとする。また、更新プログラムとは、現在運用されているプログラムに代わる新たなプログラムであり、更新用プログラムとは、運用されているプログラムを更新プログラムに更新する処理を実行するプログラムである。
図1は、本発明による融合機の一実施例の構成図を示す。融合機1は、ソフトウェア群2と、融合機起動部3と、ハードウェア資源4とを含むように構成される。
融合機起動部3は融合機1の電源投入時に最初に実行され、アプリケーション層5およびプラットホーム層6を起動する。例えば融合機起動部3は、アプリケーション層5およびプラットホーム層6のプログラムを、ハードディスク装置(以下、HDDという)などから読み出し、読み出した各プログラムをメモリ領域に転送して起動する。ハードウェア資源4は、スキャナ25と、プロッタ26と、ADF(Auto Document Feeder)などのハードウェアリソース24とを含む。
また、ソフトウェア群2は、UNIX(登録商標)などのオペレーティングシステム(以下、OSという)上に起動されているアプリケーション層5とプラットホーム層6とを含む。アプリケーション層5は、プリンタ、コピー、ファックスおよびスキャナなどの画像形成にかかるユーザサービスにそれぞれ固有の処理を行うプログラムを含む。
アプリケーション層5は、プリンタ用のアプリケーションであるプリンタアプリ9と、コピー用アプリケーションであるコピーアプリ10と、ファックス用アプリケーションであるファックスアプリ11と、スキャナ用アプリケーションであるスキャナアプリ12とを含む。
また、プラットホーム層6は、アプリケーション層5からの処理要求を解釈してハードウェア資源4の獲得要求を発生するコントロールサービス層7と、1つ以上のハードウェア資源4の管理を行ってコントロールサービス層7からの獲得要求を調停するシステムリソースマネージャ(以下、SRMという)21と、SRM21からの獲得要求に応じてハードウェア資源4の管理を行うハンドラ層8とを含む。
コントロールサービス層7は、ネットワークコントロールサービス(以下、NCSという)13、リモートサービス(以下、RSという)14、オペレーションパネルコントロールサービス(以下、OCSという)15、ファックスコントロールサービス(以下、FCSという)16、エンジンコントロールサービス(以下、ECSという)17、メモリコントロールサービス(以下、MCSという)18、オンデマンドアップデートサービス(以下、OUSという)19、システムコントロールサービス(以下、SCSという)20など、一つ以上のサービスモジュールを含むように構成されている。
なお、プラットホーム層6は予め定義されている関数により、アプリケーション層5からの処理要求を受信可能とするAPI28を有するように構成されている。OSは、アプリケーション層5およびプラットホーム層6の各ソフトウェアをプロセスとして並列実行する。
通信部に対応するNCS13のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するものであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、各アプリケーションからのデータをネットワーク側に送信する際の仲介を行う。
例えばNCS13は、ネットワークを介して接続されるネットワーク機器とのデータ通信をhttpd(HyperText Transfer Protocol Daemon)により、HTTP(HyperText Transfer Protocol)で制御する。
RS14のプロセスは、インターネットなどのネットワークを用いたサービスを行う。OCS33のプロセスは、オペレータと本体制御との間の情報伝達手段となるオペレーションパネルの制御を行う。FCS16のプロセスは、アプリケーション層5からPSTNまたはISDN網を利用したファックス送受信、バックアップ用のメモリで管理されている各種ファックスデータの登録/引用、ファックス読み取り、ファックス受信印刷などを行うためのAPIを提供する。
ECS17のプロセスは、スキャナ25、プロッタ26、その他のハードウェアリソース24などのエンジン部の制御を行う。MCS18のプロセスは、メモリの取得および解放、HDDの利用などのメモリ制御を行う。更新プログラム取得部に対応するOUS19は、ネットワークからの通知により、プログラムをダウンロードし、メモリに格納する。
プログラム更新部、更新結果情報生成部、更新結果出力部、再起動部に対応するSCS20のプロセスは、アプリケーション管理、操作部制御、システム画面表示、LED表示、ハードウェア資源管理、割り込みアプリケーション制御などの処理を行う。
SRM21のプロセスは、SCS20と共にシステムの制御およびハードウェア資源4の管理を行うものである。例えばSRM21のプロセスは、スキャナ25やプロッタ26などのハードウェア資源4を利用する上位層からの獲得要求に従って調停を行い、実行制御する。
具体的に、SRM21のプロセスは獲得要求されたハードウェア資源4が利用可能であるか(他の獲得要求により利用されていないかどうか)を判定し、利用可能であれば獲得要求されたハードウェア資源4が利用可能である旨を上位層に通知する。また、SRM21のプロセスは上位層からの獲得要求に対してハードウェア資源4を利用するためのスケジューリングを行い、要求内容(例えば、プリンタエンジンによる紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
また、ハンドラ層8は後述するファックスコントロールユニット(以下、FCUという)の管理を行うファックスコントロールユニットハンドラ(以下、FCUHという)22と、プロセスに対するメモリの割り振り及びプロセスに割り振ったメモリの管理を行うイメージメモリハンドラ(以下、IMHという)23を含む。SRM39およびFCUH22は、予め定義されている関数によりハードウェア資源4に対する処理要求を送信可能とするエンジンI/F27を利用して、ハードウェア資源4に対する処理要求を行う。
融合機1は、各アプリケーションで共通的に必要な処理をプラットホーム層6で一元的に処理することができる。次に、融合機1のハードウェア構成について説明する。
図2は、融合機1の一実施例のハードウェア構成図を示している。融合機1は、コントローラボード50と、オペレーションパネル39と、FCU40と、エンジン43とを含む。また、FCU40は、G3規格対応ユニット103と、G4規格対応ユニット104とを有する。
また、コントローラボード50は、CPU31と、ASIC36と、HDD38と、システムメモリ(MEM−P)32と、ローカルメモリ(MEM−C)37と、ノースブリッジ(以下、NBと記す)33と、サウスブリッジ(以下、SBと記す)34と、NIC101(Network Interface Card)と、USBデバイス41と、IEEE1394デバイス42と、セントロニクスデバイス102と、MLB45とを含む。
オペレーションパネル39は、コントローラボード50のASIC36に接続されている。また、SB34と、NIC101と、USBデバイス41と、IEEE1394デバイス42と、セントロニクスデバイス102と、NB33にPCIバスで接続されている。
MLB45は、融合機1にPCIバスを介して接続する基板である。また、MLB45は、融合機1から入力された画像データを変換し、変換された画像データあるいは符号化された画像データを融合機1に出力するものである。
また、FCU40と、エンジン43は、コントローラボード50のASIC36にPCIバスで接続されている。
なお、コントローラボード50は、ASIC36にローカルメモリ37、HDD38などが接続されると共に、CPU31とASIC36とがCPUチップセットのNB33を介して接続されている。このように、NB33を介してCPU31とASIC36とを接続すれば、CPU31のインタフェースが公開されていない場合に対応できる。
また、ASIC36とNB33とはPCIバスを介して接続されているのでなく、AGP(Accelerated Graphics Port)67を介して接続されている。このように、図2のアプリケーション層5やプラットホーム層6を形成する一つ以上のプロセスを実行制御するため、ASIC36とNB33とを低速のPCIバスでなくAGP35を介して接続し、パフォーマンスの低下を防いでいる。
CPU31は、融合機1の全体制御を行うものである。CPU31は、NCS13、RS14、OCS15、FCS16、ECS17、MCS18、OUS19、SCS20、SRM21、FCUH22、IMH23、MEU44をOS上にそれぞれプロセスとして起動して実行させると共に、アプリケーション層5を形成するプリンタアプリ9、コピーアプリ10、ファックスアプリ11、スキャナアプリ12を起動して実行させる。
NB33は、CPU31、システムメモリ32、SB34およびASIC36を接続するためのブリッジである。システムメモリ32は、融合機1の描画用メモリなどとして用いるメモリである。SB34は、NB33とPCIバス、周辺デバイスとを接続するためのブリッジである。また、ローカルメモリ37はコピー用画像バッファ、符号バッファとして用いるメモリである。
ASIC36は、画像処理用のハードウェア要素を有する画像処理用途向けのICである。HDD38は、画像の蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積などを行うためのストレージである。また、オペレーションパネル39は、ユーザからの入力操作を受け付けると共に、ユーザに向けた表示を行う操作部である。
次に、図3を用いて、各処理部とプログラムの融合機1における位置づけを説明する。図3は、各処理部と、プログラムであるファームウェアの位置づけを示す図である。図3には、制御部であるコントローラボード50と、処理部である操作パネルボード55、FCUボード51、エンジンボード52、フィニッシャ53、ADF54とが示されている。また、制御部のファームウェアであるソフトウェア群2と、操作パネルボード55のファームウェアである操作パネルファーム61と、FCUボード51のファームウェアであるFCUファーム56と、エンジンボード52のファームウェアであるプロッタファーム57とスキャナファーム58と、フィニッシャ53のファームウェアであるフィニッシャファーム59と、ADF54のファームウェアであるADFファーム60とが示されている。
まずコントローラボード50について説明する。コントローラボード50は、図1に示したソフトウェア群2が実行されるボードで、融合機1を制御する。このコントローラボード50から、以下に説明するボードが接続される。
操作パネルボード55は、オペレーションパネル39の制御を行うボードであり、融合機1に関する情報を、融合機1を操作するオペレータに対して表示する処理を行う。この操作パネルボード55とコントローラボード50とは、通信をするために同期シリアル回線64で接続されている。
次に、FCUボード51について説明する。このボードは、上述したファックスコントロールユニットである。また、FCUボード51とコントローラボード50とは、通信をするためにPCIバス62で接続される。
次に、エンジンボード52について説明する。エンジンボード52は、プロッタファー57やスキャナファーム58などのエンジン部のファームが搭載される。このエンジンボード52もコントローラボード50と通信をするためにPCIバス62で接続される。
以上説明した操作パネルボード55と、FCUボード51と、エンジンボード52とは、それぞれコントローラボード50と直接通信するボードである。
次に説明するフィニッシャ53とADFは、エンジンボード52とシリアル回線で通信することにより、エンジンボード52を介してコントローラボード50と通信するボードである。
フィニッシャ53は、印刷用紙をステープラでとじるための装置であり、フィニッシャファーム59により動作する。ADF54は、自動で原稿を送る装置であり、ADFファーム60により動作する。
以上説明した操作パネルボード55と、FCUボード51と、エンジンボード52と、フィニッシャ53と、ADF54は、いずれのボードもそれぞれCPUを有する。
このように融合機1は、画像形成に係る処理を行う1つ以上の処理部と、処理部と直接または他の処理部を介して通信する制御部と、処理部と制御部とを動作させるプログラムとを有する。
次に、各ボードの立ち上げ時の処理を、図4を用いて説明する。図4は、コントローラボード50と、エンジンボード52と、FCUH22と、OCS19との間のシーケンス図を示している。なお、FCUH22は、FCUボード62の立ち上げを管理し、OCS19は、操作パネルボード55の立ち上げを管理している。
まず、ステップS1とステップS2で、コントローラボード50及びエンジンボード52は、互いに通信可能なことを確認する。そして、コントローラボード50は、ステップS3で、エンジンボード52に対し、コントローラと接続されたことを通知する。エンジンボード52も同様に、ステップS3で、コントローラボードに対し、エンジンが接続したことを通知する。このとき、エンジンボード52は、搭載されているプログラムに関する情報も同時に送信する。
FCUH22は、ステップS5で、FCUボード51が起動したことを確認すると、FCUボード51が起動したことと、FCUボード51に搭載されているプログラムに関する情報をコントローラボード50に送信する。また、OCS19も同様に、操作パネルボード55が起動すると、OCSが起動したことと、操作パネルボード55に搭載されているプログラムに関する情報を送信する。
次に、プログラムを更新するときの処理について説明する。
上記処理部のプログラムの更新は、コントローラボード50のSCS20の指示により行われる。まず、このSCS20が含まれるコントローラボード50に搭載されているプログラムの更新について説明する。
コントローラボード50に搭載されている各アプリ9、10、11、12のプログラムと、コントローラ6のプログラム(図1参照)であるが、それらは、個々に更新を行えるようになっている。
また、コントローラ6の各プログラムは、通常の処理をしている場合、NV−RAM47に書き込まれたプログラムで動作している。したがって、プログラムの更新をする場合は、NV−RAM47上のプログラムを書き換えることはできないため、実行しているプログラムをローカルメモリ37あるいはシステムメモリ32などのRAMに展開し、その展開したプログラムで処理を実行するようになる。
しかし、RAMは、多くの容量を持たないため、コントローラボード50は、通常の動作を実行するためのプログラムとは別に、プログラムを更新するための更新用プログラムを用意しておき、その更新用プログラムをRAMに展開してプログラムの更新を行う。図5は、NV−RAMからRAMへの更新用プログラムの展開を示す図である。図5に示されるように、NV−RAMに書き込まれている更新用プログラム201が、RAMに更新用プログラム202として展開される。
この更新用プログラムと通常の動作を実行するためのプログラムの違いについて説明する。
コントローラ6のプログラムは、多くの処理部と通信を行い、融合機1の制御を行うため、通信を行うためのプログラムを含んでいる。図6は、コントローラプログラム203と、周辺ソフトプログラム204とが通信可能な様子を示すものである。なお、図6における周辺ソフトプログラムとは、図3に示されるFCUファーム56など直接に通信を行うソフトでもよいし、エンジンボード52に搭載されているファームでもよい。
このようにコントローラボード50は、他の処理部の制御を行うため、送受信する内容を実行するためのプログラムは、サイズが大きいプログラムである。
更新用プログラムは、上記通信を行うためのプログラムを除くことにより、サイズの小さいプログラムとなったプログラムに、更新する処理を加えたプログラムであるので、通常の処理を実行するためのプログラムと比較して小さなサイズのプログラムである。
この更新用プログラムによって、周辺ソフトとの通信は行えなくなるが、RAMを占有する領域を減らすことが可能となる。図7は、更新用プログラム203の実行中の状態における通信の様子を示すもので、コントローラボード50と周辺ソフトプログラム204とが通信を行えなくなった様子を示す
このように、コントローラボード50に搭載されたコントローラ6のプログラムを更新すると、各処理部との通信が行えなくなる。したがって、この場合、コントローラ6のプログラムは、他の処理部のプログラムの更新を行えないことになる。
このことは、フィニッシャ53あるいはADF54と通信するエンジンボード52についても言えることである。フィニッシャ53あるいはADF54は、エンジンボード52からプログラムの更新を指示されることになるため、エンジンボード52のプログラムを更新すると、エンジンボード52は、コントローラボード50と同様にフィニッシャ53あるいはADF54との通信が行えなくなり、フィニッシャ53あるいはADF54のプログラムの更新を行えないことになる。
すなわち、コントローラボード50と通信するために経由する処理部の数が多いものほど、先にプログラムの更新を行わなければならない。
そこで次に、プログラムを更新する順番を定めるための優先度情報について図8を用いて説明する。図8に示される優先度情報は、プログラム種類とそのプログラムの優先度を示すテーブルである。プログラム種類とは、FCUファームやフィニッシャファーム、プリンタアプリなどを表す。
また、優先度であるが、例えば、プログラムCの優先度は2であり、プログラムEの優先度は10である。この優先度の値が小さい方が更新する順番が先になる。したがって、プログラムDよりもプログラムAの方が更新する順番が先になる。また、同じ順位の場合は、その順位のいずれのプログラムから更新しても良い。
この優先度情報は、各処理部とコントローラボード50との通信をするために経由する処理部の数に応じて定まる。したがって、図3に示されるような処理部の配置であれば、エンジンボード52を経由してコントローラボード50と通信を行うフィニッシャファーム59とADFファーム60の優先度が1となる。
次に、この優先度情報に応じて取得した更新プログラムで更新する順番を定める更新順番情報と、その生成する過程について説明する。
図9は、更新順番情報を生成する過程を示した図である。更新プログラムをプログラムE、F、D、Aとし、この順序でダウンロードされたとする。
コントローラ6は、優先度情報から取得した更新プログラムの優先度を参照し、取得した更新プログラムとその優先度の組で構成される優先度表70を生成する。そして、この優先度表70を優先度で昇順にソートし、更新順番情報71を生成する。また、更新順番情報71は、順番と取得した更新プログラムにより更新されるプログラムの種類とを対応付けた情報を有している。
このように、更新順番情報71を生成した後、更新順番情報71を拡張しても良い。図10は、更新順番情報71を拡張したもので、図に示されるようにバージョンや、実行状態を加えたものである。なお、図10の実行状態には、「未実行」、「実行中」、「実行済み」が示される。「未実行」は、プログラムの更新を行なっていない状態を示す。「実行中」は、プログラムの更新を実行中である状態を示す、また、「実行済み」は、プログラムの更新の実行が済んだ状態を示す。以上のように、実行状態は、更新プログラムにより更新されるプログラムの更新状況を示す情報である。
なお、図10において、コントローラ6のプログラムの更新より操作パネルファームの更新の方が、後に行われるようになっている。その理由は、操作パネルファームがオペレータに対して進捗状況を描画するためである。そのため、操作パネルファームを更新する順番が最後となる。図11は、操作パネルファーム205が書き込まれたNV−RAMからRAM上に展開された更新プログラム206を示すものである。
操作パネルファームの更新をコントローラ6のプログラムの更新の後に行う場合、コントローラ6の更新用プログラムは、操作パネルボードとの通信を行う処理を含む。なお、進捗状況を描画する必要が無ければ、操作パネルファームを更新する順番も、他の処理部のプログラムの更新と同様に定める。
以上説明した更新順番情報は、コントローラ6のSCS20が保有する。図12は、更新順番情報のコントローラ6における位置を示す図である。図に示されるように更新順番情報207は、コントローラ6が保有する。
次に、融合機1におけるプログラムの更新処理を図13のフローチャートを用いて説明する。
更新プログラム取得段階に対応するステップS101で、コントローラ6のSCS20は、ネットワークを介して更新プログラムを取得したOUS19からプログラム更新開始要求を受信する。次のステップS102で、コントローラ6は、優先情報とRAMに展開された更新プログラムに応じて、更新順番情報を生成する。
次に、コントローラ6は、プログラム更新段階に対応するステップS103で、更新順番情報に示される更新未実行状態のプログラムのうち、最優先のプログラムの更新を実行する。そして、コントローラ6は、ステップS104で更新を実行しているプログラムの更新順番情報の状態を実行中に変更し、変更終了後実行済みに変更する。
次に、コントローラ6は、ステップS105で、更新順番情報に登録されている全プログラムの更新が実行完了したかどうか判断し、完了していない場合は、再びステップS103の処理を実行する。完了した場合、コントローラ6は、ステップS106で更新したプログラムが搭載されるボードのリブートを実行し、処理を終了する。
次に、リブート処理について説明する。まず、ボードの種類について説明する。ボードには、コントローラ6が直接リブート可能なものと、コントローラ6がリブート実行要求をすることにより、ボードが自らリブートするものの2種類ある。これらのボードのリブート処理について説明する。
最初に、コントローラ6が直接にリブート可能なボードのリブート処理について、図14を用いて説明する。コントローラ6は、ステップS201で、全ての更新対象プログラムの更新処理が完了すると、ステップS202で、エンジンファームに対し、リブートしても不具合が起きないように、処理の実行を制限させる動作停止要求を通知する。
ステップS203は、動作停止要求に対するエンジンファームからの動作停止完了待ちである。このステップで、動作停止完了を受信すると、コントローラ6はステップS204で、操作パネルファームに動作停止要求を通知する。そして、ステップS205で、コントローラ6は、再び動作停止要求対する操作パネルファームからの動作停止完了待ちとなる。
このステップで動作停止完了を受信すると、コントローラ6はステップS206で、リブートを実行する。
このように、コントローラ6が直接にリブート可能なボードの場合、コントローラ6は、リブートする前に動作停止要求を行う。
次に、コントローラ6がリブート実行要求をすることにより、ボードが自らリブートするボードのリブート処理について、図15を用いて説明する。コントローラ6は、ステップS301で、全ての更新対象プログラムの更新処理が完了すると、ステップS302で、エンジンファームに対し、リブート実行要求を通知する。次に、コントローラ6は、ステップS303で、操作パネルファームにリブート実行要求を通知する。その一定時間後に、コントローラ6は、ステップS304で、自らのリブートを実行する。そして、再起動後、コントローラ6は、ステップS305で各処理部と通信を再開する。
このように、コントローラ6がリブート実行要求をすることにより、ボードが自らリブートするボードの場合、コントローラ6は、リブート実行要求を通知し、一定時間後に自らをリブートする。
上述したフローチャートの処理を、図7のシーケンス図を用いて説明する。このシーケンス図は、OUS19と、SCS20と、操作パネルファーム61と、システムソフト72と、エンジンファーム73との間で行われるやり取りを示すものである。なお、システムソフト72は、図1に示されるコントローラ6とアプリケーション層5のプログラムを表す。エンジンファーム73は、エンジンボードに搭載されているプロッタファーム57あるいはスキャナファーム58を表す。
更新プログラム取得段階に対応するステップS401で、コントローラ6のOUS19は、同じコントローラ6のSCS20に対し、更新プログラムをダウンロードしたことを通知する。この通知により、SCS20は、モジュール判定処理を行い、後述する更新管理テーブルを生成する。更新管理テーブルを生成したSCS20は、プログラム更新段階に対応するステップS402でエンジンファーム73に更新プログラムを送信する。エンジンファーム73は、プログラムの更新が完了するとステップS403で、SCS20に更新結果応答を通知する。
次に、SCS20は、ステップS404で、コントローラ6のプログラムを更新するために、SCS20を除くシステムソフト72にリブート準備要求を通知する。システムソフト72は、リブートの準備が完了すると、ステップS405で、リブート準備完了を通知する。
次に、SCS20は、揮発性記憶部であるRAM実行へ切り替える(図5参照)。RAM実行に切り替わったSCS20は、ステップS406でシステムソフト72のプログラムの更新処理を行う。次に、SCS20は、ステップS407で、操作パネルファーム61に対し、更新プログラムを送信する。操作パネルファーム61は、ステップS408で、SCS20に対しプログラムを更新した結果を通知する。
SCS20は、全てのプログラムの更新が完了したため、再起動段階に対応するステップS409でエンジンファーム73と、操作パネルファーム71とをステップS409でリブートする。そして、SCS20は、t秒後にシステムソフト72をリブートする。
上述した更新管理テーブルの生成について、図17を用いて説明する。この更新管理テーブルは、テーブルの項目として、プログラム種類と、そのプログラムのバージョンと、受信プログラムデータのモジュールIDと、更新の実行状態とを有する。
受信プログラムデータのモジュールIDとは、プログラムデータを一意的に特定するものである。また、実行状態は、図10で説明した実行状態と同じものである。
この更新実行用データテーブルにおいて、例えばスキャナエンジンプログラムは、バージョンが1.22で、モジュールIDがJP2CFa_escanで、実行状態は未実行である。
この更新管理テーブルの生成を説明するため、まず、図18に示されるテーブルについて説明する。図18に示されるテーブルは、融合機1に搭載されているモジュールIDの構成を示すものである。
このテーブルは、項目として、融合機1のプログラムのプログラム種類と、そのプログラムのバージョンと、モジュールIDとを有する。融合機1の構成が、図18に示される構成であるとする。また、ダウンロードした更新プログラムが、プロッタエンジンプログラム、スキャナエンジンプログラム、コントローラプログラム、プリンタアプリプログラム、FAXアプリプログラム、操作部プログラムの6つであるとする。
このときSCS20は、当該機種のプログラム構成情報に含まれないプログラムを外し、図19に示される更新管理テーブルを生成する。今の場合、融合機1の構成にFAXアプリプログラムが搭載されていないため、図19に示されるように、FAXアプリプログラムを除いた更新管理テーブルが生成される。
次に、SCS2がプログラムを更新した順にリブートさせる処理について、図20のフローチャートを用いて説明する。
プログラム更新段階に対応するステップS501で、SCS20は、エンジンファーム73のプログラム更新処理を実行する。次のステップS502で、SCS20は、エンジンファーム73に動作停止要求を通知する。
ステップS503は、エンジンファーム73から送信される動作停止完了の受信待ちである。この動作停止完了をSCS20が受信すると、再起動段階に対応するステップS504で、SCS20は、エンジンファーム73のリブートを実行し、ステップS512へ処理を進める。
ステップS502の処理に戻る。ステップS502で、エンジンファーム73に動作停止要求を通知したSCS20は、ステップS505で、システムソフト72のプログラム更新処理を実行する。次のステップS506で、SCS20は、SCS20以外のシステムソフト72に動作停止要求を通知する。
ステップS507は、システムソフト72から送信される動作停止完了の受信待ちである。この動作停止完了をSCS20が受信すると、SCS20は、ステップS512へ処理を進める。
ステップS506の処理に戻る。ステップS506で、システムソフト72に動作停止要求を通知したSCS20は、ステップS508で、操作パネルファーム61のプログラム更新処理を実行する。次のステップS509で、SCS20は、操作パネルファーム61に動作停止要求を通知する。
ステップS510は、操作パネルファーム61から送信される動作停止完了の受信待ちである。この動作停止完了をSCS20が受信すると、SCS20は、再起動段階に対応するステップS511で操作パネルファーム61のリブートを実行する。
SCS20は、ステップS512で、エンジンファーム73と操作パネルファーム61のリブートが完了したと判断すると、ステップS513でシステムソフト72のリブートを実行し処理を終了する。
次に、上述した処理を、図21のシーケンス図を用いて説明する。このシーケンス図は、先ほどのシーケンス図と同様に、OUS19と、SCS20と、操作パネルファーム61と、システムソフト72と、エンジンファーム73との間で行われるやり取りを示すものである。
更新プログラム取得段階に対応するステップS601で、OUS19は、SCS20に対し、更新プログラムをダウンロードしたことを通知する。この通知により、SCS20は、上述したモジュール判定処理を行い、更新管理テーブルを生成する。
次に、SCS20は、プログラム更新段階に対応するステップS602でエンジンファーム73に更新プログラムを送信する。エンジンファーム73は、プログラムの更新が完了すると、ステップS603で、SCS20に更新結果応答を通知する。更新結果応答を通知されたSCS20は、再起動段階に対応するステップS604で、エンジンファーム73に対し、リブート実行要求を行い、エンジンファーム73は、リブートを実行する。
次に、SCS20は、ステップS605で、コントローラ6のプログラムを更新するために、SCS20を除くシステムソフト72にリブート準備要求を通知する。システムソフト72は、リブートの準備が完了すると、ステップS606で、リブート準備完了を通知する。そして、SCS20は、上述したRAM実行へ切り替える。
RAM実行に切り替わったSCS20は、ステップS607でシステムソフトのプログラムの更新処理を行う。次に、SCS20は、ステップS608で、操作パネルファーム61に対し、更新プログラムを送信する。操作パネルファーム61は、ステップS609で、SCS20に対しプログラムを更新した結果を通知する。
次に、SCS20は、再起動段階に対応するステップS610で、操作パネルファームに対し、リブート実行要求を行い、操作パネルファーム61は、リブートを実行する。
そして、SCS20は、全てのプログラムの更新が完了したため、t秒後にシステムソフト72をリブートする。
次に、SCS20が、操作パネルファーム61やエンジンファーム73との通信回線が切断されたことを検出することで、SCS20が自らのリブートを実行する処理について説明する。
通信回線が切断されることは、通信相手がリブートしたことを意味する。したがって、この処理は、SCS20の通信相手が確実にリブートを実行したかどうか確認した後に、SCS20が自らのリブートを実行する処理である。
この処理を、図22を用いて説明する。更新プログラム取得段階に対応するステップS701で、OUS19は、SCS20に対し、更新プログラムをダウンロードしたことを通知する。この通知により、SCS20は、モジュール判定処理を行い、上述した更新管理テーブルを生成する。
更新管理テーブルを生成したSCS20は、プログラム更新段階に対応するステップS702でエンジンファーム73に更新プログラムを送信する。エンジンファーム73は、プログラムの更新が完了するとステップS703で、SCS20に更新結果応答を通知する。
次に、SCS20は、ステップS704で、コントローラ6のプログラムを更新するために、SCS20を除くシステムソフト72にリブート準備要求を通知する。システムソフト72は、リブートの準備が完了すると、ステップS705で、リブート準備完了を通知する。
次に、SCS20は、RAM実行へ切り替える。RAM実行に切り替わったSCS20は、ステップS706でシステムソフト72のプログラムの更新処理を行う。次に、SCS20は、ステップS707で、操作パネルファーム61に対し、更新プログラムを送信する。操作パネルファーム61は、ステップS708で、SCS20に対しプログラムを更新した結果を通知する。
そして、SCS20は、全てのプログラムの更新が完了したため、再起動段階に対応するステップS709でエンジンファーム73にリブート実行要求を行う。これにより、ステップS710で、エンジンファーム73との通信回線が切断されたことが確認される。
次に、SCS20は、再起動段階に対応するステップS711で操作パネルファーム61にリブート実行要求を行う。これにより、ステップS712で、操作パネルファーム61との通信回線が切断されたことが確認される。
次に、SCS20は、エンジンファーム73と操作パネル61がリブートを実行したことが確認できたので、SCS20は、システムソフト72をリブートする。
以上、リブートする方法として、全てのプログラムの更新が完了してからリブートする方法と、プログラムの更新が完了した順にリブートする方法の2つの方法について説明した。
これら2つの方法は、融合機1がリブートするまでの時間が異なっている。図23は、全ての処理部のプログラムの更新が終了した後に、リブートする場合に要する時間を示すものである。
図23には、プログラムの更新をFCUファームから行い、そのFCUファームのプログラムの更新が終了した時刻aに、エンジンファームのプログラムの更新を開始していることが示されている。また、エンジンファームのプログラムの更新処理が終了した時刻bに操作パネルファームの更新が開始することが示されている。そして、操作パネルファームのプログラムの更新が終了した時刻cにリブートを実行し、時刻dにリブートが終了したことが示されている。
次の図24は、プログラムの更新が完了した順にリブートする方法で行った場合に要する時間を示したものである。
図24には、プログラムの更新がFCUファームから行われ、そのFCUファームのプログラムの更新が終了した時刻aに、エンジンファームのプログラムの更新とFCUファームのリブート処理とが開始されていることが示されている。また、エンジンファームのプログラムの更新処理が終了した時刻bに操作パネルファームの更新とエンジンファームのリブート処理とを開始していることが示されている。そして、操作パネルファームのプログラムの更新が終了した時間cに操作パネルファームのリブートを実行し、時間dにリブートが終了したことが示されている。
このように、プログラムの更新とリブートを平行して行うと、処理時間が短縮することができる。また、平行して処理を行う場合は、リブートする時間が長くかかるプログラムの更新を早く行うほど時間を短縮することが可能となる。
次に、図25を用いて、表示部であるオペレーションパネル39の表示処理について説明する。
更新プログラム取得段階に対応するステップS801で、SCS20は、OUS19から更新プログラムをダウンロードしたことを通知される。次のステップS802で、SCS20は、更新管理テーブルを生成する。そして、SCS20は、ステップS803で、更新未実行状態のプログラムのうち、テーブルの最上位のもののプログラムの更新を実行する。
次に、SCS20は、ステップS804で、省エネモードかどうか判断し、省エネモードでなければ、ステップS807へ処理を進める。省エネモードの場合、SCS20は操作パネルファーム61に対してパネルを非表示にさせる。この間、SCS20は、ステップS806で、省エネモードを解除するイベントが起きているかどうか判断する。
ここで、省エネモードの解除するイベントとは、例えば、タッチセンサを有するオペレーションパネル39が触れられたなどのイベントをいう。
省エネモードが解除されると、ステップS807で、SCS20は、更新の進捗状況を表示し、処理を終了する。
上述した省エネモードについて説明する。省エネモードには、待機状態、予熱状態、低電力状態、静音状態、エンジンオフ状態の5種類のモードが存在する。
待機状態とは、印刷可能な状態である。予熱状態と低電力状態とは、定着温度を下げた状態で、低電力状態はエネルギースターに対応している。なお、定着温度を何度まで下げるか、あるいは下げないかは、機種や設定により異なる。静音状態とは、定着温度に係る電源の供給をやめ、周辺機器が静音起動し、HDDのアクセスが可能な状態であり、ファックスの着信やデータの入力に対応しているものである。エンジンオフ状態とは、エンジンを停止させた状態であり、例えばエンジンのCPUがスリープしている、もしくは電気的に遮断されている状態である。
次に、図26を用いて、融合機1の状態を保持し、プログラム更新後に融合記1を更新前の状態に移行させる処理について説明する。
更新プログラム取得段階に対応するステップS901で、SCS20は、OUS19から更新プログラムをダウンロードしたことを通知される。次に、SCS20は、現在の融合機1の状態を不揮発性記憶部であるNV−RAM47に記憶する。
なお、融合機1の状態とは、例えば先ほど省エネ状態などであり、オペレーションパネル39の画面を暗くしている状態、予熱状態、定着温度を抑える、エンジンを停止しているなどの状態が挙げられる。
ステップS903で、プログラムの更新実行が完了すると、SCS20は、ステップS904でリブートを実行する。
そして、再起動後のステップS904でSCS20は、NV−RAM47に記憶していた融合機1の状態に融合機を移行する。
以下、利用者や管理者などからなるオペレータにプログラムの更新をしたことを通知する処理について説明する。図27に示されるフローチャートは、プログラム更新後、印刷用紙に更新結果を印刷することによりオペレータに通知するSCS20の処理を示している。
このフローチャートの説明をする。更新プログラム取得段階に対応するステップS1001でSCS20は、OUS19からプログラム更新開始要求を受信する。次に、SCS20は、通知された更新プログラムから、更新管理テーブルを生成する。
更新管理テーブルを生成したSCS20は、プログラム更新段階に対応するステップS1003で、更新管理テーブルの実行状態が未実行状態のプログラムのうち、最上位のもののプログラムの更新を実行する。
ステップS1004で、SCS20は、更新を実行したプログラムの更新管理テーブルにおける実行状態を実行中に変更する。次に、SCS20は、更新結果情報生成段階に対応するステップS1005で、NV−RAM47に記憶される更新フラグを更新したプログラムごとに書き込む。この書き込み内容については後述する。
SCS20は、ステップS1006で更新実行用テーブルに登録されている全プログラムの更新が実行完了したかどうか判断し、完了していなければ、再びステップS1003の処理を行い、完了していればステップS1007へ処理を進める。
ステップS1007で、SCS20は、後述する更新日時情報に更新日時を書き込み、リブートを実行する。そして、ステップS1008でリブート実行が完了、すなわち再起動後、SCS20は、ステップS1009で、NV−RAM47に更新されたプログラムの情報があるかどうか判断する。
NV−RAM47に更新されたプログラムの情報がない場合、SCS20は、ステップS1010でオペレーションパネル39に通常の画面を表示し、処理を終了する。
NV−RAM47に更新されたプログラムの情報がある場合、SCS20は、更新結果出力段階に対応するステップS1011で、更新結果情報に基づいた更新結果をプリントし、排出する。このプリント内容については、後に説明する。
このように、プリントし、排出した後、SCS20は、ステップS1012で、NV−RAM47に記憶していた更新結果情報を消去し処理を終了する。
以上説明したフローチャートにおけるステップS1005で、NV−RAM47に書き込まれる内容について、図28を用いて説明する。
図28に示される表は、NV−RAM47に書き込まれるデータ構造を示すものである。このデータ構造は、項目として、プログラム名と、更新前のバージョンと、更新後のバージョンと、更新結果を有する。
このうち、プログラム名は、エンジンプログラムのように、プログラムの名前を表し、例えば、文字コードまたは予め割り振られたコードで表すことができる。更新前のバージョンは、そのプログラムの更新する前のバージョンを表し、同様に文字コードで表すことができる。更新後のバージョンは、そのプログラムを更新した後のバージョンを表し、同様に文字コードで表すことができる。プログラムの更新の成否を示す更新結果は、プログラムの更新が成功したかどうかを表すデータであり、このデータは、1ビット以上のデータであれば表すことができる。
なお、図中のプリンタアプリプログラムの更新後と更新結果に示されている「NULL」は、そのデータが「0」で表されており、そのデータの内容がないことを示す。したがって、プリンタアプリプログラムは、更新されなかったことが示されている。
次に、図29を用いて、NV−RAM47に書き込まれる更新日時情報について説明する。図29に示されるように、更新日時情報は、西暦、月、日、時、分で書き込まれる。
図28、図29に示したデータが更新結果情報であるが、オペレータに提供する更新結果に応じ、更新結果情報の内容を適宜変更しても良い。例えば単にプログラムの更新の成否だけ提供するのであれば、1ビット以上の情報があれば十分である。
次に、ステップS1011でプリントされる内容について、図30を用いて説明する。プリントした内容は、更新結果情報が有するプログラム名211と、更新前のバージョン212と更新後のバージョン213と、更新結果214と、更新日時215と、その他の定型文216、217になっている。
このように、プリントされる内容には、更新結果情報が有する情報がプリントされ、オペレータなどにとっては、必要な情報が揃ったものとなっている。
次に、更新結果をオペレータに電子メールで送信する処理について、図31のフローチャートを用いて説明する。なお、図31のフローチャートのステップS1101からステップS1108までは、図27のフローチャートのステップS1001からステップS1008と同じ処理のため、説明を省略し、ステップS1109以降の処理について説明する。
リブート実行完了後、SCS20は、ステップS1109で、NV−RAM47に更新されたプログラムの情報があるかどうか判断する。
NV−RAM47に更新されたプログラムの情報がない場合、SCS20は、ステップS1110でオペレーションパネル39に通常の画面を表示し、処理を終了する。
NV−RAM47に更新されたプログラムの情報がある場合、SCS20は、ステップS1111で、管理者のメールアドレスが設定されているかどうか判断する。管理者のメールアドレスが設定されていない場合、SCS20は、ステップS1113へ処理を進める。
管理者のメールアドレスが設定されている場合、ステップS1112で、SCS20は、管理者宛に更新結果情報に基づいた更新結果が記された電子メールを送信する。電子メールを送信した後、SCS20は、ステップS213で、NV−RAM47に記憶していた更新結果情報を消去し処理を終了する。
送信した電子メールの内容を、図32を用いて説明する。図32に示されるように、更新結果情報が有するプログラム名211と、更新前のバージョン212と更新後のバージョン213と、更新結果214と、更新日時215と、その他の定型文216、217になっている。電子メールで送信される内容も、プリントされる内容と同様のものとなる。
次に、表示部であるオペレーションパネル39に表示することによってオペレータに通知する処理について、図33のフローチャートを用いて説明する。なお、図33のフローチャートのステップS1201からステップS1208までは、図27のフローチャートのステップS1001からステップS1008と同じ処理のため、説明を省略し、ステップS1209以降の処理について説明する。
リブート実行完了後、SCS20は、ステップS1209で、NV−RAM47に更新されたプログラムの情報があるかどうか判断する。
NV−RAM47に更新されたプログラムの情報がない場合、SCS20は、ステップS1210でオペレーションパネル39に通常の画面を表示し、処理を終了する。
NV−RAM47に更新されたプログラムの情報がある場合、SCS20は、ステップS1211で、記憶した更新結果情報に基づいた更新結果をオペレーションパネル39に表示する。
このように、オペレーションパネル39に表示した後、SCS20は、ステップS1212で、NV−RAM47に記憶していた更新結果情報を消去し処理を終了する。
オペレーションパネル39の表示内容を、図34を用いて説明する。図34には、各種キー221、223、224、225、226と、表示画面222が示されている。表示画面222には、更新結果情報が有するプログラム名228と、更新前のバージョン229と更新後のバージョン230と、更新結果231と、更新日時232と、その他の定型文233と、OKボタン227が表示される。
各種キー221、223、224、225、226は、融合機1の操作をするためのキーである。表示画面222は、オペレータに向け情報を表示するものである。OKボタン227は、表示されている内容を閉じる際にオペレータが押下するものである。オペレーションパネルに表示される内容も、プリントされる内容と同様のものとなる。
次に、オペレータが閲覧できるように、NV−RAM47に更新履歴を記憶する処理について、図35のフローチャートを用いて説明する。なお、図35のフローチャートのステップS1301からステップS1308までは、図27のフローチャートのステップS1001からステップS1008と同じ処理のため、説明を省略し、ステップS1309以降の処理について説明する。
リブート実行完了後、SCS20は、ステップS1309で、NV−RAM47に更新されたプログラムの情報があるかどうか判断する。
NV−RAM47に更新されたプログラムの情報がない場合、SCS20は、ステップS1310でオペレーションパネル39に通常の画面を表示し、処理を終了する。
NV−RAM47に更新されたプログラムの情報がある場合、SCS20は、ステップS1311で、記憶した更新結果情報を更新履歴情報に追記する。更新履歴情報に更新結果情報を追記した後、SCS20は、ステップS1312で、NV−RAM47に記憶していた更新結果情報を消去し処理を終了する。
更新履歴情報を、図36を用いて説明する。更新履歴情報は、図36に示されるように、更新日時ごとに更新結果情報が有するプログラム名と、更新前のバージョンと更新後のバージョンと、更新結果と、更新日時とを有する。
このように、更新するごとに、その結果が記憶される。例えば、図36の更新履歴情報には、2001年の12月15日午前4時0分に行われた更新から、2002年11月1日午前2時0分に行われた更新までの更新履歴が記憶されている。
以上が本発明の実施例であるが、この実施例において、更新プログラムを格納する不揮発性メモリは、コストのかからないフラッシュメモリを用いるようにしても良い。
本発明による融合機の一実施例の構成図である。 本発明による融合機の一実施例のハードウェア構成図である。 各処理部とプログラムの位置づけを示す図である。 各処理部の起動を示すシーケンス図である。 NV−RAMからRAMへの更新用プログラムの展開を示す図である。 通常の状態における通信の様子を示す図である。 更新用プログラム実行中の状態における通信の様子を示す図である。 優先情報を示す図である。 更新順番情報を生成する過程を示す図である。 更新順番情報を示す図である。 NV−RAMからRAMへの更新用プログラムの展開を示す図である。 更新順番情報の位置を示す図である。 プログラムの更新処理を示すフローチャートである。 直接にリブートを実行する処理を示すフローチャートである。 リブート要求をすることによりリブートを実行する処理を示すフローチャートである。 全てのプログラムの更新後にリブートを実行する処理を示すシーケンス図である。 更新管理テーブルを示す図である。 モジュールIDの構成を示す図である。 更新管理テーブルを示す図である。 プログラムの更新完了の順にリブートを実行する処理を示すフローチャートである。 プログラムの更新完了の順にリブートを実行する処理を示すシーケンス図である。 通信回線切断後にリブートを実行する処理を示すシーケンス図である。 全てのプログラムの更新後にリブートを実行する場合の所要時間を示す図である。 プログラムの更新順にリブートを実行する場合の所要時間を示す図である。 更新進捗状況の表示に関する処理を示すフローチャートである。 融合機の状態を保持する処理を示すフローチャートである。 更新結果を印刷する処理を示すフローチャートである。 更新結果情報を示す図である。 更新結果情報を示す図である。 印刷された更新結果を示す図である。 更新結果を電子メールで送信する処理を示すフローチャートである。 電子メールで送信された更新結果を示す図である。 更新結果を表示する処理を示すフローチャートである。 表示された更新結果を示す図である。 更新履歴情報を記憶する処理を示すフローチャートである。 更新履歴情報を示す図である。 更新プログラムのデータ構造を示す図である。
符号の説明
1 融合機
2 ソフトウェア群
3 融合機起動部
4 ハードウェア資源
5 アプリケーション層
6 コントローラ
7 コントロールサービス層
8 ハンドラ層
9 プリンタアプリ
10 コピーアプリ
11 ファックスアプリ
12 スキャナアプリ
13 ネットワークコントロールサービス(NCS)
14 リモートサービス(RS)
15 オペレーションパネルコントロールサービス(OCS)
16 ファックスコントロールサービス(FCS)
17 エンジンコントロールサービス(ECS)
18 メモリコントロールサービス(MCS)
19 オンデマンドアップデートサービス(OUS)
20 システムコントロールサービス(SCS)
21 システムリソースマネージャ(SRM)
22 ファックスコントロールユニットハンドラ(FCUH)
23 イメージメモリハンドラ(IMH)
24 その他のハードウェアリソース
25 スキャナ
26 プロッタ
27 エンジンI/F(PCI)
28 アプリケーションプログラムインターフェース(API)
31 CPU
32 システムメモリ(MEM−P)
33 ノースブリッジ(NB)
34 サウスブリッジ(SB)
35 AGP(Accelerated Graphics Port)
36 ASIC
37 ローカルメモリ(MEM−C)
38 ハードディスク装置(HD)
39 オペレーションパネル
40 ファックスコントロールユニット(FCU)
41 USBデバイス
42 IEEE1394デバイス
43 エンジン部
47 NV−RAM
50 コントローラボード
51 FCUボード
52 エンジンボード
53 フィニッシャ
54 ADF
55 操作パネルボード
56 FCUファーム
57 プロッタファーム
58 スキャナファーム
59 フィニッシャファーム
60 ADFファーム
61 操作パネルファーム
62 PCIバス
63 シリアル回線
64 同期シリアル回線
70 優先度表
71 更新順番情報
72 システムソフト
73 エンジンファーム
101 NIC
102 セントロニクスデバイス
103 G3規格対応ユニット
104 G4規格対応ユニット
201、202 更新用プログラム
203 コントローラプログラム
204 周辺ソフトプログラム

Claims (30)

  1. 画像形成に係る処理を行う1つ以上の処理部と、前記処理部と直接または他の処理部を介して通信する制御部と、前記処理部と前記制御部とを動作させるプログラムとを有する画像形成装置において、
    前記プログラムを更新する更新プログラムを取得する更新プログラム取得部と、
    一の処理部の前記プログラムを、該一の処理部と前記制御部とが通信をするために経由する処理部の数に応じて定まる順番で、前記更新プログラムに更新させるプログラム更新部と
    を有することを特徴とする画像形成装置。
  2. 前記プログラム更新部は、前記更新プログラム取得部が取得した更新プログラムに基づき、前記順番を定める更新順番情報を生成することを特徴とする請求項1に記載の画像形成装置。
  3. 前記更新順番情報は、前記順番と、取得した更新プログラムにより更新されるプログラムの種類とを対応付けた情報を有することを特徴とする請求項2に記載の画像形成装置。
  4. 前記更新順番情報は、取得した更新プログラムにより更新されるプログラムの更新状況を示す情報を有することを特徴とする請求項2に記載の画像形成装置。
  5. 前記制御部は、画像形成処理に係る処理を実行する1つ以上のアプリケーションを有し、前記プログラム更新部は、各アプリケーションのプログラムを個々に更新することが可能であることを特徴とする請求項1に記載の画像形成装置。
  6. 前記プログラム更新部は、前記画像形成装置を操作するオペレータに対して該画像形成装置に関する情報を表示する処理を行う処理部の前記プログラムを更新する順番を最後の順番とすることを特徴とする請求項1に記載の画像形成装置。
  7. ネットワークと接続するための通信部をさらに有し、
    前記更新プログラム取得部は、前記通信部により前記更新プログラムを取得することを特徴とする請求項1に記載の画像形成装置。
  8. 前記制御部は、前記プログラムの更新が終了した処理部の順に該処理部を再起動させることを特徴とする請求項7に記載の画像形成装置。
  9. 前記制御部は、前記プログラムを更新する全ての処理部が更新を終了した後に、前記プログラムを更新した処理部を再起動させることを特徴とする請求項7に記載の画像形成装置。
  10. 前記制御部は、自らのプログラムを更新する際に、該プログラムが格納された記憶領域とは異なる他の記憶領域に格納された更新用プログラムで動作することを特徴とする請求項7に記載の画像形成装置。
  11. 前記更新用プログラムは、揮発性記憶部の領域に格納されることを特徴とする請求項10に記載の画像形成装置。
  12. 前記更新用プログラムのサイズは、前記制御部のプログラムのサイズより小さいことを特徴とする請求項11に記載の画像形成装置。
  13. 前記制御部は、前記処理部のプログラムを更新する際に、該処理部に対し、処理の実行を制限させることを特徴とする請求項7に記載の画像形成装置。
  14. 前記制御部は、前記プログラムを更新した処理部との通信が切断すると、自らを再起動することを特徴とする請求項7に記載の画像形成装置。
  15. 前記制御部は、再起動をさせる前記処理部のうち、最後に処理部を再起動させてから所定の時間が経過した後に自らを再起動することを特徴とする請求項7に記載の画像形成装置。
  16. 前記制御部は、自らが再起動する際に、画像形成装置に係る装置状態を不揮発性記憶部に記憶し、前記制御部の再起動後、記憶した前記装置状態に前記画像形成装置の状態を遷移させることを特徴とする請求項7に記載の画像形成装置。
  17. 前記装置状態は、前記画像形成装置の消費電力を低減する状態である省電力状態であることを特徴とする請求項16に記載の画像形成装置。
  18. 前記画像形成装置に関する情報を表示する表示部を有し、
    前記装置状態は、前記表示部に表示されている情報の状態であることを特徴とする請求項16に記載の画像形成装置。
  19. 前記表示部は、前記プログラムの更新の進捗状況を表示することを特徴とする請求項18に記載の画像形成装置。
  20. 前記表示部は、前記画像形成装置の消費電力を低減する状態であれば、前記プログラムの更新の進捗状況を表示しないことを特徴とする請求項19に記載の画像形成装置。
  21. 前記プログラム更新部は、取得した更新プログラムに関する情報を含む更新管理テーブルを生成することを特徴とする請求項7に記載の画像形成装置。
  22. 前記更新管理テーブルは、取得した更新プログラムを特定するモジュールIDを含むことを特徴とする請求項21に記載の画像形成装置。
  23. 前記処理部は、前記制御部が直接に再起動可能な処理部と、前記制御部が前記処理部に対して再起動要求を行うことにより再起動可能な処理部との2つの種類があることを特徴とする請求項7に記載の画像形成装置。
  24. 前記プログラムを更新した結果を示す更新結果情報を生成する更新結果情報生成部と、
    前記更新結果情報に基づいた更新結果を出力する更新結果出力部と
    をさらに有することを特徴とする請求項7に記載の画像形成装置。
  25. 前記更新結果出力部は、前記更新結果を印刷するか、電子メールで送信するか、画像形成装置に関する情報を表示する表示部に表示することを特徴とする請求項24に記載の画像形成装置。
  26. 前記更新結果情報は、更新前のプログラムのバージョンと、更新後のプログラムのバージョンと、更新した日時と、更新の成否のうち、いずれか1つ以上を含むことを特徴とする請求項24に記載の画像形成装置。
  27. 前記更新結果情報生成部は、前記更新結果情報を不揮発性記憶部に記憶することを特徴とする請求項24に記載の画像形成装置。
  28. 前記更新結果情報生成部は、過去に行った更新での更新結果情報に基づく更新履歴情報に、生成した更新結果情報を追記することを特徴とする請求項27に記載の画像形成装置。
  29. 前記制御部は、前記更新結果情報生成部が前記更新結果情報を不揮発性記憶部に記憶した後に、前記画像形成装置を再起動し、
    前記更新結果出力部は、再起動後に前記更新結果を出力することを特徴とする請求項27に記載の画像形成装置。
  30. 画像形成に係る処理を行う1つ以上の処理部と、前記処理部と直接または他の処理部を介して通信する制御部と、前記処理部と前記制御部とを動作させるプログラムとを有する画像形成装置のプログラム更新方法であって、
    前記プログラムを更新する更新プログラムを取得する更新プログラム取得段階と、
    一の処理部の前記プログラムを、該一の処理部と前記制御部との通信をするために経由する処理部の数に応じて定まる順番で、前記更新プログラムに更新させるプログラム更新段階と
    を有することを特徴とするプログラム更新方法。
JP2003364032A 2002-11-18 2003-10-24 画像形成装置、プログラム更新方法 Expired - Fee Related JP4128516B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003364032A JP4128516B2 (ja) 2002-11-18 2003-10-24 画像形成装置、プログラム更新方法
US10/713,195 US7380243B2 (en) 2002-11-18 2003-11-17 Image forming apparatus of which programs are remotely updatable

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2002333966 2002-11-18
JP2002342827 2002-11-26
JP2002348317 2002-11-29
JP2003364032A JP4128516B2 (ja) 2002-11-18 2003-10-24 画像形成装置、プログラム更新方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007340887A Division JP4856622B2 (ja) 2002-11-18 2007-12-28 画像形成装置、プログラム更新方法

Publications (2)

Publication Number Publication Date
JP2004194298A JP2004194298A (ja) 2004-07-08
JP4128516B2 true JP4128516B2 (ja) 2008-07-30

Family

ID=32738840

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003364032A Expired - Fee Related JP4128516B2 (ja) 2002-11-18 2003-10-24 画像形成装置、プログラム更新方法

Country Status (2)

Country Link
US (1) US7380243B2 (ja)
JP (1) JP4128516B2 (ja)

Families Citing this family (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4128516B2 (ja) 2002-11-18 2008-07-30 株式会社リコー 画像形成装置、プログラム更新方法
US7876469B2 (en) * 2003-12-26 2011-01-25 Panasonic Corporation Image forming apparatus and updating method
JP2006069125A (ja) * 2004-09-03 2006-03-16 Matsushita Electric Ind Co Ltd 画像形成装置及び画像形成装置用ファームウェアを格納した可搬型記憶媒体
JP2005339136A (ja) * 2004-05-26 2005-12-08 Ricoh Co Ltd 画像形成装置、認証課金方法
KR100633099B1 (ko) * 2004-10-15 2006-10-11 삼성전자주식회사 데이터 버스를 이용하는 시스템 및 그의 동작제어방법
JP4539475B2 (ja) * 2005-07-21 2010-09-08 富士ゼロックス株式会社 画像形成システムおよび方法
JP2007044906A (ja) * 2005-08-08 2007-02-22 Kyocera Mita Corp 電子装置
JP2007080245A (ja) * 2005-08-19 2007-03-29 Ricoh Co Ltd 画像形成装置及び認証課金方法
US20070061813A1 (en) * 2005-08-30 2007-03-15 Mcdata Corporation Distributed embedded software for a switch
JP2007088954A (ja) * 2005-09-22 2007-04-05 Brother Ind Ltd 通信応用装置及びプログラム
JP4821261B2 (ja) * 2005-10-21 2011-11-24 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置
JP2007149056A (ja) * 2005-10-25 2007-06-14 Canon Inc 画像形成方法、情報処理装置、画像形成システム、コンピュータプログラム、及びコンピュータ読み取り可能な記憶媒体
US8239857B2 (en) * 2005-12-08 2012-08-07 Canon Kabushiki Kaisha Information processing apparatus and method of installing application program
JP2007219571A (ja) * 2006-02-14 2007-08-30 Hitachi Ltd 記憶制御装置及びストレージシステム
US8319989B2 (en) * 2006-02-21 2012-11-27 Ricoh Company, Ltd. Image processing apparatus for processing and communicating with an information processing apparatus which does not have an image processing apparatus driver software
JP4908026B2 (ja) * 2006-03-22 2012-04-04 株式会社東芝 情報処理装置
JP2007264697A (ja) * 2006-03-27 2007-10-11 Seiko Epson Corp 処理システム、プロジェクタ、プログラムおよび情報記憶媒体
JP4389893B2 (ja) * 2006-03-27 2009-12-24 ブラザー工業株式会社 画像形成装置
JP2007310690A (ja) * 2006-05-19 2007-11-29 Sharp Corp ファームウェアのアップデート方法、プログラム、記憶媒体
JP4849968B2 (ja) * 2006-06-13 2012-01-11 コニカミノルタビジネステクノロジーズ株式会社 プログラム更新管理装置
JP2008041057A (ja) * 2006-08-10 2008-02-21 Ricoh Co Ltd 画像処理装置、画像形成装置、プログラム管理方法及びプログラムを管理する管理プログラム
JP2008078630A (ja) * 2006-08-24 2008-04-03 Hitachi Kokusai Electric Inc 基板処理システム
JP5112787B2 (ja) * 2006-09-01 2013-01-09 株式会社リコー 情報処理装置、プログラム更新方法及びプログラム
JP4857207B2 (ja) * 2006-09-07 2012-01-18 株式会社リコー 画像形成装置および入出力制御方法
US7774356B2 (en) * 2006-12-04 2010-08-10 Sap Ag Method and apparatus for application state synchronization
JP2008186065A (ja) * 2007-01-26 2008-08-14 Fuji Xerox Co Ltd 画像処理装置および画像処理システムおよび表示制御プログラム
JP4539677B2 (ja) * 2007-04-23 2010-09-08 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、プログラム更新システム、プログラム更新方法およびプログラム更新プログラム
JP4474440B2 (ja) * 2007-06-19 2010-06-02 インターナショナル・ビジネス・マシーンズ・コーポレーション 多機能周辺装置(mfp)によるサービスの提供
JP4980809B2 (ja) * 2007-07-10 2012-07-18 株式会社リコー 画像形成装置、画像形成装置の起動方法、およびプログラム
JP5067853B2 (ja) * 2007-08-14 2012-11-07 キヤノン株式会社 データ処理装置、データ処理方法、及びコンピュータプログラム
US8065671B1 (en) * 2007-08-20 2011-11-22 United States Automobile Association (USAA) Systems and methods for product updates with provisioning of data items
JP4958692B2 (ja) * 2007-08-31 2012-06-20 キヤノン株式会社 配信装置、配信方法、及びコンピュータプログラム
DE102007052180A1 (de) * 2007-10-31 2009-05-07 Fujitsu Siemens Computers Gmbh Verfahren, Rechnersystem und Computerprogrammprodukt
KR101219432B1 (ko) * 2008-03-18 2013-01-11 삼성전자주식회사 화상형성장치 및 그 펌웨어 이력정보 제공방법
US20090271507A1 (en) * 2008-04-24 2009-10-29 Kodimer Marianne L System and method for assisted administration of remote device updates
JP4413976B2 (ja) * 2008-05-23 2010-02-10 株式会社東芝 情報処理装置及び情報処理装置のバージョンアップ方法
JP5038237B2 (ja) * 2008-06-06 2012-10-03 株式会社リコー 電子機器、画像形成装置、電子機器の起動制御方法、起動制御プログラム及び記録媒体
JP2010000636A (ja) * 2008-06-18 2010-01-07 Canon Inc 画像形成装置及び画像形成装置の制御方法
US8271623B2 (en) * 2009-01-15 2012-09-18 Microsoft Corporation Performing configuration in a multimachine environment
JP5326918B2 (ja) * 2009-08-05 2013-10-30 株式会社リコー 電子機器,ソフトウェア更新方法,プログラム,および記録媒体
JP2011039840A (ja) * 2009-08-12 2011-02-24 Ricoh Co Ltd 画像処理装置、ソフトウェア更新システム、ソフトウェア更新方法、ソフトウェア更新プログラム、及びそのプログラムを記録した記録媒体
JP5346253B2 (ja) * 2009-08-24 2013-11-20 株式会社日立ソリューションズ ファームウェア更新システム、及び情報機器、並びにプログラム
JP5541666B2 (ja) * 2009-10-15 2014-07-09 キヤノン株式会社 画像形成装置、画像形成装置の制御方法及びプログラム
US20110113416A1 (en) * 2009-11-09 2011-05-12 Bank Of America Corporation Network-Enhanced Control Of Software Updates Received Via Removable Computer-Readable Medium
US8584113B2 (en) * 2009-11-09 2013-11-12 Bank Of America Corporation Cross-updating of software between self-service financial transaction machines
US8972974B2 (en) * 2009-11-09 2015-03-03 Bank Of America Corporation Multiple invocation points in software build task sequence
US9122558B2 (en) * 2009-11-09 2015-09-01 Bank Of America Corporation Software updates using delta patching
US9176898B2 (en) * 2009-11-09 2015-11-03 Bank Of America Corporation Software stack building using logically protected region of computer-readable medium
US9128799B2 (en) * 2009-11-09 2015-09-08 Bank Of America Corporation Programmatic creation of task sequences from manifests
US20110113226A1 (en) * 2009-11-09 2011-05-12 Bank Of America Corporation Distribution Of Software Updates
US20110238572A1 (en) * 2010-03-25 2011-09-29 Bank Of America Corporation Remote Control Of Self-Service Terminal
JP5539129B2 (ja) * 2010-09-13 2014-07-02 キヤノン株式会社 画像形成装置、ファームェアのアップデート方法、及び、プログラム
US20120131570A1 (en) * 2010-11-18 2012-05-24 Nokia Corporation Method and apparatus for customizing device content
JP5787616B2 (ja) * 2011-05-20 2015-09-30 キヤノン株式会社 画像処理装置、画像処理装置の制御方法及びプログラム
JP2013092940A (ja) * 2011-10-26 2013-05-16 Canon Inc 電子機器及びその電力制御方法
JP2013097678A (ja) * 2011-11-02 2013-05-20 Canon Inc 配信システム及びその管理方法
JP5929387B2 (ja) 2012-03-22 2016-06-08 株式会社リコー 情報処理装置、履歴データ生成プログラム及び投影システム
JP5638021B2 (ja) * 2012-03-30 2014-12-10 京セラドキュメントソリューションズ株式会社 情報処理装置および画像形成装置
JP5943681B2 (ja) * 2012-04-09 2016-07-05 キヤノン株式会社 情報処理装置、情報処理装置のファームウエア更新方法及びプログラム
JP6020159B2 (ja) * 2012-12-27 2016-11-02 株式会社リコー 情報処理装置、及び情報処理方法
JP2014182571A (ja) * 2013-03-19 2014-09-29 Denso Corp 車載電子制御装置のプログラム書換システム及び車載中継装置
JP6155865B2 (ja) * 2013-06-07 2017-07-05 株式会社リコー 情報処理システム、情報処理方法、および、プログラム
JP6210789B2 (ja) * 2013-08-08 2017-10-11 キヤノン株式会社 ネットワークシステム、配信システム、制御方法、及びプログラム
JP5976729B2 (ja) * 2014-07-22 2016-08-24 京セラドキュメントソリューションズ株式会社 電子機器
CN104301383A (zh) * 2014-09-05 2015-01-21 小米科技有限责任公司 一种升级方法、装置及设备
US9619244B2 (en) 2014-09-05 2017-04-11 Xiaomi Inc. Method and system for upgrading an electronic device
JP2016126584A (ja) * 2015-01-06 2016-07-11 キヤノン株式会社 ネットワークシステム、ネットワークシステムの制御方法
US9740473B2 (en) 2015-08-26 2017-08-22 Bank Of America Corporation Software and associated hardware regression and compatibility testing system
JP7069826B2 (ja) 2018-02-27 2022-05-18 株式会社リコー 情報処理装置、ファームウェア更新方法、プログラム
JP7176247B2 (ja) * 2018-06-22 2022-11-22 富士フイルムビジネスイノベーション株式会社 情報処理装置、画像形成装置及びプログラム
JP7271997B2 (ja) * 2019-02-21 2023-05-12 富士フイルムビジネスイノベーション株式会社 情報処理装置およびプログラム
JP2023034836A (ja) * 2021-08-31 2023-03-13 株式会社小松製作所 ソフトウェア更新システム、作業機械およびソフトウェア更新方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4007450A (en) * 1975-06-30 1977-02-08 International Business Machines Corporation Data sharing computer network
US5121113A (en) * 1990-04-02 1992-06-09 Eastman Kodak Company Printer status and control panel
US5276877A (en) * 1990-10-17 1994-01-04 Friedrich Karl S Dynamic computer system performance modeling interface
IT1254937B (it) * 1991-05-06 1995-10-11 Aggiornamento dinamico di memoria non volatile in un sistema informatico
EP0556994B1 (en) * 1992-02-10 2001-08-29 Canon Kabushiki Kaisha Output method and unit
KR100224085B1 (ko) * 1996-08-14 1999-10-15 윤종용 전원절약형 디스플레이장치 및 전원제어 방법
US5841972A (en) * 1997-01-03 1998-11-24 Ncr Corporation System using displayed configuration utility on monitor including list of target nodes, for administering interconnected nodes of computer network
US5937150A (en) * 1997-02-10 1999-08-10 Toshiba America Information Systems, Inc. LCD panel controlled by two process elements
DE19743758C1 (de) * 1997-10-02 1998-12-03 Siemens Ag Responsives System zur digitalen Signalverarbeitung sowie Verfahren zum konsistenten Betrieb eines responsiven Systems
JP4060414B2 (ja) * 1997-10-03 2008-03-12 日本テキサス・インスツルメンツ株式会社 プログラムロード装置
DE19810802A1 (de) * 1998-03-12 1999-09-16 Ericsson Telefon Ab L M Störungsfreies Aktualisieren von Daten
US6167567A (en) * 1998-05-05 2000-12-26 3Com Corporation Technique for automatically updating software stored on a client computer in a networked client-server environment
US6639687B1 (en) * 1998-09-08 2003-10-28 International Business Machines Corporation Progress indicator for multiple actions
US6389556B1 (en) * 1999-01-21 2002-05-14 Advanced Micro Devices, Inc. Mechanism to prevent data loss in case of a power failure while a PC is in suspend to RAM state
US6195750B1 (en) * 1999-03-09 2001-02-27 Amdhal Corporation Method and apparatus for dynamic CPU reconfiguration in a system employing logical processors
US6883093B2 (en) * 2000-11-30 2005-04-19 International Business Machines Corporation Method and system for creating and managing common and custom storage devices in a computer network
US6785843B1 (en) * 2001-02-23 2004-08-31 Mcrae Andrew Data plane restart without state change in a control plane of an intermediate network node
JP3743323B2 (ja) * 2001-08-02 2006-02-08 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、画像形成装置管理ユニット、および、画像処理装置もしくは画像処理装置の管理ユニットにおいて実行されるプログラム
JP3726726B2 (ja) * 2001-08-20 2005-12-14 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置および管理ユニット
US7219301B2 (en) * 2002-03-01 2007-05-15 Iparadigms, Llc Systems and methods for conducting a peer review process and evaluating the originality of documents
JP4128516B2 (ja) 2002-11-18 2008-07-30 株式会社リコー 画像形成装置、プログラム更新方法

Also Published As

Publication number Publication date
US20040145766A1 (en) 2004-07-29
US7380243B2 (en) 2008-05-27
JP2004194298A (ja) 2004-07-08

Similar Documents

Publication Publication Date Title
JP4128516B2 (ja) 画像形成装置、プログラム更新方法
JP4843187B2 (ja) 画像形成装置
JP4276909B2 (ja) 画像形成装置およびアプリ起動制御方法
JP3492332B2 (ja) 掲示板機能を有する画像処理装置およびその制御方法およびプログラム並びに記憶媒体
US20110296439A1 (en) Information processing device, application execution method, and computer readable medium
JP4344203B2 (ja) 画像形成装置および情報表示方法
JP4208786B2 (ja) 画像処理装置、ネットワークシステム、情報処理方法、ならびにプログラム、記憶媒体
JP2015092769A (ja) 画像形成装置,プログラム更新方法および記録媒体
JP2012070429A (ja) 画像形成装置、画像形成方法およびプログラム
JP4856622B2 (ja) 画像形成装置、プログラム更新方法
JP2005196745A (ja) 情報処理装置、プログラム復旧方法、プログラム復旧プログラム及び記録媒体
JP4128506B2 (ja) 画像形成装置およびアプリケーション情報取得方法
JP4001531B2 (ja) 画像形成装置
JP2006311590A (ja) 画像形成装置およびアプリケーションインストール方法
JP2007295371A (ja) 画像形成装置及びコンピュータプログラム
JP4676977B2 (ja) 画像形成装置、アプリケーション情報取得方法、及びプログラム
JP5267624B2 (ja) 情報処理装置、表示制御方法、プログラム、及び記録媒体
JP4237511B2 (ja) 画像形成装置、プログラム更新方法
JP4859241B2 (ja) 複合装置、情報処理方法及びプログラム
JP2009140069A (ja) 印刷システム
JP2006271005A (ja) 画像形成装置およびアプリケーションインストール方法
JP4677054B2 (ja) 画像形成装置、プログラム、記録媒体、及び方法
JP4485749B2 (ja) 画像形成装置
JP2012221326A (ja) 電子機器
JP2009006585A (ja) 画像形成装置、バックアップ方法、およびコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20051124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071228

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080415

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080514

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110523

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120523

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120523

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130523

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140523

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees