JP2003173260A - Remote program renewal system - Google Patents

Remote program renewal system

Info

Publication number
JP2003173260A
JP2003173260A JP2001372507A JP2001372507A JP2003173260A JP 2003173260 A JP2003173260 A JP 2003173260A JP 2001372507 A JP2001372507 A JP 2001372507A JP 2001372507 A JP2001372507 A JP 2001372507A JP 2003173260 A JP2003173260 A JP 2003173260A
Authority
JP
Japan
Prior art keywords
program
update
file
definition information
flash memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001372507A
Other languages
Japanese (ja)
Inventor
Yukinori Endo
幸典 遠藤
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 JP2001372507A priority Critical patent/JP2003173260A/en
Publication of JP2003173260A publication Critical patent/JP2003173260A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a remote program renewal system capable of increasing efficiency of renewal processing, and capable of securing flexibility of a system program stored in a flash memory on an incorporated apparatus. <P>SOLUTION: A renewal program 40 stored in the flash memory A104 forms a new system program by relinking an object file 10 and a renewal object file 302 on the basis of the renewal object file 302, link definition information 303, and load definition information 304 including a changing part of the system program transmitted via a communication network 200 by a remote host 300, and loads this new system program in a prescribed position. <P>COPYRIGHT: (C)2003,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、内容の消去と再書
込みが電気的に可能なフラッシュメモリ等の不揮発性の
記憶媒体と、外部通信インタフェースを搭載する組み込
み機器において、外部ホストとの通信を介して、不揮発
性の記憶媒体上のシステムプログラムに対するモジュー
ル入れ替え部分置き換えやモジュール再構成機能追加、
削除を行うためのプログラム更新方式に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to communication with an external host in a built-in device equipped with a nonvolatile storage medium such as a flash memory capable of electrically erasing and rewriting contents and an external communication interface. Via the module replacement part replacement or module reconfiguration function addition to the system program on the non-volatile storage medium,
The present invention relates to a program updating method for deleting.

【0002】[0002]

【従来の技術】組み込み機器におけるプログラムの制御
単位は、単一アドレス空間上で実行されるタスクが一般
的である。従って、システムプログラムのリンク単位は
通常一括であり静的リンク、ローディングもシステム単
位で行われる。このため、組み込み機器では、システム
プログラムの実行イメージをあらかじめROMRead
Only Memoryに格納しておき、スタートアッ
プ時に静的に主記憶上へロードして起動する。
2. Description of the Related Art A control unit of a program in an embedded device is generally a task executed on a single address space. Therefore, the link unit of the system program is usually a batch, and static linking and loading are also performed in the system unit. Therefore, in the embedded device, the execution image of the system program is read in advance in ROMRead.
It is stored in Only Memory, and statically loaded on the main memory at startup and activated.

【0003】近年、このようなシステムプログラム格納
用のROMとして、フラッシュメモリがよく利用されて
いる。フラッシュメモリは、組み込み機器内でソフトウ
ェアを用いて内容の書き換えが何度でも可能であるた
め、格納しているシステムプログラムの更新を柔軟に行
うことができる。
In recent years, a flash memory is often used as a ROM for storing such a system program. Since the content of the flash memory can be rewritten any number of times by using software in the embedded device, the stored system program can be flexibly updated.

【0004】一方、近年組み込み機器においてもJav
a(登録商標)実行環境が搭載され始めている。Jav
a(登録商標)を搭載した機器では、ネットワークを介
してアプリケーション・プログラムをダウンロードする
ことができ、これによりオンラインでの機能追加や更新
が可能である。しかしながら、これはJava(登録商
標)実行環境の上で動作するプログラムだけを対象にし
たものあり、静的なリンクやロードを前提としている基
本ソフトウェア部分の更新はできない。
On the other hand, in recent years, even in embedded devices, Jav
The a (registered trademark) execution environment is beginning to be installed. Jav
With a device equipped with a (registered trademark), an application program can be downloaded via a network, which makes it possible to add or update functions online. However, this is intended only for programs that run on the Java (registered trademark) execution environment, and the basic software portion that is premised on static linking or loading cannot be updated.

【0005】従来の組込み制御装置には、フラッシュメ
モリ内にシステムプログラムとフラッシュメモリ書換え
プログラムを格納し、主記憶上に展開されたフラッシュ
メモリ書換えプログラムが外部記憶装置又はプログラム
作成装置から入力される新プログラムを受信して、フラ
ッシュメモリ上のシステムプログラムの更新を行うもの
がある。例えば、特開平9−69043に示されたマイ
クロコンピュータ組込み制御装置がこれに該当する。
In a conventional embedded control device, a system program and a flash memory rewriting program are stored in a flash memory, and the flash memory rewriting program expanded on the main memory is input from an external storage device or a program creating device. Some receive a program and update a system program on the flash memory. For example, the microcomputer-embedded control device disclosed in Japanese Patent Laid-Open No. 9-69043 corresponds to this.

【0006】次に動作について説明する。図37は、従
来のマイクロコンピュータ組込み制御装置の構成図であ
る。制御装置Cを構成する入力装置4又は第3入出力部
8から、プログラム記憶手段2C内のシステムプログラ
ムP1を更新するという指示の信号が入力されると、プ
ログラム記憶手段2C内に格納されている複写プログラ
ムP21が最初に起動され、同じくプログラム記憶手段
2C内に格納されている書換えプログラムP2Aを、デ
ータ記憶手段3C内の書換えプログラム領域PAに複写
する。そして、制御演算手段1はプログラムの実行を書
換えプログラム領域PAの先頭に移し、書換えプログラ
ムP2Aを起動する。
Next, the operation will be described. FIG. 37 is a block diagram of a conventional microcomputer-embedded control device. When a signal for instructing to update the system program P1 in the program storage means 2C is input from the input device 4 or the third input / output unit 8 constituting the control device C, it is stored in the program storage means 2C. The copy program P21 is first activated, and the rewrite program P2A also stored in the program storage means 2C is copied to the rewrite program area PA in the data storage means 3C. Then, the control calculation means 1 moves the execution of the program to the head of the rewriting program area PA and activates the rewriting program P2A.

【0007】書換えプログラムP2Aは、プログラム記
憶手段2Cの内容を消去したあと、第2入出力部7を介
して外部記憶装置MAから入力される新システムプログ
ラム、又は第3入出力部8を介してプログラム作成装置
PSから入力される新システムプログラムをデータ記憶
手段3C内に蓄積しながら、プログラム記憶手段2C内
のシステムプログラムP1を格納している領域に書き込
みを行う。
The rewriting program P2A erases the contents of the program storage means 2C, and then the new system program input from the external storage device MA via the second input / output unit 7 or the third input / output unit 8 While accumulating the new system program input from the program creating device PS in the data storage means 3C, writing is performed in the area storing the system program P1 in the program storage means 2C.

【0008】以上のように、プログラム記憶手段2C内
のシステムプログラムP1を更新するための書換えプロ
グラムP2Aをデータ記憶手段3C内に複写した上で、
システムプログラムP1の更新処理を行うため、本処理
時にはプログラム記憶手段2C内に書換えプログラムP
2Aを格納する領域を確保する必要がなく、プログラム
記憶手段2C内の領域を自由に使用することができる。
As described above, after the rewriting program P2A for updating the system program P1 in the program storage means 2C is copied in the data storage means 3C,
Since the system program P1 is updated, the rewriting program P is stored in the program storage means 2C during this processing.
It is not necessary to secure an area for storing 2A, and the area in the program storage means 2C can be used freely.

【0009】[0009]

【発明が解決しようとする課題】従来のマイクロコンピ
ュータ組込み制御装置では、第2入出力部7を介した外
部記憶装置MA、又は第3入出力部8を介したプログラ
ム作成装置PSから、新システムプログラム全体を受信
することで、システムプログラムP1の更新処理を行
う。この方法では、あらかじめ新システムプログラムを
別ホスト上で生成するため、OS等の基本ソフトウェア
部分も更新対象とすることができる。しかしながら、シ
ステムプログラム内の機能削除やごく一部の修正に対し
ても、新システムプログラム全体を転送しなければなら
ない。従って、プログラム転送時間が長く、柔軟かつ効
率的にプログラム更新処理を行うことができないという
問題点があった。
In the conventional microcomputer built-in control device, a new system is provided from the external storage device MA via the second input / output unit 7 or the program creating device PS via the third input / output unit 8. The system program P1 is updated by receiving the entire program. In this method, since the new system program is generated on another host in advance, the basic software part such as the OS can also be updated. However, the entire new system program must be transferred even if the functions in the system program are deleted or only a part of the system program is modified. Therefore, there is a problem that the program transfer time is long and the program update process cannot be performed flexibly and efficiently.

【0010】本発明は前記のような問題点を解決するた
めになされたもので、組み込み機器上の不揮発性記憶媒
体の一つにファイルシステムを形成し、この中にあらか
じめシステムプログラムのオブジェクトファイル群を格
納しておく。そして、プログラム更新処理を行う場合
は、変更部分を含むオブジェクトファイル、リンク定義
情報、およびロード定義情報からなる転送ファイルを組
み込み機器側に送信し、このリンク定義情報とロード定
義情報に基づき、組み込み機器上でシステムプログラム
の再リンクとロードを行う。これにより、プログラム更
新処理の効率化と柔軟性を確保し、ソフトウェア障害対
処等の保守性向上と機能進化によるサービス向上を実現
することを目的とする。
The present invention has been made to solve the above-mentioned problems, and a file system is formed in one of the nonvolatile storage media on an embedded device, and an object file group of a system program is previously formed in the file system. Is stored. When performing the program update process, the transfer file including the object file including the changed part, the link definition information, and the load definition information is transmitted to the embedded device side, and the embedded device is based on the link definition information and the load definition information. Relink and load the system program above. The purpose of this is to ensure the efficiency and flexibility of the program update process, improve maintainability such as handling software failures, and improve service by function evolution.

【0011】[0011]

【課題を解決するための手段】第1の発明は、システム
プログラムの変更部分を含む更新オブジェクトファイル
と、この更新オブジェクトファイルと前記システムプロ
グラムを構成するオブジェクトファイルとを再リンクす
るためのリンク定義情報と、新規システムプログラムを
ロードするためのロード定義情報とにより構成された転
送ファイルを通信ネットワークを介して送信する遠隔コ
ンピュータと、前記オブジェクトファイルと、前記更新
オブジェクトファイルと、前記リンク定義情報と、前記
ロード定義情報とが格納された第1のフラッシュメモリ
と、前記システムプログラムが格納され、前記遠隔コン
ピュータにより送信された前記転送ファイルの前記更新
オブジェクトファイルと前記リンク定義情報と前記ロー
ド定義情報とを前記第1のフラッシュメモリに格納する
ファイル管理部と、前記リンク定義情報に基づいて前記
第1のフラッシュメモリに格納された前記オブジェクト
ファイルと前記更新オブジェクトファイルとを再リンク
して新規システムプログラムを生成するリンク処理部
と、前記新規システムプログラムを前記ロード定義情報
に基づいて所定の位置にロードするロード処理部とによ
り構成された更新プログラムを有する第2のフラッシュ
メモリと、を備えたものである。
SUMMARY OF THE INVENTION A first invention is an update object file including a changed part of a system program, and link definition information for relinking the update object file and an object file constituting the system program. And a remote computer for transmitting a transfer file configured by load definition information for loading a new system program via a communication network, the object file, the update object file, the link definition information, and A first flash memory in which load definition information is stored, the update object file of the transfer file in which the system program is stored and transmitted by the remote computer, the link definition information, and the load definition information are forwarded. A file management unit stored in the first flash memory, and the object file and the updated object file stored in the first flash memory are relinked based on the link definition information to generate a new system program. A second flash memory having an update program configured by a link processing unit and a load processing unit that loads the new system program at a predetermined position based on the load definition information is provided.

【0012】第2の発明は、前記遠隔コンピュータによ
り送信された前記転送ファイルのファイル形式又は配布
元の正当性を判定し、正当な時にはさらに前記転送ファ
イルの前記更新オブジェクトファイルと前記リンク定義
情報と前記ロード定義情報との正当性を判定する更新判
定部を有する更新プログラムと、前記更新判定部により
前記更新オブジェクトファイルと前記リンク定義情報と
前記ロード定義情報とが正当と判断された時に、前記更
新オブジェクトファイルと前記リンク定義情報と前記ロ
ード定義情報とを前記第1のフラッシュメモリに格納す
るファイル管理部とを備えたものである。
A second aspect of the present invention determines the validity of the file format or distribution source of the transfer file transmitted by the remote computer, and when the transfer file is valid, further updates the update object file of the transfer file and the link definition information. An update program having an update determination unit that determines the validity of the load definition information; and the update when the update determination unit determines that the update object file, the link definition information, and the load definition information are valid. The file management unit stores an object file, the link definition information, and the load definition information in the first flash memory.

【0013】第3の発明は、前記転送ファイルを暗号化
する暗号化処理部を有する遠隔コンピュータと、前記暗
号化処理部により暗号化された前記転送ファイルを復号
化する復号化処理部を有する更新プログラムとを備えた
ものである。
A third aspect of the present invention is an update having a remote computer having an encryption processing unit for encrypting the transfer file and a decryption processing unit for decrypting the transfer file encrypted by the encryption processing unit. And a program.

【0014】第4の発明は、前記遠隔コンピュータによ
り送信された前記転送ファイルの前記更新オブジェクト
ファイルを圧縮し、又圧縮した前記更新オブジェクトフ
ァイルを伸張するファイル圧縮伸張部を有する更新プロ
グラムと、前記ファイル圧縮伸張部により圧縮された前
記更新オブジェクトファイルを前記第1のフラッシュメ
モリに格納するファイル管理部とを備えたものである。
According to a fourth aspect of the present invention, an update program having a file compression / expansion unit for compressing the update object file of the transfer file transmitted by the remote computer and expanding the compressed update object file, and the file. And a file management unit for storing the updated object file compressed by the compression / expansion unit in the first flash memory.

【0015】第5の発明は、再リンク処理が成功した前
記オブジェクトファイルを識別するリンク定義情報識別
子が付与されたリンク定義情報と、前記システムプログ
ラムとこのシステムプログラムを構成するオブジェクト
ファイルとの対応関係を示すオブジェクトリンクテーブ
ルを有する更新プログラムと、前記リンク定義情報に付
与されたリンク定義情報識別子と一致する前記オブジェ
クトファイルが前記オブジェクトリンクテーブルにエン
トリされていない時には、前記リンク定義情報に付与さ
れた前記リンク定義情報識別子のオブジェクトファイル
の情報を前記オブジェクトリンクテーブルに追加するリ
ンク処理部とを備えたものである。
A fifth aspect of the present invention is a correspondence relationship between the link definition information provided with a link definition information identifier for identifying the object file for which the relinking process has been successful, the system program and an object file constituting the system program. And an update program having an object link table indicating that the object file that matches the link definition information identifier given to the link definition information is not entered in the object link table, the object given to the link definition information is And a link processing unit for adding the information of the object file having the link definition information identifier to the object link table.

【0016】第6の発明は、前記リンク定義情報を通信
ネットワークを介して送信する遠隔コンピュータと、前
記遠隔コンピュータにより送信された前記リンク定義情
報に基づいて前記第1のフラッシュメモリに格納された
前記オブジェクトファイルを再リンクして新規システム
プログラムを生成するリンク処理部とを備えたものであ
る。
According to a sixth aspect of the present invention, a remote computer for transmitting the link definition information via a communication network, and the first flash memory stored on the basis of the link definition information transmitted by the remote computer. And a link processing unit for relinking the object file to generate a new system program.

【0017】第7の発明は、前記オブジェクトファイル
とこのオブジェクトファイルに依存する別オブジェクト
ファイルとの関係を示すオブジェクト依存関係テーブル
を有する更新プログラムと、前記オブジェクト依存関係
テーブルに基づいて前記第1のフラッシュメモリに格納
されている前記オブジェクトファイルに不足が有るか否
かの判定を行い、不足がある時には前記遠隔コンピュー
タに不足のオブジェクトファイルを転送要求する更新判
定部とを備えたものである。
According to a seventh aspect of the invention, an update program having an object dependency relationship table showing a relationship between the object file and another object file dependent on the object file, and the first flash based on the object dependency table. The update determination unit determines whether or not there is a shortage of the object file stored in the memory, and when there is a shortage, an update determination unit that requests the remote computer to transfer the shortage of the object file.

【0018】第8の発明は、デバイスドライバ又はミド
ルウェアの流通ソフトウェアのインストール情報を保存
するインストール情報テーブルと、前記遠隔コンピュー
タによりインストール情報の要求がされた時に前記イン
ストール情報テーブルに保存されたインストール情報を
前記遠隔コンピュータに送信するメイン処理部と、を有
する更新プログラムを備えたものである。
An eighth invention provides an installation information table for storing installation information of device driver or middleware distribution software, and an installation information stored in the installation information table when installation information is requested by the remote computer. An update program including a main processing unit for transmitting to the remote computer.

【0019】第9の発明は、前記新規システムプログラ
ムが生成された時に前記システムプログラムを退避する
プログラム退避処理部と、このプログラム退避処理部に
より退避された前記システムプログラムを保存するプロ
グラム退避領域と、を有する更新プログラムを備えたも
のである。
A ninth aspect of the invention is a program save processing unit for saving the system program when the new system program is generated, and a program save area for saving the system program saved by the program save processing unit. Is provided with an update program.

【0020】第10の発明は、過去に生成された任意の
システムプログラムを格納する第3のフラッシュメモリ
を備え、前記第2のフラッシュメモリは、前記任意のシ
ステムプログラムの先頭アドレスが格納されたブート選
択ベースアドレスを備え、前記ロード処理部は、前記新
規システムプログラムを生成した後、前記ロード定義情
報に基づいて過去に生成された任意のシステムプログラ
ムを前記第3のフラッシュメモリ又は前記第2のフラッ
シュメモリの任意の空き領域にロードし、このロードし
た任意のシステムプログラムの先頭アドレスを前記ブー
ト選択ベースアドレスに格納するものである。
A tenth invention comprises a third flash memory for storing an arbitrary system program generated in the past, wherein the second flash memory is a boot in which a start address of the arbitrary system program is stored. The load processing unit includes a selected base address, and the load processing unit, after generating the new system program, sets any system program generated in the past based on the load definition information to the third flash memory or the second flash. It is to be loaded into an arbitrary free area of the memory and the start address of the loaded arbitrary system program is stored in the boot selection base address.

【0021】第11の発明は、前記システムプログラム
を再構成するための機能選択処理をする機能選択部を有
する更新プログラムと、前記リンク処理部は、前記機能
選択部による機能選択が正しい時には、前記リンク定義
情報に基づいて第1のフラッシュメモリに格納された前
記オブジェクトファイルを再リンクして新規システムプ
ログラムを生成するリンク処理部とを備えたものであ
る。
An eleventh aspect of the present invention is an update program having a function selecting section for performing a function selecting process for reconfiguring the system program, and the link processing section, when the function selection by the function selecting section is correct. And a link processing unit that relinks the object file stored in the first flash memory based on the link definition information to generate a new system program.

【0022】第12の発明は、前記第1のフラッシュメ
モリに格納された前記更新オブジェクトファイルが前記
新規システムプログラムを生成するために利用されたか
否かを示す転送受け付け履歴テーブルを有する第2のフ
ラッシュメモリと、前記更新プログラムは、前記遠隔コ
ンピュータにより送信された前記更新オブジェクトファ
イルの受信を行う第1の更新処理部と、前記転送受け付
け履歴テーブルに前記新規システムプログラムを生成す
るための未使用の前記更新オブジェクトファイルが存在
する時に、前記リンク定義情報に基づいて前記第1のフ
ラッシュメモリに格納された前記オブジェクトファイル
と前記更新オブジェクトファイルとを再リンクして新規
システムプログラムを生成し、前記新規システムプログ
ラムを前記ロード定義情報に基づいて所定の位置にロー
ドする第2の更新処理部と、を有する更新プログラムと
を備えたものである。
A twelfth aspect of the present invention is a second flash having a transfer acceptance history table indicating whether or not the updated object file stored in the first flash memory has been used to generate the new system program. The memory, the update program, a first update processing unit for receiving the update object file transmitted by the remote computer, and the unused update program for generating the new system program in the transfer acceptance history table. When an updated object file exists, the object file stored in the first flash memory and the updated object file are relinked based on the link definition information to generate a new system program, and the new system program is generated. The load It is obtained by a patch having a second updating unit for loading a predetermined position on the basis of the definition information.

【0023】第13の発明は、前記オブジェクトファイ
ルを格納する着脱可能なフラッシュメモリを備え、前記
更新プログラムは、前記着脱可能なフラッシュメモリが
装着された時に前記オブジェクトファイルに記載されて
いるデバイス情報を認識するデバイス認識部と、前記デ
バイス認識部により認識されたデバイス情報に基づいて
前記装着された着脱可能なフラッシュメモリの正当性の
判断をするセキュリティ検査部と、を備えたものであ
る。
A thirteenth invention comprises a removable flash memory for storing the object file, and the update program stores device information written in the object file when the removable flash memory is mounted. A device recognition unit for recognizing, and a security inspection unit for judging the validity of the removable flash memory mounted on the basis of the device information recognized by the device recognition unit.

【0024】第14の発明は、前記オブジェクトファイ
ルと更新プログラムとを格納する脱着可能なスマートカ
ードを備え、前記リンク処理部は、前記スマートカード
が装着されると前記第1のフラッシュメモリに格納され
た前記リンク定義情報に基づいて前記オブジェクトファ
イルを再リンクして新規システムプログラムを生成する
ものである
[0024] A fourteenth invention comprises a removable smart card for storing the object file and the update program, and the link processing unit is stored in the first flash memory when the smart card is mounted. And re-linking the object file based on the link definition information to generate a new system program.

【0025】第15の発明は、前記ロード定義情報から
ページ境界を考慮して前記システムプログラムを再配置
する再配置定義情報を備え、前記組み込み機器は、再配
置定義情報に基づき前記システムプログラムを再配置す
るものである。
A fifteenth invention comprises relocation definition information for relocating the system program in consideration of a page boundary from the load definition information, and the embedded device relocates the system program based on the relocation definition information. It is to be placed.

【0026】[0026]

【発明の実施の形態】実施の形態1.図1は、実施の形
態1の遠隔プログラム更新システムの構成図である。図
において、100は組み込み機器、101はCPU、1
02は主記憶、103は外部通信インタフェース、10
4はシステムプログラム等を格納するためのフラッシュ
メモリA、105はファイルシステムを形成しているシ
ステムプログラムのオブジェクトファイルを格納するた
めのフラッシュメモリB、106はシステムバス、10
はフラッシュメモリB105内に格納されているシステ
ムプログラムのオブジェクトファイル、20は組み込み
機器100としての本来の処理を行うシステムプログラ
ム、30は組み込み機器100に電源投入された時又は
再立ち上げされた時に最初に起動するスタートアッププ
ログラム、40はフラッシュメモリA104内に格納さ
れるシステムプログラム20の更新処理を行う更新プロ
グラム、41は更新プログラム40のメイン処理部、4
2はネットワーク通信処理部、43は更新判定部、44
はフラッシュメモリB105をアクセスするためのファ
イル管理部、45はリンク処理部、46はロード処理部
である。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiment 1. FIG. 1 is a configuration diagram of a remote program update system according to the first embodiment. In the figure, 100 is an embedded device, 101 is a CPU, 1
02 is a main memory, 103 is an external communication interface, 10
4 is a flash memory A for storing a system program, 105 is a flash memory B for storing an object file of a system program forming a file system, 106 is a system bus, 10
Is an object file of a system program stored in the flash memory B105, 20 is a system program that performs the original processing as the embedded device 100, and 30 is first when the embedded device 100 is powered on or restarted. A startup program to be started up, an update program 40 for updating the system program 20 stored in the flash memory A 104, 41 a main processing unit of the update program 40, 4
2 is a network communication processing unit, 43 is an update determination unit, 44
Is a file management unit for accessing the flash memory B105, 45 is a link processing unit, and 46 is a load processing unit.

【0027】また、200はEthernet(登録商
標)やRS232C、USB(Universal S
erial Bus)等の有線通信、又はBlueto
othや携帯電話等の無線通信を想定した通信ネットワ
ーク、300は通信ネットワーク200を介して組み込
み機器100と通信可能なパソコン等を想定した遠隔ホ
スト、301はHDD(Hard Disk Driv
e)等を想定した記憶装置、302はシステムプログラ
ム20内の変更部分を含む更新オブジェクトファイル、
303は更新オブジェクトファイル302を再リンク、
即ち再構成するためのリンク定義情報、304は新シス
テムプログラム20をロードするためのロード定義情
報、305は組み込み機器100側に対して更新オブジ
ェクトファイル302の送信処理を行うクライアントプ
ログラム、306は更新オブジェクトファイル302、
リンク定義情報303、及びロード定義情報304の三
つ組みから転送ファイルを生成するための転送ファイル
生成部、307はネットワーク通信処理部である。
Further, 200 is Ethernet (registered trademark), RS232C, USB (Universal S)
Wired communication such as initial Bus), or Bluetooth
communication network assuming wireless communication such as wireless communication with a mobile phone, 300 is a remote host assuming a personal computer or the like capable of communicating with the embedded device 100 via the communication network 200, and 301 is an HDD (Hard Disk Drive).
e) A storage device assuming the like, 302 is an update object file including a changed portion in the system program 20,
303 relinks the update object file 302,
That is, link definition information for reconfiguring, 304 for load definition information for loading the new system program 20, 305 for a client program for transmitting the update object file 302 to the embedded device 100 side, and 306 for an update object. File 302,
A transfer file generation unit 307 for generating a transfer file from the triple of the link definition information 303 and the load definition information 304 is a network communication processing unit.

【0028】次に動作について説明する。まず組込み機
器100の通常動作モードにおいて、この組み込み機器
100を使用しているユーザによる明示的な指示、ある
いはこの組み込み機器100と通信可能な遠隔ホスト3
00からの通信ネットワーク200を介したプッシュ型
の指示に基づき、システムプログラム20の更新処理モ
ードに移行する。すると、スタートアッププログラム3
0が再起動してハードウェア等の初期化を行った後、フ
ラッシュメモリA104に格納されている更新プログラ
ム40を主記憶102上の所定アドレスに展開して、こ
のプログラムの開始アドレスに制御を移す。
Next, the operation will be described. First, in the normal operation mode of the embedded device 100, an explicit instruction by a user using the embedded device 100 or a remote host 3 capable of communicating with the embedded device 100.
00 based on a push-type instruction from the communication network 200, the system program 20 shifts to the update processing mode. Then, the startup program 3
After 0 restarts and initializes the hardware and the like, the update program 40 stored in the flash memory A 104 is expanded to a predetermined address in the main memory 102, and control is transferred to the start address of this program. .

【0029】図2は、更新プログラム40の処理動作を
示すフローチャートである。図を用いて、システムプロ
グラム20の更新処理における更新プログラム40側の
処理を説明する。まず、更新プログラム40では、ステ
ップS1でメイン処理部41において、外部通信インタ
フェース103に対して自ネットワークアドレスを設定
したあと、ステップS2でネットワーク通信処理部42
において、クライアントプログラム305からの接続要
求を待つ。ステップS3で、クライアントプログラム3
05からの接続要求が到着しコネクションが確立した
ら、転送ファイルの受信待ち状態となる。
FIG. 2 is a flow chart showing the processing operation of the update program 40. The processing on the update program 40 side in the update processing of the system program 20 will be described with reference to the drawings. First, in the update program 40, the main processing unit 41 sets its own network address in the external communication interface 103 in step S1, and then the network communication processing unit 42 in step S2.
At, the process waits for a connection request from the client program 305. In step S3, the client program 3
When the connection request from 05 arrives and the connection is established, the system waits to receive the transfer file.

【0030】転送ファイルを受信すると、ステップS4
で更新判定部43において、転送ファイルの形式や配布
元等の正当性をチェックし、転送ファイルが正当でなけ
れば、ステップS5でクライアントプログラム305側
にエラー要因を通知すると共に、受信したファイルを破
棄して、コネクションを切断しプログラム更新処理を中
止する。
When the transfer file is received, step S4
Then, the update judgment unit 43 checks the correctness of the transfer file format, distribution source, etc., and if the transfer file is not correct, notifies the client program 305 of the cause of error in step S5 and discards the received file. Then, the connection is disconnected and the program update process is stopped.

【0031】一方、ステップS4で転送ファイルが正当
であれば、ステップS6で転送ファイルを分解し、受信
した三つ組みファイルのバージョン番号等の正当性をチ
ェックし、もし正当でなければ、この時点でプログラム
更新処理を中止する。また、ステップS6で三つ組みフ
ァイルが正当であれば、ステップS7でファイル管理部
44において、分解した更新オブジェクトファイル30
2、リンク定義情報303、およびロード定義情報30
4をフラッシュメモリB105内のファイルシステムに
格納する。
On the other hand, if the transfer file is valid in step S4, the transfer file is disassembled in step S6, and the validity of the version number and the like of the received triplet file is checked. Cancel the program update process. If the triple file is valid in step S6, the file management unit 44 decomposes the updated object file 30 in step S7.
2, link definition information 303, and load definition information 30
4 is stored in the file system in the flash memory B105.

【0032】次に、ステップS8でリンク処理部45に
おいて、リンク定義情報303に基づき、ファイル管理
部44を介してフラッシュメモリB105内のオブジェ
クトファイル10及び更新オブジェクトファイル302
から再リンクを実行し、新システムプログラム20を生
成する。ステップS9でロード処理部46において、ロ
ード定義情報304に基づき、新システムプログラム2
0をフラッシュメモリA104上の所定の位置にロード
する。
Next, in step S8, the link processing unit 45 executes the object file 10 and the update object file 302 in the flash memory B105 via the file management unit 44 based on the link definition information 303.
Relink is executed to generate the new system program 20. In step S9, the load processing unit 46 uses the new system program 2 based on the load definition information 304.
0 is loaded in a predetermined position on the flash memory A104.

【0033】この後、ステップS10でメイン処理部4
1に戻り、クライアントプログラム305側に正常終了
を通知し、コネクションを切断して処理を終了する。最
後に、ステップS11でスタートアッププログラム30
に制御を移し、フラッシュメモリA104に格納されて
いる新システムプログラム20を主記憶102上の所定
アドレスに展開して、このプログラムの開始アドレスに
制御を移す。
Thereafter, in step S10, the main processing unit 4
Returning to 1, the client program 305 is notified of normal termination, the connection is disconnected, and the processing is terminated. Finally, in step S11, the startup program 30
Then, the new system program 20 stored in the flash memory A104 is expanded to a predetermined address in the main memory 102, and the control is transferred to the start address of this program.

【0034】図3は、クライアントプログラム305の
処理動作を示すフローチャートである。図を用いて、シ
ステムプログラムの更新処理におけるクライアントプロ
グラム305の処理を説明する。遠隔ホスト300はク
ロス開発環境としてのパソコン等の遠隔コンピュータを
想定しており、ネットワークインタフェースの初期化や
自ネットワークアドレスの設定はホストの立ち上げ時に
完了している。クロス開発環境では、システムプログラ
ム20に対するソースコードベースの変更や機能追加等
を行い、実行モジュールの生成や機能試験等の一連のソ
フトウェア開発作業を終えているものとする。その上
で、今回更新対象とするソフトウェアの更新オブジェク
トファイル302、リンク定義情報303、及びロード
定義情報304を選別しておく。
FIG. 3 is a flowchart showing the processing operation of the client program 305. The process of the client program 305 in the system program update process will be described with reference to the drawings. The remote host 300 is assumed to be a remote computer such as a personal computer as a cross development environment, and the initialization of the network interface and the setting of its own network address are completed when the host is started up. In the cross development environment, it is assumed that the source code base of the system program 20 is changed, the function is added, and the like, and a series of software development work such as generation of an execution module and function test is completed. Then, the update object file 302, the link definition information 303, and the load definition information 304 of the software to be updated this time are selected.

【0035】クライアントプログラム305は遠隔ホス
ト300上で動作するアプリケーション・ソフトウェア
である。まず、ステップS100でクライアントプログ
ラム305は、組み込み機器100側に対して更新処理
モードへの移行を要求する。あるいは、組み込み機器1
00において、ユーザによる明示的な指示が行われた時
に、更新処理モードに移行したことを遠隔ホスト300
側に通知し、これを契機として遠隔ホスト300上のク
ライアントプログラム305が処理を開始するシステム
としてもよい。
The client program 305 is application software that runs on the remote host 300. First, in step S100, the client program 305 requests the embedded device 100 side to shift to the update processing mode. Alternatively, embedded device 1
00, the remote host 300 indicates that the mode has been changed to the update processing mode when an explicit instruction is given by the user.
A system may be used in which the client program 305 on the remote host 300 starts processing upon notification to the user.

【0036】ステップS101で転送ファイル生成部3
06において、前記三つ組みファイルから転送ファイル
を生成する。転送ファイルの実際の形式とこの中に含め
る正当性情報については、更新プログラム40側とクラ
イアントプログラム305側で取り決めておくこととす
る。ステップS102でネットワーク通信処理部307
において、更新プログラム40側が接続待ち状態である
ことを前提としてコネクション接続要求を発行する。
In step S101, the transfer file generator 3
At 06, a transfer file is generated from the triplet file. The actual format of the transfer file and the legitimacy information to be included in the transfer file are decided by the update program 40 side and the client program 305 side. In step S102, the network communication processing unit 307
At, the connection connection request is issued on the assumption that the update program 40 is in the connection waiting state.

【0037】ステップS103で更新プログラム40側
とのコネクションが確立したら、転送ファイルの送信処
理を開始する。ステップS104でファイル送信処理が
完了したら、更新プログラム40からの更新処理結果の
通知を待つ。最後に、ステップS105で処理結果を得
たら、これを組み込み機器100の識別子と共に保存
し、コネクションを切断して処理を終了する。
When the connection with the update program 40 side is established in step S103, the transfer file transmission process is started. When the file transmission processing is completed in step S104, the update program 40 waits for notification of the update processing result. Finally, when the processing result is obtained in step S105, this is stored together with the identifier of the embedded device 100, the connection is disconnected, and the processing ends.

【0038】以上のように、クライアントプログラム3
05側で、変更部分を含むオブジェクトファイル30
2、リンク定義情報303、及びロード定義情報304
からなる転送ファイルを生成して、組み込み機器100
側に送信し、このリンク定義情報303とロード定義情
報304に基づき、組み込み機器100上でシステムプ
ログラム20の再リンクとロードを行うようにしている
ので、プログラム更新処理における転送ファイルサイズ
(転送データ量)を大幅に削減することができる。これ
により、今後のネットワーク通信速度の高速化(ブロー
ドバンド化)に伴い、プログラム更新処理を非常に短時
間で行うことができる。
As described above, the client program 3
On the 05 side, the object file 30 including the changed part
2, link definition information 303, and load definition information 304
A transfer file consisting of
Since the system program 20 is re-linked and loaded on the embedded device 100 based on the link definition information 303 and the load definition information 304, the transfer file size (transfer data amount) in the program update process is transmitted. ) Can be significantly reduced. As a result, the program update process can be performed in a very short time as the network communication speed becomes faster (broadband).

【0039】また、組み込み機器100上のフラッシュ
メモリB105内にファイルシステムを形成し、この中
にシステムプログラム20を生成するための全てのオブ
ジェクトファイル10を格納しているので、更新オブジ
ェクトファイル302の整合性、正当性をチェックで
き、安全にプログラムの更新処理を行うことができる。
さらに、機能の追加・変更だけでなく、再リンクにより
不要な機能を容易に削除することもでき、組み込み機器
100におけるシステムプログラム20の最適化とハー
ドウェア資源の有効割当てができる。
Further, since a file system is formed in the flash memory B105 on the embedded device 100 and all the object files 10 for generating the system program 20 are stored in this, a matching of the update object file 302 is performed. The validity and correctness can be checked, and the program update process can be performed safely.
Furthermore, not only addition / change of functions but also unnecessary functions can be easily deleted by relinking, and the system program 20 in the embedded device 100 can be optimized and hardware resources can be effectively allocated.

【0040】実施の形態2.実施の形態1では、クライ
アントプログラム305側で変更部分を含むオブジェク
トファイル302、リンク定義情報303、及びロード
定義情報304からなる転送ファイルを生成して、更新
プログラム40側に送信していたが、次にクライアント
プログラム305側で転送ファイルを暗号化した上で送
信すると共に、更新プログラム40側に新たに復号化処
理部を設けて、受信した転送ファイルを復号化するよう
にしたプログラム更新処理の実施の形態を示す。
Embodiment 2. In the first embodiment, the transfer file including the object file 302 including the changed portion, the link definition information 303, and the load definition information 304 is generated on the client program 305 side and transmitted to the update program 40 side. The client program 305 side encrypts the transfer file and transmits the encrypted transfer file, and the update program 40 side is newly provided with a decryption processing unit to decrypt the received transfer file. The morphology is shown.

【0041】図4は、図1を修正した実施の形態2にお
けるフラッシュメモリA104の構成図である。図にお
いて、47は更新プログラム40内の復号化処理部であ
る。図5は、図1を修正した実施の形態2におけるクラ
イアントプログラム305の構成図である。図におい
て、308は転送ファイルの暗号化を行う暗号化処理部
である。
FIG. 4 is a block diagram of a flash memory A104 according to the second embodiment which is a modification of FIG. In the figure, 47 is a decryption processing unit in the update program 40. FIG. 5 is a configuration diagram of the client program 305 according to the second embodiment which is a modification of FIG. In the figure, 308 is an encryption processing unit that encrypts a transfer file.

【0042】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0043】図6は、図2を修正した実施の形態2にお
ける更新プログラム40の処理動作を示すフローチャー
トである。図を用いて、システムプログラム20の更新
処理における更新プログラム40の処理を説明する。ま
ず、更新プログラム40では、ステップS1でメイン処
理部41において、外部通信インタフェース103に対
して自ネットワークアドレスを設定したあと、ステップ
S2でネットワーク通信処理部42において、クライア
ントプログラム305からの接続要求を待つ。
FIG. 6 is a flowchart showing the processing operation of the update program 40 according to the second embodiment which is a modification of FIG. The processing of the update program 40 in the update processing of the system program 20 will be described with reference to the drawings. First, in the update program 40, the main processing unit 41 sets its own network address in the external communication interface 103 in step S1, and then the network communication processing unit 42 waits for a connection request from the client program 305 in step S2. .

【0044】ステップS3で、クライアントプログラム
305からの接続要求が到着しコネクションが確立した
ら、転送ファイルの受信待ち状態となる。転送ファイル
を受信すると、ステップS12で復号化処理部47にお
いて、転送ファイルの復号化を行う。ステップS4で更
新判定部43において、転送ファイルの形式や配布元等
の正当性をチェックし、転送ファイルが正当でなけれ
ば、ステップS5でクライアントプログラム305側に
エラー要因を通知すると共に、受信したファイルを破棄
して、コネクションを切断しプログラム更新処理を中止
する。
In step S3, when a connection request from the client program 305 arrives and a connection is established, a transfer file reception waiting state is entered. When the transfer file is received, the decryption processing unit 47 decrypts the transfer file in step S12. In step S4, the update determination unit 43 checks the legitimacy of the transfer file format, distribution source, etc. If the transfer file is not valid, the client program 305 is notified of the error factor in step S5, and the received file is received. Is discarded, the connection is disconnected, and the program update process is stopped.

【0045】一方、ステップS4で転送ファイルが正当
であれば、ステップS6で転送ファイルを分解し、受信
した三つ組みファイルのバージョン番号等の正当性をチ
ェックし、もし正当でなければ、この時点でプログラム
更新処理を中止する。また、ステップS6で三つ組みフ
ァイルが正当であれば、ステップS7でファイル管理部
44において、分解した更新オブジェクトファイル30
2、リンク定義情報303、およびロード定義情報30
4をフラッシュメモリB105内のファイルシステムに
格納する。この後の、ステップS8以降の処理は実施の
形態1の場合と同じなので省略する。
On the other hand, if the transfer file is valid in step S4, the transfer file is disassembled in step S6, and the validity of the version number of the received triplet file is checked. Cancel the program update process. If the triple file is valid in step S6, the file management unit 44 decomposes the updated object file 30 in step S7.
2, link definition information 303, and load definition information 30
4 is stored in the file system in the flash memory B105. Subsequent processing after step S8 is the same as in the case of the first embodiment, and will be omitted.

【0046】図7は、クライアントプログラム305の
処理動作を示すフローチャートである。図を用いて、シ
ステムプログラムの更新処理におけるクライアントプロ
グラム305の処理を説明する。まず、ステップS10
0でクライアントプログラム305は、組み込み機器1
00側に対して更新処理モードへの移行を要求する。ス
テップS101で転送ファイル生成部306において、
前記三つ組みファイルから転送ファイルを生成する。ス
テップS106で暗号化処理部308において、生成し
た転送ファイルを暗号化する。
FIG. 7 is a flowchart showing the processing operation of the client program 305. The process of the client program 305 in the system program update process will be described with reference to the drawings. First, step S10
0 means client program 305 is embedded device 1
It requests the 00 side to shift to the update processing mode. In step S101, the transfer file generation unit 306
A transfer file is generated from the triplet file. In step S106, the encryption processing unit 308 encrypts the generated transfer file.

【0047】次に、ステップS102でネットワーク通
信処理部307において、更新プログラム40側が接続
待ち状態であることを前提としてコネクション接続要求
を発行する。ステップS103で更新プログラム40側
とのコネクションが確立したら、転送ファイルの送信処
理を開始する。ステップS104でファイル送信処理が
完了したら、更新プログラム40からの更新処理結果の
通知を待つ。最後に、ステップS105で処理結果を得
たら、これを組み込み機器100の識別子と共に保存
し、コネクションを切断して処理を終了する。
Next, in step S102, the network communication processing unit 307 issues a connection connection request on the assumption that the update program 40 side is in a connection waiting state. When the connection with the update program 40 side is established in step S103, the transfer file transmission process is started. When the file transmission processing is completed in step S104, the update program 40 waits for notification of the update processing result. Finally, when the processing result is obtained in step S105, this is stored together with the identifier of the embedded device 100, the connection is disconnected, and the processing ends.

【0048】以上のように、クライアントプログラム3
05側に暗号処理部308を設けて、転送ファイルを暗
号化した上で送信する一方、更新プログラム40側に復
号化処理部47を設けて、受信した転送ファイルを復号
化するようにしているので、インターネット等のオープ
ンネットワークを介した更新処理においても、更新オブ
ジェクトファイル10の改ざん等の不正行為を防止で
き、安全にプログラムの更新処理を行うことができる。
As described above, the client program 3
The encryption processing unit 308 is provided on the 05 side to encrypt and transfer the transfer file, and the decryption processing unit 47 is provided on the update program 40 side to decrypt the received transfer file. Even in the update process via the open network such as the Internet, it is possible to prevent the fraudulent act such as falsification of the update object file 10 and to safely perform the program update process.

【0049】実施の形態3.実施の形態2では、転送フ
ァイルに対して暗号化を施すことにより、安全性を向上
させるようにしているが、次に更新プログラム40内に
新たにファイル圧縮伸張部を設けて、転送ファイルから
分解された更新オブジェクトファイル302等を圧縮し
た上でファイルシステム内に格納するようにしたプログ
ラム更新処理の実施の形態を示す。
Embodiment 3. In the second embodiment, the security is improved by encrypting the transfer file, but next, a new file compression / decompression unit is provided in the update program 40 to disassemble the transfer file. An embodiment of a program update process in which the created update object file 302 and the like are compressed and then stored in a file system will be described.

【0050】図8は、図1を修正した実施の形態3にお
けるフラッシュメモリA104の構成図である。図にお
いて、48はフラッシュメモリB105内に形成されて
いるファイルシステムに更新オブジェクトファイル30
2等を格納又は取り出す際にファイルの圧縮伸張を行う
ファイル圧縮伸張部である。
FIG. 8 is a block diagram of a flash memory A104 according to the third embodiment which is a modification of FIG. In the figure, numeral 48 indicates an update object file 30 in the file system formed in the flash memory B105.
It is a file compression / decompression unit that compresses / decompresses a file when storing or retrieving 2 or the like.

【0051】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0052】図9は、図2を修正した実施の形態3にお
ける更新プログラム40の処理動作を示すフローチャー
トである。図を用いて、システムプログラム20の更新
処理における更新プログラム40の処理を説明する。ま
ず、更新プログラム40では、ステップS1でメイン処
理部41において、外部通信インタフェース103に対
して自ネットワークアドレスを設定したあと、ステップ
S2でネットワーク通信処理部42において、クライア
ントプログラム305からの接続要求を待つ。
FIG. 9 is a flow chart showing the processing operation of the update program 40 in the third embodiment modified from FIG. The processing of the update program 40 in the update processing of the system program 20 will be described with reference to the drawings. First, in the update program 40, the main processing unit 41 sets its own network address in the external communication interface 103 in step S1, and then the network communication processing unit 42 waits for a connection request from the client program 305 in step S2. .

【0053】ステップS3で、クライアントプログラム
305からの接続要求が到着しコネクションが確立した
ら、転送ファイルの受信待ち状態となる。転送ファイル
を受信すると、ステップS4で更新判定部43におい
て、転送ファイルの形式や配布元等の正当性をチェック
し、転送ファイルが正当でなければ、ステップS5でク
ライアントプログラム305側にエラー要因を通知する
と共に、受信したファイルを破棄して、コネクションを
切断しプログラム更新処理を中止する。
In step S3, when a connection request from the client program 305 arrives and a connection is established, a transfer file reception waiting state is set. When the transfer file is received, the update determination unit 43 checks the validity of the transfer file format and distribution source in step S4. If the transfer file is not valid, the error factor is notified to the client program 305 side in step S5. At the same time, the received file is discarded, the connection is disconnected, and the program update process is stopped.

【0054】一方、ステップS4で転送ファイルが正当
であれば、ステップS6で転送ファイルを分解し、受信
した三つ組みファイルのバージョン番号等の正当性をチ
ェックし、もし正当でなければ、この時点でプログラム
更新処理を中止する。また、ステップS6で三つ組みフ
ァイルが正当であれば、ステップS13でファイル圧縮
伸張部48において、更新オブジェクトファイル302
を圧縮する。ステップS7でファイル管理部44におい
て、圧縮した更新オブジェクトファイル302、リンク
定義情報303、およびロード定義情報304をフラッ
シュメモリB105内のファイルシステムに格納する。
なお、本実施の形態3の場合、更新オブジェクトファイ
ル302以外の全ての依存オブジェクトファイル10
も、あらかじめ圧縮された状態でファイルシステム内に
格納されているものとする。
On the other hand, if the transfer file is valid in step S4, the transfer file is disassembled in step S6, and the validity of the version number of the received triplet file is checked. Cancel the program update process. If the triplet file is valid in step S6, the file compression / decompression unit 48 updates the update object file 302 in step S13.
Compress. In step S7, the file management unit 44 stores the compressed update object file 302, link definition information 303, and load definition information 304 in the file system in the flash memory B105.
In the case of the third embodiment, all the dependent object files 10 other than the update object file 302
Is also stored in the file system in a pre-compressed state.

【0055】次に、ステップS14でファイル圧縮伸張
部48において、ファイル管理部44を通じて取り出し
たオブジェクトファイル10を伸張する。ステップS8
でリンク処理部45において、リンク定義情報303に
基づき、ファイル管理部44を介してフラッシュメモリ
B105内のオブジェクトファイル10及び更新オブジ
ェクトファイル302から再リンクを実行し、新システ
ムプログラム20を生成する。ステップS9でロード処
理部46において、ロード定義情報304に基づき、新
システムプログラム20をフラッシュメモリA104上
の所定の位置にロードする。
Next, in step S14, the file compression / decompression unit 48 decompresses the object file 10 retrieved through the file management unit 44. Step S8
Then, in the link processing unit 45, based on the link definition information 303, relinking is executed from the object file 10 and the update object file 302 in the flash memory B 105 via the file management unit 44, and the new system program 20 is generated. In step S9, the load processing unit 46 loads the new system program 20 in a predetermined position on the flash memory A104 based on the load definition information 304.

【0056】この後、ステップS10でメイン処理部4
1に戻り、クライアントプログラム305側に正常終了
を通知し、コネクションを切断して処理を終了する。最
後に、ステップS11でスタートアッププログラム30
に制御を移し、フラッシュメモリA104に格納されて
いる新システムプログラム20を主記憶102上の所定
アドレスに展開して、このプログラムの開始アドレスに
制御を移す。
Thereafter, in step S10, the main processing unit 4
Returning to 1, the client program 305 is notified of normal termination, the connection is disconnected, and the processing is terminated. Finally, in step S11, the startup program 30
Then, the new system program 20 stored in the flash memory A104 is expanded to a predetermined address in the main memory 102, and the control is transferred to the start address of this program.

【0057】以上のように、更新プログラム40内にフ
ァイル圧縮伸張部48を設けて、更新オブジェクトファ
イル302を圧縮して格納するようにしているので、オ
ブジェクトファイル10格納用にファイルシステムを形
成しているフラッシュメモリB105の空き容量をより
多く確保することができる。これにより、現在のシステ
ムプログラム20にはリンクされていないが、再リンク
することにより機能追加が可能なオブジェクトファイル
10をより多く格納しておくことができる。また、フラ
ッシュメモリB105の搭載容量を小さく抑えることが
でき、搭載ハードウェア資源の制約が厳しい組み込み機
器100に対しても、本プログラム更新システムの適用
性が高めることができる。
As described above, since the file compression / decompression unit 48 is provided in the update program 40 to compress and store the update object file 302, a file system is formed for storing the object file 10. It is possible to secure a larger free space in the flash memory B105. As a result, it is possible to store a larger number of object files 10 that are not linked to the current system program 20 but can be re-linked by relinking. Further, the mounting capacity of the flash memory B105 can be suppressed small, and the applicability of the program updating system can be improved even for the embedded device 100 in which the restrictions on the mounted hardware resources are severe.

【0058】実施の形態4.実施の形態3では、転送さ
れた更新オブジェクトファイル302に対して圧縮を施
した上でファイルシステムに格納することにより、フラ
ッシュメモリB105を有効利用できるようにしている
が、次に更新プログラム40内に新たにオブジェクトリ
ンクテーブルを設けて、この管理情報に基づきシステム
プログラム20のリンク処理を行うようにしたプログラ
ム更新処理の実施の形態を示す。
Fourth Embodiment In the third embodiment, the transferred update object file 302 is compressed and then stored in the file system so that the flash memory B105 can be effectively used. An embodiment of a program update process in which an object link table is newly provided and the link process of the system program 20 is performed based on this management information will be described.

【0059】図10は、図1を修正した実施の形態4に
おけるフラッシュメモリA104の構成図である。図に
おいて、49はシステムプログラム20内の各機能とそ
れらを構成するオブジェクトファイル10群の対応を管
理するオブジェクトリンクテーブルである。
FIG. 10 is a block diagram of a flash memory A104 according to the fourth embodiment which is a modification of FIG. In the figure, 49 is an object link table that manages the correspondence between each function in the system program 20 and the group of object files 10 constituting them.

【0060】図11は、オブジェクトリンクテーブル4
9の構成図である。図において、50はこれまでに再リ
ンク処理が成功したリンク定義情報303を識別するた
めのリンク定義情報識別子、51はリンク日付、52は
個々のリンク定義情報303に含まれる機能一覧を示す
機能識別子リスト、53はリンク定義情報303に含ま
れるオブジェクトファイル10の一覧を示すオブジェク
トファイル名リスト、54は前記四つ組から構成される
オブジェクトリンクテーブル・エントリである。
FIG. 11 shows the object link table 4
It is a block diagram of FIG. In the figure, 50 is a link definition information identifier for identifying the link definition information 303 for which the relinking process has been successful so far, 51 is a link date, and 52 is a function identifier showing a list of functions included in each link definition information 303. A list, 53 is an object file name list showing a list of the object files 10 included in the link definition information 303, and 54 is an object link table entry composed of the four sets.

【0061】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0062】図12は、図2を修正した実施の形態4に
おける更新プログラム40のファイルシステムへの格納
処理以降の処理動作を示すフローチャートである。図2
に示した更新プログラム40のフローチャートのうち、
ステップS7のファイルシステムへの格納処理までは同
じであるため省略する。図を用いて、システムプログラ
ム20の更新処理における更新プログラム40のファイ
ルシステムへの格納処理以降を説明する。
FIG. 12 is a flow chart showing the processing operation after the storage processing of the update program 40 in the file system in the modified embodiment 4 of FIG. Figure 2
In the flowchart of the update program 40 shown in
The process up to the storage in the file system in step S7 is the same, and will be omitted. The process of storing the update program 40 in the file system in the update process of the system program 20 will be described with reference to the drawings.

【0063】まず、更新プログラム40では、ステップ
S8でリンク処理部45において、リンク定義情報30
3に基づき、ファイル管理部44を介してフラッシュメ
モリB105内のオブジェクトファイル10及び更新オ
ブジェクトファイル302から再リンクを実行し、新シ
ステムプログラム20を生成する。ステップS15でオ
ブジェクトリンクテーブル49を検索する。ステップS
16で現在のリンク定義情報303に付与されているリ
ンク定義情報識別子50に一致するエントリが見つから
なかったら、ステップS17で新たにオブジェクトリン
クテーブル・エントリ54を追加し、リンク定義情報3
03に記載されている機能識別子リスト52とオブジェ
クトファイル名リスト53の内容を複写する。
First, in the update program 40, the link definition information 30 is set in the link processing unit 45 in step S8.
3, the re-linking is executed from the object file 10 and the updated object file 302 in the flash memory B105 via the file management unit 44 to generate the new system program 20. In step S15, the object link table 49 is searched. Step S
If the entry that matches the link definition information identifier 50 assigned to the current link definition information 303 is not found in 16, the object link table entry 54 is newly added in step S17, and the link definition information 3
The contents of the function identifier list 52 and the object file name list 53 described in No. 03 are copied.

【0064】一方、リンク定義情報識別子50に一致す
るエントリが見つかった場合と併せて、ステップS18
でリンク日付51を更新設定する。次に、ステップS9
でロード処理部46において、ロード定義情報304に
基づき、新システムプログラム20をフラッシュメモリ
A104上の所定の位置にロードする。この後、ステッ
プS10でメイン処理部41に戻り、クライアントプロ
グラム305側に正常終了を通知し、コネクションを切
断して処理を終了する。最後に、ステップS11でスタ
ートアッププログラム30に制御を移し、フラッシュメ
モリA104に格納されている新システムプログラム2
0を主記憶102上の所定アドレスに展開して、このプ
ログラムの開始アドレスに制御を移す。
On the other hand, in addition to the case where an entry matching the link definition information identifier 50 is found, step S18
The link date 51 is updated and set. Next, step S9
Then, the load processing unit 46 loads the new system program 20 at a predetermined position on the flash memory A 104 based on the load definition information 304. After that, in step S10, the process returns to the main processing unit 41, the client program 305 side is notified of the normal end, the connection is disconnected, and the process ends. Finally, in step S11, the control is transferred to the startup program 30, and the new system program 2 stored in the flash memory A104 is stored.
0 is expanded to a predetermined address on the main memory 102, and control is transferred to the start address of this program.

【0065】以上のように、更新プログラム40内にオ
ブジェクトリンクテーブル49を設けて、リンク更新履
歴を保存、管理するようにしているので、現在リンクさ
れている機能の一覧を素早く正確に得ることができる。
また、過去のリンク履歴を保存することにより、あとで
組み込み機器100上だけで再リンクとロードを行うこ
ともできる。
As described above, since the object link table 49 is provided in the update program 40 to store and manage the link update history, the list of currently linked functions can be obtained quickly and accurately. it can.
Further, by saving the past link history, it is possible to relink and load only on the embedded device 100 later.

【0066】実施の形態5.実施の形態4では、リンク
定義情報303に関するリンク更新履歴を保存、管理す
ることにより、システムプログラム20を構成する機能
の管理や別途再構成を行えるようにしているが、次に転
送ファイル内に更新オブジェクトファイル302を含ま
ず、リンク定義情報303だけを転送する場合の実施の
形態を示す。
Embodiment 5. In the fourth embodiment, the link update history relating to the link definition information 303 is stored and managed so that the functions constituting the system program 20 can be managed or reconfigured separately. An embodiment in which only the link definition information 303 is transferred without including the object file 302 will be described.

【0067】図13は、実施の形態5における転送ファ
イルの構成図である。図において、55は転送ファイル
のヘッダ情報、56はヘッダ情報55の一部であり転送
ファイル内の後続に含まれるファイル種別を示すタグで
ある。実施の形態5の場合はリンク定義情報303のみ
であるため、タグ56にはその旨のフラグが設定されて
いるものとする。
FIG. 13 is a configuration diagram of a transfer file in the fifth embodiment. In the figure, 55 is header information of the transfer file, and 56 is a part of the header information 55, which is a tag indicating the file type included in the succeeding part of the transfer file. In the case of the fifth embodiment, since there is only the link definition information 303, it is assumed that a flag to that effect is set in the tag 56.

【0068】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0069】図14は、図2を修正した実施の形態5に
おける更新プログラム40の処理動作を示すフローチャ
ートである。図を用いて、システムプログラム20の更
新処理における更新プログラム40の処理を説明する。
まず、更新プログラム40では、ステップS1でメイン
処理部41において、外部通信インタフェース103に
対して自ネットワークアドレスを設定したあと、ステッ
プS2でネットワーク通信処理部42において、クライ
アントプログラム305からの接続要求を待つ。
FIG. 14 is a flow chart showing the processing operation of the update program 40 in the fifth embodiment modified from FIG. The processing of the update program 40 in the update processing of the system program 20 will be described with reference to the drawings.
First, in the update program 40, the main processing unit 41 sets its own network address in the external communication interface 103 in step S1, and then the network communication processing unit 42 waits for a connection request from the client program 305 in step S2. .

【0070】ステップS3で、クライアントプログラム
305からの接続要求が到着しコネクションが確立した
ら、転送ファイルの受信待ち状態となる。転送ファイル
を受信すると、ステップS4で更新判定部43におい
て、転送ファイルの形式や配布元等の正当性をチェック
し、転送ファイルが正当でなければ、ステップS5でク
ライアントプログラム305側にエラー要因を通知する
と共に、受信したファイルを破棄して、コネクションを
切断しプログラム更新処理を中止する。
In step S3, when the connection request from the client program 305 arrives and the connection is established, the reception of the transfer file is waited. When the transfer file is received, the update determination unit 43 checks the validity of the transfer file format and distribution source in step S4. If the transfer file is not valid, the error factor is notified to the client program 305 side in step S5. At the same time, the received file is discarded, the connection is disconnected, and the program update process is stopped.

【0071】一方、ステップS4で転送ファイルが正当
であれば、ステップS19で転送ファイルのヘッダ情報
55内のタグ56を参照し、後続に含まれるファイル種
別がリンク定義情報303のみかどうかをチェックす
る。リンク定義情報303のみでなければ、ステップS
6で受信した三つ組みファイルの正当性チェックを行う
が、この場合の処理は実施の形態1の場合と同じなので
省略する。転送ファイルがリンク定義情報303しか含
まない場合、ステップS20で更新判定部43におい
て、リンク定義情報303の正当性チェックを行う。
On the other hand, if the transfer file is valid in step S4, the tag 56 in the header information 55 of the transfer file is referred to in step S19, and it is checked whether the subsequent file type is only the link definition information 303. . If it is not only the link definition information 303, step S
The legitimacy of the triple file received in 6 is checked, but the processing in this case is the same as in the case of the first embodiment, and a description thereof will be omitted. When the transfer file includes only the link definition information 303, the update determination unit 43 checks the validity of the link definition information 303 in step S20.

【0072】ここで、もしリンク定義情報303に記載
されている全てのオブジェクトファイル10がフラッシ
ュメモリB105内に格納されていなければ、再リンク
処理が不可と判断し、プログラム更新処理を中止する。
正当性が確認されると、ステップS8でリンク処理部4
5において、リンク定義情報303に基づき、ファイル
管理部44を介してフラッシュメモリB105内のオブ
ジェクトファイル10から再リンクを実行し、新システ
ムプログラム20を生成する。この後の、ステップS9
以降の処理は実施の形態1の場合と同じなので省略す
る。
If all the object files 10 described in the link definition information 303 are not stored in the flash memory B105, it is determined that the relinking process is impossible and the program updating process is stopped.
If the legitimacy is confirmed, the link processing unit 4 in step S8.
In step 5, based on the link definition information 303, relinking is executed from the object file 10 in the flash memory B 105 via the file management unit 44 to generate the new system program 20. After this, step S9
Subsequent processing is the same as in the case of the first embodiment, and will be omitted.

【0073】以上のように、転送ファイル内に更新オブ
ジェクトファイル302を含まず、リンク定義情報30
3だけを転送するようにしているので、プログラム更新
処理における転送ファイルサイズ(転送データ量)を大
幅に削減することができる。これにより、機能削除を含
めたシステムプログラム20の再構成を非常に短時間で
行うことができる。
As described above, the link definition information 30 does not include the update object file 302 in the transfer file.
Since only 3 is transferred, the transfer file size (transfer data amount) in the program update process can be significantly reduced. As a result, the reconfiguration of the system program 20 including the function deletion can be performed in a very short time.

【0074】実施の形態6.実施の形態5では、転送フ
ァイル内に更新オブジェクトファイル302を含まず、
リンク定義情報303だけを転送することにより、シス
テムプログラム20の再構成を行えるようにしている
が、次に更新プログラム40内に新たにモジュール依存
関係テーブルを設けて、この関係情報に基づきプログラ
ム更新処理を行うようにしたプログラム更新処理の実施
の形態を示す。
Sixth Embodiment In the fifth embodiment, the transfer file does not include the update object file 302,
The system program 20 can be reconfigured by transferring only the link definition information 303. Next, a module dependency relationship table is newly provided in the update program 40, and the program update processing is performed based on this relationship information. An embodiment of a program update process for performing the above is shown.

【0075】図15は、図1を修正した実施の形態6に
おけるフラッシュメモリA104の構成図である。図に
おいて、57はシステムプログラム20を構成するオブ
ジェクトファイル10とそれに依存する別オブジェクト
ファイルの関係を示したオブジェクト依存関係テーブル
である。
FIG. 15 is a block diagram of a flash memory A104 in the sixth embodiment modified from FIG. In the figure, reference numeral 57 is an object dependency relationship table showing the relationship between the object file 10 constituting the system program 20 and another object file dependent on it.

【0076】図16は、オブジェクト依存関係テーブル
57の構成図である。図において、58はオブジェクト
ファイル名、59は各オブジェクトファイルに関連する
オブジェクトファイルの一覧を示す依存オブジェクトフ
ァイル名リスト、60は前記の組から構成されるオブジ
ェクト依存関係テーブル・エントリである。
FIG. 16 is a configuration diagram of the object dependency relationship table 57. In the figure, 58 is an object file name, 59 is a dependent object file name list showing a list of object files related to each object file, and 60 is an object dependency relationship table entry composed of the above group.

【0077】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0078】図17は、図2を修正した実施の形態6に
おける更新プログラム40の処理動作を示すフローチャ
ートである。図を用いて、システムプログラム20の更
新処理における更新プログラム40の処理を説明する。
まず、更新プログラム40では、ステップS1でメイン
処理部41において、外部通信インタフェース103に
対して自ネットワークアドレスを設定したあと、ステッ
プS2でネットワーク通信処理部42において、クライ
アントプログラム305からの接続要求を待つ。
FIG. 17 is a flow chart showing the processing operation of the update program 40 in the sixth embodiment modified from FIG. The processing of the update program 40 in the update processing of the system program 20 will be described with reference to the drawings.
First, in the update program 40, the main processing unit 41 sets its own network address in the external communication interface 103 in step S1, and then the network communication processing unit 42 waits for a connection request from the client program 305 in step S2. .

【0079】ステップS3で、クライアントプログラム
305からの接続要求が到着しコネクションが確立した
ら、転送ファイルの受信待ち状態となる。転送ファイル
を受信すると、ステップS4で更新判定部43におい
て、転送ファイルの形式や配布元等の正当性をチェック
し、転送ファイルが正当でなければ、ステップS5でク
ライアントプログラム305側にエラー要因を通知する
と共に、受信したファイルを破棄して、コネクションを
切断しプログラム更新処理を中止する。
In step S3, when the connection request from the client program 305 arrives and the connection is established, the reception of the transfer file is waited. When the transfer file is received, the update determination unit 43 checks the validity of the transfer file format and distribution source in step S4. If the transfer file is not valid, the error factor is notified to the client program 305 side in step S5. At the same time, the received file is discarded, the connection is disconnected, and the program update process is stopped.

【0080】一方、ステップS4で転送ファイルが正当
であれば、ステップS6で転送ファイルを分解し、受信
した三つ組みファイルのバージョン番号等の正当性をチ
ェックし、もし正当でなければ、この時点でプログラム
更新処理を中止する。引き続き、ステップS21で更新
判定部43において、オブジェクト依存関係テーブル5
7を参照し、リンク定義情報303に記載されている各
オブジェクトファイル10毎に、オブジェクトファイル
名58エントリに対する依存オブジェクトファイル名リ
スト59から依存関係をチェックする。
On the other hand, if the transfer file is valid in step S4, the transfer file is disassembled in step S6, and the validity of the version number of the received triplet file is checked. Cancel the program update process. Subsequently, in step S21, the update determination unit 43 causes the object dependency table 5
7, the dependency relation is checked from the dependent object file name list 59 for the object file name 58 entry for each object file 10 described in the link definition information 303.

【0081】ステップS22で、フラッシュメモリB1
05内に格納されているオブジェクトファイル10に不
足がないかチェックし、不足している場合はステップS
23でクライアントプログラム305に対して、追加オ
ブジェクトの転送要求を発行する。
In step S22, the flash memory B1
It is checked whether the object file 10 stored in 05 is insufficient, and if it is insufficient, step S
At 23, a transfer request for the additional object is issued to the client program 305.

【0082】また、ステップS22でオブジェクトファ
イルが不足していない場合は、ステップS7でファイル
管理部44において、追加オブジェクトも含めて更新オ
ブジェクトファイル302をフラッシュメモリB105
内のファイルシステムに格納する。この後の、ステップ
S8以降の処理は実施の形態1の場合と同じなので省略
する。
If there is no shortage of object files in step S22, the updated object file 302 including the additional objects is stored in the flash memory B105 in the file management unit 44 in step S7.
Store in the file system inside. Subsequent processing after step S8 is the same as in the case of the first embodiment, and will be omitted.

【0083】以上のように、更新プログラム40内にオ
ブジェク依存関係テーブル57を設けて、オブジェクト
間の依存関係の正当性を検査するようにしているので、
プログラム更新処理の安全性を確保することができる。
さらに、不足のオブジェクトファイル10があれば自動
的に追加転送するようにしているので、プログラム更新
処理の利便性を向上することができる。
As described above, since the object dependency table 57 is provided in the update program 40 to check the validity of the dependency between objects,
It is possible to ensure the safety of the program update process.
Further, since the additional transfer is automatically performed if there is a deficient object file 10, the convenience of the program update process can be improved.

【0084】実施の形態7.実施の形態6では、転送フ
ァイル内のリンク定義情報303に記載されている各オ
ブジェクトファイル10の依存関係の正当性を検査した
上で、不足のオブジェクトファイル10があれば自動的
に追加転送を要求するようにしているが、次に更新プロ
グラム40内に新たにインストール情報テーブルを設け
て、流通ソフトウェアを管理できるようにしたプログラ
ム更新処理の実施の形態を示す。
Seventh Embodiment In the sixth embodiment, the correctness of the dependency relationship of each object file 10 described in the link definition information 303 in the transfer file is checked, and if there is an insufficient object file 10, an additional transfer is automatically requested. However, next, an embodiment of the program update process in which an installation information table is newly provided in the update program 40 so that the distribution software can be managed will be described.

【0085】図18は、図1を修正した実施の形態7に
おけるフラッシュメモリA104の構成図である。図に
おいて、61はデバイスドライバやミドルウェア等の流
通ソフトウェアのインストール情報を保存、管理するイ
ンストール情報テーブルである。図19は、インストー
ル情報テーブル61の構成図である。図において、62
はオブジェクト名、63はオブジェクトのバージョン番
号、64は更新日付、65はオブジェクトのリンク状況
を示すリンク状況フラグ、66は前記の四つ組から構成
されるインストール情報テーブル・エントリである。
FIG. 18 is a block diagram of a flash memory A104 according to the seventh embodiment which is a modification of FIG. In the figure, reference numeral 61 is an installation information table for storing and managing installation information of distribution software such as device drivers and middleware. FIG. 19 is a configuration diagram of the installation information table 61. In the figure, 62
Is the object name, 63 is the version number of the object, 64 is the update date, 65 is the link status flag indicating the link status of the object, and 66 is the installation information table entry composed of the above-mentioned four sets.

【0086】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0087】図20は、図2を修正した実施の形態7に
おける更新プログラム40の処理動作を示すフローチャ
ートである。図を用いて、システムプログラム20の更
新処理における更新プログラム40の処理を説明する。
まず、更新プログラム40では、ステップS1でメイン
処理部41において、外部通信インタフェース103に
対して自ネットワークアドレスを設定したあと、ステッ
プS2でネットワーク通信処理部42において、クライ
アントプログラム305からの接続要求を待つ。
FIG. 20 is a flow chart showing the processing operation of the update program 40 in the seventh embodiment modified from FIG. The processing of the update program 40 in the update processing of the system program 20 will be described with reference to the drawings.
First, in the update program 40, the main processing unit 41 sets its own network address in the external communication interface 103 in step S1, and then the network communication processing unit 42 waits for a connection request from the client program 305 in step S2. .

【0088】ステップS3で、クライアントプログラム
305からの接続要求が到着しコネクションが確立した
ら、転送ファイルの受信待ち状態となる。転送ファイル
を受信すると、ステップS4で更新判定部43におい
て、転送ファイルの形式や配布元等の正当性をチェック
し、転送ファイルが正当でなければ、ステップS5でク
ライアントプログラム305側にエラー要因を通知する
と共に、受信したファイルを破棄して、コネクションを
切断しプログラム更新処理を中止する。
In step S3, when a connection request from the client program 305 arrives and a connection is established, the transfer file waits. When the transfer file is received, the update determination unit 43 checks the validity of the transfer file format and distribution source in step S4. If the transfer file is not valid, the error factor is notified to the client program 305 side in step S5. At the same time, the received file is discarded, the connection is disconnected, and the program update process is stopped.

【0089】一方、ステップS4で転送ファイルが正当
であれば、ステップS24で転送ファイルのヘッダ情報
55内のタグ56を参照し、プログラム更新ではなくソ
フトウェアのインストール情報の要求かどうかをチェッ
クする。インストール情報の要求であれば、ステップS
25でメイン処理部41において、インストール情報テ
ーブル61の内容をクライアントプログラム305側に
返信し、コネクションを切断して処理を終了する。イン
ストール情報の要求でなければ、実施の形態1の場合と
同様に、ステップS6からステップS10で、新システ
ムプログラム20のリンクとロードを行い、クライアン
トプログラム305とのコネクションを切断する。
On the other hand, if the transfer file is valid in step S4, the tag 56 in the header information 55 of the transfer file is referred to in step S24 to check whether the request is for software installation information instead of program update. If it is a request for installation information, step S
In 25, the main processing unit 41 returns the contents of the installation information table 61 to the client program 305 side, disconnects the connection, and ends the processing. If it is not a request for installation information, linking and loading of the new system program 20 are performed and the connection with the client program 305 is disconnected in steps S6 to S10, as in the first embodiment.

【0090】その後、ステップS26でメイン処理部4
1において、インストール情報の追加・修正を行う。イ
ンストール情報テーブル61内のオブジェクト名62エ
ントリがない更新オブジェクトに対しては、新たにエン
トリを追加する。既にエントリがある変更オブジェクト
に対しては、バージョン番号63、更新日付64エント
リを修正する。
Then, in step S26, the main processing unit 4
In 1, add / modify installation information. An entry is newly added to the update object having no entry of the object name 62 in the installation information table 61. For a change object that already has an entry, the version number 63 and update date 64 entries are modified.

【0091】また、システムプログラム20のリンクか
ら削除されたオブジェクトに対しては、リンク状況65
エントリに未リンクを印付ける。最後に、ステップS1
1でスタートアッププログラム30に制御を移し、フラ
ッシュメモリA104に格納されている新システムプロ
グラム20を主記憶102上の所定アドレスに展開し
て、このプログラムの開始アドレスに制御を移す。
Also, for the object deleted from the link of the system program 20, the link status 65
Mark entries as unlinked. Finally, step S1
At 1, the control is transferred to the startup program 30, the new system program 20 stored in the flash memory A 104 is expanded to a predetermined address on the main memory 102, and the control is transferred to the start address of this program.

【0092】以上のように、更新プログラム40内にイ
ンストール情報テーブル61を設けて、組み込み機器1
00上のシステムプログラム20にインストールされて
いる流通ソフトウェアの一覧を保存、管理し、遠隔ホス
ト側に返信するようにしているので、メーカやソフトウ
ェア・ベンダが供給する流通ソフトウェアのインストー
ル状況を遠隔ホストにて把握して、流通ソフトウェア毎
の課金や不正なインストール等を管理することができ
る。
As described above, the installation information table 61 is provided in the update program 40, and the embedded device 1
Since the list of distribution software installed in the system program 20 on 00 is stored and managed and returned to the remote host side, the installation status of the distribution software supplied by the manufacturer or software vendor can be sent to the remote host. It is possible to manage billing and illegal installation for each distributed software.

【0093】実施の形態8.実施の形態7では、インス
トールされている流通ソフトウェアの一覧を管理し、遠
隔ホスト側に返信することで、流通ソフトウェア毎の課
金等の管理を行えるようにしているが、次に更新プログ
ラム40内に新たにプログラム退避部とプログラム退避
領域を設けて、あとで旧システムプログラムを復帰でき
るようにしたプログラム更新処理の実施の形態を示す。
Eighth Embodiment In the seventh embodiment, the list of installed distribution software is managed and returned to the remote host side so that the accounting of each distribution software can be managed. An embodiment of a program update process in which a new program save section and a program save area are newly provided so that the old system program can be restored later is shown.

【0094】図21は、図1を修正した実施の形態8に
おけるフラッシュメモリA104の構成図である。図に
おいて、67は旧システムプログラム20の退避と復帰
処理を行うプログラム退避処理部、68は旧システムプ
ログラム20を退避するためのプログラム退避領域であ
る。
FIG. 21 is a block diagram of a flash memory A104 according to the eighth embodiment modified from FIG. In the figure, 67 is a program save processing unit that saves and restores the old system program 20, and 68 is a program save area for saving the old system program 20.

【0095】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0096】図22は、図2を修正した実施の形態8に
おける更新プログラム40のリンク処理以降の処理動作
を示すフローチャートである。図を用いて、システムプ
ログラム20の更新処理における更新プログラム40の
リンク処理以降を説明する。まず、更新プログラム40
では、ステップS8で新システムプログラム20をリン
クしたあと、ステップS27でプログラム退避処理部6
7において、旧システムプログラム20をプログラム退
避領域68に退避する。
FIG. 22 is a flowchart showing the processing operation after the link processing of the update program 40 in the eighth embodiment modified from FIG. The link process of the update program 40 and the subsequent processes in the update process of the system program 20 will be described with reference to the drawings. First, update program 40
Then, after linking the new system program 20 in step S8, the program save processor 6 is linked in step S27.
In 7, the old system program 20 is saved in the program save area 68.

【0097】ステップS9でロード処理部46におい
て、ロード定義情報304に基づき、新システムプログ
ラム20をフラッシュメモリA104上の所定の位置に
ロードする。この後、ステップS10でメイン処理部4
1に戻り、クライアントプログラム305側に正常終了
を通知し、コネクションを切断して処理を終了する。
In step S9, the load processing unit 46 loads the new system program 20 in a predetermined position on the flash memory A104 based on the load definition information 304. After this, in step S10, the main processing unit 4
Returning to 1, the client program 305 is notified of normal termination, the connection is disconnected, and the processing is terminated.

【0098】次に、ステップS11でスタートアッププ
ログラム30に制御を移し、フラッシュメモリA104
に格納されている新システムプログラム20を主記憶1
02上の所定アドレスに展開して、このプログラムの開
始アドレスに制御を移す。最後に、ステップS28で新
システムプログラム20の再起動が失敗したら、再びス
タートアッププログラム30に制御を移し、ステップS
29でプログラム退避領域68から旧システムプログラ
ム20を再起動する。
Next, in step S11, the control is transferred to the startup program 30, and the flash memory A104
The new system program 20 stored in the main memory 1
02 is expanded to a predetermined address, and control is transferred to the start address of this program. Finally, if the restart of the new system program 20 fails in step S28, the control is transferred to the startup program 30 again, and step S
At 29, the old system program 20 is restarted from the program save area 68.

【0099】以上のように、更新プログラム40内にプ
ログラム退避処理部67とプログラム退避領域68を設
けて、新システムプログラム20の起動に失敗した場
合、退避しておいた旧システムプログラム20を自動的
に復帰するようにしているので、プログラム更新処理に
伴う信頼性を向上することができる。
As described above, the program save processing unit 67 and the program save area 68 are provided in the update program 40, and when the new system program 20 fails to start, the saved old system program 20 is automatically deleted. Since the process is returned to, it is possible to improve the reliability associated with the program update process.

【0100】実施の形態9.実施の形態8では、新シス
テムプログラム20の再起動が失敗した場合、退避して
おいた旧システムプログラム20を自動的に復帰できる
ようにしているが、次に更新プログラム40内に新たに
ブート選択ベースアドレスを設けて、再起動するシステ
ムプログラムを切り替えられるようにしたプログラム更
新処理の実施の形態を示す。
Ninth Embodiment In the eighth embodiment, if the restart of the new system program 20 fails, the saved old system program 20 can be automatically restored. However, next boot selection is newly made in the update program 40. An embodiment of a program update process in which a system address to be restarted can be switched by providing a base address will be described.

【0101】図23は、図1を修正した実施の形態9に
おけるフラッシュメモリA104と新たなフラッシュメ
モリCの構成図である。図において、107は新たな第
三のフラッシュメモリC、69は任意のシステムプログ
ラムN、70は再起動した時にブート対象とするシステ
ムプログラムの先頭アドレスを格納するブート選択ベー
スアドレスである。ここで、任意のシステムプログラム
Nは過去に生成したシステムプログラムで、この場合に
はフラッシュメモリC107に格納されているものであ
る。
FIG. 23 is a block diagram of a flash memory A104 and a new flash memory C according to the ninth embodiment modified from FIG. In the figure, 107 is a new third flash memory C, 69 is an arbitrary system program N, and 70 is a boot selection base address for storing the start address of the system program to be booted when restarted. Here, the arbitrary system program N is a system program generated in the past, and in this case, it is stored in the flash memory C107.

【0102】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0103】図24は、図2を修正した実施の形態9に
おける更新プログラム40のリンク処理以降の処理動作
を示すフローチャートである。図を用いて、システムプ
ログラム20の更新処理における更新プログラム40の
リンク処理以降を説明する。まず、更新プログラム40
では、ステップS8で新システムプログラム20をリン
クしたあと、ステップS9でロード処理部46におい
て、ロード定義情報304に基づき、システムプログラ
ムN69をフラッシュメモリA104又はフラッシュメ
モリC107上の任意の空き領域にロードする。
FIG. 24 is a flowchart showing the processing operation after the link processing of the update program 40 in the embodiment 9 in which FIG. 2 is modified. The link process of the update program 40 and the subsequent processes in the update process of the system program 20 will be described with reference to the drawings. First, update program 40
Then, after linking the new system program 20 in step S8, in step S9, the load processing unit 46 loads the system program N69 into any free area on the flash memory A104 or flash memory C107 based on the load definition information 304. .

【0104】ステップS30でロード先の先頭アドレス
をブート選択ベースアドレス70に格納する。その後、
ステップS10でクライアントプログラム305とのコ
ネクションを切断する。最後に、ステップS11でスタ
ートアッププログラム30に制御を移し、ブート選択ベ
ースアドレス70で指定されているシステムプログラム
N69を主記憶102上の所定アドレスに展開して、こ
のプログラムの開始アドレスに制御を移す。なお、別の
タイミング及び手段において、ブート選択ベースアドレ
ス70を書き換えることにより、任意のシステムプログ
ラムN69を起動することもできる。
In step S30, the top address of the load destination is stored in the boot selection base address 70. afterwards,
In step S10, the connection with the client program 305 is disconnected. Finally, in step S11, control is transferred to the startup program 30, the system program N69 designated by the boot selection base address 70 is expanded to a predetermined address on the main memory 102, and control is transferred to the start address of this program. Note that the arbitrary system program N69 can be started by rewriting the boot selection base address 70 at another timing and means.

【0105】以上のように、システムプログラムN69
をフラッシュメモリA104やフラッシュメモリC10
7の任意の空き領域にロードし、ブート選択ベースアド
レス70を設けて、再起動するシステムプログラムを切
り替えられるようにしているので、フラッシュメモリの
空き容量に応じて、複数のシステムプログラム20を保
持することにより、システムプログラムの入替えの柔軟
性を向上することができる。
As described above, the system program N69
Flash memory A104 and flash memory C10
7, the boot selection base address 70 is provided, and the system program to be restarted can be switched. Therefore, a plurality of system programs 20 are held according to the free space of the flash memory. As a result, the flexibility of replacing the system program can be improved.

【0106】実施の形態10.実施の形態9では、新シ
ステムプログラム20をフラッシュメモリC107等の
任意の空き領域にロードし、起動対象のシステムプログ
ラムN69を切り替えられるようにしているが、次に携
帯電話やPDA(Personal Digital
Assistance)等のユーザインタフェースを持
つ組み込み機器100において、更新プログラム40内
に新たに機能選択部を設け、更新オブジェクトファイル
302の転送を伴わずに組み込み機器100上だけでシ
ステムプログラムの再構成するようにしたプログラム更
新処理の実施の形態を示す。
Embodiment 10. FIG. In the ninth embodiment, the new system program 20 is loaded in an arbitrary free area of the flash memory C107 or the like so that the system program N69 to be activated can be switched, but next, a mobile phone or a PDA (Personal Digital).
In the embedded device 100 having a user interface such as Assistance), a function selecting unit is newly provided in the update program 40 so that the system program can be reconfigured only on the embedded device 100 without transferring the update object file 302. An embodiment of the program updating process is shown.

【0107】図25は、図23を修正した実施の形態1
0における組み込み機器100の構成図である。図にお
いて、108は組み込み機器のユーザインタフェース、
72はユーザの操作によりシステムプログラム20を再
構成するための機能選択処理をする機能選択部である。
FIG. 25 shows a modification of the first embodiment shown in FIG.
FIG. 3 is a configuration diagram of an embedded device 100 in 0. In the figure, 108 is a user interface of the embedded device,
Reference numeral 72 denotes a function selection unit that performs a function selection process for reconfiguring the system program 20 by a user operation.

【0108】次に動作について説明する。図26は、図
2を修正した実施の形態10における更新プログラム4
0の処理動作を示すフローチャートである。図を用い
て、システムプログラム20の更新処理における更新プ
ログラム40の処理を説明する。本実施の形態では、実
施の形態1における初期動作のように、スタートアップ
プログラム30の再起動によりプログラム更新モードに
移行するのではなく、通常動作モードにおいて、更新プ
ログラム40が動作するものとする。
Next, the operation will be described. FIG. 26 shows an update program 4 according to the tenth embodiment which is a modification of FIG.
It is a flowchart which shows the processing operation of 0. The processing of the update program 40 in the update processing of the system program 20 will be described with reference to the drawings. In the present embodiment, it is assumed that the update program 40 operates in the normal operation mode instead of shifting to the program update mode by restarting the startup program 30 as in the initial operation in the first embodiment.

【0109】まず、更新プログラム40では、ステップ
S31で機能選択部72において、ユーザインタフェー
ス108を介してユーザ操作による機能選択を受け付け
る。ステップS32で、選択された機能に対応する全て
のオブジェクトファイル10がフラッシュメモリB10
5内に格納されていなければ、再リンク処理が不可と判
断し、ステップS33でリンク処理エラーを表示してユ
ーザに通知する。さらに、ステップS34で機能選択を
やり直すか問い合わせ、継続しない場合は更新プログラ
ム40を終了し、継続する場合はステップS31に戻
り、再度機能選択を受け付ける。
First, in the update program 40, the function selection section 72 receives the function selection by the user operation via the user interface 108 in step S31. In step S32, all the object files 10 corresponding to the selected function are stored in the flash memory B10.
If it is not stored in 5, the relinking process is determined to be impossible, and a linking process error is displayed in step S33 to notify the user. Further, in step S34, an inquiry is made as to whether or not to perform the function selection again. If the function selection is not continued, the update program 40 is terminated, and if it is continued, the process returns to step S31 to accept the function selection again.

【0110】一方、ステップS32で機能選択が正しい
ことが確認されたら、ステップS8でリンク処理部45
において、リンク定義情報303に基づき、ファイル管
理部44を介してフラッシュメモリB105内のオブジ
ェクトファイル10から再リンクを実行し、新システム
プログラム20を生成する。そして、ステップS35で
機能選択部72において、リンク処理が正常終了したこ
とを表示してユーザに通知する。
On the other hand, if it is confirmed in step S32 that the function selection is correct, in step S8 the link processing unit 45
In step S 2, based on the link definition information 303, relinking is executed from the object file 10 in the flash memory B 105 via the file management unit 44 to generate the new system program 20. Then, in step S35, the function selecting unit 72 displays that the link processing has been normally completed to notify the user.

【0111】ステップS9でロード処理部46におい
て、ロード定義情報304に基づき、システムプログラ
ムN69をフラッシュメモリA104又はフラッシュメ
モリC107上の任意の空き領域にロードする。ステッ
プS30でロード先の先頭アドレスをブート選択ベース
アドレス70に格納する。最後に、ステップS11でス
タートアッププログラム30に制御を移し、ブート選択
ベースアドレス70で指定されているシステムプログラ
ムN69を主記憶102上の所定アドレスに展開して、
このプログラムの開始アドレスに制御を移す。
In step S9, the load processing unit 46 loads the system program N69 into any free area on the flash memory A104 or flash memory C107 based on the load definition information 304. In step S30, the top address of the load destination is stored in the boot selection base address 70. Finally, in step S11, the control is transferred to the startup program 30, the system program N69 designated by the boot selection base address 70 is expanded to a predetermined address on the main memory 102,
Control is transferred to the start address of this program.

【0112】以上のように、ユーザインタフェース10
8を持つ組み込み機器100において、更新オブジェク
トファイル302の転送を伴わずに組み込み機器100
上だけでプログラムの再構成を行えるようにしているの
で、組み込み機器100毎に機能のカスタマイズができ
る。これにより、不要な機能を削除した場合、システム
プログラム20を格納しているフラッシュメモリA10
4の空き領域をより多く確保することができ、空いた分
をユーザ用のデータ格納領域別途ダウンロードしたデー
タファイル用やアドレス帳用などに割当てることもでき
る。
As described above, the user interface 10
8 has a built-in device 100 that does not involve transfer of the update object file 302.
Since the program can be reconfigured only by the above, the function can be customized for each embedded device 100. As a result, when the unnecessary function is deleted, the flash memory A10 storing the system program 20.
It is possible to secure a larger free space of 4 and to allocate the free space to a data storage area for a user, a data file downloaded separately, an address book, and the like.

【0113】実施の形態11.実施の形態10では、ユ
ーザインタフェース108を持つ組み込み機器100に
おいて、更新オブジェクトファイル302の転送を伴わ
ずに組み込み機器100上だけでシステムプログラム2
0の再構成を行えるようにしているが、次にプログラム
更新処理において、更新オブジェクトファイル302の
転送受け付け処理を行うタスクと、リンク、ロード処理
を行うタスクとに分割して構成し、組み込み機器100
の通常動作モード中に自動的に更新オブジェクトファイ
ル302の転送受け付けを行えるようにしたプログラム
更新処理の実施の形態を示す。
Eleventh Embodiment In the tenth embodiment, in the embedded device 100 having the user interface 108, the system program 2 is executed only on the embedded device 100 without transferring the update object file 302.
However, in the program update processing, the embedded object 100 is divided into a task that performs transfer acceptance processing of the update object file 302 and a task that performs link and load processing.
An embodiment of a program update process that automatically accepts the transfer of the update object file 302 during the normal operation mode will be described.

【0114】図27は、図23を修正した実施の形態1
1におけるフラッシュメモリA104と新たなフラッシ
ュメモリC107の構成図である。図において、73は
プログラム更新処理のうち更新オブジェクトファイル3
02の転送受け付け処理を行う更新処理部である更新プ
ログラムA、74はプログラム更新処理のうちリンク、
ロード処理を行う更新処理部である更新プログラムB、
75は更新プログラムA73によってフラッシュメモリ
B105内に格納された更新オブジェクトファイル30
2の転送受け付け履歴を示す転送受け付け履歴テーブル
である。
FIG. 27 shows a modified embodiment 1 of FIG.
3 is a configuration diagram of a flash memory A104 and a new flash memory C107 in FIG. In the figure, reference numeral 73 indicates the update object file 3 in the program update process.
The update program A, which is an update processing unit for performing the transfer acceptance processing of 02, is a link in the program update processing,
An update program B, which is an update processing unit that performs load processing,
75 is the update object file 30 stored in the flash memory B105 by the update program A73.
3 is a transfer acceptance history table showing a second transfer acceptance history.

【0115】図28は、転送受け付け履歴テーブル75
の構成図である。図において、76は転送されてきたリ
ンク定義情報303を識別するためのリンク定義情報識
別子、77は転送受け付け日付、78は更新オブジェク
トファイル名リスト、79は定刻や組み込み機器100
の待機中、次回起動時等のタイミングを記したリンク処
理実行条件、80は転送受け付け後にリンク処理が実行
済みかどうかを示すリンク処理済みフラグ、81は前記
五つ組みから構成される転送受け付け履歴テーブル・エ
ントリである。
FIG. 28 shows the transfer acceptance history table 75.
It is a block diagram of. In the figure, 76 is a link definition information identifier for identifying the transferred link definition information 303, 77 is a transfer acceptance date, 78 is an updated object file name list, 79 is a fixed time or embedded device 100.
In the standby state, the link processing execution condition indicating the timing of the next start, 80 is a link processed flag indicating whether the link processing has been executed after the transfer is accepted, 81 is a transfer acceptance history composed of the above five It is a table entry.

【0116】次に動作について説明する。図29は、図
2を修正した実施の形態11における更新プログラムA
73の処理動作を示すフローチャートである。図を用い
て、システムプログラム20の更新処理における更新プ
ログラムA73の処理を説明する。なお、更新プログラ
ムA73はシステムプログラム20内の一つの常駐タス
クとして存在し、システム初期化時に起動されるものと
する。
Next, the operation will be described. FIG. 29 shows an update program A according to the eleventh embodiment which is a modification of FIG.
It is a flowchart which shows the processing operation of 73. The processing of the update program A73 in the update processing of the system program 20 will be described with reference to the drawings. The update program A73 exists as one resident task in the system program 20 and is activated at the time of system initialization.

【0117】まず、ステップS1でメイン処理部41に
おいて、外部通信インタフェース103に対して自ネッ
トワークアドレスを設定したあと、ステップS2でネッ
トワーク通信処理部42において、クライアントプログ
ラム305からの接続要求を待つ。ステップS3で、ク
ライアントプログラム305からの接続要求が到着しコ
ネクションが確立したら、転送ファイルの受信待ち状態
となる。転送ファイルを受信すると、ステップS4で更
新判定部43において、転送ファイルの形式や配布元等
の正当性をチェックし、転送ファイルが正当でなけれ
ば、ステップS5でクライアントプログラム305側に
エラー要因を通知すると共に、受信したファイルを破棄
して、コネクションを切断しプログラム更新処理を中止
する。
First, in step S1, the main processing unit 41 sets its own network address in the external communication interface 103, and then in step S2, the network communication processing unit 42 waits for a connection request from the client program 305. In step S3, when a connection request from the client program 305 arrives and a connection is established, a transfer file reception waiting state is entered. When the transfer file is received, the update determination unit 43 checks the validity of the transfer file format and distribution source in step S4. If the transfer file is not valid, the error factor is notified to the client program 305 side in step S5. At the same time, the received file is discarded, the connection is disconnected, and the program update process is stopped.

【0118】一方、ステップS4で転送ファイルが正当
であれば、ステップS6で転送ファイルを分解し、受信
した三つ組みファイルのバージョン番号等の正当性をチ
ェックし、もし正当でなければ、この時点でプログラム
更新処理を中止する。ステップS6で正当であればステ
ップS7でファイル管理部44において、分解した更新
オブジェクトファイル302、リンク定義情報303、
およびロード定義情報304をフラッシュメモリB10
5内のファイルシステムに格納する。
On the other hand, if the transfer file is valid in step S4, the transfer file is disassembled in step S6, and the validity of the version number of the received triplet file is checked. Cancel the program update process. If it is valid in step S6, in the file management unit 44 in step S7, the decomposed update object file 302, the link definition information 303,
And load definition information 304 in the flash memory B10
Stored in the file system in 5.

【0119】ステップS36で転送受け付け履歴テーブ
ル・エントリ81を追加し、リンク処理実行条件79を
設定すると共に、リンク処理済みフラグ80エントリに
リンク処理未を印付ける。最後に、ステップS10でメ
イン処理部41に戻り、クライアントプログラム305
側に正常終了を通知し、コネクションを切断して処理を
終了する。ここまでの処理を一回の更新オブジェクトフ
ァイル302の受け付け処理とし、再びステップS3に
戻り、クライアントプログラム305からの接続要求待
ちとなる。
In step S36, the transfer acceptance history table entry 81 is added, the link processing execution condition 79 is set, and the link processing completed flag 80 entry is marked with no link processing. Finally, in step S10, the process returns to the main processing unit 41, and the client program 305
Side is notified of normal termination, the connection is disconnected, and the processing ends. The processing up to this point is a processing of receiving the update object file 302 once, and the process returns to step S3 to wait for a connection request from the client program 305.

【0120】図30は、図2を修正した実施の形態11
における更新プログラムB74の処理動作を示すフロー
チャートである。図を用いて、システムプログラム20
の更新処理における更新プログラムB74の処理を説明
する。なお、更新プログラムB74はシステムプログラ
ム20内の一つのタスクとして存在し、システム初期化
時に起動されるものとする。
FIG. 30 shows an eleventh embodiment in which FIG. 2 is modified.
14 is a flowchart showing the processing operation of the update program B74 in FIG. Using the figure, the system program 20
The process of the update program B74 in the update process of is described. The update program B74 exists as one task in the system program 20 and is started at the time of system initialization.

【0121】まず、更新プログラムB74は起動する
と、ステップS37でリンク処理部45において、転送
受け付け履歴テーブル75内のリンク処理済みフラグ8
0を検索し、リンク処理未が印付けられたエントリがあ
るかチェックする。そのようなエントリがある場合、ス
テップS38で、転送受け付け履歴テーブル75内のリ
ンク処理実行条件79を参照し、直ちにリンク処理を行
う必要があるか判定する。
First, when the update program B74 is activated, the link processing unit 45 causes the link processing completion flag 8 in the transfer acceptance history table 75 in step S37.
Search for 0 and check if there is an entry marked as not processed. If there is such an entry, in step S38, the link processing execution condition 79 in the transfer acceptance history table 75 is referred to, and it is determined whether the link processing needs to be performed immediately.

【0122】ステップS37でリンク処理未のエントリ
がないか、又はステップS38で直ちにリンク処理を行
う必要がない場合、ステップS39で更新プログラムB
74を待機状態にする。この時、リンク処理実行条件7
9が設定されている場合は、次回更新プログラムB74
を起床する時刻を設定しておく。
If there is no entry for which link processing has not been performed in step S37, or if there is no need to perform link processing immediately in step S38, the update program B is updated in step S39.
74 is put in a standby state. At this time, the link processing execution condition 7
If 9 is set, next update program B74
Set the time to wake up.

【0123】一方、ステップS38で直ちにリンク処理
を行う場合は、ステップS8でリンク処理部45におい
て、リンク定義情報303に基づき、ファイル管理部4
4を介してフラッシュメモリB105内のオブジェクト
ファイル10及び更新オブジェクトファイル302から
再リンクを実行し、新システムプログラム20を生成す
る。
On the other hand, if the link processing is to be performed immediately in step S38, the link processing section 45 in step S8 uses the file management section 4 based on the link definition information 303.
The relinking is executed from the object file 10 and the update object file 302 in the flash memory B105 via 4 to generate the new system program 20.

【0124】次に、ステップS9でロード処理部46に
おいて、ロード定義情報304に基づき、新システムプ
ログラム20をフラッシュメモリA104上の所定の位
置にロードする。最後に、ステップS11でスタートア
ッププログラム30に制御を移し、フラッシュメモリA
104に格納されている新システムプログラム20を主
記憶102上の所定アドレスに展開して、このプログラ
ムの開始アドレスに制御を移す。
Next, in step S9, the load processing unit 46 loads the new system program 20 in a predetermined position on the flash memory A104 based on the load definition information 304. Finally, in step S11, the control is transferred to the startup program 30, and the flash memory A
The new system program 20 stored in 104 is expanded to a predetermined address on the main memory 102, and control is transferred to the start address of this program.

【0125】以上のように、プログラム更新処理におい
て、更新オブジェクトファイル302の転送受け付け処
理と、リンク及びロード処理を分割、タスク化し、前者
の更新オブジェクトファイル302の転送受け付け処理
を常駐タスクとして構成しているので、組み込み機器1
00の定常動作モード中、即ち、新規システムプログラ
ムを生成し、新規システムプログラムをロード中に、遠
隔ホスト300側から変更オブジェクトファイル302
をプッシュ型で配信を受けることができる。これによ
り、組み込み機器100側から明示的にプログラム更新
処理を要求しなくても、システムプログラム20の障害
改修版オブジェクトの入替えやサービス機能の追加、ア
ップデートを行うことができる。
As described above, in the program update processing, the transfer acceptance processing of the update object file 302 and the link and load processing are divided into tasks, and the former transfer acceptance processing of the update object file 302 is configured as a resident task. Embedded device 1
00 in the steady operation mode, that is, while the new system program is being generated and the new system program is being loaded, the modified object file 302 is sent from the remote host 300 side.
Can be received by push type. As a result, even if the embedded device 100 side does not explicitly request the program update process, it is possible to replace the fault-repair version object of the system program 20 and add or update the service function.

【0126】実施の形態12.実施の形態11では、更
新オブジェクトファイル302の転送受け付け処理と、
リンク、ロード処理を分割、タスク化することにより、
遠隔ホスト300側から変更オブジェクトファイル30
2をプッシュ型で配信できるようにしているが、次にこ
れまでフラッシュメモリB105上のファイルシステム
内に格納していたオブジェクトファイル10を搭載せ
ず、コンパクトフラッシュ(登録商標)のような動的に
着脱可能なフラッシュメモリをファイルシステム内に格
納しておき、これを装着した時に新システムプログラム
20のリンクとロードを行うようにしたプログラム更新
処理の実施の形態を示す。
Twelfth Embodiment In the eleventh embodiment, transfer acceptance processing of the update object file 302,
By dividing the link and load processing and dividing it into tasks,
Change object file 30 from the remote host 300 side
However, the object file 10 stored in the file system on the flash memory B105 up to now is not mounted, and it can be dynamically distributed like a compact flash (registered trademark). An embodiment of a program update process in which a removable flash memory is stored in a file system and the new system program 20 is linked and loaded when the flash memory is installed will be described.

【0127】図31は、図2を修正した実施の形態12
におけるフラッシュメモリA104と新たな着脱可能な
フラッシュメモリの構成図である。図において、109
は動的に着脱可能なフラッシュメモリ、76は更新プロ
グラム40内のデバイス認識部、77は更新プログラム
40内のセキュリティ検査部である。なお、着脱可能な
フラッシュメモリ109はファイルシステムを形成して
おり、あらかじめメーカやベンダが提供するオブジェク
トファイル10を搭載しているものとする。
FIG. 31 shows a modified embodiment 12 of FIG.
3 is a configuration diagram of a flash memory A104 and a new removable flash memory in FIG. In the figure, 109
Is a dynamically removable flash memory, 76 is a device recognition unit in the update program 40, and 77 is a security inspection unit in the update program 40. The removable flash memory 109 forms a file system, and the object file 10 provided by the manufacturer or vendor is installed in advance.

【0128】次に動作について説明する。図32は、図
2を修正した実施の形態12における更新プログラム4
0の処理動作を示すフローチャートである。図を用い
て、システムプログラム20の更新処理における更新プ
ログラム40の処理を説明する。本実施の形態では、実
施の形態1における初期動作のように、スタートアップ
プログラム30の再起動によりプログラム更新モードに
移行するのではなく、通常動作モードにおいて、システ
ムプログラム20内の一つの常駐タスクとして更新プロ
グラム40が動作するものとする。
Next, the operation will be described. 32 shows an update program 4 according to the twelfth embodiment, which is a modification of FIG.
It is a flowchart which shows the processing operation of 0. The processing of the update program 40 in the update processing of the system program 20 will be described with reference to the drawings. In this embodiment, unlike the initial operation in the first embodiment, the program is not changed to the program update mode by restarting the startup program 30, but is updated as one resident task in the system program 20 in the normal operation mode. It is assumed that the program 40 operates.

【0129】まず、更新プログラム40では、ステップ
S40でデバイス認識部76において、着脱可能なフラ
ッシュメモリ109が装着されるまで待機状態にある。
着脱可能なフラッシュメモリ109が装着されると、ス
テップS41で、そのデバイスを認識してファイルシス
テムのマウント処理を行い、着脱可能なフラッシュメモ
リ109内のオブジェクトファイル10にアクセスでき
るようにする。
First, in the update program 40, the device recognition section 76 is in a standby state until the removable flash memory 109 is attached in step S40.
When the removable flash memory 109 is mounted, the device is recognized and the file system is mounted in step S41 so that the object file 10 in the removable flash memory 109 can be accessed.

【0130】ステップS42でセキュリティ検査部77
において、着脱可能なフラッシュメモリ109内の所定
の位置に記載されているデバイス情報に基づき、装着さ
れた着脱可能なフラッシュメモリ109がオブジェクト
ファイル10を含む正当なものかどうかをチェックす
る。もし正当性が判定されなければ、直ちに中止とな
る。
In step S42, the security inspection unit 77
In step (2), it is checked whether or not the attached removable flash memory 109 includes the object file 10 based on the device information written in a predetermined position in the removable flash memory 109. If it is not justified, it will be immediately discontinued.

【0131】一方、正当性が判定されたら、ステップS
8でリンク処理部45において、新システムプログラム
20をリンクしたあと、ステップS9でロード処理部4
6において、ロード定義情報304に基づき、フラッシ
ュメモリA104上の空き領域に新システムプログラム
をシステムプログラムN69としてロードする。ステッ
プS30でロード先の先頭アドレスをブート選択ベース
アドレス70に格納する。ステップS43でデバイス認
識部76において、着脱可能なフラッシュメモリ109
のマウントを解除する。
On the other hand, if the validity is determined, step S
After linking the new system program 20 in the link processing unit 45 in step 8, the load processing unit 4 in step S9.
In 6, the new system program is loaded as a system program N69 in the free area on the flash memory A104 based on the load definition information 304. In step S30, the top address of the load destination is stored in the boot selection base address 70. In step S43, the device recognition unit 76 causes the removable flash memory 109
Unmount the.

【0132】最後に、ステップS11でスタートアップ
プログラム30に制御を移し、ブート選択ベースアドレ
ス70で指定されているシステムプログラムN69を主
記憶102上の所定アドレスに展開して、このプログラ
ムの開始アドレスに制御を移す。
Finally, in step S11, the control is transferred to the start-up program 30, the system program N69 designated by the boot selection base address 70 is expanded to a predetermined address on the main memory 102, and the start address of this program is controlled. Transfer.

【0133】以上のように、動的に着脱可能なフラッシ
ュメモリ109が装着された時に、この中に格納されて
いるオブジェクトファイル10を元に、システムプログ
ラムの更新処理を行うようにしているので、組み込み機
器100内にあらかじめフラッシュメモリB105等の
メモリ資源を搭載しておかなくてもプログラムの更新処
理を行うことができる。これにより、組み込み機器10
0のハードウェアと切り離して、搭載ソフトウェアの入
替えや流通ソフトウェアの販売等を行うことができ、ソ
フトウェアの流通促進を図ることができる。
As described above, when the dynamically attachable / detachable flash memory 109 is attached, the system program is updated based on the object file 10 stored therein. The program update process can be performed without installing a memory resource such as the flash memory B105 in the embedded device 100 in advance. As a result, the embedded device 10
It is possible to replace the installed software, sell the distributed software, and the like separately from the hardware of 0, and promote the distribution of the software.

【0134】実施の形態13.実施の形態12では、オ
ブジェクトファイル10を格納するフラッシュメモリB
105を搭載せずに、動的に着脱可能なフラッシュメモ
リ109が装着された時に、この中に格納されているオ
ブジェクトファイル10からシステムプログラムの更新
処理を行うようにしているが、次にオブジェクトファイ
ル10及び更新プログラム40を動的に着脱可能なスマ
ートカード上に搭載し、これを装着した時に同更新プロ
グラム40を用いてリンクとロードを行うようにしたプ
ログラム更新処理の実施の形態を示す。
Thirteenth Embodiment In the twelfth embodiment, the flash memory B storing the object file 10
When the dynamically attachable / detachable flash memory 109 is mounted without mounting 105, the system file is updated from the object file 10 stored therein. 10 shows an embodiment of program update processing in which the update program 40 and the update program 40 are dynamically mounted on a removable smart card, and when the smart card is installed, the update program 40 is used to perform linking and loading.

【0135】図33は、図2を修正した実施の形態13
におけるフラッシュメモリA104と新たなスマートカ
ードの構成図である。図において、110はオブジェク
トファイル10及び更新プログラム40を搭載したスマ
ートカード、78はスマートカード78内にあり、ファ
イルシステムを形成してオブジェクトファイル10を格
納しているフラッシュメモリDである。なお、スマート
カードとは、CPUや主記憶、I/Oデバイス等を搭載
し、単体でプログラムの実行が可能な小型のICカード
である。
FIG. 33 shows a thirteenth embodiment in which FIG. 2 is modified.
2 is a configuration diagram of a flash memory A104 and a new smart card in FIG. In the figure, 110 is a smart card on which the object file 10 and the update program 40 are installed, and 78 is a flash memory D that is in the smart card 78 and forms a file system to store the object file 10. The smart card is a small IC card that has a CPU, a main memory, an I / O device, etc., and can execute a program by itself.

【0136】次に動作について説明する。図34は、図
2を修正した実施の形態13における更新プログラム4
0の処理動作を示すフローチャートである。図を用い
て、システムプログラム20の更新処理における更新プ
ログラム40の処理を説明する。本実施の形態では、組
み込み機器100側は通常動作モードであるとする。
Next, the operation will be described. FIG. 34 shows an update program 4 according to the thirteenth embodiment which is a modification of FIG.
It is a flowchart which shows the processing operation of 0. The processing of the update program 40 in the update processing of the system program 20 will be described with reference to the drawings. In the present embodiment, it is assumed that the embedded device 100 side is in the normal operation mode.

【0137】まず、スマートカード110が組み込み機
器100に装着されると、更新プログラム40が起動
し、ステップS8でリンク処理部45において、新シス
テムプログラム20をリンクしたあと、ステップS9で
ロード処理部46において、ロード定義情報304に基
づき、フラッシュメモリA104上の所定の領域に新シ
ステムプログラムをシステムプログラムN69としてロ
ードする。
First, when the smart card 110 is attached to the embedded device 100, the update program 40 is activated, the link processing unit 45 links the new system program 20 in step S8, and then the load processing unit 46 in step S9. At, the new system program is loaded as a system program N69 in a predetermined area on the flash memory A104 based on the load definition information 304.

【0138】ステップS30で、ロード先の先頭アドレ
スをブート選択ベースアドレス70に格納する。その
後、ステップS44でスマートカード110を取り外
す。これを契機に、ステップS11でスタートアッププ
ログラム30に制御を移し、ブート選択ベースアドレス
70で指定されているシステムプログラムN69を主記
憶102上の所定アドレスに展開して、このプログラム
の開始アドレスに制御を移す。
In step S30, the top address of the load destination is stored in the boot selection base address 70. Then, in step S44, the smart card 110 is removed. In response to this, control is transferred to the startup program 30 in step S11, the system program N69 specified by the boot selection base address 70 is expanded to a predetermined address in the main memory 102, and control is performed at the start address of this program. Transfer.

【0139】なお、本実施の形態では、スマートカード
110を装着した時に更新プログラム40にてリンク処
理を行っているが、リンク処理は別途行っておき、スマ
ートカード110装着時に自動的にロード処理だけを行
うようにすることもできる。さらに、前記スマートカー
ド上にPHS(Personal Handyphon
e System)や携帯電話、無線LAN、Blue
tooth等の通信モジュール・ハードウェアを搭載し
ているものであれば、この通信モジュールを介して遠隔
ホスト300から更新オブジェクトファイル302をダ
ウンロードし、スマートカード110上の更新プログラ
ム40を用いてリンクとロード処理を行うことにより、
プログラム更新処理を行うこともできる。
In the present embodiment, the link processing is performed by the update program 40 when the smart card 110 is attached. However, the link processing is separately performed and only the load processing is automatically performed when the smart card 110 is attached. It is also possible to do. Furthermore, a PHS (Personal Handyphone) is installed on the smart card.
e System), mobile phone, wireless LAN, Blue
If the communication module / hardware such as tooth is installed, the update object file 302 is downloaded from the remote host 300 via this communication module, and linked and loaded using the update program 40 on the smart card 110. By performing processing,
Program update processing can also be performed.

【0140】以上のように、動的に着脱可能なスマート
カード110が装着された時に、このカード上に搭載さ
れている更新プログラム40を起動してシステムプログ
ラムの更新処理を行うようにしているので、組み込み機
器100内にはプログラム更新処理のためのハードウェ
ア資源や更新プログラムをあらかじめ搭載しておかなく
てもプログラムの更新処理を行うことができる。これに
より、組み込み機器100のハードウェアと切り離し
て、搭載ソフトウェアの入替えや流通ソフトウェアの販
売等を行うことができ、ソフトウェアの流通促進を図る
ことができる。また、通信モジュール・ハードウェアを
搭載したスマートカードは、それ単体で遠隔ソフトウェ
ア更新装置として機能することができる。
As described above, when the dynamically attachable / detachable smart card 110 is installed, the update program 40 installed on this card is activated to update the system program. The program update process can be performed without installing the hardware resource or the update program for the program update process in the embedded device 100 in advance. As a result, the installed software can be replaced and the distributed software can be sold separately from the hardware of the embedded device 100, and the distribution of the software can be promoted. Further, the smart card equipped with the communication module hardware can function as a remote software update device by itself.

【0141】実施の形態14.実施の形態13では、オ
ブジェクトファイル10を格納するフラッシュメモリB
105を搭載せずに、動的に着脱可能なスマートカード
110が装着された時に、この中に格納されているオブ
ジェクトファイル10及び更新プログラム40を用いて
システムプログラムの更新処理を行うようにしている
が、次にメモリ保護機構をサポートするハードウェアを
搭載した組み込み機器100において、プログラム毎又
はタスク毎の保護ポリシを定義した再配置定義情報を設
けて、メモリ上の再配置を考慮するようにしたプログラ
ム更新処理の実施の形態を示す。
Fourteenth Embodiment In the thirteenth embodiment, the flash memory B storing the object file 10
When the dynamically attachable / detachable smart card 110 is mounted without mounting 105, the object file 10 and the update program 40 stored therein are used to update the system program. However, next, in the embedded device 100 equipped with the hardware that supports the memory protection mechanism, the relocation definition information defining the protection policy for each program or each task is provided, and the relocation on the memory is considered. An embodiment of a program update process is shown.

【0142】図35は、図2を修正した実施の形態14
におけるフラッシュメモリA104の構成図である。図
において、79はロード定義情報からページ境界等を考
慮して再配置するための再配置定義情報である。
FIG. 35 shows a modified embodiment 14 of FIG.
3 is a configuration diagram of a flash memory A104 in FIG. In the figure, 79 is rearrangement definition information for rearranging the load definition information in consideration of page boundaries and the like.

【0143】次に動作について説明する。まず実施の形
態1における初期動作と同様に、プログラム更新モード
に移行して更新プログラム40が起動されたとする。
Next, the operation will be described. First, similarly to the initial operation in the first embodiment, it is assumed that the program update mode is entered and the update program 40 is activated.

【0144】図36は、図2を修正した実施の形態14
における更新プログラム40のリンク処理以降の処理動
作を示すフローチャートである。図2に示した更新プロ
グラム40のフローチャートのうち、ステップS8のリ
ンク処理までは同じであるため省略する。図を用いて、
システムプログラム20の更新処理における更新プログ
ラム40のリンク処理以降を説明する。
FIG. 36 shows a modified embodiment 14 of FIG.
5 is a flowchart showing a processing operation after the link processing of the update program 40 in FIG. In the flowchart of the update program 40 shown in FIG. 2, the process up to the linking process of step S8 is the same, and therefore will be omitted. Using the figure,
The link process of the update program 40 in the update process of the system program 20 and subsequent steps will be described.

【0145】まず、更新プログラム40では、ステップ
S45でロード処理部46において、再配置定義情報7
9に基づきロード定義情報304に記載の情報からペー
ジバンダリ等を考慮した再配置を行う。ステップS9
で、新システムプログラム20をフラッシュメモリA1
04上の所定の位置にロードする。
First, in the update program 40, the relocation definition information 7 is set in the load processing unit 46 in step S45.
Based on No. 9, the rearrangement is performed from the information described in the load definition information 304 in consideration of page boundary and the like. Step S9
Then, the new system program 20 is stored in the flash memory
Load in place on 04.

【0146】この後、ステップS10でメイン処理部4
1に戻り、クライアントプログラム305側に正常終了
を通知し、コネクションを切断して処理を終了する。最
後に、ステップS11でスタートアッププログラム30
に制御を移し、フラッシュメモリA104に格納されて
いる新システムプログラム20を主記憶102上の所定
アドレスに展開して、このプログラムの開始アドレスに
制御を移す。
Thereafter, in step S10, the main processing unit 4
Returning to 1, the client program 305 is notified of normal termination, the connection is disconnected, and the processing is terminated. Finally, in step S11, the startup program 30
Then, the new system program 20 stored in the flash memory A104 is expanded to a predetermined address in the main memory 102, and the control is transferred to the start address of this program.

【0147】以上のように、メモリ保護機構をサポート
するハードウェアを搭載した組み込み機器100におい
て、ページバンダリ等を考慮して再配置を行うようにし
ているので、新システムプログラムの機能構成が変わっ
た場合であっても、システムプログラム20を安全に再
配置することができる。これにより、更新ソフトウェア
の信頼性を維持すると共に、万一の障害発生時の解析性
を確保することができる。
As described above, in the embedded device 100 equipped with the hardware supporting the memory protection mechanism, the rearrangement is performed in consideration of the page boundary and the like, so that the functional configuration of the new system program is changed. Even in this case, the system program 20 can be relocated safely. This makes it possible to maintain the reliability of the updated software and ensure the analyticity in the event of a failure.

【0148】[0148]

【発明の効果】この発明は、以上説明したように構成さ
れているので、以下に示すような効果を奏する。
Since the present invention is constructed as described above, it has the following effects.

【0149】第1の発明では、フラッシュメモリに格納
された更新プログラムが、遠隔コンピュータにより通信
ネットワークを介して送信されたシステムプログラムの
変更部分を含む更新オブジェクトファイルとリンク定義
情報とロード定義情報に基づいてオブジェクトファイル
と更新オブジェクトファイルとを再リンクして新規シス
テムプログラムを生成し、この新規システムプログラム
を所定の位置にロードすることにより、プログラム更新
処理における転送データ量を大幅に削減することができ
るので、プログラム更新処理を非常に短時間で行うこと
ができる
In the first invention, the update program stored in the flash memory is based on the update object file including the changed portion of the system program transmitted by the remote computer through the communication network, the link definition information and the load definition information. By relinking the object file with the updated object file to generate a new system program and loading this new system program at a predetermined position, the transfer data amount in the program update process can be significantly reduced. The program update process can be performed in a very short time

【0150】第2の発明では、遠隔コンピュータにより
送信された転送ファイルのファイル形式又は配布元の正
当性を判定し、正当な時にはさらに転送ファイルの更新
オブジェクトファイルとリンク定義情報とロード定義情
報との正当性を判定することにより、更新オブジェクト
ファイルとリンク定義情報とロード定義情報との正当性
をチェックできるので、安全にプログラムの更新処理を
行うことができる。
In the second invention, the file format of the transfer file transmitted by the remote computer or the correctness of the distribution source is judged, and when the transfer file is updated, the update object file of the transfer file, the link definition information and the load definition information Since the validity of the update object file, the link definition information, and the load definition information can be checked by determining the validity, the program update process can be performed safely.

【0151】第3の発明では、暗号化処理部により暗号
化された転送ファイルが遠隔コンピュータにより送信さ
れ、この暗号化された転送ファイルを更新プログラムで
復号化することにより、更新オブジェクトファイルの改
ざん等の不正行為を防止できるので、安全にプログラム
の更新処理を行うことができる。
In the third invention, the transfer file encrypted by the encryption processing unit is transmitted by the remote computer, and the encrypted transfer file is decrypted by the update program to tamper with the update object file, etc. Since it is possible to prevent the fraudulent activity, it is possible to safely perform the program update process.

【0152】第4の発明では、遠隔コンピュータにより
送信された転送ファイルの更新オブジェクトファイルを
圧縮し、又圧縮した更新オブジェクトファイルを伸張す
ることにより、フラッシュメモリの空き容量をより多く
確保することができる
In the fourth aspect of the present invention, the free space of the flash memory can be secured by compressing the update object file of the transfer file transmitted by the remote computer and expanding the compressed update object file.

【0153】第5の発明では、リンク処理部が、リンク
定義情報に付与されたリンク定義情報識別子と一致する
オブジェクトファイルがオブジェクトリンクテーブルに
エントリされていない時には、リンク定義情報に付与さ
れたリンク定義情報識別子のオブジェクトファイルの情
報をオブジェクトリンクテーブルに追加することによ
り、リンク更新履歴を保存、管理することができ、リン
クされている機能の一覧を素早く正確に得ることができ
る。
In the fifth invention, the link processing unit, when the object file that matches the link definition information identifier given to the link definition information is not entered in the object link table, the link definition given to the link definition information. By adding the information of the object file of the information identifier to the object link table, the link update history can be saved and managed, and the list of linked functions can be obtained quickly and accurately.

【0154】第6の発明では、リンク処理部が、遠隔コ
ンピュータにより送信されたリンク定義情報に基づいて
第1のフラッシュメモリに格納されたオブジェクトファ
イルを再リンクして新規システムプログラムを生成する
ことにより、プログラム更新処理における転送データ量
を大幅に削減することができる。
In the sixth invention, the link processing unit relinks the object file stored in the first flash memory based on the link definition information transmitted by the remote computer to generate a new system program. The amount of transfer data in the program update process can be greatly reduced.

【0155】第7の発明では、オブジェクトファイルと
このオブジェクトファイルに依存する別オブジェクトフ
ァイルとの関係を示すオブジェクト依存関係テーブルに
基づいて第1のフラッシュメモリに格納されているオブ
ジェクトファイルに不足が有るか否かの判定を行い、不
足がある時には遠隔コンピュータに不足のオブジェクト
ファイルを転送要求することにより、オブジェクト間の
依存関係の正当性を検査することができるので、プログ
ラム更新処理の安全性を確保することができる。
In the seventh invention, is there a shortage of object files stored in the first flash memory based on the object dependency relationship table showing the relationship between the object file and another object file that depends on this object file? It is possible to check the validity of the dependency between objects by determining whether or not there is a shortage and requesting the transfer of the insufficient object file to the remote computer, thus ensuring the safety of the program update process. be able to.

【0156】第8の発明では、遠隔コンピュータにより
インストール情報の要求がされた時にインストール情報
テーブルに保存されたデバイスドライバ又はミドルウェ
アの流通ソフトウェアのインストール情報を遠隔コンピ
ュータに送信することにより、流通ソフトウェアのイン
ストール状況を遠隔コンピュータにて把握することがで
きるので、流通ソフトウェア毎の課金や不正なインスト
ール等を管理することができる。
According to the eighth aspect of the invention, when the remote computer requests installation information, the installation information of the device driver or middleware distribution software stored in the installation information table is transmitted to the remote computer to install the distribution software. Since the situation can be grasped by the remote computer, it is possible to manage billing and illegal installation for each distributed software.

【0157】第9の発明では、新規システムプログラム
が生成された時にシステムプログラムをプログラム退避
領域に退避することにより、新システムプログラムの起
動に失敗した場合、退避しておいた旧システムプログラ
ムを自動的に復帰するようにしているので、プログラム
更新処理の信頼性を向上することができる。
In the ninth invention, the system program is saved in the program save area when the new system program is generated, so that when the new system program fails to start, the saved old system program is automatically saved. The reliability of the program update process can be improved because the process is returned to.

【0158】第10の発明では、ロード処理部が、新規
システムプログラムを生成した後、ロード定義情報に基
づいて過去に生成された任意のシステムプログラムを第
3のフラッシュメモリ又は第2のフラッシュメモリの任
意の空き領域にロードし、このロードした任意のシステ
ムプログラムの先頭アドレスをブート選択ベースアドレ
スに格納することにより、フラッシュメモリの空き容量
に応じて、複数のシステムプログラムを保持することが
でき、システムプログラムの入替えの柔軟性を向上する
ことができる。
In the tenth invention, after the load processing section generates a new system program, an arbitrary system program generated in the past based on the load definition information is stored in the third flash memory or the second flash memory. By loading to the free space and storing the start address of this loaded system program in the boot selection base address, multiple system programs can be held according to the free space of the flash memory. The flexibility of program replacement can be improved.

【0159】第11の発明では、システムプログラムを
再構成するための機能選択処理をする機能選択部による
機能選択が正しい時には、リンク定義情報に基づいて第
1のフラッシュメモリに格納されたオブジェクトファイ
ルを再リンクしてシステムプログラムを生成することに
より、フラッシュメモリ上だけでプログラムの再構成が
行えるので、フラッシュメモリを搭載する組み込み機器
毎に機能のカスタマイズができる。
According to the eleventh aspect, when the function selection by the function selection unit for performing the function selection processing for reconstructing the system program is correct, the object file stored in the first flash memory is stored based on the link definition information. By relinking and generating the system program, the program can be reconfigured only on the flash memory, so that the function can be customized for each embedded device in which the flash memory is mounted.

【0160】第12の発明では、更新プログラムが、遠
隔コンピュータにより送信された更新オブジェクトファ
イルの受信を行う第1の更新処理部と、転送受け付け履
歴テーブルに新規システムプログラムを生成するための
未使用の更新オブジェクトファイルが存在する時に、リ
ンク定義情報に基づいて第1のフラッシュメモリに格納
されたオブジェクトファイルと更新オブジェクトファイ
ルとを再リンクして新規システムプログラムを生成し、
新規システムプログラムをロード定義情報に基づいて所
定の位置にロードすることにより、新規システムプログ
ラムを生成し、新規システムプログラムをロード中に、
遠隔コンピュータ側から変更オブジェクトファイルの配
信を受けることができる。
In the twelfth aspect of the invention, the update program includes a first update processing unit for receiving the update object file transmitted by the remote computer, and an unused program for generating a new system program in the transfer acceptance history table. When the update object file exists, the new system program is generated by relinking the object file stored in the first flash memory and the update object file based on the link definition information,
A new system program is generated by loading the new system program at a predetermined position based on the load definition information, and while the new system program is being loaded,
The modified object file can be delivered from the remote computer side.

【0161】第13の発明では、着脱可能なフラッシュ
メモリが装着された時にオブジェクトファイルに記載さ
れているデバイス情報を認識し、認識されたデバイス情
報に基づいて装着された着脱可能なフラッシュメモリの
正当性の判断をすることにより、あらかじめフラッシュ
メモリにメモリ資源を搭載しておかなくてもプログラム
の更新処理を行うことができる。
According to the thirteenth invention, when the removable flash memory is mounted, the device information described in the object file is recognized, and based on the recognized device information, the validity of the mounted removable flash memory is verified. By determining the sex, it is possible to update the program without installing memory resources in the flash memory in advance.

【0162】第14の発明では、スマートカードが装着
されると第1のフラッシュメモリに格納されたリンク定
義情報に基づいてオブジェクトファイルを再リンクして
新規システムプログラムを生成することにより、プログ
ラム更新処理のためのハードウェア資源や更新プログラ
ムをあらかじめ搭載しておかなくてもプログラムの更新
処理を行うことができる。
In the fourteenth invention, when the smart card is installed, the object file is relinked based on the link definition information stored in the first flash memory to generate the new system program, thereby performing the program update process. The program update process can be performed without pre-installing the hardware resources and the update program for.

【0163】第15の発明では、ロード定義情報からペ
ージ境界を考慮してシステムプログラムを再配置する再
配置定義情報に基づきシステムプログラムを再配置する
ことにより、システムプログラムを安全に再配置するこ
とができる。
In the fifteenth invention, the system program is relocated based on the relocation definition information in which the page boundary is taken into consideration from the load definition information, so that the system program can be relocated safely. it can.

【図面の簡単な説明】[Brief description of drawings]

【図1】 実施の形態1の遠隔プログラム更新システム
の構成図。
FIG. 1 is a configuration diagram of a remote program updating system according to a first embodiment.

【図2】 実施の形態1における更新プログラム40の
処理動作を示すフローチャート。
FIG. 2 is a flowchart showing a processing operation of an update program 40 according to the first embodiment.

【図3】 実施の形態1におけるクライアントプログラ
ム305の処理動作を示すフローチャート。
FIG. 3 is a flowchart showing a processing operation of a client program 305 according to the first embodiment.

【図4】 実施の形態2におけるフラッシュメモリA1
04の構成図。
FIG. 4 shows a flash memory A1 according to the second embodiment.
The block diagram of 04.

【図5】 実施の形態2におけるクライアントプログラ
ム305の構成図。
FIG. 5 is a configuration diagram of a client program 305 according to the second embodiment.

【図6】 実施の形態2における更新プログラム40の
処理動作を示すフローチャート。
FIG. 6 is a flowchart showing the processing operation of an update program 40 according to the second embodiment.

【図7】 実施の形態2におけるクライアントプログラ
ム305の処理動作を示すフローチャート。
FIG. 7 is a flowchart showing a processing operation of a client program 305 according to the second embodiment.

【図8】 実施の形態3におけるフラッシュメモリA1
04の構成図。
FIG. 8 shows a flash memory A1 according to the third embodiment.
The block diagram of 04.

【図9】 実施の形態3における更新プログラム40の
処理動作を示すフローチャート。
FIG. 9 is a flowchart showing the processing operation of an update program 40 according to the third embodiment.

【図10】 実施の形態4におけるフラッシュメモリA
104の構成図。
FIG. 10 shows a flash memory A according to the fourth embodiment.
The block diagram of 104.

【図11】 実施の形態4におけるオブジェクトリンク
テーブル49の構成図。
FIG. 11 is a configuration diagram of an object link table 49 according to the fourth embodiment.

【図12】 実施の形態4における更新プログラム40
のファイルシステムへの格納処理以降の処理動作を示す
フローチャート。
FIG. 12 is an update program 40 according to the fourth embodiment.
5 is a flowchart showing the processing operation after the storage processing in the file system.

【図13】 実施の形態5における転送ファイルの構成
図。
FIG. 13 is a configuration diagram of a transfer file according to the fifth embodiment.

【図14】 実施の形態5における更新プログラム40
の処理動作を示すフローチャート。
FIG. 14 is an update program 40 according to the fifth embodiment.
3 is a flowchart showing the processing operation of FIG.

【図15】 実施の形態6におけるフラッシュメモリA
104の構成図。
FIG. 15 shows a flash memory A according to the sixth embodiment.
The block diagram of 104.

【図16】 実施の形態6におけるオブジェクト依存関
係テーブル57の構成図。
FIG. 16 is a configuration diagram of an object dependency relationship table 57 according to the sixth embodiment.

【図17】 実施の形態6における更新プログラム40
の処理動作を示すフローチャート。
FIG. 17 is an update program 40 according to the sixth embodiment.
3 is a flowchart showing the processing operation of FIG.

【図18】 実施の形態7におけるフラッシュメモリA
104の構成図。
FIG. 18 shows a flash memory A according to the seventh embodiment.
The block diagram of 104.

【図19】 実施の形態7におけるインストール情報テ
ーブル61の構成図。
FIG. 19 is a configuration diagram of an installation information table 61 according to the seventh embodiment.

【図20】 実施の形態7における更新プログラム40
の処理動作を示すフローチャート。
FIG. 20 is an update program 40 according to the seventh embodiment.
3 is a flowchart showing the processing operation of FIG.

【図21】 実施の形態8におけるフラッシュメモリA
104の構成図。
FIG. 21 shows a flash memory A according to the eighth embodiment.
The block diagram of 104.

【図22】 実施の形態8における更新プログラム40
のリンク処理以降の処理動作を示すフローチャート。
FIG. 22 is an update program 40 according to the eighth embodiment.
5 is a flowchart showing the processing operation after the link processing of FIG.

【図23】 実施の形態9におけるフラッシュメモリA
104と新たなフラッシュメモリCの構成図。
FIG. 23 shows a flash memory A according to the ninth embodiment.
10 is a configuration diagram of 104 and a new flash memory C. FIG.

【図24】 実施の形態9における更新プログラム40
のリンク処理以降の処理動作を示すフローチャート。
FIG. 24 is an update program 40 according to the ninth embodiment.
5 is a flowchart showing the processing operation after the link processing of FIG.

【図25】 実施の形態10における組み込み機器10
0の構成図。
FIG. 25 shows the embedded device 10 according to the tenth embodiment.
The block diagram of 0.

【図26】 実施の形態10における更新プログラム4
0の処理動作を示すフローチャート。
FIG. 26 is an update program 4 according to the tenth embodiment.
The flowchart which shows the processing operation of 0.

【図27】 実施の形態11におけるフラッシュメモリ
A104と新たなフラッシュメモリC107の構成図。
FIG. 27 is a configuration diagram of a flash memory A104 and a new flash memory C107 according to the eleventh embodiment.

【図28】 実施の形態11における転送受け付け履歴
テーブル75の構成図。
FIG. 28 is a configuration diagram of a transfer acceptance history table 75 according to the eleventh embodiment.

【図29】 実施の形態11における更新プログラムA
73の処理動作を示すフローチャート。
FIG. 29 is an update program A according to the eleventh embodiment.
The flowchart which shows the processing operation of 73.

【図30】 実施の形態11における更新プログラムB
74の処理動作を示すフローチャート。
FIG. 30 is an update program B according to the eleventh embodiment.
The flowchart which shows the processing operation of 74.

【図31】 実施の形態12におけるフラッシュメモリ
A104と新たな着脱可能なフラッシュメモリ109の
構成図。
FIG. 31 is a configuration diagram of a flash memory A104 and a new removable flash memory 109 according to the twelfth embodiment.

【図32】 実施の形態12における更新プログラム4
0の処理動作を示すフローチャート。
FIG. 32 is an update program 4 according to the twelfth embodiment.
The flowchart which shows the processing operation of 0.

【図33】 実施の形態13におけるフラッシュメモリ
A104と新たなスマートカードの構成図。
FIG. 33 is a configuration diagram of a flash memory A104 and a new smart card according to the thirteenth embodiment.

【図34】 実施の形態13における更新プログラム4
0の処理動作を示すフローチャート。
FIG. 34 is an update program 4 according to the thirteenth embodiment.
The flowchart which shows the processing operation of 0.

【図35】 実施の形態14におけるフラッシュメモリ
A104の構成図。
FIG. 35 is a configuration diagram of a flash memory A104 according to the fourteenth embodiment.

【図36】 実施の形態14における更新プログラム4
0のリンク処理以降の処理動作を示すフローチャート。
FIG. 36 is an update program 4 according to the fourteenth embodiment
The flowchart which shows the process operation after the link process of 0.

【図37】 従来のマイクロコンピュータ組込み制御装
置の構成図。
FIG. 37 is a configuration diagram of a conventional microcomputer-embedded control device.

【符号の説明】[Explanation of symbols]

10 オブジェクトファイル、20 システムプログラ
ム、30 スタートアッププログラム、40 更新プロ
グラム、41 メイン処理部、42 ネットワーク通信
処理部、43 更新判定部、44 ファイル管理部、4
5 リンク処理部、46 ロード処理部、100 組み
込み機器、101 CPU、102 主記憶、103
外部通信インタフェース、104 フラッシュメモリ
A、105フラッシュメモリB、106 システムバ
ス。
10 object file, 20 system program, 30 startup program, 40 update program, 41 main processing unit, 42 network communication processing unit, 43 update determination unit, 44 file management unit, 4
5 link processing unit, 46 load processing unit, 100 embedded device, 101 CPU, 102 main memory, 103
External communication interface, 104 flash memory A, 105 flash memory B, 106 system bus.

Claims (15)

【特許請求の範囲】[Claims] 【請求項1】 システムプログラムの変更部分を含む更
新オブジェクトファイルと、この更新オブジェクトファ
イルと前記システムプログラムを構成するオブジェクト
ファイルとを再リンクするためのリンク定義情報と、新
規システムプログラムをロードするためのロード定義情
報とにより構成された転送ファイルを通信ネットワーク
を介して送信する遠隔コンピュータと、 前記オブジェクトファイルと、前記更新オブジェクトフ
ァイルと、前記リンク定義情報と、前記ロード定義情報
とが格納された第1のフラッシュメモリと、 前記システムプログラムが格納され、前記遠隔コンピュ
ータにより送信された前記転送ファイルの前記更新オブ
ジェクトファイルと前記リンク定義情報と前記ロード定
義情報とを前記第1のフラッシュメモリに格納するファ
イル管理部と、前記リンク定義情報に基づいて前記第1
のフラッシュメモリに格納された前記オブジェクトファ
イルと前記更新オブジェクトファイルとを再リンクして
新規システムプログラムを生成するリンク処理部と、前
記新規システムプログラムを前記ロード定義情報に基づ
いて所定の位置にロードするロード処理部とにより構成
された更新プログラムを有する第2のフラッシュメモリ
と、 を備えたことを特徴とする遠隔プログラム更新システ
ム。
1. An update object file including a changed portion of a system program, link definition information for relinking the update object file and an object file constituting the system program, and a new system program for loading. A remote computer for transmitting a transfer file configured by load definition information via a communication network; a first object storing the object file, the updated object file, the link definition information, and the load definition information; Flash memory, the system program is stored, and the update object file of the transfer file transmitted by the remote computer, the link definition information, and the load definition information are stored in the first flash memory. File management unit and the first on the basis of the link definition information
A link processing unit that relinks the object file and the updated object file stored in the flash memory to generate a new system program, and loads the new system program at a predetermined position based on the load definition information. A second flash memory having an update program configured by a load processing unit, and a remote program update system.
【請求項2】 前記更新プログラムは、前記遠隔コンピ
ュータにより送信された前記転送ファイルのファイル形
式又は配布元の正当性を判定し、正当な時にはさらに前
記転送ファイルの前記更新オブジェクトファイルと前記
リンク定義情報と前記ロード定義情報との正当性を判定
する更新判定部を備え、 前記ファイル管理部は、前記更新判定部により前記更新
オブジェクトファイルと前記リンク定義情報と前記ロー
ド定義情報とが正当と判断された時に、前記更新オブジ
ェクトファイルと前記リンク定義情報と前記ロード定義
情報とを前記第1のフラッシュメモリに格納することを
特徴とする請求項1記載の遠隔プログラム更新システ
ム。
2. The update program determines the legitimacy of the file format or distribution source of the transfer file transmitted by the remote computer, and when it is legitimate, the update object file and the link definition information of the transfer file are further determined. And an update determination unit that determines the validity of the load definition information, and the file management unit determines that the update object file, the link definition information, and the load definition information are valid by the update determination unit. 2. The remote program update system according to claim 1, wherein the update object file, the link definition information, and the load definition information are stored in the first flash memory at times.
【請求項3】 前記遠隔コンピュータは、前記転送ファ
イルを暗号化する暗号化処理部を備え、 前記更新プログラムは、前記暗号化処理部により暗号化
された前記転送ファイルを復号化する復号化処理部を備
えたことを特徴とする請求項1記載の遠隔プログラム更
新システム。
3. The remote computer comprises an encryption processing unit for encrypting the transfer file, and the update program decrypts the transfer file encrypted by the encryption processing unit. The remote program update system according to claim 1, further comprising:
【請求項4】 前記更新プログラムは、前記遠隔コンピ
ュータにより送信された前記転送ファイルの前記更新オ
ブジェクトファイルを圧縮し、又圧縮した前記更新オブ
ジェクトファイルを伸張するファイル圧縮伸張部を備
え、 前記ファイル管理部は、前記ファイル圧縮伸張部により
圧縮された前記更新オブジェクトファイルを前記第1の
フラッシュメモリに格納することを特徴とする請求項2
記載の遠隔プログラム更新システム。
4. The update program includes a file compression / expansion unit that compresses the update object file of the transfer file transmitted by the remote computer and expands the compressed update object file. Stores the updated object file compressed by the file compression / expansion unit in the first flash memory.
The described remote program update system.
【請求項5】 前記リンク定義情報は、再リンク処理が
成功した前記オブジェクトファイルを識別するリンク定
義情報識別子が付与され、 前記更新プログラムは、前記システムプログラムとこの
システムプログラムを構成するオブジェクトファイルと
の対応関係を示すオブジェクトリンクテーブルを備え、 前記リンク処理部は、前記リンク定義情報に付与された
リンク定義情報識別子と一致する前記オブジェクトファ
イルが前記オブジェクトリンクテーブルにエントリされ
ていない時には、前記リンク定義情報に付与された前記
リンク定義情報識別子のオブジェクトファイルの情報を
前記オブジェクトリンクテーブルに追加することを特徴
とする請求項2記載の遠隔プログラム更新システム。
5. The link definition information is provided with a link definition information identifier for identifying the object file for which relinking has succeeded, and the update program includes the system program and an object file constituting the system program. An object link table showing a correspondence relationship is provided, and the link processing unit, when the object file matching the link definition information identifier given to the link definition information is not entered in the object link table, the link definition information 3. The remote program updating system according to claim 2, wherein the information of the object file of the link definition information identifier given to the object is added to the object link table.
【請求項6】 前記遠隔コンピュータは、前記リンク定
義情報を通信ネットワークを介して送信し、 前記リンク処理部は、前記遠隔コンピュータにより送信
された前記リンク定義情報に基づいて前記第1のフラッ
シュメモリに格納された前記オブジェクトファイルを再
リンクして新規システムプログラムを生成することを特
徴とする請求項2記載の遠隔プログラム更新システム。
6. The remote computer transmits the link definition information via a communication network, and the link processing unit stores the link definition information in the first flash memory based on the link definition information transmitted by the remote computer. 3. The remote program update system according to claim 2, wherein the stored object files are relinked to generate a new system program.
【請求項7】 前記更新プログラムは、前記オブジェク
トファイルとこのオブジェクトファイルに依存する別オ
ブジェクトファイルとの関係を示すオブジェクト依存関
係テーブルを備え、 前記更新判定部は、前記オブジェクト依存関係テーブル
に基づいて前記第1のフラッシュメモリに格納されてい
る前記オブジェクトファイルに不足が有るか否かの判定
を行い、不足がある時には前記遠隔コンピュータに不足
のオブジェクトファイルを転送要求することを特徴とす
る請求項2記載の遠隔プログラム更新システム。
7. The update program includes an object dependency relationship table that indicates a relationship between the object file and another object file that depends on the object file, and the update determination unit uses the object dependency relationship table based on the object dependency relationship table. 3. The method according to claim 2, wherein it is determined whether or not the object file stored in the first flash memory is insufficient, and when the object file is insufficient, the remote computer is requested to transfer the insufficient object file. Remote program update system.
【請求項8】 前記更新プログラムは、デバイスドライ
バ又はミドルウェアの流通ソフトウェアのインストール
情報を保存するインストール情報テーブルと、前記遠隔
コンピュータによりインストール情報の要求がされた時
に前記インストール情報テーブルに保存されたインスト
ール情報を前記遠隔コンピュータに送信するメイン処理
部と、を備えたことを特徴とする請求項2記載の遠隔プ
ログラム更新システム。
8. The update program includes an installation information table for storing installation information of device driver or middleware distribution software, and installation information stored in the installation information table when installation information is requested by the remote computer. 3. The remote program updating system according to claim 2, further comprising: a main processing unit that transmits to the remote computer.
【請求項9】 前記更新プログラムは、前記新規システ
ムプログラムが生成された時に前記システムプログラム
を退避するプログラム退避処理部と、このプログラム退
避処理部により退避された前記システムプログラムを保
存するプログラム退避領域と、を備えたことを特徴とす
る請求項2記載の遠隔プログラム更新システム。
9. The update program includes a program save processing unit that saves the system program when the new system program is generated, and a program save area that saves the system program saved by the program save processing unit. The remote program updating system according to claim 2, further comprising:
【請求項10】 過去に生成された任意のシステムプロ
グラムを格納する第3のフラッシュメモリを備え、 前記第2のフラッシュメモリは、前記任意のシステムプ
ログラムの先頭アドレスが格納されたブート選択ベース
アドレスを備え、 前記ロード処理部は、前記新規システムプログラムを生
成した後、前記ロード定義情報に基づいて過去に生成さ
れた任意のシステムプログラムを前記第3のフラッシュ
メモリ又は前記第2のフラッシュメモリの任意の空き領
域にロードし、このロードした任意のシステムプログラ
ムの先頭アドレスを前記ブート選択ベースアドレスに格
納することを特徴とする請求項2記載の遠隔プログラム
更新システム。
10. A third flash memory for storing an arbitrary system program generated in the past, wherein the second flash memory has a boot selection base address in which a start address of the arbitrary system program is stored. The load processing unit may generate, after generating the new system program, an arbitrary system program generated in the past based on the load definition information in the third flash memory or the second flash memory. 3. The remote program update system according to claim 2, wherein the remote program update system is loaded in an empty area and the start address of the loaded arbitrary system program is stored in the boot selection base address.
【請求項11】 前記更新プログラムは、前記システム
プログラムを再構成するための機能選択処理をする機能
選択部を備え、 前記リンク処理部は、前記機能選択部による機能選択が
正しい時には、前記リンク定義情報に基づいて第1のフ
ラッシュメモリに格納された前記オブジェクトファイル
を再リンクして新規システムプログラムを生成すること
を特徴とする請求項2記載の遠隔プログラム更新システ
ム。
11. The update program includes a function selection unit that performs a function selection process for reconfiguring the system program, and the link processing unit, when the function selection by the function selection unit is correct, the link definition. 3. The remote program updating system according to claim 2, wherein the object file stored in the first flash memory is relinked based on the information to generate a new system program.
【請求項12】 前記第2のフラッシュメモリは、前記
第1のフラッシュメモリに格納された前記更新オブジェ
クトファイルが前記新規システムプログラムを生成する
ために利用されたか否かを示す転送受け付け履歴テーブ
ルを備え、 前記更新プログラムは、前記遠隔コンピュータにより送
信された前記更新オブジェクトファイルの受信を行う第
1の更新処理部と、前記転送受け付け履歴テーブルに前
記新規システムプログラムを生成するための未使用の前
記更新オブジェクトファイルが存在する時に、前記リン
ク定義情報に基づいて前記第1のフラッシュメモリに格
納された前記オブジェクトファイルと前記更新オブジェ
クトファイルとを再リンクして新規システムプログラム
を生成し、前記新規システムプログラムを前記ロード定
義情報に基づいて所定の位置にロードする第2の更新処
理部と、を備えたことを特徴とする請求項2記載の遠隔
プログラム更新システム。
12. The second flash memory comprises a transfer acceptance history table indicating whether or not the updated object file stored in the first flash memory was used to generate the new system program. The update program includes a first update processing unit that receives the update object file transmitted by the remote computer, and the unused update object for generating the new system program in the transfer acceptance history table. When the file exists, the object file stored in the first flash memory and the updated object file are relinked based on the link definition information to generate a new system program, and the new system program is stored in the new system program. Load definition information Remote program update system according to claim 2, characterized in that and a second updating unit for loading a predetermined position on the basis.
【請求項13】 前記オブジェクトファイルを格納する
着脱可能なフラッシュメモリを備え、 前記更新プログラムは、前記着脱可能なフラッシュメモ
リが装着された時に前記オブジェクトファイルに記載さ
れているデバイス情報を認識するデバイス認識部と、前
記デバイス認識部により認識されたデバイス情報に基づ
いて前記装着された着脱可能なフラッシュメモリの正当
性の判断をするセキュリティ検査部と、を備えたことを
特徴とする請求項2記載の遠隔プログラム更新システ
ム。
13. A device recognition device, comprising: a removable flash memory for storing the object file, wherein the update program recognizes device information written in the object file when the removable flash memory is installed. 3. The security check unit according to claim 2, further comprising: a security check unit configured to determine the validity of the removable flash memory attached based on the device information recognized by the device recognition unit. Remote program update system.
【請求項14】 前記オブジェクトファイルと更新プロ
グラムとを格納する脱着可能なスマートカードを備え、 前記リンク処理部は、前記スマートカードが装着される
と前記第1のフラッシュメモリに格納された前記リンク
定義情報に基づいて前記オブジェクトファイルを再リン
クして新規システムプログラムを生成することを特徴と
する請求項2記載の遠隔プログラム更新システム。
14. A removable smart card for storing the object file and an update program, wherein the link processing unit stores the link definition stored in the first flash memory when the smart card is attached. The remote program updating system according to claim 2, wherein the object file is relinked based on the information to generate a new system program.
【請求項15】 前記ロード定義情報からページ境界を
考慮して前記システムプログラムを再配置する再配置定
義情報を備え、 前記組み込み機器は、再配置定義情報に基づき前記シス
テムプログラムを再配置することを特徴とする請求項2
記載の遠隔プログラム更新システム。
15. The apparatus includes relocation definition information for relocating the system program in consideration of a page boundary from the load definition information, wherein the embedded device relocates the system program based on the relocation definition information. Claim 2 characterized by the above-mentioned.
The described remote program update system.
JP2001372507A 2001-12-06 2001-12-06 Remote program renewal system Pending JP2003173260A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001372507A JP2003173260A (en) 2001-12-06 2001-12-06 Remote program renewal system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001372507A JP2003173260A (en) 2001-12-06 2001-12-06 Remote program renewal system

Publications (1)

Publication Number Publication Date
JP2003173260A true JP2003173260A (en) 2003-06-20

Family

ID=19181387

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001372507A Pending JP2003173260A (en) 2001-12-06 2001-12-06 Remote program renewal system

Country Status (1)

Country Link
JP (1) JP2003173260A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005337017A (en) * 2004-05-24 2005-12-08 Mitsubishi Electric Corp Electronic control device for vehicle
JP2006331307A (en) * 2005-05-30 2006-12-07 Hitachi Kokusai Electric Inc Distributed system
CN100350387C (en) * 2004-05-13 2007-11-21 通用汽车公司 Method and system for remote reflash
JP2009009237A (en) * 2007-06-26 2009-01-15 Toshiba Corp Information processor and firmware update method
WO2009110140A1 (en) * 2008-03-07 2009-09-11 Kabushiki Kaisha Toshiba Information processing apparatus, storage drive and firmware update method
US8250560B2 (en) 2006-03-22 2012-08-21 Kabushiki Kaisha Toshiba Information processing apparatus
JP2016194891A (en) * 2015-03-31 2016-11-17 フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー Method of updating software component, computer system, and memory apparatus
US10210004B2 (en) 2015-05-05 2019-02-19 Fujitsu Limited Method of providing at least one data carrier for a computer system and computer system including service processor independently operable from a main processor of the computer system
US10747523B2 (en) 2015-04-17 2020-08-18 Fujitsu Limited Methods of updating firmware components, computer systems and memory apparatus

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100350387C (en) * 2004-05-13 2007-11-21 通用汽车公司 Method and system for remote reflash
JP2005337017A (en) * 2004-05-24 2005-12-08 Mitsubishi Electric Corp Electronic control device for vehicle
JP2006331307A (en) * 2005-05-30 2006-12-07 Hitachi Kokusai Electric Inc Distributed system
US8250560B2 (en) 2006-03-22 2012-08-21 Kabushiki Kaisha Toshiba Information processing apparatus
JP2009009237A (en) * 2007-06-26 2009-01-15 Toshiba Corp Information processor and firmware update method
WO2009110140A1 (en) * 2008-03-07 2009-09-11 Kabushiki Kaisha Toshiba Information processing apparatus, storage drive and firmware update method
JP2010517120A (en) * 2008-03-07 2010-05-20 株式会社東芝 Information processing apparatus, storage medium drive, and firmware update method
JP2016194891A (en) * 2015-03-31 2016-11-17 フジツウ テクノロジー ソリューションズ インタレクチュアル プロパティ ゲーエムベーハー Method of updating software component, computer system, and memory apparatus
US9766876B2 (en) 2015-03-31 2017-09-19 Fujitsu Limited Methods of updating software components, computer systems and memory apparatus
US10747523B2 (en) 2015-04-17 2020-08-18 Fujitsu Limited Methods of updating firmware components, computer systems and memory apparatus
US10210004B2 (en) 2015-05-05 2019-02-19 Fujitsu Limited Method of providing at least one data carrier for a computer system and computer system including service processor independently operable from a main processor of the computer system

Similar Documents

Publication Publication Date Title
KR101130367B1 (en) System and method for a software distribution service
AU2004279170B2 (en) System and method for managing and communicating software updates
AU2004279202B2 (en) System and method for updating installation components in a networked environment
KR101150041B1 (en) System and method for updating files utilizing delta compression patching
RU2419839C2 (en) Software update system and method for portable ota supporting mobile terminal
EP1584007B1 (en) System to automatically process components on a device
CN100399268C (en) Computer system not relying on operation system renewing software data and method
US20050257023A1 (en) Device memory management during electronic file updating
US20200034137A1 (en) Method and apparatus for updating operating system
CN106020875B (en) Firmware update management method and device of embedded terminal
JP2003114806A (en) Os updating method, security control method, and apparatus for accomplishing the same
JP3688571B2 (en) Information processing device
JP2001331324A (en) Method and device for processing information and recording medium
EP1548582A1 (en) Method for managing use of storage region by application
US20110061048A1 (en) Image forming device, installing method, and recording medium
JP2003173260A (en) Remote program renewal system
JP2002189594A (en) Automatic latest version setting system and automatic setting method
JP2008059239A (en) Communication system
JPH05250239A (en) Computer network system
JP7009852B2 (en) Electronic device
JP2002204327A (en) Compound machine system and compound machine used for the system
KR100429903B1 (en) Method for updating images in home gateway system
JPH11312090A (en) Information processor, method for controlling the same, storage medium and information processing system
KR100693551B1 (en) Terminal and network system for partial updating a software, and partial updating method, and software generating device and method
JP2003259000A (en) Version update system and method for ip telephone set service function in ip-pbx

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Effective date: 20040706

Free format text: JAPANESE INTERMEDIATE CODE: A7421