JPH0343829A - 追加ロジック挿入方式 - Google Patents
追加ロジック挿入方式Info
- Publication number
- JPH0343829A JPH0343829A JP17932889A JP17932889A JPH0343829A JP H0343829 A JPH0343829 A JP H0343829A JP 17932889 A JP17932889 A JP 17932889A JP 17932889 A JP17932889 A JP 17932889A JP H0343829 A JPH0343829 A JP H0343829A
- Authority
- JP
- Japan
- Prior art keywords
- load module
- load
- logic
- address
- additional
- 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
- 238000012966 insertion method Methods 0.000 claims description 3
- 238000003780 insertion Methods 0.000 abstract description 3
- 230000037431 insertion Effects 0.000 abstract description 3
- 238000004519 manufacturing process Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 6
- 238000000034 method Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 235000017166 Bambusa arundinacea Nutrition 0.000 description 1
- 235000017491 Bambusa tulda Nutrition 0.000 description 1
- 241001330002 Bambuseae Species 0.000 description 1
- 235000015334 Phyllostachys viridis Nutrition 0.000 description 1
- 239000011425 bamboo Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はロジック挿入に関し、特に既存ロードモジュー
ルへのロジック挿入に関する。
ルへのロジック挿入に関する。
従来、既存のロードモジュールのロジックの変更を行う
場合、原始プログラムを修正してコンパイラによって目
的プログラムを生成しリンカによって新しくロードモジ
ュールを生成する方法と、既存のロードモジュールの内
容を直接書き換えていく方法(以下、ロードモジエール
を直接書き換えることを「バッチ」と記す〉とがある。
場合、原始プログラムを修正してコンパイラによって目
的プログラムを生成しリンカによって新しくロードモジ
ュールを生成する方法と、既存のロードモジュールの内
容を直接書き換えていく方法(以下、ロードモジエール
を直接書き換えることを「バッチ」と記す〉とがある。
1つ以上のロードモジュールに同一の処理を追加する場
合、前者ではそれぞれのロードモジュールの原始プログ
ラム内に処理をとり入れてコンパイル、リンクを行うこ
とによって新しくロードモジュールを生成する方法や、
既存ロードモジュールの原始プログラムにはロジックを
追加する部分に呼び出し命令を挿入して追加ロジックを
呼び出せるようにしてコンパイルを行い追加するロジッ
クは1つの原始プログラムにしてコンパイルを行いリン
クによって新しいロードモジュールにとり込む方法があ
る。
合、前者ではそれぞれのロードモジュールの原始プログ
ラム内に処理をとり入れてコンパイル、リンクを行うこ
とによって新しくロードモジュールを生成する方法や、
既存ロードモジュールの原始プログラムにはロジックを
追加する部分に呼び出し命令を挿入して追加ロジックを
呼び出せるようにしてコンパイルを行い追加するロジッ
クは1つの原始プログラムにしてコンパイルを行いリン
クによって新しいロードモジュールにとり込む方法があ
る。
後者ではロードモジュールにあらかじめ準備されている
パッチにてロジック追加を可能にするための領域(以下
、パッチエリアと記す)に追加するロジックを書き込み
、ロジックを追加する部分にはパッチにてパッチエリア
に分岐させるようにロードモジュールを書き換える方法
がある。
パッチにてロジック追加を可能にするための領域(以下
、パッチエリアと記す)に追加するロジックを書き込み
、ロジックを追加する部分にはパッチにてパッチエリア
に分岐させるようにロードモジュールを書き換える方法
がある。
その他、追加するロジックをロードモジュールとして生
成し、このロードモジュールを呼び出せるように原始プ
ログラムを修正してコンパイル。
成し、このロードモジュールを呼び出せるように原始プ
ログラムを修正してコンパイル。
リンクを行って新しくロードモジュールを生成する方法
もある。
もある。
従来、1つのロードモジュールから他のロードモジュー
ルを呼び出すためには、あらがしめ両ロードモジュール
間に共通の外部シンボ°ルを定義しておかなければなら
なかった。したがって追加ロジックを挿入する場合、新
たにロードモジュールを生成するか、パッチにてロジッ
クを組み込むかしなければならなかった。
ルを呼び出すためには、あらがしめ両ロードモジュール
間に共通の外部シンボ°ルを定義しておかなければなら
なかった。したがって追加ロジックを挿入する場合、新
たにロードモジュールを生成するか、パッチにてロジッ
クを組み込むかしなければならなかった。
しかし、新たにロードモジュールを生成する方法は原始
プログラム修正という形をとるためにコンパイル、リン
クの必要があり、プログラムの規模が多きくなればなる
ほど新たにロードモジュールを生成するまでに多大な時
間が必要となるといった問題があった。
プログラム修正という形をとるためにコンパイル、リン
クの必要があり、プログラムの規模が多きくなればなる
ほど新たにロードモジュールを生成するまでに多大な時
間が必要となるといった問題があった。
パッチにてロジックを追加する場合は、ロジックを追加
する全てのロードモジュールに機械語でパッチを行って
いくという大変な作業に加え、追加するロジックがパッ
チエリアに収まれきれないといった場合も発生しえると
いった問題があった。
する全てのロードモジュールに機械語でパッチを行って
いくという大変な作業に加え、追加するロジックがパッ
チエリアに収まれきれないといった場合も発生しえると
いった問題があった。
本発明の追加ロジック挿入方式は、追加するロジックを
記述した原始プログラムからロードモジュールを生成す
るロードモジュール生成手段と、前記ロードモジュール
を主記憶装置の何番地からロードするのかを読みとるロ
ード開始番地認識手段と、ロードモジュールのロード領
域を他のプログラムによって侵されないように確医して
おくロード領域確保手段と、主記憶装置の指定されたロ
ード開始番地からロードモジュールをロードしていくロ
ードモジュールロード手段と、追加するロジックを実行
できるように既存ロードモジュールのロジックを主記憶
装置内の絶対番地で追加ロジックの入口へ分岐させるよ
うに修正するロードモジュール書き換え手段とを有する
。
記述した原始プログラムからロードモジュールを生成す
るロードモジュール生成手段と、前記ロードモジュール
を主記憶装置の何番地からロードするのかを読みとるロ
ード開始番地認識手段と、ロードモジュールのロード領
域を他のプログラムによって侵されないように確医して
おくロード領域確保手段と、主記憶装置の指定されたロ
ード開始番地からロードモジュールをロードしていくロ
ードモジュールロード手段と、追加するロジックを実行
できるように既存ロードモジュールのロジックを主記憶
装置内の絶対番地で追加ロジックの入口へ分岐させるよ
うに修正するロードモジュール書き換え手段とを有する
。
次に、本発明について図面を参照して説明する。
第1図は本発明の一実施例を示す説明図である。同図に
おいて1は主記憶装置、2はロード開始番地、3はロー
ド領域、4は追加ロジックを呼出す既存ロードモジュー
ル、5は追加ロジック。
おいて1は主記憶装置、2はロード開始番地、3はロー
ド領域、4は追加ロジックを呼出す既存ロードモジュー
ル、5は追加ロジック。
6は追加ロジックのロードモジュール、7は追加ロジッ
クを呼出す既存ロードモジュールのパッチをかける位置
、8は追加ロジックのロードモジュールを主記憶装置に
ロートしたときのロジック入口番地である。
クを呼出す既存ロードモジュールのパッチをかける位置
、8は追加ロジックのロードモジュールを主記憶装置に
ロートしたときのロジック入口番地である。
第2図はロードモジュールの関連図、第3図は構成手段
の関連図である。
の関連図である。
次に、上記の追加ロジック挿入方式の動作について第1
図〜第3図を参照して説明する。
図〜第3図を参照して説明する。
まず、追加ロジック5をロードモジュール生成手段13
により、原始プログラム12からコンパイルを行うこと
によって目的プログラム11を生成し、さらにリンクを
行うことによって追加ロードモジュール6を生成する。
により、原始プログラム12からコンパイルを行うこと
によって目的プログラム11を生成し、さらにリンクを
行うことによって追加ロードモジュール6を生成する。
既存ロードモジュール4には、ロードモジュール書き換
え手段17により、ロードモジュール生成手段13によ
って生成された追加ロードモジュール6のロードモジュ
ール内相対入口番地つとロードモジュール6の主記憶装
置1のロード開始番地2とから主記憶装置1での絶対入
口番地8がちとめられ、パッチにて絶対番地分岐命令が
挿入される。
え手段17により、ロードモジュール生成手段13によ
って生成された追加ロードモジュール6のロードモジュ
ール内相対入口番地つとロードモジュール6の主記憶装
置1のロード開始番地2とから主記憶装置1での絶対入
口番地8がちとめられ、パッチにて絶対番地分岐命令が
挿入される。
次に、このプログラムを実行させるコンビュータシステ
ムの立ち上げ時に、追加ロードモジュール6をロードさ
せるロード開始番地2を指定することにより、ロード開
始番地認識手段14がこのロードモジュールの何番地か
らロードさせるかを読みとり、それをロード領域確保手
段15とロードモジュールロード手段16に通知する。
ムの立ち上げ時に、追加ロードモジュール6をロードさ
せるロード開始番地2を指定することにより、ロード開
始番地認識手段14がこのロードモジュールの何番地か
らロードさせるかを読みとり、それをロード領域確保手
段15とロードモジュールロード手段16に通知する。
ロード領域確保手段15では通知されたロード開始番地
2からロードモジュールをロードするのに十分なロード
領域3を確保し、このロード領域3は追加ロードモジュ
ール6をロードすること以外の目的に使われないように
管理する。ロードモジュールロード手段16は通知され
たロード開始番地2から追加ロードモジュール6をロー
ドしていく。
2からロードモジュールをロードするのに十分なロード
領域3を確保し、このロード領域3は追加ロードモジュ
ール6をロードすること以外の目的に使われないように
管理する。ロードモジュールロード手段16は通知され
たロード開始番地2から追加ロードモジュール6をロー
ドしていく。
これら一連の動作により、コンピュータシステムが稼働
状態になった時、追加ロードモジュール6は指定された
位置にロードされている°ので、既存ロードモジュール
4はいつでも、どこにロードされても、パッチによって
挿入された絶対番地分岐命令によって追加ロジック5を
呼び出すことができる。
状態になった時、追加ロードモジュール6は指定された
位置にロードされている°ので、既存ロードモジュール
4はいつでも、どこにロードされても、パッチによって
挿入された絶対番地分岐命令によって追加ロジック5を
呼び出すことができる。
また、他にも同一の追加ロジック5を挿入したいロード
モジュールがある場合、ロードモジュール書き換え手段
17により、追加ロジック5への絶対番地分岐命令をパ
ッチにて挿入することができる。
モジュールがある場合、ロードモジュール書き換え手段
17により、追加ロジック5への絶対番地分岐命令をパ
ッチにて挿入することができる。
以上説明したように本発明は任意のロードモジュールを
主記憶装置の指定した番地にロードするようにしている
ので、ロードモジュール間の恭通シンボルを必要としな
い、したがって既存ロードモジュールにロジックを追加
する場合、(1〉追加ロジックの入口番地が主記憶装置
上の絶対番地で分かっているので、既存ロードモジュー
ルはこの絶対入口番地へ分岐するようにパッチを作成す
るだけで済む。
主記憶装置の指定した番地にロードするようにしている
ので、ロードモジュール間の恭通シンボルを必要としな
い、したがって既存ロードモジュールにロジックを追加
する場合、(1〉追加ロジックの入口番地が主記憶装置
上の絶対番地で分かっているので、既存ロードモジュー
ルはこの絶対入口番地へ分岐するようにパッチを作成す
るだけで済む。
(2)追加ロジックをサブルーチンとしてロードモジュ
ールで生成するので、既存ロードモジュールに追加ロジ
ックをパッチにて挿入する必要がない。
ールで生成するので、既存ロードモジュールに追加ロジ
ックをパッチにて挿入する必要がない。
といった効果があり、既存ロードモジュールを新しく生
威しなおす場合に比べて時間の短縮が可能になり、また
追加ロジックをパッチにて既存ロードモジュール内にと
り込む場合に比べて簡単にロジック挿入ができ、既存ロ
ードモジュール内に広いパッチエリアを必要としない。
威しなおす場合に比べて時間の短縮が可能になり、また
追加ロジックをパッチにて既存ロードモジュール内にと
り込む場合に比べて簡単にロジック挿入ができ、既存ロ
ードモジュール内に広いパッチエリアを必要としない。
複数の既存ロードモジュールに同一の追加ロジックを挿
入する場合には上記した効果がさらに大きくなる
入する場合には上記した効果がさらに大きくなる
第1図は本発明の一実施例を示す説明図、第2図はロー
ドモジュールの関連図、第3図は構成手段の関連図であ
る。 1・・・主記憶装置、2・・・ロード開始番地、3・・
・ロード領域、4・・・既存ロードモジュール、5・・
・追加ロジック、6・・・追加ロードモジュール、7・
・・パッチ位置、8・・・絶対入口番地、9・・・相対
入口番地、13・・・ロードモジュール生成手段、14
・・・ロード開始番地認識手段、15・・・ロード領域
確保手段、16・・・ロードモジュールロード手段、1
7・・・ロー箭 図 原文aブD7°ラム
ドモジュールの関連図、第3図は構成手段の関連図であ
る。 1・・・主記憶装置、2・・・ロード開始番地、3・・
・ロード領域、4・・・既存ロードモジュール、5・・
・追加ロジック、6・・・追加ロードモジュール、7・
・・パッチ位置、8・・・絶対入口番地、9・・・相対
入口番地、13・・・ロードモジュール生成手段、14
・・・ロード開始番地認識手段、15・・・ロード領域
確保手段、16・・・ロードモジュールロード手段、1
7・・・ロー箭 図 原文aブD7°ラム
Claims (1)
- 追加するロジックを記述した原始プログラムからロー
ドモジュールを生成するロードモジュール生成手段と、
前記ロードモジュールを主記憶装置の何番地からロード
するのかを読みとるロード開始番地認識手段と、ロード
モジュールのロード領域を他のプログラムによって侵さ
れないように確保しておくロード領域確保手段と、主記
憶装置の指定されたロード開始番地からロードモジュー
ルをロードしていくロードモジュールロード手段と、追
加するロジックを実行できるように既存ロードモジュー
ルのロジックを主記憶装置内の絶対番地で追加ロジック
の入口へ分岐させるように修正するロードモジュール書
き換え手段とを有することを特徴とする追加ロジック挿
入方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17932889A JPH0343829A (ja) | 1989-07-11 | 1989-07-11 | 追加ロジック挿入方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP17932889A JPH0343829A (ja) | 1989-07-11 | 1989-07-11 | 追加ロジック挿入方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0343829A true JPH0343829A (ja) | 1991-02-25 |
Family
ID=16063920
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP17932889A Pending JPH0343829A (ja) | 1989-07-11 | 1989-07-11 | 追加ロジック挿入方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0343829A (ja) |
-
1989
- 1989-07-11 JP JP17932889A patent/JPH0343829A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4607332A (en) | Dynamic alteration of firmware programs in Read-Only Memory based systems | |
| JP2666847B2 (ja) | 異種言語間連絡方式 | |
| CN111752571A (zh) | 程序升级方法、装置、设备及存储介质 | |
| US8464230B2 (en) | Methods and systems to implement non-ABI conforming features across unseen interfaces | |
| US4823257A (en) | Information processing system having smart memories | |
| US5826088A (en) | System for protecting computer software written in interpreted language | |
| US6526569B1 (en) | Method for compiling a procedural program to an object class definition | |
| US6101326A (en) | Method and apparatus for frame elimination for simple procedures with tail calls | |
| JPH0343829A (ja) | 追加ロジック挿入方式 | |
| EP0417916B1 (en) | Procedure state descriptor system for digital data processors | |
| JPS62214443A (ja) | エミユレ−シヨン実行方法 | |
| CN115658140A (zh) | 一种sdk的打包方法、装置、终端以及存储介质 | |
| CN114579135B (zh) | 一种安装包生成方法及装置 | |
| JP3596570B2 (ja) | クラスの主記憶装置への配置方法 | |
| McCormack | Generic programming in Fortran with Forpedo | |
| CN116955875A (zh) | 页面更新方法、装置、电子设备及存储介质 | |
| JPH0566949A (ja) | 関数定義コンパイルドコード呼出し方式 | |
| JPH04287121A (ja) | タプルスペース方式 | |
| JPH0695868A (ja) | ソフトウェア管理方式 | |
| JPS63298451A (ja) | デバグ用目的プログラム生成方式 | |
| JPH05143356A (ja) | コンパイラ装置 | |
| JPH05334052A (ja) | モジュール管理方式 | |
| JPH06119203A (ja) | デバック行削除装置 | |
| JPH0358232A (ja) | プリプロセッサ呼び出し方式 | |
| JPH03255534A (ja) | 高級プログラム言語のポインタ修飾データ参照方式 |