JP2018106251A - Information processing apparatus, updating method of operation program and program - Google Patents

Information processing apparatus, updating method of operation program and program Download PDF

Info

Publication number
JP2018106251A
JP2018106251A JP2016249301A JP2016249301A JP2018106251A JP 2018106251 A JP2018106251 A JP 2018106251A JP 2016249301 A JP2016249301 A JP 2016249301A JP 2016249301 A JP2016249301 A JP 2016249301A JP 2018106251 A JP2018106251 A JP 2018106251A
Authority
JP
Japan
Prior art keywords
information processing
processing apparatus
update data
program
interface unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2016249301A
Other languages
Japanese (ja)
Inventor
弥彦 村上
Yasuhiko Murakami
弥彦 村上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Platforms Ltd
Original Assignee
NEC Platforms Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2016249301A priority Critical patent/JP2018106251A/en
Publication of JP2018106251A publication Critical patent/JP2018106251A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To easily avoid that an information processing apparatus becomes unusable when updating an operation program.SOLUTION: An information processing apparatus 100 includes: an interface unit 110 that acquires update data necessary for updating an operating program for operating the information processing apparatus 100; and a control unit 120 that executes the update data acquired by the interface unit 110 and, when a result of executing the update data is normal, writes the update data into a memory area 130 for executing the operation program after restarting the information processing apparatus 100 and restarts the information processing apparatus 100.SELECTED DRAWING: Figure 1

Description

本発明は、情報処理装置、動作プログラムの更新方法およびプログラムに関する。   The present invention relates to an information processing apparatus, an operation program update method, and a program.

一般的に、通信機器等の情報処理装置は、装置の電源が投入されると、ブートローダプログラムを用いて起動する。ブートローダプログラムは、情報処理装置を初期化し、情報処理装置の使用を可能とするものである。このブートローダプログラムは、情報処理装置に搭載されたデータ読み出し専用電子部品であるROM(Read Only Memory)に格納され、装置の電源投入時にCPU(Central Processing Unit)によってROMから読み出され実行される。
ブートローダプログラムの機能強化や動作不具合等の問題解決などを目的として、ブートローダプログラムを更新する必要が生じる場合がある。ブートローダプログラムの更新を容易にするため、近年、通常はデータの読み出し専用に使用されるが、特別な操作をしたときに記憶内容が書き換え可能となるプログラマブルROM(例えば、フラッシュROM)が利用されている。ブートローダプログラムを更新する必要が生じた場合、ブートローダプログラム中の書き換え機能を利用し、プログラマブルROM中のブートローダプログラムが更新される。
しかしながら、ブートローダプログラムの更新には、更新したブートローダプログラムの実装に問題があった場合、ブートローダプログラムを更新後、ブートローダプログラムを動作させた場合、情報処理装置が利用不能となってしまう。
そこで、ブートローダプログラムをプログラマブルROM中に2つ格納しておき、一方のブートローダプログラムが利用不能となった場合であっても、他方のブートローダプログラムを利用することで、情報処理装置が利用不能となることを回避する方法が提案されている(例えば、特許文献1,2参照。)。
また、更新用のファームウェアを更新前のファームウェアとは別の不揮発性メモリ領域に格納し、更新用のファームウェアを用いて再起動して正常性の確認を行った後、再度、自装置を再起動する技術が考えられている(例えば、特許文献3参照。)。
また、ブートローダプログラムを2つのプログラマブルROMそれぞれの中に格納しておき、一方のプログラマブルROMに格納されたブートローダプログラムが利用不能となった場合であっても、他方のプログラマブルROMに格納されたブートローダプログラムを利用することで、情報処理装置が利用不能となることを回避する方法が提案されている(例えば、特許文献4,5参照。)。
Generally, an information processing apparatus such as a communication device is activated using a boot loader program when the apparatus is turned on. The boot loader program initializes the information processing apparatus and enables the use of the information processing apparatus. This boot loader program is stored in a ROM (Read Only Memory) which is a data read-only electronic component mounted on the information processing apparatus, and is read from the ROM by a CPU (Central Processing Unit) and executed when the apparatus is turned on.
In some cases, it is necessary to update the boot loader program for the purpose of enhancing the function of the boot loader program or solving problems such as malfunctions. In order to facilitate the update of the boot loader program, in recent years, a programmable ROM (for example, a flash ROM) that can be rewritten when a special operation is performed is usually used for reading data. Yes. When it is necessary to update the boot loader program, the boot loader program in the programmable ROM is updated using the rewrite function in the boot loader program.
However, in updating the boot loader program, if there is a problem in the implementation of the updated boot loader program, the information processing apparatus becomes unusable if the boot loader program is operated after updating the boot loader program.
Therefore, if two boot loader programs are stored in the programmable ROM and one of the boot loader programs becomes unusable, the information processing apparatus becomes unusable by using the other boot loader program. A method for avoiding this has been proposed (see, for example, Patent Documents 1 and 2).
Also, store the firmware for update in a non-volatile memory area different from the firmware before update, restart using the update firmware, check the normality, and then restart the device again The technique which considers is considered (for example, refer patent document 3).
Moreover, even if the boot loader program is stored in each of the two programmable ROMs and the boot loader program stored in one programmable ROM becomes unavailable, the boot loader program stored in the other programmable ROM There has been proposed a method for avoiding that the information processing apparatus cannot be used by using (see, for example, Patent Documents 4 and 5).

特開2013−156823号公報JP2013-156823A 国際公開第2012/077604号International Publication No. 2012/076604 特開2015−055917号公報Japanese Patent Laying-Open No. 2015-055917 特開2007−193596号公報JP 2007-193596 A 特開平11−3213号公報Japanese Patent Laid-Open No. 11-3213

特許文献1,2に記載された技術においては、ブートローダプログラムをプログラマブルROM中に2つ格納しておく必要がある。そのため、使用するプログラマブルROM容量がより多く必要となってしまうという問題点がある。
特許文献3に記載された技術では、更新用のファームウェアと更新前のファームウェアとを不揮発性メモリに格納しておく必要がある。そのため、使用するプログラマブルROM容量がより多く必要となってしまうという問題点がある。
特許文献4,5に記載された技術には、ブートローダプログラムを格納するためのプログラマブルROMを情報処理装置に2つ搭載する必要がある。そのため、情報処理装置の価格が高騰し、情報処理装置の構成も複雑になってしまうという問題点がある。
In the techniques described in Patent Documents 1 and 2, it is necessary to store two boot loader programs in the programmable ROM. Therefore, there is a problem that more programmable ROM capacity is required.
In the technique described in Patent Literature 3, it is necessary to store firmware for update and firmware before update in a nonvolatile memory. Therefore, there is a problem that more programmable ROM capacity is required.
In the techniques described in Patent Documents 4 and 5, two programmable ROMs for storing the boot loader program need to be installed in the information processing apparatus. Therefore, there is a problem that the price of the information processing apparatus rises and the configuration of the information processing apparatus becomes complicated.

本発明の目的は、上記課題を解決する情報処理装置、動作プログラムの更新方法およびプログラムを提供することにある。   An object of the present invention is to provide an information processing apparatus, an operation program update method, and a program that solve the above-described problems.

本発明の情報処理装置は、
当該情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する第1のインタフェース部と、
前記第1のインタフェース部が取得した更新データを実行し、該更新データを実行した結果が正常である場合、前記更新データを、当該情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込み、当該情報処理装置を再起動させる制御部とを有する。
また、本発明の動作プログラムの更新方法は、
情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する処理と、
前記取得した更新データを実行する処理と、
前記実行した結果が正常である場合、前記更新データを、前記情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込む処理と、
前記情報処理装置を再起動させる処理とを行う。
また、本発明のプログラムは、
コンピュータに実行させるためのプログラムであって、
情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する手順と、
前記取得した更新データを実行する手順と、
前記実行した結果が正常である場合、前記更新データを、前記情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込む手順と、
前記情報処理装置を再起動させる手順とを実行させる。
The information processing apparatus of the present invention
A first interface unit for acquiring update data necessary for updating an operation program for operating the information processing apparatus;
A memory for executing update data acquired by the first interface unit and causing the update data to be executed after the information processing apparatus is restarted when a result of executing the update data is normal And a controller that writes to the area and restarts the information processing apparatus.
Further, the operation program update method of the present invention includes:
Processing for obtaining update data necessary for updating an operation program for operating the information processing apparatus;
Processing for executing the acquired update data;
When the executed result is normal, the update data is written in a memory area for executing the operation program after restarting the information processing apparatus;
And a process of restarting the information processing apparatus.
The program of the present invention is
A program for causing a computer to execute,
A procedure for acquiring update data necessary for updating an operation program for operating the information processing apparatus;
A procedure for executing the acquired update data;
When the executed result is normal, the update data is written in a memory area for executing the operation program after the information processing apparatus is restarted;
And a procedure for restarting the information processing apparatus.

以上説明したように、本発明においては、動作プログラムを更新した場合に、情報処理装置が利用不能となることを容易に回避することができる。   As described above, in the present invention, when the operation program is updated, it is possible to easily prevent the information processing apparatus from being unavailable.

本発明の情報処理装置の第1の実施の形態を示す図である。It is a figure which shows 1st Embodiment of the information processing apparatus of this invention. 図1に示した情報処理装置における動作プログラムの更新方法の一例を説明するためのフローチャートである。3 is a flowchart for explaining an example of an operation program update method in the information processing apparatus shown in FIG. 1. 本発明の情報処理装置の第2の実施の形態を示す図である。It is a figure which shows 2nd Embodiment of the information processing apparatus of this invention. 図3に示したプログラマブルROMの内部構造(メモリエリアの配置)の一例を示す図である。It is a figure which shows an example of the internal structure (arrangement | positioning of a memory area) of the programmable ROM shown in FIG. 図3に示した情報処理装置における動作プログラムの更新方法の一例を説明するためのフローチャートである。4 is a flowchart for explaining an example of a method for updating an operation program in the information processing apparatus shown in FIG. 3. 本発明の情報処理装置の第3の実施の形態を示す図である。It is a figure which shows 3rd Embodiment of the information processing apparatus of this invention. 図6に示した有線インタフェース部が送受信する信号のフレーム構成の一例を示す図である。It is a figure which shows an example of the frame structure of the signal which the wired interface part shown in FIG. 6 transmits / receives. 図7に示したタイプに格納される値の一例を示す図である。It is a figure which shows an example of the value stored in the type shown in FIG. 図6に示した形態における動作プログラムの更新方法のうち、更新通知を送信する場合の処理の一例を説明するためのフローチャートである。It is a flowchart for demonstrating an example of the process in the case of transmitting an update notification among the update methods of the operation | movement program in the form shown in FIG. 図6に示した形態における動作プログラムの更新方法のうち、更新通知を送信する場合の処理の一例を説明するためのフローチャートである。It is a flowchart for demonstrating an example of the process in the case of transmitting an update notification among the update methods of the operation | movement program in the form shown in FIG. 図6に示した形態における動作プログラムの更新方法のうち、更新通知を受信する場合の処理の一例を説明するためのフローチャートである。It is a flowchart for demonstrating an example of a process in the case of receiving an update notification among the update methods of the operation | movement program in the form shown in FIG. 図6に示した形態における動作プログラムの更新方法のうち、更新通知を受信する場合の処理の一例を説明するためのフローチャートである。It is a flowchart for demonstrating an example of a process in the case of receiving an update notification among the update methods of the operation | movement program in the form shown in FIG.

以下に本発明の実施の形態について図面を参照して説明する。
(第1の実施の形態)
Embodiments of the present invention will be described below with reference to the drawings.
(First embodiment)

図1は、本発明の情報処理装置の第1の実施の形態を示す図である。
本形態における情報処理装置100は図1に示すように、インタフェース部110と、制御部120と、メモリエリア130とを有する。なお、図1には、本発明の情報処理装置100が具備する構成要素のうち、本実施の形態に関わる主要な構成要素の一例を示す。
FIG. 1 is a diagram showing a first embodiment of an information processing apparatus according to the present invention.
As shown in FIG. 1, the information processing apparatus 100 in this embodiment includes an interface unit 110, a control unit 120, and a memory area 130. FIG. 1 shows an example of main components related to the present embodiment among the components included in the information processing apparatus 100 of the present invention.

インタフェース部110は、情報処理装置100を動作させるための動作プログラムの更新に必要な更新データを取得する第1のインタフェース部である。
制御部120は、インタフェース部110が取得した更新データを実行する。制御部120は、更新データを実行した結果が正常である場合、その更新データを、情報処理装置100の再起動後に動作プログラムを実行させるためのメモリエリア130に書き込み、情報処理装置100を再起動させる。
The interface unit 110 is a first interface unit that acquires update data necessary for updating an operation program for operating the information processing apparatus 100.
The control unit 120 executes update data acquired by the interface unit 110. When the result of executing the update data is normal, the control unit 120 writes the update data in the memory area 130 for executing the operation program after the information processing apparatus 100 is restarted, and restarts the information processing apparatus 100 Let

以下に、図1に示した情報処理装置100における動作プログラムの更新方法について説明する。図2は、図1に示した情報処理装置100における動作プログラムの更新方法の一例を説明するためのフローチャートである。
まず、インタフェース部110が、情報処理装置100を動作させるための動作プログラムの更新に必要な更新データを取得する(ステップS1)。すると、制御部120が、インタフェース部110が取得した更新データを実行する(ステップS2)。続いて、制御部120は、更新データを実行した結果が正常であるかどうかを判定する(ステップS3)。更新データを実行した結果が正常である場合、制御部120は、動作プログラムを実行させるためのメモリエリア130にその更新データを書き込み(ステップS4)、情報処理装置100を再起動させる(ステップS5)。
Hereinafter, a method for updating the operation program in the information processing apparatus 100 illustrated in FIG. 1 will be described. FIG. 2 is a flowchart for explaining an example of an operation program update method in the information processing apparatus 100 shown in FIG.
First, the interface unit 110 acquires update data necessary for updating an operation program for operating the information processing apparatus 100 (step S1). Then, the control unit 120 executes the update data acquired by the interface unit 110 (step S2). Subsequently, the control unit 120 determines whether or not the result of executing the update data is normal (step S3). When the result of executing the update data is normal, the control unit 120 writes the update data in the memory area 130 for executing the operation program (step S4), and restarts the information processing apparatus 100 (step S5). .

このように、情報処理装置100が、動作プログラムの更新に必要な更新データを取得し、取得した更新データを実行し、実行の結果が正常である場合に、動作プログラムを実行させるためのメモリエリア130にその更新データを書き込み、再起動する。そのため、動作プログラムを更新した場合に、情報処理装置が利用不能となることを容易に回避することができる。
(第2の実施の形態)
As described above, the information processing apparatus 100 acquires update data necessary for updating the operation program, executes the acquired update data, and executes the operation program when the execution result is normal. The updated data is written in 130 and restarted. Therefore, when the operation program is updated, it is possible to easily avoid the information processing apparatus from being unavailable.
(Second Embodiment)

図3は、本発明の情報処理装置の第2の実施の形態を示す図である。
本形態における情報処理装置101は図1に示すように、PC201と通信を行う機能を有する通信機器である。PC201は、一般的なPC(Personal Computer)等の情報処理装置である。
情報処理装置101は、UART(Universal Asynchronous Receiver Transmitter)111と、CPU121と、プログラマブルROM131と、RAM141とを有する。なお、図3には、本発明の情報処理装置101が具備する構成要素のうち、本実施の形態に関わる主要な構成要素の一例を示す。
UART111は、シリアル通信用インタフェース機能を有し、CPU121からの指示でPC201との間で双方向シリアル通信を行う第1のインタフェース部である。UART111は、情報処理装置101を動作させるための動作プログラムの更新に必要な更新データをPC201から取得する。また、UART111は、CPU121からの指示で、CPU121が更新データを実行した結果を出力するものであっても良い。
CPU121は、UART111が取得した更新データを実行する制御部である。CPU121は、更新データを実行した結果が正常である場合、更新データをプログラマブルROM131に書き込み、情報処理装置101を再起動させる。CPU121は、情報処理装置101を起動した際、プログラマブルROM131に格納されている起動プログラム(ブートローダプログラム)を実行する。CPU121は、実行した起動プログラムの手順に従って、UART111に対して、更新データの取得を指示する。CPU121は、UART111が取得した更新データを、起動プログラムの手順に従って実行する。また、CPU121は、起動プログラムの手順に従って、UART111に対して、CPU121が実行した結果の出力を指示するものであっても良い。このとき、CPU121は、UART111が出力した結果に対して、結果が正常である旨を示す第1の入力をUART111が受け付けた場合、起動プログラムの手順に従って、更新データをプログラマブルROM131のメモリエリアに書き込むものであっても良い。CPU121は、起動プログラムを実行した後、動作プログラムの更新要求を示す第2の入力をUART111が受け付けた場合、UART111に対して、更新データの取得を指示するものであっても良い。
プログラマブルROM131は、ブロック単位で消去、書き換え動作が可能な不揮発性メモリ(ROM:Read Only Memory)である。プログラマブルROM131は、起動プログラムおよび動作プログラムの2つのブートローダプログラム、ならびにシステムプログラムを格納する。
RAM141は、自由に読み書きが行われるメモリ(RAM:Random access memory)である。RAM141は、起動プログラムおよび動作プログラムの2つのブートローダプログラム、ならびにシステムプログラムが動作する際に利用される。
FIG. 3 is a diagram showing a second embodiment of the information processing apparatus of the present invention.
As illustrated in FIG. 1, the information processing apparatus 101 in this embodiment is a communication device having a function of performing communication with the PC 201. The PC 201 is an information processing apparatus such as a general PC (Personal Computer).
The information processing apparatus 101 includes a UART (Universal Asynchronous Receiver Transmitter) 111, a CPU 121, a programmable ROM 131, and a RAM 141. FIG. 3 shows an example of main components related to the present embodiment among the components included in the information processing apparatus 101 of the present invention.
The UART 111 has a serial communication interface function, and is a first interface unit that performs bidirectional serial communication with the PC 201 in accordance with an instruction from the CPU 121. The UART 111 acquires update data necessary for updating an operation program for operating the information processing apparatus 101 from the PC 201. The UART 111 may output a result of the CPU 121 executing the update data in response to an instruction from the CPU 121.
The CPU 121 is a control unit that executes update data acquired by the UART 111. When the result of executing the update data is normal, the CPU 121 writes the update data into the programmable ROM 131 and restarts the information processing apparatus 101. When the information processing apparatus 101 is activated, the CPU 121 executes an activation program (boot loader program) stored in the programmable ROM 131. The CPU 121 instructs the UART 111 to acquire update data according to the procedure of the executed startup program. The CPU 121 executes the update data acquired by the UART 111 according to the procedure of the activation program. Further, the CPU 121 may instruct the UART 111 to output the result executed by the CPU 121 according to the procedure of the startup program. At this time, when the UART 111 receives the first input indicating that the result is normal with respect to the result output by the UART 111, the CPU 121 writes the update data in the memory area of the programmable ROM 131 according to the procedure of the activation program. It may be a thing. The CPU 121 may instruct the UART 111 to acquire update data when the UART 111 receives the second input indicating the update request for the operation program after executing the activation program.
The programmable ROM 131 is a non-volatile memory (ROM: Read Only Memory) that can be erased and rewritten in units of blocks. The programmable ROM 131 stores two boot loader programs, a start program and an operation program, and a system program.
The RAM 141 is a memory (RAM: Random access memory) that is freely read and written. The RAM 141 is used when two boot loader programs, a start program and an operation program, and a system program operate.

図4は、図3に示したプログラマブルROM131の内部構造(メモリエリアの配置)の一例を示す図である。
図3に示したプログラマブルROM131は図4に示すように、起動プログラムであるブートローダプログラム301を格納する領域と、動作プログラムであるブートローダプログラム302を格納する領域と、システムプログラム303を格納する領域との3つのメモリエリアを有する。
FIG. 4 is a diagram showing an example of the internal structure (arrangement of memory areas) of the programmable ROM 131 shown in FIG.
As shown in FIG. 4, the programmable ROM 131 shown in FIG. 3 includes an area for storing a boot loader program 301 that is a startup program, an area for storing a boot loader program 302 that is an operation program, and an area for storing a system program 303. It has three memory areas.

プログラマブルROM131に格納されたブートローダプログラム302を更新する場合、CPU121は、起動したブートローダプログラム301の手順に従って、UART111を介して接続されているPC201から転送されるブートローダプログラム302の更新データを取得し、RAM141に格納する。CPU121は、ブートローダプログラム301の手順に従って、プログラマブルROM131に格納されているブートローダプログラム302を、RAM141に格納したブートローダプログラム302の更新データを用いて更新する。ブートローダプログラム301は、情報処理装置101の電源投入時、CPU121によって、プログラマブルROM131から読み出され実行される。ブートローダプログラム301は、CPU121によって実行されることで、ブートローダプログラム302の書き換え機能、プログラマブルROM131、RAM141等の初期設定機能、ブートローダプログラム302をRAM141へ展開し、実行する機能を有する。ブートローダプログラム301については、ブートローダプログラム301およびブートローダプログラム302の書き換え途中の情報処理装置101の電源断などの失敗で、情報処理装置101が利用不能となってしまうことを防止するため、読み出し専用とし、書き換えは行われない。ブートローダプログラム302は、CPU121によって実行されることで、システムプログラム303をRAM141へ展開し、実行する機能を有する。システムプログラム303は、RAM141上で実行され、情報処理装置101として必要な機能を実現する。   When updating the boot loader program 302 stored in the programmable ROM 131, the CPU 121 acquires update data of the boot loader program 302 transferred from the PC 201 connected via the UART 111 according to the procedure of the boot loader program 301 that has been started, and the RAM 141. To store. The CPU 121 updates the boot loader program 302 stored in the programmable ROM 131 using the update data of the boot loader program 302 stored in the RAM 141 according to the procedure of the boot loader program 301. The boot loader program 301 is read from the programmable ROM 131 and executed by the CPU 121 when the information processing apparatus 101 is powered on. The boot loader program 301 is executed by the CPU 121, and has a function of rewriting the boot loader program 302, an initial setting function such as the programmable ROM 131 and the RAM 141, and a function of developing the boot loader program 302 in the RAM 141 and executing it. The boot loader program 301 is read-only in order to prevent the information processing apparatus 101 from becoming unusable due to a failure such as power failure of the information processing apparatus 101 during rewriting of the boot loader program 301 and the boot loader program 302. There is no rewriting. The boot loader program 302 has a function of expanding and executing the system program 303 on the RAM 141 by being executed by the CPU 121. The system program 303 is executed on the RAM 141 and realizes functions necessary for the information processing apparatus 101.

以下に、図3に示した情報処理装置101における動作プログラムの更新方法について説明する。図5は、図3に示した情報処理装置101における動作プログラムの更新方法の一例を説明するためのフローチャートである。   Hereinafter, a method for updating the operation program in the information processing apparatus 101 illustrated in FIG. 3 will be described. FIG. 5 is a flowchart for explaining an example of the operation program update method in the information processing apparatus 101 shown in FIG.

利用者が、情報処理装置101の電源を投入すると(ステップS11)、CPU121はプログラマブルROM131からブートローダプログラム301を読み出し、実行(起動)する(ステップS12)。その後、CPU121は、起動したブートローダプログラム301の手順に従って以下の処理を実行する。CPU121は、ブートローダプログラム302の更新の要求があるかどうかを判定する(ステップS13)。例えば、CPU121は、ブートローダプログラム301を実行した後、ブートローダプログラム302の更新要求を示す所定の入力をUART111が受け付けた場合、ブートローダプログラム302の更新の要求があったと判定するものであっても良い。この所定の入力は、利用者が行うPC201へのコマンド入力であっても良い。
CPU121は、ブートローダプログラム302の更新の要求があったと判定した場合、ブートローダプログラム302の更新処理を実行する。この更新処理について、具体的に説明する。CPU121は、UART111を介して、PC201からブートローダプログラム302の更新に必要なデータ(以下、更新データと称する)を受信し、RAM141に取得する(ステップS14)。CPU121は、RAM141に取得したブートローダプログラム302の更新データを実行する(ステップS15)。
When the user turns on the information processing apparatus 101 (step S11), the CPU 121 reads the boot loader program 301 from the programmable ROM 131 and executes (starts) (step S12). Thereafter, the CPU 121 executes the following processing according to the procedure of the boot loader program 301 that has been started. The CPU 121 determines whether there is a request for updating the boot loader program 302 (step S13). For example, the CPU 121 may determine that the boot loader program 302 is requested to be updated when the UART 111 receives a predetermined input indicating the update request for the boot loader program 302 after executing the boot loader program 301. This predetermined input may be a command input to the PC 201 performed by the user.
When the CPU 121 determines that there is a request for updating the boot loader program 302, the CPU 121 executes an update process for the boot loader program 302. This update process will be specifically described. The CPU 121 receives data (hereinafter referred to as update data) necessary for updating the boot loader program 302 from the PC 201 via the UART 111 and acquires the data in the RAM 141 (step S14). The CPU 121 executes the update data of the boot loader program 302 acquired in the RAM 141 (step S15).

CPU121は、更新データ実行後、更新データが正常に実行完了したかどうかを判定する(ステップS16)。例えば、CPU121は、UART111に対して、CPU121が実行した結果の出力を指示し、UART111が出力した結果に対して、結果が正常である旨を示す所定の入力をUART111が受け付けた場合、更新データが正常に実行完了したと判定するものであっても良い。この所定の入力は、利用者が行うPC201へのコマンド入力であっても良い。
CPU121は、更新データが正常に実行完了したと判定した場合、プログラマブルROM131のブートローダプログラム302用のメモリエリアに格納されたデータを消去する(ステップS17)。続いて、CPU121は、RAM141に取得済みのブートローダプログラム302の更新データを、プログラマブルROM131のブートローダプログラム302用のメモリエリアへ書き込む(ステップS18)。その後、CPU121が情報処理装置101を再起動させる(ステップS19)。これにより、CPU121は、プログラマブルROM131に書き込まれた更新データで情報処理装置101を動作させる。
After executing the update data, the CPU 121 determines whether the update data has been normally executed (step S16). For example, the CPU 121 instructs the UART 111 to output the result executed by the CPU 121, and when the UART 111 receives a predetermined input indicating that the result is normal with respect to the result output by the UART 111, the update data May be determined to have been executed normally. This predetermined input may be a command input to the PC 201 performed by the user.
When the CPU 121 determines that the update data has been normally executed, the CPU 121 erases the data stored in the memory area for the boot loader program 302 in the programmable ROM 131 (step S17). Subsequently, the CPU 121 writes the update data of the boot loader program 302 acquired in the RAM 141 into the memory area for the boot loader program 302 in the programmable ROM 131 (step S18). Thereafter, the CPU 121 restarts the information processing apparatus 101 (step S19). As a result, the CPU 121 operates the information processing apparatus 101 with the update data written in the programmable ROM 131.

一方、ステップS16にて、CPU121が、更新データが正常に実行完了しなかったと判定した場合、CPU121は、ブートローダプログラム302の更新処理は実施せずに、情報処理装置101を再起動させる。   On the other hand, if the CPU 121 determines in step S16 that the update data has not been successfully executed, the CPU 121 restarts the information processing apparatus 101 without performing the update process of the boot loader program 302.

また、ステップS13にて、CPU121は、ブートローダプログラム302の更新の要求がないと判定した場合、CPU121は、ブートローダプログラム302の起動処理を実施する(ステップS20)。具体的には、CPU121は、通常動作時と同様に、ブートローダプログラム302をRAM141上へ展開して実行する。続いて、CPU121は、システムプログラム303の起動処理を実施し(ステップS21)、処理を実行する(ステップS22)。具体的には、CPU121は、システムプログラム303をRAM141上へ展開して実行する。その後、システムプログラム303の処理実行が継続される。   If the CPU 121 determines in step S13 that there is no update request for the boot loader program 302, the CPU 121 executes a boot process for the boot loader program 302 (step S20). Specifically, the CPU 121 expands and executes the boot loader program 302 on the RAM 141 as in the normal operation. Subsequently, the CPU 121 executes a startup process of the system program 303 (step S21) and executes the process (step S22). Specifically, the CPU 121 develops the system program 303 on the RAM 141 and executes it. Thereafter, the process execution of the system program 303 is continued.

なお、本実施例ではブートローダプログラム302の更新時の動作について説明を行ったが、システムプログラム303の更新時の動作についても適応可能である。   In this embodiment, the operation at the time of updating the boot loader program 302 has been described. However, the operation at the time of updating the system program 303 can also be applied.

以上説明したように、本形態においては、動作プログラムの更新データをRAM上で実行し、正常に完了した場合に、動作プログラムを実行させるためのROMのメモリエリアに書き込んで、装置を再起動する。つまり、装置の電源投入後、ソフトウェア起動途中でソフトウェア更新データを取得する。プログラマブルROMに記憶されているソフトウェアを更新せず、更新データを実行する。実行された更新データが正常動作したことを確認後、プログラマブルROMに記憶されているソフトウェアを更新する。そのため、以下に示す効果を奏する。
第1の効果は、ブートローダプログラム302の更新データを、動作確認後にプログラマブルROM131へ書き込むことで、ブートローダプログラム302の書き換え後、ブートローダプログラム302の起動が完了しないことを防止することができる。
第2の効果は、ブートローダプログラム302の書き換え失敗に備えるための、リカバリ用ブートローダプログラムをプログラマブルROM131中に格納しておく必要が無くなり、プログラマブルROM131の容量を効率的に利用することができる。
第3の効果は、ブートローダプログラム302の書き換え失敗に備えるための、リカバリ用ブートローダプログラムを格納するためのプログラマブルROM131を情報処理装置101中に具備する必要が無くなり、情報処理装置101の価格上昇を抑え、情報処理装置101の構成も簡略化することができる。
(第3の実施の形態)
As described above, in this embodiment, the update data of the operation program is executed on the RAM, and when it is normally completed, it is written in the memory area of the ROM for executing the operation program, and the apparatus is restarted. . That is, after the apparatus is turned on, software update data is acquired during software activation. Update data is executed without updating the software stored in the programmable ROM. After confirming that the executed update data operates normally, the software stored in the programmable ROM is updated. Therefore, the following effects are exhibited.
The first effect is that update data of the boot loader program 302 is written to the programmable ROM 131 after the operation is confirmed, so that it is possible to prevent the boot loader program 302 from being completely started after the boot loader program 302 is rewritten.
The second effect is that it is not necessary to store a recovery boot loader program in the programmable ROM 131 in preparation for failure to rewrite the boot loader program 302, and the capacity of the programmable ROM 131 can be used efficiently.
The third effect is that it is not necessary to provide the information processing apparatus 101 with the programmable ROM 131 for storing the boot loader program for recovery in order to prepare for the failure to rewrite the boot loader program 302, thereby suppressing an increase in the price of the information processing apparatus 101. The configuration of the information processing apparatus 101 can also be simplified.
(Third embodiment)

図6は、本発明の情報処理装置の第3の実施の形態を示す図である。
本形態における情報処理装置102−1〜102−3それぞれは図6に示すように、互いに有線ネットワーク162を介して接続され、相互通信が可能である通信機器である。また、情報処理装置102−1〜102−3それぞれは、PC202−1〜202−3それぞれと通信を行う機能を有する。PC202−1〜202−3それぞれは、一般的なPC等の情報処理装置である。なお、図6には、情報処理装置およびPCがそれぞれ3つずつである場合を例に挙げて示しているが、この数は限定しない。また、有線ネットワーク162は、イーサネット(登録商標)等の通信ネットワークである。また、図6に示した形態では、情報処理装置102−1〜102−3が有線ネットワーク162を介して接続されているが、無線ネットワークを介して接続されているものであっても良い。
FIG. 6 is a diagram showing a third embodiment of the information processing apparatus of the present invention.
As shown in FIG. 6, each of the information processing apparatuses 102-1 to 102-3 in this embodiment is a communication device that is connected to each other via a wired network 162 and can perform mutual communication. Each of the information processing apparatuses 102-1 to 102-3 has a function of communicating with each of the PCs 202-1 to 202-3. Each of the PCs 202-1 to 202-3 is an information processing apparatus such as a general PC. FIG. 6 shows an example in which there are three information processing apparatuses and three PCs, but this number is not limited. The wired network 162 is a communication network such as Ethernet (registered trademark). In the form shown in FIG. 6, the information processing apparatuses 102-1 to 102-3 are connected via the wired network 162, but may be connected via a wireless network.

情報処理装置102−1は、UART112−1と、CPU122−1と、プログラマブルROM132−1と、RAM142−1と、有線インタフェース部152−1とを有する。また、同様に、情報処理装置102−2は、UART112−2と、CPU122−2と、プログラマブルROM132−2と、RAM142−2と、有線インタフェース部152−2とを有する。また、同様に、情報処理装置102−3は、UART112−3と、CPU122−3と、プログラマブルROM132−3と、RAM142−3と、有線インタフェース部152−3とを有する。なお、図6には、本発明の情報処理装置102−1〜102−3が具備する構成要素のうち、本実施の形態に関わる主要な構成要素の一例を示す。   The information processing apparatus 102-1 includes a UART 112-1, a CPU 122-1, a programmable ROM 132-1, a RAM 142-1, and a wired interface unit 152-1. Similarly, the information processing apparatus 102-2 includes a UART 112-2, a CPU 122-2, a programmable ROM 132-2, a RAM 142-2, and a wired interface unit 152-2. Similarly, the information processing apparatus 102-3 includes a UART 112-3, a CPU 122-3, a programmable ROM 132-3, a RAM 142-3, and a wired interface unit 152-3. FIG. 6 shows an example of main components related to the present embodiment among the components included in the information processing apparatuses 102-1 to 102-3 of the present invention.

図6に示したUART112−1〜112−3、プログラマブルROM132−1〜132−3およびRAM142−1〜142−3それぞれは、図3に示したUART111、プログラマブルROM131およびRAM141と同じ機能を有する。また、プログラマブルROM132−1〜132−3の内部構造(メモリエリアの配置)については、図4に示したものと同じである。
図6に示した有線インタフェース部152−1〜152−3それぞれは、更新データを実行した結果が正常である場合、その旨を示す通知信号を有線ネットワーク162上へ送信する第2のインタフェース部である。例えば、更新データを実行した結果が正常である旨を示す第1の入力をUART112−1〜112−3が受け付けた場合、有線インタフェース部152−1〜152−3それぞれは、その旨を示す通知信号を有線ネットワーク162上へ送信するものであっても良い。また、有線インタフェース部152−1〜152−3それぞれは、通知信号を送信してから所定の時間が経過しても応答信号を受信しない場合、通知信号を再送する。
図6に示したCPU122−1〜122−3それぞれは、図3に示したCPU121が具備する機能に加えて、以下の機能を有する。CPU122−1〜122−3それぞれは、更新データを実行した結果が正常である場合、その旨を示す通知信号を有線ネットワーク162上へ送信するように有線インタフェース部152−1〜152−3に指示する。CPU122−1〜122−3それぞれは、UART112−1〜112−3が第1の入力を受け付けた場合、第1の入力を受け付けた旨を示す通知信号を送信するように有線インタフェース部152−1〜152−3へ指示する。CPU122−1〜122−3それぞれは、有線インタフェース部152−1〜152−3が、通知信号に対する応答信号を受信した場合、応答信号を送信してきた装置に対して更新データを送信するように有線インタフェース部152−1〜152−3へ指示する。
Each of the UARTs 112-1 to 112-3, the programmable ROMs 132-1 to 132-3 and the RAMs 142-1 to 142-3 shown in FIG. 6 has the same functions as the UART 111, the programmable ROM 131 and the RAM 141 shown in FIG. The internal structure (arrangement of memory areas) of the programmable ROMs 132-1 to 132-3 is the same as that shown in FIG.
Each of the wired interface units 152-1 to 152-3 illustrated in FIG. 6 is a second interface unit that transmits a notification signal indicating that to the wired network 162 when the result of executing the update data is normal. is there. For example, when the UART 112-1 to 112-3 receives the first input indicating that the result of executing the update data is normal, each of the wired interface units 152-1 to 152-3 is notified to that effect. The signal may be transmitted on the wired network 162. In addition, each of the wired interface units 152-1 to 152-3 retransmits the notification signal when a response signal is not received even after a predetermined time has elapsed since the notification signal was transmitted.
Each of the CPUs 122-1 to 122-3 illustrated in FIG. 6 has the following functions in addition to the functions of the CPU 121 illustrated in FIG. When the result of executing the update data is normal, each of the CPUs 122-1 to 122-3 instructs the wired interface units 152-1 to 152-3 to transmit a notification signal indicating that to the wired network 162. To do. When each of the CPUs 122-1 to 122-3 receives the first input, the wired interface unit 152-1 transmits a notification signal indicating that the first input has been received. To 152-3. Each of the CPUs 122-1 to 122-3 is wired so that when the wired interface units 152-1 to 152-3 receive a response signal to the notification signal, the update data is transmitted to the device that has transmitted the response signal. Instructs the interface units 152-1 to 152-3.

図7は、図6に示した有線インタフェース部152−1〜152−3が送受信する信号のフレーム構成の一例を示す図である。
図6に示した有線インタフェース部152−1〜152−3が送受信する信号のフレーム構成は図7に示すように、宛先MACアドレス400と、送信元MACアドレス410と、タイプ420と、データ430と、FCS440とから構成される。
宛先MACアドレス400は、フレームの送信相手となる宛先のコンピュータのMAC(Media Access Control)アドレスの情報を格納する。宛先MACアドレス400のサイズは、6bytesである。送信元MACアドレス410は、フレームを送信する情報処理装置のMACアドレスの情報を格納する。送信元MACアドレス410のサイズは、6bytesである。タイプ420は、次に続くデータ430に格納する上位層プロトコルを識別する値を格納する。タイプ420のサイズは、2bytesである。データ430は、ユーザデータを格納する。データ430のサイズは、46〜1500bytesである。FCS440は、受信したフレームに誤りがないかどうかを調べるために付加されるデータである。FCS440のサイズは、4bytesである。
FIG. 7 is a diagram illustrating an example of a frame configuration of a signal transmitted and received by the wired interface units 152-1 to 152-3 illustrated in FIG.
As shown in FIG. 7, the frame configuration of signals transmitted and received by the wired interface units 152-1 to 152-3 shown in FIG. 6 includes a destination MAC address 400, a source MAC address 410, a type 420, and data 430. , FCS440.
The destination MAC address 400 stores information on a MAC (Media Access Control) address of a destination computer that is a frame transmission partner. The size of the destination MAC address 400 is 6 bytes. The source MAC address 410 stores information on the MAC address of the information processing apparatus that transmits the frame. The size of the source MAC address 410 is 6 bytes. Type 420 stores a value that identifies an upper layer protocol stored in data 430 that follows. The size of the type 420 is 2 bytes. Data 430 stores user data. The size of the data 430 is 46 to 1500 bytes. The FCS 440 is data added to check whether there is an error in the received frame. The size of the FCS 440 is 4 bytes.

図8は、図7に示したタイプ420に格納される値の一例を示す図である。
図7に示したタイプ420には図8に示すように、フレーム種別に応じた値が格納される。例えば、フレーム種別がブートローダプログラム302の更新通知フレームである場合、「0x0001」(xは16進数を示す)がフレームタイプ値としてタイプ420に格納される。また、フレーム種別がブートローダプログラム302の更新応答フレームである場合、「0x0002」(xは16進数を示す)がフレームタイプ値としてタイプ420に格納される。また、フレーム種別がブートローダプログラム302の更新データフレームである場合、「0x0003」(xは16進数を示す)がフレームタイプ値としてタイプ420に格納される。
FIG. 8 is a diagram illustrating an example of values stored in the type 420 illustrated in FIG.
The type 420 shown in FIG. 7 stores a value corresponding to the frame type as shown in FIG. For example, when the frame type is the update notification frame of the boot loader program 302, “0x0001” (x indicates a hexadecimal number) is stored in the type 420 as the frame type value. When the frame type is the update response frame of the boot loader program 302, “0x0002” (x indicates a hexadecimal number) is stored in the type 420 as a frame type value. When the frame type is an update data frame of the boot loader program 302, “0x0003” (x indicates a hexadecimal number) is stored in the type 420 as a frame type value.

例えば、情報処理装置102−1が送信するフレームが、ブートローダプログラム302の更新通知フレームである場合、接続されている情報処理装置102−2,102−3すべてへフレームを送信するため、宛先MACアドレス400には、ブロードキャストMACアドレス(FF:FF:FF:FF:FF:FF)が設定される。送信元MACアドレス410には、情報処理装置102−1のMACアドレスが設定される。タイプ420には、ブートローダプログラム302の更新通知フレームであることを示すため、0x0001が格納される。データ430は、サイズは46bytesとし、ここでは任意の値とする。
また、情報処理装置102−2が情報処理装置102−1へ送信するフレームが、ブートローダプログラム302の更新応答フレームである場合、宛先MACアドレス400には、情報処理装置102−1のMACアドレスが設定される。送信元MACアドレス410には、フレームを送信する情報処理装置102−2のMACアドレスが設定される。タイプ420には、ブートローダプログラム302の更新応答フレームであることを示すため、0x0002が格納される。データ430は、サイズは46bytesとし、ここでは任意の値とする。
また、情報処理装置102−1が送信するフレームが、ブートローダプログラム302の更新データフレームである場合、宛先MACアドレス400には、ブートローダプログラム302の更新応答フレームを送信した情報処理装置の送信元MACアドレスが設定される。送信元MACアドレス410には、情報処理装置102−1のMACアドレスが設定される。タイプ420には、ブートローダプログラム302の更新データフレームであることを示すため、0x0003が格納される。データ430には、ブートローダプログラム302の更新データが格納される。ブートローダプログラム302の更新データのサイズが、データ430の最大サイズである1500bytesよりも大きな場合、情報処理装置102−1は、ブートローダプログラム302の更新データを複数のブートローダプログラム302の更新データフレームに分割し、ブートローダプログラム302の更新データを送信する。
For example, when the frame transmitted by the information processing apparatus 102-1 is an update notification frame of the boot loader program 302, the frame is transmitted to all of the connected information processing apparatuses 102-2 and 102-3. In 400, a broadcast MAC address (FF: FF: FF: FF: FF: FF) is set. In the transmission source MAC address 410, the MAC address of the information processing apparatus 102-1 is set. Type 420 stores 0x0001 to indicate that it is an update notification frame of the boot loader program 302. The data 430 has a size of 46 bytes, and is an arbitrary value here.
When the frame transmitted from the information processing apparatus 102-2 to the information processing apparatus 102-1 is an update response frame of the boot loader program 302, the destination MAC address 400 is set to the MAC address of the information processing apparatus 102-1. Is done. In the transmission source MAC address 410, the MAC address of the information processing apparatus 102-2 that transmits the frame is set. In type 420, 0x0002 is stored to indicate that it is an update response frame of the boot loader program 302. The data 430 has a size of 46 bytes, and is an arbitrary value here.
When the frame transmitted by the information processing apparatus 102-1 is an update data frame of the boot loader program 302, the destination MAC address 400 includes the transmission source MAC address of the information processing apparatus that has transmitted the update response frame of the boot loader program 302. Is set. In the transmission source MAC address 410, the MAC address of the information processing apparatus 102-1 is set. Type 420 stores 0x0003 to indicate that it is an update data frame of the boot loader program 302. The data 430 stores update data of the boot loader program 302. When the size of the update data of the boot loader program 302 is larger than 1500 bytes which is the maximum size of the data 430, the information processing apparatus 102-1 divides the update data of the boot loader program 302 into update data frames of a plurality of boot loader programs 302. The update data of the boot loader program 302 is transmitted.

以下に、図6に示した形態における動作プログラムの更新方法について説明する。まずは、更新通知を送信する場合の処理について説明する。図9A,9Bは、図6に示した形態における動作プログラムの更新方法のうち、更新通知を送信する場合の処理の一例を説明するためのフローチャートである。ここでは、図6に示した情報処理装置102−1がブートローダプログラム302の更新通知を送信する処理について説明する。   The operation program update method in the embodiment shown in FIG. 6 will be described below. First, a process when an update notification is transmitted will be described. FIGS. 9A and 9B are flowcharts for explaining an example of processing when an update notification is transmitted in the update method of the operation program in the form shown in FIG. Here, a process in which the information processing apparatus 102-1 illustrated in FIG. 6 transmits an update notification of the boot loader program 302 will be described.

利用者が、情報処理装置102−1の電源を投入すると(ステップS31)、CPU122−1はプログラマブルROM132−1からブートローダプログラム301を読み出し、実行(起動)する(ステップS32)。その後、CPU122−1は、起動したブートローダプログラム301の手順に従って以下の処理を実行する。CPU122−1は、ブートローダプログラム302の更新の要求があるかどうかを判定する(ステップS33)。例えば、CPU122−1は、ブートローダプログラム301を実行した後、ブートローダプログラム302の更新要求を示す所定の入力をUART112−1が受け付けた場合、ブートローダプログラム302の更新の要求があったと判定するものであっても良い。この所定の入力は、利用者が行うPC202−1へのコマンド入力であっても良い。   When the user turns on the power of the information processing apparatus 102-1 (step S31), the CPU 122-1 reads the boot loader program 301 from the programmable ROM 132-1 and executes (starts) (step S32). Thereafter, the CPU 122-1 executes the following process according to the procedure of the boot loader program 301 that has been started. The CPU 122-1 determines whether or not there is a request for updating the boot loader program 302 (step S33). For example, after executing the boot loader program 301, the CPU 122-1 determines that there is a request for updating the boot loader program 302 when the UART 112-1 receives a predetermined input indicating a request for updating the boot loader program 302. May be. This predetermined input may be a command input to the PC 202-1 performed by the user.

CPU122−1は、ブートローダプログラム302の更新の要求があったと判定した場合、ブートローダプログラム302の更新処理を実行する。この更新処理について、具体的に説明する。CPU122−1は、UART112−1を介して、PC202−1からブートローダプログラム302の更新に必要な更新データを受信し、RAM142−1に取得する(ステップS34)。CPU122−1は、RAM142−1に取得したブートローダプログラム302の更新データを実行する(ステップS35)。   When the CPU 122-1 determines that there is a request for updating the boot loader program 302, it executes an update process for the boot loader program 302. This update process will be specifically described. The CPU 122-1 receives update data necessary for updating the boot loader program 302 from the PC 202-1 through the UART 112-1, and acquires the update data in the RAM 142-1 (step S34). The CPU 122-1 executes the update data of the boot loader program 302 acquired in the RAM 142-1 (Step S35).

CPU122−1は、更新データ実行後、更新データが正常に実行完了したかどうかを判定する(ステップS36)。例えば、CPU122−1は、UART112−1に対して、CPU122−1が実行した結果の出力を指示し、UART112−1が出力した結果に対して、結果が正常である旨を示す所定の入力をUART112−1が受け付けた場合、更新データが正常に実行完了したと判定するものであっても良い。この所定の入力は、利用者が行うPC202−1へのコマンド入力であっても良い。
CPU122−1は、更新データが正常に実行完了したと判定した場合、情報処理装置102−1内に具備されたカウンタt1(不図示)に「0」の値を代入する(ステップS37)。続いて、CPU122−1は、有線インタフェース部152−1を用いて、有線ネットワーク162上へブートローダプログラム302の更新通知フレームを送信する(ステップS38)。情報処理装置102−1がブートローダプログラム302の更新通知フレームを送信することにより、有線ネットワーク162と接続されている情報処理装置102−2,102−3へブートローダプログラム302を更新することを通知する。
After executing the update data, the CPU 122-1 determines whether or not the update data has been normally executed (step S36). For example, the CPU 122-1 instructs the UART 112-1 to output the result executed by the CPU 122-1, and gives a predetermined input indicating that the result is normal with respect to the result output by the UART 112-1. When the UART 112-1 receives, it may be determined that the update data has been normally executed. This predetermined input may be a command input to the PC 202-1 performed by the user.
When determining that the update data has been normally executed, the CPU 122-1 assigns a value of “0” to a counter t1 (not shown) provided in the information processing apparatus 102-1 (step S37). Subsequently, the CPU 122-1 transmits an update notification frame of the boot loader program 302 to the wired network 162 using the wired interface unit 152-1 (step S38). The information processing apparatus 102-1 transmits an update notification frame of the boot loader program 302 to notify the information processing apparatuses 102-2 and 102-3 connected to the wired network 162 that the boot loader program 302 is updated.

それから所定の時間が経過した後、CPU122−1は、有線ネットワーク162と接続されている情報処理装置102−2,102−3から、有線インタフェース部152−1がブートローダプログラム302の更新応答フレームを受信したかどうかを判定する(ステップS39)。
有線インタフェース部152−1がブートローダプログラム302の更新応答フレームを受信した場合、CPU122−1は、ブートローダプログラム302の更新応答フレームを送信元した送信元の情報処理装置へ、ステップS34にてRAM142−1に取得したブートローダプログラム302の更新データを、有線インタフェース部152−1を介して送信する(ステップS40)。続いて、CPU122−1は、プログラマブルROM132−1のブートローダプログラム302用のメモリエリアに格納されたデータを消去する(ステップS41)。CPU122−1は、RAM142−1に取得済みのブートローダプログラム302の更新データを、プログラマブルROM132−1のブートローダプログラム302用のメモリエリアへ書き込む(ステップS42)。その後、CPU122−1が情報処理装置102−1を再起動させる(ステップS43)。これにより、CPU122−1は、プログラマブルROM132−1に書き込まれた更新データを用いて情報処理装置102−1を動作させる。
After a predetermined time has elapsed, the CPU 122-1 receives the update response frame of the boot loader program 302 from the information processing apparatuses 102-2 and 102-3 connected to the wired network 162. It is determined whether or not (step S39).
When the wired interface unit 152-1 receives the update response frame of the boot loader program 302, the CPU 122-1 sends the RAM 142-1 to the transmission source information processing apparatus that has transmitted the update response frame of the boot loader program 302 in step S34. The update data of the boot loader program 302 acquired is transmitted via the wired interface unit 152-1 (step S40). Subsequently, the CPU 122-1 erases the data stored in the memory area for the boot loader program 302 in the programmable ROM 132-1 (step S41). The CPU 122-1 writes the update data of the boot loader program 302 acquired in the RAM 142-1 to the memory area for the boot loader program 302 in the programmable ROM 132-1 (step S42). Thereafter, the CPU 122-1 restarts the information processing apparatus 102-1 (step S43). Thereby, the CPU 122-1 operates the information processing apparatus 102-1 using the update data written in the programmable ROM 132-1.

一方、ステップS33にて、CPU122−1は、ブートローダプログラム302の更新の要求がないと判定した場合、CPU122−1は、ブートローダプログラム302の起動処理を実施する(ステップS44)。具体的には、CPU122−1は、通常動作時と同様に、ブートローダプログラム302をRAM142−1上へ展開して実行する。続いて、CPU122−1は、システムプログラム303の起動処理を実施し(ステップS45)、処理を実行する(ステップS46)。具体的には、CPU122−1は、システムプログラム303をRAM142−1上へ展開して実行する。その後、システムプログラム303の処理実行が継続される。   On the other hand, if the CPU 122-1 determines in step S33 that there is no update request for the boot loader program 302, the CPU 122-1 performs a boot process for the boot loader program 302 (step S44). Specifically, the CPU 122-1 develops and executes the boot loader program 302 on the RAM 142-1, similarly to the normal operation. Subsequently, the CPU 122-1 executes a start process of the system program 303 (step S45) and executes the process (step S46). Specifically, the CPU 122-1 develops the system program 303 on the RAM 142-1, and executes it. Thereafter, the process execution of the system program 303 is continued.

また、ステップS36にて、CPU122−1が、更新データが正常に実行完了しなかったと判定した場合、CPU122−1は、ブートローダプログラム302の更新処理は実施せずに、情報処理装置102−1を再起動させる。   If the CPU 122-1 determines in step S36 that the update data has not been normally executed, the CPU 122-1 does not perform the update process of the boot loader program 302 and the information processing apparatus 102-1 is executed. Reboot.

また、ステップS39にて、有線インタフェース部152−1がブートローダプログラム302の更新応答フレームを受信しなかった場合、CPU122−1は、カウンタt1の値をインクリメント(値に1を加算)する(ステップS47)。そして、CPU122−1は、そのカウンタt1の値があらかじめ設定された閾値を超えたかどうかを判定する(ステップS48)。この閾値は、事前に行われた実験等の結果に基づいて定められた値である。
CPU122−1は、カウンタt1の値が閾値を超えたと判定した場合、ステップS41の処理を行う。一方、CPU122−1は、カウンタt1の値が閾値を超えていないと判定した場合、ステップS38の処理を行う。
If the wired interface unit 152-1 does not receive the update response frame of the boot loader program 302 in step S39, the CPU 122-1 increments the value of the counter t1 (adds 1 to the value) (step S47). ). Then, the CPU 122-1 determines whether or not the value of the counter t1 exceeds a preset threshold value (step S48). This threshold value is a value determined based on the result of an experiment or the like performed in advance.
When the CPU 122-1 determines that the value of the counter t1 exceeds the threshold value, the CPU 122-1 performs the process of step S41. On the other hand, if the CPU 122-1 determines that the value of the counter t1 does not exceed the threshold value, the CPU 122-1 performs the process of step S38.

なお、以上ではブートローダプログラム302の更新時の動作について説明を行ったが、システムプログラム303の更新時の動作についても適応可能である。   Although the operation at the time of updating the boot loader program 302 has been described above, the operation at the time of updating the system program 303 can also be applied.

以下に、更新通知を受信する場合の処理について説明する。図10A,10Bは、図6に示した形態における動作プログラムの更新方法のうち、更新通知を受信する場合の処理の一例を説明するためのフローチャートである。ここでは、図6に示した情報処理装置102−1がブートローダプログラム302の更新通知を送信し、情報処理装置102−2が更新通知を受信する処理について説明する。図6に示した情報処理装置102−1がブートローダプログラム302の更新通知を送信し、情報処理装置102−3が更新通知を受信する処理についても同様である。   In the following, processing when receiving an update notification will be described. FIGS. 10A and 10B are flowcharts for explaining an example of processing in the case of receiving an update notification in the operation program update method in the embodiment shown in FIG. Here, a process in which the information processing apparatus 102-1 illustrated in FIG. 6 transmits an update notification of the boot loader program 302 and the information processing apparatus 102-2 receives the update notification will be described. The same applies to the processing in which the information processing apparatus 102-1 illustrated in FIG. 6 transmits the update notification of the boot loader program 302 and the information processing apparatus 102-3 receives the update notification.

まず、利用者が、情報処理装置102−2の電源を投入すると(ステップS51)、情報処理装置102−2は、通常、システムプログラム303が実行された状態で動作している(ステップS52)。システムプログラム303を実行時、CPU122−2は、有線インタフェース部152−2がブートローダプログラム302の更新通知フレームを受信したかどうかを判定する(ステップS53)。CPU122−2は、ブートローダプログラム302の更新通知フレームを受信していないと判定した場合、システムプログラム303の実行を継続する。   First, when the user turns on the information processing apparatus 102-2 (step S51), the information processing apparatus 102-2 normally operates with the system program 303 being executed (step S52). When executing the system program 303, the CPU 122-2 determines whether or not the wired interface unit 152-2 has received the update notification frame of the boot loader program 302 (step S53). When determining that the update notification frame of the boot loader program 302 has not been received, the CPU 122-2 continues to execute the system program 303.

一方、CPU122−2は、ブートローダプログラム302の更新通知フレームを受信したと判定した場合、情報処理装置102−2を再起動させる(ステップS54)。すると、CPU122−2は、プログラマブルROM132−2からブートローダプログラム301を読み出し、実行(起動)する(ステップS55)。その後、CPU122−2は、有線インタフェース部152−2が、ブートローダプログラム302の更新通知フレームを受信したかどうかを判定する(ステップS56)。CPU122−2は、ブートローダプログラム302の更新通知フレームを受信していないと判定した場合、ブートローダプログラム302の起動処理を実施する(ステップS57)。具体的には、CPU122−2は、通常動作時と同様に、ブートローダプログラム302をRAM142−2上へ展開して実行する。続いて、CPU122−2は、システムプログラム303の起動処理を実施し(ステップS58)、処理を実行する(ステップS59)。具体的には、CPU122−2は、システムプログラム303をRAM142−2上へ展開して実行する。その後、システムプログラム303の処理実行が継続される。   On the other hand, when it is determined that the update notification frame of the boot loader program 302 has been received, the CPU 122-2 restarts the information processing apparatus 102-2 (step S54). Then, the CPU 122-2 reads the boot loader program 301 from the programmable ROM 132-2 and executes (activates) it (step S55). Thereafter, the CPU 122-2 determines whether the wired interface unit 152-2 has received the update notification frame of the boot loader program 302 (step S56). If the CPU 122-2 determines that the update notification frame of the boot loader program 302 has not been received, the CPU 122-2 executes the boot loader program 302 activation process (step S57). Specifically, the CPU 122-2 develops and executes the boot loader program 302 on the RAM 142-2, as in the normal operation. Subsequently, the CPU 122-2 executes the activation process of the system program 303 (step S58) and executes the process (step S59). Specifically, the CPU 122-2 develops and executes the system program 303 on the RAM 142-2. Thereafter, the process execution of the system program 303 is continued.

一方、ステップS56にて、CPU122−2は、ブートローダプログラム302の更新通知フレームを受信したと判定した場合、ブートローダプログラム302の更新通知フレーム内の送信元MACアドレスを宛先MACアドレスとして、有線インタフェース部152−2を用いてブートローダプログラム302の更新応答フレームを送信する(ステップS60)。CPU122−2がブートローダプログラム302の更新応答フレームを送信することにより、有線ネットワーク162と接続されている情報処理装置102−1へブートローダプログラム302を更新することを通知する。通知を受信した情報処理装置102−1は、有線インタフェース部152−1を介して、有線ネットワーク162と接続されているブートローダプログラム302の更新応答フレームの送信元の情報処理装置102−2へ、ステップS34にてRAM142−1に取得したブートローダプログラム302の更新データを、ブートローダプログラム302の更新データフレームを用いて送信する。ブートローダプログラム302の更新応答フレームの送信元の情報処理装置102−2のCPU122−2は、有線ネットワーク162を介して情報処理装置102−1から送信されてきたブートローダプログラム302の更新データをRAM142−2に取得する(ステップS61)。CPU122−2は、RAM142−2に取得したブートローダプログラム302の更新データを実行する(ステップS62)。   On the other hand, if the CPU 122-2 determines in step S56 that the update notification frame of the boot loader program 302 has been received, the wired interface unit 152 uses the transmission source MAC address in the update notification frame of the boot loader program 302 as the destination MAC address. -2 is used to transmit an update response frame of the boot loader program 302 (step S60). The CPU 122-2 transmits an update response frame of the boot loader program 302 to notify the information processing apparatus 102-1 connected to the wired network 162 that the boot loader program 302 is to be updated. The information processing apparatus 102-1 that has received the notification steps to the information processing apparatus 102-2 that is the transmission source of the update response frame of the boot loader program 302 connected to the wired network 162 via the wired interface unit 152-1. The update data of the boot loader program 302 acquired in the RAM 142-1 in S34 is transmitted using the update data frame of the boot loader program 302. The CPU 122-2 of the information processing apparatus 102-2 that is the transmission source of the update response frame of the boot loader program 302 stores the update data of the boot loader program 302 transmitted from the information processing apparatus 102-1 via the wired network 162 in the RAM 142-2. (Step S61). The CPU 122-2 executes the update data of the boot loader program 302 acquired in the RAM 142-2 (Step S62).

CPU122−2は、更新データ実行後、更新データが正常に実行完了したかどうかを判定する(ステップS63)。例えば、CPU122−2は、UART112−2に対して、CPU122−2が実行した結果の出力を指示し、UART112−2が出力した結果に対して、結果が正常である旨を示す所定の入力をUART112−2が受け付けた場合、更新データが正常に実行完了したと判定するものであっても良い。この所定の入力は、利用者が行うPC202−2へのコマンド入力であっても良い。
CPU122−2は、更新データが正常に実行完了したと判定した場合、プログラマブルROM132−2のブートローダプログラム302用のメモリエリアに格納されたデータを消去する(ステップS64)。続いて、CPU122−2は、RAM142−2に取得済みのブートローダプログラム302の更新データを、プログラマブルROM132−2のブートローダプログラム302用のメモリエリアへ書き込む(ステップS65)。その後、CPU122−2が情報処理装置102−2を再起動させる(ステップS66)。これにより、CPU122−2は、プログラマブルROM132−2に書き込まれた更新データを用いて情報処理装置102−2を動作させる。
After executing the update data, the CPU 122-2 determines whether or not the update data has been normally executed (step S63). For example, the CPU 122-2 instructs the UART 112-2 to output the result executed by the CPU 122-2, and gives a predetermined input indicating that the result is normal to the result output by the UART 112-2. When the UART 112-2 receives, it may be determined that the update data has been normally executed. This predetermined input may be a command input to the PC 202-2 performed by the user.
When determining that the update data has been normally executed, the CPU 122-2 erases the data stored in the memory area for the boot loader program 302 in the programmable ROM 132-2 (step S64). Subsequently, the CPU 122-2 writes the update data of the boot loader program 302 acquired in the RAM 142-2 into the memory area for the boot loader program 302 of the programmable ROM 132-2 (Step S65). Thereafter, the CPU 122-2 restarts the information processing apparatus 102-2 (step S66). As a result, the CPU 122-2 operates the information processing apparatus 102-2 using the update data written in the programmable ROM 132-2.

一方、ステップS63にて、CPU122−2が、更新データが正常に実行完了しなかったと判定した場合、CPU122−2は、ブートローダプログラム302の更新処理は実施せずに、情報処理装置102−2を再起動させる。   On the other hand, when the CPU 122-2 determines in step S63 that the update data has not been successfully executed, the CPU 122-2 does not perform the update process of the boot loader program 302 and activates the information processing apparatus 102-2. Reboot.

このように、複数の情報処理装置がネットワークを用いて接続された場合、1つの情報処理装置から他の情報処理装置へ、動作プログラムの更新通知を行い、その更新通知に応答した情報処理装置に対して、更新データを送信する。更新データを受信した情報処理装置は、第1および第2の実施の形態と同様に、更新データをRAM上で実行し、その実行結果が正常である場合、その更新データをプログラマブルROMへ書き込んでソフトウェアの更新を行う。これにより、複数の情報処理装置間で、更新データのやり取りが可能となり、各情報処理装置においては、更新データの正常動作を確認してからソフトウェアの更新を行うことができる。   As described above, when a plurality of information processing apparatuses are connected using a network, an operation program update notification is sent from one information processing apparatus to another information processing apparatus, and the information processing apparatus responding to the update notification is notified. On the other hand, update data is transmitted. The information processing apparatus that has received the update data executes the update data on the RAM and writes the update data to the programmable ROM if the execution result is normal, as in the first and second embodiments. Update the software. Thus, update data can be exchanged between a plurality of information processing apparatuses, and each information processing apparatus can update software after confirming normal operation of the update data.

以上、各構成要素に各機能(処理)それぞれを分担させて説明したが、この割り当ては上述したものに限定しない。また、構成要素の構成についても、上述した形態はあくまでも例であって、これに限定しない。   As described above, each function (process) is assigned to each component, but this assignment is not limited to the above. In addition, the configuration described above is merely an example, and the present invention is not limited to this.

上述した情報処理装置100,101,102−1〜102−3それぞれに設けられた各構成要素が行う処理は、目的に応じてそれぞれ作製された論理回路で行うようにしても良い。また、処理内容を手順として記述したコンピュータプログラム(以下、プログラムと称する)を情報処理装置100,101,102−1〜102−3それぞれにて読取可能な記録媒体に記録し、この記録媒体に記録されたプログラムを情報処理装置100,101,102−1〜102−3それぞれに読み込ませ、実行するものであっても良い。情報処理装置100,101,102−1〜102−3それぞれにて読取可能な記録媒体とは、フロッピー(登録商標)ディスク、光磁気ディスク、DVD(Digital Versatile Disc)、CD(Compact Disc)、Blu−ray(登録商標) Discなどの移設可能な記録媒体の他、情報処理装置100,101,102−1〜102−3それぞれに内蔵されたROM(Read Only Memory)、RAM(Random Access Memory)等のメモリやHDD(Hard Disc Drive)等を指す。この記録媒体に記録されたプログラムは、情報処理装置100,101,102−1〜102−3それぞれに設けられたCPUにて読み込まれ、CPUの制御によって、上述したものと同様の処理が行われる。ここで、CPUは、プログラムが記録された記録媒体から読み込まれたプログラムを実行するコンピュータとして動作するものである。   The processing performed by each component provided in each of the information processing apparatuses 100, 101, 102-1 to 102-3 described above may be performed by a logic circuit that is produced according to the purpose. Further, a computer program (hereinafter referred to as a program) in which processing contents are described as a procedure is recorded on a recording medium that can be read by each of the information processing apparatuses 100, 101, 102-1 to 102-3, and recorded on this recording medium. The information processing apparatus 100, 101, 102-1 to 102-3 may be read and executed by the program. Recording media that can be read by each of the information processing apparatuses 100, 101, 102-1 to 102-3 include a floppy (registered trademark) disk, a magneto-optical disk, a DVD (Digital Versatile Disc), a CD (Compact Disc), and a Blu. -Ray (registered trademark) In addition to a transferable recording medium such as a disc, ROM (Read Only Memory), RAM (Random Access Memory), etc. incorporated in each of the information processing apparatuses 100, 101, 102-1 to 102-3 Memory, HDD (Hard Disc Drive), and the like. The program recorded on this recording medium is read by the CPU provided in each of the information processing apparatuses 100, 101, 102-1 to 102-3, and the same processing as described above is performed under the control of the CPU. . Here, the CPU operates as a computer that executes a program read from a recording medium on which the program is recorded.

上記の実施の形態の一部または全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)情報処理装置であって、
当該情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する第1のインタフェース部と、
前記第1のインタフェース部が取得した更新データを実行し、該更新データを実行した結果が正常である場合、前記更新データを、当該情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込み、当該情報処理装置を再起動させる制御部とを有する情報処理装置。
(付記2)前記制御部は、当該情報処理装置を起動した際、前記メモリエリアに格納されている起動プログラムを実行し、該起動プログラムの手順に従って、前記第1のインタフェース部に対して、前記更新データの取得を指示し、前記取得した更新データを実行し、該更新データを実行した結果が正常である場合、前記更新データを前記メモリエリアに書き込み、当該情報処理装置を再起動させる、付記1に記載の情報処理装置。
(付記3)前記第1のインタフェース部は、前記制御部が実行した結果を出力し、
前記制御部は、前記第1のインタフェース部が出力した結果に対して該結果が正常である旨を示す第1の入力を前記第1のインタフェース部が受け付けた場合、前記更新データを前記メモリエリアに書き込む、付記2に記載の情報処理装置。
(付記4)前記制御部は、前記起動プログラムの手順に従って、前記第1のインタフェース部に対して、前記制御部が実行した結果の出力を指示する、付記3に記載の情報処理装置。
(付記5)前記制御部は、前記起動プログラムを実行した後、前記動作プログラムの更新要求を示す第2の入力を前記第1のインタフェース部が受け付けた場合、前記第1のインタフェース部に対して、前記更新データの取得を指示する、付記2から4のいずれか1項に記載の情報処理装置。
(付記6)前記制御部の指示に基づいて所定の通知信号を送信する第2のインタフェース部を有し、
前記制御部は、前記更新データを実行した結果が正常である場合、前記通知信号を送信するように前記第2のインタフェース部へ指示し、前記第2のインタフェース部が、前記通知信号に対する応答信号を受信した場合、該応答信号を送信してきた装置に対して、前記更新データを送信するように第2のインタフェース部へ指示し、
前記第2のインタフェース部は、前記制御部の指示に基づいて前記更新データを送信する、付記から5のいずれか1項に記載の情報処理装置。
(付記7)前記第2のインタフェース部は、前記通知信号を送信してから所定の時間が経過しても前記応答信号を受信しない場合、該通知信号を再送する、付記6に記載の情報処理装置。
(付記8)前記メモリエリアは不揮発性メモリの領域である、付記1から7のいずれか1項に記載の情報処理装置。
(付記9)情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する処理と、
前記取得した更新データを実行する処理と、
前記実行した結果が正常である場合、前記更新データを、前記情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込む処理と、
前記情報処理装置を再起動させる処理とを行う動作プログラムの更新方法。
(付記10)コンピュータに、
情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する手順と、
前記取得した更新データを実行する手順と、
前記実行した結果が正常である場合、前記更新データを、前記情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込む手順と、
前記情報処理装置を再起動させる手順とを実行させるためのプログラム。
A part or all of the above embodiment can be described as in the following supplementary notes, but is not limited thereto.
(Appendix 1) An information processing apparatus,
A first interface unit for acquiring update data necessary for updating an operation program for operating the information processing apparatus;
A memory for executing update data acquired by the first interface unit and causing the update data to be executed after the information processing apparatus is restarted when a result of executing the update data is normal An information processing apparatus having a control unit that writes to an area and restarts the information processing apparatus.
(Additional remark 2) When the said information processing apparatus starts the said information processing apparatus, the startup program stored in the said memory area is performed, According to the procedure of this startup program, with respect to the said 1st interface part, Instructing acquisition of update data, executing the acquired update data, and if the result of executing the update data is normal, writing the update data to the memory area and restarting the information processing apparatus, The information processing apparatus according to 1.
(Supplementary Note 3) The first interface unit outputs a result executed by the control unit,
When the first interface unit receives a first input indicating that the result is normal with respect to a result output from the first interface unit, the control unit stores the update data in the memory area The information processing apparatus according to appendix 2, wherein
(Supplementary note 4) The information processing apparatus according to supplementary note 3, wherein the control unit instructs the first interface unit to output a result executed by the control unit in accordance with the procedure of the activation program.
(Additional remark 5) When the said 1st interface part receives the 2nd input which shows the update request | requirement of the said operation | movement program after the said start program is run with respect to the said 1st interface part The information processing apparatus according to any one of appendices 2 to 4, which instructs acquisition of the update data.
(Additional remark 6) It has the 2nd interface part which transmits a predetermined notice signal based on the directions of the control part,
The control unit instructs the second interface unit to transmit the notification signal when a result of executing the update data is normal, and the second interface unit responds to the notification signal. Is received, the second interface unit is instructed to transmit the update data to the device that has transmitted the response signal.
6. The information processing apparatus according to claim 5, wherein the second interface unit transmits the update data based on an instruction from the control unit.
(Supplementary note 7) The information processing according to supplementary note 6, wherein the second interface unit retransmits the notification signal when the response signal is not received even after a predetermined time has elapsed since the notification signal was transmitted. apparatus.
(Supplementary note 8) The information processing apparatus according to any one of supplementary notes 1 to 7, wherein the memory area is a non-volatile memory region.
(Additional remark 9) The process which acquires the update data required for the update of the operation program for operating information processing apparatus,
Processing for executing the acquired update data;
When the executed result is normal, the update data is written in a memory area for executing the operation program after restarting the information processing apparatus;
A method for updating an operation program for performing a process of restarting the information processing apparatus.
(Appendix 10)
A procedure for acquiring update data necessary for updating an operation program for operating the information processing apparatus;
A procedure for executing the acquired update data;
When the executed result is normal, the update data is written in a memory area for executing the operation program after the information processing apparatus is restarted;
A program for executing a procedure for restarting the information processing apparatus.

100,101,102−1〜102−3 情報処理装置
110 インタフェース部
111,112−1〜112−3 UART
120 制御部
121,122−1〜122−3 CPU
130 メモリエリア
131,132−1〜132−3 プログラマブルROM
141,142−1〜142−3 RAM
152−1〜152−3 有線インタフェース部
162 有線ネットワーク
201,202−1〜202−3 PC
301,302 ブートローダプログラム
303 システムプログラム
400 宛先MACアドレス
410 送信元MACアドレス
420 タイプ
430 データ
440 FCS
100, 101, 102-1 to 102-3 Information processing apparatus 110 Interface unit 111, 112-1 to 112-3 UART
120 control unit 121, 122-1 to 122-3 CPU
130 Memory Area 131, 132-1 to 132-3 Programmable ROM
141, 142-1 to 142-3 RAM
152-1 to 152-3 Wired interface unit 162 Wired network 201, 202-1 to 202-3 PC
301, 302 Boot loader program 303 System program 400 Destination MAC address 410 Source MAC address 420 Type 430 Data 440 FCS

Claims (10)

情報処理装置であって、
当該情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する第1のインタフェース部と、
前記第1のインタフェース部が取得した更新データを実行し、該更新データを実行した結果が正常である場合、前記更新データを、当該情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込み、当該情報処理装置を再起動させる制御部とを有する情報処理装置。
An information processing apparatus,
A first interface unit for acquiring update data necessary for updating an operation program for operating the information processing apparatus;
A memory for executing update data acquired by the first interface unit and causing the update data to be executed after the information processing apparatus is restarted when a result of executing the update data is normal An information processing apparatus having a control unit that writes to an area and restarts the information processing apparatus.
請求項1に記載の情報処理装置において、
前記制御部は、当該情報処理装置を起動した際、前記メモリエリアに格納されている起動プログラムを実行し、該起動プログラムの手順に従って、前記第1のインタフェース部に対して、前記更新データの取得を指示し、前記取得した更新データを実行し、該更新データを実行した結果が正常である場合、前記更新データを前記メモリエリアに書き込み、当該情報処理装置を再起動させる情報処理装置。
The information processing apparatus according to claim 1,
When the information processing apparatus is activated, the control unit executes the activation program stored in the memory area, and acquires the update data from the first interface unit according to the procedure of the activation program. An information processing apparatus that executes the acquired update data and writes the update data to the memory area and restarts the information processing apparatus when the result of executing the update data is normal.
請求項2に記載の情報処理装置において、
前記第1のインタフェース部は、前記制御部が実行した結果を出力し、
前記制御部は、前記第1のインタフェース部が出力した結果に対して該結果が正常である旨を示す第1の入力を前記第1のインタフェース部が受け付けた場合、前記更新データを前記メモリエリアに書き込む情報処理装置。
The information processing apparatus according to claim 2,
The first interface unit outputs a result executed by the control unit,
When the first interface unit receives a first input indicating that the result is normal with respect to a result output from the first interface unit, the control unit stores the update data in the memory area Information processing device to write to.
請求項3に記載の情報処理装置において、
前記制御部は、前記起動プログラムの手順に従って、前記第1のインタフェース部に対して、前記制御部が実行した結果の出力を指示する情報処理装置。
The information processing apparatus according to claim 3.
The information processing apparatus, wherein the control unit instructs the first interface unit to output a result executed by the control unit in accordance with a procedure of the activation program.
請求項2から4のいずれか1項に記載の情報処理装置において、
前記制御部は、前記起動プログラムを実行した後、前記動作プログラムの更新要求を示す第2の入力を前記第1のインタフェース部が受け付けた場合、前記第1のインタフェース部に対して、前記更新データの取得を指示する情報処理装置。
The information processing apparatus according to any one of claims 2 to 4,
When the first interface unit receives a second input indicating an update request for the operation program after executing the startup program, the control unit transmits the update data to the first interface unit. Information processing apparatus instructing acquisition.
請求項2から5のいずれか1項に記載の情報処理装置において、
前記制御部の指示に基づいて所定の通知信号を送信する第2のインタフェース部を有し、
前記制御部は、前記更新データを実行した結果が正常である場合、前記通知信号を送信するように前記第2のインタフェース部へ指示し、前記第2のインタフェース部が、前記通知信号に対する応答信号を受信した場合、該応答信号を送信してきた装置に対して、前記更新データを送信するように第2のインタフェース部へ指示し、
前記第2のインタフェース部は、前記制御部の指示に基づいて前記更新データを送信する情報処理装置。
The information processing apparatus according to any one of claims 2 to 5,
A second interface unit that transmits a predetermined notification signal based on an instruction from the control unit;
The control unit instructs the second interface unit to transmit the notification signal when a result of executing the update data is normal, and the second interface unit responds to the notification signal. Is received, the second interface unit is instructed to transmit the update data to the device that has transmitted the response signal.
The information processing apparatus, wherein the second interface unit transmits the update data based on an instruction from the control unit.
請求項6に記載の情報処理装置において、
前記第2のインタフェース部は、前記通知信号を送信してから所定の時間が経過しても前記応答信号を受信しない場合、該通知信号を再送する情報処理装置。
The information processing apparatus according to claim 6,
The information processing apparatus that retransmits the notification signal when the second interface unit does not receive the response signal even if a predetermined time has elapsed after transmitting the notification signal.
請求項1から7のいずれか1項に記載の情報処理装置において、
前記メモリエリアは不揮発性メモリの領域である情報処理装置。
The information processing apparatus according to any one of claims 1 to 7,
The information processing apparatus, wherein the memory area is a non-volatile memory area.
情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する処理と、
前記取得した更新データを実行する処理と、
前記実行した結果が正常である場合、前記更新データを、前記情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込む処理と、
前記情報処理装置を再起動させる処理とを行う動作プログラムの更新方法。
Processing for obtaining update data necessary for updating an operation program for operating the information processing apparatus;
Processing for executing the acquired update data;
When the executed result is normal, the update data is written in a memory area for executing the operation program after restarting the information processing apparatus;
A method for updating an operation program for performing a process of restarting the information processing apparatus.
コンピュータに、
情報処理装置を動作させるための動作プログラムの更新に必要な更新データを取得する手順と、
前記取得した更新データを実行する手順と、
前記実行した結果が正常である場合、前記更新データを、前記情報処理装置の再起動後に前記動作プログラムを実行させるためのメモリエリアに書き込む手順と、
前記情報処理装置を再起動させる手順とを実行させるためのプログラム。
On the computer,
A procedure for acquiring update data necessary for updating an operation program for operating the information processing apparatus;
A procedure for executing the acquired update data;
When the executed result is normal, the update data is written in a memory area for executing the operation program after the information processing apparatus is restarted;
A program for executing a procedure for restarting the information processing apparatus.
JP2016249301A 2016-12-22 2016-12-22 Information processing apparatus, updating method of operation program and program Pending JP2018106251A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016249301A JP2018106251A (en) 2016-12-22 2016-12-22 Information processing apparatus, updating method of operation program and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016249301A JP2018106251A (en) 2016-12-22 2016-12-22 Information processing apparatus, updating method of operation program and program

Publications (1)

Publication Number Publication Date
JP2018106251A true JP2018106251A (en) 2018-07-05

Family

ID=62787940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016249301A Pending JP2018106251A (en) 2016-12-22 2016-12-22 Information processing apparatus, updating method of operation program and program

Country Status (1)

Country Link
JP (1) JP2018106251A (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0433143U (en) * 1990-07-13 1992-03-18
JPH10283171A (en) * 1997-04-02 1998-10-23 Seiko Epson Corp Information processor and control method therefor
US20030110483A1 (en) * 1998-08-28 2003-06-12 Kenichiro Ono Data processor, program updating method and storage medium
JP2008146250A (en) * 2006-12-07 2008-06-26 Canon Inc Update system, update method, and program
US20080301676A1 (en) * 2007-06-04 2008-12-04 International Business Machines Corporation Method for Delivering, Testing, and Applying Software Patches or Other Changes to a Conventionally Installed Application in Virtual Application Containers
JP2010058444A (en) * 2008-09-05 2010-03-18 Riso Kagaku Corp Stencil printing device
JP2012230474A (en) * 2011-04-25 2012-11-22 Japan Radio Co Ltd Program update system, and program update method
JP2016197380A (en) * 2015-04-06 2016-11-24 キヤノン株式会社 System and control method of the same, and program

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0433143U (en) * 1990-07-13 1992-03-18
JPH10283171A (en) * 1997-04-02 1998-10-23 Seiko Epson Corp Information processor and control method therefor
US20030110483A1 (en) * 1998-08-28 2003-06-12 Kenichiro Ono Data processor, program updating method and storage medium
JP2008146250A (en) * 2006-12-07 2008-06-26 Canon Inc Update system, update method, and program
US20080301676A1 (en) * 2007-06-04 2008-12-04 International Business Machines Corporation Method for Delivering, Testing, and Applying Software Patches or Other Changes to a Conventionally Installed Application in Virtual Application Containers
JP2010058444A (en) * 2008-09-05 2010-03-18 Riso Kagaku Corp Stencil printing device
JP2012230474A (en) * 2011-04-25 2012-11-22 Japan Radio Co Ltd Program update system, and program update method
JP2016197380A (en) * 2015-04-06 2016-11-24 キヤノン株式会社 System and control method of the same, and program

Similar Documents

Publication Publication Date Title
JP4900760B2 (en) OS image deployment machine and method
US8539471B2 (en) Updating firmware of an electronic device
JP5575338B2 (en) Information processing apparatus, information processing method, and computer program
JP5564956B2 (en) Information processing apparatus and firmware update method for information processing apparatus
JP4850949B2 (en) Thin client terminal device, operation program and method thereof, and thin client system
TWI722269B (en) Firmware updating method and electronic device using the same
EP3367206B1 (en) Server management method and server
JP6070360B2 (en) Information processing apparatus and processing method thereof
TWI743395B (en) The method for updating firmware via remote utility、computer system and non-transitory computer-readable medium
CN111104147A (en) BMC upgrading method, device, terminal and storage medium
JP2019139373A (en) Information processing system and information processor and bios update method of information processor and bios update program of information processor
JP5499950B2 (en) Control apparatus, information processing apparatus, control program, and control method
JP6177461B2 (en) Surveillance recorder and starting method thereof
JP6515462B2 (en) INFORMATION PROCESSING DEVICE, SETTING METHOD FOR INFORMATION PROCESSING DEVICE, AND SETTING PROGRAM
WO2017173924A1 (en) Method and device for switching between file systems
JP2018106251A (en) Information processing apparatus, updating method of operation program and program
TWI782352B (en) Method for automatically recovering firmware settings of baseboard management controller
JP2006146709A (en) Update control program, update control method and update controller
WO2016136014A1 (en) Monitoring recorder
CN109684134B (en) Method and server for rapidly deploying firmware settings among multiple devices
WO2004003742A1 (en) Information processing unit and method, recording medium, and program
JP4900805B2 (en) OS image deployment machine and method
JP2017062537A (en) Information processing apparatus, control method of information processing apparatus, and program
JP5895609B2 (en) Information processing apparatus, image forming apparatus, and program
US20210034376A1 (en) Boot personality for network device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190205

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20190730