JPH0969042A - Automatic patch data creation method - Google Patents

Automatic patch data creation method

Info

Publication number
JPH0969042A
JPH0969042A JP7246663A JP24666395A JPH0969042A JP H0969042 A JPH0969042 A JP H0969042A JP 7246663 A JP7246663 A JP 7246663A JP 24666395 A JP24666395 A JP 24666395A JP H0969042 A JPH0969042 A JP H0969042A
Authority
JP
Japan
Prior art keywords
patch
record
program
data
management information
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
JP7246663A
Other languages
Japanese (ja)
Inventor
Toshimichi Kojima
利道 小島
Yoshimitsu Takiguchi
好光 滝口
Yoshihiro Kaya
良洋 嘉屋
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7246663A priority Critical patent/JPH0969042A/en
Publication of JPH0969042A publication Critical patent/JPH0969042A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 修正前のオブジェクトと修正後のオブジェク
トの組からなるパッチデータを一つのソースプログラム
から自動作成する。 【構成】 オリジナルソースと、パッチステートメント
及びパッチ管理情報を含むパッチコーディングとからな
るプログラムソースをコンパイルし、オブジェクトプロ
グラムと、パッチ管理情報及びパッチオブジェクトを含
むパッチレコードとを生成し、オブジェクトプログラム
及びパッチレコードに基づき、指定パッチバージョンに
合致するパッチ管理情報及びパッチオブジェクトからな
るNEWテーブルと、指定パッチバージョンより古いプ
ログラムオブジェクト及びパッチオブジェクトからなる
OLDテーブルを作成し、OLDテーブルとNEWテー
ブルの対応するアドレス毎にオブジェクトの組を作成
し、作成したオブジェクトの組とNEWテーブルのパッ
チ管理情報を組み合わせてパッチデータを作成する。
(57) [Summary] [Purpose] Automatically create patch data consisting of a set of objects before and after modification from a single source program. [Structure] A program source consisting of an original source and patch coding including patch statements and patch management information is compiled to generate an object program and a patch record including patch management information and a patch object, and the object program and patch record are generated. On the basis of the above, a NEW table consisting of patch management information and patch objects matching the designated patch version and an OLD table consisting of program objects and patch objects older than the designated patch version are created and A set of objects is created, and the created set of objects and the patch management information in the NEW table are combined to create patch data.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、ソフトウエアに対する
パッチ(緊急修正)デ−タを作成するパッチデ−タの作
成方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a patch data creating system for creating patch (urgent correction) data for software.

【0002】[0002]

【従来の技術】従来、パッチデ−タの自動作成は、特開
平1−201727等に示すように、ソ−スコ−ドレベ
ルで修正を行なった修正後のデ−タファイルと修正前の
デ−タファイルとを比較し、不一致部分を抽出し自動的
にパッチデ−タを作成している。
2. Description of the Related Art Conventionally, as shown in Japanese Patent Laid-Open No. 1-201727, the automatic creation of patch data includes a modified data file which is modified at the source level and a unmodified data file. Are compared with each other, the mismatched portions are extracted, and the patch data is automatically created.

【0003】[0003]

【発明が解決しようとする課題】上記従来方式では、以
下の問題があった。 (1)パッチデ−タの作成に際し修正前と修正後の二つ
のファイルが必要になり、処理が煩雑となる。 (2)一度のパッチデ−タの作成後、同一ソ−スファイ
ルについて別のパッチデ−タを追加する場合は、上記
(1)の二つのファイルの内、どちらに追加するかの管
理が煩雑になり、作業ミスなどが発生する場合があっ
た。 本発明の目的は、修正前のオブジェクトと修正後のオブ
ジェクトの組からなるパッチデータを一つのソースプロ
グラムから自動作成することにある。
The above-mentioned conventional method has the following problems. (1) When creating patch data, two files, one before and one after modification, are required, which complicates the process. (2) When creating different patch data for the same source file after creating patch data once, it is complicated to manage which of the two files in (1) above is added. There was a case that work mistakes occurred. An object of the present invention is to automatically create patch data consisting of a set of an object before modification and an object after modification from one source program.

【0004】[0004]

【課題を解決するための手段】前記目的を達成するため
に、本発明は、1以上のオリジナルソースと、1以上の
パッチステートメント及びパッチ管理情報を含むパッチ
コーディングとからなるプログラムソースからパッチデ
ータを作成するパッチデータ自動作成方式であり、前記
プログラムソースからデータレコードと、オブジェクト
プログラムレコードと、パッチ管理情報レコード及びパ
ッチオブジェクトを含む1以上のパッチステートメント
レコードからなるパッチレコードとを生成する手段と、
該生成したオブジェクトプログラムレコード及びパッチ
レコードに基づき、指定されたパッチバージョンに合致
するパッチ管理情報及びパッチオブジェクトからなるN
EWテーブルと、指定されたパッチバージョンより古い
プログラムオブジェクト及びパッチオブジェクトからな
るOLDテーブルを作成する手段と、前記NEWテーブ
ルとOLDテーブルに基づき、前記OLDテーブルとN
EWテーブルの対応するアドレス毎にオブジェクトの組
を作成し、該作成したオブジェクトの組とNEWテーブ
ルのパッチ管理情報を組み合わせてパッチデータを作成
する手段を備えるようにしている。
To achieve the above object, the present invention provides patch data from a program source consisting of one or more original sources and patch coding including one or more patch statements and patch management information. A patch data automatic creation method for creating, which generates a data record from the program source, an object program record, and a patch record including one or more patch statement records including a patch management information record and a patch object,
N consisting of patch management information and patch objects that match the specified patch version based on the generated object program record and patch record
An EW table, a means for creating an OLD table composed of program objects and patch objects older than a specified patch version, and the OLD table and N based on the NEW table and OLD table.
There is provided means for creating a set of objects for each corresponding address in the EW table, and creating patch data by combining the created set of objects with the patch management information in the NEW table.

【0005】[0005]

【作用】上記手段により、ソ−スレベルで記述したパッ
チコ−ディングを、オリジナルソ−スと共に一つのソ−
スファイルに蓄積しておき、パッチデータを必要とする
とき、このソースファイルの内容からオブジェクトを生
成し、このオブジェクトに基づき自動的にパッチデータ
を作成することができ、パッチデータ作成における処理
の煩雑さ、データ管理の煩雑さを回避でき、作業ミスの
発生を防止できる。
By the above means, the patch coding described at the source level is combined with the original source into one source.
When the patch data is stored in a patch file and the patch data is needed, an object can be created from the contents of this source file and the patch data can be created automatically based on this object. In addition, the complexity of data management can be avoided and the occurrence of work mistakes can be prevented.

【0006】[0006]

【実施例】図1は、本発明の実施例の概略構成を示すブ
ロック図である。ソ−スファイル(101)には、図2
に示すソ−スレベルでコ−ディングしたパッチステ−ト
メントを含むプログラムソ−ス(201)が格納されて
いる。ソ−スファイル(101)内のプログラムソ−ス
(201)はコンパイラ(102)によりコンパイルさ
れ、図3及び図4で示す形式のオブジェクトとして出力
され、オブジェクトファイル(103)に格納される。
パッチ自動作成プログラム(104)は、オブジェクト
ファイル(103)からオブジェクトを入力し、パッチ
デ−タファイル(105)を作成する。
1 is a block diagram showing a schematic configuration of an embodiment of the present invention. The source file (101) is shown in FIG.
The program source (201) including the patch statement coded at the source level is stored. The program source (201) in the source file (101) is compiled by the compiler (102), output as an object in the format shown in FIGS. 3 and 4, and stored in the object file (103).
The patch automatic creation program (104) inputs an object from the object file (103) and creates a patch data file (105).

【0007】また、別に、オブジェクトファイル(10
3)を、コンパイラのメモリに確保するようにし、パッ
チ自動作成プログラム(104)をコンパイラの一機能
の型にして実現することも可能である。
In addition, separately, the object file (10
It is also possible to secure 3) in the memory of the compiler and implement the patch automatic creation program (104) as a type of one function of the compiler.

【0008】図2は、パッチステ−トメントを含むプロ
グラムソ−スの構成例である。パッチステ−トメントを
含むプログラムソ−ス(201)は、オリジナルソ−ス
#1(202),オリジナルソ−ス#2(204),オ
リジナルソ−ス#3(206)と、パッチステ−トメン
ト#4を含むパッチコ−ディング(207)とパッチス
テ−トメント#5を含むパッチコ−ディング(208)
とを追加し、パッチアドレス211を対応付けるラベル
(203)と(205)をオリジナルソ−ス中のパッチ
位置に挿入する。これにより、コンパイラ(102)
は、パッチレコ−ド(421)(図4)を作成する際、
オリジナルソ−ス#2(204)の先頭部分に相当する
アドレスを該パッチレコ−ド(421)のアドレス42
4とし、パッチコーディング(207)のパッチステ−
トメント#4のオブジェクトの長さだけパッチレコ−ド
(421)を作成する。同様に、パッチレコ−ド(42
1)(図4)を作成する際、オリジナルソ−ス#3(2
06)の先頭部分に相当するアドレスを該パッチレコ−
ド(421)のアドレス424とし、パッチコーディン
グ(208)のパッチステ−トメント#4のオブジェク
トの長さだけパッチレコ−ド(421)を作成する。パ
ッチコ−ディング(207)は、パッチアドレス(21
1)とパッチ管理情報(212)とを定義できるSTA
PTCH(210)のコンパイラ制御命令と、一つまた
は複数の連続した命令語で構成されるパッチステ−トメ
ント(213)と一組のパッチの終了を示すコンパイラ
制御命令のENDPTCH(214)で構成する。パッ
チコ−ディング(208)についても同様である。な
お、パッチ管理情報(212)は、パッチ番号、パッチ
バージョン、オブジェクトのバージョン、レビジョン、
作成者、作成日、パッチする理由等からなる。
FIG. 2 shows an example of the structure of a program source including a patch statement. The program source (201) including the patch statement includes the original source # 1 (202), the original source # 2 (204), the original source # 3 (206), and the patch statement # 4. Including the patch coding (207) and the patch coding including the patch statement # 5 (208)
Are added, and labels (203) and (205) that associate the patch address 211 with each other are inserted at the patch positions in the original source. This allows the compiler (102)
When creating the patch record (421) (Fig. 4),
The address corresponding to the beginning of the original source # 2 (204) is set to the address 42 of the patch record (421).
4 and the patch station of patch coding (207)
A patch record (421) is created for the length of the object of the statement # 4. Similarly, the patch record (42
1) (Fig. 4), the original source # 3 (2
06), the address corresponding to the beginning part of the patch record
The address 424 of the patch (421) is set, and the patch record (421) is created by the length of the object of the patch statement # 4 of the patch coding (208). The patch coding (207) has a patch address (21
STA that can define 1) and patch management information (212)
A PTCH (210) compiler control instruction, a patch statement (213) composed of one or a plurality of consecutive instruction words, and a compiler control instruction ENDPTCH (214) indicating the end of a set of patches. The same applies to the patch coding (208). The patch management information (212) includes the patch number, patch version, object version, revision,
It consists of creator, creation date, reason for patching, etc.

【0009】図3は、パッチレコ−ドを含んだオブジェ
クトファイルの構成例である。オブジェクトファイル
は、一つまたは複数のデ−タレコ−ド(301)と、一
つまたは複数のプログラムレコ−ド(302)と、一つ
または複数のパッチレコ−ド(303)とで構成され
る。プログラムレコード#1,#2,#3はオリジナル
ソース#1(202),#2(204),#3(20
6)にそれぞれ対応し、パッチレコード#4,#5はパ
ッチコーディング(207),(208)にそれぞれ対
応する。なお、これらのレコ−ドの順序は、順不同でも
よい。
FIG. 3 shows an example of the structure of an object file including a patch record. The object file is composed of one or more data records (301), one or more program records (302), and one or more patch records (303). Program records # 1, # 2 and # 3 are original sources # 1 (202), # 2 (204) and # 3 (20
6), and patch records # 4 and # 5 correspond to patch coding (207) and (208), respectively. The order of these records may be in any order.

【0010】図4は、プログラムレコ−ド(302)と
パッチレコ−ド(303)のレコ−ドフォ−マット例で
ある。プログラムレコ−ドのレコ−ドフォ−マットは、
401で示し、内部にレコ−ドヘッダ(402),長さ
(403),アドレス(404),プログラムオブジェ
クト(405)を含む。パッチレコ−ドのレコ−ドフォ
−マットは、パッチ管理情報を含むパッチ管理情報レコ
−ド(411)とパッチオブジェクトを含むパッチステ
−トメントレコ−ド(421)の二種類である。パッチ
管理情報レコ−ド(411)が最初に配列され、その後
に、該パッチ管理情報レコ−ド(411)に係る1以上
のパッチステ−トメントレコ−ド(421)が配置され
る。パッチ管理情報レコ−ド(411)は、レコ−ドヘ
ッダ(412)とパッチ管理情報(414)と該パッチ
管理情報に対応するパッチステ−トメントレコ−ドの範
囲を決めるパッチステ−トメントレコ−ド数(413)
とを含む。パッチステ−トメントレコ−ド(421)
は、レコ−ドヘッダ(422),長さ(423),アド
レス(424)とパッチオブジェクト(425)とを含
む。これらのレコ−ドは、コンパイラ(102)で作成
される。
FIG. 4 shows an example of the record format of the program record (302) and the patch record (303). The program format record format is
Reference numeral 401 indicates a record header (402), a length (403), an address (404), and a program object (405). There are two types of patch record record formats: a patch management information record (411) containing patch management information and a patch statement record (421) containing patch objects. The patch management information record (411) is arranged first, and then one or more patch statement records (421) related to the patch management information record (411) are arranged. The patch management information record (411) includes a record header (412), patch management information (414), and a patch statement record number (413) that determines the range of patch statement records corresponding to the patch management information.
And Patch statement record (421)
Contains a record header (422), length (423), address (424) and patch object (425). These records are created by the compiler (102).

【0011】図5は、パッチ自動作成プログラム(10
4)が備えるべきテ−ブル例である。パッチ自動作成プ
ログラム(104)により作成されるパッチデ−タは、
パッチアドレスとパッチオブジェクトとパッチ前オブジ
ェクトとが必要である。パッチデ−タ作成用に、NEW
テ−ブル(501)とOLDテ−ブル(551)の二つ
が必要である。図5(a)に示すNEWテ−ブル(50
1)は、パッチ管理情報(510)とパッチエントリ
(520),(521)……とを含み、一つのパッチエ
ントリ(521)は、パッチアドレス(531),長さ
(532),パッチオブジェクト(533)とで構成さ
れている。図5(b)に示すOLDテ−ブル(551)
は、パッチを加える前のステ−トメントエントリ(56
1),(562)……を含み、一つのエントリはアドレ
ス(571),長さ(572),パッチを加える前のオ
ブジェクト(573)で構成される。
FIG. 5 shows an automatic patch creation program (10
It is an example of a table that 4) should have. The patch data created by the automatic patch creation program (104) is
A patch address, a patch object and a pre-patch object are needed. NEW for creating patch data
The table (501) and the OLD table (551) are required. The NEW table (50 shown in FIG.
1) includes patch management information (510) and patch entries (520), (521) ..., One patch entry (521) includes a patch address (531), a length (532), a patch object ( 533). The OLD table (551) shown in FIG. 5 (b).
Is the statement entry (56
1), (562) ..., One entry is composed of an address (571), a length (572), and an object (573) before applying a patch.

【0012】図6、図7、図8は、パッチ自動作成のた
めの一実施例であるパッチ自動作成プログラム(10
4)が備える処理の例である。図6は、オブジェクトフ
ァイル(103)のパッチレコ−ド(303)から、指
定されたパッチバ−ジョンのパッチオブジェクトデ−タ
を、NEWテ−ブル(501)に登録する処理のフロー
チャートである。最初にSW(スイッチ)を0にセット
する(ステップ601)。次に、オブジェクトファイル
のレコ−ドを1レコ−ド読む(ステップ602)。デ−
タの終了(EOF)ならば終了し、そうでなければ、ス
テップ604に進む(ステップ602)。次いで、レコ
−ドヘッダを参照してパッチステ−トメントレコ−ドか
判定する(ステップ604)。判定がNOならば、パッ
チ管理情報レコ−ドか判定する(ステップ607)。判
定がNOならば、ステップ602に戻り、YESなら
ば、外部より指定されたパッチバージョンと一致するか
否か判定する(ステップ608)。判定がNOならば、
SWを0にセットし(ステップ610)、ステップ60
2に戻り、YESならば、SWを1にセットし(ステッ
プ609)、NEWテーブルにパッチ管理情報を登録し
(ステップ611)、ステップ602に戻る。上記のス
テップ604の判定がYESならば、SW=1であるか
判定し(ステップ605)、判定がNOならば、ステッ
プ602に戻り、YESならば、NEWテーブルに、ア
ドレス,長さ,オブジェクトを登録し(ステップ60
6)、ステップ602に戻る。
FIGS. 6, 7, and 8 show a patch automatic creation program (10) which is an embodiment for automatic patch creation.
It is an example of processing included in 4). FIG. 6 is a flowchart of a process of registering the patch object data of the specified patch version from the patch record (303) of the object file (103) in the NEW table (501). First, the SW (switch) is set to 0 (step 601). Next, one record of the object file is read (step 602). De-
If it is the end of the data (EOF), the process ends, and if not, the process proceeds to step 604 (step 602). Next, the record header is referenced to determine whether it is a patch statement record (step 604). If the judgment is NO, it is judged whether it is a patch management information record (step 607). If the determination is NO, the process returns to step 602, and if the determination is YES, it is determined whether the patch version specified from the outside matches (step 608). If the determination is NO,
SW is set to 0 (step 610) and step 60
Returning to step 2, if YES, SW is set to 1 (step 609), the patch management information is registered in the NEW table (step 611), and the procedure returns to step 602. If the determination in step 604 is YES, it is determined whether SW = 1 (step 605). If the determination is NO, the process returns to step 602, and if YES, the address, length, and object are stored in the NEW table. Register (Step 60
6) and returns to step 602.

【0013】図7は、オブジェクトファイル(103)
のプログラムレコ−ド(302)とパッチレコ−ド(3
03)から、該当バ−ジョンのパッチが割り当てられる
前のオブジェクトデ−タを、OLDテ−ブル(551)
に登録する処理のフローチャートである。ここでは、プ
ログラムレコ−ド、パッチバ−ジョンの古いパッチレコ
−ド、の順にオブジェクトデ−タが読み込まれる事とす
る。最初に、オブジェクトファイルのレコ−ドを1レコ
−ド読む(ステップ701)。デ−タの終了(EOF)
であるか判定し(ステップ702)、判定がYESなら
ば終了し、NOならば、レコ−ドヘッダを参照してパッ
チステ−トメントレコ−ドか判定する(ステップ70
3)。次いで、ステップ703における判定がNOなら
ば、パッチ管理レコードか判定する(ステップ70
5)。ステップ705における判定がYESならば、パ
ッチバージョンを保管し(ステップ706)、ステップ
701に戻る。ステップ705における判定がNOなら
ば、プログラムレコードであるか判定する(ステップ7
07)。ステップ707における判定がNOならばステ
ップ701に戻り、判定がYESならばステップ709
に進む。
FIG. 7 shows the object file (103).
Program record (302) and patch record (3)
03), the object data before the patch of the corresponding version is assigned is stored in the OLD table (551).
5 is a flowchart of a process of registering with. Here, it is assumed that the object data is read in the order of the program record and the patch record with the oldest patch version. First, one record of the object file is read (step 701). End of data (EOF)
If the determination is YES, the process ends. If the determination is NO, the record header is referenced to determine whether it is a patch statement record (step 70).
3). Next, if the determination in step 703 is no, it is determined whether it is a patch management record (step 70).
5). If the determination in step 705 is yes, the patch version is stored (step 706) and the process returns to step 701. If the determination in step 705 is no, it is determined whether it is a program record (step 7
07). If the judgment in step 707 is NO, the process returns to step 701, and if the judgment is YES, step 709.
Proceed to.

【0014】次に、上記のステップ703における判定
がYESであり、パッチステ−トメントレコ−ドである
場合には、上記のステップ706で保管されているパッ
チバージョンが外部より指定されたパッチバージョンと
一致するか判定する(ステップ704)。ステップ70
4における判定がYESならばステップ701に戻り、
判定がNOならば保管されているパッチバージョンが外
部より指定されたパッチバージョンより新しいか判定す
る(ステップ708)。ステップ708における判定が
YESであり、新しい場合にはステップ701に戻り、
判定がNOであれば、ステップ709に進む 次に、ステップ709では、NEWテーブルのデータと
アドレスがオーバーラップしているか判定し、判定がN
Oならばステップ701に戻り、判定がYESならば、
OLDテーブルにオーバーラップしたアドレスが登録さ
れているか判定する(ステップ710)。ステップ71
0における判定がNOならば、アドレスがオーバーラッ
プしたオブジェクト部分のみ取り出し、OLDテーブル
に登録し(ステップ711)、ステップ701に戻る。
ステップ710における判定がYESならば、OLDテ
ーブルの既登録エントリに、アドレスがオーバーラップ
したオブジェクト部分を上書き登録し(712)、ステ
ップ701に戻る。
Next, if the determination in step 703 is YES and the patch statement record is found, the patch version stored in step 706 matches the patch version designated from the outside. It is determined (step 704). Step 70
If the determination in 4 is YES, the process returns to step 701,
If the determination is NO, it is determined whether the stored patch version is newer than the externally designated patch version (step 708). If the determination in step 708 is YES, and if new, return to step 701,
If the determination is NO, the process proceeds to step 709. Next, in step 709, it is determined whether the data in the NEW table and the address overlap, and the determination is N.
If O, the process returns to step 701, and if the determination is YES,
It is determined whether overlapping addresses are registered in the OLD table (step 710). Step 71
If the determination in 0 is NO, only the object portion where the addresses overlap is taken out, registered in the OLD table (step 711), and the process returns to step 701.
If the determination in step 710 is YES, the object portion whose address overlaps is registered in the already registered entry of the OLD table by overwriting (712), and the process returns to step 701.

【0015】図8は、NEWテ−ブル(501)とOL
Dテ−ブル(551)とから、パッチデ−タファイル
(105)を作成する処理である。NEWテ−ブルのパ
ッチ管理情報をパッチデ−タフォ−マットに変換し、パ
ッチデ−タファイル(105)に管理情報レコードとし
て出力する(801)。次に、OLDテ−ブル(50
1)とNEWテ−ブル(551)の対応するアドレス毎
にパッチデ−タの組を作成し、パッチデ−タフォ−マッ
トに変換しパッチデ−タファイル(105)に出力する
(802)。
FIG. 8 shows a NEW table (501) and an OL.
This is a process of creating a patch data file (105) from the D table (551). The patch management information of the NEW table is converted into a patch data format and output as a management information record to the patch data file (105) (801). Next, the OLD table (50
1) and a NEW table (551) corresponding patch data sets are created for each address, converted into a patch data format and output to a patch data file (105) (802).

【0016】図9は、パッチデータファイルの例を示
す。パッチデータファイル901は、管理情報レコード
902と1以上のパッチデ−タの組レコード903を格
納する。管理情報レコード902は、レコードID91
1と管理情報912からなる。パッチデ−タの組レコー
ド903は、レコードID913、アドレス914、O
LDテーブルから抽出したオブジェクト915、そして
NEWテーブルから抽出したオブジェクト916からな
る。
FIG. 9 shows an example of a patch data file. The patch data file 901 stores a management information record 902 and a set record 903 of one or more patch data. The management information record 902 has a record ID 91.
1 and management information 912. The patch data set record 903 includes a record ID 913, an address 914, and O.
It consists of an object 915 extracted from the LD table and an object 916 extracted from the NEW table.

【0017】[0017]

【発明の効果】本発明によれば、ソ−スレベルで記述し
たパッチコ−ディングを、オリジナルソ−スをもととす
る一つのソ−スファイルに蓄積し、ソ−スファイルの内
容を用いて容易にパッチデ−タの自動作成をすることが
できる。また、パッチデータ作成における処理の煩雑
さ、データ管理の煩雑さを回避でき、作業ミスの発生を
防止できる。
According to the present invention, the patch coding described at the source level is stored in one source file based on the original source and the contents of the source file are used. The patch data can be easily created automatically. Further, it is possible to avoid the complexity of the processing in creating the patch data and the complexity of the data management, and it is possible to prevent the occurrence of a work error.

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

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

【図2】パッチステ−トメントを含むプログラムソ−ス
の構成例を示す図である。
FIG. 2 is a diagram showing a configuration example of a program source including a patch statement.

【図3】パッチレコ−ドを含んだオブジェクトファイル
の構成例を示す図である。
FIG. 3 is a diagram showing a configuration example of an object file including a patch record.

【図4】プログラムレコ−ドとパッチレコ−ドのレコ−
ドフォ−マット例を示す図である。
FIG. 4 Record of program record and patch record
It is a figure which shows the example of a format.

【図5】パッチ自動作成プログラムが備えるテ−ブル例
を示す図である。
FIG. 5 is a diagram showing an example of a table included in a patch automatic creation program.

【図6】オブジェクトファイルのパッチレコ−ドから指
定されたパッチバ−ジョンのオブジェクトデ−タをNE
Wテ−ブルに登録する処理のフローチャートである。
FIG. 6 shows NE of the object data of the patch version specified from the patch record of the object file.
9 is a flowchart of a process of registering in a W table.

【図7】オブジェクトファイルのプログラムレコ−ドと
パッチレコ−ドから、該当バ−ジョンのパッチが割り当
てられる前のオブジェクトデ−タを、OLDテ−ブルに
登録する処理のフローチャートである。
FIG. 7 is a flowchart of a process for registering object data before a patch of a corresponding version is assigned to an OLD table from a program record and a patch record of an object file.

【図8】NEWテ−ブルとOLDテ−ブルとからパッチ
デ−タファイルを作成する処理のフローチャートであ
る。
FIG. 8 is a flow chart of a process for creating a patch data file from a NEW table and an OLD table.

【図9】パッチデ−タファイルの一例を示す図である。FIG. 9 is a diagram showing an example of a patch data file.

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

101 ソ−スファイル 102 コンパイラ 103 オブジェクトファイル 104 パッチ自動作成プログラム 105 パッチデ−タファイル 201 パッチステ−トメントを含むソ−スプログラム 202、204、206 オリジナルソース 203、205 LABEL 207、208 パッチコ−ディング 210、214 コンパイラ制御命令 213 パッチステ−トメント 101 Source File 102 Compiler 103 Object File 104 Patch Automatic Creation Program 105 Patch Data File 201 Source Program Including Patch Statement 202, 204, 206 Original Source 203, 205 LABEL 207, 208 Patch Coding 210, 214 Compiler Control command 213 patch statement

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 1以上のオリジナルソースと、1以上の
パッチステートメント及びパッチ管理情報を含むパッチ
コーディングとからなるプログラムソースからパッチデ
ータを作成するパッチデータ自動作成方式であって、 前記プログラムソースからデータレコードと、オブジェ
クトプログラムレコードと、パッチ管理情報レコード及
びパッチオブジェクトを含む1以上のパッチステートメ
ントレコードからなるパッチレコードとを生成する手段
と、 該生成したオブジェクトプログラムレコード及びパッチ
レコードに基づき、指定されたパッチバージョンに合致
するパッチ管理情報及びパッチオブジェクトからなるN
EWテーブルと、指定されたパッチバージョンより古い
プログラムオブジェクト及びパッチオブジェクトからな
るOLDテーブルを作成する手段と、 前記NEWテーブルとOLDテーブルに基づき、前記O
LDテーブルとNEWテーブルの対応するアドレス毎に
オブジェクトの組を作成し、該作成したオブジェクトの
組とNEWテーブルのパッチ管理情報を組み合わせてパ
ッチデータを作成する手段を備えることを特徴とするパ
ッチデータ自動作成方式。
1. An automatic patch data creation method for creating patch data from a program source consisting of one or more original sources and patch coding including one or more patch statements and patch management information, wherein data from the program sources is used. Means for generating a record, an object program record, and a patch record consisting of one or more patch statement records including a patch management information record and a patch object, and a patch specified based on the generated object program record and patch record N consisting of patch management information and patch objects matching the version
An EW table, a means for creating an OLD table consisting of program objects and patch objects older than a specified patch version, and the OW table based on the NEW table and the OLD table.
Automatic patch data characterized by means for creating a set of objects for each corresponding address of the LD table and the NEW table, and creating patch data by combining the created set of objects and the patch management information of the NEW table Creation method.
JP7246663A 1995-08-31 1995-08-31 Automatic patch data creation method Pending JPH0969042A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7246663A JPH0969042A (en) 1995-08-31 1995-08-31 Automatic patch data creation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7246663A JPH0969042A (en) 1995-08-31 1995-08-31 Automatic patch data creation method

Publications (1)

Publication Number Publication Date
JPH0969042A true JPH0969042A (en) 1997-03-11

Family

ID=17151769

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7246663A Pending JPH0969042A (en) 1995-08-31 1995-08-31 Automatic patch data creation method

Country Status (1)

Country Link
JP (1) JPH0969042A (en)

Similar Documents

Publication Publication Date Title
US5623661A (en) System for and method of providing delta-versioning of the contents of PCTE file objects
US20020087956A1 (en) System and method for linear processing of software modules
JPH0969042A (en) Automatic patch data creation method
JPH08221417A (en) Old and new editing device for structured documents
US7222128B2 (en) Method for updating and preserving data when performing a software upgrade
US20040205666A1 (en) System and method for anticipated file editing
JP2859501B2 (en) Construction design support system
JPH06314194A (en) Patch system
JP2001060240A (en) Format correction method and data conversion method
JPH05197561A (en) Compilation system
JPH06242933A (en) Program document maintenance device
JPH0561666A (en) Source program forming device
JPS6333190B2 (en)
JP2647044B2 (en) History management method
JPH11327887A (en) Compiler system with automatic parts converting function and recording medium
JPH05210575A (en) Comparing method for transaction file
JPH11143865A (en) System and method for html document generation for www-oltp cooperation system
JPS6398029A (en) Application system for automatic patch selection
CN116009832A (en) Method for generating software architecture code based on Excel file
JP2669128B2 (en) Language processing system
JPH0713752A (en) Control method/device for program revision
JPH0816382A (en) Erroneously corrected line retrieving device
JPH01316823A (en) Operating system correcting system
JPH07175643A (en) Software development support device capable of linked editing of software design documents and source programs
JPH03156641A (en) Compiling process system