JPH02242332A - プログラムのパッチ作成装置 - Google Patents

プログラムのパッチ作成装置

Info

Publication number
JPH02242332A
JPH02242332A JP1064672A JP6467289A JPH02242332A JP H02242332 A JPH02242332 A JP H02242332A JP 1064672 A JP1064672 A JP 1064672A JP 6467289 A JP6467289 A JP 6467289A JP H02242332 A JPH02242332 A JP H02242332A
Authority
JP
Japan
Prior art keywords
source
list
changed part
path
report file
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
JP1064672A
Other languages
English (en)
Inventor
Koji Fukuda
福田 光司
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP1064672A priority Critical patent/JPH02242332A/ja
Publication of JPH02242332A publication Critical patent/JPH02242332A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はソフトウェアの保守に利用する。本発明は高水
準言語によって作成されたプログラムに対するパッチ作
成に関する。
〔概要〕
本発明は高水準言語によって作成されたプログラムのパ
ッチ作成において、 ソース修正した結果の翻訳リストから自動的にパッチを
生成することにより、 ハードウェアの知識がなくてもパッチを作成することが
でき、かつパッチ作成ミスをなくすようにしたものであ
る。
〔従来の技術〕
従来、この種のパッチ作成は高水準言語のプロセッサの
出力したソースリスト、テ゛−タマップリスト、オブジ
ェクトリスト、およびリンカの出力したリンクリストと
から人間が機械語によって直接コーディングしていた。
〔発明が解決しようとする問題点〕
上述した従来のパッチ作成は人間が直接機械語でコーデ
ィングするためハードウェアの知識が必要であり、かつ
作成ミスが多い欠点がある。
本発明はこのような欠点を除去するもので、ハードウェ
アの知識がなくてもパッチを作成することができ、パッ
チ作成ミスをなくすことができる装置を提供することを
目的とする。
〔問題点を解決するための手段〕
本発明は、高水準言語によって作成されたプログラムの
パッチ作成装置において、高水準言語のプロセッサが出
力した旧ソース翻訳リストレポートファイルおよび旧ソ
ースのバグを高水準言語のソース上で修正した新ソース
翻訳リストレポートファイルから変更のあった部分を検
出する変更部分検出手段と、この変更部分検出手段が出
力する変更部分オブジェクトテキストファイル、記号表
、およびリンカの出力したリンクリストレポートファイ
ルから実アドレスの決定およびレジスタの再割り当てを
行いパッチソースファイルと履歴情報を出力するアドレ
スレジスタ割り当て手段とを含むことを特徴とする。
〔作用〕
変更部分検出手段が高水準言語のプロセッサが出力した
旧ソース翻訳リストレポートファイルおよび旧ソースの
バグを高水準言語で修正した新ソースレポートファイル
から変更のあった部分を検出し、アドレス・レジスタ割
り当て手段が変更部分検出手段の出力する変更部分のオ
ブジェクトテキストおよび記号表とリンカの出力したリ
ンクリストのレポートファイルとから実アドレスを決定
してレジスタの再割り当てを行い、パッチソースおよび
履歴情報を出力する。
このようにソース修正した結果の翻訳リストから自動的
にパッチを生成することにより、ノ1−ドウエアの知識
がなくてもパッチを作成することができ、かつパッチ作
成ミスをなくすことができる。
〔実施例〕
次に、本発明実施例を図面に基づいて説明する。
第1図は本発明の全体構成を示すブロック図、第2図は
本発明実施例の変更部分検出手段の処理の流れを示す図
である。
本発明実施例は、高水準言語のプロセッサが出力した旧
ソース翻訳リストレポートファイル1および旧ソースの
バグを高水準言語のソース上で修正した新ソース翻訳リ
ストレポートファイル2から変更のあった部分を検出す
る変更部分検出手段3と、この変更部分検出手段3が出
力する変更部分オブジェクトテキストファイル5、記号
表6、およびリンカの出力したリンクリストレポートフ
ァイル7から実アドレスの決定およびレジスタの再割り
当てを行いパッチソースファイル9とパッチ履歴ファイ
ル4への履歴情報を出力するアドレスレジスタ割り当て
手段8とを含む。
日ソース翻訳リストレポートファイル1はパッチをかけ
る前のソースを高水準言語のプロセッサが出力したソー
スリスト、データマツプリストおよびオブジェクトリス
トが一つのファイル内に格納されたものであり、新ソー
ス翻訳リストレポートファイル2は旧ソースに対してソ
ース修正を行った新ソースを高水準言工吾のプロセッサ
が出力したソースリスト、データマツプリストおよびオ
ブジェクトリストが一つのファイル内に格納されたもの
である。
変更部分検出手段3はこの二つのレポートファイルの差
異を抽出する部分で、その構成と処理の流れを第2図に
示す。ソースリスト比較手段31は旧ソース翻訳リスト
レポートファイル1の旧ソ−スリスト11と新ソース翻
訳リストのレポートファイル2の新ソースリスト21を
比較し、比較結果としてのソース変更情報10に旧ソー
スに対する新ソースの削除、追加、更新の行番号情報を
出力する。
記号表作成手段32はソース変更情報10のうちデータ
マツプに影響を与えている部分を反映しながら記号名と
新アドレス(新オブジェクトリスト23で用いられてい
るアドレス)と旧アドレス(旧オブジェクトリスト13
で用いられているアドレス)の対応表を記号表6として
作成する。
オブジェクトリスト比較手段33はソース変更情報10
のうち命令部に影響を与えている部分および記号表6上
でアドレスの変更された変数を参照している部分を旧オ
ブジェクトリスト13および新オブジェクトリスト23
より抽出し変更部分オブジェクトテキストファイル5に
出力する。
追加の場合は追加される前の行および後の行の旧オブジ
ェクト情報、追加された新オブジェクト情報および破壊
可能なレジスタ群の情報を出力し、削除の場合は削除さ
れる行のオブジェクト情報および削除不可である行情報
(削除される範囲内で設定されたレジスタを以降で参照
している場合)を出力し、変更の場合は削除、追加の両
方の情報を出力する。
アドレス・レジスタ割り当て手段8は変更部分オブジェ
クトテキストファイル5中の情報およびリンクリストレ
ポートファイル7より実アドレス形式のパッチソースフ
ァイル9を出力する。そのとき削除の場合は前述の削除
不可である行のアドレスを変更して出力後削除範囲の次
の命令への分岐命令を出力する。
追加の場合は追加された次の行の最初のオブジェクトを
パッチエリアへの分岐命令に置き換え、前述の新オブジ
ェクト情報をパッチエリアに割り当てる。その陣中で利
用しているレジスタを破壊可能なレジスタで割り当て直
しくレジスタが不足した場合は破壊不可であるレジスタ
を退避する)、割り当てアドレスの変更に伴う再配置(
リロケーション)を行い、また記号表6上の旧アドレス
にデータ参照を変更する。
追加された新オブジェクトを出力後パッチエリアへの分
岐命令に置き換えた命令を出力しく再配置処理は行う)
、パッチエリアへの分岐命令に置き換えた次の命令への
分岐命令を出力する。またパッチソースファイル9に出
力する以外にパッチ履歴ファイル4にパッチエリアの使
用状況および旧オブジェクトの変更情報を出力する。こ
のパンチ履歴ファイル4を用いて変更部分検出手段4は
既にパンチがかけられた部分に対するパッチが発行され
るのを防ぐ。
〔発明の効果〕
以上説明したように本発明によれば、ソース修正した結
果の翻訳リストから自動的にパッチを生成することによ
り、ハードウェアの知識がなくてもパッチを作成するこ
とができ、かつパッチ作成ミスをなくすことができる効
果がある。
【図面の簡単な説明】
第1図は本発明実施例の全体構成を示すブロック図。 第2図は本発明実施例の変更部分検出手段の構成および
処理の流れを示す流れ図。 1・・・旧ソース翻訳すストレポートファイノペ 2・
・・新ソース翻訳すストレポートファイノベ3・・・変
更部分検出手段、4・・・パッチ履歴ファイル、5・・
・変更部分オブジェクトテキストファイノペ6・・・記
号表、7・・・リンクリストレポートファイルペ8・・
・アドレス・レジスタ割り当て手段、9・・・パッチソ
ースファイルペ10・・・ソース変更情報、11・・・
旧ソ−スリスト、12・・・旧データマツプリスト、1
3・・・旧オブジェクト、21・・・新ソースリスト、
22・・・新データマツプリスト、23・・・新オブジ
ェクトリスト、31・・・ソースリスト比較手段、32
・・・記号表作成手段、33・・・オブジェクトリスト
比較手段。

Claims (1)

  1. 【特許請求の範囲】 1、高水準言語によって作成されたプログラムのパッチ
    作成装置において、 高水準言語のプロセッサが出力した旧ソース翻訳リスト
    レポートファイルおよび旧ソースのバグを高水準言語の
    ソース上で修正した新ソース翻訳リストレポートファイ
    ルから変更のあった部分を検出する変更部分検出手段と
    、 この変更部分検出手段が出力する変更部分オブジェクト
    テキストファイル、記号表、およびリンカの出力したリ
    ンクリストレポートファイルから実アドレスの決定およ
    びレジスタの再割り当てを行いパッチソースファイルと
    履歴情報を出力するアドレスレジスタ割り当て手段と を含むことを特徴とするプログラムのパッチ作成装置。
JP1064672A 1989-03-15 1989-03-15 プログラムのパッチ作成装置 Pending JPH02242332A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1064672A JPH02242332A (ja) 1989-03-15 1989-03-15 プログラムのパッチ作成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1064672A JPH02242332A (ja) 1989-03-15 1989-03-15 プログラムのパッチ作成装置

Publications (1)

Publication Number Publication Date
JPH02242332A true JPH02242332A (ja) 1990-09-26

Family

ID=13264903

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1064672A Pending JPH02242332A (ja) 1989-03-15 1989-03-15 プログラムのパッチ作成装置

Country Status (1)

Country Link
JP (1) JPH02242332A (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6310239A (ja) * 1986-06-30 1988-01-16 Nec Corp 高級言語のパツチ生成方式
JPS63211432A (ja) * 1987-02-27 1988-09-02 Nec Corp パツチ自動作成方式

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6310239A (ja) * 1986-06-30 1988-01-16 Nec Corp 高級言語のパツチ生成方式
JPS63211432A (ja) * 1987-02-27 1988-09-02 Nec Corp パツチ自動作成方式

Similar Documents

Publication Publication Date Title
US6877155B1 (en) System and method for generating target language code utilizing an object oriented code generator
US5339430A (en) System for dynamic run-time binding of software modules in a computer system
US6810517B2 (en) Program-interface converter for multiple-platform computer systems
DE69232761T2 (de) Verfahren und vorrichtung zur aenderung von dynamische zuweisbaren objektcodedateien
US5287444A (en) Message processing system
KR960035260A (ko) 소프트웨어 매크로 호출내에 검출된 에러의 위치를 표시하기 위한 방법 및 장치
WO1999015965A1 (en) Memory allocation
US20020138821A1 (en) Method and apparatus for seamless porting of object code between operating system environments
US5136698A (en) Method for selective back-tracking in a hierarchical system containing a flag which indicates the validity of a choice-point
JPH02242332A (ja) プログラムのパッチ作成装置
JP4559937B2 (ja) プログラム生成装置
JP2000066888A (ja) ロードモジュールのパッチ処理装置
JP3596570B2 (ja) クラスの主記憶装置への配置方法
JPH01205332A (ja) リンケージエディタ方式
JPH02205930A (ja) インタフェースチェック処理方法
AU624654B2 (en) Encapsulation of applications for inclusion within an object management facility environment
Cowling et al. MICROSIM as a teaching aid
Philippot The Simula approach to living software
JPH05119982A (ja) コンパイラ
JPH05100829A (ja) コンパイルユニツト管理方式
JPH06119203A (ja) デバック行削除装置
JP2003216428A (ja) オブジェクト指向プログラミング支援装置
JPH06236283A (ja) 言語処理システム
JPH03282637A (ja) テスト仕様書作成方式
JPH0133855B2 (ja)