JP4370136B2 - Information processing apparatus and management apparatus - Google Patents

Information processing apparatus and management apparatus Download PDF

Info

Publication number
JP4370136B2
JP4370136B2 JP2003322414A JP2003322414A JP4370136B2 JP 4370136 B2 JP4370136 B2 JP 4370136B2 JP 2003322414 A JP2003322414 A JP 2003322414A JP 2003322414 A JP2003322414 A JP 2003322414A JP 4370136 B2 JP4370136 B2 JP 4370136B2
Authority
JP
Japan
Prior art keywords
subprogram
information
storage
update
original
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003322414A
Other languages
Japanese (ja)
Other versions
JP2005092379A (en
Inventor
英俊 舩倉
健 三部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2003322414A priority Critical patent/JP4370136B2/en
Publication of JP2005092379A publication Critical patent/JP2005092379A/en
Application granted granted Critical
Publication of JP4370136B2 publication Critical patent/JP4370136B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、サブプログラムを置換・追加することによりオリジナルプログラムを更新する情報処理装置及び当該情報処理装置を管理する管理装置に関する。   The present invention relates to an information processing apparatus that updates an original program by replacing and adding subprograms, and a management apparatus that manages the information processing apparatus.

本発明に関連する従来技術として特開平4−137136号公報に記載の「プログラム記憶方式」と特開平5−66946号公報に記載の「プログラムの保守方式」が存在する。   As prior arts related to the present invention, there are a "program storage system" described in Japanese Patent Laid-Open No. 4-137136 and a "program maintenance system" described in Japanese Patent Laid-Open No. 5-66946.

特開平4−137136号公報に記載の「プログラム記憶方式」では、情報処理装置がROM(Read Only Memory)に格納されているオリジナルプログラムをRAM(Random Access Memory)に転送する際に、初期設定された転送先を変更する動作を行うことができず、EEPROM(Electrically Erasable Programmable Read−Only Memory)に格納されている上書き修正データを読み出し、上書き修正データから書込みアドレス、書き込みデータを抽出し、書込みアドレスの示す領域に書き込みデータを書き込んでオリジナルプログラムの更新を行っている。   In the “program storage system” described in Japanese Patent Laid-Open No. 4-137136, the information processing apparatus is initialized when transferring an original program stored in a ROM (Read Only Memory) to a RAM (Random Access Memory). The operation to change the transfer destination cannot be performed, the overwrite correction data stored in the EEPROM (Electrically Erasable Programmable Read-Only Memory) is read, the write address and the write data are extracted from the overwrite correction data, and the write address The original program is updated by writing the write data in the area indicated by.

このため、当該従来技術では、プログラム修正を行うためにバイナリ修正をする必要があるという問題点がある。また、効率、正確性および管理性が高いソースコードを修正することで実行プログラムを修正できないという問題点がある。従来の方法ではプログラムを修正するには、バイナリーコードを修正する必要がある。なぜならばサイズ変更・分岐先の修正に対応できず、ソースコードによる変更をしてもサブプログラム置き換え・追加ではプログラム修正はできないからである。また、プログラム修正に時間がかかったり、管理が複雑になるという問題点がある。   For this reason, in the prior art, there is a problem that binary correction is necessary to correct the program. In addition, there is a problem that the execution program cannot be corrected by correcting the source code having high efficiency, accuracy and manageability. In the conventional method, the binary code needs to be corrected in order to correct the program. This is because it cannot cope with the size change / branch destination modification, and the program cannot be modified by subprogram replacement / addition even if the source code is modified. In addition, there are problems that it takes time to modify the program and management becomes complicated.

また、特開平5−66946号公報に記載の「プログラムの保守方式」では、情報処理装置がROMに格納されている全てのオリジナルサブプログラム(オリジナルプログラムを構成するサブプログラム)をRAMに転送するとともに、オリジナルプログラムを更新するための更新サブプログラムをRAMに転送する。そして、転送されたオリジナルサブプログラムと更新サブプログラムのうちのいずれを実行するかを判定してプログラムを実行する。   In the “program maintenance method” described in Japanese Patent Laid-Open No. 5-66946, the information processing apparatus transfers all original subprograms (subprograms constituting the original program) stored in the ROM to the RAM. Then, an update subprogram for updating the original program is transferred to the RAM. Then, it is determined which one of the transferred original subprogram and update subprogram is to be executed, and the program is executed.

このように、当該従来技術では、更新サブプログラムの実行により実行されることがないオリジナルサブプログラムもRAMに転送されるため、オリジナルサブプログラム及び更新サブプログラムの2面持ちの状態になり、更新サブプログラムが増えると必要なRAM容量が増加するという問題がある。   As described above, in the related art, since the original subprogram that is not executed by the execution of the update subprogram is also transferred to the RAM, the original subprogram and the update subprogram have two planes, and the update subprogram There is a problem that the required RAM capacity increases as the number increases.

更に、特開平5−66946号公報に記載の「プログラムの保守方式」では、情報処理装置を管理する管理装置が開示されている。   Furthermore, the “program maintenance method” described in Japanese Patent Application Laid-Open No. 5-66946 discloses a management apparatus that manages information processing apparatuses.

管理装置では、オペレータが修正に必要な修正データを作成し、登録する。ここで、修正データとは情報処理装置のEEPROMに格納する更新サブプログラム群および管理情報と、EEPROM書換えプログラムを示す。   In the management device, the operator creates and registers correction data necessary for correction. Here, the correction data indicates an update subprogram group and management information stored in the EEPROM of the information processing apparatus, and an EEPROM rewriting program.

一方、情報処理装置では、保有しているサブプログラムのプログラムバージョンを示しバージョン情報を管理装置に送信し、管理装置では、受信したバージョン情報が最新バージョンでなければ、登録した修正データを情報処理装置に送信する。   On the other hand, the information processing device transmits the version information indicating the program version of the stored subprogram to the management device. If the received version information is not the latest version, the management device transmits the registered correction data to the information processing device. Send to.

情報処理装置では、管理装置から受信した修正データをRAMに書込む。   In the information processing apparatus, the correction data received from the management apparatus is written into the RAM.

また、管理装置では、情報処理装置のEEPROMの書換えを要求するEEPROM書換え要求コマンドを発行する。   The management apparatus issues an EEPROM rewrite request command for requesting rewriting of the EEPROM of the information processing apparatus.

情報処理装置では、管理装置からのEEPROM書換え要求コマンドに基づき、EEPROM書換えプログラムが実行されて、RAM上のデータでEEPROMを書換えてオリジナルプログラムの更新を行う。   In the information processing apparatus, an EEPROM rewrite program is executed based on an EEPROM rewrite request command from the management apparatus, and the original program is updated by rewriting the EEPROM with data on the RAM.

EEPROMはフラッシュメモリのようにセクタ単位といった部分的な消去をすることができない。したがって全領域を消去したあとに全領域を再書込みする必要がある。   The EEPROM cannot be partially erased in units of sectors like a flash memory. Therefore, it is necessary to rewrite the entire area after erasing the entire area.

また、オペレータがEEPROM書換えプログラムを作成しないとEEPROM書換えができないという問題点がある。   In addition, there is a problem that the EEPROM cannot be rewritten unless the operator creates an EEPROM rewriting program.

情報処理装置はプログラムバージョンのみ保持しており、それを管理装置に送信する。管理装置は機種に関する情報を受信しない。このため、プログラム構成が異なる複数種類の情報処理装置が存在する場合、管理装置は情報処理装置の種類を判別することができない。これにより、情報処理装置の種類と同じ数の管理装置が必要になるという問題がある。
特開平4−137136号公報 特開平5−66946号公報
The information processing apparatus holds only the program version and transmits it to the management apparatus. The management device does not receive information about the model. For this reason, when there are a plurality of types of information processing apparatuses having different program configurations, the management apparatus cannot determine the type of the information processing apparatus. As a result, there is a problem that the same number of management devices as the types of information processing devices are required.
JP-A-4-137136 JP-A-5-66946

本発明は、以上に示す従来技術の問題点を解決することを主な目的としており、ソースコード変更によるプログラム修正を可能にし、RAM容量の抑制を可能にし、修正が必要な部分だけの書換え保存を可能にし、書換え用プログラムを生成・送付することなく更新サブプログラムの書換えができる情報処理装置及び管理装置を実現することを目的とする。   The main object of the present invention is to solve the above-described problems of the prior art, enabling program correction by changing source code, enabling RAM capacity to be reduced, and rewriting and storing only the portions that need correction. It is an object of the present invention to realize an information processing apparatus and a management apparatus that can rewrite an update subprogram without generating and sending a rewriting program.

本発明に係る情報処理装置は、
所定のオリジナルプログラムを構成する複数のオリジナルサブプログラムとオリジナルプログラムを更新するための更新サブプログラムとを組み合わせてサブプログラム単位でのプログラムの更新が可能な情報処理装置であって、
主記憶装置と、
複数のオリジナルサブプログラムを格納する読み出し専用のオリジナルサブプログラム格納部と、
更新サブプログラムを少なくとも一つ以上格納する更新サブプログラム格納部と、
複数のオリジナルサブプログラムのうち更新サブプログラムの実行により実行が不要となるオリジナルサブプログラムと更新サブプログラムとともに実行すべきオリジナルサブプログラムとを判別し、更新サブプログラムとともに実行すべき実行対象オリジナルサブプログラムを前記オリジナルサブプログラム格納部から主記憶装置に転送し、更新サブプログラムを前記更新サブプログラム格納部から主記憶装置に転送するサブプログラム転送部と、
前記サブプログラム転送部により主記憶装置に転送された実行対象オリジナルサブプログラム及び更新サブプログラムについて、サブプログラム相互間の対応づけを調整するサブプログラム調整部と、
前記サブプログラム調整部によりサブプログラム相互間の対応づけが調整された後の実行対象オリジナルサブプログラムと更新サブプログラムとを実行するプログラム実行部とを有することを特徴とする。
An information processing apparatus according to the present invention includes:
An information processing apparatus capable of updating a program in units of subprograms by combining a plurality of original subprograms constituting a predetermined original program and an update subprogram for updating the original program,
A main storage device;
A read-only original subprogram storage for storing a plurality of original subprograms;
An update subprogram storage for storing at least one update subprogram;
The original subprogram that is not required to be executed by executing the update subprogram from among the plurality of original subprograms and the original subprogram to be executed together with the update subprogram are determined, and the original subprogram to be executed to be executed together with the update subprogram is determined. A subprogram transfer unit for transferring from the original subprogram storage unit to the main storage device, and transferring an update subprogram from the update subprogram storage unit to the main storage device;
A subprogram adjustment unit that adjusts the correspondence between the subprograms for the execution target original subprogram and the update subprogram transferred to the main storage device by the subprogram transfer unit;
A program execution unit that executes the original subprogram to be executed and the updated subprogram after the association between the subprograms is adjusted by the subprogram adjustment unit.

このように本発明によれば、サブプログラム単位での置換可能であり、オリジナルサブプログラムの再配置が可能であり、また、サブプログラム間の対応づけの調整が可能であるため、ソースコード修正による実行プログラムの修正ができる。   Thus, according to the present invention, sub-program units can be replaced, original sub-programs can be rearranged, and correspondence between sub-programs can be adjusted. The execution program can be modified.

また、オリジナルサブプログラムの転送において更新サブプログラムとともに実行すべき実行対象オリジナルサブプログラムのみを転送するため、主記憶装置でオリジナルサブプログラムと更新サブプログラムとを2面持ちする必要がなく、主記憶装置の記憶領域を効率的に使用することができる。   In addition, since only the execution-target original subprogram to be executed together with the update subprogram is transferred in the transfer of the original subprogram, it is not necessary to have two sides of the original subprogram and the update subprogram in the main storage device. The storage area can be used efficiently.

実施の形態1.
図1は、本実施の形態に係る情報処理装置の構成例を示す図である。
Embodiment 1 FIG.
FIG. 1 is a diagram illustrating a configuration example of the information processing apparatus according to the present embodiment.

本実施の形態に係る情報処理装置1は、CPU(Central Processing Unit)11、リセット手段12、ROM(Read Only
Memory)13、フラッシュメモリ14、RAM(Random Access Memory)15から構成される。
The information processing apparatus 1 according to the present embodiment includes a CPU (Central Processing Unit) 11, a reset unit 12, and a ROM (Read Only).
Memory) 13, flash memory 14, and RAM (Random Access Memory) 15.

ROM13には、プログラムであるH/W(ハードウェア)初期化部131、オリジナルサブプログラム転送部132、更新サブプログラム転送部133、サブプログラム調整部134、プログラム実行部135が格納され、更に、所定のオリジナルプログラムを構成するオリジナルサブプログラムa〜dがオリジナルサブプログラム格納領域136に格納されている。オリジナルサブプログラムは、初版バージョンとなるサブプログラムである。   The ROM 13 stores an H / W (hardware) initialization unit 131, an original subprogram transfer unit 132, an update subprogram transfer unit 133, a subprogram adjustment unit 134, and a program execution unit 135, which are programs. Original subprograms a to d constituting the original program are stored in the original subprogram storage area 136. The original subprogram is a subprogram that is the first version.

オリジナルサブプログラムa〜dはROM13に格納されているため、オリジナルプログラムを更新するためには、いずれかのオリジナルサブプログラムを後述する更新サブプログラムに置き換えるか、又は、更新サブプログラムを追加することが必要である。更新サブプログラムは、第2版以降のバージョンとなるサブプログラムである。   Since the original subprograms a to d are stored in the ROM 13, in order to update the original program, one of the original subprograms may be replaced with an update subprogram described later, or an update subprogram may be added. is necessary. The update subprogram is a subprogram that becomes a version after the second edition.

H/W初期化部131は、情報処理装置1の起動時に情報処理装置1に搭載されているハードウェア(H/W)の初期化を行う。   The H / W initialization unit 131 initializes hardware (H / W) installed in the information processing apparatus 1 when the information processing apparatus 1 is activated.

オリジナルサブプログラム転送部132は、プログラムの実行時に、フラッシュメモリ14に格納されているオリジナルサブプログラム格納情報1411を参照して、実行対象となるオリジナルサブプログラムを主記憶装置であるRAM15の実行プログラム格納領域151に転送する。実行対象となるオリジナルサブプログラムを実行対象オリジナルサブプログラムという。また、オリジナルサブプログラム格納情報1411の詳細は後述する。   The original subprogram transfer unit 132 refers to the original subprogram storage information 1411 stored in the flash memory 14 when executing the program, and stores the original subprogram to be executed in the execution program of the RAM 15 as the main storage device. Transfer to area 151. The original subprogram to be executed is called the execution target original subprogram. Details of the original subprogram storage information 1411 will be described later.

更新サブプログラム転送部133は、プログラムの実行時に、フラッシュメモリ14に格納されている更新サブプログラム格納情報1412を参照して、フラッシュメモリ14に格納されている更新サブプログラムを主記憶装置であるRAM15の実行プログラム格納領域151に転送する。また、更新サブプログラム格納情報1412の詳細は後述する。   The update subprogram transfer unit 133 refers to the update subprogram storage information 1412 stored in the flash memory 14 when the program is executed, and stores the update subprogram stored in the flash memory 14 in the RAM 15 as a main storage device. To the execution program storage area 151. Details of the updated subprogram storage information 1412 will be described later.

サブプログラム調整部134は、実行プログラム生成時に、フラッシュメモリ14に格納されている分岐先調整情報1413を参照して、RAM15に転送された実行対象オリジナルサブプログラムについて分岐処理の分岐先の対応づけの調整を行う。また、分岐先調整情報1413の詳細は後述する。なお、サブプログラム調整部134により分岐先の対応づけの調整が行われる前の実行対象オリジナルサブプログラム及び更新サブプログラムから構成されるプログラムを仮実行プログラムと呼び、サブプログラム調整部134により分岐先の対応づけの調整が行われた後の実行対象オリジナルサブプログラム及び更新サブプログラムから構成されるプログラムを実行プログラムと呼ぶ。   The subprogram adjustment unit 134 refers to the branch destination adjustment information 1413 stored in the flash memory 14 when the execution program is generated, and associates the branch destination of the branch process with respect to the execution target original subprogram transferred to the RAM 15. Make adjustments. Details of the branch destination adjustment information 1413 will be described later. Note that a program composed of an execution target original subprogram and an updated subprogram before adjustment of branch destination correspondence is performed by the subprogram adjustment unit 134 is referred to as a temporary execution program. A program composed of the execution target original subprogram and the updated subprogram after the adjustment of the correspondence is referred to as an execution program.

プログラム実行部135は、サブプログラム調整部134により分岐先の対応づけの調整が行われた後の実行プログラムを実行するプログラム実行部である。   The program execution unit 135 is a program execution unit that executes the execution program after the branch destination association is adjusted by the subprogram adjustment unit 134.

フラッシュメモリ14には、修正テーブル格納領域141及び更新サブプログラム格納領域142が存在する。   The flash memory 14 has a correction table storage area 141 and an update subprogram storage area 142.

図1では、更新サブプログラム格納領域142には、更新サブプログラムc、eが格納されている。   In FIG. 1, the update subprogram storage area 142 stores update subprograms c and e.

更新サブプログラムcは、オリジナルサブプログラムcを置換えることによりオリジナルプログラムを更新する置換サブプログラムであり、更新サブプログラムeはオリジナルプログラムに追加することによりオリジナルプログラムを更新する追加サブプログラムである。   The update subprogram c is a replacement subprogram that updates the original program by replacing the original subprogram c, and the update subprogram e is an additional subprogram that updates the original program by adding to the original program.

本実施の形態では、オリジナルサブプログラムa、b、dには対応する更新サブプログラムが存在しないためこれらのオリジナルサブプログラムが実行対象となり、オリジナルサブプログラムcは、実行対象とならず、代わって更新サブプログラムcが実行対象となり、また、更新サブプログラムeがオリジナルプログラムに追加される形で実行対象となる。   In this embodiment, since there is no corresponding update subprogram in the original subprograms a, b, and d, these original subprograms are the execution targets, and the original subprogram c is not the execution target and is updated instead. The subprogram c becomes the execution target, and the update subprogram e becomes the execution target in the form of being added to the original program.

修正テーブル格納領域141には、オリジナルサブプログラム格納情報1411、更新サブプログラム格納情報1412、分岐先調整情報1413が格納されている。修正テーブル格納領域141に格納されているオリジナルサブプログラム格納情報1411、更新サブプログラム格納情報1412、分岐先調整情報1413を修正テーブルと呼ぶ。   The correction table storage area 141 stores original subprogram storage information 1411, updated subprogram storage information 1412, and branch destination adjustment information 1413. The original subprogram storage information 1411, the updated subprogram storage information 1412, and the branch destination adjustment information 1413 stored in the correction table storage area 141 are referred to as a correction table.

オリジナルサブプログラム格納情報1411は、実行対象オリジナルサブプログラムを特定するとともに、実行対象オリジナルサブプログラムのそれぞれについて、ROM13のオリジナルサブプログラム格納領域136内のそれぞれの格納領域と、RAM15の実行プログラム格納領域151内のそれぞれの格納領域とを示す情報である。図2にオリジナルサブプログラム格納情報1411の例を示す。   The original subprogram storage information 1411 specifies an execution target original subprogram, and for each execution target original subprogram, a storage area in the original subprogram storage area 136 of the ROM 13 and an execution program storage area 151 of the RAM 15. It is the information which shows each storage area in. FIG. 2 shows an example of the original subprogram storage information 1411.

図2の例では、サブプログラム名a、b、dではオリジナルサブプログラムが実行対象となることを示し、また、それぞれのオリジナルサブプログラムについてRAM格納アドレス、ROM格納アドレス、プログラムサイズを示してそれぞれのオリジナルサブプログラムの実行プログラム格納領域151における格納領域、オリジナルサブプログラム格納領域136における格納領域を表示している。   In the example of FIG. 2, the subprogram names a, b, and d indicate that the original subprogram is to be executed, and the RAM storage address, ROM storage address, and program size are shown for each original subprogram. A storage area in the execution program storage area 151 of the original subprogram and a storage area in the original subprogram storage area 136 are displayed.

オリジナルサブプログラム転送部132は、プログラムの実行の際に、このオリジナルサブプログラム格納情報1411を参照して実行対象オリジナルサブプログラムを判別するとともに、オリジナルサブプログラム格納情報1411の内容に従って、実行対象オリジナルサブプログラムのそれぞれをそれぞれのROM格納アドレスからそれぞれのRAM格納アドレスに転送する。   When executing the program, the original subprogram transfer unit 132 refers to the original subprogram storage information 1411 to determine the execution target original subprogram, and in accordance with the contents of the original subprogram storage information 1411, Each program is transferred from its ROM storage address to its RAM storage address.

更新サブプログラム格納情報1412は、更新サブプログラム格納領域142に格納されている更新サブプログラムを特定するとともに、更新サブプログラムのそれぞれについて、フラッシュメモリ14の更新サブプログラム格納領域142内のそれぞれの格納領域と、RAM15の実行プログラム格納領域151内のそれぞれの格納領域とを示す情報である。図3に更新サブプログラム格納情報1412の例を示す。   The update subprogram storage information 1412 identifies the update subprogram stored in the update subprogram storage area 142, and each storage area in the update subprogram storage area 142 of the flash memory 14 for each update subprogram. And each storage area in the execution program storage area 151 of the RAM 15. FIG. 3 shows an example of the updated subprogram storage information 1412.

図3の例では、サブプログラム名c、eについては更新サブプログラムが更新サブプログラム格納領域142に格納されていることを示し、また、それぞれの更新サブプログラムについてRAM格納アドレス、フラッシュメモリ格納アドレス、プログラムサイズを示してそれぞれの更新サブプログラムの実行プログラム格納領域151における格納領域、更新サブプログラム格納領域142における格納領域を表示している。   In the example of FIG. 3, the subprogram names c and e indicate that the update subprogram is stored in the update subprogram storage area 142, and the RAM storage address, flash memory storage address, The program size is shown, and the storage area in the execution program storage area 151 and the storage area in the update subprogram storage area 142 of each update subprogram are displayed.

更新サブプログラム転送部133は、プログラムの実行の際に、更新サブプログラム格納情報1412の内容に従って、更新サブプログラムのそれぞれをそれぞれのフラッシュメモリ格納アドレスからそれぞれのRAM格納アドレスに転送する。   The update subprogram transfer unit 133 transfers each update subprogram from each flash memory storage address to each RAM storage address according to the content of the update subprogram storage information 1412 when executing the program.

分岐先調整情報1413は、実行対象オリジナルサブプログラム及び更新サブプログラムのいずれかにおける分岐先の対応づけの調整のためのデータを示す。図4に分岐先調整情報1413の例を示す。   The branch destination adjustment information 1413 indicates data for adjusting the correspondence of the branch destination in either the execution target original subprogram or the update subprogram. FIG. 4 shows an example of the branch destination adjustment information 1413.

図4では、サブプログラム名dのサブプログラムが分岐先の対応づけの調整対象となっていることを示し、また、分岐先の調整のために、オフセットアドレス及びデータが示されている。   FIG. 4 shows that the subprogram of the subprogram name d is an adjustment target of the branch destination correspondence, and an offset address and data are shown for adjusting the branch destination.

サブプログラム調整部134は、実行対象オリジナルサブプログラム、更新サブプログラムがRAM15の実行プログラム格納領域151に転送された後に、分岐先調整情報1413に従って、対象となるサブプログラムについて分岐先の対応づけの調整を行う。   After the execution target original subprogram and the updated subprogram are transferred to the execution program storage area 151 of the RAM 15, the subprogram adjustment unit 134 adjusts the branch destination correspondence for the target subprogram according to the branch destination adjustment information 1413. I do.

RAM15には、実行プログラム格納領域151が存在する。   The RAM 15 has an execution program storage area 151.

実行プログラム格納領域151は、オリジナルサブプログラム転送部132により転送された実行対象オリジナルサブプログラム及び更新サブプログラム転送部133により転送された更新サブプログラムが格納される。   The execution program storage area 151 stores the execution target original subprogram transferred by the original subprogram transfer unit 132 and the update subprogram transferred by the update subprogram transfer unit 133.

前述したように、図1では、オリジナルサブプログラムa、b、d、更新サブプログラムc、eが実行プログラム格納領域151に格納されることになる。   As described above, in FIG. 1, the original subprograms a, b, and d and the updated subprograms c and e are stored in the execution program storage area 151.

なお、図1に示すように、ROM13は、オリジナルサブプログラムを格納しており、オリジナルサブプログラム格納部の例に相当し、フラッシュメモリ14は更新サブプログラムを格納しており、更新サブプログラム格納部の例に相当する。   As shown in FIG. 1, the ROM 13 stores the original subprogram and corresponds to an example of the original subprogram storage unit. The flash memory 14 stores the update subprogram, and the update subprogram storage unit. It corresponds to the example.

また、フラッシュメモリ14は、オリジナルサブプログラム格納情報1411、更新サブプログラム格納情報1412、分岐先調整情報1413を記憶しており、オリジナルサブプログラム格納情報記憶部、更新サブプログラム格納情報記憶部、分岐先調整情報記憶部の例に相当する。   The flash memory 14 stores original subprogram storage information 1411, updated subprogram storage information 1412, and branch destination adjustment information 1413. The original subprogram storage information storage unit, the updated subprogram storage information storage unit, the branch destination This corresponds to an example of the adjustment information storage unit.

また、オリジナルサブプログラム転送部132及び更新サブプログラム転送部133を合わせたものが、サブプログラム転送部の例に相当する。   A combination of the original subprogram transfer unit 132 and the updated subprogram transfer unit 133 corresponds to an example of a subprogram transfer unit.

次に、図5を参照して、本実施の形態に係る情報処理装置1の動作を説明する。   Next, the operation of the information processing apparatus 1 according to the present embodiment will be described with reference to FIG.

まず、リセット手段12がリセットを解除する(S301)。   First, the reset unit 12 cancels the reset (S301).

次に、H/W初期化部131がハードウェア(H/W)を初期化する(S302)。   Next, the H / W initialization unit 131 initializes hardware (H / W) (S302).

次に、オリジナルサブプログラム転送部132が、オリジナルサブプログラム格納情報1411から1エントリ読出し、読み出した情報に基づきオリジナルサブプログラム格納領域136に格納されているオリジナルサブプログラムをRAM15の実行プログラム格納領域151に転送し格納する。ここでは、オリジナルサブプログラム格納情報1411に記載されているROM格納アドレスからオリジナルサブプログラムを読み出すとともにオリジナルサブプログラム格納情報1411に記載されているRAM格納アドレスに転送する(S303〜S305)。   Next, the original subprogram transfer unit 132 reads one entry from the original subprogram storage information 1411, and stores the original subprogram stored in the original subprogram storage area 136 in the execution program storage area 151 of the RAM 15 based on the read information. Transfer and store. Here, the original subprogram is read from the ROM storage address described in the original subprogram storage information 1411 and transferred to the RAM storage address described in the original subprogram storage information 1411 (S303 to S305).

オリジナルサブプログラム転送部132は、オリジナルサブプログラム格納情報1411において終了コードを検出するまでS303〜S305の処理を繰り返し、終了コードを検出するとオリジナルサブプログラム格納情報1411にエントリは存在しないと判定し、オリジナルサブプログラム転送処理を終了する(S304でYesの場合)。   The original subprogram transfer unit 132 repeats the processing of S303 to S305 until the end code is detected in the original subprogram storage information 1411. When the end code is detected, the original subprogram transfer unit 132 determines that there is no entry in the original subprogram storage information 1411, and The subprogram transfer processing is terminated (Yes in S304).

オリジナルサブプログラム格納情報1411が図2の場合、オリジナルサブプログラム転送部132は、オリジナルサブプログラムa、b、dをRAM15の実行プログラム格納領域151に転送する。   When the original subprogram storage information 1411 is shown in FIG. 2, the original subprogram transfer unit 132 transfers the original subprograms a, b, and d to the execution program storage area 151 of the RAM 15.

次に、更新サブプログラム転送部133が、更新サブプログラム格納情報1412から1エントリ読出し、読み出した情報に基づき更新サブプログラム格納領域142に格納されている更新サブプログラムをRAM15の実行プログラム格納領域151に転送し格納する。ここでは、オリジナルサブプログラム格納情報1411に記載されているフラッシュメモリ格納アドレスから更新サブプログラムを読み出すとともにオリジナルサブプログラム格納情報1411に記載されているRAM格納アドレスに転送する(S306〜S308)。   Next, the update subprogram transfer unit 133 reads one entry from the update subprogram storage information 1412 and stores the update subprogram stored in the update subprogram storage area 142 based on the read information in the execution program storage area 151 of the RAM 15. Transfer and store. Here, the update subprogram is read from the flash memory storage address described in the original subprogram storage information 1411 and transferred to the RAM storage address described in the original subprogram storage information 1411 (S306 to S308).

オリジナルサブプログラム転送部132は、オリジナルサブプログラム格納情報1411において終了コードを検出するまでS306〜S308の処理を繰り返し、終了コードを検出するとオリジナルサブプログラム格納情報1411にエントリは存在しないと判定し、更新サブプログラム転送処理を終了する(S307でYesの場合)。   The original subprogram transfer unit 132 repeats the processing of S306 to S308 until the end code is detected in the original subprogram storage information 1411. When the end code is detected, the original subprogram transfer unit 132 determines that there is no entry in the original subprogram storage information 1411 and updates it. The subprogram transfer process is terminated (Yes in S307).

この段階でRAM15の実行プログラム格納領域151に格納されたサブプログラム群を仮実行プログラムと呼ぶ。   At this stage, a group of subprograms stored in the execution program storage area 151 of the RAM 15 is referred to as a temporary execution program.

更新サブプログラム格納情報1412が図3の場合、更新サブプログラム転送部133は、更新サブプログラムb、eをRAM15の実行プログラム格納領域151に転送する。   When the update subprogram storage information 1412 is shown in FIG. 3, the update subprogram transfer unit 133 transfers the update subprograms b and e to the execution program storage area 151 of the RAM 15.

次に、サブプログラム調整部134が分岐先調整情報1413から1エントリ読出し、読み出した情報に基づき仮実行プログラムに上書き修正する(S309〜S311)。   Next, the subprogram adjustment unit 134 reads one entry from the branch destination adjustment information 1413, and overwrites and corrects the temporary execution program based on the read information (S309 to S311).

サブプログラム調整部134は、分岐先調整情報1413において終了コードを検出するまでS309〜S311の処理を繰り返し、終了コードを検出すると分岐先調整情報1413にエントリは存在しないと判定し、分岐先調整処理を終了する(S310でYesの場合)。   The subprogram adjustment unit 134 repeats the processing of S309 to S311 until the end code is detected in the branch destination adjustment information 1413. When the subcode adjustment unit 134 detects the end code, it determines that there is no entry in the branch destination adjustment information 1413, and the branch destination adjustment process. (Yes in S310).

この段階でRAM15の実行プログラム格納領域151に格納されているサブプログラム群を実行プログラムと呼ぶ。   At this stage, a group of subprograms stored in the execution program storage area 151 of the RAM 15 is called an execution program.

分岐先調整情報1413が図4の場合、サブプログラム調整部134は、以下の処理をする。
1)サブプログラムdのオフセット0100にデータ5810を上書きする。
2)サブプログラムdのオフセット0110にデータ5910を上書きする。
When the branch destination adjustment information 1413 is shown in FIG. 4, the subprogram adjustment unit 134 performs the following processing.
1) The data 5810 is overwritten on the offset 0100 of the subprogram d.
2) Overwrite data 5910 to offset 0110 of subprogram d.

次に、プログラム実行部135が、実行プログラムを起動し(S312)、更新されたプログラムを実行することができる。   Next, the program execution unit 135 can start the execution program (S312) and execute the updated program.

このように本実施の形態によれば、サブプログラム単位での置換が可能であり、オリジナルサブプログラムの再配置が可能であり、オリジナルサブプログラムの再配置により生じた分岐先のずれを修正可能であるため、ソースコード修正による実行プログラムの修正ができる。   As described above, according to the present embodiment, replacement in units of subprograms is possible, the original subprograms can be rearranged, and the deviation of the branch destination caused by the rearrangement of the original subprograms can be corrected. Therefore, the execution program can be modified by modifying the source code.

また、オリジナルプログラム、更新サブプログラム群を2面持ちする必要がなく、実行プログラムに必要な容量があれば良く、必要なRAM容量を抑制できる。   Further, it is not necessary to have two original program and update subprogram groups, and it is sufficient that the execution program has a necessary capacity, and a necessary RAM capacity can be suppressed.

実施の形態2.
図6は、本実施の形態に係るシステム構成例を示す図である。
Embodiment 2. FIG.
FIG. 6 is a diagram illustrating a system configuration example according to the present embodiment.

本実施の形態では、情報処理装置1と管理装置2とを接続し、管理装置2から情報処理装置1に更新サブプログラム、オリジナルサブプログラム格納情報、更新サブプログラム格納情報などを送信する場合について説明する。   In the present embodiment, a case where the information processing apparatus 1 and the management apparatus 2 are connected and an update subprogram, original subprogram storage information, update subprogram storage information, and the like are transmitted from the management apparatus 2 to the information processing apparatus 1 will be described. To do.

なお、情報処理装置1には所定の機種コードが設定されており、管理装置2は情報処理装置の機種に対応する更新サブプログラム等を送信する。   A predetermined model code is set in the information processing apparatus 1, and the management apparatus 2 transmits an update subprogram corresponding to the model of the information processing apparatus.

また、図6では、情報処理装置1と管理装置2は有線で接続されているが無線により接続されていてもよい。   In FIG. 6, the information processing apparatus 1 and the management apparatus 2 are connected by wire, but may be connected by radio.

本実施の形態の応用例としては、情報処理装置1を携帯電話機とし、管理装置2が携帯電話機の機種に対応する更新サブプログラムを無線通信により携帯電話機に送信することが考えられる。   As an application example of the present embodiment, it is conceivable that the information processing apparatus 1 is a mobile phone and the management apparatus 2 transmits an update subprogram corresponding to the mobile phone model to the mobile phone by wireless communication.

先ず、図6を参照して、本実施の形態に係る情報処理装置1と管理装置2の動作を概説する。   First, operations of the information processing apparatus 1 and the management apparatus 2 according to the present embodiment will be outlined with reference to FIG.

管理装置2は、情報処理装置の機種ごとにオリジナルサブプログラム及び更新サブプログラムを保有しており、管理装置2内部又は管理装置2外部にて新たな更新サブプログラムが生成される度に、機種ごとに最新バージョンのサブプログラムの内容を示す最新バージョン情報を生成する。   The management apparatus 2 has an original subprogram and an update subprogram for each model of the information processing apparatus, and each time a new update subprogram is generated inside the management apparatus 2 or outside the management apparatus 2, the management apparatus 2 The latest version information indicating the contents of the latest version of the subprogram is generated.

また、管理装置2では、新たな更新サブプログラムが生成される度に、生成された新たな更新サブプログラムの適用機種である情報処理装置1に対して新たな更新サブプログラムの送信の要否を問い合わせ(S601)、情報処理装置1において更新サブプログラムの送信を要求する場合に、応答として、情報処理装置1から情報処理装置1のサブプログラムのカレントバージョンを示す応答バージョン情報を受信する(S602)。   In addition, each time a new update subprogram is generated, the management device 2 determines whether or not it is necessary to transmit a new update subprogram to the information processing apparatus 1 to which the generated new update subprogram is applied. Inquiry (S601), when the information processing apparatus 1 requests transmission of an updated subprogram, response version information indicating the current version of the subprogram of the information processing apparatus 1 is received from the information processing apparatus 1 as a response (S602). .

管理装置2では、情報処理装置1から応答バージョン情報を受信した場合に、最新バージョン情報を参照し、オリジナルサブプログラム格納情報と更新サブプログラム格納情報を生成する。オリジナルサブプログラム格納情報及び更新サブプログラム格納情報は、実施の形態1で説明したものと同じである。   When the management apparatus 2 receives the response version information from the information processing apparatus 1, the management apparatus 2 refers to the latest version information and generates original subprogram storage information and updated subprogram storage information. The original subprogram storage information and the updated subprogram storage information are the same as those described in the first embodiment.

また、管理装置2では、情報処理装置1からの応答バージョン情報と最新バージョン情報とを比較し、情報処理装置1が未保有(未受信)の更新サブプログラムを特定する。   In addition, the management device 2 compares the response version information from the information processing device 1 with the latest version information, and identifies an update subprogram that the information processing device 1 does not own (not received).

また、管理装置2では、実施の形態1で示したものと同様の分岐先調整情報を生成する。   Further, the management device 2 generates branch destination adjustment information similar to that shown in the first embodiment.

更に、管理装置2では、オリジナルサブプログラム格納情報、更新サブプログラム格納情報、情報処理装置1が未保有(未受信)の更新サブプログラム、分岐先調整情報のそれぞれのデータサイズを示すデータサイズ情報を生成し、これらオリジナルサブプログラム格納情報、更新サブプログラム格納情報、更新サブプログラム、分岐先調整情報、データサイズ情報を情報処理装置1に送信する(S603)。   Further, in the management device 2, the original subprogram storage information, the updated subprogram storage information, the data size information indicating the respective data sizes of the update subprogram that is not held (not received) by the information processing device 1 and the branch destination adjustment information are stored. The original subprogram storage information, the update subprogram storage information, the update subprogram, the branch destination adjustment information, and the data size information are generated and transmitted to the information processing apparatus 1 (S603).

これにより、情報処理装置1では、未保有(未受信)であった更新サブプログラムを取得できるとともに、新たに保有した更新サブプログラムを用いてオリジナルプログラムの更新を行うことができる。   As a result, the information processing apparatus 1 can acquire the update subprogram that has not been held (not received) and can update the original program by using the newly held update subprogram.

次に、図7を参照して管理装置2の構成例を説明する。   Next, a configuration example of the management device 2 will be described with reference to FIG.

管理装置2は、CPU21、ROM22、サブプログラムDB(データベース)23、最新バージョン情報DB24、機種/情報処理装置DB25、通信制御装置26、RAM(1)27、RAM(2)28、RAM(3)29から構成される。   The management device 2 includes a CPU 21, a ROM 22, a subprogram DB (database) 23, a latest version information DB 24, a model / information processing device DB 25, a communication control device 26, a RAM (1) 27, a RAM (2) 28, and a RAM (3). 29.

ROM22は、RAM(1)27上に示されている271〜278のプログラムを格納している。図7では、説明の便宜上、271〜278のプログラムが起動されてRAM(1)上に展開されている状態を示している。   The ROM 22 stores programs 271 to 278 shown on the RAM (1) 27. FIG. 7 shows a state in which the programs 271 to 278 are activated and expanded on the RAM (1) for convenience of explanation.

サブプログラムDB23は、情報処理装置の機種ごとにオリジナルサブプログラム及び更新サブプログラムを保有しており、管理装置2内部又は管理装置2外部にて新たな更新サブプログラムが生成される度に、新たな更新サブプログラムを対応する機種のサブプログラム群に追加して格納する。サブプログラムDB23は、サブプログラム記憶部の例に相当する。   The subprogram DB 23 has an original subprogram and an update subprogram for each model of the information processing apparatus, and a new update subprogram is generated each time a new update subprogram is generated inside the management apparatus 2 or outside the management apparatus 2. The update subprogram is added to the subprogram group of the corresponding model and stored. The subprogram DB 23 corresponds to an example of a subprogram storage unit.

最新バージョン情報DB24は、情報処理装置の機種ごとに最新バージョンのサブプログラムの内容を示す最新バージョン情報を格納している。最新バージョン情報の詳細は後述する。   The latest version information DB 24 stores the latest version information indicating the contents of the latest version of the subprogram for each model of the information processing apparatus. Details of the latest version information will be described later.

機種/情報処理装置DB25は、機種と情報処理装置とを対応づける機種/情報処理装置情報を格納している。機種/情報処理装置情報は、機種ごとに情報処理装置の通信ID(例えば、IPアドレス)を示す。   The model / information processing apparatus DB 25 stores model / information processing apparatus information that associates a model with an information processing apparatus. The model / information processing apparatus information indicates a communication ID (for example, an IP address) of the information processing apparatus for each model.

通信制御装置26は、情報処理装置1との間で有線又は無線通信を行う。通信制御装置26は、通信処理部の例に相当する。   The communication control device 26 performs wired or wireless communication with the information processing device 1. The communication control device 26 corresponds to an example of a communication processing unit.

RAM(1)27では、271〜278に示すプログラムが展開される。   In the RAM (1) 27, programs shown in 271 to 278 are expanded.

サブプログラム登録部271は、管理装置2内部で新たな更新サブプログラムが生成された際、又は管理装置2外部で新たな更新サブプログラムが生成され管理装置2に入力された際に、新たな更新サブプログラムをサブプログラムDB23に登録する。   The subprogram registration unit 271 performs a new update when a new update subprogram is generated inside the management apparatus 2 or when a new update subprogram is generated outside the management apparatus 2 and input to the management apparatus 2. The subprogram is registered in the subprogram DB 23.

最新バージョン情報生成部272は、サブプログラム登録部271により新たな更新サブプログラムがサブプログラムDB23に登録された際に、当該更新サブプログラムの適用機種に関する最新バージョン情報を生成する。最新バージョン情報は、情報処理装置の機種ごとに生成される。最新バージョン情報生成部272は最新バージョン情報を生成した場合には、最新バージョン情報DB24に登録する。   When a new update subprogram is registered in the subprogram DB 23 by the subprogram registration unit 271, the latest version information generation unit 272 generates the latest version information regarding the model to which the update subprogram is applied. The latest version information is generated for each model of the information processing apparatus. The latest version information generation unit 272 registers the latest version information in the latest version information DB 24 when generating the latest version information.

図9に、最新バージョン情報生成部272が生成する最新バージョン情報の例を示す。   FIG. 9 shows an example of the latest version information generated by the latest version information generation unit 272.

図9の例では、サブプログラム名a〜eに対して、それぞれのRAM格納アドレス、フラッシュメモリ/ROM格納アドレス、プログラムサイズ、バージョンが示される。   In the example of FIG. 9, the RAM storage address, flash memory / ROM storage address, program size, and version are shown for the subprogram names a to e.

ここで、RAM格納アドレスは、情報処理装置1において主記憶装置であるRAMにそれぞれのサブプログラムが転送される際のRAM上の格納アドレスを示す。   Here, the RAM storage address indicates a storage address on the RAM when each subprogram is transferred to the RAM which is the main storage device in the information processing apparatus 1.

フラッシュメモリ/ROM格納アドレスは、最新バージョンのサブプログラムがオリジナルサブプログラムであればROM上のアドレスが示され、最新バージョンのサブプログラムが更新サブプログラムであれば、フラッシュメモリ上のアドレスが示される。   The flash memory / ROM storage address indicates the address on the ROM if the latest version of the subprogram is the original subprogram, and indicates the address on the flash memory if the latest version of the subprogram is the update subprogram.

プログラムサイズは、最新バージョンのサブプログラムのデータサイズが示される。   The program size indicates the data size of the latest version of the subprogram.

バージョンは、1.0はオリジナルサブプログラムを意味し、1.1以降は更新サブプログラムを意味する。   As for the version, 1.0 means an original subprogram, and 1.1 and later means an updated subprogram.

なお、最新バージョン情報生成部272は、各機種のROM、フラッシュメモリ、RAMの構成を把握しているため、機種ごとに図9に示すような最新バージョン情報を生成することができる。   Since the latest version information generation unit 272 knows the configuration of the ROM, flash memory, and RAM of each model, it can generate the latest version information as shown in FIG. 9 for each model.

更新問合せ部273は、最新バージョン情報生成部272により最新バージョン情報が生成された際に、情報処理装置1が未保有(未受信)の更新サブプログラムの送信が必要か否かを問い合わせる更新コマンドを生成し、生成した更新コマンドを通信制御装置26から情報処理装置1に対して送信する。更新コマンドは、図10に示す構成となっており、ヘッダ、更新コード、機種コード及びプログラムバージョン情報からなる。   When the latest version information is generated by the latest version information generation unit 272, the update inquiry unit 273 issues an update command that inquires whether or not the information processing apparatus 1 needs to transmit an update subprogram that is not held (not received). The generated update command is transmitted from the communication control device 26 to the information processing device 1. The update command has the configuration shown in FIG. 10, and includes a header, an update code, a model code, and program version information.

更新コードは、更新コマンドであることを示すコードであり、機種コードは適用機種を示すコードである。プログラムバージョン情報は、プログラム全体としてのプログラムバージョンが示される。   The update code is a code indicating an update command, and the model code is a code indicating an applicable model. The program version information indicates a program version as a whole program.

また、更新問合せ部273は、更新コマンドの送信後、情報処理装置1から更新コマンドに対する応答である応答コマンドを受信する。   The update inquiry unit 273 receives a response command that is a response to the update command from the information processing apparatus 1 after transmitting the update command.

応答コマンドは図11に示す構成となっており、ヘッダ、応答コード、機種コード及びプログラムバージョン情報からなる。応答コードは、応答コマンドであることを示すコードであり、機種コードは適用機種を示すコードである。情報処理装置1が更新サブプログラムの送信を要求する場合には、プログラムバージョン情報には情報処理装置1の保有するプログラムのプログラム全体としてのプログラムバージョンを示す情報が含まれている。このプログラムバージョンの情報を応答バージョン情報という。また、情報処理装置1が更新サブプログラムの送信を要求しない場合は、機種コード及びプログラムバージョン情報を0とする。   The response command has the configuration shown in FIG. 11, and includes a header, a response code, a model code, and program version information. The response code is a code indicating a response command, and the model code is a code indicating an applicable model. When the information processing apparatus 1 requests transmission of an update subprogram, the program version information includes information indicating the program version of the entire program held by the information processing apparatus 1. This program version information is called response version information. When the information processing apparatus 1 does not request transmission of the update subprogram, the model code and the program version information are set to 0.

図11では、応答コマンドに応答バージョン情報が含まれている例を示している。   FIG. 11 shows an example in which response version information is included in the response command.

格納情報生成部274は、最新バージョン情報に基づいて送信オリジナルサブプログラム格納情報2821及び送信更新サブプログラム格納情報2822を生成する。   The storage information generation unit 274 generates transmission original subprogram storage information 2821 and transmission update subprogram storage information 2822 based on the latest version information.

格納情報生成部274は、最新バージョン情報において最新バージョンがオリジナルサブプログラムであると表示されている場合に、当該オリジナルサブプログラムを実行対象のサブプログラムとするよう指示する送信オリジナルサブプログラム格納情報2821を生成する。送信オリジナルサブプログラム格納情報は、例えば図12に示す構成をしており、実施の形態1で示したものと同様に、実行対象のオリジナルサブプログラムをサブプログラムa、dとして特定するとともに、それぞれのサブプログラムについて、情報処理装置1のRAMの格納アドレス、情報処理装置1のROMの格納アドレス、及びプログラムサイズを示す。これらRAM格納アドレス、ROM格納アドレス、プログラムサイズは、図9の最新バージョン情報のものと同じ内容になっている。   When the latest version information indicates that the latest version is the original subprogram, the storage information generation unit 274 displays transmission original subprogram storage information 2821 that instructs the original subprogram to be an execution target subprogram. Generate. The transmission original subprogram storage information has the configuration shown in FIG. 12, for example, and specifies the original subprogram to be executed as subprograms a and d, as in the first embodiment, Regarding the subprogram, the storage address of the RAM of the information processing apparatus 1, the storage address of the ROM of the information processing apparatus 1, and the program size are shown. These RAM storage address, ROM storage address, and program size are the same as those of the latest version information in FIG.

また、格納情報生成部274は、最新バージョン情報において最新バージョンが更新サブプログラムであると表示されている場合に、当該更新サブプログラムを実行対象のサブプログラムとするよう指示する送信更新サブプログラム格納情報2822を生成する。送信更新サブプログラム格納情報は、例えば図13に示す構成をしており、実施の形態1で示したものと同様に、実行対象の更新サブプログラムをサブプログラムb、c、eとして特定するとともに、それぞれのサブプログラムについて、情報処理装置1のRAMの格納アドレス、情報処理装置1のフラッシュメモリの格納アドレス、及びプログラムサイズを示す。これらRAM格納アドレス、フラッシュメモリ格納アドレス、プログラムサイズは、図9の最新バージョン情報のものと同じ内容になっている。   In addition, the storage information generation unit 274 transmits transmission update subprogram storage information that instructs the update subprogram to be an execution target subprogram when the latest version is displayed as the update subprogram in the latest version information. 2822 is generated. The transmission update subprogram storage information has the configuration shown in FIG. 13, for example, and specifies the update subprogram to be executed as subprograms b, c, and e, similar to the one shown in the first embodiment, For each subprogram, the storage address of the RAM of the information processing apparatus 1, the storage address of the flash memory of the information processing apparatus 1, and the program size are shown. These RAM storage address, flash memory storage address, and program size are the same as those of the latest version information in FIG.

また、格納情報生成部274は、生成した送信オリジナルサブプログラム格納情報、送信更新サブプログラム格納情報を送信データ格納領域282に格納する。   Further, the storage information generation unit 274 stores the generated transmission original subprogram storage information and transmission update subprogram storage information in the transmission data storage area 282.

なお、格納情報生成部274は、オリジナルサブプログラム格納情報生成部及び更新サブプログラム格納情報生成部の例に相当する。   The storage information generation unit 274 corresponds to an example of an original subprogram storage information generation unit and an update subprogram storage information generation unit.

分岐先調整情報生成部275は、送信分岐先調整情報2823を生成する。送信分岐先調整情報2823は、情報処理装置1が新たな更新サブプログラムによってオリジナルプログラムの更新を行なった後も分岐処理における分岐先との対応が維持できるように分岐先の対応づけを調整する情報である。情報処理装置1において、例えば、オリジナルサブプログラムを新たな更新サブプログラムに置換えた場合には、置換えを行わなかったサブプログラム内の分岐先が変更になることがあるが、分岐先調整情報は、このような変更を調整し、置換前の分岐先の対応づけが置換後も維持でできるようにするための情報である。   The branch destination adjustment information generation unit 275 generates transmission branch destination adjustment information 2823. The transmission branch destination adjustment information 2823 is information for adjusting the correspondence of the branch destination so that the correspondence with the branch destination in the branch processing can be maintained even after the information processing apparatus 1 updates the original program with the new update subprogram. It is. In the information processing apparatus 1, for example, when the original subprogram is replaced with a new update subprogram, the branch destination in the subprogram that has not been replaced may be changed. This is information for adjusting such a change so that the correspondence of the branch destination before the replacement can be maintained after the replacement.

図14に分岐先調整情報の例を示す。本実施の形態における送信分岐先調整情報は、実施の形態1で示した分岐先調整情報と同じ構成をもつ。   FIG. 14 shows an example of branch destination adjustment information. The transmission branch destination adjustment information in the present embodiment has the same configuration as the branch destination adjustment information shown in the first embodiment.

また、分岐先調整情報生成部275は、生成した送信分岐先調整情報を送信データ格納領域282に格納する。   Further, the branch destination adjustment information generation unit 275 stores the generated transmission branch destination adjustment information in the transmission data storage area 282.

なお、分岐先調整情報生成部275は、調整情報生成部の例に相当する。   Note that the branch destination adjustment information generation unit 275 corresponds to an example of an adjustment information generation unit.

送信サブプログラム特定部276は、情報処理装置1からの応答バージョン情報と最新バージョン情報とを比較し、情報処理装置が未保有(未受信)の更新サブプログラムを送信サブプログラムとして特定する。   The transmission subprogram specifying unit 276 compares the response version information from the information processing apparatus 1 with the latest version information, and specifies an update subprogram that the information processing apparatus does not have (not received) as a transmission subprogram.

また、送信サブプログラム特定部276は、特定した送信サブプログラムを送信データ格納領域282に格納する。   Also, the transmission subprogram specifying unit 276 stores the specified transmission subprogram in the transmission data storage area 282.

なお、送信サブプログラム特定部276は、更新サブプログラム特定部の例に相当する。   The transmission subprogram specifying unit 276 corresponds to an example of an update subprogram specifying unit.

データサイズ情報生成部277は、送信オリジナルサブプログラム格納情報、送信更新サブプログラム格納情報、送信分岐先調整情報、送信サブプログラムのそれぞれのデータサイズを示す送信データサイズ情報を生成する。   The data size information generation unit 277 generates transmission data size information indicating each data size of transmission original subprogram storage information, transmission update subprogram storage information, transmission branch destination adjustment information, and transmission subprogram.

また、データサイズ情報生成部277は、生成した送信データサイズ情報を送信データ格納領域282に格納する。   Further, the data size information generation unit 277 stores the generated transmission data size information in the transmission data storage area 282.

送信データ送信処理部278は、送信データ格納領域282に格納された送信オリジナルサブプログラム格納情報2821、送信更新サブプログラム格納情報2822、送信分岐先調整情報2823、送信データサイズ情報2824、送信サブプログラム2825を通信制御装置26から情報処理装置1に送信する。   The transmission data transmission processing unit 278 includes transmission original subprogram storage information 2821, transmission update subprogram storage information 2822, transmission branch destination adjustment information 2823, transmission data size information 2824, and transmission subprogram 2825 stored in the transmission data storage area 282. Is transmitted from the communication control device 26 to the information processing device 1.

なお、送信オリジナルサブプログラム格納情報2821、送信更新サブプログラム格納情報2822、送信分岐先調整情報2823、送信データサイズ情報2824、送信サブプログラム2825を送信データと呼ぶ。   Transmission original subprogram storage information 2821, transmission update subprogram storage information 2822, transmission branch destination adjustment information 2823, transmission data size information 2824, and transmission subprogram 2825 are referred to as transmission data.

RAM(2)28には、応答バージョン関連情報格納領域281、送信データ格納領域282が存在する。   The RAM (2) 28 includes a response version related information storage area 281 and a transmission data storage area 282.

応答バージョン関連情報格納領域281には、情報処理装置1から受信した応答バージョン情報2812及び応答バージョン情報に示されているバージョンのサブプログラム(以下、応答バージョンサブプログラムという)が格納される。   The response version related information storage area 281 stores the response version information 2812 received from the information processing apparatus 1 and the subprogram of the version indicated in the response version information (hereinafter referred to as response version subprogram).

送信データ格納領域282には、送信データを構成する2821〜2825の各情報が格納される。   In the transmission data storage area 282, pieces of information 2821 to 2825 constituting transmission data are stored.

RAM(3)29には、最新バージョン関連情報格納領域291が存在する。   The RAM (3) 29 has a latest version related information storage area 291.

最新バージョン関連情報格納領域291には、情報処理装置1の機種に対応する最新バージョン情報2912及び最新バージョン情報に示されている最新バージョンのサブプログラム(以下、最新バージョンサブプログラムという)が格納される。   The latest version related information storage area 291 stores the latest version information 2912 corresponding to the model of the information processing apparatus 1 and the latest version subprogram (hereinafter referred to as the latest version subprogram) indicated in the latest version information. .

RAM(3)は、最新バージョン情報を記憶する最新バージョン情報記憶部の例に相当する。   The RAM (3) corresponds to an example of the latest version information storage unit that stores the latest version information.

次に、図8を参照して本実施の形態に係る情報処理装置1の構成例を説明する。   Next, a configuration example of the information processing apparatus 1 according to the present embodiment will be described with reference to FIG.

図8において、CPU11及びリセット手段12は実施の形態1に示したものと同様である。   In FIG. 8, the CPU 11 and the reset means 12 are the same as those shown in the first embodiment.

通信制御装置16は、管理装置2との間で有線又は無線通信を行う。   The communication control device 16 performs wired or wireless communication with the management device 2.

本実施の形態では、ROM13には、問合せ応答部1311、送信データ受信処理部1312、サブプログラム格納領域指定部1313、サブプログラム書込処理部1314、リセット指示部1315、プログラムバージョン情報生成部1316が格納されている。   In this embodiment, the ROM 13 includes an inquiry response unit 1311, a transmission data reception processing unit 1312, a subprogram storage area designation unit 1313, a subprogram write processing unit 1314, a reset instruction unit 1315, and a program version information generation unit 1316. Stored.

問合せ応答部1311は、管理装置2からの更新コマンドを通信制御装置16を介して受信し、更新コマンドに対する応答である応答コマンドを生成し、生成した応答コマンドを通信制御装置16から管理装置2に対して送信する。   The inquiry response unit 1311 receives an update command from the management device 2 via the communication control device 16, generates a response command that is a response to the update command, and sends the generated response command from the communication control device 16 to the management device 2. Send to.

送信データ受信処理部1312は、管理装置2から送信された送信データを通信制御装置16を介して受信し、受信した送信データをRAM15の受信データ格納領域153に格納する。なお、RAM15の受信データ格納領域153に格納された後は送信データを受信データと呼ぶ。また、送信データを構成する各情報も、受信データ格納領域153に格納された後は、それぞれ、受信データサイズ情報1532、受信オリジナルサブプログラム格納情報1533、受信更新サブプログラム格納情報1534、受信分岐先調整情報1535、受信サブプログラム1536と呼ぶ。   The transmission data reception processing unit 1312 receives the transmission data transmitted from the management device 2 via the communication control device 16 and stores the received transmission data in the reception data storage area 153 of the RAM 15. Note that the transmission data is referred to as reception data after being stored in the reception data storage area 153 of the RAM 15. Also, after each piece of information constituting transmission data is also stored in the reception data storage area 153, reception data size information 1532, reception original subprogram storage information 1533, reception update subprogram storage information 1534, reception branch destination, respectively. Called adjustment information 1535 and reception subprogram 1536.

サブプログラム格納領域指定部1313は、フラッシュメモリ14のセクタごとに受信サブプログラム1536の格納内容(セクタデータ)を指定する新セクタ格納情報1541を生成する。   The subprogram storage area specifying unit 1313 generates new sector storage information 1541 for specifying the storage contents (sector data) of the reception subprogram 1536 for each sector of the flash memory 14.

フラッシュメモリ14は、情報の書換えを行なう際にはセクタごとに書換えが行われるため、受信サブプログラムをフラッシュメモリ14に格納するためには受信サブプログラムをセクタ単位に分割してセクタデータとし、それぞれのセクタデータをセクタごとに格納することが必要である。   Since the flash memory 14 is rewritten for each sector when information is rewritten, in order to store the reception subprogram in the flash memory 14, the reception subprogram is divided into sector units to form sector data. It is necessary to store the sector data for each sector.

このため、サブプログラム格納領域指定部1313は、フラッシュメモリ14のセクタごとに受信サブプログラム1536の格納内容(セクタデータ)を指定する。   Therefore, the subprogram storage area designating unit 1313 designates the storage contents (sector data) of the reception subprogram 1536 for each sector of the flash memory 14.

サブプログラム書込処理部1314は、サブプログラム格納領域指定部1313の指定に従い受信サブプログラム1536をセクタごとに分割してセクタデータとするとともに、それぞれのセクタデータをサブプログラム格納領域指定部1313により指定されたセクタ(格納領域)に書き込む。   The subprogram writing processing unit 1314 divides the received subprogram 1536 into sectors according to the designation of the subprogram storage area designating unit 1313 to form sector data, and designates each sector data by the subprogram storage area designating unit 1313. Is written to the designated sector (storage area).

リセット指示部1315は、所定の場合に、リセット手段12に対して情報処理装置1のリセットを指示する。   The reset instruction unit 1315 instructs the reset unit 12 to reset the information processing apparatus 1 in a predetermined case.

プログラムバージョン情報生成部1316は、情報処理装置1が保有しているサブプログラムのバージョンを示すプログラムバージョン情報を生成するとともに、生成したプログラムバージョン情報をフラッシュメモリ14の機種コード/バージョン格納領域143に格納する。   The program version information generation unit 1316 generates program version information indicating the version of the subprogram held by the information processing apparatus 1 and stores the generated program version information in the model code / version storage area 143 of the flash memory 14. To do.

なお、図8では図示を省略しているが、本実施の形態に係る情報処理装置1も図1に示した131〜136の要素をROM13に保有しており、プログラムの実行時には、これら131〜136の各要素を用いて実施の形態1で示した動作を行う。   Although not shown in FIG. 8, the information processing apparatus 1 according to the present embodiment also has the elements 131 to 136 shown in FIG. 1 in the ROM 13. The operation shown in the first embodiment is performed using each element 136.

フラッシュメモリ14の修正テーブル格納領域141には、オリジナルサブプログラム格納情報1411、更新サブプログラム格納情報1412、分岐先調整情報1413に加えて、セクタ格納情報1414が格納されている。   In the correction table storage area 141 of the flash memory 14, sector storage information 1414 is stored in addition to the original subprogram storage information 1411, the updated subprogram storage information 1412, and the branch destination adjustment information 1413.

セクタ格納情報1414は、フラッシュメモリ14のセクタごとに各セクタに格納すべきセクタデータ(更新サブプログラムの格納内容)を指定している。   The sector storage information 1414 designates sector data (stored contents of the update subprogram) to be stored in each sector for each sector of the flash memory 14.

なお、図8のフラッシュメモリ14に格納されている情報(オリジナルサブプログラム格納情報1411、更新サブプログラム格納情報1412、分岐先調整情報1413、セクタ格納情報1414、更新サブプログラムb、e、及びプログラムバージョン情報1432)は、後述する図18の処理が行なわれる前の情報、すなわち、前回の更新時の情報である。   Note that information stored in the flash memory 14 of FIG. 8 (original subprogram storage information 1411, update subprogram storage information 1412, branch destination adjustment information 1413, sector storage information 1414, update subprograms b and e, and program version) Information 1432) is information before the process of FIG. 18 described later is performed, that is, information at the time of the previous update.

また、フラッシュメモリ14の機種コード/バージョン格納領域143には、機種コード1431及びプログラムバージョン情報1432が格納されている。   The model code 1431 and program version information 1432 are stored in the model code / version storage area 143 of the flash memory 14.

機種コード1431は、情報処理装置1の機種を示すコードである。   The model code 1431 is a code indicating the model of the information processing apparatus 1.

プログラムバージョン情報1432は、情報処理装置1が保有しているサブプログラムのカレントバージョンを示す情報であり、プログラムバージョン情報生成部1316により生成、格納される。   The program version information 1432 is information indicating the current version of the subprogram held by the information processing apparatus 1, and is generated and stored by the program version information generation unit 1316.

次に、RAM15の格納内容について説明する。   Next, the contents stored in the RAM 15 will be described.

受信データ格納領域153は、送信データ受信処理部1312により受信された送信データを格納するための格納領域である。受信データサイズ情報1532は受信後の送信データサイズ情報であり、受信オリジナルサブプログラム格納情報1533は受信後の送信オリジナルサブプログラム格納情報であり、受信更新サブプログラム格納情報1534は受信後の送信更新サブプログラム格納情報であり、受信分岐先調整情報1535は受信後の送信分岐先調整情報であり、受信サブプログラム1536は受信後の送信サブプログラムである。   The reception data storage area 153 is a storage area for storing transmission data received by the transmission data reception processing unit 1312. Reception data size information 1532 is transmission data size information after reception, reception original subprogram storage information 1533 is transmission original subprogram storage information after reception, and reception update subprogram storage information 1534 is transmission update subprogram after reception. It is program storage information, reception branch destination adjustment information 1535 is transmission branch destination adjustment information after reception, and reception subprogram 1536 is transmission subprogram after reception.

複製セクタ格納情報1531は、フラッシュメモリ14の修正テーブル格納領域141に格納されているセクタ格納情報1414がサブプログラム格納領域指定部1313により受信データ格納領域153に複写(コピー)された後のセクタ格納情報である。   The duplicate sector storage information 1531 is the sector storage after the sector storage information 1414 stored in the correction table storage area 141 of the flash memory 14 is copied (copied) to the reception data storage area 153 by the subprogram storage area specifying unit 1313. Information.

新修正テーブル格納領域154には、受信データ格納領域153に格納されている修正テーブル(複製セクタ格納情報1531、受信オリジナルサブプログラム格納情報1533、受信更新サブプログラム格納情報1534、受信分岐先調整情報1535)から作成された新修正テーブルが格納される。   In the new correction table storage area 154, the correction table (replica sector storage information 1531, received original subprogram storage information 1533, received update subprogram storage information 1534, received branch destination adjustment information 1535 stored in the received data storage area 153 is stored. ) Is stored.

新修正テーブルは、受信修正テーブルに複製フラッシュメモリセクタ格納情報を追加したものである。   The new correction table is obtained by adding duplicate flash memory sector storage information to the reception correction table.

新修正テーブルは、新フラッシュメモリセクタ格納情報、受信オリジナルサブプログラム格納情報、受信更新サブプログラム格納情報、受信分岐先調整情報から構成される。   The new correction table includes new flash memory sector storage information, reception original subprogram storage information, reception update subprogram storage information, and reception branch destination adjustment information.

新修正テーブルは、フラッシュメモリにある修正テーブル格納領域にコピーされる。実施の形態1で示したとおり、リセット解除後に実行プログラムを生成する動作に用いられる。また新フラッシュメモリセクタ格納情報は、次にサブプログラムが更新される場合に、複製フラッシュメモリセクタ格納情報を生成する場合に用いる。   The new correction table is copied to the correction table storage area in the flash memory. As shown in the first embodiment, it is used for an operation for generating an execution program after reset release. The new flash memory sector storage information is used to generate duplicate flash memory sector storage information when the subprogram is next updated.

サブプログラム格納領域指定部1313は、受信データ格納領域153に格納されている修正テーブル(複製セクタ格納情報1531、受信オリジナルサブプログラム格納情報1533等)をフラッシュメモリ14の修正テーブル格納領域141に書き込むために、修正テーブルに変更を加えて新修正テーブル(新セクタ格納情報1541、新オリジナルサブプログラム格納情報1542、新更新サブプログラム格納情報1543、新分岐先調整情報1544)を生成し、生成した新修正テーブルを新修正テーブル格納領域154に格納する。   The subprogram storage area designating unit 1313 writes the correction table (replica sector storage information 1531, received original subprogram storage information 1533, etc.) stored in the reception data storage area 153 into the correction table storage area 141 of the flash memory 14. The modification table is modified to generate a new modification table (new sector storage information 1541, new original subprogram storage information 1542, new update subprogram storage information 1543, new branch destination adjustment information 1544), and the generated new modification The table is stored in the new correction table storage area 154.

修正情報RAM格納情報152は、サブプログラム格納領域指定部1313が受信データ格納領域153に格納されている修正テーブルから新修正テーブルを生成する際に用いる情報であり、管理装置2から受信した受信データがRAM15上にどのように格納(先頭アドレス、サイズ)されているかを示す情報である。フラッシュメモリを書きかえるために必要なデータをRAM15に格納するが、修正情報RAM格納情報は、それぞれのデータがどのように格納されているかを示すテーブルになる。管理装置から送信される毎にデータの種類とサイズが異なる。新修正テーブル、セクタデータを生成する場合、各生成手段に、参照するデータのアドレス、サイズを通知させるための手段である。   The correction information RAM storage information 152 is information used when the subprogram storage area specifying unit 1313 generates a new correction table from the correction table stored in the reception data storage area 153, and the reception data received from the management device 2. Is information stored in the RAM 15 (start address, size). Data necessary for rewriting the flash memory is stored in the RAM 15, and the correction information RAM storage information is a table indicating how each data is stored. Each time data is transmitted from the management device, the data type and size are different. When generating a new correction table and sector data, this is a means for causing each generating means to notify the address and size of data to be referred to.

図16に修正情報RAM格納情報152の例を示す。   FIG. 16 shows an example of the correction information RAM storage information 152.

各データ項目(エントリ)は、以下のような領域に関する情報である。
修正テーブルセクタ:新修正テーブルセクタ格納領域
送信オリジナルP格納テーブル:受信オリジナルサブプログラム格納情報の格納領域
送信修正P格納テーブル:受信更新サブプログラム格納情報の格納領域
送信分岐先修正テーブル:受信分岐先調整情報の格納領域
サブプログラムc::受信サブプログラムcの格納領域
サブプログラムe:受信サブプログラムeの格納領域
セクタデータ退避領域0:セクタデータを生成するときに使用するセクタデータ退避領域0の領域
セクタデータ退避領域1:セクタデータを生成するときに使用するセクタデータ退避領域0の領域
セクタ退避領域155は、サブプログラム書込処理部1314が新修正テーブル格納領域154に格納された新修正テーブルをフラッシュメモリ14の修正テーブル格納領域141に書き込む際に用いる退避領域である。図8では、セクタ退避領域155にはセクタ退避領域0、1の二つの退避領域がある。
Each data item (entry) is information relating to the following areas.
Correction table sector: New correction table sector storage area transmission original P storage table: reception original subprogram storage information storage area transmission correction P storage table: reception update subprogram storage information storage area transmission branch destination correction table: reception branch destination adjustment Information storage area subprogram c :: Storage area of reception subprogram c Subprogram e: Storage area of reception subprogram e Sector data save area 0: Area sector of sector data save area 0 used when sector data is generated Data save area 1: Sector data save area 0 area used when generating sector data The sector save area 155 flushes the new correction table stored in the new correction table storage area 154 by the subprogram write processing unit 1314. Storage of correction table in memory 14 This is a save area used when writing to the area 141. In FIG. 8, the sector save area 155 includes two save areas, sector save areas 0 and 1.

次に、図18を参照して本実施の形態に係る情報処理装置1及び管理装置2の動作を説明する。   Next, operations of the information processing apparatus 1 and the management apparatus 2 according to the present embodiment will be described with reference to FIG.

まず、管理装置2内部又は管理装置2外部において新たな更新サブプログラムが生成された場合に、サブプログラム登録部271が当該更新サブプログラムを対応する機種のサブプログラム群に追加してサブプログラムDB23に登録するとともに、最新バージョン情報生成部272に当該更新サブプログラムのバージョン、プログラムサイズ、適用機種を通知し、最新バージョン情報生成部272は当該更新サブプログラムを反映させて最新バージョン情報を生成し、最新バージョン情報DB24に登録する(S341)。   First, when a new update subprogram is generated inside the management device 2 or outside the management device 2, the subprogram registration unit 271 adds the update subprogram to the corresponding subprogram group of the model and stores it in the subprogram DB 23. At the same time, the latest version information generating unit 272 is notified of the version, program size, and applicable model of the updated subprogram. The latest version information generating unit 272 reflects the updated subprogram to generate the latest version information, and the latest It is registered in the version information DB 24 (S341).

また、最新バージョン情報生成部272は最新バージョン情報の生成・登録に際して、更新問合せ部273に適用機種及びプログラムバージョン情報(図10に示すプログラムバージョン情報)を通知し、更新問合せ部273は機種/情報処理装置DB25を検索して最新バージョン情報生成部272から通知された機種に該当する情報処理装置の通信IDを特定し、図10に示すように、最新バージョン情報生成部272から通知されたプログラムバージョン情報を含む更新コマンドを生成し(S342)、通信制御装置26を介して更新コマンドを情報処理装置1に送信する(S343)。   The latest version information generation unit 272 notifies the update inquiry unit 273 of the applicable model and program version information (program version information shown in FIG. 10) when generating and registering the latest version information, and the update inquiry unit 273 receives the model / information. The processing device DB 25 is searched to identify the communication ID of the information processing device corresponding to the model notified from the latest version information generation unit 272, and the program version notified from the latest version information generation unit 272 as shown in FIG. An update command including information is generated (S342), and the update command is transmitted to the information processing device 1 via the communication control device 26 (S343).

次に、情報処理装置1では、通信制御装置16を介して問合せ応答部1311が更新コマンドを受信し(S344)、更に、フラッシュメモリ14の機種コード/バージョン格納領域143に格納されている機種コード1431及びプログラムバージョン情報1432を読み出す(S345)。   Next, in the information processing device 1, the inquiry response unit 1311 receives the update command via the communication control device 16 (S344), and further, the model code stored in the model code / version storage area 143 of the flash memory 14 1431 and program version information 1432 are read (S345).

次に、問合せ応答部1311は、更新コマンドに含まれている機種コード及びプログラムバージョン情報と機種コード/バージョン格納領域143から読み出した機種コード1431及びプログラムバージョン情報1432とを比較し(S346)、機種コードが一致し、プログラムバージョンが更新されている場合は、図11に示すように応答バージョン情報を含む応答コマンドを生成する。その以外の場合は、機種コード/プログラムバージョン=0として応答コマンドを生成する(S347)。   Next, the inquiry response unit 1311 compares the model code and program version information included in the update command with the model code 1431 and program version information 1432 read from the model code / version storage area 143 (S346), and the model. If the codes match and the program version is updated, a response command including response version information is generated as shown in FIG. In other cases, a response command is generated with model code / program version = 0 (S347).

その後、問合せ応答部1311は生成した応答コマンドを通信制御装置16を介して管理装置2に送信する(S348)。   Thereafter, the inquiry response unit 1311 transmits the generated response command to the management device 2 via the communication control device 16 (S348).

次に、管理装置2では、通信制御装置26を介して更新問合せ部273が応答コマンドを受信し(S349)、受信した応答コマンドの解析を行う。   Next, in the management device 2, the update inquiry unit 273 receives the response command via the communication control device 26 (S349), and analyzes the received response command.

応答コマンド内の機種コードが0であれば更新不要と判定し処理を終了させる。0以外であれば処理を継続する(S350)。   If the model code in the response command is 0, it is determined that updating is not necessary, and the process is terminated. If it is other than 0, the processing is continued (S350).

ステップS350において機種コードが0でなければ、すなわち、応答コマンドに応答バージョン情報が含まれている場合には、管理装置2はステップS351の送信修正テーブル生成処理を行う。   If the model code is not 0 in step S350, that is, if response version information is included in the response command, the management device 2 performs transmission correction table generation processing in step S351.

以下、図19を参照して送信修正テーブル生成処理を説明する。   Hereinafter, the transmission correction table generation process will be described with reference to FIG.

まず、格納情報生成部274が、更新問合せ部273が受信した応答コマンドに含まれている応答バージョン情報をRAM(2)の応答バージョン関連情報格納領域281に格納して応答バージョン情報2812とする(S401)。   First, the storage information generation unit 274 stores the response version information included in the response command received by the update inquiry unit 273 in the response version related information storage area 281 of the RAM (2) and sets it as the response version information 2812 ( S401).

また、応答コマンドに含まれている機種コード及び応答バージョン情報に示されたサブプログラム名ごとのバージョンの表示をもとにしてサブプログラムDB23を検索し、応答バージョン情報に示されたバージョンのサブプログラムをRAM(2)の応答バージョン関連情報格納領域281に格納して応答バージョンサブプログラム2811とする(S402)。   Also, the subprogram DB 23 is searched based on the model code included in the response command and the display of the version for each subprogram name indicated in the response version information, and the version of the subprogram indicated in the response version information is retrieved. Is stored in the response version related information storage area 281 of the RAM (2) to be the response version subprogram 2811 (S402).

次に、格納情報生成部274は、応答コマンドに含まれた機種コードに対応する最新バージョン情報を最新バージョン情報DB24から読み出し、RAM(3)の最新バージョン関連情報格納領域291に格納して最新バージョン情報2912(図9)とする(S403)。   Next, the storage information generation unit 274 reads the latest version information corresponding to the model code included in the response command from the latest version information DB 24, stores it in the latest version related information storage area 291 of the RAM (3), and stores the latest version. Information 2912 (FIG. 9) is set (S403).

また、応答コマンドに含まれている機種コード及び最新バージョン情報に示されたサブプログラム名ごとのバージョンの表示をもとにしてサブプログラムDB23を検索し、最新バージョン情報に示されたバージョンのサブプログラムをRAM(3)の最新バージョン関連情報格納領域291に格納して最新バージョンサブプログラム2911とする(S404)。   Also, the subprogram DB 23 is searched based on the model code included in the response command and the display of the version for each subprogram name indicated in the latest version information, and the version of the subprogram indicated in the latest version information is displayed. Is stored in the latest version related information storage area 291 of the RAM (3) to be the latest version subprogram 2911 (S404).

次に、格納情報生成部274は、送信オリジナルサブプログラム格納情報を生成する(S405)。   Next, the storage information generation unit 274 generates transmission original subprogram storage information (S405).

具体的には、格納情報生成部274は、最新バージョン情報2912のエントリを順次読出しサブプログラムバージョン1.0(オリジナルサブプログラム)のエントリを抽出する。そして最新バージョン情報のサブプログラムバージョンのフィールドを削除し送信データ格納領域282に送信オリジナルサブプログラム格納情報2821(図12)として書き出す。   Specifically, the storage information generation unit 274 sequentially reads the entry of the latest version information 2912 and extracts the entry of the subprogram version 1.0 (original subprogram). Then, the subprogram version field of the latest version information is deleted and written in the transmission data storage area 282 as transmission original subprogram storage information 2821 (FIG. 12).

すべてのエントリについて処理を終えると、送信オリジナルサブプログラム格納情報に終了コードを含むエントリを書き込む。   When processing is completed for all entries, an entry including the end code is written in the transmission original subprogram storage information.

また、このとき、(終了コードを含むエントリ+1エントリ)のアドレスから送信オリジナルサブプログラム格納情報を差し引いた値をデータサイズ情報生成部277で保持する。   At this time, the data size information generation unit 277 holds a value obtained by subtracting the transmission original subprogram storage information from the address of (entry including the end code + 1 entry).

図9のような最新バージョン情報の場合、サブプログラムa、dのエントリを書込み、図12に示す送信オリジナルサブプログラム格納情報が生成される。   In the case of the latest version information as shown in FIG. 9, the entries of the subprograms a and d are written, and the transmission original subprogram storage information shown in FIG. 12 is generated.

次に、格納情報生成部274は、送信更新サブプログラム格納情報を生成する(S406)。   Next, the storage information generation unit 274 generates transmission update subprogram storage information (S406).

具体的には、格納情報生成部274は、最新バージョン情報2912のエントリを順次読出しサブプログラムバージョン1.0以外(更新サブプログラム)のエントリを抽出する。そして最新バージョン情報のサブプログラムバージョンのフィールドを削除し送信データ格納領域282に送信更新サブプログラム格納情報2822(図13)として書き出す。   Specifically, the storage information generation unit 274 sequentially reads the entries of the latest version information 2912 and extracts entries other than the subprogram version 1.0 (update subprogram). Then, the subprogram version field of the latest version information is deleted and written in the transmission data storage area 282 as transmission update subprogram storage information 2822 (FIG. 13).

すべてのエントリについて処理を終えると、送信更新サブプログラム格納情報に終了コードを含むエントリを書き込む。   When processing is completed for all entries, an entry including an end code is written in the transmission update subprogram storage information.

また、このとき、(終了コードを含むエントリ+1エントリ)のアドレスから送信更新サブプログラム格納情報を差し引いた値をデータサイズ情報生成部277で保持する。   At this time, the data size information generation unit 277 holds a value obtained by subtracting the transmission update subprogram storage information from the address (entry including the end code + 1 entry).

図9のような最新バージョン情報の場合、サブプログラムb、c、eのエントリを書込み、図13に示す送信オリジナルサブプログラム格納情報が生成される。   In the case of the latest version information as shown in FIG. 9, the entries of the subprograms b, c and e are written, and the transmission original subprogram storage information shown in FIG. 13 is generated.

次に、分岐先調整情報生成部275が、送信分岐先調整情報を生成する(S407)。   Next, the branch destination adjustment information generation unit 275 generates transmission branch destination adjustment information (S407).

具体的には、分岐先調整情報生成部275は、最新バージョン情報2912のエントリと応答バージョン情報2812のエントリとを順次比較する。両者のサブプログラムバージョンが一致する場合、相互に対応する応答バージョンサブプログラム2811と最新バージョンサブプログラム2911とを比較し差分を抽出する。差分がある場合、比較したサブプログラム名、差分が発生したオフセットアドレス、オフセットアドレスにおける最新バージョンサブプログラムの値を送信データ格納領域282に送信分岐先調整情報2823(図14)として書き込む。それ以外のケースでは、書込み処理を行わない。   Specifically, the branch destination adjustment information generation unit 275 sequentially compares the entry of the latest version information 2912 and the entry of the response version information 2812. When both subprogram versions match, the response version subprogram 2811 and the latest version subprogram 2911 corresponding to each other are compared to extract a difference. If there is a difference, the name of the compared subprogram, the offset address where the difference occurred, and the value of the latest version subprogram at the offset address are written in the transmission data storage area 282 as transmission branch destination adjustment information 2823 (FIG. 14). In other cases, the writing process is not performed.

すべてのエントリについて処理を終えると、送信分岐先調整情報に終了コードを含むエントリを書き込む。   When processing is completed for all entries, an entry including an end code is written in the transmission branch destination adjustment information.

また、このとき、(終了コードを含むエントリ+1エントリ)のアドレスから送信オリジナルサブプログラム格納情報を差し引いた値をデータサイズ情報生成部277で保持する。   At this time, the data size information generation unit 277 holds a value obtained by subtracting the transmission original subprogram storage information from the address of (entry including the end code + 1 entry).

図9に示す最新バージョン情報及び図11に示す応答バージョン情報の場合、図14に示す送信分岐先調整情報が生成される。   In the case of the latest version information shown in FIG. 9 and the response version information shown in FIG. 11, the transmission branch destination adjustment information shown in FIG. 14 is generated.

次に、データサイズ情報生成部277が送信データサイズ情報を生成する(S408)。   Next, the data size information generation unit 277 generates transmission data size information (S408).

具体的には、送信オリジナルサブプログラム格納情報のデータサイズを示す送信オリジナルサブプログラム格納情報エントリと、送信更新サブプログラム格納情報のデータサイズを示す送信更新サブプログラム格納情報エントリと、送信分岐先調整情報のデータサイズを示す送信分岐先調整情報エントリと、送信サブプログラムのデータサイズを示す送信サブプログラムエントリと、送信データサイズ情報自身のデータサイズを示す送信データサイズ情報エントリとを含む送信データサイズ情報を生成する。   Specifically, a transmission original subprogram storage information entry indicating the data size of transmission original subprogram storage information, a transmission update subprogram storage information entry indicating the data size of transmission update subprogram storage information, and transmission branch destination adjustment information Transmission data size information including a transmission branch destination adjustment information entry indicating the data size of the transmission data, a transmission subprogram entry indicating the data size of the transmission subprogram, and a transmission data size information entry indicating the data size of the transmission data size information itself. Generate.

送信オリジナルサブプログラム格納情報エントリは、S405においてデータサイズ情報生成部277が保持した値とする。   The transmission original subprogram storage information entry is a value held by the data size information generation unit 277 in S405.

送信更新サブプログラム格納情報エントリは、S406においてデータサイズ情報生成部277が保持した値とする。   The transmission update subprogram storage information entry is a value held by the data size information generation unit 277 in S406.

送信分岐先調整情報エントリは、S407においてデータサイズ情報生成部277が保持した値とする。   The transmission branch destination adjustment information entry is a value held by the data size information generation unit 277 in S407.

送信サブプログラムのエントリは、最新バージョン情報のエントリと応答バージョン情報のエントリとを順次比較する。サブプログラムバージョンが一致しない場合、比較したサブプログラム名、最新バージョンのサブプログラムのサイズを示すエントリを作成する。   The transmission subprogram entry sequentially compares the latest version information entry and the response version information entry. If the subprogram versions do not match, an entry indicating the compared subprogram name and the size of the latest version of the subprogram is created.

送信データサイズ情報のエントリは、(最後の送信サブプログラムエントリを書きこんだエントリ+2エントリ)のアドレスから送信データサイズ情報の先頭アドレスを差し引いた値とする。また、送信データサイズ情報エントリを書き込んだあとに終了コードを含んだエントリを書き込む。   The entry of the transmission data size information is a value obtained by subtracting the head address of the transmission data size information from the address of (entry that has written the last transmission subprogram entry + 2 entries). In addition, after the transmission data size information entry is written, an entry including the end code is written.

以上により送信修正テーブル生成処理(S351)が終了すると、送信データ格納領域282に送信修正テーブル2820が格納される。   When the transmission correction table generation process (S351) is completed as described above, the transmission correction table 2820 is stored in the transmission data storage area 282.

その後、送信サブプログラム特定部276が送信サブプログラムを特定する(S352)。   Thereafter, the transmission subprogram specifying unit 276 specifies the transmission subprogram (S352).

具体的には、送信サブプログラム特定部276は、各サブプログラムについて最新バージョン情報2912のバージョンフィールドと応答バージョン情報2812のバージョンフィールドを比較する。両者が一致しないサブプログラムは情報処理装置1が未保有(未受信)の更新サブプログラムであり、送信サブプログラム特定部276は当該サブプログラムについて最新バージョン関連情報格納領域291から最新バージョンサブプログラム2911を読み出し送信データ格納領域282に送信サブプログラム2825として格納する。   Specifically, the transmission subprogram specifying unit 276 compares the version field of the latest version information 2912 and the version field of the response version information 2812 for each subprogram. The subprograms that do not match are update subprograms that the information processing apparatus 1 does not own (not receive), and the transmission subprogram specifying unit 276 obtains the latest version subprogram 2911 from the latest version related information storage area 291 for the subprogram. The read transmission data storage area 282 is stored as a transmission subprogram 2825.

図9に示す最新バージョン情報及び図11に示す応答バージョン情報の場合は、サブプログラムbとeがバージョンが一致していないので、図7に示すように、最新バージョンサブプログラムbと最新バージョンサブプログラムeが送信データ格納領域282に格納される。   In the case of the latest version information shown in FIG. 9 and the response version information shown in FIG. 11, since the versions of the subprograms b and e do not match, the latest version subprogram b and the latest version subprogram as shown in FIG. e is stored in the transmission data storage area 282.

これにより、送信データが全て送信データ格納領域282に格納されたことになる。   As a result, all the transmission data is stored in the transmission data storage area 282.

その後、送信データ送信処理部278が送信データ格納領域282に格納された送信データを通信制御装置26を介して情報処理装置1に送信する(S353)。   Thereafter, the transmission data transmission processing unit 278 transmits the transmission data stored in the transmission data storage area 282 to the information processing apparatus 1 via the communication control apparatus 26 (S353).

次に、情報処理装置1では、送信データ受信処理部1312が通信制御装置16を介して管理装置2からの送信データを受信し(S354)、受信した送信データをRAM15の受信データ格納領域153に格納し、受信データとする(S355)。   Next, in the information processing apparatus 1, the transmission data reception processing unit 1312 receives transmission data from the management apparatus 2 via the communication control apparatus 16 (S 354), and the received transmission data is stored in the reception data storage area 153 of the RAM 15. Stored and used as received data (S355).

なお、この時点では、受信データ格納領域153には複製セクタ格納情報1531は格納されておらず、複製セクタ格納情報1531以外の受信データサイズ情報1532、受信オリジナルサブプログラム格納情報1533、受信更新サブプログラム格納情報1534、受信分岐先調整情報1535が受信データ格納領域153に格納されている。   At this time, the received data storage area 153 does not store the duplicate sector storage information 1531, and the received data size information 1532 other than the duplicate sector storage information 1531, the received original subprogram storage information 1533, the received update subprogram Storage information 1534 and reception branch destination adjustment information 1535 are stored in the reception data storage area 153.

次に、情報処理装置1はステップS355の新修正テーブル生成処理を行う。   Next, the information processing apparatus 1 performs a new correction table generation process in step S355.

以下、図20を参照して新修正テーブル生成処理を説明する。   Hereinafter, the new correction table generation process will be described with reference to FIG.

先ず、サブプログラム格納領域指定部1313が複製セクタ格納情報を生成する(S411)。   First, the subprogram storage area designating unit 1313 generates duplicate sector storage information (S411).

具体的には、サブプログラム格納領域指定部1313は、フラッシュメモリ14の修正テーブル格納領域141に格納されているセクタ格納情報1414をRAM15の受信データ格納領域153に複製セクタ格納情報1531としてコピーする。なお、これらセクタ格納情報1414、複製セクタ格納情報1531は、前回の送信データ受信時に作成された情報であり、今回受信した受信データに対応したセクタ格納情報ではない。セクタ格納情報1414及び複製セクタ格納情報1531の例を図15に示す。   Specifically, the subprogram storage area designating unit 1313 copies the sector storage information 1414 stored in the correction table storage area 141 of the flash memory 14 to the reception data storage area 153 of the RAM 15 as the duplicate sector storage information 1531. The sector storage information 1414 and the duplicate sector storage information 1531 are information created at the time of the previous transmission data reception, and are not the sector storage information corresponding to the reception data received this time. Examples of the sector storage information 1414 and the duplicate sector storage information 1531 are shown in FIG.

次に、サブプログラム格納領域指定部1313は、修正情報RAM格納情報を生成する(S412)。   Next, the subprogram storage area designating unit 1313 generates correction information RAM storage information (S412).

具体的には、サブプログラム格納領域指定部1313は、受信データサイズ情報1532を1エントリ読出し、基準アドレスを加算する。算出された値をRAM格納アドレスとして修正情報RAM格納情報152に書きこむ。受信データサイズ情報1532にある所定のエントリ(送信オリジナルサブプログラム格納情報エントリ、送信更新サブプログラム格納情報エントリ、送信分岐先調整情報エントリ、送信サブプログラムエントリ)について処理を終えるとセクタ退避領域0、1のエントリ、終了コードを含むエントリを書きこむ(図16)。   Specifically, the subprogram storage area designating unit 1313 reads one entry of the received data size information 1532 and adds the reference address. The calculated value is written in the correction information RAM storage information 152 as a RAM storage address. When processing is completed for predetermined entries (transmission original subprogram storage information entry, transmission update subprogram storage information entry, transmission branch destination adjustment information entry, transmission subprogram entry) in reception data size information 1532, sector save areas 0, 1 And the entry including the end code are written (FIG. 16).

次に、サブプログラム格納領域指定部1313は、新修正テーブルを生成する(S413)。   Next, the subprogram storage area designating unit 1313 generates a new correction table (S413).

具体的には、サブプログラム格納領域指定部1313は、修正情報RAM格納情報からRAM格納アドレスとサイズを取得することで以下の情報を新修正テーブル格納領域154に書きこむ。
1)受信オリジナルサブプログラム格納情報1533→新オリジナルサブプログラム格納情報1542
2)受信更新サブプログラム格納情報1534→新更新サブプログラム格納情報1543
3)受信分岐先調整情報1535→新分岐先調整情報1544
つまり、以下の手順にて新修正テーブル生成は生成される。
(1) サブプログラム格納領域指定部は生成する新修正テーブルを格納する領域のアドレスをセットするために、修正情報RAM格納情報の新修正テーブルセクタエントリを読み出す。読み出したアドレスに、固定値を加算し、新修正テーブルにおける更新サブプログラム格納情報/分岐先調整情報の格納する先頭アドレスも算出/保存しておく。
(2) サブプログラム格納領域指定部は、オリジナルサブプログラム格納情報が格納されている先頭アドレスとサイズをセットするために、修正情報RAM格納情報のオリジナルサブプログラム格納情報エントリーを読みだす。
(3) サブプログラム格納領域指定部は、(2)でセットした先頭アドレスからセットされたサイズ分だけ(1)でセットされたアドレスにコピーする。
(4) サブプログラム格納領域指定部は、更新サブプログラム格納情報が格納されている先頭アドレスとサイズをセットするために、更新サブプログラム格納情報エントリーを読みだす。
(5) サブプログラム格納領域指定部は、(4)でセットされた先頭アドレスからセットされたサイズ分だけ(1)でセットされた新修正テーブルにおける更新サブプログラム格納情報のアドレスにコピーする。
(6) サブプログラム格納領域指定部は、分岐先調整情報エントリーを読みだす。分岐先調整情報が格納されている先頭アドレスとサイズをセットする。
(7) サブプログラム格納領域指定部は、セットされた先頭アドレスからセットされたサイズ分だけ(1)でセットされた新修正テーブルにおける分岐先調整情報のアドレスにコピーする。
Specifically, the subprogram storage area specifying unit 1313 writes the following information in the new correction table storage area 154 by acquiring the RAM storage address and size from the correction information RAM storage information.
1) Received original subprogram storage information 1533 → New original subprogram storage information 1542
2) Received update subprogram storage information 1534 → new update subprogram storage information 1543
3) Reception branch destination adjustment information 1535 → new branch destination adjustment information 1544
That is, the new correction table generation is generated by the following procedure.
(1) The subprogram storage area designating unit reads the new modification table sector entry of the modification information RAM storage information in order to set the address of the area for storing the new modification table to be generated. A fixed value is added to the read address, and the start address for storing the updated subprogram storage information / branch destination adjustment information in the new correction table is also calculated / saved.
(2) The subprogram storage area designating unit reads the original subprogram storage information entry of the correction information RAM storage information in order to set the start address and size in which the original subprogram storage information is stored.
(3) The subprogram storage area designating unit copies to the address set in (1) by the size set from the start address set in (2).
(4) The subprogram storage area designating unit reads the update subprogram storage information entry in order to set the start address and size in which the updated subprogram storage information is stored.
(5) The subprogram storage area designating unit copies to the address of the updated subprogram storage information in the new modification table set in (1) by the size set from the start address set in (4).
(6) The subprogram storage area designating unit reads the branch destination adjustment information entry. Set the start address and size where branch destination adjustment information is stored.
(7) The subprogram storage area designating part copies from the set start address to the address of the branch destination adjustment information in the new correction table set in (1) by the set size.

次に、サブプログラム格納領域指定部1313は、新セクタ格納情報を生成する(S414)。   Next, the subprogram storage area designating unit 1313 generates new sector storage information (S414).

具体的には、サブプログラム格納領域指定部1313は、セクタ格納情報開始アドレスを新修正テーブル格納領域154の最後のアドレスに書きこむ。続いて複製セクタ格納情報1531(図15)と受信データサイズ情報1532から新セクタ格納情報1541を生成し、新修正テーブル格納領域154に格納する。   Specifically, the subprogram storage area designating unit 1313 writes the sector storage information start address at the last address of the new correction table storage area 154. Subsequently, new sector storage information 1541 is generated from the duplicate sector storage information 1531 (FIG. 15) and the received data size information 1532 and stored in the new correction table storage area 154.

新セクタ格納情報の生成手順としては、まず、複製セクタ格納情報を受信データサイズ情報と比較する。サブプログラム名が一致した場合、複製セクタ格納情報(サイズフィールド)を変更する必要が発生する。複製セクタ格納情報のサイズレコードを受信データサイズ情報のサイズレコードに置き換える。残っているセクタ容量と調整し、分割が必要なときは分割処理をして新セクタ格納情報として修正テーブル格納領域に格納する。サブプログラム名が一致しない場合、複製セクタ格納情報のエントリーを新セクタ格納情報として修正テーブル格納領域に格納する。   As a procedure for generating new sector storage information, first, copy sector storage information is compared with received data size information. If the subprogram names match, it is necessary to change the duplicate sector storage information (size field). Replace the size record of the duplicate sector storage information with the size record of the received data size information. It is adjusted with the remaining sector capacity. When division is necessary, division processing is performed and the new sector storage information is stored in the correction table storage area. If the subprogram names do not match, the entry of the duplicate sector storage information is stored in the correction table storage area as new sector storage information.

新セクタ格納情報1541の例を図17に示す。   An example of the new sector storage information 1541 is shown in FIG.

図17に示すように、新セクタ格納情報1541は、フラッシュメモリのセクタごとにそれぞれのセクタにおけるセクタデータの内容(更新サブプログラムの格納内容)を示す情報であり、サブプログラム格納領域指定部1313は、新セクタ格納情報1541を生成することにより、フラッシュメモリのセクタごとに更新サブプログラムの格納内容(セクタデータ)を指定している。   As shown in FIG. 17, the new sector storage information 1541 is information indicating the contents of sector data in each sector (stored contents of the updated subprogram) for each sector of the flash memory. By generating new sector storage information 1541, the storage contents (sector data) of the update subprogram are designated for each sector of the flash memory.

以上により新修正テーブル生成処理(S355)が終了したら、情報処理装置1は次にフラッシュメモリ書換処理(S356)を行う。   When the new correction table generation processing (S355) is completed as described above, the information processing apparatus 1 next performs flash memory rewriting processing (S356).

以下、図21を参照してフラッシュメモリ書換処理を説明する。   Hereinafter, the flash memory rewriting process will be described with reference to FIG.

フラッシュメモリ書換処理(S356)では、サブプログラム書込処理部1314が以下手順によりフラッシュメモリセクタを書きかえる。
1)新セクタ格納情報エントリを読み出す(S421)。
2)フラッシュメモリセクタのデータを退避する(S422)。
3)フラッシュメモリセクタを消去する(S423)。
4)サブプログラムを置きかえるか判定をする(S424)。
In the flash memory rewriting process (S356), the subprogram write processing unit 1314 rewrites the flash memory sector according to the following procedure.
1) A new sector storage information entry is read (S421).
2) The data in the flash memory sector is saved (S422).
3) The flash memory sector is erased (S423).
4) It is determined whether to replace the subprogram (S424).

このS424の判定は、読み込んだ新セクタ格納情報のエントリからサブプログラム名を抽出し、受信データサイズ情報のサブプログラム名と比較し、両者が一致すれば置き換えを実施する。
5)ステップS424でYesならば、受信サブプログラムからフラッシュメモリにコピーする(S425)。
6)ステップS424でNoならば、退避したデータからフラッシュメモリにコピーする(S426)。
7)そして、指定されたセクタにサブプログラムが収まったかを判定する(S427)。
8)ステップS427でNoの場合は、ステップS421に戻り、処理を繰り返す。
9)ステップS427でYesの場合は、同セクタに別のサブプログラムがはいるかを判定する(S428)。
10)ステップS428でYesの場合は、ステップS424に戻り、処理を繰り返す。
11)ステップS428でNoの場合は、ステップS421に戻り、処理を繰り返す。
In the determination of S424, the subprogram name is extracted from the read entry of the new sector storage information, compared with the subprogram name of the received data size information, and if both match, replacement is performed.
5) If Yes in step S424, the received subprogram is copied to the flash memory (S425).
6) If No in step S424, the saved data is copied to the flash memory (S426).
7) Then, it is determined whether or not the subprogram is contained in the designated sector (S427).
8) If No in step S427, the process returns to step S421 and the process is repeated.
9) If Yes in step S427, it is determined whether another subprogram is in the same sector (S428).
10) If Yes in step S428, return to step S424 and repeat the process.
11) If No in step S428, return to step S421 and repeat the process.

受信サブプログラムのセクタデータ生成の手順としては、まず、受信データサイズ情報と新セクタ格納情報を比較することでフラッシュメモリに格納されているサブプログラム、若しくは受信サブプログラムのいずれかを使うかを判定する。   The procedure for generating the sector data for the reception subprogram is to determine whether to use the subprogram stored in the flash memory or the reception subprogram by comparing the received data size information with the new sector storage information. To do.

フラッシュメモリに格納されているサブプログラムを、書きこむ場合には、セクタを消去する前に退避した領域から新セクタ格納情報に示されているサイズ分をフラッシュメモリにコピーする(データを生成するわけではない)。   When writing a subprogram stored in the flash memory, copy the size indicated in the new sector storage information from the area saved before erasing the sector to the flash memory. is not).

受信サブプログラムを書きこむ場合は、受信データ格納領域から新セクタ格納情報に示されているサイズ分をフラッシュメモリにコピーする(データを生成するわけではない)。   When writing the reception subprogram, the size indicated in the new sector storage information is copied from the reception data storage area to the flash memory (data is not generated).

なおフラッシュメモリは書換え前に消去オペレーションが必須になる。   The flash memory must be erased before rewriting.

なお、新オリジナルサブプログラム格納情報、新更新サブプログラム格納情報、新分岐先調整情報をフラッシュメモリに格納する処理は、サブプログラムのフラッシュメモリ書換えの前に実施する。   The process of storing the new original subprogram storage information, the newly updated subprogram storage information, and the new branch destination adjustment information in the flash memory is performed before the flash memory rewriting of the subprogram.

新オリジナルサブプログラム格納情報、新更新サブプログラム格納情報、新分岐先調整情報、新セクタ格納情報は新修正テーブルになっている。修正テーブルは、フラッシュメモリでは修正テーブルセクタとして固定したセクタにわりあてる。RAM上の新修正テーブル格納領域にあるデータをすべて修正テーブルセクタに格納する。   The new original subprogram storage information, the new updated subprogram storage information, the new branch destination adjustment information, and the new sector storage information are a new correction table. The correction table is assigned to a fixed sector as a correction table sector in the flash memory. All the data in the new correction table storage area on the RAM is stored in the correction table sector.

以上により、フラッシュメモリ書換処理(S356)が終了すると、プログラムバージョン情報生成部1316が更新後のサブプログラムについてのプログラムバージョン情報を生成し、機種コード/バージョン格納領域143に格納する(S357)。   As described above, when the flash memory rewriting process (S356) ends, the program version information generation unit 1316 generates program version information for the updated subprogram and stores it in the model code / version storage area 143 (S357).

プログラムバージョン情報の生成手順は、以下の通りである。   The procedure for generating the program version information is as follows.

管理装置から受信した更新コマンドを情報処理装置1のRAM上に保存する。フラッシュメモリにサブプログラムを書き込んだあとにプログラムバージョン情報生成部がRAMに保存された更新コマンドから機種コード/プログラムバージョン情報を抽出し、フラッシュメモリの固定番地に書きこむ。   The update command received from the management apparatus is stored on the RAM of the information processing apparatus 1. After the subprogram is written in the flash memory, the program version information generation unit extracts the model code / program version information from the update command stored in the RAM and writes it in the fixed address of the flash memory.

そして、最後に、リセット指示部1315が、12にリセット信号を有意にするように指示する(S358)。   Finally, the reset instruction unit 1315 instructs 12 to make the reset signal significant (S358).

以上により更新サブプログラム格納領域142の更新サブプログラムが新たな更新サブプログラムに書換えられ、以降、情報処理装置1がプログラムの実行を行う際には、実施の形態1に示した手順にてプログラムの実行を行うことができる。   As described above, the update subprogram in the update subprogram storage area 142 is rewritten to a new update subprogram. Thereafter, when the information processing apparatus 1 executes the program, the program is executed according to the procedure described in the first embodiment. Execution can be performed.

このように本実施の形態によれば、情報処理装置における書換えが必要な更新サブプログラムのみ送信するため、管理装置と情報処理装置の通信時間を短縮できる。   As described above, according to the present embodiment, since only the update subprogram that needs to be rewritten in the information processing apparatus is transmitted, the communication time between the management apparatus and the information processing apparatus can be shortened.

また、更新サブプログラムのフラッシュメモリ格納領域が示された送信更新サブプログラム格納情報を管理装置から情報処理装置に送信するため、書換え用プログラムを生成・送付することなく情報処理装置のフラッシュメモリを書きかえることができる。   In addition, since the transmission update subprogram storage information indicating the flash memory storage area of the update subprogram is transmitted from the management apparatus to the information processing apparatus, the flash memory of the information processing apparatus can be written without generating or sending a rewrite program. It can be changed.

実施の形態3.
実施の形態2では、情報処理装置1のフラッシュメモリに書きこむセクタデータ(オリジナルサブプログラム格納情報、更新サブプログラム情報、サブプログラム等のセクタデータ)を情報処理装置1で生成していた。
Embodiment 3 FIG.
In the second embodiment, sector data (sector data such as original subprogram storage information, updated subprogram information, and subprograms) to be written in the flash memory of the information processing apparatus 1 is generated by the information processing apparatus 1.

ところで、管理装置2は情報処理装置1よりも性能が高いことが多い。したがって、処理の一部を管理装置2に移すことでシステム全体として処理の高速化が図れる。   Incidentally, the management device 2 often has higher performance than the information processing device 1. Therefore, a part of the processing can be transferred to the management apparatus 2 so that the processing speed of the entire system can be increased.

このため、本実施の形態では、フラッシュメモリに書きこむセクタデータを管理装置2で生成することで更新処理速度を高める例について説明する。   Therefore, in the present embodiment, an example will be described in which the management apparatus 2 generates sector data to be written in the flash memory to increase the update processing speed.

先ず、本実施の形態に係る情報処理装置1及び管理装置2の動作を概説する。   First, the operation of the information processing apparatus 1 and the management apparatus 2 according to the present embodiment will be outlined.

管理装置2は、実施の形態2に示した手順にて、送信オリジナルサブプログラム格納情報、送信更新サブプログラム格納情報、送信分岐先調整情報を生成する。   The management device 2 generates transmission original subprogram storage information, transmission update subprogram storage information, and transmission branch destination adjustment information according to the procedure shown in the second embodiment.

その後、管理装置2は、所定の送信セクタデータ格納情報を生成し、生成した送信セクタデータ格納情報に基づいて情報処理装置1に送信すべき送信サブプログラムを特定する。   Thereafter, the management device 2 generates predetermined transmission sector data storage information, and specifies a transmission subprogram to be transmitted to the information processing device 1 based on the generated transmission sector data storage information.

また、送信オリジナルサブプログラム格納情報、送信更新サブプログラム格納情報、送信分岐先調整情報を情報処理装置1のフラッシュメモリのセクタごとに分割して送信修正テーブルセクタデータとし、また送信サブプログラムをセクタごとに分割して送信セクタデータとし、送信修正テーブルセクタデータ、送信セクタデータ、及び送信セクタデータ格納情報を情報処理装置へ送信する。   The transmission original subprogram storage information, transmission update subprogram storage information, and transmission branch destination adjustment information are divided into sectors of the flash memory of the information processing apparatus 1 as transmission correction table sector data. The transmission correction table sector data, the transmission sector data, and the transmission sector data storage information are transmitted to the information processing apparatus.

情報処理装置1は、受信した送信セクタデータ格納情報に基づき送信修正テーブルセクタデータと送信セクタデータでフラッシュメモリに格納されているセクタデータおよび修正テーブルセクタデータを置換する。   The information processing apparatus 1 replaces the sector data stored in the flash memory and the correction table sector data with the transmission correction table sector data and the transmission sector data based on the received transmission sector data storage information.

本実施の形態はセクタデータおよびセクタデータ格納情報に関するものである。そのもととなる送信オリジナルサブプログラム格納情報、送信更新サブプログラム格納情報、送信分岐先調整情報は実施の形態2と同じものである。したがって送信分岐先調整情報生成までの手順は実施の形態2と同様に実施する。   This embodiment relates to sector data and sector data storage information. The transmission original subprogram storage information, transmission update subprogram storage information, and transmission branch destination adjustment information that are the basis thereof are the same as those in the second embodiment. Therefore, the procedure up to the generation of the transmission branch destination adjustment information is performed in the same manner as in the second embodiment.

図22は、本実施の形態に係る管理装置2の構成を示す。   FIG. 22 shows a configuration of the management apparatus 2 according to the present embodiment.

図22において、21〜26の要素は、実施の形態2で示したものと同様であるが、機種/情報処理装置DB25が格納している機種/情報処理装置情報には、機種ごとに情報処理装置の通信ID(例えば、IPアドレス)を示す情報のほかに、機種ごとに情報処理装置に搭載されているフラッシュメモリのセクタサイズの情報も含まれている。   In FIG. 22, the elements 21 to 26 are the same as those shown in the second embodiment, but the model / information processing apparatus information stored in the model / information processing apparatus DB 25 includes information processing for each model. In addition to information indicating the communication ID (for example, IP address) of the apparatus, information on the sector size of the flash memory mounted on the information processing apparatus for each model is also included.

RAM(1)27では、実施の形態2で示した送信サブプログラム特定部276を除外するとともにセクタデータ格納情報生成部279及びセクタデータ生成部280を追加している。セクタデータ格納情報生成部279及びセクタデータ生成部280以外の要素は、実施の形態2で示したものと同様である。   In the RAM (1) 27, the transmission subprogram specifying unit 276 shown in the second embodiment is excluded and a sector data storage information generation unit 279 and a sector data generation unit 280 are added. Elements other than the sector data storage information generation unit 279 and the sector data generation unit 280 are the same as those described in the second embodiment.

セクタデータ格納情報生成部279は、送信セクタデータ格納情報2826を生成し、RAM(2)の送信データ格納領域282に格納する。   The sector data storage information generation unit 279 generates transmission sector data storage information 2826 and stores it in the transmission data storage area 282 of the RAM (2).

セクタデータ生成部280は、RAM(2)の送信データ格納領域282に格納されている送信オリジナルサブプログラム格納情報2821、送信更新サブプログラム格納情報2822、送信分岐先調整情報2823を情報処理装置1のフラッシュメモリのセクタ単位で分割してセクタデータを生成するとともに、これらのセクタデータを結合し、送信データ格納領域282に送信修正テーブルセクタデータ2828として格納する。また、送信セクタデータ格納情報2826に基づき情報処理装置1に送信すべき更新サブプログラムを特定するとともに、特定した更新サブプログラムをセクタ単位で分割してセクタデータとし、送信データ格納領域282に送信セクタデータ2829として格納する。なお、セクタデータ生成部280は、機種/情報処理装置DB25に格納されている機種/情報処理装置情報を参照して情報処理装置1のフラッシュメモリのセクタサイズを特定し、セクタデータの生成を行なう。   The sector data generation unit 280 stores transmission original subprogram storage information 2821, transmission update subprogram storage information 2822, and transmission branch destination adjustment information 2823 stored in the transmission data storage area 282 of the RAM (2) of the information processing apparatus 1. Sector data is generated by dividing the flash memory in units of sectors, and these sector data are combined and stored in the transmission data storage area 282 as transmission correction table sector data 2828. Further, the update subprogram to be transmitted to the information processing apparatus 1 is specified based on the transmission sector data storage information 2826, and the specified update subprogram is divided into sector data to be sector data, and the transmission sector is stored in the transmission data storage area 282. Stored as data 2829. The sector data generation unit 280 identifies the sector size of the flash memory of the information processing apparatus 1 with reference to the model / information processing apparatus information stored in the model / information processing apparatus DB 25, and generates sector data. .

RAM(2)28は、送信データ格納領域282に、送信セクタデータ格納情報2826と、送信修正テーブルセクタデータ2828及び送信セクタデータ2829から構成される送信セクタデータ群2827を格納する。   The RAM (2) 28 stores transmission sector data storage information 2826, a transmission sector data group 2827 including transmission correction table sector data 2828 and transmission sector data 2829 in the transmission data storage area 282.

また、RAM(3)29は、セクタ格納情報格納領域292に、最新バージョンセクタデータ格納情報2921及び応答バージョンセクタデータ格納情報2922を格納する。   The RAM (3) 29 stores the latest version sector data storage information 2921 and the response version sector data storage information 2922 in the sector storage information storage area 292.

次に、図23に本実施の形態に係る情報処理装置1の構成を示す。   Next, FIG. 23 shows a configuration of the information processing apparatus 1 according to the present embodiment.

ROM13では、実施の形態2の構成から、サブプログラム格納領域指定部1313を除いた構成となっている。   The ROM 13 has a configuration in which the subprogram storage area designation unit 1313 is excluded from the configuration of the second embodiment.

なお、図23では図示を省略しているが、本実施の形態に係る情報処理装置1も図1に示した131〜136の要素をROM13に保有しており、プログラムの実行時には、これら131〜136の各要素を用いて実施の形態1で示した動作を行う。   Although not shown in FIG. 23, the information processing apparatus 1 according to the present embodiment also has the elements 131 to 136 shown in FIG. 1 in the ROM 13. The operation shown in the first embodiment is performed using each element 136.

また、フラッシュメモリ14では、実施の形態2で示した修正テーブル格納領域141及び更新サブプログラム格納領域142の代わりにセクタデータ格納領域が存在している。   In the flash memory 14, a sector data storage area exists instead of the correction table storage area 141 and the update subprogram storage area 142 described in the second embodiment.

セクタデータ格納領域には、修正テーブルセクタデータ1461及びセクタデータ1462から構成される。修正テーブルセクタデータ1461は、実施の形態2で示したオリジナルサブプログラム格納情報1411、更新サブプログラム格納情報1412、分岐先調整情報1413のセクタデータである。また、セクタデータ1462は、実施の形態2で示した更新サブプログラムのセクタデータである。   The sector data storage area includes correction table sector data 1461 and sector data 1462. The correction table sector data 1461 is sector data of the original subprogram storage information 1411, the updated subprogram storage information 1412, and the branch destination adjustment information 1413 described in the second embodiment. The sector data 1462 is sector data of the update subprogram shown in the second embodiment.

なお、図22のセクタデータ格納領域146に格納されている情報(修正テーブルセクタデータ1461、セクタデータ1462)は、後述する図24の処理が行なわれる前の情報、すなわち、前回の更新時の情報である。   Note that the information (correction table sector data 1461 and sector data 1462) stored in the sector data storage area 146 of FIG. 22 is information before the processing of FIG. 24 described later, that is, information at the time of the previous update. It is.

また、RAM15では、受信データ格納領域156に受信セクタデータ格納情報1561、受信修正テーブルセクタデータ1563と受信セクタデータ1564から構成される受信セクタデータ群1562が格納される。   In the RAM 15, a reception sector data group 1562 including reception sector data storage information 1561, reception correction table sector data 1563 and reception sector data 1564 is stored in the reception data storage area 156.

これら受信セクタデータ格納情報1561及び受信セクタデータ群1562は、管理装置2から送信された送信セクタデータ格納情報2826及び送信セクタデータ群2827であり、通信制御装置16を介して送信データ受信処理部1312に受信され、送信データ受信処理部1312により受信データ格納領域156に格納された情報である。   The reception sector data storage information 1561 and the reception sector data group 1562 are the transmission sector data storage information 2826 and the transmission sector data group 2827 transmitted from the management device 2, and the transmission data reception processing unit 1312 is transmitted via the communication control device 16. Received by the transmission data reception processing unit 1312 and stored in the reception data storage area 156.

次に、図24を参照して本実施の形態に係る情報処理装置1と管理装置2の動作を説明する。   Next, operations of the information processing apparatus 1 and the management apparatus 2 according to the present embodiment will be described with reference to FIG.

図24のステップS361〜S371は、図18に示したS341〜S351と同様であり、説明を省略する。   Steps S361 to S371 in FIG. 24 are the same as S341 to S351 shown in FIG.

S371までの処理が終了した後、管理装置2が、次の手順で送信セクタデータ群2827と送信セクタデータ格納情報2826を生成する(S372)。   After the processing up to S371 is completed, the management apparatus 2 generates a transmission sector data group 2827 and transmission sector data storage information 2826 according to the following procedure (S372).

まず、送信セクタデータ格納情報2826を生成するために、最新バージョンセクタデータ格納情報2921と応答バージョンセクタデータ格納情報2922を生成する。セクタデータ格納情報生成部279が、最新バージョン情報2912から必要なデータを抽出、並び替えを行った後、フラッシュメモリのセクタサイズ毎に分割することで最新バージョンセクタデータ格納情報2921を生成する。同様に応答バージョン情報2812から応答バージョンセクタデータ格納情報2922を生成する。   First, in order to generate the transmission sector data storage information 2826, the latest version sector data storage information 2921 and the response version sector data storage information 2922 are generated. The sector data storage information generation unit 279 generates the latest version sector data storage information 2921 by extracting and rearranging necessary data from the latest version information 2912 and then dividing the data by sector size of the flash memory. Similarly, response version sector data storage information 2922 is generated from response version information 2812.

具体的には、応答バージョンセクタデータ格納情報は以下の手順にて生成される。
(1) バージョン1.0以外のエントリーからサブプログラム名、プログラムサイズ、プログラムバージョンのフィールドを抽出する。
(2) バージョンの古い順に並び変える。
(3) プログラムサイズがセクタのサイズより大きければエントリーを分割し、セクタ番号を付加する。
Specifically, the response version sector data storage information is generated by the following procedure.
(1) Extract subprogram name, program size, and program version fields from entries other than version 1.0.
(2) Rearrange in order of older version.
(3) If the program size is larger than the sector size, the entry is divided and a sector number is added.

また、最新バージョンセクタデータ格納情報は以下の手順にて生成される。
(1) バージョン1.0以外のエントリーをセクタ番号、サブプログラム名、プログラムサイズ、プログラムバージョンのフィールドを抽出する。
(2) 応答バージョンセクタデータ格納情報にエントリーがあるサブプログラムは順番を合わせ、エントリーがなければバージョンの古い順に並び替える。
(3) プログラムサイズがセクタのサイズより大きければエントリーを分割し、セクタ番号を付加する。
The latest version sector data storage information is generated by the following procedure.
(1) Extract entries other than version 1.0 from sector number, subprogram name, program size, and program version fields.
(2) The sub-programs with entries in the response version sector data storage information are matched in order, and if there is no entry, they are rearranged in order of oldest version.
(3) If the program size is larger than the sector size, the entry is divided and a sector number is added.

本実施の形態に係る最新バージョンセクタデータ格納情報2921の例を図25に、また、本実施の形態に係る応答バージョンセクタデータ格納情報2922の例を図26に示す。   An example of the latest version sector data storage information 2921 according to the present embodiment is shown in FIG. 25, and an example of the response version sector data storage information 2922 according to the present embodiment is shown in FIG.

また、セクタデータ格納情報生成部279は、最新バージョンセクタデータ格納情報2921と応答バージョンセクタデータ格納情報2922を比較しサブプログラムバージョンが一致しないものを抽出することで送信セクタデータ格納情報2826を生成し、送信データ格納領域282に格納する。   Further, the sector data storage information generation unit 279 generates the transmission sector data storage information 2826 by comparing the latest version sector data storage information 2921 and the response version sector data storage information 2922 and extracting the subprogram versions that do not match. And stored in the transmission data storage area 282.

具体的には、送信セクタデータ格納情報は、以下の手順にて生成される。
(1) 最新バージョンセクタデータ格納情報を応答バージョンセクタ格納情報と比較する。
(2) 最新バージョンセクタデータ格納情報エントリーからサブプログラム名、プログラムバージョン、プログラムサイズが応答バージョンセクタ格納情報と一致しないものを抽出する。
(3) 抽出したエントリーを送信セクタデータ格納情報として格納する。
Specifically, the transmission sector data storage information is generated by the following procedure.
(1) The latest version sector data storage information is compared with the response version sector storage information.
(2) Extract the latest version sector data storage information entry whose subprogram name, program version, and program size do not match the response version sector storage information.
(3) Store the extracted entry as transmission sector data storage information.

図27に送信セクタデータ格納情報2826の例を示す。   FIG. 27 shows an example of transmission sector data storage information 2826.

図27では、図25の最新バージョンセクタデータ格納情報と図26の応答バージョンセクタデータ格納情報とを比較した結果、サブプログラムb、eでサブプログラムバージョンが一致していないので、図25の最新バージョンセクタデータ格納情報のサブプログラムb、eのレコードをコピーするとともに、サブプログラムバージョンフィールドを削除し、また、最新フラグフィールドを設定して送信セクタデータ格納情報を生成している。   In FIG. 27, as a result of comparing the latest version sector data storage information of FIG. 25 with the response version sector data storage information of FIG. 26, the subprogram versions do not match in subprograms b and e. The records of the subprograms b and e of the sector data storage information are copied, the subprogram version field is deleted, and the latest flag field is set to generate transmission sector data storage information.

つまり、この場合、応答バージョンサブプログラム格納情報からバージョン1.0以外のものを抽出するとサブプログラムc,eのエントリーになり、同様に最新バージョンサブプログラム格納情報からバージョン1.0以外のものを抽出するとサブプログラムb,c,eのエントリーになる。両者のエントリーを比較するとサブプログラムcは情報処理装置1にすでに格納されているものから変わっていないので、書換えは不要と判定する。したがって送信セクタデータにはサブプログラムe,bのエントリーが格納される。   That is, in this case, if a version other than version 1.0 is extracted from the response version subprogram storage information, it becomes an entry for subprograms c and e. Similarly, a version other than version 1.0 is extracted from the latest version subprogram storage information. Then, it becomes an entry of subprograms b, c, and e. When both entries are compared, since the subprogram c has not changed from that already stored in the information processing apparatus 1, it is determined that rewriting is unnecessary. Accordingly, entries of subprograms e and b are stored in the transmission sector data.

次に、セクタデータ生成部280が、送信セクタデータ2829を次の手順で生成する。   Next, the sector data generation unit 280 generates transmission sector data 2829 by the following procedure.

セクタデータ生成部280は、送信オリジナルサブプログラム格納情報2821、送信更新サブプログラム格納情報2822、送信分岐先調整情報2823をセクタ単位で分割してセクタデータとするとともに、これらセクタデータを結合して送信修正テーブルセクタデータ2828を生成し、送信データ格納領域282に格納する。この際に、セクタデータ生成部280は、機種/情報処理装置DB25に格納されている機種/情報処理装置情報を参照して情報処理装置1のフラッシュメモリのセクタサイズを特定し、送信修正テーブルセクタデータの生成を行なう。   The sector data generation unit 280 divides transmission original subprogram storage information 2821, transmission update subprogram storage information 2822, and transmission branch destination adjustment information 2823 into sector data, and combines these sector data for transmission. Correction table sector data 2828 is generated and stored in the transmission data storage area 282. At this time, the sector data generation unit 280 specifies the sector size of the flash memory of the information processing apparatus 1 with reference to the model / information processing apparatus information stored in the model / information processing apparatus DB 25, and transmits the transmission correction table sector. Generate data.

また、セクタデータ生成部280は、送信セクタデータ格納情報2826を読みとり、エントリーが存在するサブプログラムを最新バージョンサブプログラム2911を送信セクタデータ2829として送信データ格納領域282に格納する。   Further, the sector data generation unit 280 reads the transmission sector data storage information 2826 and stores the subprogram in which the entry exists in the transmission data storage area 282 as the latest version subprogram 2911 as the transmission sector data 2829.

そして、送信データ送信処理部278が、送信セクタ格納情報をもとに送信セクタデータ格納情報2826及び送信セクタデータ群2827を、通信制御装置16を介して情報処理装置1へ送信する(S373)。   Then, the transmission data transmission processing unit 278 transmits the transmission sector data storage information 2826 and the transmission sector data group 2827 to the information processing apparatus 1 via the communication control device 16 based on the transmission sector storage information (S373).

次に、情報処理装置1では、送信セクタデータの受信処理(S374)、フラッシュメモリのセクタデータの書換処理(S375)を以下の手順で行う。   Next, the information processing apparatus 1 performs transmission sector data reception processing (S374) and flash memory sector data rewrite processing (S375) in the following procedure.

送信データ受信処理部1312が、通信制御装置16を介して送信セクタデータ群および送信セクタデータ格納情報を受信し、受信データ格納領域156に受信セクタデータ格納情報1561及び受信セクタデータ群1562として格納する。   The transmission data reception processing unit 1312 receives the transmission sector data group and the transmission sector data storage information via the communication control device 16 and stores them as reception sector data storage information 1561 and reception sector data group 1562 in the reception data storage area 156. .

サブプログラム書込処理部1314が、受信セクタデータ格納情報1561で示すフラッシュメモリのセクタデータを該当する受信セクタデータと置換する。具体的には、受信修正テーブルセクタデータ1563を修正テーブルセクタデータ1461と置換する。また受信セクタデータ1564(セクタデータ11、セクタデータ12、セクタデータ13)をセクタデータ1462(セクタデータ10、セクタデータ11)と置換する。   The subprogram write processing unit 1314 replaces the sector data of the flash memory indicated by the received sector data storage information 1561 with the corresponding received sector data. Specifically, the reception correction table sector data 1563 is replaced with the correction table sector data 1461. Also, the received sector data 1564 (sector data 11, sector data 12, sector data 13) is replaced with sector data 1462 (sector data 10, sector data 11).

以上により、セクタデータ格納領域の修正テーブルセクタデータ1461及びセクタデータ1462が管理装置2より受信した受信修正テーブルセクタデータ1563及び受信セクタデータ1564に置換わる。   As described above, the correction table sector data 1461 and the sector data 1462 in the sector data storage area are replaced with the reception correction table sector data 1563 and the reception sector data 1564 received from the management apparatus 2.

次に、プログラムバージョン情報生成部1316が、実施の形態2と同様に、更新後のセクタデータについてのプログラムバージョン情報を生成し、機種コード/バージョン格納領域143に格納する(S376)。   Next, the program version information generation unit 1316 generates program version information for the updated sector data and stores it in the model code / version storage area 143 as in the second embodiment (S376).

そして、最後に、リセット指示部1315が、リセット手段12にリセット信号を有意にするように指示する(S377)。   Finally, the reset instruction unit 1315 instructs the reset means 12 to make the reset signal significant (S377).

以降、情報処理装置1がプログラムの実行を行う際には、実施の形態1に示した手順にてプログラムの実行を行うことができる。   Thereafter, when the information processing apparatus 1 executes the program, the program can be executed according to the procedure described in the first embodiment.

このように本実施の形態によれば、管理装置において修正テーブル及び更新サブプログラムをセクタデータ化するとともにセクタデータの格納情報を生成し、これらセクタデータ及びセクタデータの格納情報を情報処理装置に送信するため、情報処理装置におけるフラッシュメモリの書換処理の高速化を図ることができる。   As described above, according to the present embodiment, the management table converts the correction table and the update subprogram into sector data, generates sector data storage information, and transmits the sector data and sector data storage information to the information processing device. Therefore, the flash memory rewriting process in the information processing apparatus can be speeded up.

実施の形態1に係る情報処理装置の構成例を示す図。2 is a diagram illustrating a configuration example of an information processing device according to Embodiment 1. FIG. オリジナルサブプログラム格納情報の例を示す図。The figure which shows the example of original subprogram storage information. 更新サブプログラム格納情報の例を示す図。The figure which shows the example of update subprogram storage information. 分岐先調整情報の例を示す図。The figure which shows the example of branch destination adjustment information. 実施の形態1に係る情報処理装置の動作例を示す図。FIG. 3 illustrates an operation example of the information processing apparatus according to the first embodiment. 実施の形態2に係るシステム構成例を示す図。FIG. 4 is a diagram illustrating an example of a system configuration according to a second embodiment. 実施の形態2に係る管理装置の構成例を示す図。FIG. 4 is a diagram illustrating a configuration example of a management device according to a second embodiment. 実施の形態2に係る情報処理装置の構成例を示す図。FIG. 3 illustrates a configuration example of an information processing apparatus according to a second embodiment. 最新バージョン情報の例を示す図。The figure which shows the example of the latest version information. 更新コマンドの例を示す図。The figure which shows the example of an update command. 応答コマンドの例を示す図。The figure which shows the example of a response command. 送信オリジナルサブプログラム格納情報の例を示す図。The figure which shows the example of transmission original subprogram storage information. 送信更新サブプログラム格納情報の例を示す図。The figure which shows the example of transmission update subprogram storage information. 送信分岐先調整情報の例を示す図。The figure which shows the example of transmission branch destination adjustment information. セクタ格納情報の例を示す図。The figure which shows the example of sector storage information. 修正情報RAM格納情報の例を示す図。The figure which shows the example of correction information RAM storage information. 新セクタ格納情報の例を示す図。The figure which shows the example of new sector storage information. 実施の形態2に係る情報処理装置及び管理装置の動作例を示す図。FIG. 6 is a diagram illustrating an operation example of an information processing apparatus and a management apparatus according to Embodiment 2. 送信修正テーブル生成処理の内容を示す図。The figure which shows the content of the transmission correction table production | generation process. 新修正テーブル生成処理の内容を示す図。The figure which shows the content of the new correction table production | generation process. フラッシュメモリ書換処理の内容を示す図。The figure which shows the content of flash memory rewriting process. 実施の形態3に係る管理装置の構成例を示す図。FIG. 9 is a diagram illustrating a configuration example of a management device according to a third embodiment. 実施の形態3に係る情報装置の構成例を示す図。FIG. 10 illustrates a configuration example of an information device according to a third embodiment. 実施の形態3に係る情報処理装置及び管理装置の動作例を示す図。FIG. 10 is a diagram illustrating an operation example of an information processing apparatus and a management apparatus according to Embodiment 3. 最新バージョンセクタデータ格納情報の例を示す図。The figure which shows the example of the newest version sector data storage information. 応答バージョンセクタデータ格納情報の例を示す図。The figure which shows the example of response version sector data storage information. 送信セクタデータ格納情報の例を示す図。The figure which shows the example of transmission sector data storage information.

符号の説明Explanation of symbols

1 情報処理装置、2 管理装置、11 CPU、12 リセット手段、13
ROM、14 フラッシュメモリ、15 RAM、16 通信制御装置、21
CPU、22 ROM、23 サブプログラムDB、24 最新バージョン情報DB、25 機種/情報処理装置DB、26 通信制御装置、27 RAM(1)、28 RAM(2)、29 RAM(3)、131 H/W初期化部、132 オリジナルサブプログラム転送部、133 更新サブプログラム転送部、134 サブプログラム調整部、135 プログラム実行部、136 オリジナルサブプログラム格納領域、141 修正テーブル格納領域、142 更新サブプログラム格納領域、143 機種コード/バージョン格納領域、146 セクタデータ格納領域、151 実行プログラム格納領域、152 修正情報RAM格納情報、153 受信データ格納領域、154 新修正テーブル格納領域、155 セクタ退避領域、156 受信データ格納領域、271 サブプログラム登録部、272 最新バージョン情報生成部、273 更新問合せ部、274 格納情報生成部、275 分岐先調整情報生成部、276 送信サブプログラム特定部、277 データサイズ情報生成部、278 送信データ送信処理部、279 セクタデータ格納情報生成部、280 セクタデータ生成部、281 応答バージョン関連情報格納領域、282 送信データ格納領域、291 最新バージョン関連情報格納領域、1311 問合せ応答部、1312 送信データ受信処理部、1313 サブプログラム格納領域指定部、1314 サブプログラム書込処理部、1315 リセット指示部、1316 プログラムバージョン情報生成部、1411 オリジナルサブプログラム格納情報、1412 更新サブプログラム格納情報、1413 分岐先調整情報、1414 セクタ格納情報、1431 機種コード、1432 プログラムバージョン情報、1531 複製セクタ格納情報、1532 受信データサイズ情報、1533 受信オリジナルサブプログラム格納情報、1534 受信更新サブプログラム格納情報、1535 受信分岐先調整情報、1536 受信サブプログラム、1541 新セクタ格納情報、1542 新オリジナルサブプログラム格納情報、1543 新更新サブプログラム格納情報、1544 新分岐先調整情報、1561 受信セクタデータ格納情報、1562 受信セクタデータ群、1563 受信修正テーブルセクタデータ、1564 受信セクタデータ、2811 応答バージョンサブプログラム、2812 応答バージョン情報、2820 送信修正テーブル、2821 送信オリジナルサブプログラム格納情報、2822 送信更新サブプログラム格納情報、2823 送信分岐先調整情報、2825 送信サブプログラム、2826 送信セクタデータ格納情報、2827 送信セクタデータ群、2911 最新バージョンサブプログラム、2912 最新バージョン情報、2921 最新バージョンセクタデータ格納情報、2922 応答バージョンセクタデータ格納情報。
DESCRIPTION OF SYMBOLS 1 Information processing apparatus, 2 Management apparatus, 11 CPU, 12 Reset means, 13
ROM, 14 flash memory, 15 RAM, 16 communication control device, 21
CPU, 22 ROM, 23 subprogram DB, 24 latest version information DB, 25 model / information processing device DB, 26 communication control device, 27 RAM (1), 28 RAM (2), 29 RAM (3), 131 H / W initialization unit, 132 original subprogram transfer unit, 133 update subprogram transfer unit, 134 subprogram adjustment unit, 135 program execution unit, 136 original subprogram storage area, 141 correction table storage area, 142 update subprogram storage area, 143 Model code / version storage area, 146 Sector data storage area, 151 Execution program storage area, 152 Correction information RAM storage information, 153 Receive data storage area, 154 New correction table storage area, 155 Sector save area, 156 Receive data storage area 2 1 subprogram registration unit, 272 latest version information generation unit, 273 update inquiry unit, 274 storage information generation unit, 275 branch destination adjustment information generation unit, 276 transmission subprogram identification unit, 277 data size information generation unit, 278 transmission data transmission Processing unit, 279 Sector data storage information generation unit, 280 Sector data generation unit, 281 Response version related information storage region, 282 Transmission data storage region, 291 Latest version related information storage region, 1311 Query response unit, 1312 Transmission data reception processing unit , 1313 Subprogram storage area designation unit, 1314 Subprogram write processing unit, 1315 Reset instruction unit, 1316 Program version information generation unit, 1411 Original subprogram storage information, 1412 Update subprogram storage information, 141 Branch destination adjustment information, 1414 Sector storage information, 1431 Model code, 1432 Program version information, 1531 Replication sector storage information, 1532 Received data size information, 1533 Received original subprogram storage information, 1534 Received update subprogram storage information, 1535 Receive branch Destination adjustment information, 1536 reception subprogram, 1541 new sector storage information, 1542 new original subprogram storage information, 1543 new update subprogram storage information, 1544 new branch destination adjustment information, 1561 reception sector data storage information, 1562 reception sector data group , 1563 reception correction table sector data, 1564 reception sector data, 2811 response version subprogram, 2812 response version information, 2820 transmission correction table, 282 1 Transmission original subprogram storage information, 2822 Transmission update subprogram storage information, 2823 Transmission branch destination adjustment information, 2825 Transmission subprogram, 2826 Transmission sector data storage information, 2827 Transmission sector data group, 2911 Latest version subprogram, 2912 Latest version Information, 2921 latest version sector data storage information, 2922 response version sector data storage information.

Claims (12)

所定のオリジナルプログラムを構成する複数のオリジナルサブプログラムとオリジナルプログラムを更新するための更新サブプログラムとを組み合わせてサブプログラム単位でのプログラムの更新が可能な情報処理装置であって、
主記憶装置と、
複数のオリジナルサブプログラムを格納する読み出し専用のオリジナルサブプログラム格納部と、
更新サブプログラムを少なくとも一つ以上格納する更新サブプログラム格納部と、
更新サブプログラムとともに実行すべきオリジナルサブプログラムである実行対象オリジナルサブプログラムが示されるオリジナルサブプログラム格納情報を記憶するオリジナルサブプログラム格納情報記憶部と、
前記更新サブプログラム格納部に格納されている更新サブプログラムが示される更新サブプログラム格納情報を記憶する更新サブプログラム格納情報記憶部と、
分岐処理を含むサブプログラムを特定するとともに、分岐処理を含むサブプログラムについて、サブプログラムの更新によって生じる分岐先の変更を調整するためのデータを示す分岐先調整情報を記憶する分岐先調整情報記憶部と
前記オリジナルサブプログラム格納情報に基づいて、実行対象オリジナルサブプログラムを前記オリジナルサブプログラム格納部から主記憶装置に転送し、前記更新サブプログラム格納情報に基づいて、更新サブプログラムを前記更新サブプログラム格納部から主記憶装置に転送するサブプログラム転送部と、
前記サブプログラム転送部により主記憶装置に転送された実行対象オリジナルサブプログラム及び更新サブプログラムのうち分岐処理を含むサブプログラムについて、前記分岐先調整情報に基づいて、分岐処理における分岐先を調整するサブプログラム調整部と、
前記サブプログラム調整部により分岐処理における分岐先が調整された後の実行対象オリジナルサブプログラムと更新サブプログラムとを実行するプログラム実行部とを有することを特徴とする情報処理装置。
An information processing apparatus capable of updating a program in units of subprograms by combining a plurality of original subprograms constituting a predetermined original program and an update subprogram for updating the original program,
A main storage device;
A read-only original subprogram storage for storing a plurality of original subprograms;
An update subprogram storage for storing at least one update subprogram;
An original subprogram storage information storage unit for storing original subprogram storage information indicating an execution target original subprogram that is an original subprogram to be executed together with the update subprogram;
An update subprogram storage information storage unit for storing update subprogram storage information indicating an update subprogram stored in the update subprogram storage unit;
Branch destination adjustment information storage unit for specifying a subprogram including a branch process and storing branch destination adjustment information indicating data for adjusting a change of a branch destination caused by the update of the subprogram for the subprogram including the branch process And
On the basis of the original subprogram stored information, the execution target original subprogram then transferred to the main memory from the original sub-program storage unit, based on the update sub-program storage information, the update subroutine stores the update subprogram A subprogram transfer unit for transferring from the unit to the main storage device;
The subprogram for adjusting the branch destination in the branch processing based on the branch destination adjustment information for the subprogram including the branch processing among the execution target original subprogram and the update subprogram transferred to the main memory by the subprogram transfer unit. A program adjustment section;
An information processing apparatus comprising: a program execution unit that executes an execution target original subprogram and an update subprogram after a branch destination in a branch process is adjusted by the subprogram adjustment unit.
前記オリジナルサブプログラム格納情報記憶部は、
行対象オリジナルサブプログラムのそれぞれについて、前記オリジナルサブプログラム格納部における格納領域と主記憶装置における格納領域とを示すオリジナルサブプログラム格納情報を記憶
前記更新サブプログラム格納情報記憶部は、
更新サブプログラムのそれぞれについて、前記更新サブプログラム格納部における格納領域と主記憶装置における格納領域とを示す更新サブプログラム格納情報を記憶
前記サブプログラム転送部は、
前記オリジナルサブプログラム格納情報に従い、行対象オリジナルサブプログラムのそれぞれを前記オリジナルサブプログラム格納部におけるそれぞれの格納領域から主記憶装置におけるそれぞれの格納領域に転送し、前記更新サブプログラム格納情報に従い、更新サブプログラムのそれぞれを前記更新サブプログラム格納部におけるそれぞれの格納領域から主記憶装置におけるそれぞれの格納領域に転送することを特徴とする請求項1に記載の情報処理装置。
The original subprogram storage information storage unit is
For each run the object original subprogram, storing the original subprogram stored information indicating the storage area in the main memory and the storage area in the original sub-program storage unit,
The updated subprogram storage information storage unit
For each update subprogram, storing the update sub-program storing information indicating a storage area in the main memory and the storage area in the renewed sub-program storage unit,
The subprogram transfer unit
In accordance with the foregoing original subprogram storing information, each of the execution target original subprogram transferred to the respective storage area in the main memory from each storage area in the original sub-program storage unit, in accordance with the updated sub-program storage information, updates 2. The information processing apparatus according to claim 1, wherein each of the subprograms is transferred from a respective storage area in the updated subprogram storage unit to a respective storage area in the main storage device.
前記分岐先調整情報記憶部は、
分岐処理を含むサブプログラムについて、分岐先の調整対象となるオフセットアドレス及び分岐先の調整のために当該オフセットアドレスに上書きするデータを示す分岐先調整情報を記憶し
前記サブプログラム調整部は、
岐処理を含むサブプログラムについて、前記分岐先調整情報に示されているオフセットアドレスに前記分岐先調整情報に示されているデータを上書きして、分岐処理における分岐先調整することを特徴とする請求項に記載の情報処理装置。
The branch destination adjustment information storage unit
For subprograms including branch processing, store the branch destination adjustment information indicating the offset address to be adjusted at the branch destination and the data to be overwritten on the offset address for branch destination adjustment ,
The subprogram adjustment unit
For subprograms including branch processing, and wherein the overwrite data shown in branch target adjustment information to the offset address indicated in the branch target adjustment information to adjust the branch target of the branch processing The information processing apparatus according to claim 1 .
前記情報処理装置は、
所定の管理装置と通信可能であり、
所定の場合に、前記管理装置より、新たな更新サブプログラムと、新たなオリジナルサブプログラム格納情報と、新たな更新サブプログラム格納情報と、新たな分岐先調整情報を受信し、
前記更新サブプログラム格納部は、
前記新たな更新サブプログラムを格納し、
前記オリジナルサブプログラム格納情報記憶部は、
前記新たなオリジナルサブプログラム格納情報を記憶し、
前記更新サブプログラム格納情報記憶部は、
前記新たな更新サブプログラム格納情報を記憶し、
前記分岐先調整情報記憶部は、
前記新たな分岐先調整情報を記憶することを特徴とする請求項1に記載の情報処理装置。
The information processing apparatus includes:
Can communicate with a predetermined management device,
In a predetermined case, a new update subprogram, new original subprogram storage information, new update subprogram storage information, and new branch destination adjustment information are received from the management device,
The update subprogram storage unit
Storing the new update subprogram;
The original subprogram storage information storage unit is
Storing the new original subprogram storage information;
The updated subprogram storage information storage unit
Storing the new updated subprogram storage information;
The branch destination adjustment information storage unit
The information processing apparatus according to claim 1, wherein the new branch destination adjustment information is stored.
前記情報処理装置は、
前記更新サブプログラム格納部としてセクタに区分されたフラッシュメモリを備えており、前記更新サブプログラム格納部に格納されている更新プログラムがいずれのセクタに格納されているかを示すセクタ格納情報を管理しており、
前記管理装置より、前記新たな更新サブプログラムと前記新たなオリジナルサブプログラム格納情報と前記新たな更新サブプログラム格納情報と前記新たな分岐先調整情報とともに、少なくとも前記新たな更新サブプログラムのデータサイズが示されるデータサイズ情報を受信し、
前記情報処理装置は、更に、
前記データサイズ情報と前記セクタ格納情報とに基づいて、前記新たな更新サブプログラムを格納する前記更新サブプログラム格納部におけるセクタを指定するサブプログラム格納領域指定部と、
前記サブプログラム格納領域指定部により指定されたセクタに、前記新たな更新サブプログラムを書き込むサブプログラム書込処理部とを有することを特徴とする請求項4に記載の情報処理装置。
The information processing apparatus includes:
The update subprogram storage unit includes a flash memory divided into sectors, and manages sector storage information indicating in which sector the update program stored in the update subprogram storage unit is stored And
In addition to the new update subprogram, the new original subprogram storage information, the new update subprogram storage information, and the new branch destination adjustment information, at least the data size of the new update subprogram is transmitted from the management device. Receive the indicated data size information,
The information processing apparatus further includes:
A subprogram storage area designating unit for designating a sector in the updated subprogram storage unit for storing the new updated subprogram based on the data size information and the sector storage information;
5. The information processing apparatus according to claim 4, further comprising: a subprogram write processing unit that writes the new updated subprogram in a sector designated by the subprogram storage area designating unit.
前記情報処理装置は、
前記更新サブプログラム格納部としてセクタに区分されたフラッシュメモリを備えており、
前記情報処理装置は、
前記管理装置から、前記新たな更新サブプログラムを前記更新サブプログラム格納部のセクタ単位に分割したセクタデータと、前記更新サブプログラム格納部の各セクタに格納するセクタデータを示すセクタ格納情報とを受信し、
受信したセクタ格納情報に従って、受信したセクタデータを前記更新サブプログラム格納部の対応するセクタに書き込むことを特徴とする請求項に記載の情報処理装置。
The information processing apparatus includes:
The update subprogram storage unit includes a flash memory divided into sectors ,
The information processing apparatus includes:
Wherein the management unit, receives the sector data dividing the new update subprograms sector units of the update sub-program storage unit, and the update sub-program storage unit sector storing information indicating the sector data to be stored in each sector of And
5. The information processing apparatus according to claim 4 , wherein the received sector data is written in a corresponding sector of the update subprogram storage unit according to the received sector storage information.
主記憶装置と、所定のオリジナルプログラムを構成するサブプログラムであって初版バージョンとなる複数のオリジナルサブプログラムを格納している読み出し専用のオリジナルサブプログラム格納部と、オリジナルプログラムを更新するためのサブプログラムであって第2版以降のバージョンとなる更新サブプログラムを格納可能な更新サブプログラム格納部とを備え、
所定の条件下で、更新サブプログラムを受信することが可能であり、更新サブプログラムを受信する度に、受信した更新サブプログラムを更新サブプログラム格納部に格納し、
所定の場合に、更新サブプログラム格納部への更新サブプログラムの格納状況に基づき、オリジナルサブプログラム格納部及び更新サブプログラム格納部の少なくともいずれかに格納されている所定数のサブプログラムについてそれぞれのサブプログラムのバージョンを判断するとともに判断結果を示すバージョン情報を生成し、生成したバージョン情報を送信することが可能であり、
プログラムの実行時に、オリジナルサブプログラム格納部及び更新サブプログラム格納部の少なくともいずれかから所定数のサブプログラムを主記憶装置に格納してプログラムを実行する情報処理装置と通信可能であり、
前記情報処理装置を管理する管理装置であって、
前記情報処理装置が保有するオリジナルサブプログラムを記憶し、管理装置内部又は管理装置外部において更新サブプログラムが生成される度に、生成された更新サブプログラムを記憶するサブプログラム記憶部と、
前記サブプログラム記憶部が更新サブプログラムを記憶する度に更新される情報であって、前記サブプログラム記憶部に記憶されている所定数のサブプログラムについてそれぞれのサブプログラムの最新バージョンのサブプログラムを示すとともに、それぞれのサブプログラムについて前記情報処理装置の主記憶装置への格納時の格納領域を指定する最新バージョン情報を記憶する最新バージョン情報記憶部と、
前記サブプログラム記憶部が更新サブプログラムを記憶する度に、前記情報処理装置に更新サブプログラムの送信の要否を問い合わせる送信要否問合せ情報を前記情報処理装置に対して送信するとともに、前記情報処理装置において更新サブプログラムの送信を要求する場合に、送信要否問合せ情報に対する応答として、前記情報処理装置からバージョン情報を受信する通信処理部と、
前記通信処理部が前記情報処理装置からバージョン情報を受信した場合に、前記通信処理部がバージョン情報を受信した時点で前記最新バージョン情報記憶部に記憶されている最新バージョン情報を分析し、最新バージョン情報において最新バージョンのサブプログラムとしてオリジナルサブプログラムが示されているサブプログラムを少なくとも一つ以上検出した場合に、検出したサブプログラムのそれぞれについてオリジナルサブプログラムを実行対象とするよう指示するとともに、プログラム実行時に、検出したサブプログラムのそれぞれについて最新バージョン情報で指定されている主記憶装置の格納領域へオリジナルサブプログラムを格納するよう指示するオリジナルサブプログラム格納情報を生成するオリジナルサブプログラム格納情報生成部と、
前記通信処理部が前記情報処理装置からバージョン情報を受信した場合に、前記通信処理部がバージョン情報を受信した時点で前記最新バージョン情報記憶部に記憶されている最新バージョン情報を分析し、最新バージョン情報において最新バージョンのサブプログラムとして更新サブプログラムが示されているサブプログラムを少なくとも一つ以上検出した場合に、検出したサブプログラムのそれぞれについて更新サブプログラムを実行対象とするよう指示するとともに、プログラム実行時に、検出したサブプログラムのそれぞれについて最新バージョン情報で指定されている主記憶装置の格納領域へ更新サブプログラムを格納するよう指示する更新サブプログラム格納情報を生成する更新サブプログラム格納情報生成部と、
前記通信処理部が前記情報処理装置からのバージョン情報を受信した場合に、前記通信処理部がバージョン情報を受信した時点で前記最新バージョン情報記憶部に記憶されている最新バージョン情報と前記通信処理部が受信したバージョン情報とを比較し、前記情報処理装置が未受信の更新サブプログラムを特定する更新サブプログラム特定部とを有し、
前記通信処理部は、
オリジナルサブプログラム格納情報、更新サブプログラム格納情報及び前記更新サブプログラム特定部により特定された更新サブプログラムを前記情報処理装置に対して送信することを特徴とする管理装置。
A main storage device, a read-only original subprogram storage unit that stores a plurality of original subprograms that are subprograms constituting the original version and that constitute the first version, and a subprogram for updating the original program An update subprogram storage unit capable of storing an update subprogram that is a version after the second version,
It is possible to receive an update subprogram under a predetermined condition, and each time an update subprogram is received, the received update subprogram is stored in the update subprogram storage unit,
In a predetermined case, each sub-program of a predetermined number of subprograms stored in at least one of the original subprogram storage unit and the update subprogram storage unit based on the storage status of the update subprogram in the update subprogram storage unit It is possible to determine the version of the program, generate version information indicating the determination result, and send the generated version information.
When executing the program, it is possible to communicate with an information processing apparatus that stores a predetermined number of subprograms in the main storage device from at least one of the original subprogram storage unit and the updated subprogram storage unit, and executes the program,
A management device for managing the information processing device,
A subprogram storage unit that stores the original subprogram held by the information processing device, and stores the generated update subprogram each time an update subprogram is generated inside the management device or outside the management device;
Information that is updated each time the subprogram storage unit stores an updated subprogram, and indicates a subprogram of the latest version of each subprogram for a predetermined number of subprograms stored in the subprogram storage unit A latest version information storage unit that stores latest version information that specifies a storage area at the time of storage in the main storage device of the information processing apparatus for each subprogram,
Each time the subprogram storage unit stores an update subprogram, the information processing device transmits transmission necessity inquiry information for inquiring whether the update subprogram needs to be transmitted to the information processing device. A communication processing unit that receives version information from the information processing device as a response to the transmission necessity inquiry information when requesting transmission of an update subprogram in the device;
When the communication processing unit receives version information from the information processing apparatus, the latest version information stored in the latest version information storage unit is analyzed when the communication processing unit receives version information, and the latest version When at least one subprogram whose original subprogram is indicated as the latest version of the subprogram in the information is detected, it instructs each detected subprogram to execute the original subprogram and execute the program. An original subprogram that generates original subprogram storage information that instructs to store the original subprogram in the storage area of the main storage device specified by the latest version information for each detected subprogram And paid information generating unit,
When the communication processing unit receives version information from the information processing apparatus, the latest version information stored in the latest version information storage unit is analyzed when the communication processing unit receives version information, and the latest version When at least one subprogram whose updated subprogram is indicated as the latest version of the subprogram in the information is detected, the detected subprogram is instructed to be the execution target for each detected subprogram, and the program is executed An updated subprogram storage information generating unit for generating updated subprogram storage information for instructing to store the updated subprogram in the storage area of the main storage device specified by the latest version information for each detected subprogram;
When the communication processing unit receives version information from the information processing apparatus, the latest version information stored in the latest version information storage unit and the communication processing unit when the communication processing unit receives version information. The information processing apparatus has an update subprogram specifying unit for specifying an update subprogram that has not been received,
The communication processing unit
A management apparatus that transmits original subprogram storage information, update subprogram storage information, and an update subprogram specified by the update subprogram specifying unit to the information processing apparatus.
前記最新バージョン情報記憶部は、
最新バージョンのサブプログラムが更新サブプログラムであるサブプログラムについて、前記情報処理装置の更新サブプログラム格納部における格納領域を指定する最新バージョン情報を記憶しており、
更新サブプログラム格納情報生成部は、
最新バージョン情報を分析した結果、最新バージョン情報において最新バージョンのサブプログラムとして更新サブプログラムが示されているサブプログラムを少なくとも一つ以上検出した場合に、検出したサブプログラムのそれぞれについて最新バージョン情報で指定されている更新サブプログラム格納部の格納領域へ更新サブプログラムを格納するよう指示する更新サブプログラム格納情報を生成することを特徴とする請求項に記載の管理装置。
The latest version information storage unit includes:
For the subprogram in which the latest version of the subprogram is an update subprogram, the latest version information that specifies the storage area in the update subprogram storage unit of the information processing apparatus is stored,
The update subprogram storage information generation unit
As a result of analyzing the latest version information, if at least one subprogram whose updated subprogram is indicated as the latest version subprogram in the latest version information is detected, the latest version information is specified for each detected subprogram. The management apparatus according to claim 7 , wherein the management apparatus generates update subprogram storage information that instructs to store an update subprogram in a storage area of the update subprogram storage unit.
前記管理装置は、更に、
前記情報処理装置で実行されるサブプログラムのうち分岐処理を含むサブプログラムを特定するとともに、分岐処理を含むサブプログラムについて、前記情報処理装置においてサブプログラムの更新によって生じる分岐先の変更を調整するためのデータを示す分岐先調整情報を生成する調整情報生成部を有し、
前記通信処理部は、
前記調整情報生成部により生成された分岐先調整情報を前記情報処理装置に対して送信することを特徴とする請求項に記載の管理装置。
The management device further includes:
To specify a subprogram including a branch process among subprograms executed by the information processing apparatus, and to adjust a change of a branch destination caused by the update of the subprogram in the information processing apparatus for the subprogram including the branch process An adjustment information generation unit that generates branch destination adjustment information indicating the data of
The communication processing unit
The management apparatus according to claim 7 , wherein the branch destination adjustment information generated by the adjustment information generation unit is transmitted to the information processing apparatus.
記調整情報生成部は、
分岐処理を含むサブプログラムについて、分岐先の調整対象となるオフセットアドレス及び前記情報処理装置において分岐先の調整のために当該オフセットアドレスに上書きするデータを示す分岐先調整情報を生成することを特徴とする請求項に記載の管理装置。
Before Symbol adjustment information generating unit,
For the subprogram including the branch process, the branch destination adjustment information indicating the offset address to be adjusted at the branch destination and the data to be overwritten on the offset address for adjustment of the branch destination in the information processing apparatus is generated. The management apparatus according to claim 9 .
前記管理装置は、更に、
オリジナルサブプログラム格納情報、更新サブプログラム格納情報、前記更新サブプログラム特定部により特定された更新サブプログラム及び調整情報について、それぞれのデータサイズを示すデータサイズ情報を生成するデータサイズ情報生成部を有することを特徴とする請求項に記載の管理装置。
The management device further includes:
For the original subprogram storage information, the update subprogram storage information, the update subprogram specified by the update subprogram specifying unit, and the adjustment information, a data size information generation unit that generates data size information indicating each data size is provided. The management apparatus according to claim 9 .
前記管理装置は、
更新サブプログラム格納部としてフラッシュメモリを備える情報処理装置を管理し、
前記管理装置は、更に、
更新サブプログラムを前記情報処理装置のフラッシュメモリのセクタ単位に分割してセクタデータを生成するセクタデータ生成部と、
前記情報処理装置のフラッシュメモリの各セクタに格納するセクタデータを示すセクタ格納情報を生成するセクタ格納情報生成部とを有し、
前記通信処理部は、
前記セクタデータ生成部により生成されたセクタデータと前記セクタ格納情報生成部により生成されたセクタ格納情報とを前記情報処理装置に対して送信することを特徴とする請求項に記載の管理装置。
The management device
Manage an information processing device with flash memory as an update subprogram storage,
The management device further includes:
A sector data generation unit that divides an update subprogram into sectors of the flash memory of the information processing apparatus to generate sector data;
A sector storage information generating unit that generates sector storage information indicating sector data to be stored in each sector of the flash memory of the information processing apparatus,
The communication processing unit
8. The management apparatus according to claim 7 , wherein sector data generated by the sector data generation unit and sector storage information generated by the sector storage information generation unit are transmitted to the information processing apparatus.
JP2003322414A 2003-09-16 2003-09-16 Information processing apparatus and management apparatus Expired - Fee Related JP4370136B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003322414A JP4370136B2 (en) 2003-09-16 2003-09-16 Information processing apparatus and management apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003322414A JP4370136B2 (en) 2003-09-16 2003-09-16 Information processing apparatus and management apparatus

Publications (2)

Publication Number Publication Date
JP2005092379A JP2005092379A (en) 2005-04-07
JP4370136B2 true JP4370136B2 (en) 2009-11-25

Family

ID=34453773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003322414A Expired - Fee Related JP4370136B2 (en) 2003-09-16 2003-09-16 Information processing apparatus and management apparatus

Country Status (1)

Country Link
JP (1) JP4370136B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7316078B2 (en) * 2019-03-29 2023-07-27 株式会社ソニー・インタラクティブエンタテインメント Information processing device and function execution method

Also Published As

Publication number Publication date
JP2005092379A (en) 2005-04-07

Similar Documents

Publication Publication Date Title
US5937198A (en) Field configurable embedded computer system
EP1519268B1 (en) Communication terminal and communication network for partially updating software, software update method, and software creation device and method therefor
JP4050249B2 (en) Virtual machine management system
US20080098160A1 (en) Mobile device capable of multiple updates
US20110179406A1 (en) Firmware update system and information apparatus, and program
JP2007528071A (en) Automatic backup store for firmware upgrades
US20050166200A1 (en) Software-delivered dynamic persistent data
US20050193390A1 (en) Program downloading method, program switching method and network apparatus
JP2003303028A (en) Version-up system of navigation system
JP2004234503A (en) Differential data generation device and method, updated data restoration device and method, and program
JP4370136B2 (en) Information processing apparatus and management apparatus
JP4285679B2 (en) Differential transfer method, program and system
US7904422B2 (en) System for deploying data from deployment-source device to deployment-destination device
JP2009048557A (en) Data update device, data update method, and data update program
JPWO2019207729A1 (en) Industrial computer, industrial computer system, operating system updating method and program
JPH07219780A (en) System of dowm-loading processing program of terminal equipment
KR20030068234A (en) Memory structure of unit for remote download and method thereof
JP2000215034A (en) Printer and its program updating method
JP2000181719A (en) Method for down loading program to communication equipment
US20050097540A1 (en) Program updating method and terminal device
WO2018150820A1 (en) Information processing device
JP2003125146A (en) Image forming device
CA2493692C (en) Software-delivered dynamic persistent data
JP3292347B2 (en) Terminal file management method
JP6988636B2 (en) Reprogramming method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060724

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080917

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090616

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090825

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090831

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120904

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees