JPH05241813A - Automatic program addition correction system - Google Patents

Automatic program addition correction system

Info

Publication number
JPH05241813A
JPH05241813A JP7584292A JP7584292A JPH05241813A JP H05241813 A JPH05241813 A JP H05241813A JP 7584292 A JP7584292 A JP 7584292A JP 7584292 A JP7584292 A JP 7584292A JP H05241813 A JPH05241813 A JP H05241813A
Authority
JP
Japan
Prior art keywords
patch
program
input
area
correction
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
JP7584292A
Other languages
Japanese (ja)
Inventor
Joji Shimomori
譲治 下森
Takamichi Fukushima
隆道 福島
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.)
NIPPON DENKI COMPUTER SYST KK
Original Assignee
NIPPON DENKI COMPUTER SYST KK
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 NIPPON DENKI COMPUTER SYST KK filed Critical NIPPON DENKI COMPUTER SYST KK
Priority to JP7584292A priority Critical patent/JPH05241813A/en
Publication of JPH05241813A publication Critical patent/JPH05241813A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To reduce an artificial miss, and to efficiently and effectively improve a developing efficiency by executing and managing the maintenance of partially operating a patch correction after a program development, which is conventionally operated by a worker. CONSTITUTION:At the time of the development of an assembler language, an area for maintenance being a patch area 16 is preliminarily prepared in an execution program, the correction information of a part where an insertion correction (patch) is operated or the like is stored, an execution is attained by referring to the correction information of the area, and an execution part is accompanied with the interruption of the patch.

Description

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

【0001】[0001]

【産業上の利用分野】本発明はアセンブラ言語によるプ
ログラム追加方式に係り、特に挿入修正(パッチ)によ
る実行形式のプログラムの追加修正を自動化するプログ
ラム自動追加修正方式に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a program addition method using an assembler language, and more particularly to a program automatic addition / correction method that automates addition / correction of an executable program by insertion correction (patch).

【0002】[0002]

【従来の技術】従来のアセンブラ言語でのプログラム開
発では、テキストエディタを用いてソースプログラムを
作成し、「コンパイル」と「リンク」を行うという、原
始的なものであった。例えば、後日プログラムに一部修
正を加え、動作の変更をさせるには再度ソースプログラ
ムを修正し、コンパイル、リンクという操作を目的とす
る動作が実現するまで反復しなければならず、大規模な
プログラムになるほど前述の操作は大変煩わしく、かつ
開発効率の最も悪い方法であった。その後、アセンブラ
言語の命令仕様の変更に伴い、実行形式のプログラムの
追加修正が可能となった。これは追加したいプログラム
の追加修正箇所を、予め確保されたパッチエリアに拡張
されたアセンブラの命令により、実行形式のプログラム
に挿入するインサートという方法である。
2. Description of the Related Art In the conventional program development in an assembler language, a source program was created using a text editor, and "compile" and "link" were performed. For example, to make some changes to the program at a later date and change the operation, the source program must be modified again and repeated until the operation for the purpose of compiling and linking is realized. The above operation was very cumbersome and the development efficiency was the worst. After that, along with the change in the instruction specification of the assembler language, it became possible to add and modify the executable program. This is a method called an insert in which an added / corrected portion of a program to be added is inserted into an executable program by an assembler instruction expanded in a patch area secured in advance.

【0003】[0003]

【発明が解決しようとする課題】上述した従来の方式で
は、インサートによるパッチを行う場合は、上記のよう
にパッチエリアが確保されており、その中の空きエリア
に登録されるものとして、追加プログラム部、プログラ
ムのインサート部分にあるプログラム部、インサート部
分の次に処理を移すプログラム部をまとめたインサート
箇所へのパッチ部と、プログラムのインサート部分に登
録するパッチエリアの追加プログラム部に処理を移すプ
ログラム部をまとめたパッチエリアへ格納するパッチと
が必要になるという課題があった。またインサート先、
格納先のアドレスやパッチの空き領域など、全ての管理
は人間によって管理しなければならないという課題があ
った。そして、プログラムの開発効率は良くなったもの
の、この方法では、パッチエリアに同じパッチが二重登
録される可能性がある、アドレスの計算ミスがあり、信
頼性に欠ける、パッチエリアでのジャンプ先アドレスの
インサート処理を行う箇所の解読(判断)が難しい、と
いう信頼性、生産性に欠けたものであるという課題があ
った。
According to the above-mentioned conventional method, when the patch by insert is performed, the patch area is secured as described above, and the additional program is assumed to be registered in the empty area in the patch area. Section, the program section in the insert section of the program, the patch section that combines the program section that moves the processing next to the insert section, and the program that transfers the processing to the additional program section of the patch area registered in the insert section of the program There was a problem that a patch that stores the parts in a patch area is required. Also insert destination,
There has been a problem that all management such as the storage destination address and the patch free area must be managed by a human. And although the development efficiency of the program has improved, this method may double-register the same patch in the patch area, there is an error in the calculation of the address, and it is unreliable. There is a problem in that it is difficult to decipher (determine) the location where the address insertion processing is performed, which lacks reliability and productivity.

【0004】[0004]

【課題を解決するための手段】本発明のプログラム自動
追加修正方式は、キーボードからのコマンドおよびパッ
チデータを入力する入力手段と、この入力手段により入
力されたコマンドやパッチデータをCRTディスプレイ
に表示・確認する表示手段を具備した入出力装置におい
て、入力されたコマンドおよびパッチデータが正常であ
るかどうかチェックを行い異常であれば終了し、正常で
あれば入力データを解釈するステップと、上記入力デー
タが対象としているプログラムに対してプログラムに予
め用意されているパッチエリアに存在する管理テーブル
を管理することによりパッチデータを追加修正箇所に挿
入を行い、その挿入されたパッチデータを論理的に結合
させて、整合性を持たせてから修正プログラムに連結さ
せた後、その整合性を持ったパッチデータをパッチエリ
ア内の管理テーブルに出力するステップを持つようにし
たものである。
According to the automatic program addition and correction method of the present invention, an input means for inputting a command and patch data from a keyboard and a command and patch data input by this input means are displayed on a CRT display. In an input / output device equipped with a display means for confirming, it is checked whether the input command and patch data are normal, and if abnormal, the process ends, and if normal, the input data is interpreted. By managing the management table that exists in the patch area prepared in advance for the target program, the patch data is inserted at the additional correction location and the inserted patch data is logically combined. And make it consistent, and then link it to the hotfix Patch data with those obtained by to have a step of outputting the management table of the patch area to.

【0005】[0005]

【作用】本発明においては、コンピュータ上のアセンブ
ラ言語でのプログラム開発において、開発後のメンテナ
ンス作業(プログラム開発後部分的にパッチ修正を行い
たい場合)を人手によることなく、そのメンテナンスを
コンピュータが遂行・管理するようになし、パッチによ
る実行形式のプログラムの追加修正を自動化する。
According to the present invention, in the program development in the assembler language on the computer, the computer performs the maintenance work after the development (when it is desired to partially modify the patch after the program development) without performing the maintenance manually. -Automated additional modification of executable programs by patches without management.

【0006】[0006]

【実施例】図1は本発明の1実施例を示すブロック図で
ある。この図1において、11は図示しないキーボード
からのコマンドおよびパッチデータを入力する入力手
段、12はこの入力手段11により入力されたコマンド
やパッチデータをCRTディスプレイに表示・確認する
表示手段で、これらは入出力装置に具備されている。1
3は解釈とパッチ実施プログラム、14はプログラム、
15はプログラムエリア、16はパッチエリア、17は
修正パッチ管理テーブル、18は追加パッチ保存エリア
である。
FIG. 1 is a block diagram showing an embodiment of the present invention. In FIG. 1, 11 is an input means for inputting a command and patch data from a keyboard (not shown), and 12 is a display means for displaying / checking the command or patch data input by the input means 11 on a CRT display. It is provided in the input / output device. 1
3 is an interpretation and patch implementation program, 14 is a program,
Reference numeral 15 is a program area, 16 is a patch area, 17 is a correction patch management table, and 18 is an additional patch storage area.

【0007】つぎにこの図1に示す実施例の動作を説明
する。まず、入力手段11はコマンド,修正パッチデー
タ入力処理の一部を構成する。そして、修正を行うため
入力されたコマンド,データは確認のため表示手段12
によりCRTディスプレイに表示を行う。つぎに、解釈
とパッチ実施プログラム13は、入力されたコマンドは
正常で、かつデータがプログラム上のどの部分に挿入さ
れるかという判断や、その挿入先のプログラムの解釈を
し、プログラムにパットを行い管理テーブルにそのパッ
チの整合性を持たせてから記録するなどの操作を行う。
そして、プログラム14にはプログラムエリア15とパ
ッチエリア16の2つのエリアがあり、このパッチエリ
ア16は修正パッチ管理テーブル17と追加パッチ保存
エリア18に分かれる。
Next, the operation of the embodiment shown in FIG. 1 will be described. First, the input unit 11 constitutes a part of the command / correction patch data input process. Then, the command and data input for correction are displayed on the display unit 12 for confirmation.
To display on the CRT display. Next, the interpretation and patch execution program 13 judges whether the input command is normal and at which part of the program the data is inserted, interprets the program of the insertion destination, and puts a pad on the program. Then, the management table is made to have the consistency of the patch and then recorded.
The program 14 has two areas, a program area 15 and a patch area 16, and the patch area 16 is divided into a correction patch management table 17 and an additional patch storage area 18.

【0008】図2は図1の動作説明に供するパッチ処理
手順のフローチャートである。この図2において、ステ
ップ101,102は、入力されたコマンドおよびパッ
チデータが正常であるかどうかチェックを行い、異常で
あれば終了し、正常であれば入力データを解釈するステ
ップで、このステップ101,102は図1の解釈とパ
ッチ実施プログラム13に対応する。ステップ103,
104,105は、入力データが対象としているプログ
ラムに対してプログラムに予め用意されているパッチエ
リアに存在する管理テーブルを管理することによりパッ
チデータを追加修正箇所に挿入を行い、その挿入された
パッチデータを論理的に結合させて、整合性を持たせて
から修正プログラムに連結させた後、その整合性を持っ
たパッチデータをパッチエリア内の管理テーブルに出力
するステップで、このステップ103〜105は図1の
プログラムエリア15とパッチエリア16および修正パ
ッチ管理テーブル17ならびに追加パッチ保存エリア1
8の部分に対応する。
FIG. 2 is a flow chart of a patch processing procedure used to explain the operation of FIG. In FIG. 2, steps 101 and 102 are steps for checking whether the input command and patch data are normal, and ending if abnormal, interpreting the input data if normal. , 102 correspond to the interpretation and patch execution program 13 of FIG. Step 103,
Reference numerals 104 and 105 insert patch data into additional correction points by managing a management table existing in a patch area prepared in advance for the program whose input data is the target, and the inserted patch In the step of outputting the patch data having the consistency to the management table in the patch area after logically combining the data to make the consistency and then linking to the correction program, the steps 103 to 105 are performed. Is the program area 15, patch area 16, modified patch management table 17 and additional patch storage area 1 in FIG.
Corresponds to part 8.

【0009】つぎにこの図2における各ステップの処理
を説明する。まず、最初にプログラム修正コマンド、追
加パッチデータ入力を行う(ステップ101)。そし
て、入力されたそれぞれの項目が、ふたつの必須入力項
目(1:コマンド、2:追加パッチデータ)と同じかど
うか検査を行い、異常な項目が発見された場合は強制終
了を行う(ステップ102)。つぎに、プログラムのパ
ッチエリアにあるパッチ管理テーブルを読み込み、過去
に行った追加修正のパッチサイズ、その追加修正パッチ
の最終アドレスを記憶領域に読み出す(ステップ10
3)。そして、入力、読み出しされたデータをもとに、
プログラムに追加パッチを当てた後追加挿入後に続く命
令に飛ぶようにさせ、プログラムとパッチに整合性を持
たせる処理を行う(ステップ104)。追加挿入後、整
合性をもったパッチデータを管理テーブルに記録する処
理を行い(ステップ)、終了する。
Next, the processing of each step in FIG. 2 will be described. First, a program correction command and additional patch data are input (step 101). Then, it is checked whether or not each input item is the same as the two essential input items (1: command, 2: additional patch data), and if an abnormal item is found, forced termination is performed (step 102). ). Next, the patch management table in the patch area of the program is read, and the patch size of the additional correction made in the past and the final address of the additional correction patch are read out to the storage area (step 10).
3). Then, based on the input and read data,
After applying the additional patch to the program, the instruction following the additional insertion is made to jump, and processing for making the program and the patch have consistency is performed (step 104). After the additional insertion, the patch data having the consistency is recorded in the management table (step), and the process is ended.

【0010】図3ないし図5は図1の動作説明に供する
図で、図3はメモリ内におけるプログラムのエリア構成
図を示し、図4(A)はパッチ修正前のパッチ挿入場所
を指示したプログラムのエリア構成図、図4(B)はパ
ッチ修正後のパッチ挿入場所を指示したプログラムのエ
リア構成図、図5(A)はパッチ修正前のパッチ挿入場
所にあるプログラム、図5(B)はパッチ修正後のパッ
チ挿入場所の挿入されたプログラムである。
FIGS. 3 to 5 are diagrams for explaining the operation of FIG. 1, FIG. 3 shows an area configuration diagram of a program in the memory, and FIG. 4A shows a program instructing a patch insertion location before patch correction. 4B is an area configuration diagram of a program instructing the patch insertion location after patch correction, FIG. 5A is a program at the patch insertion location before patch correction, and FIG. 5B is This is the inserted program at the patch insertion location after patch modification.

【0011】そして、図3は修正前のプログラムで、プ
ログラムエリアとパッチエリア(管理テーブル)に分か
れている。図4(A)はプログラムエリア中に「命令1
()」とそれに続く「命令2()」があり命令1の
前に追加修正を行うと、図4(B)のようになる。この
図4(B)は修正挿入後の各エリアの状態で、まず命令
1のあったアドレスに「追加プログラムへ処理を移す命
令()」が挿入され、制御がパッチエリアの管理テー
ブル内にある「追加プログラム()」に移る。そし
て、追加プログラム実行後、「命令1()」が実行さ
れ、その後プログラムエリアにある「追加プログラムへ
処理を移す命令」を行った直後のアドレスに戻す「処理
を元に戻す命令()」を実行する。そして本来の流れ
である「命令2()」に制御が移る。
FIG. 3 shows a program before correction, which is divided into a program area and a patch area (management table). Figure 4 (A) shows "Instruction 1" in the program area.
()) Followed by "instruction 2 ()", and if additional correction is performed before instruction 1, the result is as shown in FIG. 4 (B). FIG. 4B shows the state of each area after the correction insertion. First, the "instruction () for moving the processing to the additional program" is inserted at the address where the instruction 1 exists, and the control is in the patch area management table. Move to "Additional program ()". Then, after executing the additional program, the "instruction 1 ()" is executed, and then the "instruction to return the processing ()" is returned to the address immediately after the "instruction to move the processing to the additional program" in the program area is executed. Run. Then, the control shifts to the "instruction 2 ()" which is the original flow.

【0012】[0012]

【発明の効果】以上説明したように本発明は、パッチに
よる実行形式のプログラムの追加修正を自動化するよう
にしたので、プログラムの簡単な修正が短時間で行える
ようになり、開発効率が大幅に向上し、また、今までの
修正過程とは異なり、複雑な計算や知識はそれほどいら
ないという効果を有する。また、アドレス管理はいまま
でプログラマが行ってきたが、それが自動化され、さら
に機能の拡張が見込めるという効果があり、かつパッチ
の「二重登録」のミスが防げるという効果がある。
As described above, according to the present invention, the additional correction of the executable program by the patch is automated, so that the simple correction of the program can be performed in a short time, and the development efficiency can be greatly improved. It has the effect of improving and, unlike the conventional correction process, does not require much complicated calculation and knowledge. Also, although address management has been performed by programmers so far, it has the effect that it can be automated and the functions can be expected to be further expanded, and mistakes in "double registration" of patches can be prevented.

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

【図1】本発明の一実施例を示すブロック図である。FIG. 1 is a block diagram showing an embodiment of the present invention.

【図2】図1の動作説明に供するパッチ処理手順のフロ
ーチャートである。
FIG. 2 is a flowchart of a patch processing procedure used to explain the operation of FIG.

【図3】図1の動作説明に供するメモリ内におけるプロ
グラムのエリア構成図である。
FIG. 3 is an area configuration diagram of a program in a memory used for explaining the operation of FIG.

【図4】図1の動作説明に供するパッチ修正前と修正後
のパッチ挿入場所を指示したプログラムのエリア構成図
である。
FIG. 4 is an area configuration diagram of a program for instructing the patch insertion location before and after patch correction, which is used for the operation description of FIG.

【図5】図1の動作説明に供するパッチ修正前と修正後
のパッチ挿入場所にあるプログラムを示す説明図であ
る。
FIG. 5 is an explanatory diagram showing a program at a patch insertion position before and after patch correction, which is used for explaining the operation of FIG. 1;

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

11 入力手段 12 表示手段 13 解釈とパッチ実施プログラム 14 プログラム 15 プログラムエリア 16 パッチエリア 17 修正パッチ管理テーブル 18 追加パッチ保存エリア 101〜105 ステップ 11 Input Means 12 Display Means 13 Interpretation and Patch Implementation Program 14 Programs 15 Program Areas 16 Patch Areas 17 Modified Patch Management Tables 18 Additional Patch Storage Areas 101-105 Steps

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 キーボードからのコマンドおよびパッチ
データを入力する入力手段と、この入力手段により入力
されたコマンドやパッチデータをCRTディスプレイに
表示・確認する表示手段を具備した入出力装置におい
て、前記入力手段により入力されたコマンドおよびパッ
チデータが正常であるかどうかチェックを行い、異常で
あれば終了し、正常であれば入力データを解釈するステ
ップと、前記入力データが対象としているプログラムに
対してプログラムに予め用意されているパッチエリアに
存在する管理テーブルを管理することによりパッチデー
タを追加修正箇所に挿入を行い、その挿入されたパッチ
データを論理的に結合させて、整合性を持たせてから修
正プログラムに連結させた後、その整合性を持ったパッ
チデータをパッチエリア内の管理テーブルに出力するス
テップを持つことを特徴とするプログラム自動追加修正
方式。
1. An input / output device comprising input means for inputting commands and patch data from a keyboard and display means for displaying / confirming command / patch data input by the input means on a CRT display. Check whether the command and patch data input by the means are normal, terminate if abnormal, interpret the input data if normal, and program for the program targeted by the input data By managing the management table that exists in the patch area prepared in advance, the patch data is added to the correction points, and the inserted patch data is logically combined to ensure consistency. After linking to the patch program, patch data with that consistency is (A) An automatic program addition / correction method characterized by having a step of outputting to a management table inside.
JP7584292A 1992-02-28 1992-02-28 Automatic program addition correction system Pending JPH05241813A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7584292A JPH05241813A (en) 1992-02-28 1992-02-28 Automatic program addition correction system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7584292A JPH05241813A (en) 1992-02-28 1992-02-28 Automatic program addition correction system

Publications (1)

Publication Number Publication Date
JPH05241813A true JPH05241813A (en) 1993-09-21

Family

ID=13587864

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7584292A Pending JPH05241813A (en) 1992-02-28 1992-02-28 Automatic program addition correction system

Country Status (1)

Country Link
JP (1) JPH05241813A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6948164B2 (en) 1998-12-14 2005-09-20 Metrowerks Corporation Method and system for modifying executable code to add additional functionality

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6948164B2 (en) 1998-12-14 2005-09-20 Metrowerks Corporation Method and system for modifying executable code to add additional functionality

Similar Documents

Publication Publication Date Title
EP2098954A1 (en) Systems and methods for template reverse engineering
US5511167A (en) Program processing method and apparatus for producing a data flow type program
JPH05241813A (en) Automatic program addition correction system
JP3196675B2 (en) Language processing method
JP2000112737A (en) Program generating device
JP2000284815A (en) Program generating device
JPH03241439A (en) Test data preparation tool
JP4387288B2 (en) Display device for control, editor device, program, and recording medium
JP2982490B2 (en) SFC programming method
JP2000132295A (en) Gui operation specification describing device, and gui controller and gui system
JP2001265572A (en) Device and method for managing source program, and recording medium with its program recorded thereon
JP3368795B2 (en) Compilation control method, compilation device, and recording medium
JPH052477A (en) Graphical user interface preparing system
JPH0319041A (en) Automatic control system for control item
JPH07160536A (en) Program test supporting device for interactive system
JPH0887416A (en) Control program generating device
JPS62281031A (en) Editing system for equipment updating system
JPS60167042A (en) Program editing device
JPH05324290A (en) System for preparing graphical user interface
JP2000131194A (en) Vehicle diagnostic program generating apparatus and vehicle diagnostic apparatus
JPH0764614A (en) Program control device and method and program producing device
JPH1049358A (en) Device and method for automatically generating altered program
JPH0651973A (en) Error correction method for sequence program
JPH06110750A (en) Automatic generating method for make-file of application program capable of accessing related data base
JPH0496106A (en) Ladder program editing system