JP5297848B2 - プログラム動的更新システム、管理サーバ、組込み機器及びプログラム - Google Patents
プログラム動的更新システム、管理サーバ、組込み機器及びプログラム Download PDFInfo
- Publication number
- JP5297848B2 JP5297848B2 JP2009065461A JP2009065461A JP5297848B2 JP 5297848 B2 JP5297848 B2 JP 5297848B2 JP 2009065461 A JP2009065461 A JP 2009065461A JP 2009065461 A JP2009065461 A JP 2009065461A JP 5297848 B2 JP5297848 B2 JP 5297848B2
- Authority
- JP
- Japan
- Prior art keywords
- update
- program
- information file
- update information
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Description
(1−1)システム構成
図1に、形態例に係るシステム構成図を示す。形態例に係るプログラム動的更新システムは、1台の管理サーバ101と複数台の組込み機器103(103A・103B)とがネットワーク102を介して相互に接続される場合を想定する。
図2に、管理サーバ101の構成例を示す。管理サーバ101は、プログラム動的更新システムの管理者が使用するコンピュータシステムである。管理サーバ101は、入力部201、表示部202、データ処理部203、記憶部205、ネットワーク接続部209で構成される。
図3に、組込み機器103の構成例を示す。プログラム動的更新システムにおける組込み機器103とは、更新対象のプログラムが動作する機器である。組込み機器103は、例えば入力部301、表示部302、データ処理部303、記憶部305、ネットワーク接続部308で構成される。ただし、図3に示す組込み機器103の構成は一例であり、この構成に限定されない。
図4に、プログラムの動作を停止させずにプログラム内の関数を更新する方法を示す。更新前関数401とは、プログラム内の関数であって不具合等を含む関数である。また、更新後関数404とは、更新前関数401の不具合等を修正した関数である。まず、更新後関数404をメモリに読み込む。次に、制御移行先403をメモリ上に配置する。制御移行先403には、更新後関数404が配置されているメモリ上の先頭アドレスが記述される。最後に、更新前関数401が配置されているメモリ上の先頭アドレスに制御移行命令402が記述される。制御移行命令402は、制御移行先403に記述された先頭アドレスを参照し、制御を記述先の先頭アドレスに移す役割をする。以上の操作により、更新前関数401が呼び出された場合は、制御移行命令402により更新後関数404に制御が移る。従って、不具合を含む更新前関数401を、不具合を修正した更新後関数404に置き換えることが可能になる。
図5に、更新情報ファイルに記述される関数間の更新関係の一例を示す。更新情報ファイルには、3種類の更新関係が記述される。1つは、更新前プログラムの更新前関数を更新後関数に変更する記述である。1つは、更新後プログラムの関数からOS(オペレーティング・システム)が提供する関数を参照する記述である。1つは、更新後プログラム内の関数から更新後プログラム内の他の関数を参照する記述である。
図5は、更新前関数A(501)、更新前関数B(504)、更新前関数C(507)の三つを、それぞれ更新後関数1(510)、更新後関数2(513)、更新後関数3(516)に動的に更新した状態を示している。図4の説明の場合と同様、更新前関数A(501)の先頭に制御移行命令A(502)が書き込まれている。例えば制御移行命令A(502)が参照する制御移行先A(503)には、更新後関数1(510)のメモリ上での先頭アドレスが格納されている。同様に、更新前関数B(504)の先頭に制御移行命令B(505)が書き込まれている。制御移行命令B(505)が参照する制御移行先B(506)には、更新後関数2(513)のメモリ上での先頭アドレスが格納されている。同様に、更新前関数C(507)の先頭に制御移行命令C(508)が書き込まれている。制御移行命令C(508)が参照する制御移行先C(509)には、更新後関数3(516)のメモリ上での先頭アドレスが格納されている。
図5は、更新後関数1(510)からOSが提供する関数(521)を呼び出す状態を示している。この動作は、更新後関数1(510)の該当位置に記述された制御移行命令1(511)に基づいて実行される。制御移行命令1(511)が参照する制御移行先(512)には、OSが提供する関数(521)のメモリ上でのアドレスが格納されている。
図5は、更新後関数2(513)から更新後関数3(516)を呼び出す状態を示している。この動作は、更新後関数2(513)の該当位置に記述された制御移行命令2(514)に基づいて実行される。制御移行命令2(514)が参照する制御移行先2(515)には、更新後関数3(516)のメモリ上のアドレスが格納されている。
図6に、更新情報ファイル601の構成例を示す。更新情報ファイル601は、組込み機器のプログラムを動的に更新するために使用する。更新情報ファイル601は、更新後関数表602、制御移行表603、相互参照表604で構成される。以下に、更新情報ファイル601を構成する要素のそれぞれを説明する。
次に、管理サーバ101側で実行される更新情報ファイル208の作成手順を示す。なお、更新情報ファイル208は、組込み機器103の更新部304において利用される。
次に、組込み機器103の更新部304が更新情報ファイル307を用いて実行する更新前プログラム306の更新動作を説明する。
まず、更新部304は、更新情報ファイル307を組込み機器103の記憶部305に読み込む(ステップS801)。以下、更新情報ファイル307が配置されたメモリ上のアドレスをADDRと表記する。
以上説明したように、組込み機器103の更新部304は、更新情報ファイル307に基づいて、組込み機器103で動作するプログラムを動的に更新することができる。従来方式とは異なり、この形態例の場合には、プログラムを更新するたびに更新用プログラムをメモリに読み込み実行する必要がない。すなわち、形態例に係る組込み機器103は、再配置及びアドレス解決に起因するメモリ消費量が大幅に削減される。
前述の形態例においては、情報更新ファイルの送信手順について説明しなかったが、以下のような手順によって実行することができる。例えば管理サーバ101が更新情報ファイルを強制的に組込み機器103に送信し、そのタイミングで組込み機器103内のプログラムを更新させる手法を採用しても良い。これに対し、組込み機器103が管理サーバ101に対して新規の更新情報ファイルが存在するか否かの確認処理を実行し、存在が確認された場合には、組込み機器103からの要求により管理サーバ101から更新情報ファイルをダウンロードする手法を採用しても良い。
102…ネットワーク
103A…組込み機器
103B…組込み機器
201…入力部
202…表示部
203…データ処理部
204…更新情報ファイル生成部
205…記憶部
206…更新前プログラム
207…更新後プログラム
208…更新情報ファイル
209…ネットワーク接続部
301…入力部
302…表示部
303…データ処理部
304…更新部
305…記憶部
306…更新前プログラム
307…更新情報ファイル
308…ネットワーク接続部
401…更新前関数
402…制御移行命令
403…制御移行先
404…更新後関数
501…更新前関数A
502…制御移行命令A
503…制御移行先A
504…更新前関数B
505…制御移行命令B
506…制御移行先B
507…更新前関数C
508…制御移行命令C
509…制御移行先C
510…更新後関数1
511…制御移行命令1
512…制御移行先1
513…更新後関数2
514…制御移行命令2
515…制御移行先2
516…更新後関数3
517…更新後関数2へのオフセット
518…制御移行先1へのオフセット
519…制御移行先2へのオフセット
520…更新後関数3へのオフセット
521…OS内の関数
601…更新情報ファイル
602…更新後関数
603…制御移行表
604…相互参照表
Claims (8)
- 組込み機器で稼働中の組込プログラムに対する更新情報を収集し、更新情報を組込み機器に動的に適用するために前記組込み機器のメモリ上でのアドレスを解決した更新情報ファイルを生成する管理サーバと、
前記更新情報ファイルに基づいて前記組込プログラムを動的に更新する組込み機器と
を有し、
前記管理サーバが生成する前記更新情報ファイルは、更新後関数と、更新後関数内から参照する前記組込プログラムの関数が記述されている前記メモリ上のアドレスと、当該アドレスを書き込む更新情報ファイル内の相対アドレスとを有する
プログラム動的更新システム。 - 前記更新情報ファイルは、更新後関数と、更新前関数の前記メモリ上のアドレスと、更新後関数の更新情報ファイル内の相対アドレスとを更に有する
ことを特徴とする請求項1に記載のプログラム動的更新システム。 - 前記更新情報ファイルは、参照関係がある複数の更新後関数と、参照先になる更新後関数が記述されている更新情報ファイル内の相対アドレスと、当該アドレスを書き込む更新情報ファイル内の相対アドレスとを更に有する
ことを特徴とする請求項1又は2に記載のプログラム動的更新システム。 - 前記組込み機器は、前記相対アドレスで表記された部分を、前記相対アドレスの基準アドレスが書き込まれた前記メモリ上のアドレス分だけシフトしたアドレスに変更する
ことを特徴とする請求項1〜3のいずれか1項に記載のプログラム動的更新システム。 - 組込み機器で稼働中の更新前の組込プログラムと、新たに適用する更新後の組込プログラムとを記憶する記憶装置と、
前記更新前の組込プログラムと前記更新後の組込プログラムとを比較し、前記更新前の組込プログラムに対する更新情報を収集し、更新情報を前記組込み機器に動的に適用するための前記組込み機器のメモリ上でのアドレスを解決した更新情報ファイルを生成する更新情報ファイル生成部と
を有する管理サーバであって、
前記更新情報ファイルは、更新後関数と、更新後関数内から参照する前記組込プログラムの関数が記述されている前記メモリ上のアドレスと、当該アドレスを書き込む更新情報ファイル内の相対アドレスとを有する
管理サーバ。 - 稼働中の更新前の組込プログラムと、新たに適用される更新後の組込プログラムの前記更新前の組込プログラムに対する修正箇所を前記更新前の組込プログラムに動的に適用するための更新情報ファイルとを記憶するメモリと、
前記更新情報ファイルに基づいて前記組込プログラムを動的に更新する更新部と
を有する組込み機器であって、
管理サーバで生成される前記更新情報ファイルには、更新後関数と、更新後関数内から参照する前記組込プログラムの関数が記述されている前記メモリ上のアドレスと、当該アドレスを書き込む更新情報ファイル内の相対アドレスとが含まれる
組込み機器。 - 組込み機器で稼働中の更新前の組込プログラムと、新たに適用する更新後の組込プログラムとを比較し、前記更新前の組込プログラムに対する更新情報を収集する処理と、
前記更新情報を前記組込み機器に動的に適用するために前記組込み機器のメモリ上でのアドレスを解決した更新情報ファイルを生成する処理と
を管理サーバのコンピュータに実行させるプログラムであって、
前記更新情報ファイルには、更新後関数と、更新後関数内から参照する前記組込プログラムの関数が記述されている前記メモリ上のアドレスと、当該アドレスを書き込む更新情報ファイル内の相対アドレスとが含まれる
ことを特徴とするプログラム。 - 稼働中の更新前の組込プログラムに対して新たに適用する更新後の組込プログラムの修正箇所を前記更新前の組込プログラムに動的に適用するための更新情報ファイルをメモリから読み出す処理と、
前記更新情報ファイルに基づいて前記組込プログラムを動的に更新する処理と
を組込み機器のコンピュータに実行させるプログラムであって、
管理サーバで生成される前記更新情報ファイルには、更新後関数と、更新後関数内から参照する前記組込プログラムの関数が記述されている前記メモリ上のアドレスと、当該アドレスを書き込む更新情報ファイル内の相対アドレスとが含まれる
ことを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009065461A JP5297848B2 (ja) | 2009-03-18 | 2009-03-18 | プログラム動的更新システム、管理サーバ、組込み機器及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009065461A JP5297848B2 (ja) | 2009-03-18 | 2009-03-18 | プログラム動的更新システム、管理サーバ、組込み機器及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010218334A JP2010218334A (ja) | 2010-09-30 |
JP5297848B2 true JP5297848B2 (ja) | 2013-09-25 |
Family
ID=42977097
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009065461A Expired - Fee Related JP5297848B2 (ja) | 2009-03-18 | 2009-03-18 | プログラム動的更新システム、管理サーバ、組込み機器及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5297848B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6609199B2 (ja) | 2016-03-01 | 2019-11-20 | ルネサスエレクトロニクス株式会社 | 組込み機器 |
JP6637398B2 (ja) | 2016-09-23 | 2020-01-29 | ルネサスエレクトロニクス株式会社 | 判定装置及び判定方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001273147A (ja) * | 2000-03-27 | 2001-10-05 | Toshiba Corp | 情報配布方法、情報配布システム、情報配布サーバ、端末機器および記録媒体 |
JP2004126863A (ja) * | 2002-10-01 | 2004-04-22 | Nippon Telegr & Teleph Corp <Ntt> | オブジェクト管理装置とその方法、およびプログラム |
JP3792232B2 (ja) * | 2004-03-08 | 2006-07-05 | 三菱電機株式会社 | 情報処理装置及び格納位置管理方法及びプログラム |
JP2006301765A (ja) * | 2005-04-18 | 2006-11-02 | Toshiba Corp | 制御装置のメンテナンス装置 |
-
2009
- 2009-03-18 JP JP2009065461A patent/JP5297848B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010218334A (ja) | 2010-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2815311B1 (en) | Using an application cache to update resources of installed applications | |
KR101760778B1 (ko) | 컴퓨터시스템 및 그 프로그램 업데이트 방법 | |
CN103098043B (zh) | 随需虚拟机映像流式传输的方法和系统 | |
KR101422563B1 (ko) | 데이터 패키지의 효율적인 다운로드 방법 및 시스템 | |
JP4275683B2 (ja) | オブジェクト状態転送方法,オブジェクト状態転送装置およびオブジェクト状態転送プログラム並びにそのプログラムの記録媒体 | |
US20150120670A1 (en) | Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets | |
US20100088448A1 (en) | Virtual computing accelerator and program downloading method for server-based virtual computing | |
JP2009187379A (ja) | 仮想計算機サーバ装置、更新画像検出方法およびプログラム | |
CN105052111A (zh) | 跨群集边界的服务迁移 | |
KR20120071205A (ko) | 가상머신 서버와 노드 운영방법 및 그 장치 | |
CN103136019A (zh) | 用于加载配置信息的方法和装置 | |
JPWO2010116473A1 (ja) | 管理サーバ、ブートサーバ、ネットワークブートシステムおよびネットワークブート方法 | |
JP2009199261A (ja) | 情報処理システムと情報処理方法とプログラム | |
CN104427186A (zh) | 通信装置及其定制方法 | |
US7953894B2 (en) | Providing aggregated directory structure | |
JP5297848B2 (ja) | プログラム動的更新システム、管理サーバ、組込み機器及びプログラム | |
US8214330B2 (en) | Information processing apparatus, information processing method, and computer program product | |
CN107656753A (zh) | 一种补丁实现方法及装置 | |
JP2011060142A (ja) | 統合管理装置、統合管理システム、統合管理方法、統合管理プログラム、及びそのプログラムを記録した記録媒体 | |
JP5982436B2 (ja) | 画面転送サーバ装置、および画面転送方法 | |
JP5464449B2 (ja) | 障害によるリブートを考慮した処理部間の不整合検出方法並びに共有装置及びクラスタシステム | |
JP2011048605A (ja) | プログラム実行装置及びアプリケーションプログラムの実行方法 | |
JP5499781B2 (ja) | メモリデータベースシステム、高速化方法、および、プログラム | |
JP5754778B2 (ja) | 記憶装置共用システム、管理装置、処理装置、記憶装置共用方法、管理方法、アクセス方法およびプログラム | |
US9727362B2 (en) | Execution control method, storage medium, and execution control apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110802 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120801 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130402 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130522 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130611 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130617 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |