JP5888443B2 - Image forming apparatus, program update method, and recording medium - Google Patents

Image forming apparatus, program update method, and recording medium Download PDF

Info

Publication number
JP5888443B2
JP5888443B2 JP2015018377A JP2015018377A JP5888443B2 JP 5888443 B2 JP5888443 B2 JP 5888443B2 JP 2015018377 A JP2015018377 A JP 2015018377A JP 2015018377 A JP2015018377 A JP 2015018377A JP 5888443 B2 JP5888443 B2 JP 5888443B2
Authority
JP
Japan
Prior art keywords
update
rom
application
program
image forming
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 - Lifetime
Application number
JP2015018377A
Other languages
Japanese (ja)
Other versions
JP2015092769A (en
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 JP2015018377A priority Critical patent/JP5888443B2/en
Publication of JP2015092769A publication Critical patent/JP2015092769A/en
Application granted granted Critical
Publication of JP5888443B2 publication Critical patent/JP5888443B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

本発明は、画像形成装置,プログラム更新方法および記録媒体に係り、特に記憶部に格納されたプログラムをネットワーク経由で受信した更新データで更新する画像形成装置,プログラム更新方法および記録媒体に関するものである。   The present invention relates to an image forming apparatus, a program updating method, and a recording medium, and more particularly to an image forming apparatus, a program updating method, and a recording medium for updating a program stored in a storage unit with update data received via a network. .

従来、プリンタ、コピー、ファクシミリ、スキャナなどの装置はそれぞれ別筐体として配設されるのが一般的であった。しかし、最近では、これら各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応する3種類のソフトウェアを設け、ソフトウェアの切り替えによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。   Conventionally, devices such as printers, copiers, facsimiles, and scanners are generally provided as separate housings. However, recently, an image forming apparatus (hereinafter referred to as “multifunction machine”) in which the functions of these apparatuses are housed in a single casing is known. This multifunction device is provided with a display unit, a printing unit, an imaging unit, and the like in one casing, and is provided with three types of software respectively corresponding to a printer, a copying machine, and a facsimile machine. It operates as a copy, scanner or facsimile machine.

このような従来の複合機では、プリンタ、コピー、ファクシミリおよびスキャナの各機能ごとにソフトウェアを組み込んだ書き換え不可能なROM(Read Only Memory)を搭載したコントローラボードを設け、複数の機能を実現する構成としていた。   In such a conventional multi-function machine, a controller board equipped with a non-rewritable ROM (Read Only Memory) incorporating software for each function of the printer, copy, facsimile, and scanner is provided to realize a plurality of functions. I was trying.

したがって、従来の複合機では、各機能の変更、追加などを行う場合に、機能追加または機能変更を反映したプログラムを組み込んだ新たなROMを用意してROMごと交換するというハードウェア的な作業が必要であり、更新作業の労力が過大なものとなっていた。   Therefore, in the case of changing or adding each function, the conventional multifunction device has a hardware work of preparing a new ROM incorporating a program reflecting the function addition or function change and replacing the ROM. It was necessary and the work of renewal work was excessive.

このため、最近の複合機はフラッシュメモリのように電気的に内容の書き換えが可能なROMにプリンタ、コピー、ファクシミリおよびスキャナの各機能を含むプログラムを組み込み、複数の機能を複合サービスとして実現している。   For this reason, recent multifunction devices incorporate a program that includes printer, copy, facsimile, and scanner functions in a ROM that can be electrically rewritten, such as flash memory, and realize multiple functions as a complex service. Yes.

このような複合機は、各機能の変更、追加などを行う場合に、機能追加または機能変更を行ったプログラムを更新データとしてフラッシュカードに記録し、このフラッシュカードを複合機のフラッシュカードインタフェースに挿入した状態で複合機を再起動する。   When such functions are changed or added, the function added or changed program is recorded on the flash card as update data, and this flash card is inserted into the MFP's flash card interface. Restart the multifunction device in the same state.

このとき複合機は、更新プログラムによって更新データをフラッシュカードから読み出し、読み出された更新データによってフラッシュメモリに記録されているプログラムが更新されるようになっている。このように、最近の複合機では、電気的に書き換え可能というフラッシュメモリの特性を利用して、ソフトウェア的にROM更新を行っている。   At this time, the multifunction peripheral reads update data from the flash card by the update program, and the program recorded in the flash memory is updated by the read update data. As described above, in recent multifunction peripherals, the ROM is updated in software by utilizing the characteristic of the flash memory that is electrically rewritable.

例えば特許文献1には、ソフトウェアの変更や追加に柔軟に対処することを課題とする技術が記載されている。   For example, Japanese Patent Laid-Open No. 2004-228561 describes a technology that has a problem of flexibly dealing with software changes and additions.

ところで、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(特開2002−82806号公報)を発明した。   By the way, the applicant has a plurality of applications that have hardware resources used in image forming processing such as a display unit, a printing unit, and an imaging unit, and perform processing unique to each user service such as a printer, copy, or facsimile. When installing and providing user services by interposing between these applications and hardware resources, management, execution control and image formation processing of hardware resources that are shared by at least two of the applications are performed. Invented an image forming apparatus (Japanese Patent Laid-Open No. 2002-82806) provided with a platform comprising various control services.

なお、ユーザサービスとはユーザに提供する画像形成に係るサービスをいう。また、コントロールサービスとはアプリケーションに画像形成に係るハードウェア資源を提供するサービスをいう。   The user service is a service related to image formation provided to the user. The control service refers to a service that provides hardware resources related to image formation to an application.

この画像形成装置によれば、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行うプラットホームを備えた構成とすることによって、通常の複合機に比べて将来的なアプリケーションの追加やコントロールサービスの追加などのソフトウェア開発を容易に行うことができ、拡張性が高いものとなっている。このため、このような構成の複合機では、機能追加や機能変更によるプログラム更新の必要性が従来の複合機よりも非常に高くなってくる。   According to this image forming apparatus, a configuration including a platform for performing management of hardware resources, execution control, and image forming processing that are commonly required by at least two of the applications is provided, compared to a normal multifunction peripheral. Software development such as future application addition and control service addition can be easily performed, and it is highly scalable. For this reason, in a multi-function peripheral having such a configuration, the necessity of program update due to function addition or function change is much higher than in conventional multi-function peripherals.

例えば、複合機の使用契約では、プリンタ、コピー、スキャナの機能のみを使用する契約で複合機を導入し稼働していたが、使用契約の変更によりファクシミリ機能を追加して複合機を使用する場合も考えられる。この場合、ファクシミリ機能の追加により、ファクシミリ用のアプリケーションの追加、およびこれに伴うプラットホームの追加、変更が必要となってくる。   For example, when a multifunction machine was used to operate a multifunction machine with a contract that uses only the functions of the printer, copy, and scanner. Is also possible. In this case, the addition of a facsimile function necessitates the addition of a facsimile application and the addition or change of a platform associated therewith.

このような複数のアプリケーションおよび共通的な処理を行うプラットホームを備えた構成の複合機の場合には、特にこのような機能変更、機能追加の要求が不定期にかつ頻繁に生じるケースが多い。このため、従来のプログラム更新方法のように、プログラム更新を行うごとにフラッシュカードを入手し、そのフラッシュカードから更新データを読み込んでROMに格納されたプログラムの更新を行うという作業では、不定期にかつ頻繁に生じるプログラム更新のニーズに迅速に対応できない。また、フラッシュカードを用いたプログラム更新方法では、更新作業が非常に煩雑となり、作業効率が悪いという問題がある。   In the case of a multi-function peripheral having a configuration including a plurality of applications and a platform for performing common processing, there are many cases in which such a function change / function addition request occurs irregularly and frequently. Therefore, as in the conventional program update method, every time a program is updated, a flash card is obtained, and update data is read from the flash card and the program stored in the ROM is updated. In addition, it cannot respond quickly to the frequent program update needs. In addition, the program update method using a flash card has a problem that the update work becomes very complicated and the work efficiency is poor.

複合機は、コピー、プリンタ、スキャナ、ファクシミリなどの複合サービスを提供するものではあるが、複合機のすべての機種において提供可能なサービスが統一されているわけではない。例えば、すべての機能が提供可能な機種やファクシミリ機能やコピー機能など一部の機能が制限された機種など種々のパターンがある。このため、汎用OS上で動作する複数のアプリケーションや複数のコントロールサービスなども、提供可能な機能によって必然的に変わってくる。   A multi-function peripheral provides multi-function services such as copying, printers, scanners, and facsimiles, but services that can be provided by all types of multi-function peripherals are not unified. For example, there are various patterns such as a model that can provide all functions and a model in which some functions such as a facsimile function and a copy function are limited. For this reason, a plurality of applications operating on the general-purpose OS, a plurality of control services, and the like are inevitably changed depending on functions that can be provided.

しかしながら、従来の複合機では、上述のようにフラッシュカードを挿入して電源投入を行った場合、各アプリケーションや各コントロールサービスの起動を行わずにただちに更新プログラムが実行されてしまうため、複合機の構成を認識することができず、構成の相違に応じたプログラムの更新を正確に行うことができないという問題がある。   However, in the conventional multifunction device, when the flash card is inserted and the power is turned on as described above, the update program is executed immediately without starting each application or each control service. There is a problem that the configuration cannot be recognized, and the program cannot be updated accurately according to the difference in configuration.

例えば、ファックスアプリやファックスコントロールサービスなどファクシミリ通信関連のプログラムが存在しない構成の複合機に対して、すべてのプログラムの更新データを含むフラッシュカードでプログラム更新処理を行った場合、ROM上で更新の必要のないプログラムまで更新してしまう可能性もあり、プログラム更新を行うことにより複合機に障害を生じさせてしまう場合がある。   For example, when a program update process is performed with a flash card that contains update data for all programs for a MFP that does not have a facsimile communication program such as a fax application or fax control service, it must be updated on ROM. There is also a possibility that even a program having no error will be updated, and there is a case where a failure occurs in the multifunction machine by updating the program.

なお、特開2001−268306号公報に記載されている技術は、所定のネットワークを介して接続されている機器を用いて、マルチファンクションペリフェラルが実行するプログラムを取得,実行するものであって、プログラムの更新を行うものではない。   Note that the technique described in Japanese Patent Laid-Open No. 2001-268306 acquires and executes a program executed by a multifunction peripheral using a device connected via a predetermined network. It does not update.

この発明は上記に鑑みてなされたもので、プログラム更新作業を迅速,正確かつ容易に行うことができる画像形成装置,プログラム更新方法および記録媒体を得ることを目的とする。   The present invention has been made in view of the above, and an object of the present invention is to obtain an image forming apparatus, a program update method, and a recording medium that can perform a program update operation quickly, accurately, and easily.

上記課題を解決するため、本発明は、画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムとを有する画像形成装置であって、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用され前記ハードウェア資源を用いた画像形成処理を画像形成装置に実行させるための1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を画像形成装置に実行させるための1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置において、ネットワーク通信を制御するとともに、ネットワーク経由で、前記アプリケーション又は前記プログラムの更新データを受信するネットワークコントロール手段と、前記記憶部に格納されている前記アプリケーション又は前記プログラムを前記ネットワークコントロール手段で受信した更新データで更新する更新手段とを備え、前記更新手段は、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする。 In order to solve the above-described problems, the present invention provides an image forming apparatus having a hardware resource including at least one of a printer unit and a scanner unit used in image forming processing, and an operating system. work, is used in common is accessed from one or more applications, and one or more programs for executing the image forming process using the hardware resources in the image forming apparatus accesses the program, the in the image forming apparatus has one or more applications for utilizing the hardware resources to execute the image processing on the image forming apparatus, and a storage unit for storing the application and program controls the network communication, Via the network, the application or And network control means for receiving the update data of the serial program, a updating means for updating the update data received at said network control means the application or the program stored in the storage unit, the update means, Further, the identity of the updated application or program and the update data is checked to verify whether the update process has succeeded or failed .

また、本発明は、画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムとを有する画像形成装置であって、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用され前記ハードウェア資源を用いた画像形成処理を画像形成装置に実行させるための1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を画像形成装置に実行させるための1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置の前記記憶部に格納された前記アプリケーション及びプログラムをネットワーク経由で提供される更新データによって更新する前記画像形成装置のプログラム更新方法において、ットワーク通信を制御するとともに、ネットワーク経由で、前記アプリケーション又はプログラムの更新データを受信するネットワークコントロール手段が、前記アプリケーション又はプログラムの更新データを受信する受信ステップと、更新手段が、前記記憶部に格納されている前記アプリケーション又は前記プログラムを前記ネットワークコントロール手段が受信した更新データで更新する更新ステップとを含み、前記更新ステップは、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする。 The present invention is also an image forming apparatus having hardware resources including at least one of a printer unit and a scanner unit used in image forming processing, and an operating system, and operates on the operating system. is used in common is accessed from the above applications, and one or more programs for executing the image forming process using the hardware resources in the image forming apparatus accesses the program, using the hardware resources The application and the program stored in the storage unit of the image forming apparatus having one or more applications for causing the image forming apparatus to execute image processing and a storage unit for storing the application and the program via the network Update data provided by Receiving step in the program updating method of the image forming apparatus controls the network communication, via the network, a network control means for receiving the update data of the application or program, to receive the update data of the applications or programs that If, updating means, see contains an update step of the application or the program stored in the storage unit is updated with update data received by the network control means, said updating step, the application is further updated Alternatively, the identity of the program and the update data is checked to verify whether the update process has succeeded or failed .

また、本発明は、画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムとを有する画像形成装置であって、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用され前記ハードウェア資源を用いた画像形成処理を画像形成装置に実行させるための1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を画像形成装置に実行させるための1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置に、ットワーク通信を制御するとともに、ネットワーク経由で、前記アプリケーション又はプログラムの更新データを受信するネットワークコントロール手段が、前記アプリケーション又はプログラムの更新データを受信する受信手順と、前記記憶部に格納されている前記アプリケーション又は前記プログラムを前記受信手順で受信した更新データで更新する更新手順とを実行させ、前記更新手順は、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする更新処理プログラムを記録したコンピュータ読み取り可能な記録媒体であることを特徴とする。 The present invention is also an image forming apparatus having hardware resources including at least one of a printer unit and a scanner unit used in image forming processing, and an operating system, and operates on the operating system. is used in common is accessed from the above applications, and one or more programs for executing the image forming process using the hardware resources in the image forming apparatus accesses the program, using the hardware resources an image forming apparatus having to the one or more applications for performing image processing on the image forming apparatus, and a storage unit for storing the application and program controls the network communication, via the network, wherein Update data of application or program A receiving procedure for receiving update data of the application or program, and an updating procedure for updating the application or the program stored in the storage unit with the update data received in the receiving procedure. The update procedure further records the update processing program characterized by checking whether the updated application or program and the update data are identical and verifying whether the update processing has succeeded or failed. It is a computer-readable recording medium.

本発明によれば、ネットワーク経由で更新データを受信し、更新データで記憶部に格納されているアプリケーション又はプログラムを更新するので、フラッシュカードなどの記録媒体を用いずにアプリケーション又はプログラム更新を迅速,正確かつ容易に、いつでも行うことができる。   According to the present invention, the update data is received via the network, and the application or program stored in the storage unit is updated with the update data. Therefore, the application or program can be updated quickly without using a recording medium such as a flash card. It can be done accurately and easily at any time.

本発明によれば、プログラム更新作業を迅速,正確かつ容易に行うことができる画像形成装置,プログラム更新方法および記録媒体を提供可能である。   According to the present invention, it is possible to provide an image forming apparatus, a program update method, and a recording medium that can perform a program update operation quickly, accurately, and easily.

この発明の実施の形態1である複合機の構成を示すブロック図である。1 is a block diagram illustrating a configuration of a multifunction machine according to a first embodiment of the present invention. 実施の形態1の複合機のハードウェア構成図である。2 is a hardware configuration diagram of the multifunction machine according to Embodiment 1. FIG. 実施の形態1の複合機で受信した更新データパケットの展開後のデータ構造図である。FIG. 6 is a data structure diagram after development of an update data packet received by the multifunction machine of the first embodiment. 実施の形態1の複合機における複合機起動部の構成を示すブロック図である。3 is a block diagram illustrating a configuration of a multifunction peripheral starting unit in the multifunction peripheral according to the first embodiment. FIG. 実施の形態1の複合機におけるROM更新の全体の処理手順を示す説明図である。FIG. 6 is an explanatory diagram illustrating an entire processing procedure of ROM update in the multifunction machine according to the first embodiment. 実施の形態1の複合機において、ROMモニタで実行される処理の手順を示すフローチャートである。4 is a flowchart illustrating a procedure of processing executed by a ROM monitor in the multifunction machine according to the first embodiment. 実施の形態1の複合機において、プログラム起動部で実行される処理の手順を示すフローチャートである。4 is a flowchart illustrating a procedure of processing executed by a program activation unit in the multifunction machine according to the first embodiment. 実施の形態1の複合機100において、SCS122のROM更新モードスレッドで実行される更新データの選定処理の手順を示すフローチャート(1/2)である。6 is a flowchart (1/2) illustrating a procedure of update data selection processing executed by the ROM update mode thread of the SCS 122 in the MFP 100 according to the first embodiment. 実施の形態1の複合機100において、SCS122のROM更新モードスレッドで実行される更新データの選定処理の手順を示すフローチャート(2/2)である。6 is a flowchart (2/2) illustrating a procedure of update data selection processing executed by the ROM update mode thread of the SCS 122 in the multifunction machine 100 according to the first embodiment. 実施の形態1の複合機において、ROM更新部によるROM更新処理の手順を示すフローチャートである。4 is a flowchart illustrating a procedure of ROM update processing by a ROM update unit in the multifunction machine according to the first embodiment. 実施の形態2の複合機で受信した更新データパケットの展開後のデータ構造図である。FIG. 10 is a data structure diagram after development of an update data packet received by the multifunction machine of the second embodiment. 実施の形態2の複合機において、ROMモニタで実行される処理の手順を示すフローチャートである。7 is a flowchart illustrating a procedure of processing executed by a ROM monitor in the multifunction machine according to the second embodiment. 実施の形態2の複合機において、SCSのROM更新モードスレッドで実行される更新データ選定処理の手順を示すフローチャートである。9 is a flowchart illustrating a procedure of update data selection processing executed by a SCS ROM update mode thread in the multifunction machine of the second embodiment. 実施の形態3の複合機におけるROM更新の全体の処理手順を示す説明図である。FIG. 10 is an explanatory diagram illustrating an entire processing procedure of ROM update in a multifunction machine according to a third embodiment. 実施の形態4の複合機におけるROM更新の全体の処理手順を示す説明図である。FIG. 10 is an explanatory diagram illustrating an entire processing procedure of ROM update in a multifunction machine according to a fourth embodiment.

以下に添付図面を参照して、この発明にかかる画像形成装置およびプログラム更新方法の好適な実施の形態を詳細に説明する。
(実施の形態1)
図1は、この発明の実施の形態1である画像形成装置(以下、「複合機」という)の構成を示すブロック図である。図1に示すように、複合機100は、白黒ラインプリンタ(B&W LP)101と、カラーラインプリンタ(Color LP)102と、スキャナ、ファクシミリなどのハードウェアリソース103などを有するとともに、プラットホーム120とアプリケーション130とから構成されるソフトウェア群110と、電源投入時に実行される複合機起動部140とを備えている。
Exemplary embodiments of an image forming apparatus and a program update method according to the present invention will be explained below in detail with reference to the accompanying drawings.
(Embodiment 1)
FIG. 1 is a block diagram showing a configuration of an image forming apparatus (hereinafter referred to as “multifunction machine”) according to Embodiment 1 of the present invention. As shown in FIG. 1, the multifunction peripheral 100 includes a monochrome line printer (B & W LP) 101, a color line printer (Color LP) 102, hardware resources 103 such as a scanner and a facsimile, and the platform 120 and applications. And a software group 110 composed of 130 and a multifunction machine starting unit 140 that is executed when the power is turned on.

複合機起動部140は、複合機100の電源投入時にまずはじめに実行され、プラットホーム120やアプリケーション130を起動モードに応じて実行するものである。ここで、起動モードには通常モードとROM更新モードがある。通常モードとは、複合機100でコピー、プリント、スキャナ、ファクシミリなど通常の複合サービスを行うために起動するモードであり、後述するSRAM208のリモートROM更新フラグがOFFに設定されている場合に起動される。   The multifunction device activation unit 140 is executed first when the multifunction device 100 is powered on, and executes the platform 120 and the application 130 according to the activation mode. Here, the startup mode includes a normal mode and a ROM update mode. The normal mode is a mode that is activated in order to perform normal complex services such as copying, printing, scanning, and facsimile in the multifunction device 100, and is activated when the remote ROM update flag of the SRAM 208, which will be described later, is set to OFF. The

一方、ROM更新モードとは記憶部の一例としてのフラッシュメモリの更新を行うために複合機100を起動するモードであり、SRAM208のリモートROM更新フラグがONに設定されている場合に起動される。   On the other hand, the ROM update mode is a mode in which the multi-function device 100 is activated to update a flash memory as an example of a storage unit, and is activated when the remote ROM update flag of the SRAM 208 is set to ON.

プラットホーム120は、アプリケーション130からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121とを有する。   The platform 120 interprets a processing request from the application 130 and generates a hardware resource acquisition request, and a system resource that manages one or a plurality of hardware resources and arbitrates the acquisition request from the control service. A manager (SRM) 123 and a general-purpose OS 121 are included.

コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成される。なお、このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。   The control service is formed of a plurality of service modules, and includes an SCS (system control service) 122, an ECS (engine control service) 124, an MCS (memory control service) 125, an OCS (operation panel control service) 126, and an FCS. (Fax Control Service) 127 and NCS (Network Control Service) 128. The platform 120 has an application program interface (API) that can receive a processing request from the application 130 by a predefined function.

汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。   The general-purpose OS 121 is a general-purpose operating system such as UNIX (registered trademark), and executes the software of the platform 120 and the application 130 in parallel as processes.

MCS125は、メモリの制御を行うプロセスとして起動される。このMCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などのコピー、プリンタ、ファクシミリおよびスキャナなどの複合サービスを行う際に実行される通常モードスレッドと、複合機100がROM更新モードで起動された場合に、後述するリモートROM更新アプリによって更新データパケットから展開された更新データを格納する更新データ領域をSDRAM203に確保するROM更新モードスレッドとを有している。ここで、更新データパケットは、本発明における更新データ群を構成するものである。   The MCS 125 is activated as a process for controlling the memory. This MCS 125 process is a normal mode thread that is executed when performing complex services such as image memory acquisition and release, use of a hard disk drive (HDD), image data compression and decompression, printers, facsimiles, and scanners. And a ROM update mode thread that secures in the SDRAM 203 an update data area for storing update data developed from the update data packet by the remote ROM update application, which will be described later, when the MFP 100 is activated in the ROM update mode. doing. Here, the update data packet constitutes an update data group in the present invention.

OCS126のプロセスは、オペレータと本体制御間の情報伝達手段となる操作パネル(オペレーションパネル)の制御という複合サービスを行う際に起動される通常モードスレッドと、かかる操作パネルの制御を行わず単に起動されるだけのROM更新モードスレッドを有している。   The process of the OCS 126 is simply started without performing the control of the operation panel, and a normal mode thread that is started when performing a composite service such as control of an operation panel (operation panel) serving as information transmission means between the operator and the main body control. There are as many ROM update mode threads as possible.

FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、複合送受信を行うためのAPIを提供するという複合サービスを行う際に起動される通常モードスレッドと、かかる機能を実行せずに単に起動されるだけのROM更新モードスレッドを有している。   The FCS 127 process includes facsimile transmission / reception using the PSTN / ISDN network from each application layer of the system controller, registration / quotation of various facsimile data managed by BKM (backup SRAM), facsimile reading, facsimile reception printing, and complex transmission / reception. It has a normal mode thread that is activated when performing a composite service that provides an API for performing, and a ROM update mode thread that is merely activated without executing such a function.

NCS128は、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行うという複合サービスを行う際に実行される通常モードスレッドを有している。また、NCS128の通常モードスレッドでは、さらにネットワークに接続された、例えば複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダなどから、フラッシュメモリのROM更新要求パケットを受信する。NCS128のプロセスには、フラッシュメモリに組み込まれたプログラムの更新データを含む更新データパケットを複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダからネットワーク経由で受信するROM更新モードスレッドも有している。   The NCS 128 is a process for providing a service that can be used in common for applications that require network I / O. Data received from the network side according to each protocol is distributed to each application, and data from the application is networked. It has a normal mode thread that is executed when performing a composite service that mediates transmission to the side. In the normal mode thread of the NCS 128, a ROM update request packet of the flash memory is received from, for example, a host computer of a multifunction device developer or a third vendor of an application developer connected to the network. The NCS 128 process also has a ROM update mode thread for receiving update data packets including update data of programs incorporated in the flash memory from the host computer of the multifunction machine developer or the third vendor of the application developer via the network. Yes.

SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御するという複合サービスを行う際に実行される通常モードスレッドと、かかるリソース管理を実行せずに単に起動されるだけのROM更新モードスレッドを有している。   The process of the SRM 123 performs system control and resource management together with the SCS 122. The SRM123 process uses hardware resources such as engines such as a scanner unit and printer unit, memory, HDD file, and host I / O (Centro I / F, network I / F, IEEE 1394 I / F, RS232C I / F, etc.). A normal mode thread that is executed when performing a composite service that performs arbitration and performs execution control according to a request from a higher layer to be used, and a ROM update mode thread that is simply started without executing such resource management Have.

具体的には、このSRM123の通常モードスレッドは、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。   Specifically, the normal mode thread of the SRM 123 determines whether the requested hardware resource is available (whether it is not used by another request), and if so, the requested hardware resource is requested. Tell the upper layer that the hardware resource is available. In addition, the SRM 123 performs use scheduling of hardware resources in response to a request from an upper layer, and directly executes request contents (for example, paper conveyance and image forming operation, memory allocation, file generation, etc. by a printer engine). .

SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御という複合サービスを行う際に実行される通常モードスレッドを有している。例えばSCS122の通常モードスレッドは、NCS128がネットワーク経由でROM更新要求パケットを受信したときに、SRAM208のリモートROM更新フラグをONに設定し、複合機100に対して再起動コマンドを発行する処理を行う。   The process of the SCS 122 has a normal mode thread that is executed when performing a composite service such as application management, operation unit control, system screen display, LED display, resource management, and interrupt application control. For example, when the NCS 128 receives a ROM update request packet via the network, the normal mode thread of the SCS 122 sets the remote ROM update flag of the SRAM 208 to ON and issues a restart command to the multifunction device 100. .

SCS122のプロセスは、さらに複合機100がROM更新モードで起動された場合にのみ起動されるROM更新モードスレッドを通常モードスレッドとは別個に有している。このROM更新モードスレッドは、複合機100がROM更新モードで起動されたときに、SDRAM203に展開されたデータの中から、複合機100で動作するアプリケーション、コントロールサービスの構成に応じた更新データを選定する処理を行う。   The process of the SCS 122 further has a ROM update mode thread that is activated only when the multifunction peripheral 100 is activated in the ROM update mode, separately from the normal mode thread. This ROM update mode thread selects update data corresponding to the configuration of the application running on the multifunction device 100 and the control service from the data expanded in the SDRAM 203 when the multifunction device 100 is activated in the ROM update mode. Perform the process.

ECS124のプロセスは、白黒ラインプリンタ(B&W LP)101、カラーラインプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース103のエンジンの制御という複合サービスを行う際に実行される通常モードスレッドと、このようなエンジン制御を行わずに単に起動されるだけのROM更新モードスレッドを有している。   The process of the ECS 124 is a normal mode thread that is executed when performing a complex service of controlling the engine of the hardware resource 103 including the monochrome line printer (B & W LP) 101, the color line printer (Color LP) 102, the scanner, the facsimile, and the like. And a ROM update mode thread that is simply activated without performing such engine control.

このように、ECS124、OCS126、FCS127、SRM123の各ROM更新モードスレッドはいずれも単に起動されるだけであるが、これは、ROM更新処理時に、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。一方、MCS125、SCS122、NCS128の各ROM更新モードスレッドも、それぞれROM更新に必要な処理を行うとともに、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。   As described above, each of the ROM update mode threads of the ECS 124, the OCS 126, the FCS 127, and the SRM 123 is merely activated, and this indicates the presence of a control service that operates in the MFP during the ROM update process. It is supposed to be started. On the other hand, the ROM update mode threads of the MCS 125, the SCS 122, and the NCS 128 are also activated to perform the processes necessary for ROM update and to indicate the existence of a control service that operates inside the multifunction peripheral.

アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116と、更新データをSDRAM203上に展開するリモートROM更新アプリ(以下、「RRUアプリ」という。)117とを有している。   The application 130 includes a printer application 111 that is a printer application having a page description language (PDL), PCL, and postscript (PS), a copy application 112 that is a copy application, and a fax application 113 that is a facsimile application. , A scanner application 114 that is a scanner application, a net file application 115 that is a network file application, a process inspection application 116 that is a process inspection application, and a remote ROM update application that develops update data on the SDRAM 203 (hereinafter, referred to as a “scan ROM application”). "RRU application") 117.

これらの各アプリも、プラットホーム120と同様にそれぞれプロセスとして起動される。なお、RRUアプリ117のプロセスは、複合機100がROM更新モードで起動された場合に起動するようにしてもよい。ここで、アプリケーション130は、本発明におけるユーザサービスを構成するものである。   Each of these applications is also activated as a process, as with the platform 120. Note that the process of the RRU application 117 may be activated when the multifunction peripheral 100 is activated in the ROM update mode. Here, the application 130 constitutes a user service in the present invention.

例えばRRUアプリ117は、NCS128がROM更新要求パケットを受信して複合機100がROM更新モードで再起動したときに、後述するプログラム起動部によって起動されるようにしてもよい。また、RRUアプリ117はプラットホーム120と同様に、複合機100が通常モードで起動したときも起動されるようにしてもよい。   For example, the RRU application 117 may be activated by a program activation unit, which will be described later, when the NCS 128 receives a ROM update request packet and the MFP 100 is restarted in the ROM update mode. Further, like the platform 120, the RRU application 117 may be activated when the multifunction peripheral 100 is activated in the normal mode.

RRUアプリ117は、NCS128によりネットワーク経由で受信した更新データパケットを更新データに展開し、その更新データをMCS125のROM更新モードスレッドによって確保されたSDRAM203の更新データ領域に格納する。   The RRU application 117 expands the update data packet received via the network by the NCS 128 into update data, and stores the update data in the update data area of the SDRAM 203 secured by the ROM update mode thread of the MCS 125.

図2は、図1に示した実施の形態1の複合機100のハードウェア構成図である。図2に示すように、この複合機100は、コントローラボード200と、オペレーションパネル210と、ファックスコントロールユニット(FCU)220と、USBデバイス230と、IEEE1394デバイス240と、ブルートゥースデバイス250と、エンジン部260から構成されている。   FIG. 2 is a hardware configuration diagram of the multifunction peripheral 100 according to the first embodiment shown in FIG. As shown in FIG. 2, the multifunction peripheral 100 includes a controller board 200, an operation panel 210, a fax control unit (FCU) 220, a USB device 230, an IEEE 1394 device 240, a Bluetooth device 250, and an engine unit 260. It is composed of

図2のコントローラボード200は、ASIC201、CPU202、SDRAM203、フラッシュメモリ204、HDD205、SRAM208およびネットワークインターフェースコントローラ209から構成されている。   2 includes an ASIC 201, a CPU 202, an SDRAM 203, a flash memory 204, an HDD 205, an SRAM 208, and a network interface controller 209.

オペレーションパネル210は、ASIC201に直接接続されている。FCU220、USBデバイス230、IEEE1394デバイス240,ブルートゥースデバイス250およびエンジン部260は、PCIバスを介してASIC201に接続されている。   The operation panel 210 is directly connected to the ASIC 201. The FCU 220, USB device 230, IEEE 1394 device 240, Bluetooth device 250, and engine unit 260 are connected to the ASIC 201 via a PCI bus.

ネットワークインターフェースコントローラ209は、ネットワーク271に接続されている他の機器とMACアドレスなどを用いて通信する。FCU220は電話網272に接続されている。また、USBデバイス230、IEEE1394デバイス240およびブルートゥースデバイス250は、他の端末273〜275に接続される。   The network interface controller 209 communicates with other devices connected to the network 271 using a MAC address or the like. The FCU 220 is connected to the telephone network 272. The USB device 230, the IEEE 1394 device 240, and the Bluetooth device 250 are connected to other terminals 273 to 275.

SRAM208は、ROM更新要求パケットを受信したときにON状態に設定されるリモートROM更新フラグを格納する領域と、ROM更新要求パケットの受信後、更新データパケットをネットワーク271経由で受信したときに、受信した更新データパケットから展開される更新データを格納する更新データ領域とが確保される不揮発性メモリである。また、SRAM208には、ROM更新中に電源が切れた場合に、処理復帰のために更新中の各種情報が蓄積される。   The SRAM 208 stores an area for storing a remote ROM update flag that is set to an ON state when a ROM update request packet is received, and when an update data packet is received via the network 271 after receiving the ROM update request packet. This is a nonvolatile memory in which an update data area for storing update data developed from the update data packet is secured. In addition, when the power is cut off during the ROM update, the SRAM 208 stores various information being updated for the process return.

SRAM208は、ROM更新中に電源が切れた場合に、処理復帰のために更新中の各種情報を蓄積するバッテリを用いた不揮発性メモリであり、本発明における不揮発性記憶手段を構成する。   The SRAM 208 is a non-volatile memory that uses a battery that stores various information being updated to restore processing when the power is turned off during the ROM update, and constitutes a non-volatile storage means in the present invention.

フラッシュメモリ(以下、「フラッシュROM」という。)204には、上述の各アプリ、プラットホームを構成する各コントロールサービスやSRM123の各プログラムが格納されている。実施の形態1にかかる複合機100は、これらの各プログラムがあらかじめフラッシュROM204に組み込まれた状態で出荷され、ROM更新要求パケットの受信によって、フラッシュROM204のプログラムが更新されるという、リモートROM更新の処理が実行されるようになっている。   The flash memory (hereinafter referred to as “flash ROM”) 204 stores the above-described applications, the control services that make up the platform, and the programs of the SRM 123. The MFP 100 according to the first embodiment is shipped in a state in which each of these programs is incorporated in the flash ROM 204 in advance, and the program in the flash ROM 204 is updated by receiving the ROM update request packet. Processing is executed.

フラッシュROM204は、本発明における記憶部を構成するものである。なお、本発明における記憶部はフラッシュメモリ204に限るものでなく、SDRAM203、HDD205であってもよい。   The flash ROM 204 constitutes a storage unit in the present invention. The storage unit in the present invention is not limited to the flash memory 204, and may be an SDRAM 203 or an HDD 205.

図3は、NCS128がネットワーク経由で受信した更新データパケットを展開した後のデータ構造図である。ここで、更新データパケットの展開とは、更新データパケットから、宛先ネットワークアドレス、パケット長などのネットワーク情報を除去してROM更新に必要なデータを参照可能とすることである。   FIG. 3 is a data structure diagram after the update data packet received by the NCS 128 via the network is expanded. Here, the expansion of the update data packet means that the network information such as the destination network address and the packet length is removed from the update data packet so that the data necessary for the ROM update can be referred to.

展開された更新データパケットは、図3に示すように、先頭のROMモニタ起動命令301と、ヘッダ部302と、データ部303とから構成される。ROMモニタ起動命令301は、複合機100の起動時に参照されて後述するROMモニタの起動を行うコマンドである。   As shown in FIG. 3, the expanded update data packet is composed of a head ROM monitor activation instruction 301, a header portion 302, and a data portion 303. The ROM monitor activation instruction 301 is a command that is referred to when the MFP 100 is activated and activates a ROM monitor described later.

ヘッダ部302は、更新するモジュールに対応するように、モジュールごとのヘッダブロックに分かれている。各ヘッダブロックには、次のヘッダブロックまでのオフセットである次ヘッダオフセットと、モジュールの更新データまでのオフセットである更新データオフセットと、更新データのサイズと、モジュールの識別情報であるモジュールIDと、そのモジュールのフラッシュROM204上での相対番地を示す更新先アドレスと、そのモジュールのサイズである更新先領域長とから構成される。   The header section 302 is divided into header blocks for each module so as to correspond to the module to be updated. Each header block includes a next header offset that is an offset to the next header block, an update data offset that is an offset to module update data, a size of the update data, a module ID that is module identification information, An update destination address indicating a relative address of the module on the flash ROM 204 and an update destination area length which is the size of the module are configured.

ここで、モジュールは、MCS125、ECS124、NCS128などのコントロールサービス単位のプログラム、プリンタアプリ111、コピーアプリ112などのアプリ単位のプログラム、プリンタエンジン101,102、スキャナエンジンなどのエンジン単位のプログラムで更新可能となっている。また、更新データとは、これらのモジュールに対する変更プログラムのバイナリデータを圧縮形式にしたものである。なお、この圧縮された更新データは、RRUアプリ117によって展開される際に伸張される。   Here, the module can be updated by a control service unit program such as MCS125, ECS124, and NCS128, an application unit program such as the printer application 111 and the copy application 112, and an engine unit program such as the printer engines 101 and 102 and the scanner engine. It has become. The update data is a binary format of the change program for these modules in a compressed format. The compressed update data is decompressed when being decompressed by the RRU application 117.

ヘッダ部302に続いてデータ部303が記録されており、データ部303には更新データがモジュールごとに格納されている。各モジュールの更新データの先頭は、モジュールに対応するヘッダブロックの更新データオフセットにより参照できるようになっている。   A data part 303 is recorded following the header part 302, and update data is stored in the data part 303 for each module. The top of the update data of each module can be referred to by the update data offset of the header block corresponding to the module.

図4は、実施の形態1の複合機100における複合機起動部140の構成を示すブロック図である。実施の形態1の複合機100における複合機起動部140は、図4に示すとおり、ROMモニタ410と、プログラム起動部420と、ROM更新モードスレッドを起動したSCS122と、ROM更新部430とから構成される。ROMモニタ410、プログラム起動部420、ROM更新部430はフラッシュROM204に記憶されている。   FIG. 4 is a block diagram illustrating a configuration of the multifunction machine starting unit 140 in the multifunction machine 100 according to the first embodiment. As shown in FIG. 4, the MFP activation unit 140 in the MFP 100 of the first embodiment includes a ROM monitor 410, a program activation unit 420, an SCS 122 that activates a ROM update mode thread, and a ROM update unit 430. Is done. The ROM monitor 410, the program activation unit 420, and the ROM update unit 430 are stored in the flash ROM 204.

ここで、プログラム起動部420は本発明におけるプログラム起動手段を、SCS122は本発明の更新データ選定手段を、ROM更新部430は本発明における更新手段をそれぞれ構成する。   Here, the program activation unit 420 constitutes the program activation unit in the present invention, the SCS 122 constitutes the update data selection unit in the present invention, and the ROM update unit 430 constitutes the update unit in the present invention.

ROMモニタ410は、更新データパケットの先頭に記録されたROMモニタ起動命令を実行することにより起動され、ハードウェアの初期化、コントローラボードの診断、ソフトウェアの初期化、汎用OS121の起動などを行う。   The ROM monitor 410 is activated by executing a ROM monitor activation instruction recorded at the head of the update data packet, and performs hardware initialization, controller board diagnosis, software initialization, general-purpose OS 121 activation, and the like.

プログラム起動部420は、汎用OS121から呼び出されるものであり、起動モード設定部421と、サービス層起動部422と、アプリ起動部423と、アプリ起動情報設定部424とから構成される。   The program activation unit 420 is called from the general-purpose OS 121 and includes an activation mode setting unit 421, a service layer activation unit 422, an application activation unit 423, and an application activation information setting unit 424.

起動モード設定部421は、SRAM208に保持されているリモートROM更新フラグのチェックを行って、通常モードまたはROM更新モードの起動モードの設定を行う。サービス層起動部422は、汎用OS121の起動情報を取得して、コントロールサービスを起動する。アプリ起動情報設定部424は、ROM更新モードの場合に実行され、各アプリの起動情報を取得して、取得したアプリ起動情報を環境変数に設定する。アプリ起動部423は、起動モードが通常モードである場合およびROM更新モードである場合に実行され、各アプリの起動情報を取得して各アプリを起動する。   The activation mode setting unit 421 checks the remote ROM update flag held in the SRAM 208 and sets the activation mode of the normal mode or the ROM update mode. The service layer activation unit 422 acquires the activation information of the general-purpose OS 121 and activates the control service. The application activation information setting unit 424 is executed in the ROM update mode, acquires the activation information of each application, and sets the acquired application activation information as an environment variable. The application activation unit 423 is executed when the activation mode is the normal mode and the ROM update mode, acquires activation information of each application, and activates each application.

SCS122のROM更新モードスレッドは、プログラム起動部420のサービス層起動部422によって他のコントロールサービスとともに起動される。SCS122のROM更新モードスレッドでは、複合機100で動作するコントロールサービスやアプリを判断して、ネットワーク271経由で受信した更新データから複合機100の構成に応じた更新データを選定する。また、SCS122のROM更新モードスレッドは、ROM更新部430を起動して、ROM更新部430に対して選定した更新データの情報とともにROM更新命令を発する。   The ROM update mode thread of the SCS 122 is activated together with other control services by the service layer activation unit 422 of the program activation unit 420. In the ROM update mode thread of the SCS 122, a control service or application that operates on the multifunction device 100 is determined, and update data corresponding to the configuration of the multifunction device 100 is selected from the update data received via the network 271. Also, the ROM update mode thread of the SCS 122 activates the ROM update unit 430 and issues a ROM update command together with information on the selected update data to the ROM update unit 430.

ROM更新部430は、SCS122のROM更新モードスレッドにより起動され、SCS122からROM更新命令を受け取って、更新データでフラッシュROM204を更新するものである。ROM更新部430は、SCS122からのROM更新命令を解析するROM更新命令解読部431と、更新先アドレスと解析したROM更新命令に基づいてフラッシュROM204のプログラムを更新するROM更新処理部433と、ROM更新中の各種情報をSRAM208へ格納するSRAM処理部432と、ROM更新処理中のユーザへの進捗表示を制御する表示制御部434とから構成される。   The ROM update unit 430 is activated by the ROM update mode thread of the SCS 122, receives a ROM update command from the SCS 122, and updates the flash ROM 204 with update data. The ROM update unit 430 includes a ROM update command decoding unit 431 that analyzes a ROM update command from the SCS 122, a ROM update processing unit 433 that updates a program in the flash ROM 204 based on the update destination address and the analyzed ROM update command, The SRAM processing unit 432 stores various information being updated in the SRAM 208, and the display control unit 434 controls the progress display to the user during the ROM update process.

次にこのように構成された複合機100におけるリモートROM更新処理について説明する。図5は、実施の形態1の複合機100におけるリモートROM更新の全体処理の流れを示すブロック図である。   Next, remote ROM update processing in the MFP 100 configured as described above will be described. FIG. 5 is a block diagram illustrating a flow of overall processing of remote ROM update in the multifunction peripheral 100 according to the first embodiment.

図5(a)は、複合機100がROM更新要求を受信したときの動作を示し、図5(b)は複合機100がROM更新要求の受信後に再起動したときに、再起動の確認を行う動作を示し、図5(c)は更新データパケットを受信したときの動作を示す。   FIG. 5A shows the operation when the MFP 100 receives a ROM update request, and FIG. 5B shows confirmation of the restart when the MFP 100 restarts after receiving a ROM update request. FIG. 5C shows the operation when the update data packet is received.

図5(a)において、複合機100が通常の複合サービスの動作を実行しているときは、各アプリ、各コントロールサービスがいずれも通常モードスレッドを実行している。   In FIG. 5A, when the multifunction peripheral 100 is executing a normal composite service operation, each application and each control service is executing a normal mode thread.

この状態で、ネットワーク経由で複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなどのリモートホストからROM更新要求パケットが送信されてくると、NCS128の通常モードスレッドはステップS501に進み、そのROM更新要求パケットを受信する。   In this state, when a ROM update request packet is transmitted from the remote host such as the host computer of the multifunction device developer or the third vendor host computer of the application developer via the network, the normal mode thread of the NCS 128 proceeds to step S501. The ROM update request packet is received.

ステップS502では、NCS128の通常モードスレッドが、受信したパケットの内容を判断して、ROM更新要求パケットであった場合には、ROM更新要求がある旨をプリンタアプリ111へ通知する。   In step S502, the normal mode thread of the NCS 128 determines the content of the received packet, and if it is a ROM update request packet, notifies the printer application 111 that there is a ROM update request.

ステップS503では、プリンタアプリ111が、NCS128からROM更新要求がある旨の通知を受信した場合に、SCS122の通常モードスレッドに対して複合機100の再起動リブート依頼通知を送信する。リブート依頼通知を受けたSCS122の通常モードスレッドは、SRAM208に格納されているリモートROM更新フラグをONに設定し、その後再起動コマンドを発行して複合機100を再起動する。   In step S <b> 503, when the printer application 111 receives a notification that there is a ROM update request from the NCS 128, the printer application 111 transmits a restart reboot request notification of the multifunction device 100 to the normal mode thread of the SCS 122. Upon receiving the reboot request notification, the normal mode thread of the SCS 122 sets the remote ROM update flag stored in the SRAM 208 to ON, and then issues a restart command to restart the multifunction device 100.

複合機100は再起動すると、フラッシュROM204のブートベクタに記録されたROMモニタ410を起動する。図6は、実施の形態1の複合機100において、ROMモニタ410で実行される処理の手順を示すフローチャートである。   When the multi-function device 100 is restarted, the ROM monitor 410 recorded in the boot vector of the flash ROM 204 is started. FIG. 6 is a flowchart illustrating a procedure of processes executed by the ROM monitor 410 in the multifunction machine 100 according to the first embodiment.

ステップS601では、ROMモニタ410が、まずハードウェアの初期化を行う。ステップS602では、ROMモニタ410が、コントローラボード200の診断処理を実行する。ステップS603では、ROMモニタ410が、ソフトウェアの初期化処理を行う。ステップS604では、ROMモニタ410が、汎用OS121を起動する。   In step S601, the ROM monitor 410 first initializes hardware. In step S602, the ROM monitor 410 executes a diagnostic process for the controller board 200. In step S603, the ROM monitor 410 performs software initialization processing. In step S604, the ROM monitor 410 activates the general-purpose OS 121.

図7は、実施の形態1の複合機100において、プログラム起動部420で実行される処理の手順を示すフローチャートである。ステップS701では、プログラム起動部420が、起動モード設定部421によって、SRAM208に格納されているリモートROM更新フラグの状態をチェックする。   FIG. 7 is a flowchart illustrating a procedure of processing executed by the program activation unit 420 in the multifunction peripheral 100 according to the first embodiment. In step S <b> 701, the program activation unit 420 uses the activation mode setting unit 421 to check the state of the remote ROM update flag stored in the SRAM 208.

リモートROM更新フラグがONである場合には、起動モード設定部421はステップS702に進み、起動モードをROM更新モードに設定して以下の処理を行う。   If the remote ROM update flag is ON, the activation mode setting unit 421 proceeds to step S702, sets the activation mode to the ROM update mode, and performs the following processing.

ステップS703では、サービス層起動部422が、フラッシュROM204のファイルシステムをマウントする。ステップS704では、サービス層起動部422が、フラッシュROM204からSCS122,ECS124,MCS125などのコントロールサービスの起動情報を取得する。ステップS705では、サービス層起動部422が、ステップS704で取得した起動情報を環境変数に設定する。   In step S703, the service layer activation unit 422 mounts the file system of the flash ROM 204. In step S <b> 704, the service layer activation unit 422 acquires activation information of control services such as the SCS 122, ECS 124, and MCS 125 from the flash ROM 204. In step S705, the service layer activation unit 422 sets the activation information acquired in step S704 as an environment variable.

そして、ステップS706では、サービス層起動部422が、SCS122、ECS124、MCS125などのコントロールサービスを汎用OS121上で起動する。このとき、各コントロールサービスはROM更新モードスレッドを起動する。従って、SCS122のプロセスではROM更新モードスレッドが起動される。   In step S <b> 706, the service layer activation unit 422 activates a control service such as the SCS 122, ECS 124, and MCS 125 on the general-purpose OS 121. At this time, each control service starts a ROM update mode thread. Therefore, the ROM update mode thread is activated in the SCS 122 process.

ステップS707では、サービス層起動部422が、SCS122のROM更新モードスレッドが起動したら、起動したコントロールサービスのコントロールサービス起動情報を環境変数に設定する。   In step S707, when the ROM update mode thread of the SCS 122 is activated, the service layer activation unit 422 sets the control service activation information of the activated control service in the environment variable.

ここで、コントロールサービス起動情報とは、起動したコントロールサービスのプロセスIDやモジュール名など、コントロールサービスのプログラムを識別するものであり、各コントロールサービスに固有の情報となっている。   Here, the control service activation information identifies the control service program, such as the process ID and module name of the activated control service, and is unique to each control service.

ステップS708では、アプリ起動情報設定部424が、フラッシュROM204のファイルシステムをマウントする。ステップS709では、アプリ起動情報設定部424が、マウントしたファイルシステムを検索して、格納されているアプリのプログラムを抽出し、複合機100で起動されるアプリのアプリ起動情報を取得する。そして、ステップS710では、アプリ起動情報設定部424が、ステップS709で取得したアプリ起動情報を環境変数に設定する。   In step S708, the application activation information setting unit 424 mounts the file system of the flash ROM 204. In step S <b> 709, the application activation information setting unit 424 searches the mounted file system, extracts the stored application program, and acquires application activation information of the application activated in the multifunction peripheral 100. In step S710, the application activation information setting unit 424 sets the application activation information acquired in step S709 as an environment variable.

ここで、アプリ起動情報とは、複合機100で動作可能なアプリを識別するアプリ固有の情報であり、アプリのモジュールID、モジュール名などである。なお、ROM更新モードでは、コントロールサービスを起動し、アプリは起動しない。また、環境変数に設定されたコントロールサービス起動情報とアプリ起動情報は、SCS122へ受け渡される。このようにしてROM更新モードでのプログラム起動が行われる。そして、ステップS711では、アプリ起動部423が、RRUアプリ117を起動する。   Here, the application activation information is application-specific information for identifying an application that can be operated on the multifunction peripheral 100, and includes an application module ID, a module name, and the like. In the ROM update mode, the control service is activated and the application is not activated. Further, the control service activation information and application activation information set in the environment variable are transferred to the SCS 122. In this way, the program is activated in the ROM update mode. In step S711, the application activation unit 423 activates the RRU application 117.

なお、ステップS701で、リモートROM更新フラグがOFFである場合には、起動モード設定部421はステップS712に進み、起動モードを通常モードに設定して以下の通常起動の処理を行う。   If the remote ROM update flag is OFF in step S701, the activation mode setting unit 421 proceeds to step S712, sets the activation mode to the normal mode, and performs the following normal activation process.

ステップS713では、サービス層起動部422が、フラッシュROM204のファイルシステムをマウントする。ステップS714では、サービス層起動部422が、フラッシュROM204からSCS122,ECS124,MCS125などのコントロールサービスの起動情報を取得する。ステップS715では、サービス層起動部422が、SCS122、ECS124、MCS125などのコントロールサービスを汎用OS上で起動する。このとき、各コントロールサービスのプロセスでは、通常モードスレッドが起動される。   In step S713, the service layer activation unit 422 mounts the file system of the flash ROM 204. In step S <b> 714, the service layer activation unit 422 acquires activation information of control services such as the SCS 122, ECS 124, and MCS 125 from the flash ROM 204. In step S715, the service layer activation unit 422 activates a control service such as SCS122, ECS124, MCS125 on the general-purpose OS. At this time, a normal mode thread is activated in each control service process.

ステップS716では、アプリ起動部423が、フラッシュROM204のファイルシステムをマウントする。ステップS717では、アプリ起動部423が、マウントしたファイルシステムから複合機100で起動される上述のアプリ起動情報を取得する。ステップS718では、アプリ起動部423が、各アプリを起動する。なお、このときはRRUアプリ117は起動しない。   In step S716, the application activation unit 423 mounts the file system of the flash ROM 204. In step S <b> 717, the application activation unit 423 acquires the above-described application activation information that is activated by the multifunction peripheral 100 from the mounted file system. In step S718, the application activation unit 423 activates each application. At this time, the RRU application 117 is not activated.

図5(b)において、ROM更新要求を行ったリモートホスト(複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなど)からROM更新可能状態確認パケットがネットワーク271経由で複合機100に対して送信されてくる。   In FIG. 5B, a ROM updateable state confirmation packet is transmitted via the network 271 from a remote host (such as a host computer of a multifunction device developer or a third vendor host computer of an application developer) that has made a ROM update request. Will be sent to.

ステップS504では、コントロールサービスおよびRRUアプリ117が複合機100で起動されているので、NCS128のROM更新モードスレッドがROM更新可能状態確認パケットを受信する。ステップS505では、NCS128のROM更新モードスレッドが、受信したROM更新可能状態確認パケットをRRUアプリ117へ受け渡す。   In step S504, since the control service and the RRU application 117 are activated on the multifunction peripheral 100, the ROM update mode thread of the NCS 128 receives the ROM updateable state confirmation packet. In step S505, the ROM update mode thread of the NCS 128 delivers the received ROM updateable state confirmation packet to the RRU application 117.

このとき、複合機100はROM更新モードで再起動されているため、ROM更新可能な状態となっている。ステップS506では、RRUアプリ117が、ROM更新可能状態確認パケットに対する応答メッセージとしてリモートROM更新可能のメッセージをNCS128へ送信する。ステップS507では、NCS128のROM更新モードスレッドが、リモートROM更新可能のメッセージをネットワーク271経由でROM更新可能状態確認パケットの送信元であるリモートホストへ送信する。   At this time, the MFP 100 has been restarted in the ROM update mode, so that the ROM can be updated. In step S506, the RRU application 117 transmits a remote ROM updateable message to the NCS 128 as a response message to the ROM updateable state confirmation packet. In step S507, the ROM update mode thread of the NCS 128 transmits a remote ROM updateable message to the remote host that is the transmission source of the ROM updateable state confirmation packet via the network 271.

NCS122がROM更新可能状態確認パケットに対する応答をリモートホストへ送信すると、図5(c)に示すように、リモートホストから更新データパケットが送信されてくる。このため、ステップS508では、複合機100が、NCS128のROM更新モードスレッドで更新データパケットを受信する。ステップS509では、NCS128のROM更新モードスレッドが、受信した更新データパケットをRRUアプリ117へ受け渡す。   When the NCS 122 transmits a response to the ROM updateable state confirmation packet to the remote host, as shown in FIG. 5C, an update data packet is transmitted from the remote host. Therefore, in step S508, the multi-function device 100 receives an update data packet using the ROM update mode thread of the NCS 128. In step S509, the ROM update mode thread of the NCS 128 delivers the received update data packet to the RRU application 117.

ステップS510では、RRUアプリ117が、更新データパケットを展開したデータに必要な領域を得るために、MCS125に対して、SDRAM203上に更新データ領域の確保を要求する。ステップS511では、確保要求を受けたMCS125のROM更新モードスレッドが、SDRAM203上に更新データ領域を確保して、その領域の先頭アドレスと確保した領域サイズとをRRUアプリ117に返す。   In step S <b> 510, the RRU application 117 requests the MCS 125 to secure an update data area on the SDRAM 203 in order to obtain an area necessary for data obtained by developing the update data packet. In step S511, the ROM update mode thread of the MCS 125 that has received the reservation request secures an update data area on the SDRAM 203, and returns the start address of the area and the secured area size to the RRU application 117.

RRUアプリ117では、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新パケットデータを、MCS125のROM更新モードスレッドから通知された領域の先頭アドレスから展開する。これにより、SDRAM203の更新データ領域には前述した図3に示した構造のデータが格納される。   The RRU application 117 expands the update packet data obtained by removing the network information and decompressing the compressed data from the start address of the area notified from the ROM update mode thread of the MCS 125. As a result, the data having the structure shown in FIG. 3 is stored in the update data area of the SDRAM 203.

ステップS512では、RRUアプリ117が、更新データパケットを展開したSDRAM203上の領域の先頭アドレスを、SCS122へ通知する。これにより、SCS122のROM更新モードスレッドで更新データの選定処理が行われる。   In step S512, the RRU application 117 notifies the SCS 122 of the start address of the area on the SDRAM 203 where the update data packet is expanded. As a result, update data selection processing is performed in the ROM update mode thread of the SCS 122.

図8および図9は、実施の形態1の複合機100において、SCS122のROM更新モードスレッドで実行される更新データの選定処理の手順を示すフローチャートである。   FIG. 8 and FIG. 9 are flowcharts showing the procedure of update data selection processing executed by the ROM update mode thread of the SCS 122 in the multifunction machine 100 of the first embodiment.

ステップS801では、SCS122のROM更新モードスレッドが、SRAM208にモジュールIDやフラッシュROM204の更新先アドレスなどの更新情報がすでに記憶されているか否かを確認する。   In step S <b> 801, the ROM update mode thread of the SCS 122 checks whether update information such as the module ID and the update destination address of the flash ROM 204 is already stored in the SRAM 208.

SRAM208に更新情報が記憶されていると判断した場合には、SCS122のROM更新モードスレッドはROM更新処理が中断された後の起動であると判断し、ステップS802に進む。ステップS802では、SCS122のROM更新モードスレッドが、SRAM208から更新情報を取得する。   If it is determined that the update information is stored in the SRAM 208, it is determined that the ROM update mode thread of the SCS 122 is activated after the ROM update process is interrupted, and the process proceeds to step S802. In step S <b> 802, the ROM update mode thread of the SCS 122 acquires update information from the SRAM 208.

ステップS802に続いてステップS803に進み、SCS122のROM更新モードスレッドは、フラッシュROM204の先頭のヘッダブロックを参照する。ステップS803に続いてステップS804に進み、SCS122のROM更新モードスレッドはヘッダブロックからモジュールIDを取得する。   Progressing to step S803 following step S802, the ROM update mode thread of the SCS 122 refers to the top header block of the flash ROM 204. Progressing to step S804 following step S803, the ROM update mode thread of the SCS 122 acquires the module ID from the header block.

ステップS804に続いてステップS805に進み、SCS122のROM更新モードスレッドはヘッダブロックから取得したモジュールIDがステップS802でSRAM208から取得した更新情報に相当するか否かを判断する。   Progressing to step S805 following step S804, the ROM update mode thread of the SCS 122 determines whether the module ID acquired from the header block corresponds to the update information acquired from the SRAM 208 in step S802.

ヘッダブロックから取得したモジュールIDが、SRAM208から取得した更新情報に該当する場合には、SCS122のROM更新モードスレッドはステップS806に進む。ステップS806では、SCS122のROM更新モードスレッドが、そのモジュールIDの更新データを選定し、さらにヘッダブロックから更新先アドレス、更新データオフセット、更新データサイズを取得する。   If the module ID acquired from the header block corresponds to the update information acquired from the SRAM 208, the ROM update mode thread of the SCS 122 proceeds to step S806. In step S806, the ROM update mode thread of the SCS 122 selects the update data of the module ID, and further acquires the update destination address, the update data offset, and the update data size from the header block.

ステップS806に続いてステップS807に進み、SCS122のROM更新モードスレッドはモジュールID、更新先アドレス、更新データオフセット、更新データサイズを一組とした更新情報を「更新対象」の変数等に設定し、ステップS809に進む。   Progressing to step S807 following step S806, the ROM update mode thread of the SCS 122 sets update information including a module ID, an update destination address, an update data offset, and an update data size as a variable of “update target”, and the like. The process proceeds to step S809.

一方、ステップS805において、ヘッダブロックから取得したモジュールIDが、SRAM208から取得した更新情報に相当しない場合には、SCS122のROM更新モードスレッドは取得したモジュールIDの更新データを選定せず、ステップS809に進む。つまり、SCS122のROM更新モードスレッドはステップS806およびS807の処理は行わない。   On the other hand, if the module ID acquired from the header block does not correspond to the update information acquired from the SRAM 208 in step S805, the ROM update mode thread of the SCS 122 does not select update data for the acquired module ID, and the process proceeds to step S809. move on. That is, the ROM update mode thread of the SCS 122 does not perform the processes of steps S806 and S807.

ステップS809では、SCS122のROM更新モードスレッドが、次ヘッダブロックオフセットを参照することにより、次のヘッダブロックが存在するか否かを判断する。次のヘッダブロックが存在する場合には、SCS122のROM更新モードスレッドはステップS810に進み、次のヘッダブロックを参照する。そして、SCS122のROM更新モードスレッドはステップS804からステップS807,ステップS809およびステップS810の処理を繰り返し行う。   In step S809, the ROM update mode thread of the SCS 122 determines whether or not the next header block exists by referring to the next header block offset. If the next header block exists, the ROM update mode thread of the SCS 122 proceeds to step S810 and refers to the next header block. Then, the ROM update mode thread of the SCS 122 repeats the processing from step S804 to step S807, step S809, and step S810.

一方、次のヘッダブロックが存在しない場合には、SCS122のROM更新モードスレッドはステップS808に進む。つまり、すべてのヘッダブロックのモジュールIDについての更新データの選定が終了したら、SCS122のROM更新モードスレッドはROM更新部430を起動してROM更新命令を発行し、更新対象の変数を引き渡す。   On the other hand, if there is no next header block, the ROM update mode thread of the SCS 122 proceeds to step S808. In other words, when selection of update data for the module IDs of all header blocks is completed, the ROM update mode thread of the SCS 122 activates the ROM update unit 430, issues a ROM update command, and delivers a variable to be updated.

一方、SRAM208に更新情報が存在しない場合には、ROM更新部430はステップS811に進み、SCS122のROM更新モードスレッドは、まずフラッシュROM204の最初のヘッダブロックを参照する。ステップS811に続いてステップS812に進み、SCS122のROM更新モードスレッドはヘッダブロックからモジュールIDを取得する。   On the other hand, if there is no update information in the SRAM 208, the ROM update unit 430 proceeds to step S811, and the ROM update mode thread of the SCS 122 first refers to the first header block of the flash ROM 204. Progressing to step S812 following step S811, the ROM update mode thread of the SCS 122 acquires the module ID from the header block.

ステップS812に続いてステップS813に進み、SCS122のROM更新モードスレッドはヘッダブロックから取得したモジュールIDが環境変数の中のコントロールサービスまたはアプリに相当するか否かを判断する。   Progressing to step S813 following step S812, the ROM update mode thread of the SCS 122 determines whether the module ID acquired from the header block corresponds to the control service or application in the environment variable.

ヘッダブロックから取得したモジュールIDが、環境変数の中のコントロールサービスまたはアプリに相当する場合には、SCS122のROM更新モードスレッドはステップS814に進む。   If the module ID acquired from the header block corresponds to the control service or application in the environment variable, the ROM update mode thread of the SCS 122 proceeds to step S814.

ステップS814では、SCS122のROM更新モードスレッドが、そのモジュールIDの更新データを選定し、さらにヘッダブロックから更新先アドレス、更新データオフセット、更新データサイズを取得する。   In step S814, the ROM update mode thread of the SCS 122 selects the update data of the module ID, and acquires the update destination address, update data offset, and update data size from the header block.

ステップS814に続いてステップS815に進み、SCS122のROM更新モードスレッドはモジュールID、更新先アドレス、更新データオフセット、更新データサイズを一組とした更新情報を「更新対象」の変数等に設定し、ステップS816に進む。   Progressing to step S815 following step S814, the ROM update mode thread of the SCS 122 sets update information including a module ID, an update destination address, an update data offset, and an update data size as a variable of “update target”, and the like. The process proceeds to step S816.

一方、ステップS813において、ヘッダブロックから取得したモジュールIDが、環境変数の中のコントロールサービスまたはアプリに相当しない場合には、SCS122のROM更新モードスレッドは取得したモジュールIDの更新データを選定せず、ステップS816に進む。つまり、SCS122のROM更新モードスレッドはステップS814およびS815の処理は行わない。   On the other hand, in step S813, if the module ID acquired from the header block does not correspond to the control service or application in the environment variable, the ROM update mode thread of the SCS 122 does not select the update data of the acquired module ID, The process proceeds to step S816. That is, the ROM update mode thread of the SCS 122 does not perform the processes of steps S814 and S815.

ステップS816では、SCS122のROM更新モードスレッドが、次ヘッダブロックオフセットを参照することにより、次のヘッダブロックが存在するか否かを判断する。次のヘッダブロックが存在する場合には、SCS122のROM更新モードスレッドはステップS817に進み、次のヘッダブロックを参照する。そして、SCS122のROM更新モードスレッドはステップS812からステップS817までの処理を繰り返し行う。   In step S816, the ROM update mode thread of the SCS 122 determines whether there is a next header block by referring to the next header block offset. If the next header block exists, the ROM update mode thread of the SCS 122 proceeds to step S817 and refers to the next header block. Then, the ROM update mode thread of the SCS 122 repeats the processing from step S812 to step S817.

一方、次のヘッダブロックが存在しない場合には、SCS122のROM更新モードスレッドはステップS818に進む。つまり、すべてのヘッダブロックのモジュールIDについての更新データの選定が終了したら、SCS122のROM更新モードスレッドはROM更新部430を起動してROM更新命令を発行し、更新対象の変数を引き渡す。   On the other hand, if there is no next header block, the ROM update mode thread of the SCS 122 proceeds to step S818. In other words, when selection of update data for the module IDs of all header blocks is completed, the ROM update mode thread of the SCS 122 activates the ROM update unit 430, issues a ROM update command, and delivers a variable to be updated.

これにより、リモートホストから提供される更新データの中から、複合機100内に存在するモジュールの更新データが選定されることになる。   Thereby, the update data of the module existing in the multi-function device 100 is selected from the update data provided from the remote host.

図10は、実施の形態1の複合機100において、ROM更新部430で実行されるROM更新処理の手順を示すフローチャートである。   FIG. 10 is a flowchart illustrating a procedure of ROM update processing executed by the ROM update unit 430 in the multi-function device 100 according to the first embodiment.

ステップS902では、ROM更新部430が、SCS122から受け渡された更新対象の変数から最初の組の更新情報(モジュールID、バージョン情報、更新先アドレス、更新データオフセットおよび更新データサイズ)をSRAM208に格納してステップS903に進む。ステップS902の処理により、更新処理がエラー発生によって中断した場合でも、次回の起動後に図5(b)のステップS504以降の処理を再実行することができる。   In step S902, the ROM update unit 430 stores, in the SRAM 208, the first set of update information (module ID, version information, update destination address, update data offset, and update data size) from the update target variable received from the SCS 122. Then, the process proceeds to step S903. Even if the update process is interrupted due to the occurrence of an error by the process in step S902, the process after step S504 in FIG. 5B can be re-executed after the next activation.

ステップS903では、ROM更新部430が、SDRAM203の先頭アドレスから更新データオフセットで示されるアドレスから更新データサイズ分のデータを更新データとして読み出し、この更新データでフラッシュROM204上の更新先アドレスから始まるモジュールを更新する。   In step S903, the ROM update unit 430 reads data for the update data size from the address indicated by the update data offset from the start address of the SDRAM 203 as update data, and uses this update data to start the module starting from the update destination address on the flash ROM 204. Update.

ステップS903に続いてステップS904に進み、ROM更新部430はSDRAM203の更新データと、ステップS903で更新したフラッシュROM204上のモジュールのデータとを比較して同一か否かのチェックを行う。同一でない場合には、ROM変換部430はステップS905に進み、更新処理が失敗した旨のエラーを表示してステップS903に進む。ROM変換部430は、再度更新処理を行う。更新データと更新したモジュールのデータとが同一である場合には、ROM変換部430は更新処理が成功したと判断し、ステップS906に進む。   Progressing to step S904 following step S903, the ROM update unit 430 compares the update data in the SDRAM 203 with the module data on the flash ROM 204 updated in step S903 to check whether they are the same. If they are not the same, the ROM conversion unit 430 proceeds to step S905, displays an error indicating that the update process has failed, and proceeds to step S903. The ROM conversion unit 430 performs update processing again. If the update data and the updated module data are the same, the ROM conversion unit 430 determines that the update process has been successful, and the process advances to step S906.

ステップS906では、ROM変換部430が、更新対象の変数に、次の更新情報の組が存在するか否かを判断する。存在する場合には、ROM変換部430はステップS902に進み、次の更新情報に対して、ステップS902からS905までの処理を行う。つまり、ROM変換部430はSCS122から引き渡されたすべての更新情報に対してステップS902からステップS906の処理を繰り返す。   In step S906, the ROM conversion unit 430 determines whether or not the next set of update information exists in the update target variable. If it exists, the ROM conversion unit 430 proceeds to step S902, and performs the processing from step S902 to S905 for the next update information. That is, the ROM conversion unit 430 repeats the processing from step S902 to step S906 for all the update information delivered from the SCS 122.

次の更新情報の組が存在しない場合には、ROM変換部430はステップS907に進み、SRAM208をクリアしてROM更新処理を終了する。つまり、ROM変換部430はSCS122から引き渡されたすべての更新対象のモジュールの更新が終了したら、SRAM208をクリアしてROM更新処理を終了する。   If the next set of update information does not exist, the ROM conversion unit 430 proceeds to step S907, clears the SRAM 208, and ends the ROM update process. That is, when the update of all the update target modules delivered from the SCS 122 is completed, the ROM conversion unit 430 clears the SRAM 208 and ends the ROM update process.

このように実施の形態1の複合機100では、NCS128によってネットワーク271経由でROM更新要求パケット、ついで更新データパケットを受信し、ROM更新部430によって更新データでフラッシュROM204上のプログラムを更新しているので、フラッシュカードなどを用いずにROM更新をいつでも行うことができる。   As described above, in the MFP 100 according to the first embodiment, the ROM update request packet and then the update data packet are received by the NCS 128 via the network 271, and the ROM update unit 430 updates the program on the flash ROM 204 with the update data. Therefore, ROM update can be performed at any time without using a flash card or the like.

また、実施の形態1の複合機100では、NCS128がROM更新要求を受信したときに、複合機100をROM更新モードで再起動して、プログラム起動部420で複合機100上で動作するすべてのコントロールサービスを起動し、SCS122のROM更新モードスレッドで起動されたコントロールサービスおよび起動可能なアプリを判断して構成に応じた更新データを選定し、選定された更新データでフラッシュROM204上のプログラムを更新しているので、複合機100上で動作するコントロールサービスやアプリケーションの構成に最適なROM更新を正確に行うことができる。   In the multifunction device 100 according to the first embodiment, when the NCS 128 receives the ROM update request, the multifunction device 100 is restarted in the ROM update mode, and all the programs operating on the multifunction device 100 are operated by the program activation unit 420. Start the control service, determine the control service and the application that can be started by the ROM update mode thread of the SCS 122, select the update data according to the configuration, and update the program on the flash ROM 204 with the selected update data Therefore, it is possible to accurately update the ROM that is optimal for the configuration of the control service and application that operates on the multifunction peripheral 100.

さらに、実施の形態1の複合機100では、SCS122、MCS125などのコントロールサービスのプロセスは、すべて複合サービスを行う通常モードスレッドとは別にROM更新処理に関するROM更新モードスレッドを有し、ROM更新の際にはROM更新モードスレッドのみを起動しているので、ROM更新処理中に、複合サービスの機能が実行されて更新処理が中断されることを防止して、ROM更新処理を迅速に行うことができる。
(実施の形態2)
実施の形態1の複合機100におけるROM更新処理は複合機100の機種ごとに更新データを用意したものではないため、ネットワーク上の複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなどが、契約相手ごとに複合機100の機種を把握しておき、機種ごとに個別の更新データパケットを契約相手の複合機100に送信する必要がある。
Further, in the MFP 100 according to the first embodiment, the control service processes such as the SCS 122 and the MCS 125 all have a ROM update mode thread related to the ROM update process in addition to the normal mode thread that performs the composite service. Since only the ROM update mode thread is activated, it is possible to prevent the update process from being interrupted by executing the function of the composite service during the ROM update process, and to perform the ROM update process quickly. .
(Embodiment 2)
Since the ROM update processing in the multifunction peripheral 100 according to the first embodiment does not prepare update data for each model of the multifunction peripheral 100, the host computer of the multifunction peripheral developer and the third vendor host computer of the application developer on the network. However, it is necessary to know the model of the multifunction device 100 for each contract partner and to transmit an individual update data packet for each model to the multifunction device 100 of the contract partner.

そこで、この実施の形態2の複合機100では、一つの更新データパケットで複数の機種のROM更新処理を行う。実施の形態2にかかる複合機100の機能的構成およびハードウェア構成は、図1および図2に示した実施の形態1の複合機100と同様であるので説明を省略する。   Therefore, the MFP 100 of the second embodiment performs ROM update processing for a plurality of models with one update data packet. The functional configuration and hardware configuration of the multifunction peripheral 100 according to the second embodiment are the same as those of the multifunction peripheral 100 according to the first embodiment shown in FIGS.

図11は、実施の形態2の複合機100で受信される更新データパケットを展開したデータの構造図である。更新データパケットは、実施の形態1と同様に、先頭のROMモニタ起動命令1001と、ヘッダ部1002と、データ部1003とから構成される。   FIG. 11 is a structure diagram of data obtained by developing an update data packet received by the multi-function device 100 according to the second embodiment. As in the first embodiment, the update data packet includes a head ROM monitor activation instruction 1001, a header part 1002, and a data part 1003.

実施の形態2における更新データパケットのデータ構造が実施の形態1におけるデータ構造と異なる点は、ヘッダ部1002において一つの更新データに対して複数の機種識別情報、複数の更新先アドレスおよび複数の更新先領域長がある点である。   The data structure of the update data packet in the second embodiment is different from the data structure in the first embodiment in that the header unit 1002 has a plurality of model identification information, a plurality of update destination addresses, and a plurality of updates for one update data. There is a point with the length of the tip area.

すなわち、複数の機種の複合機100に共通するモジュールに対して、共通する更新データで更新を行う場合には、更新データパケットに、更新対象となるすべての複合機100の機種識別情報、その機種におけるフラッシュROM204上の更新先アドレスおよび更新先領域長をヘッダブロックに登録した構造となっている。   That is, when updating a module common to a plurality of types of multifunction peripherals 100 with common update data, the model identification information of all the multifunction peripherals 100 to be updated, the model, are included in the update data packet. The update destination address and the update destination area length on the flash ROM 204 are registered in the header block.

実施の形態2の複合機100における複合機起動部140は、実施の形態1と同様に、ROMモニタ410と、プログラム起動部420と、SCS122のROM更新モードスレッドと、ROM更新部430とから構成される。ROMモニタ410は本発明における機種情報取得手段を、プログラム起動部420は本発明におけるプログラム起動手段を、SCS122は本発明の更新データ選定手段を、ROM更新部430は本発明における更新手段をそれぞれ構成する。   As in the first embodiment, the multifunction device activation unit 140 in the multifunction device 100 according to the second embodiment includes a ROM monitor 410, a program activation unit 420, a ROM update mode thread of the SCS 122, and a ROM update unit 430. Is done. The ROM monitor 410 constitutes the model information acquisition means in the present invention, the program activation section 420 constitutes the program activation means in the present invention, the SCS 122 constitutes the update data selection means in the present invention, and the ROM update section 430 constitutes the update means in the present invention. To do.

実施の形態2の複合機100におけるプログラム起動部420とROM更新部430は、実施の形態1の複合機100の場合と同様の構成であるので説明を省略する。   The program activation unit 420 and the ROM update unit 430 in the MFP 100 according to the second embodiment have the same configuration as that of the MFP 100 according to the first embodiment, and thus description thereof is omitted.

ROMモニタ410は、実施の形態1におけるROMモニタと同様に、ハードウェアの初期化、コントローラボード200の診断、ソフトウェアの初期化、汎用OSの起動などを行う他、さらに複合機100の機種識別情報を取得する。   Similar to the ROM monitor in the first embodiment, the ROM monitor 410 initializes hardware, diagnoses the controller board 200, initializes software, and starts a general-purpose OS. To get.

次にこのように構成された複合機100におけるROM更新処理について説明する。ROM更新の全体の処理手順は図5に示した実施の形態1の複合機100の場合と同様である。   Next, ROM update processing in the MFP 100 configured as described above will be described. The entire processing procedure of the ROM update is the same as that of the MFP 100 of the first embodiment shown in FIG.

図12は、実施の形態2の複合機100において、ROMモニタ410で実行される処理の手順を示すフローチャートである。ステップS1101では、ROMモニタ410が、実施の形態1と同様に、ハードウェアの初期化を行う。ステップS1101に続いてステップS1102に進み、ROMモニタ410はコントローラボードの診断処理を行う。ステップS1102に続いてステップS1103に進み、ROMモニタ410はソフトウェアの初期化処理を行う。   FIG. 12 is a flowchart illustrating a procedure of processes executed by the ROM monitor 410 in the multifunction machine 100 according to the second embodiment. In step S1101, the ROM monitor 410 initializes hardware as in the first embodiment. Progressing to step S1102 following step S1101, the ROM monitor 410 performs a controller board diagnosis process. Progressing to step S1103 following step S1102, the ROM monitor 410 performs software initialization processing.

ステップS1103に続いてステップS1104に進み、ROMモニタ410は複合機100のフラッシュROM204に記録されている機種識別情報を取得する。機種識別情報とは、複合機の機種を特定するものであり、機種ごとに固有のデータとなっている。そして、ステップS1104に続いてステップS1105に進み、ROMモニタ410は汎用OS121を起動する。   Progressing to step S1104 following step S1103, the ROM monitor 410 acquires the model identification information recorded in the flash ROM 204 of the multi-function device 100. The model identification information is used to identify the model of the multifunction machine, and is unique data for each model. In step S1105 following step S1104, the ROM monitor 410 activates the general-purpose OS 121.

この後、実施の形態2の複合機100では実施の形態1と同様に、プログラム起動部420によってコントロールサービスの起動を行い、起動されたSCS122のROM更新モードスレッドによって次の処理を行う。   Thereafter, in the MFP 100 of the second embodiment, the control service is activated by the program activation unit 420 as in the first embodiment, and the following processing is performed by the ROM update mode thread of the activated SCS 122.

図13は、実施の形態2の複合機において、SCS122のROM更新モードスレッドで実行される更新データ選定処理の手順を示すフローチャートである。ステップS1201では、SCS122のROM更新モードスレッドが、実施の形態1と同様に、SDRAM203の先頭のヘッダブロックを参照する。ステップS1201に続いてステップS1202に進み、SCS122のROM更新モードスレッドはヘッダブロックからモジュールIDを取得する。   FIG. 13 is a flowchart showing a procedure of update data selection processing executed by the ROM update mode thread of the SCS 122 in the multifunction machine of the second embodiment. In step S1201, the ROM update mode thread of the SCS 122 refers to the header block at the top of the SDRAM 203 as in the first embodiment. Progressing to step S1202 following step S1201, the ROM update mode thread of the SCS 122 acquires the module ID from the header block.

ステップS1202に続いてステップS1203に進み、SCS122のROM更新モードスレッドは取得したモジュールIDが、プログラム起動部420から受け渡された環境変数のコントロールサービス起動情報およびアプリ起動情報にあるコントロールサービスまたはアプリのモジュールに該当するか否かをチェックする。   Progressing to step S1203 following step S1202, the ROM update mode thread of the SCS 122 obtains the module ID of the control service or application in the environment variable control service activation information and application activation information passed from the program activation unit 420. Check if it is applicable to the module.

取得したモジュールIDが、複合機100内部で動作するコントロールサービスまたはアプリに該当する場合には、SCS122のROM更新モードスレッドはステップS1204に進み、さらにROMモニタ410で取得した複合機100の機種識別情報が現在のモジュールIDのあるヘッダブロック内に登録されている機種識別情報に存在するか否かをチェックする。   If the acquired module ID corresponds to a control service or application that operates in the multifunction peripheral 100, the ROM update mode thread of the SCS 122 proceeds to step S1204, and the model identification information of the multifunction peripheral 100 acquired by the ROM monitor 410 is further acquired. Is present in the model identification information registered in the header block having the current module ID.

取得した機種識別情報がヘッダブロック内に存在する場合には、SCS122のROM更新モードスレッドはステップS1205に進み、そのヘッダブロックのモジュールIDの更新データを選定し、さらにヘッダブロックから更新先アドレス、更新データオフセット、更新データサイズを取得する。   If the acquired model identification information exists in the header block, the ROM update mode thread of the SCS 122 proceeds to step S1205, selects update data of the module ID of the header block, and further updates the update destination address and update from the header block. Get data offset and update data size.

そして、ステップS1205に続いてステップS1206に進み、SCS122のROM更新モードスレッドは、このモジュールID、更新先アドレス、更新データオフセット、更新データサイズを一組の更新情報として「更新対象」の変数等に設定する。   In step S1206 following step S1205, the ROM update mode thread of the SCS 122 sets the module ID, update destination address, update data offset, and update data size as a set of update information in the “update target” variable or the like. Set.

一方、SCS122のROM更新モードスレッドは、取得したモジュールIDが複合機100内部で動作するコントロールサービスまたはアプリに該当しない場合または取得した機種識別情報がヘッダブロック内に存在しない場合には、ステップS1207に進む。つまり、取得したモジュールIDが複合機100内部で動作するコントロールサービスまたはアプリに該当しない場合または取得した機種識別情報がヘッダブロック内に存在しない場合には、現在のモジュールIDに対応する更新データは選定せず、ステップS1204からステップS1206の処理は行わない。   On the other hand, if the acquired module ID does not correspond to a control service or application operating in the multifunction peripheral 100 or if the acquired model identification information does not exist in the header block, the ROM update mode thread of the SCS 122 proceeds to step S1207. move on. That is, if the acquired module ID does not correspond to a control service or application that operates in the multifunction peripheral 100 or if the acquired model identification information does not exist in the header block, the update data corresponding to the current module ID is selected. Without processing, the processing from step S1204 to step S1206 is not performed.

ついで、ステップS1207では、実施の形態1と同様に、SCS122のROM更新モードスレッドが、次のヘッダブロックが有るか否かを判断する。次のヘッダブロックが存在する場合には、SCS122のROM更新モジュールはステップS1208に進み、次のヘッダブロックを参照する。そして、SCS122のROM更新モジュールはステップS1202からステップS1207までの処理を繰り返し行う。   In step S1207, as in the first embodiment, the ROM update mode thread of the SCS 122 determines whether there is a next header block. If there is a next header block, the ROM update module of the SCS 122 proceeds to step S1208 and refers to the next header block. Then, the ROM update module of the SCS 122 repeats the processing from step S1202 to step S1207.

一方、次のヘッダブロックが存在しない場合には、SCS122のROM更新モジュールはステップS1209に進む。つまり、すべてのヘッダブロックのモジュールIDについて、更新データの選定が終了したら、SCS122のROM更新モジュールはROM更新部430を起動してROM更新命令を発行し、更新対象の変数を引き渡す。   On the other hand, if the next header block does not exist, the ROM update module of the SCS 122 proceeds to step S1209. In other words, when selection of update data is completed for all the header block module IDs, the ROM update module of the SCS 122 activates the ROM update unit 430, issues a ROM update command, and delivers a variable to be updated.

これにより、リモートホストから提供される更新データの中から、複合機100の機種に応じて複合機100内部に存在するモジュールの更新データのみが選定される。   Thereby, only the update data of the module existing in the multifunction peripheral 100 is selected from the update data provided from the remote host according to the model of the multifunction peripheral 100.

このSCS122による更新データ選定処理の後、ROM更新部430によってROM更新処理が行われるが、このROM更新処理は、実施の形態1の複合機100の場合と同様であるので説明を省略する。   After the update data selection processing by the SCS 122, ROM update processing is performed by the ROM update unit 430. Since this ROM update processing is the same as that of the multi-function device 100 of the first embodiment, description thereof is omitted.

このように実施の形態2の複合機100では、SCS122のROM更新モードスレッドが、受信した更新データパケットに含まれるプログラムのモジュールIDと、コントロールサービスまたは各アプリの起動情報と、モジュールIDごとの機種識別情報と、ROMモニタ410で取得した機種情報とに基づいて、更新データを選定している。   As described above, in the MFP 100 according to the second embodiment, the ROM update mode thread of the SCS 122 has the module ID of the program included in the received update data packet, the activation information of the control service or each application, and the model for each module ID. Update data is selected based on the identification information and the model information acquired by the ROM monitor 410.

したがって、実施の形態2の複合機100では、複合機100の機種により動作可能なコントロールサービスやアプリケーションの配置が異なっている場合でも、一つの更新データパケットを複数機種の複合機100のROM更新に使用することができ、機種の相違により不要なデータでROM更新を行ってしまうことが防止され、複合機100の構成に最適なROM更新を行える。   Therefore, in the MFP 100 according to the second embodiment, even when the control service and the application arrangement that can be operated vary depending on the model of the MFP 100, one update data packet is used to update the ROM of the MFP 100 of a plurality of models. It can be used, and it is prevented that the ROM is updated with unnecessary data due to the difference in model, and the ROM can be updated optimally for the configuration of the multifunction device 100.

また、実施の形態2の複合機100では、更新データパケットを送信する複合機開発元アプリケーション開発元のサードベンダも、契約した複合機100ごとに個別の更新データパケットを送信する必要がなく、送信側にとってもROM更新作業が容易に行える。   In the MFP 100 according to the second embodiment, the third vendor of the MFP developer application developer that transmits the update data packet does not need to transmit an individual update data packet for each MFP 100 that has contracted. The ROM can be easily updated for the user.

なお、実施の形態1および2の複合機100では、NCS128がROM更新要求パケットを受信したときに、SCS122の通常モードスレッドが複合機100の再起動コマンドを発行して、複合機100を自動的に再起動しているが、SCS122によりROM更新フラグをONに設定した後、複合機100の電源OFFおよび電源再投入により作業者が手動で複合機100を再起動させるように構成してもよい。
(実施の形態3)
実施の形態1および2の複合機100は、ネットワーク271経由でROM更新要求パケットを受信したときに、複合機100をROM更新モードで再起動させてから、ROM更新処理を行うものである。
In the MFP 100 according to the first and second embodiments, when the NCS 128 receives the ROM update request packet, the normal mode thread of the SCS 122 issues a restart command for the MFP 100 to automatically start the MFP 100. However, after the ROM update flag is set to ON by the SCS 122, the MFP 100 may be configured to be manually restarted by turning off the MFP 100 and turning it on again. .
(Embodiment 3)
When the MFP 100 according to the first and second embodiments receives a ROM update request packet via the network 271, the MFP 100 restarts the MFP 100 in the ROM update mode and then performs the ROM update process.

そこで、この実施の形態3の複合機100では、ROM更新要求パケットを受信したときに複合機100を再起動せずに、各コントロールサービスの通常モードスレッドを動的にROM更新モードスレッドに切り替えてROM更新処理を行う。   Therefore, in the MFP 100 according to the third embodiment, the normal mode thread of each control service is dynamically switched to the ROM update mode thread without restarting the MFP 100 when the ROM update request packet is received. ROM update processing is performed.

実施の形態3にかかる複合機100の機能的構成およびハードウェア構成は、図1および図2に示した実施の形態1の複合機100と同様であるので説明を省略する。また、更新データパケットを展開したデータの構造も、図3に示した実施の形態1の複合機100で受信される更新データパケットと同様であるので説明を省略する。   The functional configuration and hardware configuration of the multifunction peripheral 100 according to the third embodiment are the same as those of the multifunction peripheral 100 according to the first embodiment shown in FIGS. The structure of the data obtained by developing the update data packet is the same as that of the update data packet received by the MFP 100 of the first embodiment shown in FIG.

実施の形態3にかかる複合機100では、コピーアプリ112、ファックスアプリ113、プリンタアプリ111、スキャナアプリ114およびネットファイルアプリ115の各アプリケーション130は、実施の形態1および2の複合機100と同様の複合サービスを行うが、この複合サービスを行う際に実行される通常モードスレッドと、ROM更新処理時に単に起動されるだけで複合サービスに関する処理を停止したROM更新モードスレッドを有している。   In the MFP 100 according to the third embodiment, each application 130 of the copy application 112, the fax application 113, the printer application 111, the scanner application 114, and the net file application 115 is the same as that of the MFP 100 according to the first and second embodiments. The composite service is performed, and has a normal mode thread that is executed when the composite service is performed, and a ROM update mode thread that is simply activated during the ROM update process and stops processing related to the composite service.

また、実施の形態3の複合機100におけるRRUアプリ117は、NCS128がROM更新要求パケットを受信したときに、SCS122の通常モードスレッドによって起動されるようになっている。   Further, the RRU application 117 in the MFP 100 according to the third embodiment is activated by the normal mode thread of the SCS 122 when the NCS 128 receives the ROM update request packet.

また、実施の形態3の複合機100におけるSCS122の通常モードスレッドは、実施の形態1および2と異なり、NCS128がROM更新要求パケットを受信した場合でも、複合機100の再起動コマンドを発行およびSRAM208のROM更新フラグをONに設定する処理は行わない。その代わりに、SCS122の通常モードスレッドは、RRUアプリ117を起動し、さらにコピーアプリ112、ファックスアプリ113、プリンタアプリ111、スキャナアプリ114およびネットファイルアプリ115の各アプリケーション130および他のコントロールサービスに対して、通常モードスレッドを停止して、ROM更新モードスレッドのみの起動要求を行うようになっている。   Further, unlike the first and second embodiments, the normal mode thread of the SCS 122 in the multifunction device 100 of the third embodiment issues a restart command for the multifunction device 100 and the SRAM 208 even when the NCS 128 receives a ROM update request packet. The process of setting the ROM update flag to ON is not performed. Instead, the normal mode thread of the SCS 122 activates the RRU application 117, and in addition to each application 130 of the copy application 112, the fax application 113, the printer application 111, the scanner application 114, and the net file application 115 and other control services. Thus, the normal mode thread is stopped and only the ROM update mode thread is requested to be activated.

次に、実施の形態3の複合機100によるROM更新処理について説明する。図14は、実施の形態3の複合機100におけるROM更新の全体の処理手順を示すフローチャートである。図14(a)は、複合機100がROM更新要求を受信したときの動作を示し、図14(b)は複合機100がROM更新要求の受信後にROM更新モードに移行した状態を示し、図14(c)は更新データパケットを受信したときの動作を示す。   Next, ROM update processing by the multifunction peripheral 100 according to the third embodiment will be described. FIG. 14 is a flowchart illustrating the entire processing procedure of ROM update in the multifunction peripheral 100 according to the third embodiment. 14A shows the operation when the multifunction device 100 receives a ROM update request, and FIG. 14B shows the state in which the multifunction device 100 has shifted to the ROM update mode after receiving the ROM update request. 14 (c) shows the operation when an update data packet is received.

図14(a)において、複合機100が通常の複合サービスの動作を実行しているときは、各アプリ、各コントロールサービスがいずれも通常モードスレッドを実行している。   In FIG. 14A, when the multifunction peripheral 100 is executing a normal composite service operation, each application and each control service is executing a normal mode thread.

この状態で、ネットワーク経由で複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなどのリモートホストからROM更新要求パケットが送信されてくると、NCS128の通常モードスレッドはステップS1301に進み、そのROM更新要求パケットを受信する。   In this state, when a ROM update request packet is transmitted from the remote host such as the host computer of the multifunction device developer or the third vendor host computer of the application developer via the network, the normal mode thread of the NCS 128 proceeds to step S1301. The ROM update request packet is received.

ステップS1302では、NCS128の通常モードスレッドが、受信したパケットの内容を判断して、ROM更新要求パケットであった場合には、ROM更新要求がある旨をSCS122へ通知する。   In step S1302, the normal mode thread of the NCS 128 determines the content of the received packet, and if it is a ROM update request packet, notifies the SCS 122 that there is a ROM update request.

ステップS1303では、SCS122が、ROM更新要求がある旨の通知を受信すると、現在動作中のすべてのアプリケーションに対して、通常モードスレッドの停止およびROM更新モードスレッドの起動要求を行う。ステップS1304では、SCS122が、ROM更新要求がある旨の通知を受信すると、現在動作中のすべてのコントロールサービスおよびSRM123に対して、通常モードスレッドの停止およびROM更新モードスレッドの起動要求を行う。さらに、SCS122の通常モードスレッドは、RRUアプリ117を起動し、またSCS122自身のROM更新モードスレッドを起動する。   In step S1303, when the SCS 122 receives a notification that there is a ROM update request, the SCS 122 issues a normal mode thread stop request and a ROM update mode thread start request to all currently operating applications. In step S1304, when the SCS 122 receives a notification that there is a ROM update request, it makes a normal mode thread stop request and a ROM update mode thread start request to all currently operating control services and the SRM 123. Further, the normal mode thread of the SCS 122 activates the RRU application 117 and activates the ROM update mode thread of the SCS 122 itself.

通常モードスレッドの停止およびROM更新モードスレッドの起動要求を受け取ったすべてのアプリケーション、すべてのコントロールサービスおよびSRM123は、実行中のスレッドを通常モードスレッドからROM更新モードスレッドへ切り替える。これにより、複合機100は、複合サービスの機能が停止して通常モードからROM更新可能な状態であるROM更新モードへ移行する。   All applications, all control services, and the SRM 123 that have received the request to stop the normal mode thread and start the ROM update mode thread switch the running thread from the normal mode thread to the ROM update mode thread. As a result, the multifunction peripheral 100 shifts from the normal mode to the ROM update mode in which the ROM can be updated with the multifunction service function stopped.

図14(b)に示すように、ROM更新要求を行ったリモートホスト(複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなど)からROM更新可能状態確認パケットがネットワーク経由で複合機100に対して送信されてくる。   As shown in FIG. 14B, a ROM updateable state confirmation packet is composited via a network from a remote host (such as a host computer of a multifunction device developer or a host computer of a third vendor of an application developer) that has made a ROM update request. Sent to the machine 100.

ステップS1305では、NCS128のROM更新モードスレッドが、このROM更新可能状態確認パケットを受信する。ステップS1306では、NCS128のROM更新モードスレッドが、受信したROM更新可能状態確認パケットをRRUアプリ117へ受け渡す。   In step S1305, the ROM update mode thread of the NCS 128 receives this ROM updateable state confirmation packet. In step S1306, the ROM update mode thread of the NCS 128 delivers the received ROM updateable state confirmation packet to the RRU application 117.

このとき、すでに複合機100はROM更新モードへ移行した状態となっているので、ROM更新可能な状態となっている。ステップS1307では、RRUアプリ117が、ROM更新可能状態確認パケットに対する応答メッセージとしてリモートROM更新可能のメッセージをNCS128へ送信する。ステップS1308では、NCS128のROM更新モードスレッドが、リモートROM更新可能のメッセージをネットワーク271経由でROM更新可能状態確認パケットの送信元であるリモートホストへ送信する。   At this time, since the MFP 100 has already entered the ROM update mode, the ROM can be updated. In step S1307, the RRU application 117 transmits a message indicating that the remote ROM can be updated to the NCS 128 as a response message to the ROM updateable state confirmation packet. In step S1308, the ROM update mode thread of the NCS 128 transmits a message indicating that the remote ROM can be updated to the remote host that is the transmission source of the ROM updateable state confirmation packet via the network 271.

NCS122がROM更新可能状態確認に対する応答をリモートホストへ送信すると、図14(c)に示すように、リモートホストから更新データパケットが送信されてくる。このため、ステップS1309では、複合機100が、NCS128のROM更新モードスレッドで更新データパケットを受信する。ステップS1310では、NCS128のROM更新モードスレッドが、受信した更新データパケットをRRUアプリ117へ受け渡す。   When the NCS 122 transmits a response to the ROM updateable state confirmation to the remote host, an update data packet is transmitted from the remote host as shown in FIG. Therefore, in step S1309, the multi-function device 100 receives an update data packet using the ROM update mode thread of the NCS 128. In step S 1310, the ROM update mode thread of the NCS 128 delivers the received update data packet to the RRU application 117.

ステップS1311では、RRUアプリ117が、更新データパケットを展開したデータに必要な領域を得るために、MCS125に対して、SDRAM203上に更新データ領域の確保を要求する。ステップS1312では、確保要求を受けたMCS125のROM更新モードスレッドが、SDRAM203上に更新データ領域を確保して、その領域の先頭アドレスと確保した領域サイズとをRRUアプリ117に返す。   In step S1311, the RRU application 117 requests the MCS 125 to secure an update data area on the SDRAM 203 in order to obtain an area necessary for data obtained by developing the update data packet. In step S1312, the ROM update mode thread of the MCS 125 that has received the reservation request secures an update data area on the SDRAM 203, and returns the start address of the area and the secured area size to the RRU application 117.

RRUアプリ117では、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新パケットデータを、MCS125のROM更新モードスレッドから通知された領域の先頭アドレスから展開する。これにより、SDRAM203の更新データ領域には前述した図3に示した構造のデータが格納される。   The RRU application 117 expands the update packet data obtained by removing the network information and decompressing the compressed data from the start address of the area notified from the ROM update mode thread of the MCS 125. As a result, the data having the structure shown in FIG. 3 is stored in the update data area of the SDRAM 203.

ステップS1313では、RRUアプリ117が、更新データパケットを展開したSDRAM203上の領域の先頭アドレスを、SCS122へ通知する。これにより、SCS122のROM更新モードスレッドで更新データの選定処理が行われる。   In step S1313, the RRU application 117 notifies the SCS 122 of the start address of the area on the SDRAM 203 where the update data packet is expanded. As a result, update data selection processing is performed in the ROM update mode thread of the SCS 122.

これ以降の、SCS122による更新データの選定処理およびROM更新部430によるフラッシュROM204上のプログラムの更新処理は、実施の形態1にかかる複合機100と同様であるので説明を省略する。   Subsequent update data selection processing by the SCS 122 and update processing of the program on the flash ROM 204 by the ROM update unit 430 are the same as those of the multi-function device 100 according to the first embodiment, and thus description thereof is omitted.

このように実施の形態3の複合機100では、NCS122がROM更新要求パケットを受信したときに、SCS122の指令によって、すべてのアプリケーション130、すべてのコントロールサービスおよびSRM123が通常モードスレッドを停止してROM更新モードスレッドを起動している。   As described above, in the MFP 100 according to the third embodiment, when the NCS 122 receives the ROM update request packet, all the applications 130, all the control services, and the SRM 123 stop the normal mode thread according to the command of the SCS 122. The update mode thread is running.

したがって、実施の形態3の複合機100では、切り替え時間の速いスレッドの切り替えで複合サービスの機能を停止してROM更新モードへ移行することができ、複合機100を再起動させたり、切り替え時間の遅いプロセスの切り替えを行う場合に比べ、ROM更新要求があった場合に迅速に対応してROM更新を行うことができる。   Therefore, in the MFP 100 according to the third embodiment, the function of the MFP service can be stopped by switching to a thread with a fast switching time, and the ROM update mode can be entered. Compared with the case where the slow process is switched, it is possible to update the ROM more quickly when there is a ROM update request.

なお、実施の形態3にかかる複合機100では、コントロールサービス、アプリケーションへのROM更新モードスレッドの起動要求をSCS122で行っているが、プログラム起動部420や他のプロセスで実現するように構成しても良い。   In the MFP 100 according to the third embodiment, the SCS 122 issues a ROM update mode thread activation request to the control service and application. However, the MFP 100 is configured to be realized by the program activation unit 420 and other processes. Also good.

以上説明した実施の形態1〜3にかかる複合機100では、ネットワーク271経由でROM更新要求パケットを受信した後に、更新データパケットを受信することとしているが、ROM更新要求パケットが送信されずに、いきなり更新データパケットを受信するようにしてもよい。   In the MFP 100 according to the first to third embodiments described above, the update data packet is received after receiving the ROM update request packet via the network 271, but the ROM update request packet is not transmitted. You may make it receive an update data packet suddenly.

いきなり更新データパケットを受信するようにした場合には、この更新データパケットをROM更新要求とみなし、更新データパケットをSRAM208の不揮発性メモリに格納した後、SCS122によって複合機100を再起動させることで、同様の処理を行うように構成してもよい。   When an update data packet is suddenly received, the update data packet is regarded as a ROM update request, the update data packet is stored in the nonvolatile memory of the SRAM 208, and then the MFP 100 is restarted by the SCS 122. A similar process may be performed.

さらにこの場合、RRUアプリ117は複合機100の再起動後に起動するのではなく、更新データパケットを受信したときに、SCS122などによってRRUアプリ117を起動するとともにMCS125のROM更新モードスレッドを起動し、更新データパケットをSDRAM203に展開してから、複合機100を再起動する構成としてもよい。
(実施の形態4)
実施の形態1〜3の複合機100は、ネットワーク271経由でROM更新要求パケットを受信したときに、RRUアプリ117を起動させてROM更新処理を行うものである。
Further, in this case, the RRU application 117 is not activated after the MFP 100 is restarted, but when the update data packet is received, the RRU application 117 is activated by the SCS 122 or the like and the ROM update mode thread of the MCS 125 is activated. A configuration may be adopted in which the multifunction device 100 is restarted after the update data packet is expanded in the SDRAM 203.
(Embodiment 4)
The MFP 100 according to the first to third embodiments activates the RRU application 117 and performs ROM update processing when receiving a ROM update request packet via the network 271.

そこで、この実施の形態4の複合機100では、RRUアプリ117を複合機100の起動時など予め起動させておき、ROM更新要求パケットを受信することなく、更新データパケットを受信したときに、各コントロールサービスの通常モードスレッドを動的にROM更新モードスレッドに切り替えてROM更新処理を行う。   Therefore, in the multi-function device 100 of the fourth embodiment, when the RRU application 117 is activated in advance, such as when the multi-function device 100 is activated, and the update data packet is received without receiving the ROM update request packet, The ROM update process is performed by dynamically switching the normal mode thread of the control service to the ROM update mode thread.

実施の形態4にかかる複合機100の機能的構成およびハードウェア構成は、図1および図2に示した実施の形態1の複合機100と同様であるので説明を省略する。また、更新データパケットを展開したデータの構造も、図3に示した実施の形態1の複合機100で受信される更新データパケットと同様であるので説明を省略する。   The functional configuration and hardware configuration of the multifunction peripheral 100 according to the fourth embodiment are the same as those of the multifunction peripheral 100 according to the first embodiment shown in FIGS. The structure of the data obtained by developing the update data packet is the same as that of the update data packet received by the MFP 100 of the first embodiment shown in FIG.

実施の形態4にかかる複合機100では、コピーアプリ112、ファックスアプリ113、プリンタアプリ111、スキャナアプリ114およびネットファイルアプリ115の各アプリケーション130は、実施の形態1および2の複合機100と同様の複合サービスを行うが、この複合サービスを行う際に実行される通常モードスレッドと、ROM更新処理時に単に起動されるだけで複合サービスに関する処理を停止したROM更新モードスレッドを有している。   In the MFP 100 according to the fourth embodiment, each application 130 of the copy application 112, the fax application 113, the printer application 111, the scanner application 114, and the net file application 115 is the same as that of the MFP 100 according to the first and second embodiments. The composite service is performed, and has a normal mode thread that is executed when the composite service is performed, and a ROM update mode thread that is simply activated during the ROM update process and stops processing related to the composite service.

また、実施の形態3の複合機100におけるRRUアプリ117は、例えば複合機100の起動時に、SCS122の通常モードスレッドによって起動されるようになっている。   Further, the RRU application 117 in the MFP 100 according to the third embodiment is activated by a normal mode thread of the SCS 122 when the MFP 100 is activated, for example.

また、実施の形態4の複合機100におけるSCS122の通常モードスレッドは、実施の形態1および2と異なり、NCS128がROM更新要求パケットを受信せず、複合機100の再起動コマンドを発行およびSRAM208のROM更新フラグをONに設定する処理は行わない。   Further, unlike the first and second embodiments, the normal mode thread of the SCS 122 in the multifunction device 100 of the fourth embodiment is such that the NCS 128 does not receive the ROM update request packet, issues a restart command of the multifunction device 100, and the SRAM 208 Processing to set the ROM update flag to ON is not performed.

その代わりに、SCS122の通常モードスレッドは、コピーアプリ112、ファックスアプリ113、プリンタアプリ111、スキャナアプリ114およびネットファイルアプリ115の各アプリケーション130および他のコントロールサービスに対して、通常モードスレッドを停止して、ROM更新モードスレッドのみの起動要求を行うようになっている。   Instead, the normal mode thread of the SCS 122 stops the normal mode thread for each application 130 of the copy application 112, the fax application 113, the printer application 111, the scanner application 114, and the net file application 115 and other control services. Thus, only the ROM update mode thread is requested to be activated.

次に、実施の形態4の複合機100によるROM更新処理について説明する。図15は、実施の形態4の複合機100におけるROM更新の全体の処理手順を示すフローチャートである。図15(a)は、複合機100が更新データパケットを受信したときの動作を示し、図15(b)は複合機100が更新データパケットの受信後にROM更新モードに移行した状態を示す。   Next, ROM update processing by the multifunction peripheral 100 according to the fourth embodiment will be described. FIG. 15 is a flowchart illustrating an entire processing procedure of ROM update in the multifunction peripheral 100 according to the fourth embodiment. FIG. 15A shows an operation when the multi-function device 100 receives an update data packet, and FIG. 15B shows a state in which the multi-function device 100 shifts to the ROM update mode after receiving the update data packet.

図15(a)において、複合機100が通常の複合サービスの動作を実行しているときは、各アプリ、各コントロールサービスがいずれも通常モードスレッドを実行している。   In FIG. 15A, when the multi-function device 100 is executing a normal multi-function operation, each application and each control service is executing a normal mode thread.

この状態で、ネットワーク271経由で複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータなどのリモートホストから更新データパケットが送信されてくると、NCS128の通常モードスレッドはステップS1401に進み、その更新データパケットを受信する。   In this state, when an update data packet is transmitted from the remote host such as the host computer of the multifunction device developer or the third vendor host computer of the application developer via the network 271, the normal mode thread of the NCS 128 proceeds to step S1401. The update data packet is received.

ステップS1402では、NCS128の通常モードスレッドが、受信したパケットの内容を判断して、更新データパケットであった場合には、その更新データパケットをRRUアプリ117へ送信する。   In step S1402, the normal mode thread of the NCS 128 determines the content of the received packet, and if it is an update data packet, transmits the update data packet to the RRU application 117.

ステップS1403では、RRUアプリ117が、更新データパケットを受信すると、更新データパケットを受信した旨をSCS122に通知する。ステップS1404では、SCS122が、更新データパケットを受信した旨の通知を受信すると、現在動作中のすべてのアプリケーションに対して、通常モードスレッドの停止およびROM更新モードスレッドの起動要求を行う。   In step S1403, when the RRU application 117 receives the update data packet, the RRU application 117 notifies the SCS 122 that the update data packet has been received. In step S1404, when the SCS 122 receives the notification that the update data packet has been received, the SCS 122 issues a request for stopping the normal mode thread and starting the ROM update mode thread to all the currently operating applications.

ステップS1405では、SCS122が、更新データパケットを受信した旨の通知を受信すると、現在動作中のすべてのコントロールサービスおよびSRM123に対して、通常モードスレッドの停止およびROM更新モードスレッドの起動要求を行う。さらに、SCS122の通常モードスレッドは、RRUアプリ117を起動し、また、SCS122は自身のROM更新モードスレッドを起動する。   In step S1405, when the SCS 122 receives the notification that the update data packet has been received, the SCS 122 issues a request for stopping the normal mode thread and starting the ROM update mode thread to all the control services and the SRM 123 that are currently operating. Further, the normal mode thread of the SCS 122 activates the RRU application 117, and the SCS 122 activates its own ROM update mode thread.

通常モードスレッドの停止およびROM更新モードスレッドの起動要求を受け取ったすべてのアプリケーション、すべてのコントロールサービスおよびSRM123は、実行中のスレッドを通常モードスレッドからROM更新モードスレッドへ切り替える。これにより、複合機100は、複合サービスの機能が停止して通常モードからROM更新可能な状態であるROM更新モードへ移行する。   All applications, all control services, and the SRM 123 that have received the request to stop the normal mode thread and start the ROM update mode thread switch the running thread from the normal mode thread to the ROM update mode thread. As a result, the multifunction peripheral 100 shifts from the normal mode to the ROM update mode in which the ROM can be updated with the multifunction service function stopped.

ROM更新可能な状態であるROM更新モードへ移行すると、図15(b)に示すように、ステップS1406で、RRUアプリ117が、更新データパケットを展開したデータに必要な領域を得るために、MCS125に対して、SDRAM203上に更新データ領域の確保を要求する。ステップS1407では、確保要求を受けたMCS125のROM更新モードスレッドが、SDRAM203上に更新データ領域を確保して、その領域の先頭アドレスと確保した領域サイズとをRRUアプリ117に返す。   When the ROM update mode is entered in which the ROM can be updated, as shown in FIG. 15B, in step S1406, the RRU application 117 obtains an area necessary for the data obtained by developing the update data packet. In response to the request, an update data area is secured on the SDRAM 203. In step S 1407, the ROM update mode thread of the MCS 125 that has received the reservation request secures an update data area on the SDRAM 203 and returns the start address of the area and the secured area size to the RRU application 117.

RRUアプリ117では、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新パケットデータを、MCS125のROM更新モードスレッドから通知された領域の先頭アドレスから展開する。これにより、SDRAM203の更新データ領域には前述した図3に示した構造のデータが格納される。   The RRU application 117 expands the update packet data obtained by removing the network information and decompressing the compressed data from the start address of the area notified from the ROM update mode thread of the MCS 125. As a result, the data having the structure shown in FIG. 3 is stored in the update data area of the SDRAM 203.

ステップS1408では、RRUアプリ117が、更新データパケットを展開したSDRAM203上の領域の先頭アドレスを、SCS122へ通知する。これにより、SCS122のROM更新モードスレッドで更新データの選定処理が行われる。   In step S1408, the RRU application 117 notifies the SCS 122 of the top address of the area on the SDRAM 203 where the update data packet is expanded. As a result, update data selection processing is performed in the ROM update mode thread of the SCS 122.

これ以降の、SCS122による更新データの選定処理およびROM更新部430によるROM上のプログラムの更新処理は、実施の形態1にかかる複合機100と同様であるので説明を省略する。   Subsequent update data selection processing by the SCS 122 and update processing of the program on the ROM by the ROM update unit 430 are the same as those of the multi-function device 100 according to the first embodiment, and thus description thereof is omitted.

このように実施の形態4の複合機100では、NCS122が更新データパケットを受信したときに、SCS122の指令によって、すべてのアプリケーション130、すべてのコントロールサービスおよびSRM123が通常モードスレッドを停止してROM更新モードスレッドを起動している。   As described above, in the MFP 100 according to the fourth embodiment, when the NCS 122 receives the update data packet, all the applications 130, all the control services, and the SRM 123 stop the normal mode thread and update the ROM according to the command of the SCS 122. The mode thread is activated.

したがって、実施の形態4の複合機100では、切り替え時間の速いスレッドの切り替えで複合サービスの機能を停止してROM更新モードへ移行することができ、複合機100を再起動させたり、切り替え時間の遅いプロセスの切り替えを行う場合に比べ、更新要求データパケットがあった場合に迅速に対応してROM更新を行うことができる。   Therefore, in the MFP 100 according to the fourth embodiment, the function of the MFP service can be stopped by switching the thread with a fast switching time, and the MFP 100 can be switched to the ROM update mode. Compared with the case where switching of a slow process is performed, ROM update can be performed promptly when there is an update request data packet.

なお、実施の形態4にかかる複合機100では、コントロールサービス、アプリケーションへのROM更新モードスレッドの起動要求をSCS122で行っているが、プログラム起動部420や他のプロセスで実現するように構成しても良い。   In the MFP 100 according to the fourth embodiment, the SCS 122 makes a request to activate the ROM update mode thread to the control service and application. However, the MFP 100 is configured to be implemented by the program activation unit 420 and other processes. Also good.

以上説明した実施の形態1〜4にかかる複合機100では、更新データの選定処理をSCS122のROM更新モードスレッドで行っているが、プログラム起動部420でSCS122とは別のプロセスを起動して、この起動した別のプロセスで更新データの選定処理を行うように構成してもよい。   In the MFP 100 according to the first to fourth embodiments described above, the update data selection process is performed by the ROM update mode thread of the SCS 122, but the program activation unit 420 activates a process different from the SCS 122, The update data selection process may be performed in another activated process.

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 表示制御部
DESCRIPTION OF SYMBOLS 100 MFP 101 Monochrome line printer 102 Color line printer 103 Hardware resource 110 Software group 111 Printer application 112 Copy application 113 Fax application 114 Scanner application 115 Net file application 116 Process inspection application 117 Remote ROM update application (RRU application)
120 Platform 121 General-purpose OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 Application 140 Multi-function Device Starter 200 Controller Board 201 ASIC
202 CPU
203 SDRAM
204 Flash memory (Flash ROM)
205 Hard disk device (HDD)
208 SRAM
209 Network interface controller 210 Operation panel 220 FCU
230 USB device 240 IEEE 1394 device 250 Bluetooth device 260 Engine unit 271 Network 272 Telephone network 410 ROM monitor 420 Program activation unit 421 Activation mode setting unit 422 Service layer activation unit 423 Application activation unit 424 Application activation information setting unit 430 ROM update unit 431 ROM Update command decoding unit 432 SRAM processing unit 433 ROM update processing unit 434 Display control unit

特開2001−268306号公報JP 2001-268306 A

Claims (5)

画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムとを有する画像形成装置であって、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用され前記ハードウェア資源を用いた画像形成処理を画像形成装置に実行させるための1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を画像形成装置に実行させるための1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置において、
ットワーク通信を制御するとともに、ネットワーク経由で、前記アプリケーション又は前記プログラムの更新データを受信するネットワークコントロール手段と、
前記記憶部に格納されている前記アプリケーション又は前記プログラムを前記ネットワークコントロール手段で受信した更新データで更新する更新手段と
を備え
前記更新手段は、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする画像形成装置。
An image forming apparatus having a hardware resource including at least one of a printer unit and a scanner unit used in image forming processing and an operating system, which operates on the operating system and is accessed by one or more applications. the commonly use this in, and one or more programs for executing the image forming process using the hardware resources in the image forming apparatus accesses the program, the image processing by using the hardware resources image In an image forming apparatus having one or more applications to be executed by a forming apparatus and a storage unit storing the applications and programs ,
It controls the network communication, via the network, and a network control means for receiving the update data of the application or the program,
Update means for updating the application or the program stored in the storage unit with update data received by the network control means ,
The update unit is further updated images forming device you characterized by verify check to the update process identity has succeeded or failed and said update data the application or program.
プログラム更新に関する更新情報を記憶する不揮発性記憶手段をさらに備え、
前記更新手段は、前記アプリケーション及びプログラムの更新時に、前記更新情報を前記不揮発性記憶手段に格納するとともに、前記アプリケーション及びプログラムの更新前に前記不揮発性記憶手段に前記更新情報が格納されているか否かを判断し、更新情報が格納されている場合には、前記不揮発性記憶手段に格納されている更新情報に基づいて前記アプリケーション及びプログラムを更新することを特徴とする請求項記載の画像形成装置。
Non-volatile storage means for storing update information related to program update,
The update means stores the update information in the nonvolatile storage means when the application and program are updated, and whether or not the update information is stored in the nonvolatile storage means before the application and program are updated. determine, if the update information is stored, the image forming according to claim 1, wherein updating the applications and programs based on the update information stored in the nonvolatile storage means apparatus.
画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムとを有する画像形成装置であって、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用され前記ハードウェア資源を用いた画像形成処理を画像形成装置に実行させるための1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を画像形成装置に実行させるための1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置の前記記憶部に格納された前記アプリケーション及びプログラムをネットワーク経由で提供される更新データによって更新する前記画像形成装置のプログラム更新方法において、
ットワーク通信を制御するとともに、ネットワーク経由で、前記アプリケーション又はプログラムの更新データを受信するネットワークコントロール手段が、前記アプリケーション又はプログラムの更新データを受信する受信ステップと、
更新手段が、前記記憶部に格納されている前記アプリケーション又は前記プログラムを前記ネットワークコントロール手段が受信した更新データで更新する更新ステップと
を含み、
前記更新ステップは、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とするプログラム更新方法。
An image forming apparatus having a hardware resource including at least one of a printer unit and a scanner unit used in image forming processing and an operating system, which operates on the operating system and is accessed by one or more applications. the commonly use this in, and one or more programs for executing the image forming process using the hardware resources in the image forming apparatus accesses the program, the image processing by using the hardware resources image Update data provided via the network for the applications and programs stored in the storage unit of the image forming apparatus, having one or more applications to be executed by the forming apparatus and a storage unit for storing the applications and programs Updated by the image shape In the program update method of the device,
It controls the network communication, via the network, a receiving step network control means for receiving the update data of the application or program, to receive the update data of the application or program,
Updating means, see contains an update step of the application or the program stored in the storage unit is updated with update data received by the network control unit,
It said updating step includes features and to Help program updating method further check to updating the identity of the updated and the applications or programs and the updating data to verify success or failure.
前記更新ステップは、前記アプリケーション及びプログラムの更新時に、前記アプリケーション更新及びプログラム更新に関する更新情報を不揮発性記憶手段に格納し、前記アプリケーション及びプログラムの更新前に前記不揮発性記憶手段に前記更新情報が格納されているか否かを判断し、前記更新情報が格納されている場合には、前記不揮発性記憶手段に格納されている更新情報に基づいて前記アプリケーション及びプログラムを更新することを特徴とする請求項記載のプログラム更新方法。 In the update step, update information related to the application update and program update is stored in a nonvolatile storage unit when the application and program are updated, and the update information is stored in the nonvolatile storage unit before the application and program are updated. The application and the program are updated based on the update information stored in the non-volatile storage means when the update information is stored. 3. The program update method according to 3 . 画像形成処理で使用されるプリンタ部又はスキャナ部の少なくとも一方を含むハードウェア資源と、オペレーティングシステムとを有する画像形成装置であって、前記オペレーティングシステム上で動作し、1つ以上のアプリケーションからアクセスされて共通に利用され前記ハードウェア資源を用いた画像形成処理を画像形成装置に実行させるための1つ以上のプログラムと、前記プログラムにアクセスし、前記ハードウェア資源を利用して画像処理を画像形成装置に実行させるための1つ以上のアプリケーションと、前記アプリケーション及びプログラムを格納する記憶部とを有する画像形成装置に、
ットワーク通信を制御するとともに、ネットワーク経由で、前記アプリケーション又はプログラムの更新データを受信するネットワークコントロール手段が、前記アプリケーション又はプログラムの更新データを受信する受信手順と、
前記記憶部に格納されている前記アプリケーション又は前記プログラムを前記受信手順で受信した更新データで更新する更新手順と
を実行させ
前記更新手順は、さらに更新された前記アプリケーション又はプログラムと前記更新データとの同一性をチェックして更新処理が成功したか失敗したかを検証することを特徴とする更新処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
An image forming apparatus having a hardware resource including at least one of a printer unit and a scanner unit used in image forming processing and an operating system, which operates on the operating system and is accessed by one or more applications. the commonly use this in, and one or more programs for executing the image forming process using the hardware resources in the image forming apparatus accesses the program, the image processing by using the hardware resources image An image forming apparatus having one or more applications to be executed by the forming apparatus and a storage unit that stores the applications and programs.
It controls the network communication, via the network, a network control means for receiving the update data of the application or program, a receiving step of receiving the update data of the application or program,
An update procedure for updating the application or the program stored in the storage unit with the update data received in the reception procedure is executed .
The update procedure further includes checking the identity between the updated application or program and the update data to verify whether the update process is successful or unsuccessful. Possible recording media.
JP2015018377A 2001-08-27 2015-02-02 Image forming apparatus, program update method, and recording medium Expired - Lifetime JP5888443B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015018377A JP5888443B2 (en) 2001-08-27 2015-02-02 Image forming apparatus, program update method, and recording medium

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2001257043 2001-08-27
JP2001257043 2001-08-27
JP2015018377A JP5888443B2 (en) 2001-08-27 2015-02-02 Image forming apparatus, program update method, and recording medium

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2014018711A Division JP5720812B2 (en) 2001-08-27 2014-02-03 Image forming apparatus, program update method, and update processing program

Publications (2)

Publication Number Publication Date
JP2015092769A JP2015092769A (en) 2015-05-14
JP5888443B2 true JP5888443B2 (en) 2016-03-22

Family

ID=40055859

Family Applications (5)

Application Number Title Priority Date Filing Date
JP2008177334A Expired - Lifetime JP4589426B2 (en) 2001-08-27 2008-07-07 Image forming apparatus, program update method, and recording medium
JP2011023481A Expired - Lifetime JP5310757B2 (en) 2001-08-27 2011-02-07 Image forming apparatus and update method
JP2013097868A Expired - Lifetime JP5510586B2 (en) 2001-08-27 2013-05-07 Image forming apparatus
JP2014018711A Expired - Lifetime JP5720812B2 (en) 2001-08-27 2014-02-03 Image forming apparatus, program update method, and update processing program
JP2015018377A Expired - Lifetime JP5888443B2 (en) 2001-08-27 2015-02-02 Image forming apparatus, program update method, and recording medium

Family Applications Before (4)

Application Number Title Priority Date Filing Date
JP2008177334A Expired - Lifetime JP4589426B2 (en) 2001-08-27 2008-07-07 Image forming apparatus, program update method, and recording medium
JP2011023481A Expired - Lifetime JP5310757B2 (en) 2001-08-27 2011-02-07 Image forming apparatus and update method
JP2013097868A Expired - Lifetime JP5510586B2 (en) 2001-08-27 2013-05-07 Image forming apparatus
JP2014018711A Expired - Lifetime JP5720812B2 (en) 2001-08-27 2014-02-03 Image forming apparatus, program update method, and update processing program

Country Status (1)

Country Link
JP (5) JP4589426B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4589426B2 (en) * 2001-08-27 2010-12-01 株式会社リコー Image forming apparatus, program update method, and recording medium
JP4691197B2 (en) * 2004-02-17 2011-06-01 株式会社リコー Image forming apparatus, terminal apparatus, information processing method, information processing program, and recording medium
JP4625343B2 (en) * 2004-02-17 2011-02-02 株式会社リコー Image forming apparatus, terminal apparatus, information processing method, information processing program, and recording medium
JP5268597B2 (en) * 2008-11-28 2013-08-21 キヤノン株式会社 Application platform, information processing apparatus, information processing apparatus control method, program, and storage medium
JP5622691B2 (en) * 2011-08-31 2014-11-12 京セラドキュメントソリューションズ株式会社 Image forming apparatus and image forming system

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6437621A (en) * 1987-07-20 1989-02-08 Ibm Updating of program
JPH05274157A (en) * 1992-03-25 1993-10-22 Ricoh Co Ltd Image generating device
JPH06350791A (en) * 1993-06-08 1994-12-22 Ricoh Co Ltd Facsimile equipment
JPH08153005A (en) * 1994-11-29 1996-06-11 Oki Electric Ind Co Ltd Patch processing system
JPH08174922A (en) * 1994-12-22 1996-07-09 Canon Inc Electronic apparatus and controlling method therefor
JPH09237182A (en) * 1995-10-05 1997-09-09 Ricoh Co Ltd Communication equipment
JP4280311B2 (en) * 1995-10-11 2009-06-17 キヤノン株式会社 Image processing composite apparatus and control method thereof
JP2921480B2 (en) * 1996-03-25 1999-07-19 日本電気株式会社 Method of starting maintenance mode in computer system
JPH1091406A (en) * 1996-09-10 1998-04-10 Ricoh Co Ltd Communication equipment
JPH11191820A (en) * 1997-10-21 1999-07-13 Canon Inc Image input output method, image input output device and image processing system
JPH11282690A (en) * 1998-03-31 1999-10-15 Canon Inc Method for writing control program, information processor and information processing system
JPH11282684A (en) * 1998-03-27 1999-10-15 Canon Inc Image processor, method for controlling image processor and storage medium
JP2000056625A (en) * 1998-08-07 2000-02-25 Ricoh Co Ltd Image forming system
JP2000076159A (en) * 1998-08-31 2000-03-14 Toshiba Tec Corp Terminal controller
JP2000099340A (en) * 1998-09-25 2000-04-07 Toshiba Corp Computer system and its basic software change method
JP2000181295A (en) * 1998-12-14 2000-06-30 Ricoh Co Ltd Image forming apparatus
JP2000194544A (en) * 1998-12-27 2000-07-14 Copyer Co Ltd Firmware update processing method of image forming device
JP2000222311A (en) * 1999-02-01 2000-08-11 Ricoh Co Ltd Image forming device management system
JP2000231481A (en) * 1999-02-10 2000-08-22 Matsushita Electric Ind Co Ltd Apparatus control system
JP2001117745A (en) * 1999-10-20 2001-04-27 Konica Corp Multifunctional device
JP2001147815A (en) * 1999-11-19 2001-05-29 Canon Inc Device and system for forming image
JP2001195245A (en) * 2000-01-17 2001-07-19 Konica Corp Method and system for rewriting program
JP2001216145A (en) * 2000-01-31 2001-08-10 Hitachi Telecom Technol Ltd Program updating system for information processor
JP4153152B2 (en) * 2000-09-26 2008-09-17 株式会社リコー Application execution control system, application execution control method, and computer-readable recording medium storing a program for causing a computer to execute the method
JP2002328792A (en) * 2001-05-02 2002-11-15 Sharp Corp Mode setting method and mode setting system and controller and computer program and recording medium
JP2008079340A (en) * 2001-08-27 2008-04-03 Ricoh Co Ltd Image forming apparatus, program updating method and recording medium
JP4121333B2 (en) * 2001-08-27 2008-07-23 株式会社リコー Image forming apparatus, program update method, and recording medium
JP4589426B2 (en) * 2001-08-27 2010-12-01 株式会社リコー Image forming apparatus, program update method, and recording medium
JP4083505B2 (en) * 2001-08-27 2008-04-30 株式会社リコー Image forming apparatus, program update method, and recording medium

Also Published As

Publication number Publication date
JP2014128979A (en) 2014-07-10
JP2008278535A (en) 2008-11-13
JP2011139493A (en) 2011-07-14
JP2015092769A (en) 2015-05-14
JP5720812B2 (en) 2015-05-20
JP5510586B2 (en) 2014-06-04
JP2013169002A (en) 2013-08-29
JP5310757B2 (en) 2013-10-09
JP4589426B2 (en) 2010-12-01

Similar Documents

Publication Publication Date Title
JP4083505B2 (en) Image forming apparatus, program update method, and recording medium
JP4121333B2 (en) Image forming apparatus, program update method, and recording medium
JP4128516B2 (en) Image forming apparatus and program updating method
JP5888443B2 (en) Image forming apparatus, program update method, and recording medium
JP4843187B2 (en) Image forming apparatus
JP2004127280A (en) Image forming apparatus and application start control method
JP2007199773A (en) Image processor, starting method of image processor, and program
JP2011103664A (en) Image forming device
US20050151987A1 (en) Information processing apparatus, program recovery method, and recording medium storing a program for program recovery
JP2008079340A (en) Image forming apparatus, program updating method and recording medium
JP4695348B2 (en) CARD-TYPE MEMORY, IMAGE FORMING DEVICE, AND IMAGE FORMING DEVICE STARTING METHOD
JP4001531B2 (en) Image forming apparatus
JP2011054146A (en) Image forming apparatus, and failure recovery method and program of the same
JP4856622B2 (en) Image forming apparatus and program updating method
JP5333561B2 (en) Information processing apparatus, program, and method
JP4124410B2 (en) Memory rewriting method and program for causing computer to execute the method
JP2009140069A (en) Printing system
JP2019031084A (en) Image forming apparatus and processing method thereof, and program
JP6399164B2 (en) Image forming system, control method thereof, and program
JP2005173888A (en) Information processor, method and program for restoring program, and recording medium
JP6175925B2 (en) Image forming apparatus, processing method thereof, and program
JP2006103290A (en) Image formation device
JP2006245776A (en) Information processing system and image forming apparatus

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151225

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160201

R151 Written notification of patent or utility model registration

Ref document number: 5888443

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

EXPY Cancellation because of completion of term