JP2005173888A - Information processor, method and program for restoring program, and recording medium - Google Patents
Information processor, method and program for restoring program, and recording medium Download PDFInfo
- Publication number
- JP2005173888A JP2005173888A JP2003411680A JP2003411680A JP2005173888A JP 2005173888 A JP2005173888 A JP 2005173888A JP 2003411680 A JP2003411680 A JP 2003411680A JP 2003411680 A JP2003411680 A JP 2003411680A JP 2005173888 A JP2005173888 A JP 2005173888A
- Authority
- JP
- Japan
- Prior art keywords
- program
- update
- screen
- recovery
- rom
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Stored Programmes (AREA)
- Facsimiles In General (AREA)
Abstract
Description
本発明は、情報処理装置、プログラム復旧方法、プログラム復旧プログラム及び記録媒体に関する。 The present invention relates to an information processing apparatus, a program recovery method, a program recovery program, and a recording medium.
従来、プリンタ、コピー、ファクシミリ、スキャナ等の装置はそれぞれ別筐体として配設されるのが一般的であった。しかし、最近では、これら各装置の機能を1つの筐体内に収納した画像形成装置が知られている。この画像形成装置は、1つの筐体内に表示部、印刷部及び撮像部等を設けると共に、プリンタ、コピー、スキャナ及びファクシミリ装置にそれぞれ対応する4種類のソフトウェアを設け、ソフトウェアの切り替えによって、当該装置をプリンタ、コピー、スキャナ及びファクシミリ装置として動作させるものである。 Conventionally, devices such as printers, copiers, facsimiles, scanners and the like are generally arranged as separate housings. However, recently, an image forming apparatus in which the functions of these devices are housed in a single housing is known. This image forming apparatus is provided with a display unit, a printing unit, an imaging unit, and the like in one casing, and four types of software corresponding to a printer, a copy, a scanner, and a facsimile device, respectively. Are operated as a printer, a copy, a scanner, and a facsimile apparatus.
このような従来の画像形成装置では、プリンタ、コピー、スキャナ及びファクシミリの各機能ごとにソフトウェアを組み込んだ書き換え不可能なROM(Read Only Memory)を搭載したコントローラボードを設け、複数の機能を実現する構成としていた。 In such a conventional image forming apparatus, a controller board equipped with a non-rewritable ROM (Read Only Memory) in which software is incorporated for each function of a printer, a copy, a scanner, and a facsimile is provided to realize a plurality of functions. Was configured.
したがって、従来の画像形成装置では、各機能の変更、追加等を行う場合に、機能追加又は機能変更を反映したプログラムを組み込んだ新たなROMを用意してROMごと交換するというハードウェア的な作業が必要であり、更新作業の労力が過大なものとなっていた。 Therefore, in the conventional image forming apparatus, when changing or adding each function, a hardware operation of preparing a new ROM incorporating a program reflecting the function addition or function change and replacing the ROM together. Was necessary, and the labor of the update work was excessive.
このため、最近の画像形成装置はフラッシュメモリのように電気的に内容の書き換えが可能なROMにプリンタ、コピー、スキャナ及びファクシミリの各機能を含むプログラムを組み込み、複数の機能を複合サービスとして実現している。 For this reason, recent image forming apparatuses incorporate a program that includes printer, copy, scanner, and facsimile functions into a ROM that can be electrically rewritten, such as a flash memory, and realize multiple functions as a combined service. ing.
このような画像形成装置は、各機能の変更、追加等を行う場合に、機能追加又は機能変更を行ったプログラムを更新データとしてフラッシュカードに記録し、このフラッシュカードを画像形成装置のフラッシュカードインタフェースに挿入した状態で画像形成装置を再起動する。 In such an image forming apparatus, when each function is changed or added, a program in which the function is added or changed is recorded as update data in a flash card, and this flash card is stored in the flash card interface of the image forming apparatus. And restarting the image forming apparatus.
このとき画像形成装置は、更新プログラムによって更新データをフラッシュカードから読み出し、読み出された更新データによってフラッシュメモリに記録されているプログラムが更新されるようになっている。このように、最近の画像形成装置では、電気的に書き換え可能というフラッシュメモリの特性を利用して、ソフトウェア的にROM更新を行っている。 At this time, the image forming apparatus reads the update data from the flash card by the update program, and the program recorded in the flash memory is updated by the read update data. As described above, in recent image forming apparatuses, the ROM update is performed in software by utilizing the characteristic of the flash memory that is electrically rewritable.
例えば特許文献1には、ソフトウェアの変更や追加に柔軟に対処することを課題とする技術が記載されている。 For example, Japanese Patent Laid-Open No. 2004-228561 describes a technology that has a problem of flexibly dealing with software changes and additions.
ところで、出願人は、表示部、印刷部及び撮像部等の画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピー、スキャナ及びファクシミリ等の各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットフォームを備えた画像形成装置を発明した(特許文献2参照。)。 By the way, the applicant has hardware resources used in image forming processing such as a display unit, a printing unit, and an imaging unit, and performs an application specific to each user service such as a printer, a copy, a scanner, and a facsimile. When providing a user service by interposing between these applications and hardware resources, management, execution control and image formation of hardware resources commonly required by at least two of the applications An image forming apparatus provided with a platform including various control services for processing has been invented (see Patent Document 2).
なお、ユーザサービスとはユーザに提供する画像形成に係るサービスをいう。また、コントロールサービスとはアプリケーションに画像形成に係るハードウェア資源を提供するサービスをいう。 The user service is a service related to image formation provided to the user. The control service refers to a service that provides hardware resources related to image formation to an application.
この画像形成装置によれば、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行うプラットフォームを備えた構成とすることによって、通常の画像形成装置に比べて将来的なアプリケーションの追加やコントロールサービスの追加等のソフトウェア開発を容易に行うことができ、拡張性が高いものとなっている。このため、このような構成の画像形成装置では、機能追加や機能変更によるプログラム更新の必要性が従来の画像形成装置よりも非常に高くなってくる。 According to this image forming apparatus, a configuration including a hardware resource management, execution control, and image forming process that are commonly required by at least two applications is compared with a normal image forming apparatus. Therefore, software development such as future application addition and control service addition can be easily performed, and the scalability is high. For this reason, in the image forming apparatus having such a configuration, the necessity of program update due to function addition or function change is much higher than that of the conventional image forming apparatus.
例えば、画像形成装置の使用契約では、プリンタ、コピー、スキャナの機能のみを使用する契約で画像形成装置を導入し稼働していたが、使用契約の変更によりファクシミリ機能を追加して画像形成装置を使用する場合も考えられる。この場合、ファクシミリ機能の追加により、ファクシミリ用のアプリケーションの追加、及びこれに伴うプラットフォームの追加、変更が必要となってくる。 For example, in an image forming apparatus usage contract, an image forming apparatus was introduced and operated under a contract that uses only the functions of a printer, a copy, and a scanner. It can also be used. In this case, the addition of a facsimile function necessitates the addition of a facsimile application and the accompanying addition or change of a platform.
このような複数のアプリケーション及び共通的な処理を行うプラットフォームを備えた構成の画像形成装置の場合には、特にこのような機能変更、機能追加の要求が不定期に且つ頻繁に生じるケースが多い。このため、従来のプログラム更新方法のように、プログラム更新を行うごとにフラッシュカードを入手し、そのフラッシュカードから更新データを読み込んでROMに格納されたプログラムの更新を行うという作業では、不定期に且つ頻繁に生じるプログラム更新のニーズに迅速に対応できない。また、フラッシュカードを用いたプログラム更新方法では、更新作業が非常に煩雑となり、作業効率が悪いという問題がある。 In the case of an image forming apparatus having a configuration including a plurality of applications and a platform for performing common processing, there are many cases where such a request for function change and function addition occurs irregularly and frequently. Therefore, as in the conventional program update method, every time a program is updated, a flash card is obtained, and update data is read from the flash card and the program stored in the ROM is updated. In addition, it cannot respond quickly to frequent program update needs. In addition, the program update method using a flash card has a problem that the update work becomes very complicated and the work efficiency is poor.
したがって、出願人は、ネットワーク経由でプログラムの更新データを受信し、該更新データを用いてプログラム更新を行う画像形成装置、プログラム更新方法及び記録媒体を発明した(特許文献3参照。)。
しかしながら、例えば上述したネットワーク経由でプログラムの更新データを受信し、該更新データを用いてプログラム更新を行う画像形成装置では、プログラム更新中に停電やコンセント抜け、人為的電源OFF等が起こると、次回の画像形成装置の電源ONで、画像形成装置の機能の一部又は全てが使用不可能になってしまう問題があった。 However, for example, in an image forming apparatus that receives program update data via the above-described network and updates the program using the update data, the next time the program is updated, if a power failure, outlet disconnection, artificial power OFF occurs, etc. When the image forming apparatus is turned on, some or all of the functions of the image forming apparatus become unusable.
以下、プログラムの更新中断後に画像形成装置の機能の一部が使用不可能になった一例を、図1を用いて説明する。図1は、プログラムの更新中断後に画像形成装置の機能の一部が使用不可能になった一例を説明するための図である。なお、画像形成装置の構成の詳細は後述する図3等を用いて説明する。 Hereinafter, an example in which a part of the functions of the image forming apparatus becomes unusable after the program update is interrupted will be described with reference to FIG. FIG. 1 is a diagram for explaining an example in which some of the functions of the image forming apparatus become unusable after the program update is interrupted. Details of the configuration of the image forming apparatus will be described with reference to FIG.
図1(A)は、プラットフォームの更新前の画像形成装置の一例を示している。一方、図1(B)は、プラットフォームの更新中に、例えば人為的に電源OFFされ、再び起動した後の画像形成装置の一例を示している。 FIG. 1A shows an example of an image forming apparatus before the platform is updated. On the other hand, FIG. 1B shows an example of the image forming apparatus after the power is turned off artificially and restarted, for example, during the platform update.
図1(B)は、図1(A)と比べて、SRMと、SCSと、NCSと、は、v.1.00からv.1.10にプログラムが更新されているが、例えばプラットフォームを構成するプロセスの一つであるECSに係るプログラムの更新中に画像形成装置の電源がOFFされたため、図1(B)ではECSが起動されておらず、コピーアプリ及びプリンタアプリ等が使用不可能となっている。 In FIG. 1B, SRM, SCS, and NCS are different from those in FIG. 1.00 to v. Although the program has been updated to 1.10, for example, the ECS is activated in FIG. 1B because the power of the image forming apparatus was turned off during the update of the program related to ECS, which is one of the processes constituting the platform. The copy application, the printer application, and the like cannot be used.
また、例えば上述したネットワーク経由でプログラムの更新データを受信し、該更新データを用いてプログラム更新を行う画像形成装置では、プログラム更新後の画像形成装置で、更新を行ったプログラムと、更新を行わなかったプログラムと、の組み合わせ等が原因で画像形成装置の機能の一部又は全てが使用不可能又は動作が不安定となった場合も、画像形成装置を容易に復旧できない問題もあった。 Further, for example, in an image forming apparatus that receives program update data via the network and updates the program using the update data, the image forming apparatus after the program update performs the update with the updated program. Even when some or all of the functions of the image forming apparatus cannot be used or the operation becomes unstable due to a combination with a program that does not exist, there is a problem that the image forming apparatus cannot be easily restored.
以下、バージョンの不整合により画像形成装置の機能の一部が使用不可能になった一例を、図2を用いて説明する。図2は、バージョンの不整合により画像形成装置の機能の一部が使用不可能になった一例を説明するための図である。 Hereinafter, an example in which a part of the functions of the image forming apparatus cannot be used due to version mismatch will be described with reference to FIG. FIG. 2 is a diagram for explaining an example in which some of the functions of the image forming apparatus become unusable due to version mismatch.
図2(A)は、コピーアプリの更新前の画像形成装置の一例を示している。一方、図2(B)は、コピーアプリの更新後、コピーアプリv.2.00と、ECSv.1.00と、の組み合わせだと、コピーアプリが正常に動作しない一例を示している。 FIG. 2A illustrates an example of the image forming apparatus before the copy application is updated. On the other hand, FIG. 2B shows the copy application v. 2.00 and ECSv. A combination of 1.00 shows an example in which the copy application does not operate normally.
本発明は、上記の点に鑑みなされたもので、プログラムの更新に係り生じる問題を容易に解決し、装置及び/又はプログラムを復旧させることを目的とする。また、本発明は、装置及び/又はプログラムの復旧に係る画面を表示し、ユーザに情報を提供することを目的とする。 The present invention has been made in view of the above points, and it is an object of the present invention to easily solve problems associated with program update and restore the apparatus and / or program. Another object of the present invention is to display a screen related to restoration of an apparatus and / or program and provide information to a user.
そこで、上記問題を解決するため、本発明は、プログラムを記憶するプログラム記憶手段と、該プログラム記憶手段に記憶されているプログラムに係る更新データを受信する更新データ受信手段と、前記更新データに基づいて、前記プログラム記憶手段に記憶されている対応するプログラムを更新するプログラム更新手段と、を有する情報処理装置であって、当該情報処理装置が前回起動されていたときに、前記プログラム更新手段における前記プログラムの更新が中断されたかどうかを判定する更新中断判定手段と、前記更新中断判定手段における判定結果に応じて、対応するオペレーティングシステムを起動するオペレーティングシステム起動手段と、前記プログラム記憶手段に記憶されているプログラムを復旧する第一プログラム復旧手段と、前記オペレーティングシステム起動手段において起動されたオペレーティングシステムに応じて、画面に係る制御を行う画面制御手段と、を有することを特徴とする。 Therefore, in order to solve the above problem, the present invention is based on 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 data. An information processing apparatus having a program update means for updating a corresponding program stored in the program storage means, when the information processing apparatus has been activated last time, the program update means in the program update means Update interruption determination means for determining whether or not the program update has been interrupted, operating system activation means for activating a corresponding operating system in accordance with the determination result in the update interruption determination means, and stored in the program storage means The first program to restore the existing program And stage, in response to said operating system activated in the operating system boot device, and having a screen control means for performing control relating to the screen, the.
また、本発明は、プログラムを記憶するプログラム記憶手段と、該プログラム記憶手段に記憶されているプログラムに係る更新データを受信する更新データ受信手段と、前記更新データに基づいて、前記プログラム記憶手段に記憶されている対応するプログラムを更新するプログラム更新手段と、を有する情報処理装置であって、当該情報処理装置が前回起動されていたときに、前記プログラム記憶手段に記憶されているプログラムを復旧するため、リブートされたかどうかを判定するリブート判定手段と、前記リブート判定手段における判定結果に応じて、対応するオペレーティングシステムを起動するオペレーティングシステム起動手段と、前記プログラム記憶手段に記憶されているプログラムを復旧する第二プログラム復旧手段と、前記オペレーティングシステム起動手段において起動されたオペレーティングシステムに応じて、画面に係る制御を行う画面制御手段と、を有することを特徴とする。 The present invention also provides a program storage means for storing a program, an update data receiving means for receiving update data relating to the program stored in the program storage means, and the program storage means based on the update data. An information processing apparatus that updates a corresponding program stored therein, and restores the program stored in the program storage means when the information processing apparatus was last activated Therefore, a reboot determination unit that determines whether or not a reboot has occurred, an operating system activation unit that activates a corresponding operating system according to a determination result in the reboot determination unit, and a program stored in the program storage unit are restored Second program recovery means to Depending on the operating system activated in the operating system boot device, characterized by having a a screen control means for performing control related to the screen.
なお、プログラム記憶手段は、例えば後述するフラッシュメモリ204に対応する。
The program storage means corresponds to, for example, a
本発明によれば、プログラムの更新に係り生じる問題を容易に解決し、装置及び/又はプログラムを復旧させることができる。また、本発明によれば、装置及び/又はプログラムの復旧に係る画面を表示し、ユーザに情報を提供することができる。 According to the present invention, it is possible to easily solve a problem caused by updating a program and restore the apparatus and / or program. Further, according to the present invention, it is possible to display a screen related to the restoration of the apparatus and / or program and provide information to the user.
また、上記課題を解決するための手段として、プログラム復旧方法、プログラム復旧プログラム及び記録媒体としてもよい。 Further, as means for solving the above problems, a program recovery method, a program recovery program, and a recording medium may be used.
本発明によれば、プログラムの更新に係り生じる問題を容易に解決し、装置及び/又はプログラムを復旧させることができる。また、本発明によれば、装置及び/又はプログラムの復旧に係る画面を表示し、ユーザに情報を提供することができる。 According to the present invention, it is possible to easily solve a problem caused by updating a program and restore the apparatus and / or program. Further, according to the present invention, it is possible to display a screen related to the restoration of the apparatus and / or program and provide information to the user.
以下、本発明の実施の形態について図面に基づいて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
図3は、画像形成装置(以下、複合機という)の構成を示すブロック図(その1)である。なお、図3では、後述するROMモニタ410によって、汎用OS121が起動された場合の複合機の構成の一例を示している。
FIG. 3 is a block diagram (No. 1) showing a configuration of an image forming apparatus (hereinafter referred to as a multifunction peripheral). FIG. 3 shows an example of the configuration of the multifunction machine when the general-
図3に示すように、複合機100は、プロッタ101と、スキャナ102と、FCU(Fax Control Unit)103と、その他ハードウェアリソース104等を有すると共に、汎用OS(Operating System)121と、プラットフォーム120と、アプリケーション130と、から構成されるソフトウェア群110と、電源投入時に実行される複合機起動部140と、を備えている。
As shown in FIG. 3, the
複合機起動部140は、複合機100の電源投入時にまず始めに実行され、後述する更新中断情報に更新情報が格納されていない場合及び/又は更新中断情報にメンテナンスフラグが格納されている場合、図3に示される汎用OS121や、プラットフォーム120、アプリケーション130を起動する。
The
プラットフォーム120は、アプリケーション130からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一又は複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、を有する。
The
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128と、から構成される。なお、プラットフォーム120は、あらかじめ定義された関数によりアプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。
The control service is formed of a plurality of service modules, and includes an SCS (system control service) 122, an ECS (engine control service) 124, an MCS (memory control service) 125, an OCS (operation panel control service) 126, and an FCS. (Fax Control Service) 127 and NCS (Network Control Service) 128. The
汎用OS121は、UNIX(登録商標)等の汎用オペレーティングシステムであり、プラットフォーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。なお、図3に示される汎用OS121は、プロセスに通常モードスレッドと、ROM更新モードスレッドとが存在する場合、初め、各プロセスの通常モードスレッドを実行する。
The general-
MCS125は、メモリの制御を行うプロセスとして起動される。MCS125のプロセスは、画像メモリの取得及び解放、ハードディスク装置(HDD)の利用、画像データの圧縮及び伸張等のコピー、プリンタ、ファクシミリ及びスキャナ等の複合サービスを行う通常モードスレッドと、後述するリモートROM更新アプリ117によって更新データパケットから展開された更新データを格納する更新データ領域をSDRAM203等に確保する等の処理を行うROM更新モードスレッドと、を有している。
The
OCS126のプロセスは、オペレータと本体制御間の情報伝達手段となる操作パネル(オペレーションパネル1310)の制御を行う通常モードスレッドと、ROMの更新に係る情報等を操作パネル(オペレーションパネル1310)に表示する処理等を行うROM更新モードスレッドと、を有している。
The process of the
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、複合送受信を行うためのAPIを提供する等の処理を行う通常モードスレッドと、かかる機能を実行せずに単に起動されるだけのROM更新モードスレッドと、を有している。
The process of
NCS128は、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行ったりする等の処理を行う通常モードスレッドを有している。また、NCS128の通常モードスレッドでは、更に、ネットワークに接続された、例えば複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダ等のリモートホストから、フラッシュメモリのROM更新データパケットを受信する。
The
なお、NCS128のプロセスは、フラッシュメモリのROM更新データパケットに含まれる更新データを、後述するリモートROM更新アプリ117に渡す等の処理を行う、ROM更新モードスレッドも有している。
The
SRM123のプロセスは、SCS122と共にシステムの制御及びリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部等のエンジン、メモリ、HDDファイル、ホストI/O(セントロニクスI/F、IEEE1394 I/F、USB I/F、NIC I/F等)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する等の処理を行う通常モードスレッドと、かかるリソース管理を実行せずに単に起動されるだけのROM更新モードスレッドを有している。 具体的には、このSRM123の通常モードスレッドは、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123の通常モードスレッドは、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成等)を直接実施している。
The process of the
SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御等の処理を行う通常モードスレッドを有している。
The process of the
また、SCS122の通常モードスレッドは、後述するリモートROM更新アプリ117からの要求に基づいて、プリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115や、ECS124、MCS125、OCS126、FCS127、NCS128等にROM更新モードスレッドの起動依頼を通知する。
Further, the normal mode thread of the
また、SCS122のプロセスは、ROM更新モードスレッドも有し、該ROM更新モードスレッドは、SDRAM203等に展開された更新データの中から、複合機100で動作するアプリケーション130、プラットフォーム120の構成に応じた更新データを選定する処理を行ったり、後述するROM更新部430を起動したりする処理を行う。
The process of the
ECS124のプロセスは、プロッタ101、スキャナ102、FCU(Fax Control Unit)103、その他ハードウェアリソース104、のエンジンの制御等の処理を行う通常モードスレッドと、このようなエンジン制御を行わずに単に起動されるだけのROM更新モードスレッドと、を有している。
The process of the
このように、SRM123、ECS124、FCS127の各ROM更新モードスレッドはいずれも単に起動されるだけであるが、これは、ROM更新処理時に、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。一方、SCS122、MCS125、OCS126、NCS128の各ROM更新モードスレッドも、それぞれROM更新に必要な処理を行うと共に、複合機内部で動作するコントロールサービスの存在を示すために起動されるようになっている。
As described above, all the ROM update mode threads of the
アプリケーション130は、ページ記述言語(PDL)、PCL及びポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、NCS128によりネットワーク経由で受信した更新データパケットを更新データに展開し、その更新データをMCS125のROM更新モードスレッドによって確保されたSDRAM203等の更新データ領域に格納する処理等を行うリモートROM更新アプリ(以下、RRUアプリという)117と、を有している。
The
これらの各アプリも、プラットフォーム120と同様にそれぞれプロセスとして起動され、RRUアプリ117以外の各アプリは、各々上述したような処理を行う通常モードスレッドと、当該自身の存在を示すために起動されるROM更新モードスレッドと、を有する。
Each of these apps is also started as a process, like the
以下、複合機100のハードウェア構成の一例を、図4を用いて説明する。図4は、複合機のハードウェア構成を示すブロック図である。 Hereinafter, an example of a hardware configuration of the multifunction peripheral 100 will be described with reference to FIG. FIG. 4 is a block diagram illustrating a hardware configuration of the multifunction machine.
図4に示すように、複合機100は、オペレーションパネル1310、FAXコントロールユニット(FCU)103、エンジン部1350(スキャナ102等が接続される)及びプロッタ101とコントローラ1300のASIC1301とをPCI(Peripheral ComPonent Interconnect)バス1309等で接続した構成となる。
As illustrated in FIG. 4, the multifunction peripheral 100 includes an
コントローラ1300は、ASIC1301にNVRAM208、SDRAM203、フラッシュメモリ204、HDD(Hard Disk Drive)1303等を接続すると共に、このASIC1301とCPU1304とをCPUチップセットのNB1305を介して接続している。このように、NB1305を介して接続する理由は、CPU1304自体のインターフェースが公開されていないためである。
The
ここで、このASIC1301とNB1305は、単にPCIを介して接続されているのではなく、AGP1308を介して接続されている。このようにAGP1308を介して接続することとした理由は、この複合機100が図3に示したプラットフォーム120やアプリケーション130を形成する複数のプロセスを実行制御する関係上、これらを低速のPCIで接続したのでは、パフォーマンスが低下するからである。
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
NB1305は、CPU1304と、システムメモリ1306と、SB1307と、NIC(Network Interface Card)1341と、USB(Universal Serial Bus)1330と、IEEE13941340と、セントロニクス1342と、ドライバI/F1343と、ASIC1301と、を接続するためのブリッジである。
The
システムメモリ1306は、複合機の描画用メモリ等として用いるメモリであり、SB1307は、NB1305と周辺デバイスとを接続するためのブリッジである。SB1307は、コントローラ1300での時間を計測するRTC(Real Time Clock)を有する。また、SB1307は、内部にUSBホストを有し、例えば、USB接続のカメラを接続することで画像データを取り込むことが可能であり、また、他のUSBターゲットからデータを受け取ることも可能である。
A
ドライバI/F1343は、挿入された、プログラム又はアプリケーション等が格納されている記録媒体から、プログラム又はアプリケーション等を読み込んで、複合機100に搭載するのに用いるI/Fである。なお、例えば記録媒体としては、SDメモリカード、スマートメディア、マルチメディアカード、コンパクトフラッシュ(登録商標)等がある。
The driver I /
SDRAM203は、更新データパケットをネットワーク経由で受信したときに、受信した更新データパケットから展開される更新データを格納する更新データ領域が確保される不揮発性メモリである。
The
NVRAM208は、例えば後述する更新中断情報等を格納する不揮発性メモリである。
The
フラッシュメモリ(以下、フラッシュROMという)204には、上述の各アプリ、プラットフォームを構成する各コントロールサービスやSRM123の各プログラムが格納されている。複合機100は、これらの各プログラムがあらかじめフラッシュROM204に組み込まれた状態で出荷され、ROM更新データパケットの受信によって、フラッシュROM204のプログラムが更新されるという、リモートROM更新の処理が実行されるようになっている。
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は、操作者からの入力操作の受け付け並びに操作者に向けた表示を行う操作部である。
The HDD 1303 is a storage that stores image data, programs, font data, forms, and documents. The
ASIC1301には、NVRAM208及びSDRAM203等を接続するためのRAMインターフェースと、フラッシュROM204を接続するためのROMインターフェースと、HDD1303を接続するためのハードディスクインターフェースと、が設けられ、これらの記憶部に対して画像データの入出力を行う場合には、入出力先がRAMインターフェース又はROMインターフェース又はハードディスクインターフェースに切り替えられる。
The
AGP1308は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、システムメモリ1306に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にする。
The
以下、リモートROM更新の全体処理の一例を、図5及び図6を用いて説明する。図5は、リモートROM更新の全体処理を説明するための図(その1)である。 Hereinafter, an example of the entire remote ROM update process will be described with reference to FIGS. FIG. 5 is a diagram (part 1) for explaining the entire process of remote ROM update.
図5に示されるように、複合機100が通常の複合サービスの動作を実行しているときは、通常モードスレッドと、ROM更新モードスレッドと、を有している各アプリ、各コントロールサービス等は、何れも通常モードスレッドを実行している。 As shown in FIG. 5, 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 In both cases, a normal mode thread is executed.
この状態で、ネットワーク経由で複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータ等のリモートホストから更新データパケットが送信されてくると、NCS128の通常モードスレッドは、更新データパケットを受信する(シーケンスSQ1。)。
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
NCS128の通常モードスレッドは、受信したパケットの内容を判断し、更新データパケットであると判定すると、ROMの更新データパケットを受信した旨をRRUアプリ117に通知する(シーケンスSQ2。)。
The normal mode thread of the
NCS128の通常モードスレッドよりROMの更新データパケットを受信した旨を通知されたRRUアプリ117は、SCS122の通常モードスレッドに対して、ROM更新モードスレッドの移行依頼通知の発行を要求する(シーケンスSQ3。)。
The
RRUアプリ117よりROM更新モードスレッドの移行依頼通知の発行を要求されたSCS122の通常モードスレッドは、プリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115、ECS124、MCS125、OCS126、FCS127、NCS128の各通常モードスレッドに対して、ROM更新モードスレッドの移行依頼を通知する(シーケンスSQ4。)。
The normal mode threads of the
図6は、リモートROM更新の全体処理を説明するための図(その2)である。 FIG. 6 is a diagram (part 2) for explaining the entire process of remote ROM update.
図5のシーケンスSQ4によって、SCS122の通常モードスレッドより、ROM更新モードスレッドの移行依頼を通知されたプリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115、ECS124、MCS125、OCS126、FCS127、NCS128は、図6に示されるようにそれぞれ通常モードスレッドからROM更新モードスレッドに移行する。
According to the sequence SQ4 of FIG. 5, the
また、RRUアプリ117は、更新データパケットを展開するのに必要な領域を得るために、MCS125のROM更新モードスレッドに対して、更新データ領域の確保を要求する(シーケンスSQ5。)。
Further, the
RRUアプリ117より更新データ領域の確保を要求されたMCS125のROM更新モードスレッドは、例えば、SDRAM203上に更新データ領域を確保して、該更新データ領域の先頭アドレスと、該更新データ領域の領域サイズと、をRRUアプリ117に返す(シーケンスSQ6。)。
The ROM update mode thread of the
MCS125のROM更新モードスレッドより、更新データ領域の先頭アドレスと、該更新データ領域の領域サイズと、を受け取ったRRUアプリ117は、ネットワーク情報を除去し、また圧縮形式のデータを伸張した更新データパケットを、MCS125のROM更新モードスレッドから通知された更新データ領域の先頭アドレスから展開する。
The
以下、更新データ領域に展開された更新データパケットの一例を、図7を用いて説明する。図7は、複合機で受信した更新データパケットの展開後のデータ構造図である。 Hereinafter, an example of the update data packet expanded in the update data area will be described with reference to FIG. FIG. 7 is a data structure diagram after development of the update data packet received by the multifunction machine.
図7に示されるように、展開された更新データパケットは、ヘッダ部302と、データ部303と、を含む。
As shown in FIG. 7, the expanded update data packet includes a
ヘッダ部302は、更新するモジュールに対応するように、モジュールごとのヘッダブロックに分かれている。各ヘッダブロックには、次のヘッダブロックまでのオフセットである次ヘッダオフセットと、モジュールの更新データまでのオフセットである更新データオフセットと、更新データのサイズと、モジュールの識別情報であるモジュールIDと、該モジュールのフラッシュROM204上での相対番地を示す更新先アドレスと、該モジュールのサイズである更新先領域長と、を含む。
The
データ部303は、更新データがモジュールごとに格納されている。なお、各モジュールの更新データの先頭は、モジュールに対応するヘッダブロックの更新データオフセットにより参照できるようになっている。
The
図6に戻り、RRUアプリ117は、更新データパケットを展開した更新データ領域の先頭アドレスをSCS122の通常モードスレッドに通知し、更新データの選定を依頼する(シーケンスSQ8。)。
Returning to FIG. 6, the
RRUアプリ117より更新データの選定依頼を受け取ったSCS122の通常モードスレッドは、SCS122のROM更新モードスレッドを起動し、後述する図12に示すような処理を行い、更新データを選定する(シーケンスSQ9。)。
The normal mode thread of the
また、SCS122のROM更新モードスレッドは、後述する図9に示すROM更新部430を起動し、後述する図13に示すようなROMの更新処理を行う(シーケンスSQ10。)。
Further, the ROM update mode thread of the
以下、複合機起動部140の構成の一例を、図8を用いて説明する。図8は、複合機起動部の構成の一例を示すブロック図である。
Hereinafter, an example of the configuration of the multifunction
図8に示されるように、複合機起動部140は、ROMモニタ410と、プログラム起動部420と、を含む。
As illustrated in FIG. 8, the multifunction
ROMモニタ410は、後述する更新中断情報に更新情報が格納されていない場合及び/又は更新中断情報にメンテナンスフラグが格納されていない場合、図3に示される汎用OS121を起動し、更新中断情報に更新情報が格納されている場合及び/又は更新中断情報にメンテナンスフラグが格納されている場合、後述する図10に示されるように、汎用レスキューOS131を起動する。
The
プログラム起動部420は、汎用OS121又は汎用レスキューOS131より呼び出され、サービス層起動部422と、アプリ起動部423と、起動情報設定部424と、を含む。
The
サービス起動部422は、プログラム起動部420が汎用OS121より呼び出された場合は、汎用OS121の起動情報を取得して、プラットフォーム120を起動する。一方、サービス起動部422は、プログラム起動部420が汎用レスキューOS131より呼び出された場合は、汎用レスキューOS131の起動情報を取得して、後述する図10に示すように、例えばSRM123や、MCS125、SCS122等を含むプラットフォーム120を起動する。
When the
アプリ起動部423は、プログラム起動部420が汎用OS121より呼び出された場合に実行され、各アプリの起動情報を取得して各アプリを起動する。なお、後述する実施例4に示されるように、アプリ起動部423は、プログラム起動部420が汎用レスキューOS131より呼び出された場合であっても実行され、RRUアプリ117の起動情報を取得してRRUアプリ117を起動するようにしてもよい。
The
起動情報設定部424は、プラットフォーム120に含まれる各コントロールサービスやSRM123、アプリケーション130に含まれる各アプリのROM更新モードスレッドが実行されたときに起動され、各コントロールサービスや、SRM123及び各アプリの起動情報を取得して、取得した起動情報を環境変数に設定する。なお、起動情報設定部424は、後述する各コントロールサービスやSRM123、アプリケーション130に含まれる各アプリのレスキューモードスレッドが実行されたときにも起動され、各コントロールサービスや、SRM123及び各アプリの起動情報を取得して、取得した起動情報を環境変数に設定するようにしてもよい。
The activation
以下、SCS122に含まれるROM更新部430の一例を、後述する図9を用いて説明する。図9は、ROM更新部の構成の一例を示すブロック図である。
Hereinafter, an example of the
図9に示されるように、ROM更新部430は、更新情報格納部431と、領域データ蓄積部432と、ROM更新部433と、更新情報削除部434と、を含む。また、後述する実施例2、3、4の場合は、更に表示制御部435を含む。また、後述する実施例4の場合は、更に送信制御部436を含む。
As illustrated in FIG. 9, the
更新情報格納部431は、図7に示したようなモジュールIDや、更新先アドレス等の更新情報を更新中断情報に格納する。 The update information storage unit 431 stores the update information such as the module ID and the update destination address as shown in FIG. 7 in the update interruption information.
領域データ蓄積部432は、更新される領域のデータをHDD1303等の二次記憶装置に蓄積する。
The area
ROM更新部433は、更新データに基づいて、該更新データに含まれるプログラムで、フラッシュROM204の対応するプログラムを更新する。
Based on the update data, the
更新情報削除部434は、更新情報格納部431が格納した更新情報を、更新中断情報から削除する。
The update
表示制御部435は、例えばOCS126が起動しているかどうかを判定し、OCS126が起動していると判定すると、フラッシュROM204の復旧中画面を作成し、OCS126を介してオペレーションパネル1310に表示したり、エラー画面を作成し、OCS126を介してオペレーションパネル1310に表示したりする。
For example, the
送信制御部436は、例えばNCS128が起動しているかどうかを判定し、NCS128が起動していると判定すると、フラッシュROM204の復旧に係る情報を、NCS128を介してネットワーク経由で、複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダのホストコンピュータ等のリモートホストに送信する。
For example, the
以下、ROMモニタ410によって、汎用レスキューOS131が起動された場合の複合機100の構成の一例を、図10を用いて説明する。図10は、複合機の構成を示すブロック図(その2)である。
Hereinafter, an example of the configuration of the multifunction peripheral 100 when the general-
図10に示されるように、汎用レスキューOS131が起動された場合は、SRM123と、MCS125と、SCS122と、のレスキューモードスレッドが実行される。
As shown in FIG. 10, when the general-
SCS122のレスキューモードスレッドは、後述するようにレスキュー方法の判定を行い、該判定結果に基づいて、MCS125のレスキューモードスレッドを介してHDD1303等の二次記憶装置よりプログラムの更新に係る情報やデータを取得し、ROM更新部430を起動する。
The rescue mode thread of the
MCS125のレスキューモードスレッドは、SCS122のレスキューモードスレッドからの要求に基づいて、HDD1303等の二次記憶装置よりプログラムの更新に係る情報やデータを取得し、SCS122のレスキューモードスレッドに提供したり、ROM更新部430からの要求に基づいて、更新される領域のデータをHDD1303等の二次記憶装置に蓄積したりする。
Based on a request from the rescue mode thread of the
以下、ブート時のOS切り替え処理を、図11を用いて説明する。図11は、ブート時のOS切り替え処理を説明するためのフローチャートである。 Hereinafter, the OS switching process at the time of boot will be described with reference to FIG. FIG. 11 is a flowchart for explaining the OS switching process at the time of booting.
複合機100は、電源が投入されると、ステップS10において、ROMモニタ410を起動する。
When the power is turned on, the
ステップS10に続いてステップS11に進み、ROMモニタ410は、更新中断情報に更新情報が格納されているかどうかを判定する。ROMモニタ410は、更新中断情報に更新情報が格納されていると判定すると(ステップS11においてYES)、ステップS16に進み、更新中断情報に更新情報が格納されていないと判定すると(ステップS11においてNO)、ステップS12に進む。
Progressing to step S11 following step S10, the
ステップS12では、ROMモニタ410が、汎用OS121を起動する。
In step S12, the
ステップS12に続いてステップS13に進み、ステップS12において起動された汎用OS121は、プログラム起動部420を起動する。
Progressing to step S13 following step S12, the general-
ステップS13に続いてステップS14に進み、プログラム起動部420に含まれるサービス起動部422は、プラットフォーム120を起動する。
Progressing to step S14 following step S13, the
ステップS14に続いてステップS15に進み、プログラム起動部420に含まれるアプリ起動部423は、アプリケーション130を起動する。
Progressing to step S15 following step S14, the
一方、ステップS16では、ROMモニタ410が、起動時情報にレスキューブートフラグを格納する。 On the other hand, in step S16, the ROM monitor 410 stores a rescue boot flag in the startup information.
ステップS16に続いてステップS17に進み、ROMモニタ410は、汎用レスキューOS131を起動する。
Progressing to step S17 following step S16, the
ステップS17に続いてステップS18に進み、ステップS17において起動された汎用レスキューOS131は、プログラム起動部420を起動する。
Progressing to step S18 following step S17, the general-
ステップS18に続いてステップS19に進み、プログラム起動部420に含まれるサービス起動部422は、起動時情報を参照し、レスキューブートフラグが格納されていると、レスキューモードオプションを付加して、プラットフォーム120を起動する。
Progressing to step S19 following step S18, the
ステップS19に続いてステップS20に進み、SCS122は、レスキューモードスレッドを起動する。
Proceeding to step S20 following step S19, the
以下、図6のシーケンスSQ9において説明したSCS122のROM更新モードスレッドによる更新データの選定処理の一例を、図12を用いて説明する。図12は、SCSのROM更新モードスレッドで実行される更新データ選定処理を説明するためのフローチャート(その1)である。
Hereinafter, an example of update data selection processing by the ROM update mode thread of the
ステップS30において、SCS122のROM更新モードスレッドは、RRUアプリ117より通知された更新データパケットを展開した更新データ領域の先頭アドレスに基づいて、更新データの先頭のヘッダブロックをシークする。
In step S30, the ROM update mode thread of the
ステップS30に続いてステップS31に進み、SCS122のROM更新モードスレッドは、ヘッダブロックからモジュールIDを取得する。
Progressing to step S31 following step S30, the ROM update mode thread of the
ステップS31に続いてステップS32に進み、SCS122のROM更新モードスレッドは、ステップS31において取得したモジュールIDと、環境変数に設定されているプラットフォーム120又はアプリケーション130の起動情報に含まれるモジュールIDとを比較して、一致するかどうか判定する。
Progressing to step S32 following step S31, the ROM update mode thread of the
SCS122のROM更新モードスレッドは、ステップS31において取得したモジュールIDが、環境変数に設定されているプラットフォーム120又はアプリケーション130の起動情報に含まれるモジュールIDと一致すると判定すると(ステップS32においてYES)、ステップS33に進み、ステップS31において取得したモジュールIDが、環境変数に設定されているプラットフォーム120又はアプリケーション130の起動情報に含まれるモジュールIDと一致しないと判定すると(ステップS32においてNO)、ステップS35に進む。
If the ROM update mode thread of the
ステップS33では、SCS122のROM更新モードスレッドが、ヘッダブロックから、更新先アドレス、更新データオフセット、更新データサイズ等を取得する。
In step S33, the ROM update mode thread of the
ステップS33に続いてステップS34に進み、SCS122のROM更新モードスレッドは、モジュールID、更新先アドレス、更新データオフセット、更新データサイズ等を一組とした更新情報を更新対象の変数等に設定する。
Progressing to step S34 following step S33, the ROM update mode thread of the
ステップS35では、SCS122のROM更新モードスレッドが、更新データパケットを展開した更新データ領域を参照し、次のヘッダブロックが存在するかどうかを判定する。SCS122のROM更新モードスレッドは、次のヘッダブロックが存在すると判定すると(ステップS35においてYES)、ステップS36に進み、次のヘッダブロックが存在しないと判定すると(ステップS35においてNO)、ステップS37に進む。
In step S35, the ROM update mode thread of the
ステップS36では、SCS122のROM更新モードスレッドが、次のヘッダブロックをシークし、ステップS31からの処理を繰り返す。
In step S36, the ROM update mode thread of the
一方、ステップS37では、SCS122のROM更新モードスレッドが、更新対象の変数等を参照し、更新情報が設定されているかどうかを判定する。SCS122のROM更新モードスレッドは、更新対象の変数等に更新情報が設定されていると判定すると(ステップS37においてYES)、ステップS38に進み、更新対象の変数等に更新情報が設定されていないと判定すると(ステップS37においてNO)、処理を終了する。
On the other hand, in step S37, the ROM update mode thread of the
ステップS38では、SCS122のROM更新モードスレッドが、更新データパケットを展開した更新データ領域に格納されている対応する更新データを、HDD1303等の二次記憶装置に蓄積する。
In step S38, the ROM update mode thread of the
このように、更新データをHDD1303等の二次記憶装置に蓄積しておくことによって、例えプログラムの更新中に電源がOFFされても、HDD1303等の二次記憶装置に蓄積されている該更新データを用いて、プログラムの更新を再実行し、復旧することができる。 In this way, by storing the update data in the secondary storage device such as the HDD 1303, the update data stored in the secondary storage device such as the HDD 1303 even if the power is turned off during the program update. Can be used to re-execute and restore program updates.
ステップS38に続いて、ステップS39に進み、SCS122のROM更新モードスレッドは、SCS122のROM更新部430を起動する。
Progressing to step S39 following step S38, the ROM update mode thread of the
以下、SCS122のROM更新部430によるROM更新処理の一例を、図13を用いて説明する。図13は、SCSのROM更新部によるROM更新処理を説明するためのフローチャート(その1)である。
Hereinafter, an example of ROM update processing by the
ステップS50において、SCS122のROM更新部430は、モジュールID、更新先アドレス、更新データオフセット、更新データサイズ等の更新情報を更新中断情報に格納する。
In step S50, the
ステップS50に続いてステップS51に進み、SCS122のROM更新部430は、更新データによって更新されるフラッシュROM204の対応する領域のデータを、HDD1303等の二次記憶装置に蓄積する。
Progressing to step S51 following step S50, the
このように、更新される領域のデータをHDD1303等の二次記憶装置に蓄積しておくことによって、例えプログラムの更新中に電源がOFFされても、HDD1303等の二次記憶装置に蓄積されている該更新される領域のデータを用いて、プログラムの更新を行う前の状態に復旧することができる。 Thus, by storing the data of the area to be updated in the secondary storage device such as the HDD 1303, even if the power is turned off during the program update, the data is stored in the secondary storage device such as the HDD 1303. Using the data in the updated area, it is possible to restore the state before the program is updated.
ステップS51に続いてステップS52に進み、SCS122のROM更新部430は、更新データパケットを展開した更新データ領域から対応する更新データを読み出して、該更新データで、フラッシュROM204の更新先アドレスから書換えを行う。
Progressing to step S52 following step S51, the
ステップS52に続いてステップS53に進み、SCS122のROM更新部430は、ステップS52において読み出した更新データと、ステップS52において書換えを行った後のフラッシュROM204の更新したモジュールのデータと、を比較して、正しく書換えが行われたかどうか判定する。SCS122のROM更新部430は、正しく書換えが行われたと判定すると(ステップS53においてYES)、ステップS55に進み、正しく書換えが行われなかったと判定すると(ステップS53においてNO)、ステップS54に進む。
Progressing to step S53 following step S52, the
ステップS54では、SCS122のROM更新部430が、エラー処理を行う。例えば、SCS122のROM更新部430は、図12において説明したように、SCS122のROM更新モードスレッドから呼ばれた場合は、OCS126のROM更新モードスレッドを介して、エラー画面をオペレーションパネル1310に表示する。また、SCS122のROM更新部430は、後述するように、SCSのレスキューモードスレッドから呼ばれた場合は、エラー情報をHDD1303等に格納されているログファイルに格納する。
In step S54, the
一方、ステップS55では、SCS122のROM更新部430が、更新対象の変数等を参照し、次の更新情報が設定されているかどうかを判定する。SCS122のROM更新部430は、更新対象の変数等に次の更新情報が設定されていると判定すると(ステップS55においてYES)、ステップS50からの処理を繰り返し、更新対象の変数等に次の更新情報が設定されていないと判定すると(ステップS55においてNO)、ステップS56に進む。
On the other hand, in step S55, the
ステップS56では、SCS122のROM更新部430が、更新中断情報に格納されている更新情報を削除する。
In step S56, the
以下、図11のステップS20において起動されたSCS122のレスキューモードスレッドによる更新データの選定処理の一例を、図14を用いて説明する。図14は、SCSのレスキューモードスレッドで実行される更新データ選定処理を説明するためのフローチャート(その1)である。
Hereinafter, an example of update data selection processing by the rescue mode thread of the
ステップS60において、SCS122のレスキューモードスレッドは、例えばHDD1303等に格納されている複合機100の定義ファイル等を参照して、予め設定されているレスキュー方法を選択する。SCS122のレスキューモードスレッドは、レスキュー方法として、「中断された更新を再実行する」を選択すると、ステップS63に進み、「更新を行う1つ前の状態に戻す」を選択すると、ステップS61に進む。
In step S60, the rescue mode thread of the
ステップS61では、SCS122のレスキューモードスレッドが、図13のステップS51等において蓄積された、更新されるフラッシュROM204の領域のデータをHDD1303等の二次記憶装置より取得する。
In step S61, the rescue mode thread of the
ステップS61に続いてステップS62に進み、SCS122のレスキューモードスレッドは、図13のステップS50等において格納された更新情報を更新中断情報から取得する。
Progressing to step S62 following step S61, the rescue mode thread of the
一方、ステップS63では、SCS122のレスキューモードスレッドが、図12のステップS38等において蓄積された更新データを、HDD1303等の二次記憶装置より取得する。
On the other hand, in step S63, the rescue mode thread of the
ステップS63に続いてステップS64に進み、SCS122のレスキューモードスレッドは、ステップS63において取得した更新データの先頭のヘッダブロックをシークする。
Progressing to step S64 following step S63, the rescue mode thread of the
ステップS64に続いてステップS65に進み、SCS122のレスキューモードスレッドは、ヘッダブロックからモジュールIDを取得する。
Progressing to step S65 following step S64, the rescue mode thread of the
ステップS65に続いてステップS66に進み、SCS122のレスキューモードスレッドは、ステップS65において取得したモジュールIDと、図13のステップS50等において格納された更新情報に含まれるモジュールIDと、が一致するかどうかを判定する。
Progressing to step S66 following step S65, the rescue mode thread of the
SCS122のレスキューモードスレッドは、ステップS65において取得したモジュールIDと、図13のステップS50等において格納された更新情報に含まれるモジュールIDと、が一致すると判定すると(ステップS66においてYES)、ステップS67に進み、ステップS65において取得したモジュールIDと、図13のステップS50等において格納された更新情報に含まれるモジュールIDと、が一致しないと判定すると(ステップS66においてNO)、ステップS69に進む。
If the rescue mode thread of the
ステップS67では、SCS122のレスキューモードスレッドが、ヘッダブロックから、更新先アドレス、更新データオフセット、更新データサイズ等を取得する。
In step S67, the rescue mode thread of the
ステップS67に続いてステップS68に進み、SCS122のレスキューモードスレッドは、モジュールID、更新先アドレス、更新データオフセット、更新データサイズ等を一組とした更新情報を更新対象の変数等に設定する。
Progressing to step S68 following step S67, the rescue mode thread of the
ステップS69では、SCS122のレスキューモードスレッドが、次のヘッダブロックが存在するかどうかを判定する。SCS122のレスキューモードスレッドは、次のヘッダブロックが存在すると判定すると(ステップS69においてYES)、ステップS70に進み、次のヘッダブロックが存在しないと判定すると(ステップS69においてNO)、ステップS71に進む。
In step S69, the rescue mode thread of the
ステップS70では、SCS122のレスキューモードスレッドが、次のヘッダブロックをシークし、ステップS65からの処理を繰り返す。
In step S70, the rescue mode thread of the
一方、ステップS71では、SCS122のレスキューモードスレッドが、更新対象の変数等を参照し、更新情報が設定されているかどうかを判定する。SCS122のレスキューモードスレッドは、更新対象の変数等に更新情報が設定されていると判定すると(ステップS71においてYES)、ステップS72に進み、更新対象の変数等に更新情報が設定されていないと判定すると(ステップS71においてNO)、処理を終了する。
On the other hand, in step S71, the rescue mode thread of the
ステップS72では、SCS122のレスキューモードスレッドが、SCS122のROM更新部430を起動する。
In step S <b> 72, the rescue mode thread of the
SCS122のレスキューモードスレッドによって起動されたSCS122のROM更新部430は、図13に示したような処理を行い、フラッシュROM204の更新を行う。
The
以下、複合機100のメモリ構造の一例を、図15を用いて説明する。図15は、メモリ構造の一例を示すための図である。 Hereinafter, an example of the memory structure of the multifunction peripheral 100 will be described with reference to FIG. FIG. 15 is a diagram for illustrating an example of a memory structure.
図15に示されるように、例えば、更新中断情報は、NVRAM空間に含まれ、ROM空間には、ROMモニタ410に対応するプログラムや、図10に示したようなソフトウェア群110のプログラムに対応するレスキューシステムや、図3に示したようなプラットフォーム120のプログラムに対応する通常システムや、各アプリのプログラムに対応するアプリ1、アプリ2等が含まれている。
As shown in FIG. 15, for example, the update interruption information is included in the NVRAM space, and the ROM space corresponds to a program corresponding to the
以下、図15に示したように、更新中断情報をNVRAM空間に格納する場合の更新中断情報のレイアウトの一例を、図16を用いて説明する。図16は、更新中断情報をNVRAMに格納する場合の更新中断情報のレイアウトを説明するための図(その1)である。 Hereinafter, as shown in FIG. 15, 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. 16 is a diagram (No. 1) for explaining the layout of the update interruption information when the update interruption information is stored in the NVRAM.
図16に示されるように、更新中断情報は、例えば16バイトのモジュールIDと、4バイトの更新先アドレスと、を含む。 As illustrated in FIG. 16, the update interruption information includes, for example, a 16-byte module ID and a 4-byte update destination address.
以下、HDD1303のディレクトリ及びファイル構成の一例を、図17を用いて説明する。図17は、HDDのディレクトリ及びファイル構成を説明するための図(その1)である。 Hereinafter, an example of the directory and file structure of the HDD 1303 will be described with reference to FIG. FIG. 17 is a diagram (part 1) for explaining the directory and file structure of the HDD.
図17に示されるように、HDD1303には、更新データを保持するディレクトリとしてbackupディレクトリを有し、該backupディレクトリには、更新データ及び/又は更新される領域のデータとしてbackup.binファイルが格納されている。 As shown in FIG. 17, the HDD 1303 has a backup directory as a directory for holding update data, and the backup directory includes backup.data as update data and / or data of an area to be updated. A bin file is stored.
以下、HDD1303のディレクトリ及びファイル構成の他の例を、図18を用いて説明する。図18は、HDDのディレクトリ及びファイル構成を説明するための図(その2)である。 Hereinafter, another example of the directory and file structure of the HDD 1303 will be described with reference to FIG. FIG. 18 is a diagram (part 2) for explaining the directory and file structure of the HDD.
図15及び図16に示したように、更新中断情報をNVRAM208に格納するのではなく、図18に示されるように更新中断情報を保持するディレクトリとして、romupdateディレクトリをHDD1303に設け、該romupdateディレクトリに、更新中断情報を含むファイルとして更新中断情報ファイルを格納するようにしてもよい。
As shown in FIGS. 15 and 16, instead of storing the update interruption information in the
以下、更新中断情報ファイルの内容の一例を、図19を用いて説明する。図19は、更新中断情報ファイルの内容の一例を説明するための図である。 Hereinafter, an example of the contents of the update interruption information file will be described with reference to FIG. FIG. 19 is a diagram for explaining an example of the contents of the update interruption information file.
図19に示されるように、更新中断情報ファイルには、モジュールIDと、更新先アドレスと、が含まれている。 As illustrated in FIG. 19, the update interruption information file includes a module ID and an update destination address.
上述した実施例1では、例えば、図13のステップS52においてフラッシュROM204の更新中に複合機100の電源がOFFされても、次回、複合機100の電源がONされれば、汎用レスキューOS131が起動され、フラッシュROM204の更新を再開するか又はフラッシュROM204を更新前の状態に戻すことによって、プログラムを復旧させることができたが、複合機100のオペレーションパネル1310に何ら表示されないため、ユーザは、汎用レスキューOS131が起動され、プログラムの復旧(ROMのアップデート)が行われているのかどうか等知ることができない問題があった。
In the first embodiment described above, for example, even if the power of the
したがって、実施例2では、汎用レスキューOS131が起動された場合も、オペレーションパネル1310にフラッシュROM204の更新に係る画面等を表示して、上記問題を解決する。なお、以下では、実施例1とは異なる点について説明を行い、実施例1と同じ点は説明を省略する。
Therefore, in the second embodiment, even when the general-
以下、ROMモニタ410によって、汎用レスキューOS131が起動された場合の複合機100の構成の他の例を、図20を用いて説明する。図20は、複合機の構成を示すブロック図(その3)である。
Hereinafter, another example of the configuration of the multifunction peripheral 100 when the general-
図20に示される複合機100の構成は、実施例1の図10に示される複合機100の構成と比べて、OCS126のレスキューモードスレッドが含まれている。
The configuration of the
OCS126のレスキューモードスレッドは、オペレータと本体制御間の情報伝達手段となる操作パネル(オペレーションパネル1310)の制御を行い、例えば後述する画面等を、オペレーションパネル1310に表示する。
The rescue mode thread of the
以下、実施例2におけるブート時のOS切り替え処理の一例を、図21を用いて説明する。図21は、ブート時のOS切り替え処理を説明するためのフローチャート(その2)である。 Hereinafter, an example of the OS switching process at the time of boot in the second embodiment will be described with reference to FIG. FIG. 21 is a flowchart (part 2) for explaining the OS switching process at the time of booting.
図21のステップS100からステップS109までの処理は、図11のステップS10からステップS19までの処理と同様である。 The process from step S100 to step S109 in FIG. 21 is the same as the process from step S10 to step S19 in FIG.
ステップS109に続いてステップS110に進み、OCS126のレスキューモードスレッドは、起動時画面をオペレーションパネル1310に表示する(図22参照。)。
Progressing to step S110 following step S109, the rescue mode thread of the
図22に示されるように、起動時の画面をオペレーションパネル1310に表示することによって、例えば、ユーザにレスキューモードで起動されていることを知らせることができる。
As shown in FIG. 22, by displaying a startup screen on the
ステップS110に続いてステップS111に進み、SCS122は、レスキューモードスレッドを起動する。
Proceeding to step S111 following step S110, the
SCS122のレスキューモードスレッドは、図14に示したような処理を行い、SCS122のROM更新部430を起動する。
The rescue mode thread of the
以下、SCS122のROM更新部430によるROM更新処理の他の例を、図23を用いて説明する。図23は、SCSのROM更新部によるROM更新処理を説明するためのフローチャート(その2)である。
Hereinafter, another example of ROM update processing by the
ステップS120において、SCS122のROM更新部430は、モジュールID、更新先アドレス、更新データオフセット、更新データサイズ等の更新情報を更新中断情報に格納する。
In step S120, the
ステップS120に続いてステップS121に進み、SCS122のROM更新部430は、更新データによって更新されるフラッシュROM204の対応する領域のデータを、HDD1303等の二次記憶装置に蓄積する。
Progressing to step S121 following step S120, the
このように、更新される領域のデータをHDD1303等の二次記憶装置に蓄積しておくことによって、例えプログラムの更新中に電源がOFFされても、HDD1303等の二次記憶装置に蓄積されている該更新される領域のデータを用いて、フラッシュROM204を、プログラムの更新を行う前の状態に復旧することができる。
Thus, by storing the data of the area to be updated in the secondary storage device such as the HDD 1303, even if the power is turned off during the program update, the data is stored in the secondary storage device such as the HDD 1303. The
ステップS121に続いてステップS122に進み、SCS122のROM更新部430は、更新データパケットを展開した更新データ領域から対応する更新データを読み出して、該更新データで、フラッシュROM204の更新先アドレスから書換えを行う。
Progressing to step S122 following step S121, the
ステップS122に続いてステップS123に進み、SCS122のROM更新部430は、OCS126のレスキューモードスレッドが起動されているかどうかを判定する。
Progressing to step S123 following step S122, the
SCS122のROM更新部430は、OCS126のレスキューモードスレッドが起動されていると判定すると(ステップS123においてYES)、ステップS124に進み、OCS126のレスキューモードスレッドが起動されていないと判定すると(ステップS123においてNO)、ステップS125に進む。
If the
SCS122のROM更新部430は、例えば、環境変数等を参照し、OCS126のレスキューモードスレッドが起動されているかどうかを判定する。
The
ステップS124では、SCS122のROM更新部430が、OCS126のレスキューモードスレッドを介して、オペレーションパネル1310に復旧中画面を表示する(図24参照。)。
In step S124, the
図24に示されるように、フラッシュROM204の復旧中の画面をオペレーションパネル1310に表示することによって、ユーザに、ROMをアップデートしている旨及びROMをアップデートしているため、電源を切らないで欲しい旨等、通知することができる。
As shown in FIG. 24, by displaying a screen during recovery of the
ステップS125では、SCS122のROM更新部430が、ステップS122において読み出した更新データと、ステップS122において書換えを行った後のフラッシュROM204の更新したモジュールのデータと、を比較して、正しく書換えが行われたかどうか判定する。SCS122のROM更新部430は、正しく書換えが行われたと判定すると(ステップS125においてYES)、ステップS128に進み、正しく書換えが行われなかったと判定すると(ステップS125においてNO)、ステップS126に進む。
In step S125, the
ステップS126では、SCS122のROM更新部430が、OCS126のレスキューモードスレッドが起動されているかどうかを判定する。
In step S126, the
SCS122のROM更新部430は、OCS126のレスキューモードスレッドが起動されていると判定すると(ステップS126においてYES)、ステップS127に進み、OCS126のレスキューモードスレッドが起動されていないと判定すると(ステップS126においてNO)、処理を終了する。
When the
ステップS127では、SCS122のROM更新部430が、OCS126のレスキューモードスレッドを介して、オペレーションパネル1310にエラー画面を表示する(図25参照。)。
In step S127, the
図25に示されるように、エラー時の画面をオペレーションパネル1310に表示することによって、ユーザにROMのアップデート中にエラーが生じたので、サービスセンターに連絡する必要がある旨等、通知することができる。
As shown in FIG. 25, an error screen is displayed on the
一方、ステップS128では、SCS122のROM更新部430が、更新対象の変数等を参照し、次の更新情報が設定されているかどうかを判定する。SCS122のROM更新部430は、更新対象の変数等に次の更新情報が設定されていると判定すると(ステップS128においてYES)、ステップS120からの処理を繰り返し、更新対象の変数等に次の更新情報が設定されていないと判定すると(ステップS128においてNO)、ステップS129に進む。
On the other hand, in step S128, the
ステップS129では、SCS122のROM更新部430が、更新中断情報に格納されている更新情報を削除する。
In step S129, the
上述した実施例1及び実施例2では、フラッシュROM204の更新が中断された場合の復旧方法等について説明を行ったが、以下、実施例3及び実施例4では、フラッシュROM204の更新後、更新を行ったプログラムと、更新を行わなかったプログラムと、の組み合わせ等が原因で複合機100の機能の一部又は全てが使用不可能又は動作が不安定となった場合の復旧方法等について説明を行う。なお、以下では、実施例1及び実施例2と異なる点について説明を行い、実施例1及び実施例2と同じ点は説明を省略する。
In the above-described first and second embodiments, the recovery method when the update of the
以下、ROMモニタ410によって、汎用レスキューOS131が起動された場合の複合機100の構成の他の例を、図26を用いて説明する。図26は、複合機の構成を示すブロック図(その4)である。
Hereinafter, another example of the configuration of the
図26に示される複合機100の構成は、実施例2の図20に示される複合機100の構成と比べてNCS128のレスキューモードスレッドと、RRUアプリ117と、が含まれている。
The configuration of the
NCS128のレスキューモードスレッドは、ネットワークに接続された、例えば複合機開発元のホストコンピュータやアプリケーション開発元のサードベンダ等から、フラッシュメモリのROM更新データパケットを受信する。
The rescue mode thread of the
また、RRUアプリ17は、上述したように、NCS128によりネットワーク経由で受信した更新データパケットを更新データに展開し、その更新データをMCS125のレスキューモードスレッドによって確保されたSDRAM203等の更新データ領域に格納する処理等を行う。
Further, as described above, the
以下、実施例3におけるブート時のOS切り替え処理の一例を、図27を用いて説明する。図27は、ブート時のOS切り替え処理を説明するためのフローチャート(その3)である。 Hereinafter, an example of the OS switching process at the time of boot in the third embodiment will be described with reference to FIG. FIG. 27 is a flowchart (part 3) for explaining the OS switching process at the time of booting.
複合機100は、電源が投入されると、ステップS200において、ROMモニタ410を起動する。
When the power is turned on, the multifunction peripheral 100 activates the
ステップS200に続いてステップS201に進み、ROMモニタ410は、更新中断情報にメンテナンスフラグが格納されているかどうかを判定する。ROMモニタ410は、更新中断情報にメンテナンスフラグが格納されていると判定すると(ステップS201においてYES)、ステップS210に進み、更新中断情報にメンテナンスフラグが格納されていないと判定すると(ステップS201においてNO)、ステップS202に進む。
Progressing to step S201 following step S200, the
ステップS202では、ROMモニタ410が、汎用OS121を起動する。
In step S202, the
ステップS202に続いてステップS203に進み、ROMモニタ410は、ステップS202において起動された汎用OS121が正常に起動したかどうかを判定する。ROMモニタ410は、汎用OS121が正常に起動したと判定すると(ステップS203においてYES)、ステップS204に進み、汎用OS121が正常に起動しなかったと判定すると(ステップS203においてNO)、ステップS208に進む。
Progressing to step S203 following step S202, the
ステップS204では、汎用OS121がプログラム起動部420を起動する。
In step S <b> 204, the general-
ステップS204に続いてステップS205に進み、プログラム起動部420に含まれるサービス起動部422は、プラットフォーム120を起動する。
Progressing to step S205 following step S204, the
ステップS205に続いてステップS206に進み、プログラム起動部420に含まれるアプリ起動部423は、アプリケーション130を起動する。
Progressing to step S206 following step S205, the
ステップS206に続いてステップS207に進み、プログラム起動部420は、ステップS205及びステップS206において起動したプラットフォーム120及びアプリケーション130の起動すべき全てのプログラムが正常起動したかどうかを判定する。プログラム起動部420は、ステップS205及びステップS206において起動したプラットフォーム120及びアプリケーション130の起動すべき全てのプログラムが正常起動したと判定すると(ステップS207においてYES)、処理を終了し、ステップS205及びステップS206において起動したプラットフォーム120及びアプリケーション130の起動すべき全てのプログラムが正常起動しなかったと判定すると(ステップS207においてNO)、ステップS208に進む。
Progressing to step S207 following step S206, the
ステップS208では、ROMモニタ410又はプログラム起動部420が、メンテナンスフラグを更新中断情報に格納する。
In step S208, the
ステップS208に続いてステップS209に進み、ROMモニタ410又はプログラム起動部420は、複合機100をリブートする。
Progressing to step S209 following step S208, the
一方、ステップS210では、ROMモニタ410が、起動時情報にレスキューブートフラグを格納する。 On the other hand, in step S210, the ROM monitor 410 stores a rescue boot flag in the startup information.
ステップS210に続いてステップS211に進み、ROMモニタ410は、汎用レスキューOS131を起動する。
Progressing to step S211 following step S210, the
ステップS211に続いてステップS212に進み、ステップS211において起動された汎用レスキューOS131は、プログラム起動部420を起動する。
Progressing to step S212 following step S211, the general-
ステップS212に続いてステップS213に進み、プログラム起動部420に含まれるサービス起動部422は、起動時情報を参照し、レスキューブートフラグが格納されていると、レスキューモードオプションを付加して、プラットフォーム120を起動する。
In step S213 following step S212, the
ステップS213に続いてステップS214に進み、OCS126のレスキューモードスレッドは、後述する図28に示される復旧メニュー画面をオペレーションパネル1310に表示する。なお、以下では、後述する図28(A)の画面において、ユーザに「行う」を選択されたものとして説明を行う。
Progressing to step S214 following step S213, the rescue mode thread of the
ステップS214に続いてステップS215に進み、OCS126のレスキューモードスレッドは、後述する図28(B)の画面において選択された復旧内容(復旧方法)に従いメンテナンス内容フラグを更新中断情報に格納する。
Progressing to step S215 following step S214, the rescue mode thread of the
ステップS215に続いてステップS216に進み、SCS122は、後述する図29に示すようなメンテナンス内容フラグチェック処理を行う。
Progressing to step S216 following step S215, the
以下、復旧メニュー画面の一例を、図28を用いて説明する。図28は、復旧メニュー画面を示すための図である。 Hereinafter, an example of the recovery menu screen will be described with reference to FIG. FIG. 28 is a diagram for showing a recovery menu screen.
図28(A)に示されるように、OCS126のレスキューモードスレッドは、初めに、普及作業を行うかどうかの選択画面をオペレーションパネル1310に表示する。OCS126のレスキューモードスレッドは、ユーザが「行う」を選択したと判定すると、図28(B)に示されるような復旧内容の選択画面をオペレーションパネル1310に表示し、ユーザが「行わない」を選択したと判定すると、図28(C)に示されるような復旧作業を中止する旨を表す画面をオペレーションパネル1310に表示する。
As shown in FIG. 28A, the rescue mode thread of the
以下、SCS122によるメンテナンス内容フラグチェック処理の一例を、図29を用いて説明する。図29は、SCSによるメンテナンス内容フラグチェック処理を説明するためのフローチャートである。
Hereinafter, an example of the maintenance content flag check process by the
ステップS220において、SCS122は、図27のステップS215において更新中断情報に格納されたメンテナンス内容フラグをチェックする。SCS122は、メンテナンス内容フラグをチェックして、図28の画面(B)においてユーザが復旧内容として「リモートホストより更新データパケットを送信する。」を選択したと判定すると、ステップS222に進み、図28の画面(B)においてユーザが復旧内容として「機器に蓄積されているソフトウェアに戻す。」を選択したと判定すると、ステップS221に進む。
In step S220, the
ステップS221では、SCS122が、SCS122のレスキューモードスレッドを起動する。
In step S221, the
一方、ステップS222では、SCS122が、RRUアプリ117より更新データの選定依頼を受け取ったかどうかを判定する。SCS122は、RRUアプリ117より更新データの選定依頼を受け取ったと判定すると(ステップS222においてYES)、ステップS223に進み、RRUアプリ117より更新データの選定依頼を受け取っていないと判定すると(ステップS222においてNO)、ステップS222の処理を繰り返す。
On the other hand, in step S222, the
ステップS223では、SCS122が、SCS122のROM更新モードスレッドを起動する。
In step S223, the
なお、図29において説明を省略したが、ステップS220においてSCS122が図28の画面(B)においてユーザが復旧内容として「リモートホストより更新データパケットを送信する。」を選択したと判定した場合、OCS126のレスキューモードスレッドは、オペレーションパネル1310に受信待機中画面を表示するようにしてもよい(図30参照。)。
Although omitted from FIG. 29, if the
以下、図29のステップS221において起動されたSCS122のレスキューモードスレッドで実行される更新データ選定処理の一例を、図31を用いて説明する。図31は、SCSのレスキューモードスレッドで実行される更新データ選定処理を説明するためのフローチャートである。
Hereinafter, an example of update data selection processing executed in the rescue mode thread of the
ステップS230においてSCS122のレスキューモードスレッドは、HDD1303等より正常動作する出荷時のプログラムを取得する。
In step S230, the rescue mode thread of the
ステップS230に続いてステップS231に進み、SCS122のレスキューモードスレッドは、HDD1303等より正常動作する出荷時のプログラムのモジュールIDや、更新先アドレス、更新データサイズ等のモジュール情報を取得する。
Progressing to step S231 following step S230, the rescue mode thread of the
ステップS231に続いてステップS232に進み、SCS122のレスキューモードスレッドは、SCS122のROM更新部430を起動する。
Progressing to step S232 following step S231, the rescue mode thread of the
図31に示したように、出荷時のプログラムを取得し、SCS122のROM更新部430を起動して、フラッシュメモリ204を更新することによって、プログラムを正常に動作していた出荷時の状態に戻すことができる。
As shown in FIG. 31, the program at the time of shipment is acquired, the
以下、図29のステップS223において起動されたSCS122のROM更新モードスレッドで実行される更新データ選定処理の一例を、図32を用いて説明する。図32は、SCSのROM更新モードスレッドで実行される更新データ選定処理を説明するためのフローチャート(その2)である。
Hereinafter, an example of update data selection processing executed in the ROM update mode thread of the
ステップS240において、SCS122のROM更新モードスレッドは、RRUアプリ117より通知された更新データパケットを展開した更新データ領域の先頭アドレスに基づいて、更新データの先頭のヘッダブロックをシークする。
In step S240, the ROM update mode thread of the
ステップS240に続いてステップS241に進み、SCS122のROM更新モードスレッドは、ヘッダブロックからモジュールIDを取得する。
Progressing to step S241 following step S240, the ROM update mode thread of the
ステップS241に続いてステップS242に進み、SCS122のROM更新モードスレッドは、ヘッダブロックから、更新先アドレス、更新データオフセット、更新データサイズ等を取得する。
Progressing to step S242 following step S241, the ROM update mode thread of the
ステップS242に続いてステップS243に進み、SCS122のROM更新モードスレッドは、モジュールID、更新先アドレス、更新データオフセット、更新データサイズ等を一組とした更新情報を更新対象の変数等に設定する。
Progressing to step S243 following step S242, the ROM update mode thread of the
ステップS243に続いてステップS244に進み、SCS122のROM更新モードスレッドは、次のヘッダブロックが存在するかどうかを判定する。SCS122のROM更新モードスレッドは、次のヘッダブロックが存在すると判定すると(ステップS244においてYES)、ステップS245に進み、次のヘッダブロックが存在しないと判定すると(ステップS244においてNO)、ステップS246に進む。
Progressing to step S244 following step S243, the ROM update mode thread of the
ステップS245では、SCS122のROM更新モードスレッドが、次のヘッダブロックをシークし、ステップS241からの処理を繰り返す。
In step S245, the ROM update mode thread of the
ステップS246では、SCS122のROM更新モードスレッドが、更新対象の変数等を参照し、更新情報が設定されているかどうかを判定する。SCS122のROM更新モードスレッドは、更新対象の変数等に更新情報が設定されていると判定すると(ステップS246においてYES)、ステップS247に進み、更新対象の変数等に更新情報が設定されていないと判定すると(ステップS246においてNO)、処理を終了する。
In step S246, the ROM update mode thread of the
ステップS247では、SCS122のROM更新モードスレッドが、更新データパケットを展開した更新データ領域に格納されている対応する更新データを、HDD1303等の二次記憶装置に蓄積する。
In step S247, the ROM update mode thread of the
ステップS247に続いてステップS248に進み、SCS122のROM更新モードスレッドは、SCS122のROM更新部430を起動する。
Proceeding to step S248 following step S247, the ROM update mode thread of the
図29及び図32に示したように、リモートホストより更新データを取得して、SCS122のROM更新モードスレッド及びSCS122のROM更新部430を起動して、フラッシュメモリ204を更新することによって、プログラムを修正することができる。
As shown in FIG. 29 and FIG. 32, the update data is acquired from the remote host, the ROM update mode thread of the
以下、SCS122のROM更新部430によるROM更新処理の他の例を、図33を用いて説明する。図33は、SCSのROM更新部によるROM更新処理を説明するためのフローチャート(その3)である。
Hereinafter, another example of ROM update processing by the
ステップS250において、SCS122のROM更新部430は、モジュールID、更新先アドレス、更新データオフセット、更新データサイズ等の更新情報を更新中断情報に格納する。
In step S250, the
ステップS250に続いてステップS251に進み、SCS122のROM更新部430は、更新データによって更新されるフラッシュROM204の対応する領域のデータを、HDD1303等の二次記憶装置に蓄積する。
Progressing to step S251 following step S250, the
ステップS251に続いてステップS252に進み、SCS122のROM更新部430は、更新データパケットを展開した更新データ領域から対応する更新データを読み出して、該更新データで、フラッシュROM204の更新先アドレスから書換えを行う。
Progressing to step S252 following step S251, the
ステップS252に続いてステップS253に進み、SCS122のROM更新部430は、OCS126のレスキューモードスレッドを介して、オペレーションパネル1310に復旧中画面を表示する(図24参照。)。
Progressing to step S253 following step S252, the
ステップS253に続いてステップS254に進み、SCS122のROM更新部430は、ステップS252において読み出した更新データと、ステップS252において書換えを行った後のフラッシュROM204の更新したモジュールのデータと、を比較して、正しく書換えが行われたかどうか判定する。SCS122のROM更新部430は、正しく書換えが行われたと判定すると(ステップS254においてYES)、ステップS256に進み、正しく書換えが行われなかったと判定すると(ステップS254においてNO)、ステップS255に進む。
Progressing to step S254 following step S253, the
ステップS255では、SCS122のROM更新部430が、OCS126のレスキューモードスレッドを介して、オペレーションパネル1310にエラー画面を表示する(図25参照。)。
In step S255, the
一方、ステップS256では、SCS122のROM更新部430が、更新対象の変数等を参照し、次の更新情報が設定されているかどうかを判定する。SCS122のROM更新部430は、更新対象の変数等に次の更新情報が設定されていると判定すると(ステップS256においてYES)、ステップS250からの処理を繰り返し、更新対象の変数等に次の更新情報が設定されていないと判定すると(ステップS256においてNO)、ステップS257に進む。
On the other hand, in step S256, the
ステップS257では、SCS122のROM更新部430が、更新中断情報に格納されている更新情報を削除する。
In step S257, the
なお、SCS122のROM更新部430は、実施例2の図23に示したようにOCS126のレスキューモードスレッドが起動されているかどうかを判定する処理を行い、OCS126のレスキューモードスレッドが起動されていたら、ステップS253やステップS255の処理を行うようにしてもよい。図33では説明の簡略化のため、OCS126のレスキューモードスレッドが起動されているものとして説明を行っている。
Note that the
以下、複合機100が正常起動した後から、正常に動作していないアプリケーション130等が存在して、レスキューモードに移行する場合の処理の一例を、図34を用いて説明する。図34は、正常起動後からのレスキューモード移行処理を説明するためのフローチャートである。
Hereinafter, an example of processing in the case where there is an
ステップS260において、OCS126の通常モードスレッドは、オペレーションパネル1310に表示している画面(図35参照)のレスキューボタンが押下されたかどうかを判定する。OCS126の通常モードスレッドは、オペレーションパネル1310に表示している画面のレスキューボタンが押下されたと判定すると(ステップS260においてYES)、ステップS261に進み、レスキューボタンが押下されていないと判定すると(ステップS260においてNO)、ステップS260の処理を繰り返す。
In step S260, the normal mode thread of the
ステップS261では、OCS126の通常モードスレッドが、レスキューモード移行の確認画面をオペレーションパネル1310に表示する(図36参照。)。
In step S261, the normal mode thread of the
ステップS261に続いてステップS262に進み、OCS126の通常モードスレッドは、図36のレスキューモード移行確認画面の実行ボタンが押下されたかどうかを判定する。OCS126の通常モードスレッドは、図36のレスキューモード移行確認画面の実行ボタンが押下されたと判定すると(ステップS262においてYES)、ステップS263に進み、中止ボタンが押下さたと判定すると(ステップS262においてNO)、図35に示した画面をオペレーションパネル1310に表示し、ステップS260からの処理を繰り返す。
Progressing to step S262 following step S261, the normal mode thread of the
ステップS263では、OCS126の通常モードスレッドより、レスキューモード移行確認画面の実行ボタンが押下された旨を通知された、例えばSCS122の通常モードスレッドが、メンテナンスフラグを更新中断情報に格納する。
In step S263, the normal mode thread of the
ステップS263に続いてステップS264に進み、例えばSCS122の通常モードスレッドより通知を受けたROMモニタ410又はプログラム起動部420は、複合機100をリブートする。
Progressing to step S264 following step S263, for example, the
図34に示す処理によってリブートされた複合機100は、図27に示したような処理を行う。 The multifunction peripheral 100 rebooted by the process shown in FIG. 34 performs the process as shown in FIG.
以下、更新中断情報をNVRAM空間に格納する場合の更新中断情報のレイアウトの他の例を、図37を用いて説明する。図37は、更新中断情報をNVRAMに格納する場合の更新中断情報のレイアウトを説明するための図(その2)である。 Hereinafter, another 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. 37 is a diagram (No. 2) for explaining the layout of the update interruption information when the update interruption information is stored in the NVRAM.
図37に示されるように、更新中断情報は、例えば16バイトのモジュールIDと、4バイトの更新先アドレスと、1バイトのメンテナンスフラグと、1バイトのメンテナンス内容フラグと、を含む。 As shown in FIG. 37, the update interruption information includes, for example, a 16-byte module ID, a 4-byte update destination address, a 1-byte maintenance flag, and a 1-byte maintenance content flag.
なお、図18及び図19に示したように、更新中断情報をHDD1303に格納する場合、メンテナンスフラグやメンテナンス内容フラグを、例えば更新中断情報ファイルに含めるようにしてもよい。 As shown in FIGS. 18 and 19, when the update interruption information is stored in the HDD 1303, a maintenance flag or a maintenance content flag may be included in the update interruption information file, for example.
以下、HDD1303のディレクトリ及びファイル構成の他の例を、図38を用いて説明する。図38は、HDDのディレクトリ及びファイル構成を説明するための図(その3)である。 Hereinafter, another example of the directory and file structure of the HDD 1303 will be described with reference to FIG. FIG. 38 is a diagram (No. 3) for explaining the directory and file structure of the HDD.
図38に示されるように、HDD1303には、正常動作する出荷時のデータ(プログラム)を保持するディレクトリとしてstoreディレクトリを有し、該storeディレクトリには、アプリケーション130やプラットフォーム120等を構成する各モジュールに対応する、正常動作する出荷時のデータ(プログラム)と、前記モジュールに係るモジュール情報ファイルと、が格納されている。
As shown in FIG. 38, the HDD 1303 has a store directory as a directory for storing normally operating shipping data (programs), and each module constituting the
以下、モジュール情報ファイルの一例として、正常動作する出荷時のプリンタアプリのモジュール情報ファイルの内容の一例を、図39を用いて説明する。図39は、正常動作する出荷時のプリンタアプリのモジュール情報ファイルの内容の一例を説明するための図である。 Hereinafter, as an example of the module information file, an example of the contents of the module information file of the printer application at the time of shipment that operates normally will be described with reference to FIG. FIG. 39 is a diagram for explaining an example of the contents of the module information file of the printer application at the time of shipment that operates normally.
図39に示されるように、モジュール情報ファイルには、モジュールIDと、更新先アドレスと、モジュールのサイズと、が含まれる。 As shown in FIG. 39, the module information file includes a module ID, an update destination address, and a module size.
なお、実施例3の図28(B)において、「機器に蓄積されているソフトウェアに戻す。」のみを表示又は選択可能とした場合は、図26に示した複合機100の構成において、NCS128のレスキューモードスレッドや、RRUアプリ117は、含まれなくてもよい。
In FIG. 28B of the third embodiment, when only “return to the software stored in the device” can be displayed or selected, the
上述した実施例3では、図33に示したように、SCS122のROM更新部430が、復旧情報を、OCS126のレスキューモードスレッドを介して、オペレーションパネル1310に、復旧中画面として表示した。しかしながら、復旧情報を、オペレーションパネル1310に表示すると共に、SCS122のROM更新部430が、復旧情報を、NCS128のレスキューモードスレッドを介して、リモートホストに送信するようにしてもよい。
In the third embodiment described above, as illustrated in FIG. 33, the
以下、SCS122のROM更新部430によるROM更新処理の他の例を、図40を用いて説明する。図40は、SCSのROM更新部によるROM更新処理を説明するためのフローチャート(その4)である。
Hereinafter, another example of ROM update processing by the
ステップS300において、SCS122のROM更新部430は、モジュールID、更新先アドレス、更新データオフセット、更新データサイズ等の更新情報を更新中断情報に格納する。
In step S300, the
ステップS300に続いてステップS301に進み、SCS122のROM更新部430は、更新データによって更新されるフラッシュROM204の対応する領域のデータを、HDD1303等の二次記憶装置に蓄積する。
Progressing to step S301 following step S300, the
ステップS301に続いてステップS302に進み、SCS122のROM更新部430は、更新データパケットを展開した更新データ領域から対応する更新データを読み出して、該更新データで、フラッシュROM204の更新先アドレスから書換えを行う。
Progressing to step S302 following step S301, the
ステップS302に続いてステップS303に進み、SCS122のROM更新部430は、OCS126のレスキューモードスレッドを介して、オペレーションパネル1310に復旧中画面を表示する(図24参照。)。
Progressing to step S303 following step S302, the
ステップS303に続いてステップS304に進み、SCS122のROM更新部430は、NCS128のレスキューモードスレッドが起動されているかどうかを判定する。
Progressing to step S304 following step S303, the
SCS122のROM更新部430は、NCS128のレスキューモードスレッドが起動されていると判定すると(ステップS304においてYES)、ステップS305に進み、NCS128のレスキューモードスレッドが起動されていないと判定すると(ステップS304においてNO)、ステップS306に進む。
If the
SCS122のROM更新部430は、例えば、環境変数等を参照し、NCS128のレスキューモードスレッドが起動されているかどうかを判定する。
The
ステップS305では、SCS122のROM更新部430が、NCS128のレスキューモードスレッドを介して、リモートホストに復旧情報を送信する。
In step S305, the
ステップS306では、SCS122のROM更新部430が、ステップS302において読み出した更新データと、ステップS302において書換えを行った後のフラッシュROM204の更新したモジュールのデータと、を比較して、正しく書換えが行われたかどうか判定する。SCS122のROM更新部430は、正しく書換えが行われたと判定すると(ステップS306においてYES)、ステップS308に進み、正しく書換えが行われなかったと判定すると(ステップS306においてNO)、ステップS307に進む。
In step S306, the
ステップS307では、SCS122のROM更新部430が、OCS126のレスキューモードスレッドを介して、オペレーションパネル1310にエラー画面を表示する(図25参照。)。
In step S307, the
一方、ステップS308では、SCS122のROM更新部430が、更新対象の変数等を参照し、次の更新情報が設定されているかどうかを判定する。SCS122のROM更新部430は、更新対象の変数等に次の更新情報が設定されていると判定すると(ステップS308においてYES)、ステップS300からの処理を繰り返し、更新対象の変数等に次の更新情報が設定されていないと判定すると(ステップS308においてNO)、ステップS309に進む。
On the other hand, in step S308, the
ステップS309では、SCS122のROM更新部430が、更新中断情報に格納されている更新情報を削除する。
In step S309, the
なお、SCS122のROM更新部430は、実施例2の図23に示したようにOCS126のレスキューモードスレッドが起動されているかどうかを判定する処理を行い、OCS126のレスキューモードスレッドが起動されていたら、ステップS303やステップS307の処理を行うようにしてもよい。図40では説明の簡略化のため、OCS126のレスキューモードスレッドが起動されているものとして説明を行っている。
Note that the
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 The preferred embodiments of the present invention have been described in detail above, but the present invention is not limited to such specific embodiments, and various modifications can be made within the scope of the gist of the present invention described in the claims.・ Change is possible.
100 複合機
111 プリンタアプリ
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
117 リモートROM更新アプリ(RRUアプリ)
121 汎用OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
131 汎用レスキューOS
410 ROMモニタ
420 プログラム起動部
422 サービス層起動部
423 アプリ起動部
424 起動情報設定部
430 ROM更新部
431 更新情報格納部
432 領域データ蓄積部
433 ROM更新部
434 更新情報削除部
435 表示制御部
436 送信制御部
100
121 General-purpose OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
131 General-purpose rescue OS
410
Claims (27)
当該情報処理装置が前回起動されていたときに、前記プログラム更新手段における前記プログラムの更新が中断されたかどうかを判定する更新中断判定手段と、
前記更新中断判定手段における判定結果に応じて、対応するオペレーティングシステムを起動するオペレーティングシステム起動手段と、
前記プログラム記憶手段に記憶されているプログラムを復旧する第一プログラム復旧手段と、
前記オペレーティングシステム起動手段において起動されたオペレーティングシステムに応じて、画面に係る制御を行う画面制御手段と、
を有することを特徴とする情報処理装置。 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 corresponding correspondence stored in the program storage means based on the update data An information processing apparatus having program update means for updating a program,
An update interruption determination means for determining whether or not the update of the program in the program update means was interrupted when the information processing apparatus was activated last time;
An operating system activation unit that activates a corresponding operating system according to a determination result in the update interruption determination unit;
First program recovery means for recovering a program stored in the program storage means;
Screen control means for controlling the screen according to the operating system started by the operating system start means;
An information processing apparatus comprising:
当該情報処理装置が前回起動されていたときに、前記プログラム記憶手段に記憶されているプログラムを復旧するため、リブートされたかどうかを判定するリブート判定手段と、
前記リブート判定手段における判定結果に応じて、対応するオペレーティングシステムを起動するオペレーティングシステム起動手段と、
前記プログラム記憶手段に記憶されているプログラムを復旧する第二プログラム復旧手段と、
前記オペレーティングシステム起動手段において起動されたオペレーティングシステムに応じて、画面に係る制御を行う画面制御手段と、
を有することを特徴とする情報処理装置。 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 corresponding correspondence stored in the program storage means based on the update data An information processing apparatus having program update means for updating a program,
A reboot determination unit that determines whether the information processing apparatus has been rebooted in order to restore the program stored in the program storage unit when the information processing apparatus was previously activated;
In response to the determination result in the reboot determination unit, an operating system activation unit that activates a corresponding operating system;
Second program recovery means for recovering the program stored in the program storage means;
Screen control means for controlling the screen according to the operating system started by the operating system start means;
An information processing apparatus comprising:
当該情報処理装置が前回起動されていたときに、プログラムの更新が中断されたかどうかを判定する更新中断判定段階と、
前記更新中断判定段階における判定結果に応じて、対応するオペレーティングシステムを起動するオペレーティングシステム起動段階と、
前記オペレーティングシステムが起動されている旨を表す起動時画面を表示する起動時画面表示段階と、
前記プログラム記憶手段に記憶されているプログラムを復旧する第一プログラム復旧段階と、
を有することを特徴とするプログラム復旧方法。 An update data receiving stage for receiving update data relating to a program stored in the program storage means, and a corresponding program stored in the program storage means based on the update data received in the update data receiving stage A program recovery method in an information processing apparatus having a program update stage to be updated,
An update interruption determination stage for determining whether the update of the program was interrupted when the information processing apparatus was activated last time;
In response to the determination result in the update interruption determination step, an operating system startup step of starting the corresponding operating system,
A startup screen display stage for displaying a startup screen indicating that the operating system has been started; and
A first program recovery stage for recovering the program stored in the program storage means;
A program recovery method comprising:
当該情報処理装置が前回起動されていたときに、前記プログラム記憶手段に記憶されているプログラムを復旧するため、リブートされたかどうかを判定するリブート判定段階と、
前記リブート判定段階における判定結果に応じて、対応するオペレーティングシステムを起動するオペレーティングシステム起動段階と、
前記プログラム記憶手段に記憶されているプログラムを復旧する第二プログラム復旧段階と、
ユーザに、前記プログラム記憶手段に記憶されているプログラムの復旧を行うかどうかを選択させる選択画面を表示する選択画面表示段階と、
を有することを特徴とするプログラム復旧方法。 An update data receiving stage for receiving update data relating to a program stored in the program storage means, and a corresponding program stored in the program storage means based on the update data received in the update data receiving stage A program recovery method in an information processing apparatus having a program update stage to be updated,
A reboot determination stage for determining whether the information processing apparatus has been rebooted in order to restore the program stored in the program storage means when the information processing apparatus was last activated;
In response to the determination result in the reboot determination step, an operating system start step for starting the corresponding operating system,
A second program recovery stage for recovering the program stored in the program storage means;
A selection screen display step for displaying a selection screen for allowing the user to select whether or not to restore the program stored in the program storage means;
A program recovery method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003411680A JP2005173888A (en) | 2003-12-10 | 2003-12-10 | Information processor, method and program for restoring program, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003411680A JP2005173888A (en) | 2003-12-10 | 2003-12-10 | Information processor, method and program for restoring program, and recording medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005173888A true JP2005173888A (en) | 2005-06-30 |
Family
ID=34732351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003411680A Pending JP2005173888A (en) | 2003-12-10 | 2003-12-10 | Information processor, method and program for restoring program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005173888A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115878065A (en) * | 2023-02-16 | 2023-03-31 | 青岛意想意创技术发展有限公司 | Control method and device for interactive system composed of interactive display units |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0816408A (en) * | 1994-06-29 | 1996-01-19 | Mitsubishi Electric Corp | Information processor |
JP2002333990A (en) * | 2001-03-05 | 2002-11-22 | Omron Corp | Program updating device and its method |
JP2003228490A (en) * | 2002-02-04 | 2003-08-15 | Sanyo Electric Co Ltd | Terminal equipment connected to network, and network system using the same |
-
2003
- 2003-12-10 JP JP2003411680A patent/JP2005173888A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0816408A (en) * | 1994-06-29 | 1996-01-19 | Mitsubishi Electric Corp | Information processor |
JP2002333990A (en) * | 2001-03-05 | 2002-11-22 | Omron Corp | Program updating device and its method |
JP2003228490A (en) * | 2002-02-04 | 2003-08-15 | Sanyo Electric Co Ltd | Terminal equipment connected to network, and network system using the same |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115878065A (en) * | 2023-02-16 | 2023-03-31 | 青岛意想意创技术发展有限公司 | Control method and device for interactive system composed of interactive display units |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10277767B2 (en) | Image forming apparatus including a device that updates stored program based on updating data which is selected based on program that is started or startable | |
US8760700B2 (en) | Method, apparatus, and computer product for managing image formation resources | |
US8305603B2 (en) | Job processing apparatus coordinating update of software used in job execution and control method thereof | |
JP2002082806A (en) | Device and method for forming image and program | |
JP5888443B2 (en) | Image forming apparatus, program update method, and recording medium | |
JP2005196745A (en) | Information processing device, program recovery method, program recovery program, and recording medium | |
JP4695348B2 (en) | CARD-TYPE MEMORY, IMAGE FORMING DEVICE, AND IMAGE FORMING DEVICE STARTING METHOD | |
JP4512565B2 (en) | Image forming apparatus and application installation method | |
JP4001531B2 (en) | Image forming apparatus | |
JP2005173888A (en) | Information processor, method and program for restoring program, and recording medium | |
JP2008079340A (en) | Image forming apparatus, program updating method and recording medium | |
JP2006103290A (en) | Image formation device | |
JP2003256151A (en) | Data transfer method, and interface control module, device control module, and image formation device using the data transfer method | |
JP2002326428A (en) | Imaging apparatus | |
JP2006027277A (en) | Image forming apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051020 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080401 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080520 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080924 |