JP4083505B2 - 画像形成装置,プログラム更新方法および記録媒体 - Google Patents

画像形成装置,プログラム更新方法および記録媒体 Download PDF

Info

Publication number
JP4083505B2
JP4083505B2 JP2002242528A JP2002242528A JP4083505B2 JP 4083505 B2 JP4083505 B2 JP 4083505B2 JP 2002242528 A JP2002242528 A JP 2002242528A JP 2002242528 A JP2002242528 A JP 2002242528A JP 4083505 B2 JP4083505 B2 JP 4083505B2
Authority
JP
Japan
Prior art keywords
update
program
application
update data
rom
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
JP2002242528A
Other languages
English (en)
Other versions
JP2003182191A (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
Priority to JP2002242528A priority Critical patent/JP4083505B2/ja
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to US10/227,303 priority patent/US6952535B2/en
Publication of JP2003182191A publication Critical patent/JP2003182191A/ja
Priority to US10/851,316 priority patent/US6915085B2/en
Priority to US11/000,094 priority patent/US7725890B2/en
Application granted granted Critical
Publication of JP4083505B2 publication Critical patent/JP4083505B2/ja
Priority to US12/711,961 priority patent/US8453137B2/en
Priority to US13/870,754 priority patent/US8856773B2/en
Priority to US14/479,012 priority patent/US9497347B2/en
Priority to US15/276,258 priority patent/US10277767B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/00973Input arrangements for operating instructions or parameters, e.g. updating internal software from a remote device, e.g. receiving via the internet instructions input to a computer terminal
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G15/00Apparatus for electrographic processes using a charge pattern
    • G03G15/50Machine control of apparatus for electrographic processes using a charge pattern, e.g. regulating differents parts of the machine, multimode copiers, microprocessor control
    • G03G15/5075Remote control machines, e.g. by a host
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1801Input data handling means
    • G06K15/1803Receiving particular commands
    • G06K15/1805Receiving printer configuration commands
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00278Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a printing apparatus, e.g. a laser beam printer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00938Software related arrangements, e.g. loading applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G2215/00Apparatus for electrophotographic processes
    • G03G2215/00025Machine control, e.g. regulating different parts of the machine
    • G03G2215/00109Remote control of apparatus, e.g. by a host
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Description

【0001】
【発明の属する技術分野】
この発明は、画像形成装置,プログラム更新方法および記録媒体に係り、特に記憶部に格納されたプログラムをネットワーク経由で受信した更新データで更新する画像形成装置,プログラム更新方法および記録媒体に関するものである。
【0002】
【従来の技術】
従来、プリンタ、コピー、ファクシミリ、スキャナなどの装置はそれぞれ別筐体として配設されるのが一般的であった。しかし、最近では、これら各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応する3種類のソフトウェアを設け、ソフトウェアの切り替えによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。
【0003】
このような従来の複合機では、プリンタ、コピー、ファクシミリおよびスキャナの各機能ごとにソフトウェアを組み込んだ書き換え不可能なROM(Read Only Memory)を搭載したコントローラボードを設け、複数の機能を実現する構成としていた。
【0004】
したがって、従来の複合機では、各機能の変更、追加などを行う場合に、機能追加または機能変更を反映したプログラムを組み込んだ新たなROMを用意してROMごと交換するというハードウェア的な作業が必要であり、更新作業の労力が過大なものとなっていた。
【0005】
このため、最近の複合機はフラッシュメモリのように電気的に内容の書き換えが可能なROMにプリンタ、コピー、ファクシミリおよびスキャナの各機能を含むプログラムを組み込み、複数の機能を複合サービスとして実現している。
【0006】
このような複合機は、各機能の変更、追加などを行う場合に、機能追加または機能変更を行ったプログラムを更新データとしてフラッシュカードに記録し、このフラッシュカードを複合機のフラッシュカードインタフェースに挿入した状態で複合機を再起動する。
【0007】
このとき複合機は、更新プログラムによって更新データをフラッシュカードから読み出し、読み出された更新データによってフラッシュメモリに記録されているプログラムが更新されるようになっている。このように、最近の複合機では、電気的に書き換え可能というフラッシュメモリの特性を利用して、ソフトウェア的にROM更新を行っている。
【0008】
例えば特開2001−268306号公報には、ソフトウェアの変更や追加に柔軟に対処することを課題とする技術が記載されている。
【0009】
【発明が解決しようとする課題】
ところで、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(特開2002−82806号公報)を発明した。
【0010】
なお、ユーザサービスとはユーザに提供する画像形成に係るサービスをいう。また、コントロールサービスとはアプリケーションに画像形成に係るハードウェア資源を提供するサービスをいう。
【0011】
この画像形成装置によれば、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行うプラットホームを備えた構成とすることによって、通常の複合機に比べて将来的なアプリケーションの追加やコントロールサービスの追加などのソフトウェア開発を容易に行うことができ、拡張性が高いものとなっている。このため、このような構成の複合機では、機能追加や機能変更によるプログラム更新の必要性が従来の複合機よりも非常に高くなってくる。
【0012】
例えば、複合機の使用契約では、プリンタ、コピー、スキャナの機能のみを使用する契約で複合機を導入し稼働していたが、使用契約の変更によりファクシミリ機能を追加して複合機を使用する場合も考えられる。この場合、ファクシミリ機能の追加により、ファクシミリ用のアプリケーションの追加、およびこれに伴うプラットホームの追加、変更が必要となってくる。
【0013】
このような複数のアプリケーションおよび共通的な処理を行うプラットホームを備えた構成の複合機の場合には、特にこのような機能変更、機能追加の要求が不定期にかつ頻繁に生じるケースが多い。このため、従来のプログラム更新方法のように、プログラム更新を行うごとにフラッシュカードを入手し、そのフラッシュカードから更新データを読み込んでROMに格納されたプログラムの更新を行うという作業では、不定期にかつ頻繁に生じるプログラム更新のニーズに迅速に対応できない。また、フラッシュカードを用いたプログラム更新方法では、更新作業が非常に煩雑となり、作業効率が悪いという問題がある。
【0014】
複合機は、コピー、プリンタ、スキャナ、ファクシミリなどの複合サービスを提供するものではあるが、複合機のすべての機種において提供可能なサービスが統一されているわけではない。例えば、すべての機能が提供可能な機種やファクシミリ機能やコピー機能など一部の機能が制限された機種など種々のパターンがある。このため、汎用OS上で動作する複数のアプリケーションや複数のコントロールサービスなども、提供可能な機能によって必然的に変わってくる。
【0015】
しかしながら、従来の複合機では、上述のようにフラッシュカードを挿入して電源投入を行った場合、各アプリケーションや各コントロールサービスの起動を行わずにただちに更新プログラムが実行されてしまうため、複合機の構成を認識することができず、構成の相違に応じたプログラムの更新を正確に行うことができないという問題がある。
【0016】
例えば、ファックスアプリやファックスコントロールサービスなどファクシミリ通信関連のプログラムが存在しない構成の複合機に対して、すべてのプログラムの更新データを含むフラッシュカードでプログラム更新処理を行った場合、ROM上で更新の必要のないプログラムまで更新してしまう可能性もあり、プログラム更新を行うことにより複合機に障害を生じさせてしまう場合がある。
【0017】
なお、特開2001−268306号公報に記載されている技術は、所定のネットワークを介して接続されている機器を用いて、マルチファンクションペリフェラルが実行するプログラムを取得,実行するものであって、プログラムの更新を行うものではない。
【0018】
この発明は上記に鑑みてなされたもので、プログラム更新作業を迅速,正確かつ容易に行うことができる画像形成装置,プログラム更新方法および記録媒体を得ることを目的とする。
【0019】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかる発明は、画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムと、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用される前記ハードウェア資源の管理,実行制御並びに画像形成処理を行う1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を行う1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置であって、前記プログラムの1つであって、ネットワーク通信を制御するとともに、ネットワーク経由で、前記アプリケーション及びプログラムの更新データを含む更新データ群を受信するネットワークコントロール手段と、前記ネットワークコントロールプログラムが更新データ群を受信した場合に、前記1つ以上のアプリケーション及びプログラムを起動するプログラム起動手段と、前記プログラム起動手段により起動された又は起動可能な前記1つ以上のアプリケーション及びプログラムに基づいて、前記ネットワークコントロールプログラムにより受信した更新データ群から自機で動作する前記アプリケーション及びプログラムの構成に応じた更新データを選定する更新データ選定手段と、前記記憶部に格納されている前記アプリケーション及びプログラムを前記選定された更新データで更新する更新手段とを備えたことを特徴とする。
【0020】
この請求項1にかかる発明によれば、ネットワーク経由で更新データを含む更新データ群を受信し、更新データで記憶部に格納されているプログラムを更新するので、フラッシュカードなどの記録媒体を用いずにプログラム更新をいつでも行うことができる。
【0021】
また、この請求項1にかかる発明では、プログラム起動手段によって起動された又は起動可能なプログラムに基づき、選定された更新データで記憶部に格納されているプログラムを更新するので、画像形成装置上で動作するプログラムの構成に応じて必要な更新データを選択して適切なプログラム更新を行うことができる。
【0022】
従って、この請求項1にかかる発明によれば、不定期かつ頻繁に生じるプログラム更新の要求に迅速に対応でき、画像形成装置の構成に最適なプログラム更新を正確かつ容易に行うことができる。
【0023】
この発明における更新データとは、ユーザサービスまたはコントロールサービスのプログラムの機能変更や機能追加を行うためのプログラムデータである。また、更新データ群とは更新データを更新対象のユーザサービスまたはコントロールサービスごとに一または複数まとめたものであり、更新データ自体の他、更新データに対応したプログラムのモジュール識別情報や画像形成装置の機種情報、更新データの記憶部上における更新先アドレス、さらには更新データの相対アドレスなどをヘッダ情報として含めても良い。
【0024】
また、請求項2にかかる発明は、前記プログラムの1つであって、通常処理を行う通常モードスレッドと、前記起動された又は起動可能な前記1つ以上のアプリケーション及びプログラムに基づいて、前記受信した更新データ群から自機で動作する前記アプリケーション及びプログラムの構成に応じた更新データを選定する処理を行うプログラム更新モードスレッドとを有するシステムコントロール手段をさらに備え、前記プログラム起動手段は、前記ネットワークコントロールプログラムが更新データ群を受信した場合に、前記システムコントロール手段のプログラム更新モードスレッドを起動し、前記更新手段は、前記システムコントロール手段のプログラム更新モードスレッドにより選定された更新データによって、記憶部に格納された前記アプリケーション及びプログラムを更新することを特徴とする。
【0025】
この請求項2にかかる発明によれば、システムコントロールサービスがプログラム更新モードスレッドを有するプロセスとして動作し、更新データ群を受信した場合に、システムコントロールサービスのプログラム更新モードスレッドを起動することで、更新データの選定処理を実行することができる。
【0026】
このため、一つのシステムコントロールサービスのプロセスで、通常処理時とプログラム更新時との処理をスレッドで切り分けることができるので、プロセスを別途設ける必要がなく、プログラム更新処理時のプロセス起動に伴う処理の遅延を回避することができる。
【0027】
従って、この請求項2にかかる発明によれば、不定期かつ頻繁に生じるプログラム更新の要求に対して迅速なプログラム更新を実現することができる。
【0028】
本発明におけるプログラム起動手段によるシステムコントロールサービスのプログラム更新モードスレッドの起動のタイミングは、ネットワークコントロールサービスが更新データ群を受信した場合であればよい。
【0029】
また、請求項3にかかる発明は、前記プログラムの1つであって、通常処理を行う通常モードスレッドと、前記更新データ群を一時的に格納する更新データ領域をメモリ上に確保するプログラム更新モードスレッドとを有するメモリコントロール手段と、前記アプリケーションの1つであって、前記受信した更新データ群を展開して前記更新データ領域に格納するプログラム更新制御手段とをさらに備え、前記プログラム更新制御手段は、前記ネットワークコントロール手段から更新データ群を受信した場合に、前記メモリコントロール手段のプログラム更新モードスレッドを、前記プログラム起動手段に起動させることを特徴とする。
【0030】
この請求項3にかかる発明によれば、メモリコントロールサービスがプログラム更新モードスレッドを有するプロセスとして動作し、更新データ群を受信した場合に、メモリコントロールサービスのプログラム更新モードスレッドを起動するので、更新データ領域の確保を行うことができる。
【0031】
このため、一つのメモリコントロールサービスのプロセスで、通常処理時とプログラム更新時との処理をスレッドで切り分けることができるので、更新データ領域の確保を行うプロセスを別途設ける必要がなく、プログラム更新処理時のプロセス起動に伴う処理の遅延を回避することができる。
【0032】
また、この請求項3にかかる発明によれば、受信した更新データ群を展開し、展開した更新データ群をメモリ上に確保された更新データ領域に格納することができるので、フラッシュカードなどから更新データを読み込む必要がなく、受信した更新データをそのままプログラム更新に用いることができ、プログラム更新を容易に行うことができる。
【0033】
従って、この請求項3にかかる発明によれば、不定期かつ頻繁に生じるプログラム更新の要求に対して迅速なプログラム更新を容易に実現することができる。
【0034】
本発明におけるプログラム起動手段によるメモリコントロールサービスのプログラム更新モードスレッドの起動のタイミングも、ネットワークコントロールサービスが更新データ群を受信した場合であればよい。
【0035】
また、請求項4にかかる発明は、前記プログラムのそれぞれは、通常処理を行う通常モードスレッドと前記画像形成に係る処理を停止するプログラム更新モードスレッドとを有し、前記プログラム更新制御手段は、前記ネットワークコントロール手段から更新データ群を受信した場合に、前記プログラムのプログラム更新モードスレッドを、前記プログラム起動手段に起動させることを特徴とする。
【0036】
この請求項4にかかる発明によれば、コントロールサービスのそれぞれがプログラム更新モードスレッドを有するプロセスとして動作し、更新データ群を受信した場合に、コントロールサービスのそれぞれのプログラム更新モードスレッドを起動するので、画像形成に係る処理を停止した状態でプログラム更新処理を行うことができる。このため、プログラム更新処理中に、コピー、ファクシミリなど更新に不要な機能が作動することによるプログラム更新処理の中断などを防止することができ、迅速なプログラム更新処理を実現することができる。
【0037】
本発明におけるプログラム起動手段による各コントロールサービスのプログラム更新モードスレッドの起動のタイミングも、ネットワークコントロールサービスが更新データ群を受信した場合であればよい。
【0038】
また、請求項5にかかる発明は、前記プログラム更新制御手段は、前記ネットワークコントロール手段から更新データ群を受信し、前記システムコントロール手段は、前記プログラム更新制御手段からの要求に応じて、前記プログラムにおいて起動中の前記通常モードスレッドを停止して、前記プログラム更新モードスレッドを起動することを特徴とする。
【0039】
この請求項5にかかる発明によれば、更新データ群を受信した場合に、コントロールサービスのそれぞれのプログラム更新モードスレッドを起動するので、画像形成に係る処理を停止した状態でプログラム更新処理を行うことができる。このため、プログラム更新処理中に、コピー、ファクシミリなど更新に不要な機能が作動することによるプログラム更新処理の中断などを防止することができ、迅速なプログラム更新処理を実現することができる。
【0040】
また、請求項6にかかる発明は、前記システムコントロール手段のプログラム更新モードスレッドは、起動した又は起動可能な前記1つ以上のアプリケーション及びプログラムを識別する為の起動情報を取得し、取得した各起動情報と前記更新データ群に格納された各アプリケーション及びプログラムのモジュール識別情報とに基づいて、前記アプリケーション及びプログラムの更新データを選定することを特徴とする。
【0041】
この請求項6にかかる発明によれば、取得した各起動情報と、更新データ群に格納された各プログラムごとのモジュール識別情報とに基づいて、起動した又は起動可能なプログラムの更新データを選定することで、画像形成装置上で動作するプログラムの構成を起動情報により把握して、起動情報とモジュール識別情報との対応により適切な更新データを選択して迅速かつ適切なプログラム更新を行うことができる。
【0042】
本発明における起動情報とは、ユーザサービスやコントロールサービスのプログラムを識別するものであればよく、プログラム名やプログラムIDなどを用いることができる。また、モジュール識別情報とは更新データで更新の対象となるユーザサービスやコントロールサービスのプログラムを識別するものであればよく、プログラム名、プログラムIDなどを用いることができる。
【0043】
また、請求項7にかかる発明は、前記システムコントロール手段のプログラム更新モードスレッドは、さらに記憶部に記憶されたファイルを検索して前記アプリケーション及びプログラムを識別する為の起動情報を取得し、前記アプリケーション及びプログラムの前記起動情報に基づいて前記アプリケーション及びプログラムの更新データを選定することを特徴とする。
【0044】
この請求項7にかかる発明によれば、取得した起動情報に基づいてプログラムの更新データを選定することで、画像形成装置上で動作可能なプログラムを実際に起動することなく把握して、画像形成装置の構成に応じた適切なプログラム更新を迅速かつ容易に行うことができる。
【0045】
また、請求項8にかかる発明は、機種固有の機種識別情報を取得する機種識別情報取得手段をさらに有し、前記システムコントロール手段のプログラム更新モードスレッドは、前記更新データ群に含まれる各アプリケーション及びプログラムのモジュール識別情報と、前記アプリケーション及びプログラムを識別する為の起動情報と、前記モジュール識別情報ごとに格納されている前記アプリケーション及びプログラムを動作可能な機種の機種識別情報と、前記機種識別情報取得手段により取得された機種識別情報とに基づいて、自機で動作する前記アプリケーション及びプログラムの構成に応じた更新データを更新データ群から選定することを特徴とする。
【0046】
この請求項8にかかる発明によれば、画像形成装置の機種により動作可能なプログラムの配置が異なっている場合でも、受信した一つの更新データ群を複数機種の画像形成装置のプログラム更新に使用することができる。このため、機種の相違により不要なデータでプログラム更新を行うことが防止され、画像形成装置の構成に最適なプログラム更新を行える。また、更新データ群の送信側は、契約した画像形成装置ごとに個別の更新データを送信する必要がなく、送信側にとってもプログラム更新作業を容易に行うことができる。
【0047】
また、請求項9にかかる発明は、前記更新データ群には、各モジュール識別情報前記更新データを書き込む記憶部の更新先領域が記録されており、前記更新手段は、前記アプリケーション及びプログラムを前記記憶部の更新先領域から前記選定された更新データで更新することを特徴とする。
【0048】
この請求項9にかかる発明によれば、記憶部の更新先領域を更新データで更新することで、記憶部に格納されているプログラムの配置や更新先を決定する処理が不要となり、正確かつ迅速なプログラム更新を行うことができる。
【0049】
また、請求項10にかかる発明は、前記更新データ群は、前記更新先領域を前記機種識別情報ごとに記録したものであることを特徴とする。
【0050】
この請求項10にかかる発明によれば、更新先領域が機種識別情報ごとに記録されているので、画像形成装置の機種により動作可能なプログラムの配置が異なっている場合でも、複数機種の画像形成装置のプログラム更新を正確かつ迅速に行うことができる。
【0051】
また、請求項11にかかる発明は、前記更新手段は、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする。
【0052】
この請求項11にかかる発明によれば、更新されたプログラムと更新データとを比較して検証することで、プログラム更新時に生じたエラーを速やかに検出することができ、プログラム更新の信頼性を向上することができる。
【0053】
また、請求項12にかかる発明は、プログラム更新に関する更新情報を記憶する不揮発性記憶手段をさらに備え、前記更新手段は、前記アプリケーション及びプログラムの更新時に、前記更新情報を前記不揮発性記憶手段に格納するとともに、前記アプリケーション及びプログラムの更新前に前記不揮発性記憶手段に前記更新情報が格納されているか否かを判断し、更新情報が格納されている場合には、前記不揮発性記憶手段に格納されている更新情報に基づいて前記アプリケーション及びプログラムを更新することを特徴とする。
【0054】
この請求項12にかかる発明によれば、更新処理が途中で中断された場合でも、次回起動時に更新情報を復帰させることができる。また、次回起動時に前回の更新処理の中断時点から更新処理を速やかに再開することもでき、中断後のプログラム更新処理を円滑に行うことができる。
【0055】
また、請求項13にかかる発明は、前記プログラム更新制御手段は、ネットワーク経由で前記ネットワークコントロール手段が前記更新データ群を受信する前に、起動されていることを特徴とする。
【0056】
この請求項13にかかる発明によれば、ネットワークコントロールサービスがネットワーク経由で受信した更新データ群を、プログラム更新アプリに迅速に転送することができる。
【0057】
また、請求項14にかかる発明は、画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムと、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用される前記ハードウェア資源の管理,実行制御並びに画像形成処理を行う1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を行う1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置の前記記憶部に格納された前記アプリケーション及びプログラムをネットワーク経由で提供される更新データによって更新する前記画像形成装置のプログラム更新方法において、ネットワーク経由で前記アプリケーション及びプログラムの少なくとも一部に対応した更新データを含む更新データ群を受信する受信ステップと、前記アプリケーション及びプログラムを起動するプログラム起動ステップと、前記プログラム起動ステップにより起動された又は起動可能な前記アプリケーション及びプログラムを識別する為の起動情報を取得し、取得した起動情報と前記更新データ群に格納された各プログラムのモジュール識別情報とに基づいて、前記アプリケーション及びプログラムに対応した更新データを選定する更新データ選定ステップと、前記記憶部に格納されている前記アプリケーション及びプログラムを前記選定された更新データで更新する更新ステップとを含んでいることを特徴とする。
【0058】
この請求項14にかかる発明によれば、ネットワーク経由で更新データを含む更新データ群を受信し、更新データで記憶部に格納されているプログラムを更新するので、フラッシュカードなどの記録媒体を用いずにプログラム更新をいつでも行うことができる。
【0059】
また、この請求項14にかかる発明では、プログラム起動ステップによって起動された又は起動可能なプログラムに基づき、選定された更新データで記憶部に格納されているプログラムを更新するので、画像形成装置上で動作するプログラムの構成に応じて必要な更新データを選択して適切なプログラム更新を行うことができる。
【0060】
従って、この請求項14にかかる発明によれば、不定期かつ頻繁に生じるプログラム更新の要求に迅速に対応でき、画像形成装置の構成に最適なプログラム更新を正確かつ容易に行うことができる。
【0061】
この発明における更新データとは、ユーザサービスまたはコントロールサービスのプログラムの機能変更や機能追加を行うためのプログラムデータである。また、更新データ群とは更新データを更新対象のユーザサービスまたはコントロールサービスごとに一または複数まとめたものであり、更新データ自体の他、更新データに対応したプログラムのモジュール識別情報や画像形成装置の機種情報、更新データの記憶部上における更新先アドレス、さらには更新データの相対アドレスなどをヘッダ情報として含めても良い。
【0062】
また、請求項15にかかる発明は、前記更新データを一時的に格納する更新データ領域をメモリ上に確保する領域取得ステップと、前記受信ステップで受信した更新データ群を展開して、前記更新データ領域に格納する更新データ展開ステップとをさらに含むことを特徴とする
この請求項15にかかる発明によれば、フラッシュカードなどから更新データを読み込む必要がなく、受信した更新データをそのままプログラム更新に用いることができ、プログラム更新を容易に行うことができる。
【0063】
また、請求項16にかかる発明は、前記更新データ選定ステップは、さらに、記憶部に記憶されたファイルを検索して前記アプリケーション及びプログラムの前記起動情報を取得することを特徴とする。
【0064】
この請求項16にかかる発明によれば、記憶部に記憶されたファイルを検索することによりプログラムの起動情報を取得できるので、装置の構成応じて適切なプログラム更新を行うことができる。
【0065】
また、請求項17にかかる発明は、前記プログラムを動作させる装置の機種固有の機種識別情報を取得する機種識別情報取得ステップをさらに有し、前記更新データ選定ステップは、前記更新データ群に含まれる各アプリケーション及びプログラムのモジュール識別情報と、前記アプリケーション及びプログラムを識別する為の起動情報と、前記モジュール識別情報ごとに格納されている前記アプリケーション及びプログラムを動作可能な機種の機種識別情報と、前記機種識別情報取得ステップにより取得した機種識別情報とに基づいて、自機で動作する前記アプリケーション及びプログラムの構成に応じた更新データを更新データ群から選定することを特徴とする。
【0066】
この請求項17にかかる発明によれば、装置の機種により動作可能なプログラムの配置が異なっている場合でも、受信した一つの更新データ群を複数機種の装置のプログラム更新に使用することができる。このため、機種の相違により不要なデータでプログラム更新を行うことが防止され、画像形成装置の構成に最適なプログラム更新を行える。また、更新データ群の送信側は、契約した画像形成装置ごとに個別の更新データを送信する必要がなく、送信側にとってもプログラム更新作業を容易に行うことができる。
【0067】
また、請求項18にかかる発明は、前記アプリケーション及びプログラムは、プログラム更新に関する処理を実行するプログラム更新モードを有しており、前記プログラム起動ステップは、前記画像形成装置が更新データ群を受信したときに前記アプリケーション及びプログラムをプログラム更新モードで起動することを特徴とする。
【0068】
この請求項18にかかる発明によれば、装置の本来の機能を停止した状態でプログラム更新処理を行うことができる。このため、プログラム更新処理中に他の不要な機能が作動することによるプログラム更新処理の中断などを防止することができ、迅速なプログラム更新処理を実現することができる。
【0069】
また、請求項19にかかる発明は、前記更新データ選定ステップは、前記プログラム更新モードで起動された前記アプリケーション及びプログラムによって実行されることを特徴とする。
【0070】
この請求項19にかかる発明によれば、起動プログラムによるメモリ使用サイズが減少するとともに、更新処理速度の向上が図られる。
【0071】
また、請求項20にかかる発明は、前記更新ステップは、前記アプリケーション及びプログラムを、前記更新データ群にモジュール識別情報ごとに格納されている更新データの更新先領域に従って、前記選定された更新データで更新することを特徴とする。
【0072】
この請求項20にかかる発明によれば、更新データの更新先領域に従って、プログラムを選定された更新データで更新することで、記憶部に格納されたプログラムの配置や更新先を決定する処理が不要となり、正確かつ迅速なプログラム更新を行うことができる。
【0073】
また、請求項21にかかる発明は、前記更新ステップは、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする。
【0074】
この請求項21にかかる発明によれば、更新されたプログラムと更新データとを比較して検証することで、プログラム更新時に生じたエラーを速やかに検出することができ、プログラム更新の信頼性を向上することができる。
【0075】
また、請求項22にかかる発明は、前記更新ステップは、前記アプリケーション及びプログラムの更新時に、前記アプリケーション更新及びプログラム更新に関する更新情報を不揮発性記憶手段に格納し、前記アプリケーション及びプログラムの更新前に前記不揮発性記憶手段に前記更新情報が格納されているか否かを判断し、前記更新情報が格納されている場合には、前記不揮発性記憶手段に格納されている更新情報に基づいて前記アプリケーション及びプログラムを更新することを特徴とする。
【0076】
この請求項22にかかる発明によれば、更新処理が途中で中断された場合でも、次回起動時に更新情報を復帰させることができる。また、次回起動時に前回の更新処理の中断時点から更新処理を速やかに再開することもでき、中断後のプログラム更新処理を円滑に行うことができる。
【0077】
また、請求項23にかかる発明は、画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムと、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用される前記ハードウェア資源の管理,実行制御並びに画像形成処理を行う1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を行う1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置に、ネットワーク経由で前記アプリケーション及びプログラムの少なくとも一部に対応した更新データを含む更新データ群を受信する受信手順と、前記画像形成装置上で前記アプリケーション及びプログラムを起動するプログラム起動手順と、前記プログラム起動手順で起動された又は起動可能な前記アプリケーション及びプログラムを識別する為の起動情報を取得し、取得した起動情報と前記更新データ群に格納された各プログラムのモジュール識別情報とに基づいて、前記アプリケーション及びプログラムに対応した更新データを選定する更新データ選定手順と、前記アプリケーション及びプログラムを前記更新データ選定手順で選定された更新データによって更新する更新手順とを実行させる更新処理プログラムを記録したコンピュータ読み取り可能な記録媒体であることを特徴とする。
【0078】
本発明によれば、不定期かつ頻繁に生じるプログラム更新の要求に迅速に対応でき、画像形成装置の構成に最適なプログラム更新を正確かつ容易に行うことができる。
【0079】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる画像形成装置およびプログラム更新方法の好適な実施の形態を詳細に説明する。
(実施の形態1)
図1は、この発明の実施の形態1である画像形成装置(以下、「複合機」という)の構成を示すブロック図である。図1に示すように、複合機100は、白黒ラインプリンタ(B&W LP)101と、カラーラインプリンタ(Color LP)102と、スキャナ、ファクシミリなどのハードウェアリソース103などを有するとともに、プラットホーム120とアプリケーション130とから構成されるソフトウェア群110と、電源投入時に実行される複合機起動部140とを備えている。
【0080】
複合機起動部140は、複合機100の電源投入時にまずはじめに実行され、プラットホーム120やアプリケーション130を起動モードに応じて実行するものである。ここで、起動モードには通常モードとROM更新モードがある。通常モードとは、複合機100でコピー、プリント、スキャナ、ファクシミリなど通常の複合サービスを行うために起動するモードであり、後述するSRAM208のリモートROM更新フラグがOFFに設定されている場合に起動される。
【0081】
一方、ROM更新モードとは記憶部の一例としてのフラッシュメモリの更新を行うために複合機100を起動するモードであり、SRAM208のリモートROM更新フラグがONに設定されている場合に起動される。
【0082】
プラットホーム120は、アプリケーション130からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121とを有する。
【0083】
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成される。なお、このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。
【0084】
汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
【0085】
MCS125は、メモリの制御を行うプロセスとして起動される。このMCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などのコピー、プリンタ、ファクシミリおよびスキャナなどの複合サービスを行う際に実行される通常モードスレッドと、複合機100がROM更新モードで起動された場合に、後述するリモートROM更新アプリによって更新データパケットから展開された更新データを格納する更新データ領域をSDRAM203に確保するROM更新モードスレッドとを有している。ここで、更新データパケットは、本発明における更新データ群を構成するものである。
【0086】
OCS126のプロセスは、オペレータと本体制御間の情報伝達手段となる操作パネル(オペレーションパネル)の制御という複合サービスを行う際に起動される通常モードスレッドと、かかる操作パネルの制御を行わず単に起動されるだけのROM更新モードスレッドを有している。
【0087】
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、複合送受信を行うためのAPIを提供するという複合サービスを行う際に起動される通常モードスレッドと、かかる機能を実行せずに単に起動されるだけのROM更新モードスレッドを有している。
【0088】
NCS128は、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行うという複合サービスを行う際に実行される通常モードスレッドを有している。また、NCS128の通常モードスレッドでは、さらにネットワークに接続された、例えば複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダなどから、フラッシュメモリのROM更新要求パケットを受信する。NCS128のプロセスには、フラッシュメモリに組み込まれたプログラムの更新データを含む更新データパケットを複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダからネットワーク経由で受信するROM更新モードスレッドも有している。
【0089】
SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御するという複合サービスを行う際に実行される通常モードスレッドと、かかるリソース管理を実行せずに単に起動されるだけのROM更新モードスレッドを有している。
【0090】
具体的には、このSRM123の通常モードスレッドは、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
【0091】
SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御という複合サービスを行う際に実行される通常モードスレッドを有している。例えばSCS122の通常モードスレッドは、NCS128がネットワーク経由でROM更新要求パケットを受信したときに、SRAM208のリモートROM更新フラグをONに設定し、複合機100に対して再起動コマンドを発行する処理を行う。
【0092】
SCS122のプロセスは、さらに複合機100がROM更新モードで起動された場合にのみ起動されるROM更新モードスレッドを通常モードスレッドとは別個に有している。このROM更新モードスレッドは、複合機100がROM更新モードで起動されたときに、SDRAM203に展開されたデータの中から、複合機100で動作するアプリケーション、コントロールサービスの構成に応じた更新データを選定する処理を行う。
【0093】
ECS124のプロセスは、白黒ラインプリンタ(B&W LP)101、カラーラインプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース103のエンジンの制御という複合サービスを行う際に実行される通常モードスレッドと、このようなエンジン制御を行わずに単に起動されるだけのROM更新モードスレッドを有している。
【0094】
このように、ECS124、OCS126、FCS127、SRM123の各ROM更新モードスレッドはいずれも単に起動されるだけであるが、これは、ROM更新処理時に、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。一方、MCS125、SCS122、NCS128の各ROM更新モードスレッドも、それぞれROM更新に必要な処理を行うとともに、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。
【0095】
アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116と、更新データをSDRAM203上に展開するリモートROM更新アプリ(以下、「RRUアプリ」という。)117とを有している。
【0096】
これらの各アプリも、プラットホーム120と同様にそれぞれプロセスとして起動される。なお、RRUアプリ117のプロセスは、複合機100がROM更新モードで起動された場合に起動するようにしてもよい。ここで、アプリケーション130は、本発明におけるユーザサービスを構成するものである。
【0097】
例えばRRUアプリ117は、NCS128がROM更新要求パケットを受信して複合機100がROM更新モードで再起動したときに、後述するプログラム起動部によって起動されるようにしてもよい。また、RRUアプリ117はプラットフォーム120と同様に、複合機100が通常モードで起動したときも起動されるようにしてもよい。
【0098】
RRUアプリ117は、NCS128によりネットワーク経由で受信した更新データパケットを更新データに展開し、その更新データをMCS125のROM更新モードスレッドによって確保されたSDRAM203の更新データ領域に格納する。
【0099】
図2は、図1に示した実施の形態1の複合機100のハードウェア構成図である。図2に示すように、この複合機100は、コントローラボード200と、オペレーションパネル210と、ファックスコントロールユニット(FCU)220と、USBデバイス230と、IEEE1394デバイス240と、ブルートゥースデバイス250と、エンジン部260から構成されている。
【0100】
図2のコントローラボード200は、ASIC201、CPU202、SDRAM203、フラッシュメモリ204、HDD205、SRAM208およびネットワークインターフェースコントローラ209から構成されている。
【0101】
オペレーションパネル210は、ASIC201に直接接続されている。FCU220、USBデバイス230、IEEE1394デバイス240,ブルートゥースデバイス250およびエンジン部260は、PCIバスを介してASIC201に接続されている。
【0102】
ネットワークインターフェースコントローラ209は、ネットワーク271に接続されている他の機器とMACアドレスなどを用いて通信する。FCU220は電話網272に接続されている。また、USBデバイス230、IEEE1394デバイス240およびブルートゥースデバイス250は、他の端末273〜275に接続される。
【0103】
SRAM208は、ROM更新要求パケットを受信したときにON状態に設定されるリモートROM更新フラグを格納する領域と、ROM更新要求パケットの受信後、更新データパケットをネットワーク271経由で受信したときに、受信した更新データパケットから展開される更新データを格納する更新データ領域とが確保される不揮発性メモリである。また、SRAM208には、ROM更新中に電源が切れた場合に、処理復帰のために更新中の各種情報が蓄積される。
【0104】
SRAM208は、ROM更新中に電源が切れた場合に、処理復帰のために更新中の各種情報を蓄積するバッテリを用いた不揮発性メモリであり、本発明における不揮発性記憶手段を構成する。
【0105】
フラッシュメモリ(以下、「フラッシュROM」という。)204には、上述の各アプリ、プラットホームを構成する各コントロールサービスやSRM123の各プログラムが格納されている。実施の形態1にかかる複合機100は、これらの各プログラムがあらかじめフラッシュROM204に組み込まれた状態で出荷され、ROM更新要求パケットの受信によって、フラッシュROM204のプログラムが更新されるという、リモートROM更新の処理が実行されるようになっている。
【0106】
フラッシュROM204は、本発明における記憶部を構成するものである。なお、本発明における記憶部はフラッシュメモリ204に限るものでなく、SDRAM203、HDD205であってもよい。
【0107】
図3は、NCS128がネットワーク経由で受信した更新データパケットを展開した後のデータ構造図である。ここで、更新データパケットの展開とは、更新データパケットから、宛先ネットワークアドレス、パケット長などのネットワーク情報を除去してROM更新に必要なデータを参照可能とすることである。
【0108】
展開された更新データパケットは、図3に示すように、先頭のROMモニタ起動命令301と、ヘッダ部302と、データ部303とから構成される。ROMモニタ起動命令301は、複合機100の起動時に参照されて後述するROMモニタの起動を行うコマンドである。
【0109】
ヘッダ部302は、更新するモジュールに対応するように、モジュールごとのヘッダブロックに分かれている。各ヘッダブロックには、次のヘッダブロックまでのオフセットである次ヘッダオフセットと、モジュールの更新データまでのオフセットである更新データオフセットと、更新データのサイズと、モジュールの識別情報であるモジュールIDと、そのモジュールのフラッシュROM204上での相対番地を示す更新先アドレスと、そのモジュールのサイズである更新先領域長とから構成される。
【0110】
ここで、モジュールは、MCS125、ECS124、NCS128などのコントロールサービス単位のプログラム、プリンタアプリ111、コピーアプリ112などのアプリ単位のプログラム、プリンタエンジン101,102、スキャナエンジンなどのエンジン単位のプログラムで更新可能となっている。また、更新データとは、これらのモジュールに対する変更プログラムのバイナリデータを圧縮形式にしたものである。なお、この圧縮された更新データは、RRUアプリ117によって展開される際に伸張される。
【0111】
ヘッダ部302に続いてデータ部303が記録されており、データ部303には更新データがモジュールごとに格納されている。各モジュールの更新データの先頭は、モジュールに対応するヘッダブロックの更新データオフセットにより参照できるようになっている。
【0112】
図4は、実施の形態1の複合機100における複合機起動部140の構成を示すブロック図である。実施の形態1の複合機100における複合機起動部140は、図4に示すとおり、ROMモニタ410と、プログラム起動部420と、ROM更新モードスレッドを起動したSCS122と、ROM更新部430とから構成される。ROMモニタ410、プログラム起動部420、ROM更新部430はフラッシュROM204に記憶されている。
【0113】
ここで、プログラム起動部420は本発明におけるプログラム起動手段を、SCS122は本発明の更新データ選定手段を、ROM更新部430は本発明における更新手段をそれぞれ構成する。
【0114】
ROMモニタ410は、更新データパケットの先頭に記録されたROMモニタ起動命令を実行することにより起動され、ハードウェアの初期化、コントローラボードの診断、ソフトウェアの初期化、汎用OS121の起動などを行う。
【0115】
プログラム起動部420は、汎用OS121から呼び出されるものであり、起動モード設定部421と、サービス層起動部422と、アプリ起動部423と、アプリ起動情報設定部424とから構成される。
【0116】
起動モード設定部421は、SRAM208に保持されているリモートROM更新フラグのチェックを行って、通常モードまたはROM更新モードの起動モードの設定を行う。サービス層起動部422は、汎用OS121の起動情報を取得して、コントロールサービスを起動する。アプリ起動情報設定部424は、ROM更新モードの場合に実行され、各アプリの起動情報を取得して、取得したアプリ起動情報を環境変数に設定する。アプリ起動部423は、起動モードが通常モードである場合およびROM更新モードである場合に実行され、各アプリの起動情報を取得して各アプリを起動する。
【0117】
SCS122のROM更新モードスレッドは、プログラム起動部420のサービス層起動部422によって他のコントロールサービスとともに起動される。SCS122のROM更新モードスレッドでは、複合機100で動作するコントロールサービスやアプリを判断して、ネットワーク271経由で受信した更新データから複合機100の構成に応じた更新データを選定する。また、SCS122のROM更新モードスレッドは、ROM更新部430を起動して、ROM更新部430に対して選定した更新データの情報とともにROM更新命令を発する。
【0118】
ROM更新部430は、SCS122のROM更新モードスレッドにより起動され、SCS122からROM更新命令を受け取って、更新データでフラッシュROM204を更新するものである。ROM更新部430は、SCS122からのROM更新命令を解析するROM更新命令解読部431と、更新先アドレスと解析したROM更新命令に基づいてフラッシュROM204のプログラムを更新するROM更新処理部433と、ROM更新中の各種情報をSRAM208へ格納するSRAM処理部432と、ROM更新処理中のユーザへの進捗表示を制御する表示制御部434とから構成される。
【0119】
次にこのように構成された複合機100におけるリモートROM更新処理について説明する。図5は、実施の形態1の複合機100におけるリモートROM更新の全体処理の流れを示すブロック図である。
【0120】
図5(a)は、複合機100がROM更新要求を受信したときの動作を示し、図5(b)は複合機100がROM更新要求の受信後に再起動したときに、再起動の確認を行う動作を示し、図5(c)は更新データパケットを受信したときの動作を示す。
【0121】
図5(a)において、複合機100が通常の複合サービスの動作を実行しているときは、各アプリ、各コントロールサービスがいずれも通常モードスレッドを実行している。
【0122】
この状態で、ネットワーク経由で複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなどのリモートホストからROM更新要求パケットが送信されてくると、NCS128の通常モードスレッドはステップS501に進み、そのROM更新要求パケットを受信する。
【0123】
ステップS502では、NCS128の通常モードスレッドが、受信したパケットの内容を判断して、ROM更新要求パケットであった場合には、ROM更新要求がある旨をプリンタアプリ111へ通知する。
【0124】
ステップS503では、プリンタアプリ111が、NCS128からROM更新要求がある旨の通知を受信した場合に、SCS122の通常モードスレッドに対して複合機100の再起動リブート依頼通知を送信する。リブート依頼通知を受けたSCS122の通常モードスレッドは、SRAM208に格納されているリモートROM更新フラグをONに設定し、その後再起動コマンドを発行して複合機100を再起動する。
【0125】
複合機100は再起動すると、フラッシュROM204のブートベクタに記録されたROMモニタ410を起動する。図6は、実施の形態1の複合機100において、ROMモニタ410で実行される処理の手順を示すフローチャートである。
【0126】
ステップS601では、ROMモニタ410が、まずハードウェアの初期化を行う。ステップS602では、ROMモニタ410が、コントローラボード200の診断処理を実行する。ステップS603では、ROMモニタ410が、ソフトウェアの初期化処理を行う。ステップS604では、ROMモニタ410が、汎用OS121を起動する。
【0127】
図7は、実施の形態1の複合機100において、プログラム起動部420で実行される処理の手順を示すフローチャートである。ステップS701では、プログラム起動部420が、起動モード設定部421によって、SRAM208に格納されているリモートROM更新フラグの状態をチェックする。
【0128】
リモートROM更新フラグがONである場合には、起動モード設定部421はステップS702に進み、起動モードをROM更新モードに設定して以下の処理を行う。
【0129】
ステップS703では、サービス層起動部422が、フラッシュROM204のファイルシステムをマウントする。ステップS704では、サービス層起動部422が、フラッシュROM204からSCS122,ECS124,MCS125などのコントロールサービスの起動情報を取得する。ステップS705では、サービス層起動部422が、ステップS704で取得した起動情報を環境変数に設定する。
【0130】
そして、ステップS706では、サービス層起動部422が、SCS122、ECS124、MCS125などのコントロールサービスを汎用OS121上で起動する。このとき、各コントロールサービスはROM更新モードスレッドを起動する。従って、SCS122のプロセスではROM更新モードスレッドが起動される。
【0131】
ステップS707では、サービス層起動部422が、SCS122のROM更新モードスレッドが起動したら、起動したコントロールサービスのコントロールサービス起動情報を環境変数に設定する。
【0132】
ここで、コントロールサービス起動情報とは、起動したコントロールサービスのプロセスIDやモジュール名など、コントロールサービスのプログラムを識別するものであり、各コントロールサービスに固有の情報となっている。
【0133】
ステップS708では、アプリ起動情報設定部424が、フラッシュROM204のファイルシステムをマウントする。ステップS709では、アプリ起動情報設定部424が、マウントしたファイルシステムを検索して、格納されているアプリのプログラムを抽出し、複合機100で起動されるアプリのアプリ起動情報を取得する。そして、ステップS710では、アプリ起動情報設定部424が、ステップS709で取得したアプリ起動情報を環境変数に設定する。
【0134】
ここで、アプリ起動情報とは、複合機100で動作可能なアプリを識別するアプリ固有の情報であり、アプリのモジュールID、モジュール名などである。なお、ROM更新モードでは、コントロールサービスを起動し、アプリは起動しない。また、環境変数に設定されたコントロールサービス起動情報とアプリ起動情報は、SCS122へ受け渡される。このようにしてROM更新モードでのプログラム起動が行われる。そして、ステップS711では、アプリ起動部423が、RRUアプリ117を起動する。
【0135】
なお、ステップS701で、リモートROM更新フラグがOFFである場合には、起動モード設定部421はステップS712に進み、起動モードを通常モードに設定して以下の通常起動の処理を行う。
【0136】
ステップS713では、サービス層起動部422が、フラッシュROM204のファイルシステムをマウントする。ステップS714では、サービス層起動部422が、フラッシュROM204からSCS122,ECS124,MCS125などのコントロールサービスの起動情報を取得する。ステップS715では、サービス層起動部422が、SCS122、ECS124、MCS125などのコントロールサービスを汎用OS上で起動する。このとき、各コントロールサービスのプロセスでは、通常モードスレッドが起動される。
【0137】
ステップS716では、アプリ起動部423が、フラッシュROM204のファイルシステムをマウントする。ステップS717では、アプリ起動部423が、マウントしたファイルシステムから複合機100で起動される上述のアプリ起動情報を取得する。ステップS718では、アプリ起動部423が、各アプリを起動する。なお、このときはRRUアプリ117は起動しない。
【0138】
図5(b)において、ROM更新要求を行ったリモートホスト(複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなど)からROM更新可能状態確認パケットがネットワーク271経由で複合機100に対して送信されてくる。
【0139】
ステップS504では、コントロールサービスおよびRRUアプリ117が複合機100で起動されているので、NCS128のROM更新モードスレッドがROM更新可能状態確認パケットを受信する。ステップS505では、NCS128のROM更新モードスレッドが、受信したROM更新可能状態確認パケットをRRUアプリ117へ受け渡す。
【0140】
このとき、複合機100はROM更新モードで再起動されているため、ROM更新可能な状態となっている。ステップS506では、RRUアプリ117が、ROM更新可能状態確認パケットに対する応答メッセージとしてリモートROM更新可能のメッセージをNCS128へ送信する。ステップS507では、NCS128のROM更新モードスレッドが、リモートROM更新可能のメッセージをネットワーク271経由でROM更新可能状態確認パケットの送信元であるリモートホストへ送信する。
【0141】
NCS122がROM更新可能状態確認パケットに対する応答をリモートホストへ送信すると、図5(c)に示すように、リモートホストから更新データパケットが送信されてくる。このため、ステップS508では、複合機100が、NCS128のROM更新モードスレッドで更新データパケットを受信する。ステップS509では、NCS128のROM更新モードスレッドが、受信した更新データパケットをRRUアプリ117へ受け渡す。
【0142】
ステップS510では、RRUアプリ117が、更新データパケットを展開したデータに必要な領域を得るために、MCS125に対して、SDRAM203上に更新データ領域の確保を要求する。ステップS511では、確保要求を受けたMCS125のROM更新モードスレッドが、SDRAM203上に更新データ領域を確保して、その領域の先頭アドレスと確保した領域サイズとをRRUアプリ117に返す。
【0143】
RRUアプリ117では、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新パケットデータを、MCS125のROM更新モードスレッドから通知された領域の先頭アドレスから展開する。これにより、SDRAM203の更新データ領域には前述した図3に示した構造のデータが格納される。
【0144】
ステップS512では、RRUアプリ117が、更新データパケットを展開したSDRAM203上の領域の先頭アドレスを、SCS122へ通知する。これにより、SCS122のROM更新モードスレッドで更新データの選定処理が行われる。
【0145】
図8および図9は、実施の形態1の複合機100において、SCS122のROM更新モードスレッドで実行される更新データの選定処理の手順を示すフローチャートである。
【0146】
ステップS801では、SCS122のROM更新モードスレッドが、SRAM208にモジュールIDやフラッシュROM204の更新先アドレスなどの更新情報がすでに記憶されているか否かを確認する。
【0147】
SRAM208に更新情報が記憶されていると判断した場合には、SCS122のROM更新モードスレッドはROM更新処理が中断された後の起動であると判断し、ステップS802に進む。ステップS802では、SCS122のROM更新モードスレッドが、SRAM208から更新情報を取得する。
【0148】
ステップS802に続いてステップS803に進み、SCS122のROM更新モードスレッドは、フラッシュROM204の先頭のヘッダブロックを参照する。ステップS803に続いてステップS804に進み、SCS122のROM更新モードスレッドはヘッダブロックからモジュールIDを取得する。
【0149】
ステップS804に続いてステップS805に進み、SCS122のROM更新モードスレッドはヘッダブロックから取得したモジュールIDがステップS802でSRAM208から取得した更新情報に相当するか否かを判断する。
【0150】
ヘッダブロックから取得したモジュールIDが、SRAM208から取得した更新情報に該当する場合には、SCS122のROM更新モードスレッドはステップS806に進む。ステップS806では、SCS122のROM更新モードスレッドが、そのモジュールIDの更新データを選定し、さらにヘッダブロックから更新先アドレス、更新データオフセット、更新データサイズを取得する。
【0151】
ステップS806に続いてステップS807に進み、SCS122のROM更新モードスレッドはモジュールID、更新先アドレス、更新データオフセット、更新データサイズを一組とした更新情報を「更新対象」の変数等に設定し、ステップS809に進む。
【0152】
一方、ステップS805において、ヘッダブロックから取得したモジュールIDが、SRAM208から取得した更新情報に相当しない場合には、SCS122のROM更新モードスレッドは取得したモジュールIDの更新データを選定せず、ステップS809に進む。つまり、SCS122のROM更新モードスレッドはステップS806およびS807の処理は行わない。
【0153】
ステップS809では、SCS122のROM更新モードスレッドが、次ヘッダブロックオフセットを参照することにより、次のヘッダブロックが存在するか否かを判断する。次のヘッダブロックが存在する場合には、SCS122のROM更新モードスレッドはステップS810に進み、次のヘッダブロックを参照する。そして、SCS122のROM更新モードスレッドはステップS804からステップS807,ステップS809およびステップS810の処理を繰り返し行う。
【0154】
一方、次のヘッダブロックが存在しない場合には、SCS122のROM更新モードスレッドはステップS808に進む。つまり、すべてのヘッダブロックのモジュールIDについての更新データの選定が終了したら、SCS122のROM更新モードスレッドはROM更新部430を起動してROM更新命令を発行し、更新対象の変数を引き渡す。
【0155】
一方、SRAM208に更新情報が存在しない場合には、ROM更新部430はステップS811に進み、SCS122のROM更新モードスレッドは、まずフラッシュROM204の最初のヘッダブロックを参照する。ステップS811に続いてステップS812に進み、SCS122のROM更新モードスレッドはヘッダブロックからモジュールIDを取得する。
【0156】
ステップS812に続いてステップS813に進み、SCS122のROM更新モードスレッドはヘッダブロックから取得したモジュールIDが環境変数の中のコントロールサービスまたはアプリに相当するか否かを判断する。
【0157】
ヘッダブロックから取得したモジュールIDが、環境変数の中のコントロールサービスまたはアプリに相当する場合には、SCS122のROM更新モードスレッドはステップS814に進む。
【0158】
ステップS814では、SCS122のROM更新モードスレッドが、そのモジュールIDの更新データを選定し、さらにヘッダブロックから更新先アドレス、更新データオフセット、更新データサイズを取得する。
【0159】
ステップS814に続いてステップS815に進み、SCS122のROM更新モードスレッドはモジュールID、更新先アドレス、更新データオフセット、更新データサイズを一組とした更新情報を「更新対象」の変数等に設定し、ステップS816に進む。
【0160】
一方、ステップS813において、ヘッダブロックから取得したモジュールIDが、環境変数の中のコントロールサービスまたはアプリに相当しない場合には、SCS122のROM更新モードスレッドは取得したモジュールIDの更新データを選定せず、ステップS816に進む。つまり、SCS122のROM更新モードスレッドはステップS814およびS815の処理は行わない。
【0161】
ステップS816では、SCS122のROM更新モードスレッドが、次ヘッダブロックオフセットを参照することにより、次のヘッダブロックが存在するか否かを判断する。次のヘッダブロックが存在する場合には、SCS122のROM更新モードスレッドはステップS817に進み、次のヘッダブロックを参照する。そして、SCS122のROM更新モードスレッドはステップS812からステップS817までの処理を繰り返し行う。
【0162】
一方、次のヘッダブロックが存在しない場合には、SCS122のROM更新モードスレッドはステップS818に進む。つまり、すべてのヘッダブロックのモジュールIDについての更新データの選定が終了したら、SCS122のROM更新モードスレッドはROM更新部430を起動してROM更新命令を発行し、更新対象の変数を引き渡す。
【0163】
これにより、リモートホストから提供される更新データの中から、複合機100内に存在するモジュールの更新データが選定されることになる。
【0164】
図10は、実施の形態1の複合機100において、ROM更新部430で実行されるROM更新処理の手順を示すフローチャートである。
【0165】
ステップS902では、ROM更新部430が、SCS122から受け渡された更新対象の変数から最初の組の更新情報(モジュールID、バージョン情報、更新先アドレス、更新データオフセットおよび更新データサイズ)をSRAM208に格納してステップS903に進む。ステップS902の処理により、更新処理がエラー発生によって中断した場合でも、次回の起動後に図5(b)のステップS504以降の処理を再実行することができる。
【0166】
ステップS903では、ROM更新部430が、SDRAM203の先頭アドレスから更新データオフセットで示されるアドレスから更新データサイズ分のデータを更新データとして読み出し、この更新データでフラッシュROM204上の更新先アドレスから始まるモジュールを更新する。
【0167】
ステップS903に続いてステップS904に進み、ROM更新部430はSDRAM203の更新データと、ステップS903で更新したフラッシュROM204上のモジュールのデータとを比較して同一か否かのチェックを行う。同一でない場合には、ROM変換部430はステップS905に進み、更新処理が失敗した旨のエラーを表示してステップS903に進む。ROM変換部430は、再度更新処理を行う。更新データと更新したモジュールのデータとが同一である場合には、ROM変換部430は更新処理が成功したと判断し、ステップS906に進む。
【0168】
ステップS906では、ROM変換部430が、更新対象の変数に、次の更新情報の組が存在するか否かを判断する。存在する場合には、ROM変換部430はステップS902に進み、次の更新情報に対して、ステップS902からS905までの処理を行う。つまり、ROM変換部430はSCS122から引き渡されたすべての更新情報に対してステップS902からステップS906の処理を繰り返す。
【0169】
次の更新情報の組が存在しない場合には、ROM変換部430はステップS907に進み、SRAM208をクリアしてROM更新処理を終了する。つまり、ROM変換部430はSCS122から引き渡されたすべての更新対象のモジュールの更新が終了したら、SRAM208をクリアしてROM更新処理を終了する。
【0170】
このように実施の形態1の複合機100では、NCS128によってネットワーク271経由でROM更新要求パケット、ついで更新データパケットを受信し、ROM更新部430によって更新データでフラッシュROM204上のプログラムを更新しているので、フラッシュカードなどを用いずにROM更新をいつでも行うことができる。
【0171】
また、実施の形態1の複合機100では、NCS128がROM更新要求を受信したときに、複合機100をROM更新モードで再起動して、プログラム起動部420で複合機100上で動作するすべてのコントロールサービスを起動し、SCS122のROM更新モードスレッドで起動されたコントロールサービスおよび起動可能なアプリを判断して構成に応じた更新データを選定し、選定された更新データでフラッシュROM204上のプログラムを更新しているので、複合機100上で動作するコントロールサービスやアプリケーションの構成に最適なROM更新を正確に行うことができる。
【0172】
さらに、実施の形態1の複合機100では、SCS122、MCS125などのコントロールサービスのプロセスは、すべて複合サービスを行う通常モードスレッドとは別にROM更新処理に関するROM更新モードスレッドを有し、ROM更新の際にはROM更新モードスレッドのみを起動しているので、ROM更新処理中に、複合サービスの機能が実行されて更新処理が中断されることを防止して、ROM更新処理を迅速に行うことができる。
(実施の形態2)
実施の形態1の複合機100におけるROM更新処理は複合機100の機種ごとに更新データを用意したものではないため、ネットワーク上の複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなどが、契約相手ごとに複合機100の機種を把握しておき、機種ごとに個別の更新データパケットを契約相手の複合機100に送信する必要がある。
【0173】
そこで、この実施の形態2の複合機100では、一つの更新データパケットで複数の機種のROM更新処理を行う。実施の形態2にかかる複合機100の機能的構成およびハードウェア構成は、図1および図2に示した実施の形態1の複合機100と同様であるので説明を省略する。
【0174】
図11は、実施の形態2の複合機100で受信される更新データパケットを展開したデータの構造図である。更新データパケットは、実施の形態1と同様に、先頭のROMモニタ起動命令1001と、ヘッダ部1002と、データ部1003とから構成される。
【0175】
実施の形態2における更新データパケットのデータ構造が実施の形態1におけるデータ構造と異なる点は、ヘッダ部1002において一つの更新データに対して複数の機種識別情報、複数の更新先アドレスおよび複数の更新先領域長がある点である。
【0176】
すなわち、複数の機種の複合機100に共通するモジュールに対して、共通する更新データで更新を行う場合には、更新データパケットに、更新対象となるすべての複合機100の機種識別情報、その機種におけるフラッシュROM204上の更新先アドレスおよび更新先領域長をヘッダブロックに登録した構造となっている。
【0177】
実施の形態2の複合機100における複合機起動部140は、実施の形態1と同様に、ROMモニタ410と、プログラム起動部420と、SCS122のROM更新モードスレッドと、ROM更新部430とから構成される。ROMモニタ410は本発明における機種情報取得手段を、プログラム起動部420は本発明におけるプログラム起動手段を、SCS122は本発明の更新データ選定手段を、ROM更新部430は本発明における更新手段をそれぞれ構成する。
【0178】
実施の形態2の複合機100におけるプログラム起動部420とROM更新部430は、実施の形態1の複合機100の場合と同様の構成であるので説明を省略する。
【0179】
ROMモニタ410は、実施の形態1におけるROMモニタと同様に、ハードウェアの初期化、コントローラボード200の診断、ソフトウェアの初期化、汎用OSの起動などを行う他、さらに複合機100の機種識別情報を取得する。
【0180】
次にこのように構成された複合機100におけるROM更新処理について説明する。ROM更新の全体の処理手順は図5に示した実施の形態1の複合機100の場合と同様である。
【0181】
図12は、実施の形態2の複合機100において、ROMモニタ410で実行される処理の手順を示すフローチャートである。ステップS1101では、ROMモニタ410が、実施の形態1と同様に、ハードウェアの初期化を行う。ステップS1101に続いてステップS1102に進み、ROMモニタ410はコントローラボードの診断処理を行う。ステップS1102に続いてステップS1103に進み、ROMモニタ410はソフトウェアの初期化処理を行う。
【0182】
ステップS1103に続いてステップS1104に進み、ROMモニタ410は複合機100のフラッシュROM204に記録されている機種識別情報を取得する。機種識別情報とは、複合機の機種を特定するものであり、機種ごとに固有のデータとなっている。そして、ステップS1104に続いてステップS1105に進み、ROMモニタ410は汎用OS121を起動する。
【0183】
この後、実施の形態2の複合機100では実施の形態1と同様に、プログラム起動部420によってコントロールサービスの起動を行い、起動されたSCS122のROM更新モードスレッドによって次の処理を行う。
【0184】
図13は、実施の形態2の複合機において、SCS122のROM更新モードスレッドで実行される更新データ選定処理の手順を示すフローチャートである。ステップS1201では、SCS122のROM更新モードスレッドが、実施の形態1と同様に、SDRAM203の先頭のヘッダブロックを参照する。ステップS1201に続いてステップS1202に進み、SCS122のROM更新モードスレッドはヘッダブロックからモジュールIDを取得する。
【0185】
ステップS1202に続いてステップS1203に進み、SCS122のROM更新モードスレッドは取得したモジュールIDが、プログラム起動部420から受け渡された環境変数のコントロールサービス起動情報およびアプリ起動情報にあるコントロールサービスまたはアプリのモジュールに該当するか否かをチェックする。
【0186】
取得したモジュールIDが、複合機100内部で動作するコントロールサービスまたはアプリに該当する場合には、SCS122のROM更新モードスレッドはステップS1204に進み、さらにROMモニタ410で取得した複合機100の機種識別情報が現在のモジュールIDのあるヘッダブロック内に登録されている機種識別情報に存在するか否かをチェックする。
【0187】
取得した機種識別情報がヘッダブロック内に存在する場合には、SCS122のROM更新モードスレッドはステップS1205に進み、そのヘッダブロックのモジュールIDの更新データを選定し、さらにヘッダブロックから更新先アドレス、更新データオフセット、更新データサイズを取得する。
【0188】
そして、ステップS1205に続いてステップS1206に進み、SCS122のROM更新モードスレッドは、このモジュールID、更新先アドレス、更新データオフセット、更新データサイズを一組の更新情報として「更新対象」の変数等に設定する。
【0189】
一方、SCS122のROM更新モードスレッドは、取得したモジュールIDが複合機100内部で動作するコントロールサービスまたはアプリに該当しない場合または取得した機種識別情報がヘッダブロック内に存在しない場合には、ステップS1207に進む。つまり、取得したモジュールIDが複合機100内部で動作するコントロールサービスまたはアプリに該当しない場合または取得した機種識別情報がヘッダブロック内に存在しない場合には、現在のモジュールIDに対応する更新データは選定せず、ステップS1204からステップS1206の処理は行わない。
【0190】
ついで、ステップS1207では、実施の形態1と同様に、SCS122のROM更新モードスレッドが、次のヘッダブロックが有るか否かを判断する。次のヘッダブロックが存在する場合には、SCS122のROM更新モジュールはステップS1208に進み、次のヘッダブロックを参照する。そして、SCS122のROM更新モジュールはステップS1202からステップS1207までの処理を繰り返し行う。
【0191】
一方、次のヘッダブロックが存在しない場合には、SCS122のROM更新モジュールはステップS1209に進む。つまり、すべてのヘッダブロックのモジュールIDについて、更新データの選定が終了したら、SCS122のROM更新モジュールはROM更新部430を起動してROM更新命令を発行し、更新対象の変数を引き渡す。
【0192】
これにより、リモートホストから提供される更新データの中から、複合機100の機種に応じて複合機100内部に存在するモジュールの更新データのみが選定される。
【0193】
このSCS122による更新データ選定処理の後、ROM更新部430によってROM更新処理が行われるが、このROM更新処理は、実施の形態1の複合機100の場合と同様であるので説明を省略する。
【0194】
このように実施の形態2の複合機100では、SCS122のROM更新モードスレッドが、受信した更新データパケットに含まれるプログラムのモジュールIDと、コントロールサービスまたは各アプリの起動情報と、モジュールIDごとの機種識別情報と、ROMモニタ410で取得した機種情報とに基づいて、更新データを選定している。
【0195】
したがって、実施の形態2の複合機100では、複合機100の機種により動作可能なコントロールサービスやアプリケーションの配置が異なっている場合でも、一つの更新データパケットを複数機種の複合機100のROM更新に使用することができ、機種の相違により不要なデータでROM更新を行ってしまうことが防止され、複合機100の構成に最適なROM更新を行える。
【0196】
また、実施の形態2の複合機100では、更新データパケットを送信する複合機開発元アプリケーション開発元のサードベンダも、契約した複合機100ごとに個別の更新データパケットを送信する必要がなく、送信側にとってもROM更新作業が容易に行える。
【0197】
なお、実施の形態1および2の複合機100では、NCS128がROM更新要求パケットを受信したときに、SCS122の通常モードスレッドが複合機100の再起動コマンドを発行して、複合機100を自動的に再起動しているが、SCS122によりROM更新フラグをONに設定した後、複合機100の電源OFFおよび電源再投入により作業者が手動で複合機100を再起動させるように構成してもよい。
(実施の形態3)
実施の形態1および2の複合機100は、ネットワーク271経由でROM更新要求パケットを受信したときに、複合機100をROM更新モードで再起動させてから、ROM更新処理を行うものである。
【0198】
そこで、この実施の形態3の複合機100では、ROM更新要求パケットを受信したときに複合機100を再起動せずに、各コントロールサービスの通常モードスレッドを動的にROM更新モードスレッドに切り替えてROM更新処理を行う。
【0199】
実施の形態3にかかる複合機100の機能的構成およびハードウェア構成は、図1および図2に示した実施の形態1の複合機100と同様であるので説明を省略する。また、更新データパケットを展開したデータの構造も、図3に示した実施の形態1の複合機100で受信される更新データパケットと同様であるので説明を省略する。
【0200】
実施の形態3にかかる複合機100では、コピーアプリ112、ファックスアプリ113、プリンタアプリ111、スキャナアプリ114およびネットファイルアプリ115の各アプリケーション130は、実施の形態1および2の複合機100と同様の複合サービスを行うが、この複合サービスを行う際に実行される通常モードスレッドと、ROM更新処理時に単に起動されるだけで複合サービスに関する処理を停止したROM更新モードスレッドを有している。
【0201】
また、実施の形態3の複合機100におけるRRUアプリ117は、NCS128がROM更新要求パケットを受信したときに、SCS122の通常モードスレッドによって起動されるようになっている。
【0202】
また、実施の形態3の複合機100におけるSCS122の通常モードスレッドは、実施の形態1および2と異なり、NCS128がROM更新要求パケットを受信した場合でも、複合機100の再起動コマンドを発行およびSRAM208のROM更新フラグをONに設定する処理は行わない。その代わりに、SCS122の通常モードスレッドは、RRUアプリ117を起動し、さらにコピーアプリ112、ファックスアプリ113、プリンタアプリ111、スキャナアプリ114およびネットファイルアプリ115の各アプリケーション130および他のコントロールサービスに対して、通常モードスレッドを停止して、ROM更新モードスレッドのみの起動要求を行うようになっている。
【0203】
次に、実施の形態3の複合機100によるROM更新処理について説明する。図14は、実施の形態3の複合機100におけるROM更新の全体の処理手順を示すフローチャートである。図14(a)は、複合機100がROM更新要求を受信したときの動作を示し、図14(b)は複合機100がROM更新要求の受信後にROM更新モードに移行した状態を示し、図14(c)は更新データパケットを受信したときの動作を示す。
【0204】
図14(a)において、複合機100が通常の複合サービスの動作を実行しているときは、各アプリ、各コントロールサービスがいずれも通常モードスレッドを実行している。
【0205】
この状態で、ネットワーク経由で複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなどのリモートホストからROM更新要求パケットが送信されてくると、NCS128の通常モードスレッドはステップS1301に進み、そのROM更新要求パケットを受信する。
【0206】
ステップS1302では、NCS128の通常モードスレッドが、受信したパケットの内容を判断して、ROM更新要求パケットであった場合には、ROM更新要求がある旨をSCS122へ通知する。
【0207】
ステップS1303では、SCS122が、ROM更新要求がある旨の通知を受信すると、現在動作中のすべてのアプリケーションに対して、通常モードスレッドの停止およびROM更新モードスレッドの起動要求を行う。ステップS1304では、SCS122が、ROM更新要求がある旨の通知を受信すると、現在動作中のすべてのコントロールサービスおよびSRM123に対して、通常モードスレッドの停止およびROM更新モードスレッドの起動要求を行う。さらに、SCS122の通常モードスレッドは、RRUアプリ117を起動し、またSCS122自身のROM更新モードスレッドを起動する。
【0208】
通常モードスレッドの停止およびROM更新モードスレッドの起動要求を受け取ったすべてのアプリケーション、すべてのコントロールサービスおよびSRM123は、実行中のスレッドを通常モードスレッドからROM更新モードスレッドへ切り替える。これにより、複合機100は、複合サービスの機能が停止して通常モードからROM更新可能な状態であるROM更新モードへ移行する。
【0209】
図14(b)に示すように、ROM更新要求を行ったリモートホスト(複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなど)からROM更新可能状態確認パケットがネットワーク経由で複合機100に対して送信されてくる。
【0210】
ステップS1305では、NCS128のROM更新モードスレッドが、このROM更新可能状態確認パケットを受信する。ステップS1306では、NCS128のROM更新モードスレッドが、受信したROM更新可能状態確認パケットをRRUアプリ117へ受け渡す。
【0211】
このとき、すでに複合機100はROM更新モードへ移行した状態となっているので、ROM更新可能な状態となっている。ステップS1307では、RRUアプリ117が、ROM更新可能状態確認パケットに対する応答メッセージとしてリモートROM更新可能のメッセージをNCS128へ送信する。ステップS1308では、NCS128のROM更新モードスレッドが、リモートROM更新可能のメッセージをネットワーク271経由でROM更新可能状態確認パケットの送信元であるリモートホストへ送信する。
【0212】
NCS122がROM更新可能状態確認に対する応答をリモートホストへ送信すると、図14(c)に示すように、リモートホストから更新データパケットが送信されてくる。このため、ステップS1309では、複合機100が、NCS128のROM更新モードスレッドで更新データパケットを受信する。ステップS1310では、NCS128のROM更新モードスレッドが、受信した更新データパケットをRRUアプリ117へ受け渡す。
【0213】
ステップS1311では、RRUアプリ117が、更新データパケットを展開したデータに必要な領域を得るために、MCS125に対して、SDRAM203上に更新データ領域の確保を要求する。ステップS1312では、確保要求を受けたMCS125のROM更新モードスレッドが、SDRAM203上に更新データ領域を確保して、その領域の先頭アドレスと確保した領域サイズとをRRUアプリ117に返す。
【0214】
RRUアプリ117では、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新パケットデータを、MCS125のROM更新モードスレッドから通知された領域の先頭アドレスから展開する。これにより、SDRAM203の更新データ領域には前述した図3に示した構造のデータが格納される。
【0215】
ステップS1313では、RRUアプリ117が、更新データパケットを展開したSDRAM203上の領域の先頭アドレスを、SCS122へ通知する。これにより、SCS122のROM更新モードスレッドで更新データの選定処理が行われる。
【0216】
これ以降の、SCS122による更新データの選定処理およびROM更新部430によるフラッシュROM204上のプログラムの更新処理は、実施の形態1にかかる複合機100と同様であるので説明を省略する。
【0217】
このように実施の形態3の複合機100では、NCS122がROM更新要求パケットを受信したときに、SCS122の指令によって、すべてのアプリケーション130、すべてのコントロールサービスおよびSRM123が通常モードスレッドを停止してROM更新モードスレッドを起動している。
【0218】
したがって、実施の形態3の複合機100では、切り替え時間の速いスレッドの切り替えで複合サービスの機能を停止してROM更新モードへ移行することができ、複合機100を再起動させたり、切り替え時間の遅いプロセスの切り替えを行う場合に比べ、ROM更新要求があった場合に迅速に対応してROM更新を行うことができる。
【0219】
なお、実施の形態3にかかる複合機100では、コントロールサービス、アプリケーションへのROM更新モードスレッドの起動要求をSCS122で行っているが、プログラム起動部420や他のプロセスで実現するように構成しても良い。
【0220】
以上説明した実施の形態1〜3にかかる複合機100では、ネットワーク271経由でROM更新要求パケットを受信した後に、更新データパケットを受信することとしているが、ROM更新要求パケットが送信されずに、いきなり更新データパケットを受信するようにしてもよい。
【0221】
いきなり更新データパケットを受信するようにした場合には、この更新データパケットをROM更新要求とみなし、更新データパケットをSRAM208の不揮発性メモリに格納した後、SCS122によって複合機100を再起動させることで、同様の処理を行うように構成してもよい。
【0222】
さらにこの場合、RRUアプリ117は複合機100の再起動後に起動するのではなく、更新データパケットを受信したときに、SCS122などによってRRUアプリ117を起動するとともにMCS125のROM更新モードスレッドを起動し、更新データパケットをSDRAM203に展開してから、複合機100を再起動する構成としてもよい。
(実施の形態4)
実施の形態1〜3の複合機100は、ネットワーク271経由でROM更新要求パケットを受信したときに、RRUアプリ117を起動させてROM更新処理を行うものである。
【0223】
そこで、この実施の形態4の複合機100では、RRUアプリ117を複合機100の起動時など予め起動させておき、ROM更新要求パケットを受信することなく、更新データパケットを受信したときに、各コントロールサービスの通常モードスレッドを動的にROM更新モードスレッドに切り替えてROM更新処理を行う。
【0224】
実施の形態4にかかる複合機100の機能的構成およびハードウェア構成は、図1および図2に示した実施の形態1の複合機100と同様であるので説明を省略する。また、更新データパケットを展開したデータの構造も、図3に示した実施の形態1の複合機100で受信される更新データパケットと同様であるので説明を省略する。
【0225】
実施の形態4にかかる複合機100では、コピーアプリ112、ファックスアプリ113、プリンタアプリ111、スキャナアプリ114およびネットファイルアプリ115の各アプリケーション130は、実施の形態1および2の複合機100と同様の複合サービスを行うが、この複合サービスを行う際に実行される通常モードスレッドと、ROM更新処理時に単に起動されるだけで複合サービスに関する処理を停止したROM更新モードスレッドを有している。
【0226】
また、実施の形態3の複合機100におけるRRUアプリ117は、例えば複合機100の起動時に、SCS122の通常モードスレッドによって起動されるようになっている。
【0227】
また、実施の形態4の複合機100におけるSCS122の通常モードスレッドは、実施の形態1および2と異なり、NCS128がROM更新要求パケットを受信せず、複合機100の再起動コマンドを発行およびSRAM208のROM更新フラグをONに設定する処理は行わない。
【0228】
その代わりに、SCS122の通常モードスレッドは、コピーアプリ112、ファックスアプリ113、プリンタアプリ111、スキャナアプリ114およびネットファイルアプリ115の各アプリケーション130および他のコントロールサービスに対して、通常モードスレッドを停止して、ROM更新モードスレッドのみの起動要求を行うようになっている。
【0229】
次に、実施の形態4の複合機100によるROM更新処理について説明する。図15は、実施の形態4の複合機100におけるROM更新の全体の処理手順を示すフローチャートである。図15(a)は、複合機100が更新データパケットを受信したときの動作を示し、図15(b)は複合機100が更新データパケットの受信後にROM更新モードに移行した状態を示す。
【0230】
図15(a)において、複合機100が通常の複合サービスの動作を実行しているときは、各アプリ、各コントロールサービスがいずれも通常モードスレッドを実行している。
【0231】
この状態で、ネットワーク271経由で複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなどのリモートホストから更新データパケットが送信されてくると、NCS128の通常モードスレッドはステップS1401に進み、その更新データパケットを受信する。
【0232】
ステップS1402では、NCS128の通常モードスレッドが、受信したパケットの内容を判断して、更新データパケットであった場合には、その更新データパケットをRRUアプリ117へ送信する。
【0233】
ステップS1403では、RRUアプリ117が、更新データパケットを受信すると、更新データパケットを受信した旨をSCS122に通知する。ステップS1404では、SCS122が、更新データパケットを受信した旨の通知を受信すると、現在動作中のすべてのアプリケーションに対して、通常モードスレッドの停止およびROM更新モードスレッドの起動要求を行う。
【0234】
ステップS1405では、SCS122が、更新データパケットを受信した旨の通知を受信すると、現在動作中のすべてのコントロールサービスおよびSRM123に対して、通常モードスレッドの停止およびROM更新モードスレッドの起動要求を行う。さらに、SCS122の通常モードスレッドは、RRUアプリ117を起動し、また、SCS122は自身のROM更新モードスレッドを起動する。
【0235】
通常モードスレッドの停止およびROM更新モードスレッドの起動要求を受け取ったすべてのアプリケーション、すべてのコントロールサービスおよびSRM123は、実行中のスレッドを通常モードスレッドからROM更新モードスレッドへ切り替える。これにより、複合機100は、複合サービスの機能が停止して通常モードからROM更新可能な状態であるROM更新モードへ移行する。
【0236】
ROM更新可能な状態であるROM更新モードへ移行すると、図15(b)に示すように、ステップS1406で、RRUアプリ117が、更新データパケットを展開したデータに必要な領域を得るために、MCS125に対して、SDRAM203上に更新データ領域の確保を要求する。ステップS1407では、確保要求を受けたMCS125のROM更新モードスレッドが、SDRAM203上に更新データ領域を確保して、その領域の先頭アドレスと確保した領域サイズとをRRUアプリ117に返す。
【0237】
RRUアプリ117では、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新パケットデータを、MCS125のROM更新モードスレッドから通知された領域の先頭アドレスから展開する。これにより、SDRAM203の更新データ領域には前述した図3に示した構造のデータが格納される。
【0238】
ステップS1408では、RRUアプリ117が、更新データパケットを展開したSDRAM203上の領域の先頭アドレスを、SCS122へ通知する。これにより、SCS122のROM更新モードスレッドで更新データの選定処理が行われる。
【0239】
これ以降の、SCS122による更新データの選定処理およびROM更新部430によるROM上のプログラムの更新処理は、実施の形態1にかかる複合機100と同様であるので説明を省略する。
【0240】
このように実施の形態4の複合機100では、NCS122が更新データパケットを受信したときに、SCS122の指令によって、すべてのアプリケーション130、すべてのコントロールサービスおよびSRM123が通常モードスレッドを停止してROM更新モードスレッドを起動している。
【0241】
したがって、実施の形態4の複合機100では、切り替え時間の速いスレッドの切り替えで複合サービスの機能を停止してROM更新モードへ移行することができ、複合機100を再起動させたり、切り替え時間の遅いプロセスの切り替えを行う場合に比べ、更新要求データパケットがあった場合に迅速に対応してROM更新を行うことができる。
【0242】
なお、実施の形態4にかかる複合機100では、コントロールサービス、アプリケーションへのROM更新モードスレッドの起動要求をSCS122で行っているが、プログラム起動部420や他のプロセスで実現するように構成しても良い。
【0243】
以上説明した実施の形態1〜4にかかる複合機100では、更新データの選定処理をSCS122のROM更新モードスレッドで行っているが、プログラム起動部420でSCS122とは別のプロセスを起動して、この起動した別のプロセスで更新データの選定処理を行うように構成してもよい。
【0244】
【発明の効果】
以上説明したように、本発明によれば、不定期かつ頻繁に生じるプログラム更新の要求に迅速に対応でき、画像形成装置の構成に最適なプログラム更新を正確かつ容易に行うことが可能である。
【図面の簡単な説明】
【図1】この発明の実施の形態1である複合機の構成を示すブロック図である。
【図2】実施の形態1の複合機のハードウェア構成図である。
【図3】実施の形態1の複合機で受信した更新データパケットの展開後のデータ構造図である。
【図4】実施の形態1の複合機における複合機起動部の構成を示すブロック図である。
【図5】実施の形態1の複合機におけるROM更新の全体の処理手順を示す説明図である。
【図6】実施の形態1の複合機において、ROMモニタで実行される処理の手順を示すフローチャートである。
【図7】実施の形態1の複合機において、プログラム起動部で実行される処理の手順を示すフローチャートである。
【図8】実施の形態1の複合機100において、SCS122のROM更新モードスレッドで実行される更新データの選定処理の手順を示すフローチャート(1/2)である。
【図9】実施の形態1の複合機100において、SCS122のROM更新モードスレッドで実行される更新データの選定処理の手順を示すフローチャート(2/2)である。
【図10】実施の形態1の複合機において、ROM更新部によるROM更新処理の手順を示すフローチャートである。
【図11】実施の形態2の複合機で受信した更新データパケットの展開後のデータ構造図である。
【図12】実施の形態2の複合機において、ROMモニタで実行される処理の手順を示すフローチャートである。
【図13】実施の形態2の複合機において、SCSのROM更新モードスレッドで実行される更新データ選定処理の手順を示すフローチャートである。
【図14】実施の形態3の複合機におけるROM更新の全体の処理手順を示す説明図である。
【図15】実施の形態4の複合機におけるROM更新の全体の処理手順を示す説明図である。
【符号の説明】
100 複合機
101 白黒ラインプリンタ
102 カラーラインプリンタ
103 ハードウェアリソース
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117 リモートROM更新アプリ(RRUアプリ)
120 プラットホーム
121 汎用OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 アプリケーション
140 複合機起動部
200 コントローラボード
201 ASIC
202 CPU
203 SDRAM
204 フラッシュメモリ(フラッシュROM)
205 ハードディスク装置(HDD)
208 SRAM
209 ネットワークインターフェースコントローラ
210 オペレーションパネル
220 FCU
230 USBデバイス
240 IEEE1394デバイス
250 ブルートゥースデバイス
260 エンジン部
271 ネットワーク
272 電話網
410 ROMモニタ
420 プログラム起動部
421 起動モード設定部
422 サービス層起動部
423 アプリ起動部
424 アプリ起動情報設定部
430 ROM更新部
431 ROM更新命令解読部
432 SRAM処理部
433 ROM更新処理部
434 表示制御部

Claims (23)

  1. 画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムと、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用される前記ハードウェア資源の管理,実行制御並びに画像形成処理を行う1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を行う1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置であって、
    前記プログラムの1つであって、ネットワーク通信を制御するとともに、ネットワーク経由で、前記アプリケーション及びプログラムの更新データを含む更新データ群を受信するネットワークコントロール手段と、
    前記ネットワークコントロールプログラムが更新データ群を受信した場合に、前記1つ以上のアプリケーション及びプログラムを起動するプログラム起動手段と、
    前記プログラム起動手段により起動された又は起動可能な前記1つ以上のアプリケーション及びプログラムに基づいて、前記ネットワークコントロールプログラムにより受信した更新データ群から自機で動作する前記アプリケーション及びプログラムの構成に応じた更新データを選定する更新データ選定手段と、
    前記記憶部に格納されている前記アプリケーション及びプログラムを前記選定された更新データで更新する更新手段と
    を備えたことを特徴とする画像形成装置。
  2. 前記プログラムの1つであって、通常処理を行う通常モードスレッドと、前記起動された又は起動可能な前記1つ以上のアプリケーション及びプログラムに基づいて、前記受信した更新データ群から自機で動作する前記アプリケーション及びプログラムの構成に応じた更新データを選定する処理を行うプログラム更新モードスレッドとを有するシステムコントロール手段をさらに備え、
    前記プログラム起動手段は、前記ネットワークコントロールプログラムが更新データ群を受信した場合に、前記システムコントロール手段のプログラム更新モードスレッドを起動し、
    前記更新手段は、前記システムコントロール手段のプログラム更新モードスレッドにより選定された更新データによって、記憶部に格納された前記アプリケーション及びプログラムを更新することを特徴とする請求項1記載の画像形成装置。
  3. 前記プログラムの1つであって、通常処理を行う通常モードスレッドと、前記更新データ群を一時的に格納する更新データ領域をメモリ上に確保するプログラム更新モードスレッドとを有するメモリコントロール手段と、
    前記アプリケーションの1つであって、前記受信した更新データ群を展開して前記更新データ領域に格納するプログラム更新制御手段とをさらに備え、
    前記プログラム更新制御手段は、前記ネットワークコントロール手段から更新データ群を受信した場合に、前記メモリコントロール手段のプログラム更新モードスレッドを、前記プログラム起動手段に起動させることを特徴とする請求項2記載の画像形成装置。
  4. 前記プログラムのそれぞれは、通常処理を行う通常モードスレッドと前記画像形成に係る処理を停止するプログラム更新モードスレッドとを有し、
    前記プログラム更新制御手段は、前記ネットワークコントロール手段から更新データ群を受信した場合に、前記プログラムのプログラム更新モードスレッドを、前記プログラム起動手段に起動させることを特徴とする請求項2または3記載の画像形成装置。
  5. 前記プログラム更新制御手段は、前記ネットワークコントロール手段から更新データ群を受信し、
    前記システムコントロール手段は、前記プログラム更新制御手段からの要求に応じて、前記プログラムにおいて起動中の前記通常モードスレッドを停止して、前記プログラム更新モードスレッドを起動することを特徴とする請求項4記載の画像形成装置。
  6. 前記システムコントロール手段のプログラム更新モードスレッドは、起動した又は起動可能な前記1つ以上のアプリケーション及びプログラムを識別する為の起動情報を取得し、取得した各起動情報と前記更新データ群に格納された各アプリケーション及びプログラムのモジュール識別情報とに基づいて、前記アプリケーション及びプログラムの更新データを選定することを特徴とする請求項2乃至5いずれか一項記載の画像形成装置。
  7. 前記システムコントロール手段のプログラム更新モードスレッドは、さらに記憶部に記憶されたファイルを検索して前記アプリケーション及びプログラムを識別する為の起動情報を取得し、前記アプリケーション及びプログラムの前記起動情報に基づいて前記アプリケーション及びプログラムの更新データを選定することを特徴とする請求項2乃至5いずれか一項記載の画像形成装置。
  8. 機種固有の機種識別情報を取得する機種識別情報取得手段をさらに有し、
    前記システムコントロール手段のプログラム更新モードスレッドは、前記更新データ群に含まれる各アプリケーション及びプログラムのモジュール識別情報と、前記アプリケーション及びプログラムを識別する為の起動情報と、前記モジュール識別情報ごとに格納されている前記アプリケーション及びプログラムを動作可能な機種の機種識別情報と、前記機種識別情報取得手段により取得された機種識別情報とに基づいて、自機で動作する前記アプリケーション及びプログラムの構成に応じた更新データを更新データ群から選定することを特徴とする請求項2乃至7いずれか一項記載の画像形成装置。
  9. 前記更新データ群には、各モジュール識別情報の前記更新データを書き込む記憶部の更新先領域が記録されており、
    前記更新手段は、前記アプリケーション及びプログラムを前記記憶部の更新先領域から前記選定された更新データで更新することを特徴とする請求項8記載の画像形成装置。
  10. 前記更新データ群は、前記更新先領域を前記機種識別情報ごとに記録したものであることを特徴とする請求項9記載の画像形成装置。
  11. 前記更新手段は、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする請求項1乃至10いずれか一項記載の画像形成装置。
  12. プログラム更新に関する更新情報を記憶する不揮発性記憶手段をさらに備え、
    前記更新手段は、前記アプリケーション及びプログラムの更新時に、前記更新情報を前記不揮発性記憶手段に格納するとともに、前記アプリケーション及びプログラムの更新前に前記不揮発性記憶手段に前記更新情報が格納されているか否かを判断し、更新情報が格納されている場合には、前記不揮発性記憶手段に格納されている更新情報に基づいて前記アプリケーション及びプログラムを更新することを特徴とする請求項1乃至11いずれか一項記載の画像形成装置。
  13. 前記プログラム更新制御手段は、ネットワーク経由で前記ネットワークコントロール手段が前記更新データ群を受信する前に、起動されていることを特徴とする請求項3乃至12いずれか一項記載の画像形成装置。
  14. 画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムと、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用される前記ハードウェア資源の管理,実行制御並びに画像形成処理を行う1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を行う1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置の前記記憶部に格納された前記アプリケーション及びプログラムをネットワーク経由で提供される更新データによって更新する前記画像形成装置のプログラム更新方法において、
    ネットワーク経由で前記アプリケーション及びプログラムの少なくとも一部に対応した更新データを含む更新データ群を受信する受信ステップと、
    前記アプリケーション及びプログラムを起動するプログラム起動ステップと、
    前記プログラム起動ステップにより起動された又は起動可能な前記アプリケーション及びプログラムを識別する為の起動情報を取得し、取得した起動情報と前記更新データ群に格納された各プログラムのモジュール識別情報とに基づいて、前記アプリケーション及びプログラムに対応した更新データを選定する更新データ選定ステップと、
    前記記憶部に格納されている前記アプリケーション及びプログラムを前記選定された更新データで更新する更新ステップと
    を含んでいることを特徴とするプログラム更新方法。
  15. 前記更新データ群を一時的に格納する更新データ領域をメモリ上に確保する領域取得ステップと、
    前記受信ステップで受信した更新データ群を展開して、前記更新データ領域に格納する更新データ展開ステップと、
    をさらに含むことを特徴とする請求項14記載のプログラム更新方法。
  16. 前記更新データ選定ステップは、さらに、記憶部に記憶されたファイルを検索して前記アプリケーション及びプログラムの前記起動情報を取得することを特徴とする請求項14記載のプログラム更新方法。
  17. 前記プログラムを動作させる装置の機種固有の機種識別情報を取得する機種識別情報取得ステップをさらに有し、
    前記更新データ選定ステップは、前記更新データ群に含まれる各アプリケーション及びプログラムのモジュール識別情報と、前記アプリケーション及びプログラムを識別する為の起動情報と、前記モジュール識別情報ごとに格納されている前記アプリケーション及びプログラムを動作可能な機種の機種識別情報と、前記機種識別情報取得ステップにより取得した機種識別情報とに基づいて、自機で動作する前記アプリケーション及びプログラムの構成に応じた更新データを更新データ群から選定することを特徴とする請求項14乃至16いずれか一項記載のプログラム更新方法。
  18. 前記アプリケーション及びプログラムは、プログラム更新に関する処理を実行するプログラム更新モードを有しており、
    前記プログラム起動ステップは、前記画像形成装置が更新データ群を受信したときに前記アプリケーション及びプログラムをプログラム更新モードで起動することを特徴とする請求項14乃至17いずれか一項記載のプログラム更新方法。
  19. 前記更新データ選定ステップは、前記プログラム更新モードで起動された前記アプリケーション及びプログラムによって実行されることを特徴とする請求項17又は18に記載のプログラム更新方法。
  20. 前記更新ステップは、前記アプリケーション及びプログラムを、前記更新データ群に、モジュール識別情報ごとに格納されている更新データの更新先領域に従って、前記選定された更新データで更新することを特徴とする請求項14乃至19いずれか一項記載のプログラム更新方法。
  21. 前記更新ステップは、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする請求項14乃至20のいずれか一項記載のプログラム更新方法。
  22. 前記更新ステップは、前記アプリケーション及びプログラムの更新時に、前記アプリケーション更新及びプログラム更新に関する更新情報を不揮発性記憶手段に格納し、前記アプリケーション及びプログラムの更新前に前記不揮発性記憶手段に前記更新情報が格納されているか否かを判断し、前記更新情報が格納されている場合には、前記不揮発性記憶手段に格納されている更新情報に基づいて前記アプリケーション及びプログラムを更新することを特徴とする請求項14乃至21いずれか一項記載のプログラム更新方法。
  23. 画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムと、前記オペレーティングシ ステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用される前記ハードウェア資源の管理,実行制御並びに画像形成処理を行う1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を行う1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置に、
    ネットワーク経由で前記アプリケーション及びプログラムの少なくとも一部に対応した更新データを含む更新データ群を受信する受信手順と、
    前記画像形成装置上で前記アプリケーション及びプログラムを起動するプログラム起動手順と、
    前記プログラム起動手順で起動された又は起動可能な前記アプリケーション及びプログラムを識別する為の起動情報を取得し、取得した起動情報と前記更新データ群に格納された各プログラムのモジュール識別情報とに基づいて、前記アプリケーション及びプログラムに対応した更新データを選定する更新データ選定手順と、
    前記アプリケーション及びプログラムを前記更新データ選定手順で選定された更新データによって更新する更新手順と
    を実行させる更新処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2002242528A 2001-08-27 2002-08-22 画像形成装置,プログラム更新方法および記録媒体 Expired - Fee Related JP4083505B2 (ja)

Priority Applications (8)

Application Number Priority Date Filing Date Title
JP2002242528A JP4083505B2 (ja) 2001-08-27 2002-08-22 画像形成装置,プログラム更新方法および記録媒体
US10/227,303 US6952535B2 (en) 2001-08-27 2002-08-26 Image forming apparatus, program updating method and recording medium
US10/851,316 US6915085B2 (en) 2001-08-27 2004-05-24 Image forming apparatus including a device that updates stored program based on updating data which is selected based on program of control service that is started or startable, program updating method and computer-readable recording medium
US11/000,094 US7725890B2 (en) 2001-08-27 2004-12-01 Image forming apparatus including a device that updates stored program based on updating data which is selected based on program that is started or startable
US12/711,961 US8453137B2 (en) 2001-08-27 2010-02-24 Image forming apparatus including a device that updates stored program based on updating data which is selected based on program that is started or startable
US13/870,754 US8856773B2 (en) 2001-08-27 2013-04-25 Image forming apparatus including a device that updates stored program based on updating data which is selected based on program that is started or startable
US14/479,012 US9497347B2 (en) 2001-08-27 2014-09-05 Image forming apparatus including a device that updates stored program based on updating data which is selected based on program that is started or startable
US15/276,258 US10277767B2 (en) 2001-08-27 2016-09-26 Image forming apparatus including a device that updates stored program based on updating data which is selected based on program that is started or startable

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001257043 2001-08-27
JP2001-257043 2001-08-27
JP2002242528A JP4083505B2 (ja) 2001-08-27 2002-08-22 画像形成装置,プログラム更新方法および記録媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007293494A Division JP2008079340A (ja) 2001-08-27 2007-11-12 画像形成装置,プログラム更新方法および記録媒体

Publications (2)

Publication Number Publication Date
JP2003182191A JP2003182191A (ja) 2003-07-03
JP4083505B2 true JP4083505B2 (ja) 2008-04-30

Family

ID=26621073

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002242528A Expired - Fee Related JP4083505B2 (ja) 2001-08-27 2002-08-22 画像形成装置,プログラム更新方法および記録媒体

Country Status (2)

Country Link
US (7) US6952535B2 (ja)
JP (1) JP4083505B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008278535A (ja) * 2001-08-27 2008-11-13 Ricoh Co Ltd 画像形成装置,プログラム更新方法および記録媒体

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3849971B2 (ja) * 2000-03-16 2006-11-22 株式会社リコー 劣化状態確認可能な製品
JP4083505B2 (ja) * 2001-08-27 2008-04-30 株式会社リコー 画像形成装置,プログラム更新方法および記録媒体
JP4121333B2 (ja) * 2001-08-27 2008-07-23 株式会社リコー 画像形成装置,プログラム更新方法および記録媒体
EP1398948B1 (en) * 2002-09-13 2013-11-06 Ricoh Company, Ltd. Image forming apparatus, methods used therein and a computer readable storage medium
US7130547B2 (en) * 2002-10-28 2006-10-31 Oce Printing Systems Gmbh System and method for remote maintenance, remote configuration and/or remote operation of an electro-photographic printing system or copying system
JP2005028676A (ja) * 2003-07-10 2005-02-03 Canon Inc 画像形成装置及び前記装置におけるプログラム更新方法
US7110917B2 (en) 2003-11-14 2006-09-19 Ricoh Company, Ltd. Abnormality determining method, and abnormality determining apparatus and image forming apparatus using same
JP2005196745A (ja) * 2003-12-10 2005-07-21 Ricoh Co Ltd 情報処理装置、プログラム復旧方法、プログラム復旧プログラム及び記録媒体
JP4625343B2 (ja) * 2004-02-17 2011-02-02 株式会社リコー 画像形成装置、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
JP4691197B2 (ja) * 2004-02-17 2011-06-01 株式会社リコー 画像形成装置、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
US8432562B2 (en) 2004-02-17 2013-04-30 Ricoh Company, Ltd. Image processing apparatus, method, program, and computer readable recording medium for controlling operation switching and displaying at occurrence of error conditions
JP4695348B2 (ja) * 2004-05-27 2011-06-08 株式会社リコー カード型メモリ、画像形成装置、画像形成装置起動方法
JP4899296B2 (ja) * 2004-07-20 2012-03-21 ソニー株式会社 情報処理装置および方法
JP4293083B2 (ja) * 2004-07-27 2009-07-08 ブラザー工業株式会社 多機能周辺装置
US7672003B2 (en) * 2004-09-01 2010-03-02 Eric Morgan Dowling Network scanner for global document creation, transmission and management
JPWO2006046506A1 (ja) * 2004-10-27 2008-05-22 松下電器産業株式会社 受信機器
JP4791910B2 (ja) 2005-08-26 2011-10-12 株式会社リコー 画像形成装置、情報処理方法、情報処理プログラム、及び記録媒体
JP2007219571A (ja) * 2006-02-14 2007-08-30 Hitachi Ltd 記憶制御装置及びストレージシステム
JP5112787B2 (ja) * 2006-09-01 2013-01-09 株式会社リコー 情報処理装置、プログラム更新方法及びプログラム
JP4539676B2 (ja) * 2007-04-19 2010-09-08 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置、プログラム更新システム、プログラム更新方法およびプログラム更新プログラム
JP5092897B2 (ja) * 2008-05-26 2012-12-05 富士通株式会社 データ移行処理プログラム、データ移行処理装置およびデータ移行処理方法
US20100318982A1 (en) * 2009-06-11 2010-12-16 Hewlett-Packard Development Company, L.P. Updating electronic documents
JP5333035B2 (ja) * 2009-08-12 2013-11-06 株式会社リコー リモート管理システム、管理装置、機器、プログラム更新方法、プログラム、及び記録媒体
JP2011055101A (ja) * 2009-08-31 2011-03-17 Canon Inc 情報更新装置、画像履歴監査システム、情報更新方法、プログラム
JP2011034569A (ja) * 2010-09-08 2011-02-17 Seiko Epson Corp プロジェクタおよびファームウェア更新方法
WO2013021423A1 (ja) * 2011-08-10 2013-02-14 トヨタ自動車株式会社 リプログラミングシステム及びリプログラミング方法
JP5868208B2 (ja) * 2012-02-16 2016-02-24 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、及びプログラム
WO2014159883A1 (en) * 2013-03-14 2014-10-02 Apperian, Inc. Modification of compiled applications and application management using retrievable policies
JP6264896B2 (ja) * 2014-01-16 2018-01-24 株式会社リコー 情報処理装置、制御方法及び制御プログラム
JP6022508B2 (ja) * 2014-07-08 2016-11-09 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法及び画像形成プログラム
US10769389B2 (en) * 2014-08-27 2020-09-08 Ncr Corporation Automatic scanner configuration
US9792109B2 (en) * 2015-09-30 2017-10-17 Apple Inc. Software updating
JP2017087690A (ja) * 2015-11-17 2017-05-25 セイコーエプソン株式会社 プリンター、プリンターシステム、プリンター制御方法及びプログラム
US11424931B2 (en) 2016-01-27 2022-08-23 Blackberry Limited Trusted execution environment
US10599409B2 (en) 2016-02-02 2020-03-24 Blackberry Limited Application lifecycle operation queueing
JP2018200388A (ja) * 2017-05-26 2018-12-20 株式会社フジクラ 半導体光集積回路
US11099831B2 (en) * 2018-02-08 2021-08-24 Micron Technology, Inc. Firmware update in a storage backed memory system
US11243757B2 (en) * 2018-12-03 2022-02-08 Dell Products L.P. Systems and methods for efficient firmware update of memory devices in BIOS/UEFI environment
JP7128763B2 (ja) * 2019-03-18 2022-08-31 日立Astemo株式会社 電子制御装置及び制御データの設定方法
US11469943B2 (en) * 2019-12-06 2022-10-11 Red Hat, Inc. Pre-scheduling for cloud resource provisioning
CN111951489B (zh) * 2020-08-18 2022-03-25 深圳市丰巢网络技术有限公司 智能柜批量刷机方法、装置、设备及存储介质

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5708908A (en) * 1990-06-22 1998-01-13 Minolta Co., Ltd. Copying machine control system with improved reliability of communication function among copying machiines and centralized control unit
US5752040A (en) * 1991-09-30 1998-05-12 Canon Kabushiki Kaisha Image processing apparatus which can update program
JPH05274157A (ja) 1992-03-25 1993-10-22 Ricoh Co Ltd 画像形成装置
JPH08153005A (ja) 1994-11-29 1996-06-11 Oki Electric Ind Co Ltd パッチ処理システム
JPH08174922A (ja) 1994-12-22 1996-07-09 Canon Inc 電子装置およびその制御方法
JPH09237182A (ja) 1995-10-05 1997-09-09 Ricoh Co Ltd 通信装置
US5838981A (en) 1995-10-05 1998-11-17 Ricoh Company, Ltd. Data communication apparatus with a program renewal function
JP4280311B2 (ja) 1995-10-11 2009-06-17 キヤノン株式会社 画像処理複合装置およびその制御方法
US6204928B1 (en) * 1995-10-11 2001-03-20 Canon Kabushiki Kaisha Data processing apparatus and a method for controlling the apparatus
US5960445A (en) * 1996-04-24 1999-09-28 Sony Corporation Information processor, method of updating a program and information processing system
JPH10171221A (ja) * 1996-10-08 1998-06-26 Ricoh Co Ltd 画像形成装置及び画像形成方法
JP3570701B2 (ja) * 1996-11-11 2004-09-29 株式会社リコー 画像形成装置
JPH10198110A (ja) * 1996-11-18 1998-07-31 Ricoh Co Ltd カラー画像形成方法
US5875380A (en) * 1997-02-18 1999-02-23 Ricoh Company, Ltd. Image forming apparatus eliminating influence of fluctuation in speed of a conveying belt to correction of offset in color registration
JPH114315A (ja) 1997-06-13 1999-01-06 Canon Inc 画像入出力装置及び画像入出力制御方法
US6112046A (en) * 1997-06-20 2000-08-29 Ricoh Company, Ltd. Image forming apparatus having recycling of residual toner
JPH1184873A (ja) * 1997-07-10 1999-03-30 Ricoh Co Ltd スクリューポンプ及び該スクリューポンプを用いたトナー移送装置
JPH11282690A (ja) 1998-03-31 1999-10-15 Canon Inc 制御プログラムの書込方法及び情報処理装置並びに情報処理システム
US6854000B2 (en) 1997-12-27 2005-02-08 Canon Kabushiki Kaisha Image forming apparatus and control method for the same
US5987298A (en) * 1998-02-02 1999-11-16 Ricoh Company, Ltd. Image forming apparatus including a toner recycling mechanism
US6052531A (en) * 1998-03-25 2000-04-18 Symantec Corporation Multi-tiered incremental software updating
JPH11282684A (ja) 1998-03-27 1999-10-15 Canon Inc 画像処理装置、画像処理装置の制御方法、および記憶媒体
US6163669A (en) * 1998-05-29 2000-12-19 Ricoh Company, Ltd. Image forming apparatus
US6201941B1 (en) * 1998-06-25 2001-03-13 Ricoh Company, Ltd. Developer container for an image forming apparatus and method of conveying a developer
JP2000056625A (ja) 1998-08-07 2000-02-25 Ricoh Co Ltd 画像形成システム
US6122468A (en) * 1998-10-09 2000-09-19 Ricoh Company, Ltd. Method and apparatus for forming toner images
JP2000132400A (ja) 1998-10-27 2000-05-12 Minolta Co Ltd モジュラー型画像処理システムにおける画像処理装置並びに該装置に適用されるメモリ管理プログラムを記録したコンピュータ読み取り可能な記録媒体及びメモリ管理方法
KR100335433B1 (ko) * 1998-12-11 2002-06-20 윤종용 네트웍을 이용한 현상액 제품 업그레이드 지원 시스템 및 그 현상액 농도 산출 데이터 업그레이드방법
JP2000181295A (ja) 1998-12-14 2000-06-30 Ricoh Co Ltd 画像形成装置
US6295437B1 (en) * 1998-12-28 2001-09-25 Ricoh Company, Ltd. Apparatus and method for forming an image using a developing device capable of obtaining a high quality image
US6832371B1 (en) * 1999-01-04 2004-12-14 Microsoft Corporation Method for automatically updating a computer registry
JP2000222311A (ja) 1999-02-01 2000-08-11 Ricoh Co Ltd 画像形成装置管理システム
JP2001094756A (ja) 1999-09-20 2001-04-06 Canon Inc 画像入出力装置及びその処理方法
US7016944B1 (en) * 1999-09-30 2006-03-21 Apple Computer, Inc. System and method for passive detection and context sensitive notification of upgrade availability for computer information
JP3935666B2 (ja) * 1999-09-30 2007-06-27 株式会社リコー ノズル、トナー移送装置および画像形成装置
JP2001117745A (ja) 1999-10-20 2001-04-27 Konica Corp 多機能装置
JP2001147815A (ja) 1999-11-19 2001-05-29 Canon Inc 画像形成装置及び画像形成システム
EP1107573B1 (en) * 1999-12-03 2011-01-19 Canon Kabushiki Kaisha Image-forming system, control method therefor, image-forming apparatus, data processing method, and storage medium
JP2001166553A (ja) * 1999-12-13 2001-06-22 Ricoh Co Ltd カラー画像形成装置
JP2001216145A (ja) 2000-01-31 2001-08-10 Hitachi Telecom Technol Ltd 情報処理装置のプログラム更新方式
JP2001216167A (ja) * 2000-02-04 2001-08-10 Minolta Co Ltd 本体と周辺装置からなるシステム
US6915337B1 (en) * 2000-03-07 2005-07-05 Ricoh Co. Ltd. Method and system for updating the device driver of a business office appliance
JP2001268306A (ja) 2000-03-16 2001-09-28 Canon Inc マルチファンクションペリフェラルシステム
JP2001265099A (ja) * 2000-03-17 2001-09-28 Ricoh Co Ltd 画像形成装置
US7068386B2 (en) * 2000-05-16 2006-06-27 Canon Kabushiki Kaisha Image processing system, image data processing method, and storage medium
JP2002082806A (ja) 2000-07-05 2002-03-22 Ricoh Co Ltd 画像形成装置、画像形成方法およびプログラム
JP2001337835A (ja) * 2000-05-25 2001-12-07 Hitachi Ltd 制御プログラム内蔵型装置のプログラム更新方式及び制御プログラム内蔵型装置
JP2002091719A (ja) * 2000-07-11 2002-03-29 Ricoh Co Ltd 画像形成装置管理システムおよび画像形成装置管理方法とそれに使用する中央管理装置並びに画像形成装置
JP4351814B2 (ja) * 2000-07-21 2009-10-28 株式会社リコー カラー画像形成装置
US6607314B1 (en) * 2000-10-03 2003-08-19 Hewlett-Packard Development Company, L.P. Apparatus for and method of updating a software routine
CA2414281C (en) * 2000-11-17 2009-06-02 Bitfone Corporation System and method for updating and distributing information
JP4531966B2 (ja) * 2000-12-06 2010-08-25 東芝テック株式会社 画像形成装置
JP2002248831A (ja) * 2000-12-22 2002-09-03 Ricoh Co Ltd 画像形成装置、画像形成方法及びコンピュータプログラム
JP2002312187A (ja) * 2001-04-11 2002-10-25 Konica Corp 画像形成システム、画像形成装置、管理装置、プログラム書換方法、及び情報記録媒体
JP4083505B2 (ja) * 2001-08-27 2008-04-30 株式会社リコー 画像形成装置,プログラム更新方法および記録媒体
JP4121333B2 (ja) 2001-08-27 2008-07-23 株式会社リコー 画像形成装置,プログラム更新方法および記録媒体
US7020702B2 (en) * 2001-09-20 2006-03-28 Lexmark International, Inc. Method and apparatus to obtain real-time status information from a networked device
US7251812B1 (en) * 2001-10-31 2007-07-31 Microsoft Corporation Dynamic software update
US6725323B2 (en) * 2001-12-06 2004-04-20 Kabushiki Kaisha Toshiba Apparatus and method for updating flash ROM in an electronic apparatus having a plurality of boards
JP3984876B2 (ja) * 2002-07-03 2007-10-03 キヤノン株式会社 画像形成装置および電力制御方法
US7370092B2 (en) * 2002-09-12 2008-05-06 Computer Sciences Corporation System and method for enhanced software updating and revision
US7644288B2 (en) 2003-03-19 2010-01-05 Ricoh Company, Ltd. Image forming apparauts that checks authenticity of an update program
US7904895B1 (en) * 2004-04-21 2011-03-08 Hewlett-Packard Develpment Company, L.P. Firmware update in electronic devices employing update agent in a flash memory card
US7343609B2 (en) * 2004-06-04 2008-03-11 Epo Science & Technology Inc. Control mechanism for clamper guider in slot-in drive
US7379155B2 (en) * 2004-10-18 2008-05-27 Asml Netherlands B.V. Lithographic apparatus and device manufacturing method
US9319472B2 (en) * 2013-02-05 2016-04-19 Facebook, Inc. Facilitating generation of user content for aggregated story units

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008278535A (ja) * 2001-08-27 2008-11-13 Ricoh Co Ltd 画像形成装置,プログラム更新方法および記録媒体
JP4589426B2 (ja) * 2001-08-27 2010-12-01 株式会社リコー 画像形成装置,プログラム更新方法および記録媒体
JP2011139493A (ja) * 2001-08-27 2011-07-14 Ricoh Co Ltd 画像形成装置,プログラム更新方法および記録媒体
JP2013169002A (ja) * 2001-08-27 2013-08-29 Ricoh Co Ltd 画像形成装置

Also Published As

Publication number Publication date
US20100149596A1 (en) 2010-06-17
US20050100353A1 (en) 2005-05-12
US20030044185A1 (en) 2003-03-06
US6915085B2 (en) 2005-07-05
US8453137B2 (en) 2013-05-28
US20140376053A1 (en) 2014-12-25
US20170013157A1 (en) 2017-01-12
US6952535B2 (en) 2005-10-04
US20040213588A1 (en) 2004-10-28
JP2003182191A (ja) 2003-07-03
US9497347B2 (en) 2016-11-15
US20130235410A1 (en) 2013-09-12
US7725890B2 (en) 2010-05-25
US8856773B2 (en) 2014-10-07
US10277767B2 (en) 2019-04-30

Similar Documents

Publication Publication Date Title
JP4083505B2 (ja) 画像形成装置,プログラム更新方法および記録媒体
JP4121333B2 (ja) 画像形成装置,プログラム更新方法および記録媒体
JP4128516B2 (ja) 画像形成装置、プログラム更新方法
JP4843187B2 (ja) 画像形成装置
JP5888443B2 (ja) 画像形成装置,プログラム更新方法および記録媒体
US20050151987A1 (en) Information processing apparatus, program recovery method, and recording medium storing a program for program recovery
JP4695348B2 (ja) カード型メモリ、画像形成装置、画像形成装置起動方法
JP2008079340A (ja) 画像形成装置,プログラム更新方法および記録媒体
JP2011054146A (ja) 画像形成装置と画像形成装置の障害復旧方法とプログラム
JP4856622B2 (ja) 画像形成装置、プログラム更新方法
JP4124410B2 (ja) メモリ書換え方法およびその方法をコンピュータに実行させるためのプログラム
JP5333561B2 (ja) 情報処理装置、プログラム、及び方法
JP2005173888A (ja) 情報処理装置、プログラム復旧方法、プログラム復旧プログラム及び記録媒体
JP2006103290A (ja) 画像形成装置
JP2003296064A (ja) デバイスドライバ構成方法および画像形成装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060403

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070227

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070427

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070911

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071112

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20071115

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: 20080115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080213

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: 20110222

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120222

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130222

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130222

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20140222

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees