JP2006103290A - Image formation device - Google Patents
Image formation device Download PDFInfo
- 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
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Facsimiles In General (AREA)
Abstract
Description
本発明は、ネットワークを用いたプログラム更新のエラー復旧対処が迅速に行える画像形成装置に関する。 The present invention relates to an image forming apparatus that can quickly cope with error recovery in program update using a network.
近年、プリンタ、コピー、ファクシミリ、スキャナを1つの筺体に収納した複合機が広く普及している。
このような複合機においては、多数の機能を実現する必要から不定期かつ頻繁にプログラムの更新をすることが求められていた。
そこで、出願人は、プログラムの更新作業を迅速、正確かつ容易に行う技術として、以下の発明を提案している。
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.
ところで、リモートでファームウェアの更新を行う場合、システムの書き換えを誤ると再起動できなくなるという問題があった。
これに対して、画像形成装置として動作するためのプログラムの他に、別途更新中断時の復旧のためのプログラム復旧プログラム(レスキュー)を用いる方法可能であるが、これでは、情報処理装置内にプログラム復旧を行うレスキューが必ず必要であり、記憶媒体の必要容量が増大していた。また、現在のレスキューはプラットフォームの一部を搭載しているためにサイズ削減には限界があった。
そこで、本発明では、画像形成装置にプラットフォームを使用するレスキューは搭載せずにプログラム復旧が可能な画像形成装置を提供することを目的としている。
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
The
An OS (operating system) such as Windows (registered trademark) is installed in the
The multifunction peripheral 100 that is an image forming apparatus is connected by a network I / F (interface). The
図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
As illustrated in FIG. 2, the multifunction peripheral 100 includes a
複合機起動部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
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-
The
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
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
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
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
The process of the
ECS124のプロセスは、プロッタ101、スキャナ102、FCU(Fax Control Unit)103、その他ハードウェアリソース104、のエンジンの制御等の処理を行う通常モードスレッドと、このようなエンジン制御を行わずに単に起動されるだけのROM更新モードスレッドと、を有している。
このように、SRM123、ECS124、FCS127の各ROM更新モードスレッドはいずれも単に起動されるだけであるが、これは、ROM更新処理時に、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。
The process of the
As described above, all the ROM update mode threads of the
一方、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
The application 130 includes a
これらの各アプリも、プラットフォーム120と同様にそれぞれプロセスとして起動され、RRUアプリ117以外の各アプリは、各々上述したような処理を行う通常モードスレッドと、当該自身の存在を示すために起動されるROM更新モードスレッドと、を有する。
Each of these apps is also started as a process, like the platform 120, and each app other than the
図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
コントローラ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
Thus, the reason for connecting via the
Here, the
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
For example, when the
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
A
ドライバ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
The
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
HDD1303は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積、文書の蓄積を行うストレージであり、オペレーションパネル1310は、操作者からの入力操作の受け付け並びに操作者に向けた表示を行う操作部である。
ASIC1301には、NVRAM208及びSDRAM203等を接続するためのRAMインターフェースと、フラッシュROM204を接続するためのROMインターフェースと、HDD1303を接続するためのハードディスクインターフェースと、が設けられ、これらの記憶部に対して画像データの入出力を行う場合には、入出力先がRAMインターフェース又はROMインターフェース又はハードディスクインターフェースに切り替えられる。
AGP1308は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、システムメモリ1306に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にする。
The
The
The
以下、リモート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
The normal mode thread of the
NCS128の通常モードスレッドよりROMの更新データパケットを受信した旨を通知されたRRUアプリ117は、SCS122の通常モードスレッドに対して、ROM更新モードスレッドの移行依頼通知の発行を要求する(シーケンスSQ3)。
RRUアプリ117よりROM更新モードスレッドの移行依頼通知の発行を要求されたSCS122の通常モードスレッドは、プリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115、ECS124、MCS125、OCS126、FCS127、NCS128の各通常モードスレッドに対して、ROM更新モードスレッドの移行依頼を通知する(シーケンスSQ4)。
The
The normal mode threads of the
図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
In addition, the
RRUアプリ117より更新データ領域の確保を要求されたMCS125のROM更新モードスレッドは、例えば、SDRAM203上に更新データ領域を確保して、該更新データ領域の先頭アドレスと、該更新データ領域の領域サイズと、をRRUアプリ117に返す(シーケンスSQ6)。
MCS125のROM更新モードスレッドより、更新データ領域の先頭アドレスと、該更新データ領域の領域サイズと、を受け取ったRRUアプリ117は、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新データパケットを、MCS125のROM更新モードスレッドから通知された更新データ領域の先頭アドレスから展開する。
The ROM update mode thread of the
The
以下、更新データ領域に展開された更新データパケットの一例を、図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
The
The
図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
The normal mode thread of the
Further, the ROM update mode thread of the
以下、複合機起動部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
As shown in FIG. 7, the multi-function
The
The program activation unit 420 is called from the general-
サービス層起動部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-
The
The activation
以下、複合機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
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
Then, the activated general-
Here, the
一方、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 (
Then, the activated general-
Then, the
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
次に、第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
図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 (
次に、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
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
104
120
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
130
204
410 ROM monitor 420
1303 HDD (Hard Disk Drive)
1304 CPU
1305 NB
1306
1308 AGP
1309
1340
1341 NIC
1342
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.
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)
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 |
-
2004
- 2004-10-08 JP JP2004296904A patent/JP2006103290A/en active Pending
Cited By (1)
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 |