JP2006103290A - Image formation device - Google Patents

Image formation device Download PDF

Info

Publication number
JP2006103290A
JP2006103290A JP2004296904A JP2004296904A JP2006103290A JP 2006103290 A JP2006103290 A JP 2006103290A JP 2004296904 A JP2004296904 A JP 2004296904A JP 2004296904 A JP2004296904 A JP 2004296904A JP 2006103290 A JP2006103290 A JP 2006103290A
Authority
JP
Japan
Prior art keywords
program
update
image forming
forming apparatus
application
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.)
Pending
Application number
JP2004296904A
Other languages
Japanese (ja)
Inventor
Hisanori Kawaura
久典 川浦
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 JP2004296904A priority Critical patent/JP2006103290A/en
Publication of JP2006103290A publication Critical patent/JP2006103290A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image formation device capable of restoring a program without mounting a rescue on a device. <P>SOLUTION: An RRU application receiving a start address of an updated data area and the area size of the updated data area by a ROM update mode thread of MCS eliminates network information and develops an updated data packet from the start address of the updated data area given by the ROM update mode thread of MCS (S11), and then reads the setting of a net boot address of NVRAM. An access is actually made by using a tftp protocol to check if the net boot address is authentic (S12). In a case of success, a copy of a usual system from a program storing medium is put by using the tftp protocol (S14). When the program storing medium is a flash memory, the copy is put after retrieval from the memory. When the program storing medium is a flash card, the copy is put with leaving a file as it is. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、ネットワークを用いたプログラム更新のエラー復旧対処が迅速に行える画像形成装置に関する。   The present invention relates to an image forming apparatus that can quickly cope with error recovery in program update using a network.

近年、プリンタ、コピー、ファクシミリ、スキャナを1つの筺体に収納した複合機が広く普及している。
このような複合機においては、多数の機能を実現する必要から不定期かつ頻繁にプログラムの更新をすることが求められていた。
そこで、出願人は、プログラムの更新作業を迅速、正確かつ容易に行う技術として、以下の発明を提案している。
特開平2003−182191
In recent years, multi-function machines in which a printer, a copy machine, a facsimile machine, and a scanner are housed in a single housing have become widespread.
In such a multifunction machine, it has been required to update the program irregularly and frequently because it is necessary to realize a large number of functions.
Therefore, the applicant has proposed the following invention as a technique for quickly, accurately, and easily performing a program update operation.
JP 2003-182191 A

ところで、リモートでファームウェアの更新を行う場合、システムの書き換えを誤ると再起動できなくなるという問題があった。
これに対して、画像形成装置として動作するためのプログラムの他に、別途更新中断時の復旧のためのプログラム復旧プログラム(レスキュー)を用いる方法可能であるが、これでは、情報処理装置内にプログラム復旧を行うレスキューが必ず必要であり、記憶媒体の必要容量が増大していた。また、現在のレスキューはプラットフォームの一部を搭載しているためにサイズ削減には限界があった。
そこで、本発明では、画像形成装置にプラットフォームを使用するレスキューは搭載せずにプログラム復旧が可能な画像形成装置を提供することを目的としている。
By the way, when updating the firmware remotely, there is a problem that the system cannot be restarted if the system is rewritten incorrectly.
On the other hand, in addition to a program for operating as an image forming apparatus, it is possible to use a program recovery program (rescue) for recovery when an update is interrupted separately. Rescue to restore is always necessary, and the required capacity of the storage medium has increased. In addition, there is a limit to size reduction because the current rescue is equipped with a part of the platform.
Therefore, an object of the present invention is to provide an image forming apparatus capable of restoring a program without mounting a rescue using a platform in the image forming apparatus.

請求項1記載の発明では、プログラムを記憶するプログラム記憶手段と、このプログラム記憶手段に記憶されているプログラムに係る更新データを受信する更新データ受信手段と、前記更新データ受信手段において受信した前記更新データに基づいて、前記プログラム記憶手段に記録されている対応するプログラムを更新するプログラム更新手段と、を備えた複合機能を有するネットワーク対応の画像形成装置であって、当該画像形成装置が起動されていたときに、前記プログラム更新手段によるプログラムの更新が中断されたかどうかを判断する更新中断判定手段と、前記更新中断判定手段における判定結果に応じて、対応するオペレーティングシステムを起動するOS起動手段を備え、このOS起動手段が送受信機能を有することを特徴とする。
請求項2記載の発明では、請求項1記載の発明において、前記プログラム更新手段においてプログラムが更新される前に、当該画像形成装置からのデータ受信可能な手段を有する他の画像処理装置を判定する判定手段と、この判定手段の判定結果に応じて、前記他の画像処理装置の記憶媒体に対して更新される前のプログラムを記録するために送信する送信手段と、を備え、前記OS起動手段が前記他の画像形成装置内の記憶媒体から更新前プログラムを受信し、受信した前記プログラムを起動し、起動された前記プログラムが再度更新データを受信し、この更新データに含まれるプログラムで書き換えることを特徴とする。
According to the first aspect of the present invention, program storage means for storing a program, update data receiving means for receiving update data relating to the program stored in the program storage means, and the update received by the update data receiving means A network-compliant image forming apparatus having a composite function comprising: a program updating means for updating a corresponding program recorded in the program storage means based on data, wherein the image forming apparatus is activated Update interruption determination means for determining whether or not the program update by the program update means is interrupted, and OS activation means for starting the corresponding operating system according to the determination result in the update interruption determination means. The OS starting means has a transmission / reception function. To.
According to a second aspect of the present invention, in the first aspect of the present invention, before the program is updated by the program update means, another image processing apparatus having means capable of receiving data from the image forming apparatus is determined. A determination unit; and a transmission unit configured to transmit the program before being updated to a storage medium of the other image processing apparatus according to a determination result of the determination unit; Receives the pre-update program from the storage medium in the other image forming apparatus, starts the received program, the started program receives the update data again, and rewrites it with the program included in the update data It is characterized by.

請求項3記載の発明では、請求項2記載の発明において、前記判定手段が、前記他の画形成装置内の記憶媒体に起動可能なプログラムが有ることを確認する確認機能を備えていることを特徴とする。
請求項4記載の発明では、請求項1、請求項2または請求項3記載の発明において、前記OS起動手段は、更に前記起動可能なプログラムと対応する電子署名とで電子認証を行うことを特徴とする。
According to a third aspect of the present invention, in the second aspect of the present invention, the determination means includes a confirmation function for confirming that a bootable program is present in a storage medium in the other image forming apparatus. Features.
According to a fourth aspect of the present invention, in the first, second, or third aspect of the invention, the OS booting unit further performs electronic authentication using the bootable program and a corresponding electronic signature. And

請求項5記載の発明では、請求項4記載の発明において、前記送信手段が更新される前のプログラムを送信する際、同時に前記電子署名を送信することを特徴とする。
請求項6記載の発明では、請求項5記載の発明において、前記OS起動手段が前記他の画像形成理装置内の記憶媒体から更新前プログラムを受信する際、同時に前記電子署名も受信することを特徴とする。
According to a fifth aspect of the present invention, in the fourth aspect of the present invention, the electronic signature is transmitted simultaneously with the transmission of the program before the transmission means is updated.
According to a sixth aspect of the invention, in the fifth aspect of the invention, when the OS activation unit receives the pre-update program from the storage medium in the other image forming apparatus, the electronic signature is received at the same time. Features.

請求項1および請求項2記載の発明では、画像形成装置の記憶媒体内にプログラム復旧手段を必要としないので、記憶媒体のサイズを低減することができる。
請求項3記載の発明では、他の画像形成装置への不要なプログラムの送信を行わないのでネットワークの負荷を低減でき、記憶媒体の容量も圧迫しないで済む。
請求項4記載の発明では、プログラムの改ざんの確認が行えるので、改ざんプログラムの起動を防止することができる。
According to the first and second aspects of the present invention, since no program recovery means is required in the storage medium of the image forming apparatus, the size of the storage medium can be reduced.
According to the third aspect of the present invention, unnecessary programs are not transmitted to other image forming apparatuses, so that the load on the network can be reduced and the capacity of the storage medium need not be reduced.
In the invention described in claim 4, since the alteration of the program can be confirmed, the activation of the alteration program can be prevented.

請求項5記載の発明では、送信中にプログラムの改ざんが行われていないことが確認できるので、プログラムの改ざんを防止することができる。
請求項6記載の発明では、受信中にプログラムの改ざんが行われていないことが確認できるので、プログラムの改ざんを防止することができる。
In the invention described in claim 5, since it can be confirmed that the program has not been tampered with during transmission, it is possible to prevent the program from being tampered with.
In the invention described in claim 6, since it can be confirmed that the program has not been tampered with during reception, it is possible to prevent the program from being tampered with.

以下、本発明の好適な実施の形態を図1ないし図15を参照して、詳細に説明する。
図1は、本実施例に係る画像形成装置を取り巻くネットワーク構成例を示した図である。このネットワークは、サーバー50と、リモートホスト60および複合機100をデータの送受信可能に接続している。
サーバ50は、tftpサーバ他各種ネットワーク設定がなされている。セキュリティー上の問題からtftpでアクセス可能なディレクトリは指定しておく。
リモートホスト60には、Windows(登録商標)等のOS(オペレーティング・システム)がインストールされており、tftpアプリケーションの使用が可能になっている。
画像形成装置である複合機100は、ネットワークI/F(インターフェイス)で接続されている。また、複合機100は、tftp等標準的なネットワークプロトコルを有している。
Hereinafter, a preferred embodiment of the present invention will be described in detail with reference to FIGS.
FIG. 1 is a diagram illustrating a network configuration example surrounding the image forming apparatus according to the present embodiment. In this network, the server 50, the remote host 60, and the multifunction device 100 are connected so as to be able to transmit and receive data.
The server 50 has various network settings such as a ftp server. For security reasons, a directory accessible by ftp is specified.
An OS (operating system) such as Windows (registered trademark) is installed in the remote host 60, and the tftp application can be used.
The multifunction peripheral 100 that is an image forming apparatus is connected by a network I / F (interface). The multifunction device 100 has a standard network protocol such as tftp.

図2は、複合機100の構成を示したブロック図である。なお、図2では、後述するROMモニタ410によって、汎用OS121が起動された場合の複合機の構成の一例を示している。
図2に示すように、複合機100は、プロッタ101と、スキャナ102と、FCU(Fax Control Unit)103と、その他ハードウェアリソース104等を有すると共に、汎用OS121と、プラットフォーム120と、アプリケーション130と、から構成されるソフトウェア群110と、電源投入時に実行される複合機起動部140と、を備えている。
FIG. 2 is a block diagram illustrating the configuration of the multifunction machine 100. FIG. 2 shows an example of the configuration of the multifunction machine when the general-purpose OS 121 is activated by the ROM monitor 410 described later.
As illustrated in FIG. 2, the multifunction peripheral 100 includes a plotter 101, a scanner 102, an FCU (Fax Control Unit) 103, other hardware resources 104, a general-purpose OS 121, a platform 120, an application 130, and the like. , And a multifunction machine starting unit 140 that is executed when the power is turned on.

複合機起動部140は、複合機100の電源投入時にまず始めに実行され、後述する更新中断情報に更新情報が格納されていない場合及び、又は更新中断情報にメンテナンスフラグが格納されている場合、図2に示される汎用OS121や、プラットフォーム120、アプリケーション130を起動する。
プラットフォーム120は、アプリケーション130からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一又は複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、を有する。
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128と、から構成される。
なお、プラットフォーム120は、あらかじめ定義された関数によりアプリケーション130から処理要求を受信可能とするアプリケーションプログラムインターフェース(API)を有する。
The MFP activation unit 140 is first executed when the MFP 100 is turned on, and when update information is not stored in update suspension information described later, or when a maintenance flag is stored in update suspension information, The general-purpose OS 121, the platform 120, and the application 130 shown in FIG.
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.
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 using a predefined function.

汎用OS121は、UNIX(登録商標)等の汎用オペレーティングシステムであり、プラットフォーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
なお、図2に示される汎用OS121は、プロセスに通常モードスレッドと、ROM更新モードスレッドとが存在する場合、初めに、各プロセスの通常モードスレッドを実行するようになっている。
MCS125は、メモリの制御を行うプロセスとして起動される。MCS125のプロセスは、画像メモリの取得及び解放、ハードディスク装置(HDD)の利用、画像データの圧縮及び伸張等のコピー、プリンタ、ファクシミリ及びスキャナ等の複合サービスを行う通常モードスレッドと、後述するリモートROM更新アプリ117によって更新データパケットから展開された更新データを格納する更新データ領域をSDRAM203等に確保する等の処理を行うROM更新モードスレッドとを有している。
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.
The general-purpose OS 121 shown in FIG. 2 executes the normal mode thread of each process first when the normal mode thread and the ROM update mode thread exist in the process.
The MCS 125 is activated as a process for controlling the memory. The process of the MCS 125 includes normal mode threads for performing complex services such as acquisition and release of image memory, use of a hard disk drive (HDD), copying and compression of image data, printers, facsimiles, scanners, etc., and a remote ROM described later A ROM update mode thread for performing processing such as securing an update data area in the SDRAM 203 or the like for storing update data developed from the update data packet by the update application 117;

OCS126のプロセスは、オペレータと本体制御間の情報伝達手段となる操作パネル(オペレーションパネル1310)の制御を行う通常モードスレッドと、ROMの更新に係る情報等を操作パネル1310に表示する処理等を行うROM更新モードスレッドと、を有している。
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読み取り、ファクシミリ受信印刷、複合送受信を行うためのAPIを提供する等の処理を行う通常モードスレッドと、かかる機能を実行せずに単に起動されるだけのROM更新モードスレッドと、を有している。
The process of the OCS 126 performs a normal mode thread for controlling the operation panel (operation panel 1310) serving as information transmission means between the operator and the main body control, processing for displaying information related to ROM update, and the like on the operation panel 1310. ROM update mode thread.
The process of FCS127 includes facsimile transmission / reception using 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 composite transmission / reception. It has a normal mode thread that performs processing such as providing an API for performing, and a ROM update mode thread that is simply activated without executing such a function.

NCS128は、ネットワークI/Oを必要とするアプリケーションに対して、共通に利用できるサービスを提供するためのプロセスである。ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行ったりする等の処理を行う通常モードスレッドを有している。
また、NCS128の通常モードスレッドでは、さらに、ネットワークに接続された、例えば複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダ等のリモートホストから、フラッシュメモリのROM更新データパケットを受信する。
なお、NCS128のプロセスは、フラッシュメモリのROM更新データパケットに含まれる更新データを、後述するリモートROM更新アプリ117に渡す等の処理を行う、ROM更新モードスレッドも有している。
The NCS 128 is a process for providing a service that can be used in common to applications that require network I / O. It has a normal mode thread that performs processing such as distributing data received from the network side according to each protocol to each application and mediating when transmitting data from the application to the network side.
Further, in the normal mode thread of the NCS 128, the ROM update data packet of the flash memory is further received from a remote host such as a host computer of the multifunction device developer or a third vendor of the application developer connected to the network.
The NCS 128 process also has a ROM update mode thread for performing processing such as passing update data included in the ROM update data packet of the flash memory to the remote ROM update application 117 described later.

SRM123のプロセスは、SCS122と共にシステムの制御及びリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部等のエンジン、メモリ、HDDファイル、ホストI/O(セントロニクスI/F、IEEE1394 I/F、USB I/F、NIC I/F等)のハードウェア資源を利用する上位層からの要求に従って調停を行い、実行制御する等の処理を行う通常モードスレッドと、かかるリソース管理を実行せずに単に起動されるだけのROM更新モードスレッドを有している。
具体的には、このSRM123の通常モードスレッドは、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。
また、SRM123の通常モードスレッドは、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成等)を直接実施している。
The process of the SRM 123 performs system control and resource management together with the SCS 122. The SRM123 process uses the hardware resources of the scanner, printer, etc. engines, memory, HDD files, and host I / O (Centronics I / F, IEEE 1394 I / F, USB I / F, NIC I / F, etc.). It has a normal mode thread that performs processing such as arbitration and execution control according to a request from an upper layer to be used, and a ROM update mode thread that is simply activated without executing such resource management.
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 normal mode thread of the SRM 123 performs use scheduling of hardware resources in response to a request from an upper layer, and directly requests contents (for example, paper conveyance and image forming operation, memory allocation, file generation, etc. by the printer engine). We are carrying out.

SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御等の処理を行う通常モードスレッドを有している。
また、SCS122の通常モードスレッドは、後述するリモートROM更新アプリ117からの要求に基づいて、プリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115や、ECS124、MCS125、OCS126、FCS127、NCS128等にROM更新モードスレッドの起動依頼を通知する。
また、SCS122のプロセスは、ROM更新モードスレッドも有し、該ROM更新モードスレッドは、SDRAM203等に展開された更新データの中から、複合機100で動作するアプリケーション130、プラットフォーム120の構成に応じた更新データを選定する処理を行ったり、後述するROM更新部430を起動したりする処理を行う。
The process of the SCS 122 has a normal mode thread that performs processing such as application management, operation unit control, system screen display, LED display, resource management, and interrupt application control.
Further, the normal mode thread of the SCS 122 is based on a request from the remote ROM update application 117 described later, the printer application 111, the copy application 112, the fax application 113, the scanner application 114, the net file application 115, the ECS 124, the MCS 125, and the OCS 126. , Notifies the ROM update mode thread activation request to FCS 127, NCS 128, and the like.
The process of the SCS 122 also has a ROM update mode thread. The ROM update mode thread corresponds to the configuration of the application 130 operating on the multifunction peripheral 100 and the platform 120 from the update data expanded in the SDRAM 203 or the like. A process of selecting update data or a process of starting a ROM update unit 430 described later is performed.

ECS124のプロセスは、プロッタ101、スキャナ102、FCU(Fax Control Unit)103、その他ハードウェアリソース104、のエンジンの制御等の処理を行う通常モードスレッドと、このようなエンジン制御を行わずに単に起動されるだけのROM更新モードスレッドと、を有している。
このように、SRM123、ECS124、FCS127の各ROM更新モードスレッドはいずれも単に起動されるだけであるが、これは、ROM更新処理時に、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。
The process of the ECS 124 is simply started without performing such engine control, and a normal mode thread that performs processing such as engine control of the plotter 101, the scanner 102, the FCU (Fax Control Unit) 103, and other hardware resources 104. And a ROM update mode thread that can only be done.
As described above, all the ROM update mode threads of the SRM 123, the ECS 124, and the FCS 127 are simply activated, but this is activated to indicate the existence of a control service that operates inside the MFP during the ROM update process. It has come to be.

一方、SCS122、MCS125、OCS126、NCS128の各ROM更新モードスレッドも、それぞれROM更新に必要な処理を行うと共に、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。
アプリケーション130は、ページ記述言語(PDL)、PCL及びポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、NCS128によりネットワーク経由で受信した更新データパケットを更新データに展開し、その更新データをMCS125のROM更新モードスレッドによって確保されたSDRAM203等の更新データ領域に格納する処理等を行うリモートROM更新アプリ(以下、RRUアプリという)117と、を有している。
On the other hand, the ROM update mode threads of the SCS 122, MCS 125, OCS 126, and NCS 128 are also activated to indicate the existence of a control service that operates inside the multi-function peripheral and performs processing necessary for ROM update. .
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. The scanner application 114 as a scanner application, the network file application 115 as a network file application, and the update data packet received via the network by the NCS 128 are expanded into update data, and the update data is read into the ROM update mode thread of the MCS 125. Remote ROM update application (hereinafter referred to as RRU application) 117 that performs processing to be stored in an update data area such as SDRAM 203 secured by , The has.

これらの各アプリも、プラットフォーム120と同様にそれぞれプロセスとして起動され、RRUアプリ117以外の各アプリは、各々上述したような処理を行う通常モードスレッドと、当該自身の存在を示すために起動されるROM更新モードスレッドと、を有する。   Each of these apps is also started as a process, like the platform 120, and each app other than the RRU app 117 is started to indicate a normal mode thread that performs the processing as described above and the presence of the app itself. ROM update mode thread.

図3は、複合機のハードウェア構成を示すブロック図である。以下、複合機100のハードウェア構成の一例を図3を参照して説明する。
図3に示すように、複合機100は、オペレーションパネル1310、FAXコントロールユニット(FCU)103、スキャナ102等が接続されているエンジン部1350、及びプロッタ101とコントローラ1300のASIC1301とをPCI(Peripheral Component Interconnect)バス1309等で接続した構成となっている。
FIG. 3 is a block diagram illustrating a hardware configuration of the multifunction machine. Hereinafter, an example of a hardware configuration of the multifunction peripheral 100 will be described with reference to FIG.
As illustrated in FIG. 3, the multifunction peripheral 100 includes an operation panel 1310, an FAX control unit (FCU) 103, an engine unit 1350 to which the scanner 102 and the like are connected, and a plotter 101 and an ASIC 1301 of the controller 1300. An interconnect) bus 1309 and the like are connected.

コントローラ1300は、ASIC1301にNVRAM208、SDRAM203、フラッシュメモリ204、HDD(Hard Disk Drive)1303等を接続している。また、このASIC1301とCPU1304とをCPUチップセットのNB1305を介して接続している。
このように、NB1305を介して接続する理由は、CPU1304自体のインターフェースが公開されていないためである。
ここで、このASIC1301とNB1305は、単にPCIを介して接続されているのではなく、AGP1308を介して接続されている。このようにAGP1308を介して接続することとした理由は、この複合機100が図2に示したプラットフォーム120やアプリケーション130を形成する複数のプロセスを実行制御する関係上、これらを低速のPCIで接続したのでは、パフォーマンスが低下するためである。
The controller 1300 connects the NVRAM 208, SDRAM 203, flash memory 204, HDD (Hard Disk Drive) 1303, etc. to the ASIC 1301. In addition, the ASIC 1301 and the CPU 1304 are connected via the NB 1305 of the CPU chip set.
Thus, the reason for connecting via the NB 1305 is that the interface of the CPU 1304 itself is not disclosed.
Here, the ASIC 1301 and the NB 1305 are not connected via the PCI, but are connected via the AGP 1308. The reason for the connection via the AGP 1308 is that the MFP 100 is connected to the platform 120 and the application 130 shown in FIG. This is because the performance is degraded.

CPU1304は、複合機100の全体制御を行うものであり、具体的には、汎用OS121上でSRM123や、プラットフォーム120を形成するSCS122、ECS124、MCS125、OCS126、FCS127、NCS128をそれぞれプロセスとして起動して実行させると共に、アプリケーション130を形成するプリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115、RRUアプリ117を起動して実行させる。
なお、例えば、複合機100が(後述する図10)に示すような構成の場合、CPU1304は、汎用レスキューOS131上でSRM123や、プラットフォーム120を形成するSCS122、MCS125をそれぞれプロセスとして起動して実行させる。
The CPU 1304 controls the entire MFP 100. Specifically, the SRM 123 and the SCS 122, ECS 124, MCS 125, OCS 126, FCS 127, and NCS 128 forming the platform 120 are started as processes on the general-purpose OS 121, respectively. At the same time, the printer application 111, the copy application 112, the fax application 113, the scanner application 114, the net file application 115, and the RRU application 117 forming the application 130 are activated and executed.
For example, when the MFP 100 has a configuration as shown in FIG. 10 (described later), the CPU 1304 starts and executes the SRM 123, the SCS 122 and the MCS 125 forming the platform 120 as processes on the general-purpose rescue OS 131, respectively. .

NB1305は、CPU1304と、システムメモリ1306と、SB1307と、NIC(Network Interface Card)1341と、USB(Universal Serial Bus)1330と、IEEE13941340と、セントロニクス1342と、ドライバI/F1343と、ASIC1301と、を接続するためのブリッジである。
システムメモリ1306は、複合機の描画用メモリ等として用いるメモリであり、SB1307は、NB1305と周辺デバイスとを接続するためのブリッジである。SB1307は、コントローラ1300での時間を計測するRTC(Real Time Clock)を有する。また、SB1307は、内部にUSBホストを有し、例えば、USB接続のカメラを接続することで画像データを取り込むことが可能であり、また、他のUSBターゲットからデータを受け取ることも可能である。
The NB 1305 includes a CPU 1304, a system memory 1306, an SB 1307, a NIC (Network Interface Card) 1341, a USB (Universal Serial Bus) 1330, an IEEE 1394 1340, a Centronics 1342, a driver I / F 1343, an ASIC 1301, and an ASIC 1301. It is a bridge to do.
A system memory 1306 is a memory used as a drawing memory or the like of the multifunction peripheral, and an SB 1307 is a bridge for connecting the NB 1305 and peripheral devices. The SB 1307 has an RTC (Real Time Clock) that measures time in the controller 1300. The SB 1307 has a USB host inside, and can capture image data by connecting a USB-connected camera, for example, and can also receive data from other USB targets.

ドライバI/F(インターフェイス)1343は、挿入されたプログラム又はアプリケーション等が格納されている記録媒体から、プログラム又はアプリケーション等を読み込んで、複合機100に搭載するのに用いるI/Fである。なお、例えば記録媒体としては、SDメモリカード、スマートメディア、マルチメディアカード、コンパクトフラッシュ(登録商標)等が用いられる。
SDRAM203は、更新データパケットをネットワーク経由で受信したときに、受信した更新データパケットから展開される更新データを格納する更新データ領域が確保される不揮発性メモリである。
NVRAM208は、例えば後述する更新中断情報等を格納する不揮発性メモリである。
フラッシュメモリ(以下、フラッシュROMという)204には、上述の各アプリ、プラットフォームを構成する各コントロールサービスやSRM123の各プログラムが格納されている。複合機100は、これらの各プログラムがあらかじめフラッシュROM204に組み込まれた状態で出荷され、ROM更新データパケットの受信によって、フラッシュROM204のプログラムが更新されるという、リモートROM更新の処理が実行されるようになっている。
A driver I / F (interface) 1343 is an I / F that is used to read a program or an application from a recording medium in which the inserted program or application is stored and mount the program or application on the multifunction peripheral 100. For example, an SD memory card, smart media, multimedia card, compact flash (registered trademark), or the like is used as a recording medium.
The SDRAM 203 is a non-volatile memory that secures an update data area for storing update data developed from the received update data packet when the update data packet is received via the network.
The NVRAM 208 is a non-volatile memory that stores, for example, update interruption information described later.
A flash memory (hereinafter referred to as “flash ROM”) 204 stores the above-described applications, the control services constituting the platform, and the programs of the SRM 123. The MFP 100 is shipped with each of these programs pre-installed in the flash ROM 204, and a remote ROM update process is executed in which the program in the flash ROM 204 is updated upon receipt of the ROM update data packet. It has become.

HDD1303は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積、文書の蓄積を行うストレージであり、オペレーションパネル1310は、操作者からの入力操作の受け付け並びに操作者に向けた表示を行う操作部である。
ASIC1301には、NVRAM208及びSDRAM203等を接続するためのRAMインターフェースと、フラッシュROM204を接続するためのROMインターフェースと、HDD1303を接続するためのハードディスクインターフェースと、が設けられ、これらの記憶部に対して画像データの入出力を行う場合には、入出力先がRAMインターフェース又はROMインターフェース又はハードディスクインターフェースに切り替えられる。
AGP1308は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、システムメモリ1306に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にする。
The HDD 1303 is a storage that stores image data, programs, font data, forms, and documents. The operation panel 1310 receives input operations from the operator and displays them for the operator. It is an operation part which performs.
The ASIC 1301 is provided with a RAM interface for connecting the NVRAM 208 and the SDRAM 203, a ROM interface for connecting the flash ROM 204, and a hard disk interface for connecting the HDD 1303. When inputting / outputting data, the input / output destination is switched to the RAM interface, ROM interface, or hard disk interface.
The AGP 1308 is a bus interface for a graphics accelerator card that has been proposed for speeding up graphics processing. The AGP 1308 speeds up the graphics accelerator card by directly accessing the system memory 1306 with high throughput.

以下、リモートROM更新の全体処理の一例を、図4及び図5を用いて説明する。図4は、リモートROM更新の全体処理を説明するための図である。
図4に示されるように、複合機100が通常の複合サービスの動作を実行しているときは、通常モードスレッドと、ROM更新モードスレッドと、を有している各アプリ、各コントロールサービス等は、いずれも通常モードスレッドを実行している。
この状態で、ネットワーク経由で複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータ等のリモートホストから更新データパケットが送信されてくると、NCS128の通常モードスレッドは、更新データパケットを受信する(シーケンスSQ1)。
NCS128の通常モードスレッドは、受信したパケットの内容を判断し、更新データパケットであると判定すると、ROMの更新データパケットを受信した旨をRRUアプリ117に通知する(シーケンスSQ2)。
Hereinafter, an example of the entire process of remote ROM update will be described with reference to FIGS. FIG. 4 is a diagram for explaining the entire process of remote ROM update.
As shown in FIG. 4, when the multifunction peripheral 100 is executing a normal composite service operation, each application, each control service, and the like having a normal mode thread and a ROM update mode thread are Both are running normal mode threads.
In this state, when an update data packet is transmitted from a 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 transmits the update data packet. Receive (sequence SQ1).
The normal mode thread of the NCS 128 determines the content of the received packet, and if it is determined that it is an update data packet, notifies the RRU application 117 that the ROM update data packet has been received (sequence SQ2).

NCS128の通常モードスレッドよりROMの更新データパケットを受信した旨を通知されたRRUアプリ117は、SCS122の通常モードスレッドに対して、ROM更新モードスレッドの移行依頼通知の発行を要求する(シーケンスSQ3)。
RRUアプリ117よりROM更新モードスレッドの移行依頼通知の発行を要求されたSCS122の通常モードスレッドは、プリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115、ECS124、MCS125、OCS126、FCS127、NCS128の各通常モードスレッドに対して、ROM更新モードスレッドの移行依頼を通知する(シーケンスSQ4)。
The RRU application 117 that is notified that the ROM update data packet has been received from the normal mode thread of the NCS 128 requests the normal mode thread of the SCS 122 to issue a ROM update mode thread transition request notification (sequence SQ3). .
The normal mode threads of the SCS 122 requested to issue the ROM update mode thread transition request notification from the RRU application 117 are the printer application 111, the copy application 112, the fax application 113, the scanner application 114, the net file application 115, the ECS 124, the MCS 125, A ROM update mode thread transfer request is notified to each of the OCS 126, FCS 127, and NCS 128 normal mode threads (sequence SQ4).

図5は、リモートROM更新の全体処理を説明するための図である。
図4のシーケンスSQ4によって、SCS122の通常モードスレッドより、ROM更新モードスレッドの移行依頼を通知されたプリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115、ECS124、MCS125、OCS126、FCS127、NCS128は、図5に示されるようにそれぞれ通常モードスレッドからROM更新モードスレッドに移行する。
また、RRUアプリ117は、更新データパケットを展開するのに必要な領域を得るために、MCS125のROM更新モードスレッドに対して、更新データ領域の確保を要求する(シーケンスSQ5)。
FIG. 5 is a diagram for explaining the entire process of remote ROM update.
According to the sequence SQ4 in FIG. 4, the printer application 111, the copy application 112, the fax application 113, the scanner application 114, the net file application 115, the ECS 124, the MCS 125, which are notified of the transfer request of the ROM update mode thread from the normal mode thread of the SCS 122. The OCS 126, FCS 127, and NCS 128 each shift from the normal mode thread to the ROM update mode thread as shown in FIG.
In addition, the RRU application 117 requests the ROM update mode thread of the MCS 125 to secure an update data area in order to obtain an area necessary for expanding the update data packet (sequence SQ5).

RRUアプリ117より更新データ領域の確保を要求されたMCS125のROM更新モードスレッドは、例えば、SDRAM203上に更新データ領域を確保して、該更新データ領域の先頭アドレスと、該更新データ領域の領域サイズと、をRRUアプリ117に返す(シーケンスSQ6)。
MCS125のROM更新モードスレッドより、更新データ領域の先頭アドレスと、該更新データ領域の領域サイズと、を受け取ったRRUアプリ117は、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新データパケットを、MCS125のROM更新モードスレッドから通知された更新データ領域の先頭アドレスから展開する。
The ROM update mode thread of the MCS 125 requested to secure the update data area by the RRU application 117 secures the update data area on the SDRAM 203, for example, and the start address of the update data area and the area size of the update data area Are returned to the RRU application 117 (sequence SQ6).
The RRU application 117, which has received the start address of the update data area and the area size of the update data area from the ROM update mode thread of the MCS 125, removes the network information and decompresses the compressed data packet. Are expanded from the start address of the update data area notified from the ROM update mode thread of the MCS 125.

以下、更新データ領域に展開された更新データパケットの一例を、図6を用いて説明する。図6は、複合機で受信した更新データパケットの展開後のデータ構造図である。
図6に示されるように、展開された更新データパケットは、ヘッダ部302と、データ部303と、を備えている。
ヘッダ部302は、更新するモジュールに対応するように、モジュールごとのヘッダブロックに分かれている。各ヘッダブロックには、次のヘッダブロックまでのオフセットである次ヘッダオフセットと、モジュールの更新データまでのオフセットである更新データオフセットと、更新データのサイズと、モジュールの識別情報であるモジュールIDと、該モジュールのフラッシュROM204上での相対番地を示す更新先アドレスと、該モジュールのサイズである更新先領域長と、を備えている。
データ部303は、更新データがモジュールごとに格納されている。なお、各モジュールの更新データの先頭は、モジュールに対応するヘッダブロックの更新データオフセットにより参照できるようになっている。
Hereinafter, an example of the update data packet developed in the update data area will be described with reference to FIG. FIG. 6 is a data structure diagram after development of the update data packet received by the multifunction machine.
As shown in FIG. 6, the expanded update data packet includes a header portion 302 and a data portion 303.
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 provided.
The data unit 303 stores update data for each module. The head of the update data of each module can be referred to by the update data offset of the header block corresponding to the module.

図5に戻り、RRUアプリ117は、更新データパケットを展開した更新データ領域の先頭アドレスをSCS122の通常モードスレッドに通知し、更新データの選定を依頼する(シーケンスSQ8)。
RRUアプリ117より更新データの選定依頼を受け取ったSCS122の通常モードスレッドは、SCS122のROM更新モードスレッドを起動し、後述する図12に示すような処理を行い、更新データを選定する(シーケンスSQ9)。
また、SCS122のROM更新モードスレッドは、後述する図8に示すROM更新部430を起動し、後述する図13に示すようなROMの更新処理を行う(シーケンスSQ10)。
Returning to FIG. 5, the RRU application 117 notifies the normal mode thread of the SCS 122 of the start address of the update data area in which the update data packet is expanded, and requests selection of update data (sequence SQ8).
The normal mode thread of the SCS 122 that has received the update data selection request from the RRU application 117 activates the ROM update mode thread of the SCS 122, performs processing as shown in FIG. 12 to be described later, and selects update data (sequence SQ9). .
Further, the ROM update mode thread of the SCS 122 activates a ROM update unit 430 shown in FIG. 8 described later, and performs a ROM update process as shown in FIG. 13 described later (sequence SQ10).

以下、複合機起動部140の構成の一例を、図7および図8を参照して説明する。図7は、複合機起動部の構成の一例を示すブロック図である。
図7に示されるように、複合機起動部140は、ROMモニタ410と、プログラム起動部420と、を備えている。
ROMモニタ410は、後述する更新中断情報に更新情報が格納されていない場合及び、又は更新中断情報にメンテナンスフラグが格納されていない場合、図2に示される汎用OS121を起動し、更新中断情報に更新情報が格納されている場合及び、又は更新中断情報にメンテナンスフラグが格納されている場合、後述する図9に示されるように、汎用レスキューOS131を起動する。
プログラム起動部420は、汎用OS121又は汎用レスキューOS131より呼び出され、サービス層起動部422と、アプリ起動部423と、起動情報設定部424と、を備えている。
Hereinafter, an example of the configuration of the multifunction machine starting unit 140 will be described with reference to FIGS. 7 and 8. FIG. 7 is a block diagram illustrating an example of the configuration of the multifunction machine starting unit.
As shown in FIG. 7, the multi-function peripheral activation unit 140 includes a ROM monitor 410 and a program activation unit 420.
The ROM monitor 410 activates the general-purpose OS 121 shown in FIG. 2 when update information is not stored in update interrupt information, which will be described later, or when a maintenance flag is not stored in update interrupt information. When update information is stored, or when a maintenance flag is stored in the update interruption information, the general-purpose rescue OS 131 is started as shown in FIG.
The program activation unit 420 is called from the general-purpose OS 121 or the general-purpose rescue OS 131, and includes a service layer activation unit 422, an application activation unit 423, and an activation information setting unit 424.

サービス層起動部422は、プログラム起動部420が汎用OS121より呼び出された場合は、汎用OS121の起動情報を取得して、プラットフォーム120を起動する。一方、サービス層起動部422は、プログラム起動部420が汎用レスキューOS131より呼び出された場合は、汎用レスキューOS131の起動情報を取得して、後述する図10に示すように、例えばSRM123や、MCS125、SCS122等を含むプラットフォーム120を起動する。
アプリ起動部423は、プログラム起動部420が汎用OS121より呼び出された場合に実行され、各アプリの起動情報を取得して各アプリを起動する。なお、後述する実施例4に示されるように、アプリ起動部423は、プログラム起動部420が汎用レスキューOS131より呼び出された場合であっても実行され、RRUアプリ117の起動情報を取得してRRUアプリ117を起動するようにしてもよい。
起動情報設定部424は、プラットフォーム120に含まれる各コントロールサービスやSRM123、アプリケーション130に含まれる各アプリのROM更新モードスレッドが実行されたときに起動され、各コントロールサービスや、SRM123及び各アプリの起動情報を取得して、取得した起動情報を環境変数に設定する。なお、起動情報設定部424は、後述する各コントロールサービスやSRM123、アプリケーション130に含まれる各アプリのレスキューモードスレッドが実行されたときにも起動され、各コントロールサービスや、SRM123及び各アプリの起動情報を取得して、取得した起動情報を環境変数に設定するようにしてもよい。
When the program activation unit 420 is called from the general-purpose OS 121, the service layer activation unit 422 acquires the activation information of the general-purpose OS 121 and activates the platform 120. On the other hand, when the program activation unit 420 is called from the general-purpose rescue OS 131, the service layer activation unit 422 acquires the activation information of the general-purpose rescue OS 131 and, as shown in FIG. 10 described later, for example, the SRM 123, the MCS 125, The platform 120 including the SCS 122 is activated.
The application activation unit 423 is executed when the program activation unit 420 is called from the general-purpose OS 121, acquires activation information of each application, and activates each application. Note that, as shown in Example 4 described later, the application activation unit 423 is executed even when the program activation unit 420 is called from the general-purpose rescue OS 131, and acquires activation information of the RRU application 117 to obtain the RRU. The application 117 may be activated.
The activation information setting unit 424 is activated when the ROM update mode thread of each control service, SRM 123, and application 130 included in the platform 120 is executed. The activation information setting unit 424 activates each control service, SRM 123, and each application. Acquire information and set the acquired startup information in the environment variable. The activation information setting unit 424 is activated also when a rescue mode thread of each application included in each control service, SRM 123, and application 130 described later is executed, and activation information of each control service, SRM 123, and each application. May be acquired, and the acquired activation information may be set as an environment variable.

以下、複合機100のメモリ構成の例を、図8を用いて説明する。
図8に示されるように、例えば、更新中断情報は、NVRAM空間に含まれ、ROM空間には、ROMモニタ410に対応するプログラムや、図2に示したようなプラットフォーム120のプログラムに対応する通常システムや、各アプリのプログラムに対応するアプリ1、アプリ2等が含まれている。ROM空間内のROMモニタ410は、通常システムの更新中断時の復旧動作に使用するため、書き換え不可となっている。
以下、図8に示したように、更新中断情報をNVRAM空間に格納する場合の更新中断情報のレイアウトの一例を、図9を参照して説明する。図9は、NVRAMに格納するネットワーク情報のレイアウトを説明するための図である。
図9に示されるように、ネットワーク情報は、自局IPアドレスと、サブネットマスク、ゲートウェイアドレス、ネットワークブートアドレスをそれぞれ4バイトずつと、ROMモニタにネットブートを指示するネットブートフラグの1バイトを備えている。
Hereinafter, an example of the memory configuration of the multifunction peripheral 100 will be described with reference to FIG.
As shown in FIG. 8, for example, the update interruption information is included in the NVRAM space, and in the ROM space, the program corresponding to the ROM monitor 410 or the program of the platform 120 as shown in FIG. An application 1, an application 2, and the like corresponding to the system and the program of each application are included. The ROM monitor 410 in the ROM space is normally used for a recovery operation when the update of the system is interrupted, and therefore cannot be rewritten.
Hereinafter, as shown in FIG. 8, an example of the layout of the update interruption information when the update interruption information is stored in the NVRAM space will be described with reference to FIG. FIG. 9 is a diagram for explaining the layout of the network information stored in the NVRAM.
As shown in FIG. 9, the network information includes a local station IP address, a subnet mask, a gateway address, and a network boot address of 4 bytes each, and 1 byte of a net boot flag that instructs the ROM monitor to perform a net boot. ing.

次に、RRUアプリの処理手順を図10のフローチャートを参照して説明する。
まず、RRUアプリは、更新データパケットを展開するのに必要な領域を得るための、MCSのROM更新モードスレッドに対して、更新データ領域の確保を要求する(ステップ10)。
MCSのROM更新モードスレッドにより、更新データ領域の先頭アドレスと、該更新データ領域の領域サイズと、を受け取ったRRUアプリは、ネットワーク情報を除去し、更新データパケットを、MCSのROM更新モードスレッドから通知された更新データ領域の先頭アドレスから展開する(ステップ11)。
次に、NVRAMのネットブートアドレスの設定の読み出しを行う。読み出したネットブートアドレスが正当であるか、実際にtftpプロトコルでアクセスを行う(ステップ12)。ここでのネットブートアドレスは、サーバのIPアドレスだったとして、tftpサーバ設定がなされていてアクセスが成功するものとする。
アクセスが成功すると(ステップ13)、プログラム記憶媒体から通常システムのコピーをtftpプロトコルでputを行う(ステップ14)。
Next, the processing procedure of the RRU application will be described with reference to the flowchart of FIG.
First, the RRU application requests the MCS ROM update mode thread to secure an update data area in order to obtain an area necessary for expanding the update data packet (step 10).
The RRU application that has received the start address of the update data area and the area size of the update data area by the MCS ROM update mode thread removes the network information and sends the update data packet from the ROM update mode thread of the MCS. Development starts from the start address of the notified update data area (step 11).
Next, the setting of the NVRAM net boot address is read. Whether the read net boot address is valid or not is actually accessed by the tftp protocol (step 12). Here, it is assumed that the net boot address is the IP address of the server, and the tftp server setting is made and the access is successful.
If the access is successful (step 13), a copy of the normal system is put out from the program storage medium using the tftp protocol (step 14).

もし、プログラム記憶媒体がフラッシュメモリであった場合は、メモリの吸い出しを行った後にputを行う。また、プログラム記憶媒体がフラッシュカードであった場合はファイルをそのままの状態でputする。さらに、すでにputされているファイルがある場合は通常システムをputをしなくてもいい。
その後、Putが正常に終了した場合、NVRAMのネットブートフラグをセットする(ステップ15)。
最後に、更新データパケットを展開した更新データ領域の先頭アドレスをSCSの通常モードスレッドに通知し、更新データの選定を依頼する(ステップ16)。
If the program storage medium is a flash memory, the put is performed after the memory is dumped. If the program storage medium is a flash card, the file is put as it is. Furthermore, if there is a file that has already been put, there is no need to put the system in the normal state.
After that, if Put ends normally, the NVRAM net boot flag is set (step 15).
Finally, the start address of the update data area in which the update data packet is expanded is notified to the SCS normal mode thread, and the selection of update data is requested (step 16).

次に、SCSのROM更新部によるROM更新処理終了後のリブート処理手順を図11のフローチャートを参照して説明する。
まず、RRUアプリのROM更新前処理シーケンスでセットしたNVRAMのネットブートフラグをクリアする(ステップ20)。その後、従来通りシステムリブートを行う(ステップ21)。
Next, a reboot process procedure after the ROM update process by the SCS ROM update unit will be described with reference to the flowchart of FIG.
First, the NVRAM net boot flag set in the RRU application ROM update pre-processing sequence is cleared (step 20). Thereafter, a system reboot is performed as usual (step 21).

次に、ROMモニタによるブート時のOS切り換え処理手順を、図12のフローチャート参照して説明する。
電源投入後(ステップ30)、ROMモニタ410を起動し(ステップ31)、ROMモニタ410は、NVRAMのネットブートフラグがセットされているかどうかを判定する。ROMモニタ410は、NVRAMのネットブートフラグがセットされていないと判定すると(ステップ32;N)、汎用OS121を起動する(ステップ40)。
そして、起動された汎用OS121は、プログラム起動部420を起動する(ステップ41)。その後、プログラム起動部420に含まれるサービス層起動部422は、プラットフォーム120を起動する(ステップ42)。
ここで、プログラム起動部420に含まれるアプリ起動部423は、アプリケーション130を起動し(ステップ43)、一方、ROMモニタ410は、tftp経由で通常システムのgetを行う(ステップ44)。
Next, the OS switching processing procedure at the time of booting by the ROM monitor will be described with reference to the flowchart of FIG.
After power-on (step 30), the ROM monitor 410 is activated (step 31), and the ROM monitor 410 determines whether the NVRAM net boot flag is set. When the ROM monitor 410 determines that the NVRAM net boot flag is not set (step 32; N), the ROM monitor 410 starts the general-purpose OS 121 (step 40).
Then, the activated general-purpose OS 121 activates the program activation unit 420 (step 41). Thereafter, the service layer activation unit 422 included in the program activation unit 420 activates the platform 120 (step 42).
Here, the application activation unit 423 included in the program activation unit 420 activates the application 130 (step 43), while the ROM monitor 410 performs a normal system get via tftp (step 44).

一方、NVRAMのネットブートフラグがセットされていると判定すると(ステップ32;Y)、ネットブートサーバから通常システムを取得し(ステップ33)、取得した通常システム内の汎用OS121を起動する(ステップ34)。
そして、起動された汎用OS121は、ステップ33において取得した通常システム内のプログラム起動部420を起動し(ステップ35)、ここで起動されたプログラム起動部420に含まれるサービス層起動部422は、プラットフォーム120を起動する(ステップ36)。
そして、ステップ36において起動されたプログラム起動部420に含まれるアプリ起動部423は、アプリケーション130を起動し(ステップ37)、続いて、複合機として起動する(ステップ38)。
その後、SCSは、NVRAMのネットブートフラグがセットと更新中断情報の格納を確認すると、サービス、アプリに対して複合機機能停止通知を行い、RRUアプリ117は更新パケット受信待機状態になる。待機状態時、SCSは図13に示す受信待機画面を表示する(ステップ39)。
On the other hand, if it is determined that the NVRAM net boot flag is set (step 32; Y), the normal system is acquired from the net boot server (step 33), and the general-purpose OS 121 in the acquired normal system is started (step 34). ).
Then, the activated general-purpose OS 121 activates the program activation unit 420 in the normal system acquired in step 33 (step 35), and the service layer activation unit 422 included in the program activation unit 420 activated here is a platform 120 is started (step 36).
Then, the application activation unit 423 included in the program activation unit 420 activated in step 36 activates the application 130 (step 37), and subsequently activates as a multifunction machine (step 38).
Thereafter, when the SCS confirms that the NVRAM net boot flag is set and storage of the update interruption information, the SCS notifies the service and application of the multifunction peripheral function stop, and the RRU application 117 enters an update packet reception standby state. In the standby state, the SCS displays the reception standby screen shown in FIG. 13 (step 39).

次に、第2の実施例を説明する。
以下、複合機100のメモリ構成の例を、図14参照して説明する。
図14に示されるように、例えば、更新中断情報は、NVRAM空間に含まれ、ROM空間には、ROMモニタ410に対応するプログラムや、図2に示したようなプラットフォーム120のプログラムに対応する通常システム、それに対応する電子署名、公開鍵や、各アプリのプログラムに対応するアプリ1、アプリ2等とそれに対応する電子署名、公開鍵が含まれている。ROM空間内のROMモニタ410は、通常システムの更新中断時の復旧動作に使用するため、書き換え不可となっている。
Next, a second embodiment will be described.
Hereinafter, an example of the memory configuration of the multifunction peripheral 100 will be described with reference to FIG.
As shown in FIG. 14, for example, the update interruption information is included in the NVRAM space, and in the ROM space, the program corresponding to the ROM monitor 410 or the program of the platform 120 as shown in FIG. The system includes an electronic signature and a public key corresponding to the system, an application 1 and an application 2 corresponding to each application program, and an electronic signature and a public key corresponding to the application. The ROM monitor 410 in the ROM space is normally used for a recovery operation when the update of the system is interrupted, and therefore cannot be rewritten.

図15は、プログラム起動部が行う電子署名チェックの処理手順を示したフローチャートである。プログラム起動部はまず、MDaを作成する(ステップ51)。MDaは、通常システム、アプリ等プログラムのメッセージダイジェストである。プログラム起動部は次に、MDbを作成する(ステップ52)。MDbは、電子署名(通常システム、アプリ等プログラムのメッセージダイジェストを秘密鍵により暗号化したもの)を公開鍵により復号化したメッセージダイジェストである。プログラム起動部はそして、通常システム、アプリ等プログラムの電子署名の正当性をMDaとMDbとの照合をもって判断する(ステップ53)。ここで、MDaとMDbとが一致すれば(ステップ53;Y)、通常システム、アプリ等プログラムの電子署名は正当であると判断される(ステップ54)。一方、MDaとMDbとが一致しなければ(ステップ53;N)、通常システム、アプリ等プログラムの電子署名は正当でないと判断される(ステップ55)。   FIG. 15 is a flowchart showing the processing procedure of the electronic signature check performed by the program activation unit. The program starting unit first creates MDa (step 51). MDa is a message digest of a program such as a normal system or an application. Next, the program starting unit creates MDb (step 52). MDb is a message digest obtained by decrypting an electronic signature (usually a message digest of a program such as a system or an application using a secret key) with a public key. Then, the program activation unit determines the validity of the electronic signature of the program such as the normal system or application by comparing MDa and MDb (step 53). Here, if MDa and MDb match (step 53; Y), it is determined that the electronic signature of the program such as the normal system or application is valid (step 54). On the other hand, if MDa and MDb do not match (step 53; N), it is determined that the electronic signature of the program such as the normal system or application is not valid (step 55).

次に、RRUアプリの処理シーケンスについては、図10と同様になる。ここで、実施例1との相違点は、tftpで通常システムのputをする際、通常システム用の電子認証と公開鍵もputを行う点のみである。
次に、ROMモニタによるブート時のOS切り換え処理について、図13と同様になる。実施例1との相違点は、ステップ17に進み、ROMモニタ410は、tftp経由で通常システムのgetを行うが、このとき通常システムの電子署名と、公開鍵をgetし、図15の電子署名チェックを行う点のみである。
Next, the processing sequence of the RRU application is the same as that shown in FIG. Here, the difference from the first embodiment is only that the normal system electronic authentication and the public key are also put when the normal system is put in tftp.
Next, the OS switching process at the time of booting by the ROM monitor is the same as in FIG. The difference from the first embodiment is that the process proceeds to step 17 where the ROM monitor 410 obtains the normal system via ftp, and at this time, the electronic signature of the normal system and the public key are obtained, and the electronic signature of FIG. It is only a point to check.

本実施例に係る画像形成装置を取り巻くネットワーク構成例を示した図である。1 is a diagram illustrating a network configuration example surrounding an image forming apparatus according to an embodiment. 画像形成装置の構成を示すブロック図である。1 is a block diagram illustrating a configuration of an image forming apparatus. 複合機のハードウェア構成を示すブロック図である。FIG. 2 is a block diagram illustrating a hardware configuration of a multifunction machine. リモートROM更新の全体処理を説明するための図である。It is a figure for demonstrating the whole process of remote ROM update. リモートROM更新の全体処理を説明するための図である。It is a figure for demonstrating the whole process of remote ROM update. 複合機で受信した更新データパケットの展開後のデータ構造図である。FIG. 10 is a data structure diagram after development of an update data packet received by the multifunction machine. 複合機起動部の構成の一例を示すブロック図である。3 is a block diagram illustrating an example of a configuration of a multifunction machine starting unit. FIG. 複合機のメモリ構成の例を示した図である。2 is a diagram illustrating an example of a memory configuration of a multifunction peripheral. FIG. NVRAMに格納するネットワーク情報のレイアウトを説明するための図である。It is a figure for demonstrating the layout of the network information stored in NVRAM. RRUアプリのROM変更更新処理の手順を示したフローチャートである。It is the flowchart which showed the procedure of the ROM change update process of a RRU application. SCSのROM更新部によるROM更新処理終了後のリブート処理の手順を示したフローチャートである。It is the flowchart which showed the procedure of the reboot process after the ROM update process by the ROM update part of SCS. ブート時のOS切り換え処理を説明するためのフローチャートである。It is a flowchart for demonstrating OS switching processing at the time of booting. 受信待機画面の例を示した図である。It is the figure which showed the example of the reception waiting screen. メモリの構成の一例を示した図である。It is the figure which showed an example of the structure of memory. プログラム起動部が行う電子署名チェックに係るフローチャートである。It is a flowchart which concerns on the electronic signature check which a program starting part performs.

符号の説明Explanation of symbols

100 複合機
101 プロッタ
102 スキャナ
103 FCU(Fax Control Unit)
104 その他ハードウェアリソース
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
117 リモートROM更新アプリ(RRUアプリ)
120 プラットフォーム
121 汎用OS(Operating System)
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 アプリケーション
140 複合機起動部
203 SDRAM
204 フラッシュメモリ
208 NVRAM
410 ROMモニタ
420 プログラム起動部
422 サービス層起動部
423 アプリ起動部
424 起動情報設定部
1300 コントローラ
1301 ASIC
1303 HDD(Hard Disk Drive)
1304 CPU
1305 NB
1306 システムメモリ
1307 SB
1308 AGP
1309 PCIバス
1310 オペレーションパネル
1330 USB(Universal Serial Bus)
1340 IEEE1394
1341 NIC
1342 セントロニクス
1343 ドライバI/F
1350 エンジン部
100 MFP 101 Plotter 102 Scanner 103 FCU (Fax Control Unit)
104 Other hardware resources 110 Software group 111 Printer application 112 Copy application 113 Fax application 114 Scanner application 115 Net file application 117 Remote ROM update application (RRU application)
120 Platform 121 General-purpose OS (Operating System)
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130 Application 140 Multifunction Device Startup Unit 203 SDRAM
204 Flash memory 208 NVRAM
410 ROM monitor 420 Program activation unit 422 Service layer activation unit 423 Application activation unit 424 Activation information setting unit 1300 Controller 1301 ASIC
1303 HDD (Hard Disk Drive)
1304 CPU
1305 NB
1306 System memory 1307 SB
1308 AGP
1309 PCI bus 1310 operation panel 1330 USB (Universal Serial Bus)
1340 IEEE 1394
1341 NIC
1342 Centronics 1343 Driver I / F
1350 engine

Claims (6)

プログラムを記憶するプログラム記憶手段と、
このプログラム記憶手段に記憶されているプログラムに係る更新データを受信する更新データ受信手段と、
前記更新データ受信手段において受信した前記更新データに基づいて、前記プログラム記憶手段に記録されている対応するプログラムを更新するプログラム更新手段と、を備えた複合機能を有するネットワーク対応の画像形成装置であって、
当該画像形成装置が起動されていたときに、前記プログラム更新手段によるプログラムの更新が中断されたかどうかを判断する更新中断判定手段と、
前記更新中断判定手段における判定結果に応じて、対応するオペレーティングシステムを起動するOS起動手段を備え、
このOS起動手段が送受信機能を有することを特徴とする画像形成装置。
Program storage means for storing a program;
Update data receiving means for receiving update data related to the program stored in the program storage means;
A network-compliant image forming apparatus having a composite function, comprising: a program update unit that updates a corresponding program recorded in the program storage unit based on the update data received by the update data reception unit. And
An update interruption determination unit that determines whether or not the program update by the program update unit is interrupted when the image forming apparatus is activated;
OS booting means for booting the corresponding operating system according to the determination result in the update interruption determination means,
An image forming apparatus, wherein the OS activation unit has a transmission / reception function.
前記プログラム更新手段においてプログラムが更新される前に、当該画像形成装置からのデータ受信可能な手段を有する他の画像処理装置を判定する判定手段と、
この判定手段の判定結果に応じて、前記他の画像処理装置の記憶媒体に対して更新される前のプログラムを記録するために送信する送信手段と、を備え、
前記OS起動手段が前記他の画像形成装置内の記憶媒体から更新前プログラムを受信し、受信した前記プログラムを起動し、
起動された前記プログラムが再度更新データを受信し、この更新データに含まれるプログラムで書き換えることを特徴とする請求項1記載の画像形成装置。
Determination means for determining another image processing apparatus having means capable of receiving data from the image forming apparatus before the program is updated in the program update means;
According to the determination result of the determination means, and a transmission means for transmitting to record the program before being updated to the storage medium of the other image processing apparatus,
The OS activation unit receives the pre-update program from the storage medium in the other image forming apparatus, activates the received program;
The image forming apparatus according to claim 1, wherein the activated program receives update data again and rewrites the program with a program included in the update data.
前記判定手段が、前記他の画形成装置内の記憶媒体に起動可能なプログラムが有ることを確認する確認機能を備えていることを特徴とする請求項2記載の画像形成装置。 The image forming apparatus according to claim 2, wherein the determination unit includes a confirmation function for confirming that there is a bootable program in a storage medium in the other image forming apparatus. 前記OS起動手段は、更に前記起動可能なプログラムと対応する電子署名とで電子認証を行うことを特徴とする請求項1、請求項2または請求項3記載の画像形成装置。 The image forming apparatus according to claim 1, wherein the OS activation unit further performs electronic authentication using the bootable program and a corresponding electronic signature. 前記送信手段が更新される前のプログラムを送信する際、同時に前記電子署名を送信することを特徴とする請求項4記載の画像形成装置。 The image forming apparatus according to claim 4, wherein the electronic signature is transmitted simultaneously with the transmission of the program before the transmission unit is updated. 前記OS起動手段が前記他の画像形成理装置内の記憶媒体から更新前プログラムを受信する際、同時に前記電子署名も受信することを特徴とする請求項5記載の画像形成装置。 6. The image forming apparatus according to claim 5, wherein when the OS activation unit receives the pre-update program from the storage medium in the other image forming apparatus, the electronic signature is also received at the same time.
JP2004296904A 2004-10-08 2004-10-08 Image formation device Pending JP2006103290A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004296904A JP2006103290A (en) 2004-10-08 2004-10-08 Image formation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004296904A JP2006103290A (en) 2004-10-08 2004-10-08 Image formation device

Publications (1)

Publication Number Publication Date
JP2006103290A true JP2006103290A (en) 2006-04-20

Family

ID=36373523

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004296904A Pending JP2006103290A (en) 2004-10-08 2004-10-08 Image formation device

Country Status (1)

Country Link
JP (1) JP2006103290A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117060A (en) * 2006-11-01 2008-05-22 Seiko Epson Corp Information processor, information updating method, and program therefor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117060A (en) * 2006-11-01 2008-05-22 Seiko Epson Corp Information processor, information updating method, and program therefor

Similar Documents

Publication Publication Date Title
JP4848190B2 (en) Application execution apparatus, application execution method, and application execution program
JP4936549B2 (en) Server device, management system, management method, storage medium, program
US20030044185A1 (en) Image forming apparatus, program updating method and recording medium
JP4209789B2 (en) File creation method, server, recording medium, and program addition system
JP2006345318A (en) System and method for processing image
US8495364B2 (en) Image processing apparatus and method using electronic signature information
JP2004303216A (en) Information processor, image forming apparatus, error processing method in starting program, and recording medium
US20070041047A1 (en) Image forming device and authentication charging method
JP2005196745A (en) Information processing device, program recovery method, program recovery program, and recording medium
JP2005148934A (en) Information processor, program activation method, program activation program and recording medium
JP4409992B2 (en) Image forming apparatus, program update method, and update storage medium
JP2004303209A (en) Image forming apparatus, program updating method, and storage medium for update
JP4246540B2 (en) Image forming apparatus and program execution method
JP2009070247A (en) Information processor, information processing method, and image processor
JP2004303222A (en) Information processor, image forming forming device, program starting method, and recording medium
JP2007295371A (en) Image forming device and computer program
JP4440576B2 (en) Image forming apparatus, usage authentication information issuing method, and usage authentication information issuing system
JP2006103290A (en) Image formation device
JP4276885B2 (en) Image forming apparatus and path designation method
JP2009194862A (en) Information acquisition method, image forming apparatus, and image forming system
JP4485749B2 (en) Image forming apparatus
JP3993121B2 (en) Information processing apparatus and program addition method
JP2004046804A (en) Image forming apparatus and data processing method
JP2003341175A (en) Imaging apparatus, and method and system for outputting accumulated document
JP3857654B2 (en) Image forming apparatus, user information management method, user information management program, and recording medium