JP7034390B1 - コード補正装置、および、コード補正方法 - Google Patents
コード補正装置、および、コード補正方法 Download PDFInfo
- Publication number
- JP7034390B1 JP7034390B1 JP2021559002A JP2021559002A JP7034390B1 JP 7034390 B1 JP7034390 B1 JP 7034390B1 JP 2021559002 A JP2021559002 A JP 2021559002A JP 2021559002 A JP2021559002 A JP 2021559002A JP 7034390 B1 JP7034390 B1 JP 7034390B1
- Authority
- JP
- Japan
- Prior art keywords
- code correction
- code
- plan list
- correction
- created
- 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.)
- Active
Links
- 238000012937 correction Methods 0.000 title claims abstract description 390
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000006870 function Effects 0.000 description 80
- 230000008569 process Effects 0.000 description 35
- 230000000694 effects Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
Description
図13は、本実施の形態に関するコード補正装置の構成(機能部)の例を概念的に示す図である。
以下、本実施の形態に関するコード補正装置、および、コード補正方法について説明する。
図1は、本実施の形態に関する、コード補正装置の例を概念的に示す図である。コード補正装置は、ロード部101と、コード補正計画部102と、コード補正実行部103とを備える。
図7は、本実施の形態に関するコード補正計画部102の動作の例を示すフローチャートである。コード補正計画部102は、ステップST701、ステップST702、ステップST703、ステップST704、ステップST707、ステップST709およびステップST710のループ処理を行う。ループ処理の繰り返し回数は、ロード済みのオブジェクトファイルの数と一致する。たとえば、図3に示されるようにfoo.oのみをロードする場合には、foo.oのリロケーションテーブルだけが処理される。一方で、図5に示されるようにfoo.o、bar.oおよびmain.oの3つをロードする場合には、ループ処理は3回繰り返され、それぞれのループで、foo.o、bar.oおよびmain.oのリロケーションテーブルが処理される。
本実施の形態に関するコード補正装置、および、コード補正方法について説明する。なお、以下の説明においては、以上に記載された実施の形態で説明された構成要素と同様の構成要素については同じ符号を付して図示し、その詳細な説明については適宜省略するものとする。
コード補正計画リストの作成に際し、本来コード補正が不要な部分についてもコード補正計画リストに出力されてしまう場合がある。
本実施の形態に関するコード補正装置、および、コード補正方法について説明する。なお、以下の説明においては、以上に記載された実施の形態で説明された構成要素と同様の構成要素については同じ符号を付して図示し、その詳細な説明については適宜省略するものとする。
コード補正には、本来プログラムを停止する必要がないコード補正も含まれており、そのようなコード補正についてもプログラムを停止させて行われると、プログラムの停止時間が長くなってしまう場合がある。
本実施の形態に関するコード補正装置、および、コード補正方法について説明する。なお、以下の説明においては、以上に記載された実施の形態で説明された構成要素と同様の構成要素については同じ符号を付して図示し、その詳細な説明については適宜省略するものとする。
上記の実施の形態では、オブジェクトファイルをロードする際に、リロケーションテーブルとそれに付随するシンボルテーブルも含めてメモリに格納されていた。また、ロード部101で作成するグローバルシンボルテーブル105は、コード補正計画部102の動作に際しては必要であるが、更新されるプログラム自体の実行には不要である。
図14および図15は、図1に例が示されるコード補正装置を実際に運用する場合のハードウェア構成を概略的に例示する図である。
次に、以上に記載された実施の形態によって生じる効果の例を示す。なお、以下の説明においては、以上に記載された実施の形態に例が示された具体的な構成に基づいて当該効果が記載されるが、同様の効果が生じる範囲で、本願明細書に例が示される他の具体的な構成と置き換えられてもよい。すなわち、以下では便宜上、対応づけられる具体的な構成のうちのいずれか1つのみが代表して記載される場合があるが、代表して記載された具体的な構成が対応づけられる他の具体的な構成に置き換えられてもよい。
以上に記載された実施の形態では、それぞれの構成要素の寸法、形状、相対的配置関係または実施の条件などについても記載する場合があるが、これらはすべての局面においてひとつの例であって、限定的なものではないものとする。
Claims (7)
- リロケータブルなオブジェクトファイルをロードするロード部と、
前記ロード部においてロードされた前記オブジェクトファイルと事前にロード済みの前記オブジェクトファイルとの、コード補正を行う位置および対応する補正内容の対を要素として、複数の前記要素を用いてコード補正計画リストを作成するコード補正計画部と、
前記コード補正計画リストが作成された後で、前記コード補正計画リストに基づいて複数の前記コード補正を実行するコード補正実行部とを備え、
前記コード補正計画部は、前記コード補正の前後で前記コード補正を行う位置における値が変化するか否かを確認する手段を備え、前記コード補正計画リストを作成し、
前記コード補正計画部は、前記コード補正の前後で前記コード補正を行う位置に新たに追加される前記要素である新規要素を除いて前記コード補正計画リストを作成する、
コード補正装置。 - リロケータブルなオブジェクトファイルをロードするロード部と、
前記ロード部においてロードされた前記オブジェクトファイルと事前にロード済みの前記オブジェクトファイルとの、コード補正を行う位置および対応する補正内容の対を要素として、複数の前記要素を用いてコード補正計画リストを作成するコード補正計画部と、
前記コード補正計画リストが作成された後で、前記コード補正計画リストに基づいて複数の前記コード補正を実行するコード補正実行部とを備え、
前記コード補正計画部は、前記コード補正の前後で前記コード補正を行う位置における値が変化するか否かを確認する手段を備え、前記コード補正計画リストを作成し、
計算機であるホスト計算機と、前記ホスト計算機とは異なる計算機であるターゲット計算機とをさらに備え、
前記コード補正計画部は、前記ホスト計算機に設けられ、
前記コード補正実行部は、前記ターゲット計算機に設けられる、
コード補正装置。 - 請求項1または2に記載のコード補正装置であり、
前記コード補正実行部は、すべての前記要素を用いる前記コード補正計画リストが作成された後で、前記コード補正計画リストに基づいて複数の前記コード補正を実行する、
コード補正装置。 - 請求項1から3のうちのいずれか1つに記載のコード補正装置であり、
前記コード補正計画部は、前記コード補正を行う位置を示すアドレス、および、前記アドレスで示される位置に前記補正内容として直接書き込まれる値の対を前記要素として、複数の前記要素を用いて前記コード補正計画リストを作成する、
コード補正装置。 - 請求項1に記載のコード補正装置であり、
前記コード補正実行部は、前記新規要素に基づく前記コード補正を、前記コード補正計画リストの作成が終了する前に実行する、
コード補正装置。 - リロケータブルなオブジェクトファイルをロードし、
ロードされた前記オブジェクトファイルと事前にロード済みの前記オブジェクトファイルとの、コード補正を行う位置および対応する補正内容の対を要素として、複数の前記要素を用いてコード補正計画リストを作成し、
前記コード補正計画リストが作成された後で、前記コード補正計画リストに基づいて複数の前記コード補正を実行し、
前記コード補正計画リストを作成することは、前記コード補正の前後で前記コード補正を行う位置における値が変化するか否かを確認し、かつ、前記コード補正計画リストを作成することであり、
前記コード補正計画リストを作成することは、前記コード補正の前後で前記コード補正を行う位置に新たに追加される前記要素である新規要素を除いて前記コード補正計画リストを作成することである、
コード補正方法。 - リロケータブルなオブジェクトファイルをロードし、
ロードされた前記オブジェクトファイルと事前にロード済みの前記オブジェクトファイルとの、コード補正を行う位置および対応する補正内容の対を要素として、複数の前記要素を用いてコード補正計画リストを作成し、
前記コード補正計画リストが作成された後で、前記コード補正計画リストに基づいて複数の前記コード補正を実行し、
前記コード補正計画リストを作成することは、前記コード補正の前後で前記コード補正を行う位置における値が変化するか否かを確認し、かつ、前記コード補正計画リストを作成することであり、
前記コード補正計画リストを作成することは、計算機であるホスト計算機において行われ、
複数の前記コード補正を実行することは、前記ホスト計算機とは異なる計算機であるターゲット計算機において行われる、
コード補正方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2021/014728 WO2022215185A1 (ja) | 2021-04-07 | 2021-04-07 | コード補正装置、および、コード補正方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP7034390B1 true JP7034390B1 (ja) | 2022-03-11 |
JPWO2022215185A1 JPWO2022215185A1 (ja) | 2022-10-13 |
Family
ID=81213443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021559002A Active JP7034390B1 (ja) | 2021-04-07 | 2021-04-07 | コード補正装置、および、コード補正方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240152350A1 (ja) |
JP (1) | JP7034390B1 (ja) |
CN (1) | CN117083593A (ja) |
DE (1) | DE112021007471T5 (ja) |
WO (1) | WO2022215185A1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002132521A (ja) * | 2000-10-26 | 2002-05-10 | Matsushita Electric Ind Co Ltd | プログラムローディング装置及びプログラムローディング方法 |
JP2002524792A (ja) * | 1998-09-02 | 2002-08-06 | インフィネオン テクノロジース アクチエンゲゼルシャフト | プロセッサのワークメモリに後ロードされたプログラムモジュールをチップカード上でリンクする方法 |
WO2006129654A1 (ja) * | 2005-06-01 | 2006-12-07 | Matsushita Electric Industrial Co., Ltd. | 電子機器、更新サーバ装置、鍵更新装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000155673A (ja) | 1998-11-18 | 2000-06-06 | Nec Ic Microcomput Syst Ltd | リンク装置及びリンク方法 |
-
2021
- 2021-04-07 US US18/284,074 patent/US20240152350A1/en active Pending
- 2021-04-07 CN CN202180096533.2A patent/CN117083593A/zh active Pending
- 2021-04-07 JP JP2021559002A patent/JP7034390B1/ja active Active
- 2021-04-07 DE DE112021007471.7T patent/DE112021007471T5/de active Pending
- 2021-04-07 WO PCT/JP2021/014728 patent/WO2022215185A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002524792A (ja) * | 1998-09-02 | 2002-08-06 | インフィネオン テクノロジース アクチエンゲゼルシャフト | プロセッサのワークメモリに後ロードされたプログラムモジュールをチップカード上でリンクする方法 |
JP2002132521A (ja) * | 2000-10-26 | 2002-05-10 | Matsushita Electric Ind Co Ltd | プログラムローディング装置及びプログラムローディング方法 |
WO2006129654A1 (ja) * | 2005-06-01 | 2006-12-07 | Matsushita Electric Industrial Co., Ltd. | 電子機器、更新サーバ装置、鍵更新装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117083593A (zh) | 2023-11-17 |
US20240152350A1 (en) | 2024-05-09 |
WO2022215185A1 (ja) | 2022-10-13 |
JPWO2022215185A1 (ja) | 2022-10-13 |
DE112021007471T5 (de) | 2024-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8418167B2 (en) | Methods and systems for updating content including a compressed version | |
CN104239082A (zh) | 嵌入式系统的热补丁实现方法 | |
US20070050430A1 (en) | Method and system for updating content stored in a storage device | |
JP6718119B2 (ja) | コンパイルプログラム、コンパイル方法および情報処理装置 | |
EP1956482A1 (en) | Generating delta updates for a processing device | |
US20070294683A1 (en) | Methods of generating, linking and updating component-based software and information storage medium having such software recorded thereon | |
US10747514B2 (en) | Reduced save and restore instructions for call-clobbered registers | |
JP7034390B1 (ja) | コード補正装置、および、コード補正方法 | |
US6925522B2 (en) | Device and method capable of changing codes of micro-controller | |
JP2011028648A (ja) | オブジェクトコード生成システム、及びオブジェクトコード生成方法 | |
WO2002027487A1 (en) | System and method for linear processing of software modules | |
JP4761808B2 (ja) | マイクロプロセッサおよびその制御方法 | |
US6634026B1 (en) | Method and apparatus for correcting common errors in multiple versions of a computer program | |
US20050149270A1 (en) | Componentware creating method, apparatus and recording medium | |
JP5660386B2 (ja) | メモリ配置管理装置、メモリ配置管理方法、メモリ配置管理プログラム、およびプログラム作成システム | |
JP2004013536A (ja) | フラッシュメモリ書き換え制御システム、フラッシュメモリ書き換え制御方法、フラッシュメモリ書き換え制御方法の各工程を実行させるプログラムおよび情報記録媒体 | |
JP2005321843A (ja) | ファームウェアの書換え方法 | |
CN114579135B (zh) | 一种安装包生成方法及装置 | |
US20130091489A1 (en) | Computing device, storage medium and method for processing source files using the computing device | |
US7024664B2 (en) | Symbolic assembly language | |
JPH10275088A (ja) | リンク最適化方法 | |
JP7345672B2 (ja) | プログラムサイズ低減装置、プログラムサイズ低減プログラム、および、プログラムサイズ低減方法 | |
CN111241008B (zh) | 用于校正eeprom变量与地址的方法、装置和控制器 | |
US10162547B1 (en) | Memory expansion in a linking process | |
CN116719577A (zh) | 一种引导参数修改的方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211001 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211001 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20211001 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211109 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220105 |
|
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: 20220201 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220301 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7034390 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |