JPH0540613A - サムチエツクデータ付きリンク方式 - Google Patents
サムチエツクデータ付きリンク方式Info
- Publication number
- JPH0540613A JPH0540613A JP3194657A JP19465791A JPH0540613A JP H0540613 A JPH0540613 A JP H0540613A JP 3194657 A JP3194657 A JP 3194657A JP 19465791 A JP19465791 A JP 19465791A JP H0540613 A JPH0540613 A JP H0540613A
- Authority
- JP
- Japan
- Prior art keywords
- data
- code data
- program code
- value
- program
- 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
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】
【構成】複数の再配置可能なプログラムコードデータを
結合し、データ及びコマンドコードを一意の相対値コー
ドデーダに置き換え、領域を確保する命令で確保されて
いる初期値の定まっていない不定値領域を固定値‘f’
で置き換える。サムチェックデータ計算手段では絶対値
コードデータ作成手段と初期値作成手段では決定された
プログラムコードデータを、データの最初から最後まで
順次足し込んだ演算結果がxになるような補正値データ
を作成するサムチェックデータ埋め込み手段ではサムチ
ェックデータをプログラムコードデータの最後に付け加
える。 【効果】プログラムコードデータが最終的に決定され、
実行可能なプログラムコードデータが作成されるリンク
時に、そのプログラムコードデータのサムチェックデー
タを埋め込み、サムチェックデータを計算で確認するこ
とにより、プログラム実行時の主記憶展開時に、そのプ
ログラムコードデータの不変性及び、正当性を保証でき
るという効果がある。
結合し、データ及びコマンドコードを一意の相対値コー
ドデーダに置き換え、領域を確保する命令で確保されて
いる初期値の定まっていない不定値領域を固定値‘f’
で置き換える。サムチェックデータ計算手段では絶対値
コードデータ作成手段と初期値作成手段では決定された
プログラムコードデータを、データの最初から最後まで
順次足し込んだ演算結果がxになるような補正値データ
を作成するサムチェックデータ埋め込み手段ではサムチ
ェックデータをプログラムコードデータの最後に付け加
える。 【効果】プログラムコードデータが最終的に決定され、
実行可能なプログラムコードデータが作成されるリンク
時に、そのプログラムコードデータのサムチェックデー
タを埋め込み、サムチェックデータを計算で確認するこ
とにより、プログラム実行時の主記憶展開時に、そのプ
ログラムコードデータの不変性及び、正当性を保証でき
るという効果がある。
Description
【0001】
【産業上の利用分野】本発明は、サムチェックデータ付
きリンク方式に関し、特に複数の再配置可能なプログラ
ムコードデータを結合し、一意の相対値コードデータに
変換し、実行可能なプログラムコードデータを作成す
る、プログラムリンク方式に関する。
きリンク方式に関し、特に複数の再配置可能なプログラ
ムコードデータを結合し、一意の相対値コードデータに
変換し、実行可能なプログラムコードデータを作成す
る、プログラムリンク方式に関する。
【0002】
【従来の技術】従来、この種のプログラムのリンクと
は、再配置可能な個々のプログラムを結合し、一意の相
対値アドレスを与え1つの実行可能なプログラムデータ
コードとし、主記憶上のどこに配置するかという情報を
もとにして、矛盾なくプログラムが実行できるような、
プログラムコードデータの最終形態を作成する作業とい
える。一般に、プログラム作成過程の最終段階に行わ
れ、リンク後はプログラムコードデータが変化すること
は無い。いいかえれば、プログラムコードデータはこの
段階で決定されるといえる。
は、再配置可能な個々のプログラムを結合し、一意の相
対値アドレスを与え1つの実行可能なプログラムデータ
コードとし、主記憶上のどこに配置するかという情報を
もとにして、矛盾なくプログラムが実行できるような、
プログラムコードデータの最終形態を作成する作業とい
える。一般に、プログラム作成過程の最終段階に行わ
れ、リンク後はプログラムコードデータが変化すること
は無い。いいかえれば、プログラムコードデータはこの
段階で決定されるといえる。
【0003】
【発明が解決しようとする課題】一般に、プログラム
は、初期値を持たない領域確保のみを目的とするコード
データでない限り、そのコードデータが1バイトでも書
き変わってしまえば本来の正しい動作が行われなくなっ
てしまう。例えば、プログラムコードデータを格納して
おく記憶謀体内でデータの破壊が起き、プログラムコー
ドデータが書き変わってしまった場合や、主記憶に障害
が発生しており記憶媒体上から主記憶上にプログラムコ
ードデータが正しく展開できなかった場合には、このプ
ログラムを実行させても、本来のプログラムの機能を果
たすことができなくなる。それだけプログラムのコード
データは、不変性を要求されるものといえる。
は、初期値を持たない領域確保のみを目的とするコード
データでない限り、そのコードデータが1バイトでも書
き変わってしまえば本来の正しい動作が行われなくなっ
てしまう。例えば、プログラムコードデータを格納して
おく記憶謀体内でデータの破壊が起き、プログラムコー
ドデータが書き変わってしまった場合や、主記憶に障害
が発生しており記憶媒体上から主記憶上にプログラムコ
ードデータが正しく展開できなかった場合には、このプ
ログラムを実行させても、本来のプログラムの機能を果
たすことができなくなる。それだけプログラムのコード
データは、不変性を要求されるものといえる。
【0004】しかしながら、主記憶上に展開したプログ
ラムコードデータが、本来のプログラムコードデータか
ら書き変わっていないことを確認する手段が無いという
問題がある。
ラムコードデータが、本来のプログラムコードデータか
ら書き変わっていないことを確認する手段が無いという
問題がある。
【0005】
【課題を解決するための手段】本発明のサムチェックデ
ータ付きリンク方式は、複数の再配置可能なプログラム
コードデータを、一意の相対値コードデータに置き換え
る相対値コードデータ作成手段と、領域を確保する命令
で確保されている初期値の定まっていない不定値領域を
固定値‘f’で置き換える初期値作成手段、前記の絶対
値コードデータ作成手段及び、初期値作成手段で決定さ
れたプログラムコードデータをコードデータの最初から
最後まで順次足し込んだ演算結果がxになるような補正
値データを作成する、サムチェックデータ計算手段、及
びサムチェックデータをプログラムコードデータの最後
に付け加える、サムチェックデータ埋め込み手段を有し
ている。
ータ付きリンク方式は、複数の再配置可能なプログラム
コードデータを、一意の相対値コードデータに置き換え
る相対値コードデータ作成手段と、領域を確保する命令
で確保されている初期値の定まっていない不定値領域を
固定値‘f’で置き換える初期値作成手段、前記の絶対
値コードデータ作成手段及び、初期値作成手段で決定さ
れたプログラムコードデータをコードデータの最初から
最後まで順次足し込んだ演算結果がxになるような補正
値データを作成する、サムチェックデータ計算手段、及
びサムチェックデータをプログラムコードデータの最後
に付け加える、サムチェックデータ埋め込み手段を有し
ている。
【0006】
【実施例】次に本発明について図面を参照して説明す
る。
る。
【0007】図1は、本発明の一実施例を示すブロック
図である。図1おいて、本発明の一実施例は、相対値コ
ードデータ作成手段10、初期値作成手段20、サムチ
ェックデータ計算手段30、及び、サムチェックデータ
をプログラムのコードデータの最後に付け加えるサムチ
ェックデータ埋め込み手段40で構成されている。
図である。図1おいて、本発明の一実施例は、相対値コ
ードデータ作成手段10、初期値作成手段20、サムチ
ェックデータ計算手段30、及び、サムチェックデータ
をプログラムのコードデータの最後に付け加えるサムチ
ェックデータ埋め込み手段40で構成されている。
【0008】再配置可能プログラムコードデータ5a,
5b,5cは、リンクされるまでその相対値コードが確
定しないオペランドコードと、初期値が与えられず領域
のみ確保されている部分を含む別個のプログラムコード
データである。これに対し、相対値プログラムコードデ
ータ50は、リンクにより、再配置可能プログラムコー
ドデータである5a,5b,5cを結合してできた、す
べてのコードデータが一意に決定にされた後のプログラ
ムコードである。
5b,5cは、リンクされるまでその相対値コードが確
定しないオペランドコードと、初期値が与えられず領域
のみ確保されている部分を含む別個のプログラムコード
データである。これに対し、相対値プログラムコードデ
ータ50は、リンクにより、再配置可能プログラムコー
ドデータである5a,5b,5cを結合してできた、す
べてのコードデータが一意に決定にされた後のプログラ
ムコードである。
【0009】相対値コードデータ作成手段10は、再配
置可能プログラムコードデータ5a,5b,5cのリン
クするまで確定できなかったオペランドコードを、与え
られたアドレス情報を基に、決定することを行い領域確
保命令を除いたオペランドコードが一意に決定される。
置可能プログラムコードデータ5a,5b,5cのリン
クするまで確定できなかったオペランドコードを、与え
られたアドレス情報を基に、決定することを行い領域確
保命令を除いたオペランドコードが一意に決定される。
【0010】次に、初期値作成手段20で、同じく再配
置可能プログラムコードデータ5a,5b,5cの領域
確保命令で確保されている領域を検索し、確保されてい
るデータ長分を固定値‘f’で置き換える。本実施例で
は、仮にデータ‘0’とする。
置可能プログラムコードデータ5a,5b,5cの領域
確保命令で確保されている領域を検索し、確保されてい
るデータ長分を固定値‘f’で置き換える。本実施例で
は、仮にデータ‘0’とする。
【0011】前述の、絶対値コードデータ作成手段10
と、初期値作成手段20とで、すべてのプログラムコー
ドデータは、一つのプログラムとして一意の値を持つ絶
対値コードエータに変換されたことになり、相対値プロ
グラムコードデータ50が生成される。
と、初期値作成手段20とで、すべてのプログラムコー
ドデータは、一つのプログラムとして一意の値を持つ絶
対値コードエータに変換されたことになり、相対値プロ
グラムコードデータ50が生成される。
【0012】次に、サムチェックデータ計算手段30
で、絶対値プログラムコードデータ30のコードデータ
を最初から最後まで順次足し込んでいきその合計値dを
算出すること計算値dと、
で、絶対値プログラムコードデータ30のコードデータ
を最初から最後まで順次足し込んでいきその合計値dを
算出すること計算値dと、
【0013】
【0014】となるようなdの補正値d−barを求め
る。
る。
【0015】本実施例では、xを仮に‘0’として、
【0016】
【0017】この様にして求められたサムチェックデー
タをサムチェックデータ埋け込み手段40で、コードデ
ータの最後に付く加える。
タをサムチェックデータ埋け込み手段40で、コードデ
ータの最後に付く加える。
【0018】以上の様にして補正値データを付け加えた
コードデータは、そのままの形で、ローダーにより、主
記憶上に展開される。従って、ロード終了時に、コード
データの最初から補正値データまで順次足し込んでい
き、その演算結果が0になることを確認することで、プ
ログラムが正しく、二次記憶の媒体内に格納されていた
こと、及びプログラムが正しく主記憶上に展開されてい
ることを、確認することがきる。
コードデータは、そのままの形で、ローダーにより、主
記憶上に展開される。従って、ロード終了時に、コード
データの最初から補正値データまで順次足し込んでい
き、その演算結果が0になることを確認することで、プ
ログラムが正しく、二次記憶の媒体内に格納されていた
こと、及びプログラムが正しく主記憶上に展開されてい
ることを、確認することがきる。
【0019】尚、一般にROMに書き込まれたコードデ
ータ等は、サムチェックデータ計算方式30と同様な方
式でサムチェックデータをROM内に埋め込み、これを
利用してROM内のデータの不変性を確認することが行
われている。
ータ等は、サムチェックデータ計算方式30と同様な方
式でサムチェックデータをROM内に埋め込み、これを
利用してROM内のデータの不変性を確認することが行
われている。
【0020】
【発明の効果】以上説明したように本発明は、プログラ
ムコードデータが最終的に決定され、実行可能なプログ
ラムコードデータが作成されるリンク時に、そのプログ
ラムコードデータのサムチェックデータを埋め込み、サ
ムチェックデータを計算で確認することにより、プログ
ラム実行時の主記憶展開時に、そのプログラムコードデ
ータの不変性及び、正当性を確証できるという効果があ
る。
ムコードデータが最終的に決定され、実行可能なプログ
ラムコードデータが作成されるリンク時に、そのプログ
ラムコードデータのサムチェックデータを埋め込み、サ
ムチェックデータを計算で確認することにより、プログ
ラム実行時の主記憶展開時に、そのプログラムコードデ
ータの不変性及び、正当性を確証できるという効果があ
る。
【図1】本発明の一実施例を示すブロック図である。
10 絶対値コードデータ作成手段 20 初期値作成手段 30 サムチェックデータ計算手段 40 サムチェックデータ埋め込み手段 5a 再配置可能プログラムデータコード 5b 再配置可能プログラムデータコード 5c 再配置可能プログラムデータコード 50 絶対値プログラムコードデータ 100 処理の流れ 200 作用の流れ
Claims (1)
- 【請求項1】 複数の再配置可能なプログラムコードデ
ータを結合し、データ及びコマンドコードを一意の相対
値コードデータに置き換える相対値コードデータ作成手
段、領域を確保する命令で確保されている初期値の定ま
っていない不定値領域を固定値‘f’で置き換える初期
値作成手段、前記絶対値コードデータ作成手段と初期値
作成手段で決定されたプログラムコードデータを、デー
タの最初から最後まで順次足し込んだ演算結果がxにな
るように補正値データを作成する、サムチェックデータ
計算手段、及びサムチェックデータをプログラムコード
データの最後に付け加える、サムチェックデータ埋め込
み手段を有することを特徴とするサムチェックデータ付
きリンク方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3194657A JPH0540613A (ja) | 1991-08-05 | 1991-08-05 | サムチエツクデータ付きリンク方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3194657A JPH0540613A (ja) | 1991-08-05 | 1991-08-05 | サムチエツクデータ付きリンク方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0540613A true JPH0540613A (ja) | 1993-02-19 |
Family
ID=16328155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3194657A Pending JPH0540613A (ja) | 1991-08-05 | 1991-08-05 | サムチエツクデータ付きリンク方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0540613A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000065455A1 (fr) * | 1999-04-22 | 2000-11-02 | Matsushita Electric Industrial Co., Ltd. | Processeur |
-
1991
- 1991-08-05 JP JP3194657A patent/JPH0540613A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000065455A1 (fr) * | 1999-04-22 | 2000-11-02 | Matsushita Electric Industrial Co., Ltd. | Processeur |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5815714A (en) | Embedded debug commands in a source file | |
US7055035B2 (en) | Method for generating a read only memory image | |
US5559884A (en) | Method and system for generating and auditing a signature for a computer program | |
EP0697652A1 (en) | Method for re-executing a process on a computer system for fault correction | |
US6446238B1 (en) | System and method for updating microcode stored in a non-volatile memory | |
EP0633526A2 (en) | Language processing system and method therefor | |
CN113590227A (zh) | 一种嵌入式***下的二进制烧写格式的加载方法及*** | |
JPH0540613A (ja) | サムチエツクデータ付きリンク方式 | |
Yin et al. | Formal verification by reverse synthesis | |
US7155429B2 (en) | Method, apparatus and article of manufacture to aggregate automated transaction procession | |
JP2016128941A (ja) | 出力判定装置、出力判定方法、出力判定プログラム、及び、静的解析装置 | |
KR101120989B1 (ko) | 표준화된 소스 적재 프로그램 생성 방법 및 그 시스템, 기록 매체, 및 상기 방법을 이용한 데이터 적재 방법 | |
JP2001060240A (ja) | フォーマット修正方法およびデータ変換方法 | |
US20240272901A1 (en) | Control device and address management method | |
JP2020194338A (ja) | ソフトウェア開発支援装置及びソフトウェア開発支援プログラム | |
US20080098350A1 (en) | Method of generating c code on the basis of uml specifications | |
KR100403747B1 (ko) | 메모리의프로그램정정방법 | |
JPH11194933A (ja) | ファイル検証方法 | |
JP2016151973A (ja) | 制御コントロールシステム、その開発支援装置、制御装置 | |
JP3830579B2 (ja) | 情報解析・編集システム | |
JP2000276344A (ja) | オブジェクトを利用したプログラム作成システムおよびそのプログラム作成方法 | |
JPH06314194A (ja) | パッチ方式 | |
JPH03100730A (ja) | 高級言語による緊急修正データ作成処理方法 | |
JPH05265742A (ja) | プログラムパッチ方式 | |
JP2003091426A (ja) | 読み出し専用メモリイメージを生成するシステム |