JPH01309125A - メモリ内容監視・比較・検出方式 - Google Patents

メモリ内容監視・比較・検出方式

Info

Publication number
JPH01309125A
JPH01309125A JP63140205A JP14020588A JPH01309125A JP H01309125 A JPH01309125 A JP H01309125A JP 63140205 A JP63140205 A JP 63140205A JP 14020588 A JP14020588 A JP 14020588A JP H01309125 A JPH01309125 A JP H01309125A
Authority
JP
Japan
Prior art keywords
source
memory contents
file
file storage
memory
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
JP63140205A
Other languages
English (en)
Inventor
Yoko Abe
洋子 阿部
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 JP63140205A priority Critical patent/JPH01309125A/ja
Publication of JPH01309125A publication Critical patent/JPH01309125A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はメモリ内容監視・比較・検出方式に関し、特に
プログラムを異なるコンピュータ間で移植する際のメモ
リ内容監視・比較・検出方式に関する。
〔従来の技術〕
最近、あるコンピュータで実行されている既存のソフト
ウェア(プログラム)を他のコンピュータに移植して利
用する傾向が増加している(以下、上述の「あるコンピ
ュータ」を「移植光コンピュータ」といい、「他のコン
ピュータ」を「移植先コンピュータ」という)。このコ
ンピュータ間でのプログラムの移植に際しては、両コン
ピュータのO3(Operating  System
)やコンパイラの処理等の相違により移植前後の実行結
果が不一致になることが発生する。このような実行結果
の不一致が発生ずる場合には、プログラムの実行におい
てどの時点(ソースプログラム上のどの位置)で実行結
果に相違が生しそのメモリ内容はどのようなものかとい
うことを調査するためのメモリ内容監視・比較・検出方
式が必要になる。
従来、この種のメモリ内容監視・比較・検出方式では、
移植対象のソースプログラム中の特定のソースコードの
直後に監視、比較および検出の対象のメモリ内容を出力
(印字等)するためのソースコード(例えば、FORT
RAN言語により記述されているソースプログラム(以
下、FORTRANソースプログラムという)における
所定のWRITE文)が挿入され、そのソースコードを
含むソースプログラムに基づく実行形式のプログラムが
O5やコンパイラの処理等の異なる移植先コンピュータ
で実行され、その実行において出力される双方のメモリ
内容の結果が比較され、メモリ内容の結果が一敗しない
ソースコード(以下、結果不一致ソースコードという)
のソースプログラム上の位置(行番号等)およびメモリ
内容の検出が行われていた(上述のような一連の煩雑な
作業は人手により行われていた)。
〔発明が解決しようとする課題〕
上述した従来のメモリ内容監視・比較・検出方式では、
人手による一連の煩雑な作業が行われているので、結果
不一致ソースコードの位置およびメモリ内容の検出等を
行うために多くの工数を要するという欠点がある。
本発明の目的は、上述の点に鑑み、結果不一致ソースコ
ードの位置およびメモリ内容の検出等を人手による作業
を必要とせずに自動的に行い、その工数を削減すること
ができるメモリ内容監視・比較・検出方式を提供するこ
とにある。
〔課題を解決するための手段〕
本発明のメモリ内容監視・比較・検出方式は、監視対象
の実行経路および監視対象のメモリ内容の名前を指定す
る監視範囲指定手段と、この監視TM囲指定手段により
指定された実行経路中の前記監視範囲指定手段により指
定された名前のメモリ内容の定義や変更がソースプログ
ラムのどのソースコードで行われているかを解析しその
解析に基づき該当する定義や変更が行われているソース
コードの直後にファイル格納用ソースコードを挿入して
ファイル格納用ソースプログラムを生成するファイル格
納用ソース生成手段と、このファイル格納用ソース生成
手段により生成されたファイル格納用ソースプログラム
を移植光コンピュータの環境で実行し監視対象のメモリ
内容をファイルに格納する移植光コンピュータ生成ソー
ス実行手段と、前記ファイル格納用ソース生成手段によ
り生成されたファイル格納用ソースプログラムを移植先
コンピュータの環境で実行し監視対象のメモリ内容をフ
ァイルに格納する移植先コンピュータ生成ソース実行手
段と、前記移植光コンピュータ生成ソース実行手段によ
りファイルに格納されたメモリ内容と前記移植先コンピ
ュータ生成ソース実行手段によりファイルに格納された
メモリ内容とを比較するメモリ内容比較手段と、このメ
モリ内容比較手段による比較に基づき結果不一致ソース
コードの位置およびメモリ内容を検出するメモリ内容検
出手段とを有する。
〔作用〕
本発明のメモリ内容監視・比較・検出方式では、監視範
囲指定手段が監視対象の実行経路および監視対象のメモ
リ内容の名前を指定し、ファイル格納用ソース生成手段
が監視範囲指定手段により指定された実行経路中の監視
範囲指定手段により指定された名前のメモリ内容の定義
や変更がソースプログラムのどのソースコードで行われ
ているかを解析しその解析に基づき該当する定義や変更
が行われているソースコードの直後にファイル格納用ソ
ースコードを挿入してファイル格納用ソースプログラム
を生成し、移植元コンピュータ生成ソース実行手段がフ
ァイル格納用ソース生成手段により生成されたファイル
格納用ソースプログラムを移植元コンピュータの環境で
実行し監視対象のメモリ内容をファイルに格納し、移植
先コンピュータ生成ソース実行手段がファイル格納用ソ
ース生成手段により生成されたファイル格納用ソースプ
ログラムを移植先コンピュータの環境で実行し監視対象
のメモリ内容をファイルに格納し、メモリ内容比較手段
が移植元コンピュータ生成ソース実行手段によりファイ
ルに格納されたメモリ内容と移植先コンピュータ生成ソ
ース実行手段によりファイルに格納されたメモリ内容と
を比較し、メモリ内容検出手段がメモリ内容比較手段に
よる比較に基づき結果不一致ソースコードの位置および
メモリ内容を検出する。
〔実施例〕
次に、本発明について図面を参照して詳細に説明する。
第1図は、本発明のメモリ内容監視・比較・検出方式の
一実施例の構成を示すブロック図である。
本実施例のメモリ内容監視・比較、検出方式は、ソース
プログラム記憶手段lと、監視範囲指定手段2と、ファ
イル格納用ソース生成手段3と、移植元コンピュータ生
成ソース実行手段4−Aと、移植先コンピュータ生成ソ
ース実行手段4−Bと、メモリ内容比較手段5と、メモ
リ内容検出手段6とを含んで構成されている。
第2図は、本実施例のメモリ内容監視・比較・検出方式
がFORTRANソースプログラムの一例の移植に際し
て適用される場合の処理を示す流れ図である。この処理
は、ソースプログラム記憶手段処理ステップ21と、監
視範囲指定手段処理ステップ22と、ファイル格納用ソ
ース生成手段処理ステップ23と、移植元コンピュータ
生成ソース実行手段処理ステップ24−Aと、移植先コ
ンピュータ生成ソース実行手段処理ステップ24−Bと
、メモリ内容比較手段処理ステップ25と、メモリ内容
検出手段処理ステップ26とからなる。
次に、このように構成された本実施例のメモリ内容監視
・比較・検出方式の動作について説明する。なお、ここ
では、第2図に示す処理が行われる場合の動作について
説明する。
ソースプログラム記憶手段1には、移植の対象のソース
プログラム(ここでは、FORT、RANソースプログ
ラム)が格納されている(ステップ21)(その内容は
第2図中のステップ21のボックス内に示すものである
)。
監視範囲指定手段2では、監視したいソースプログラム
中の実行経路(ここでは、サブルーチンrsUBIJと
いう実行経路)および監視したいメモリ内容の名前(変
数名および配列名等。ここでは、配列rAJの配列名)
が指定される(利用者等の指定に基づいて監視範囲指定
手段2が上述の指定をファイル格納用ソース生成手段3
に対して行う) (ステップ22)。
監視範囲指定手段2における指定を受は取ったファイル
格納用ソース生成手段3では、ソースプログラム記憶手
段lにより記憶されている移植の対象のソースプログラ
ムが解析される。この解析に基づき、監視範囲指定手段
2で指定された実行経路の範囲における監視範囲指定手
段2で指定された名前のメモリ内容の定義や変更を行っ
ている。
ソースコード(ソースプログラム記憶手段lに記憶され
ているソースプログラム中のソースコードのいずれか)
の直後にそのメモリ内容をファイル(図示せず)に格納
するためのソースコード(ファイル格納用ソースコード
)が挿入され、このファイル格納用ソースコードを有す
るファイル格納用ソースプログラムが生成される(ここ
では、ステップ22で指定されたプログラムの実行経路
の範囲(サブルーチンrsUBIJ)において配列「A
」のメモリ内容の定義や変更を行っているソースコード
(rA (1)=B (1)J)の直後にそのメモリ内
容をファイルに格納するためのrWRITE (99,
*>” 5UBI−50°、 A (1)」というWR
ITE文が挿入されて第2図中のステップ23のボック
ス内に示すファイル格納用ソースプログラムが生成され
る) (ステップ23)。
移植元コンピュータ生成ソース実行手段4−Aでは、フ
ァイル格納用ソース生成手段3により生成されたファイ
ル格納用ソースプログラムを移植元コンピュータの環境
で実行する処理(ファイル格納用ソースプログラムのコ
ンパイルおよびリンクを移植元コンピュータの環境下で
行い、ファイル格納用ソースプログラムに基づく実行形
式のプログラムを移植元コンピュータの環境下で実行す
る処理)が行われ、監視対象のメモリ内容がファイルに
格納される(ここでは、ステップ23で生成されたファ
イル格納用ソースプログラムが移植元コンピュータの環
境下で実行され、配列rAJのメモリ内容の定義や変更
を行うソースコードの行番号(50行目)とメモリ内容
(r0123456789J)とがファイルに格納され
る) (ステップ24− A )。
移植先コンピュータ生成ソース実行手段4−Bでは、フ
ァイル格納用ソース生成手段3により生成されたファイ
ル格納用ソースプログラムを移植先コンピュータの環境
で実行する処理(ファイル格納用ソースプログラムのコ
ンパイルおよびリンクを移植先コンピュータの環境下で
行い、ファイル格納用ソースプログラムに基づく実行形
式のプログラムを移植先コンピュータの環境下で実行す
る処理)が行われ、監視対象のメモリ内容がファイルに
格納される(ここでは、ステップ23で生成されたファ
イル格納用ソースプログラムが移植先コンピュータの環
境で実行され、配列rAJのメモリ内容の定義や変更を
行うソースコードの行番号(50行目)とメモリ内容(
r1234567890」)とがファイルに格納される
) (ステップ24−B)。
メモリ内容比較手段5では、移植元コンピュータ生成ソ
ース実行手段4−Aによりファイルに格納されたメモリ
内容と移植先コンピュータ生成ソース実行手段4−Bに
よりファイルに格納されたメモリ内容との比較が行われ
る(ここでは、ステップ24−Aでファイルに格納され
たメモリ内容(r0123456789J)とステップ
24−Bでファイルに格納されたメモリ内容(r123
4567890J)との比較が行われる)(ステップ2
5)。
メモリ内容検出手段6では、メモリ内容比較手段5によ
り比較されたメモリ内容において一致しなかったメモリ
内容についてそのソースコード(結果不一致ソースコー
ド)のソースプログラム上の位置およびメモリ内容が検
出される(ここでは、ステップ25で比較されたメモリ
内容r0123456789Jと「123456789
0Jとが一致しないので、その場合の行番号(50行目
)とメモリ内容(r0123456789jおよび「1
234567890J)とが検出される) (ステップ
26)  。
このようにして、自動的に結果不一致ソースコード(こ
こでは、rA (+) −B (1)jというソースコ
ード)の位置およびメモリ内容を検出することが可能に
なる。
〔発明の効果〕
以上説明したように本発明は、移植元コンピュータから
移植先コンピュータへのプログラムの移植作業において
、監視範囲指定手段、ファイル格納用ソース生成手段、
移植元コンピュータ生成ソース実行手段、移植先コンピ
ュータ生成ソース実行手段、メモリ内容比較手段および
メモリ内容検出手段を設けることにより、双方のコンピ
ュータのO8やコンパイラの処理等の相違に起因して生
じる結果不一致ソースコードに関する情報の検出等を人
手による作業を必要とせずに自動的に行うことができ、
従来の技術における一連の煩雑な作業の省力化が可能に
なるという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の構成を示すプロ。 り図、 第2図は第1図に示すメモリ内容監視・比較・検出方式
の処理の一例を示す流れ図である。 図において、 1・・・ソースプログラム記憶手段、 2・・・監視範囲指定手段、 3・・・ファイル格納用ソース生成手段、4−A・移植
光コンピュータ生成ソース実行手段、 4−B・移植先コンピュータ生成ソース実行手段、 5・・・メモリ内容比較手段、 6・・・メモリ内容検出手段である。

Claims (1)

  1. 【特許請求の範囲】 監視対象の実行経路および監視対象のメモリ内容の名前
    を指定する監視範囲指定手段と、 この監視範囲指定手段により指定された実行経路中の前
    記監視範囲指定手段により指定された名前のメモリ内容
    の定義や変更がソースプログラムのどのソースコードで
    行われているかを解析しその解析に基づき該当する定義
    や変更が行われているソースコードの直後にファイル格
    納用ソースコードを挿入してファイル格納用ソースプロ
    グラムを生成するファイル格納用ソース生成手段と、こ
    のファイル格納用ソース生成手段により生成されたファ
    イル格納用ソースプログラムを移植元コンピュータの環
    境で実行し監視対象のメモリ内容をファイルに格納する
    移植元コンピュータ生成ソース実行手段と、 前記ファイル格納用ソース生成手段により生成されたフ
    ァイル格納用ソースプログラムを移植先コンピュータの
    環境で実行し監視対象のメモリ内容をファイルに格納す
    る移植先コンピュータ生成ソース実行手段と、 前記移植元コンピュータ生成ソース実行手段によりファ
    イルに格納されたメモリ内容と前記移植先コンピュータ
    生成ソース実行手段によりファイルに格納されたメモリ
    内容とを比較するメモリ内容比較手段と、 このメモリ内容比較手段による比較に基づき結果不一致
    ソースコードの位置およびメモリ内容を検出するメモリ
    内容検出手段と を有することを特徴とするメモリ内容監視・比較・検出
    方式。
JP63140205A 1988-06-07 1988-06-07 メモリ内容監視・比較・検出方式 Pending JPH01309125A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63140205A JPH01309125A (ja) 1988-06-07 1988-06-07 メモリ内容監視・比較・検出方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63140205A JPH01309125A (ja) 1988-06-07 1988-06-07 メモリ内容監視・比較・検出方式

Publications (1)

Publication Number Publication Date
JPH01309125A true JPH01309125A (ja) 1989-12-13

Family

ID=15263364

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63140205A Pending JPH01309125A (ja) 1988-06-07 1988-06-07 メモリ内容監視・比較・検出方式

Country Status (1)

Country Link
JP (1) JPH01309125A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014053010A (ja) * 2012-09-07 2014-03-20 Samsung Electronics Co Ltd 混合モードプログラムのソースコードエラー位置検出装置及び方法
WO2014155684A1 (ja) * 2013-03-29 2014-10-02 富士通株式会社 プログラム、情報処理システム、およびプログラム移行方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014053010A (ja) * 2012-09-07 2014-03-20 Samsung Electronics Co Ltd 混合モードプログラムのソースコードエラー位置検出装置及び方法
WO2014155684A1 (ja) * 2013-03-29 2014-10-02 富士通株式会社 プログラム、情報処理システム、およびプログラム移行方法
JPWO2014155684A1 (ja) * 2013-03-29 2017-02-16 富士通株式会社 プログラム、情報処理システム、およびプログラム移行方法
US9733990B2 (en) 2013-03-29 2017-08-15 Fujitsu Limited Information processing system and program migration method

Similar Documents

Publication Publication Date Title
US6877155B1 (en) System and method for generating target language code utilizing an object oriented code generator
US6922827B2 (en) Iterative software development environment with prioritized build rules
US5361357A (en) Method and apparatus for optimizing computer file compilation
US8234625B2 (en) Optimized look-up table calculations in block diagram software
US4821181A (en) Method for converting a source program of high level language statement into an object program for a vector processor
JP4346316B2 (ja) 複数の意味レベルによるアスペクト指向プログラミングのための方法
US20110302565A1 (en) Implicit workspace dependencies
US6009273A (en) Method for conversion of a variable argument routine to a fixed argument routine
US7376935B2 (en) Design-time system and method to enable programming assistance across languages and compilation boundaries
US20030115571A1 (en) Construction of a software application from a plurality of programming languages
JPH06309204A (ja) データ処理方法及びその装置
US5150474A (en) Method for transferring arguments between object programs by switching address modes according to mode identifying flag
JPH01309125A (ja) メモリ内容監視・比較・検出方式
EP0701203A1 (en) Compiling device and compiling method
Oliveira et al. A tactic language for refinement of state-rich concurrent specifications
JPH01177165A (ja) 配列の定義/引用関係検査方式
Yin An integrated software design paradigm
KR100276086B1 (ko) 로토스 명세로부터 씨 플러스 플러스 코드 생성방법
JP2002082811A (ja) コンパイル方法および記録媒体
JPH0793144A (ja) プログラム解析装置
US7627859B2 (en) Method for configuring non-script language library files to be run as scripts
CN113031956A (zh) 程序编译方法和装置以及程序运行方法和装置
JP2001125779A (ja) オブジェクト指向型プログラミング言語で記述されたプログラムの構成関係管理装置及び方法並びに記憶媒体
JPH0268631A (ja) コンパイラシステム
JPH04365134A (ja) コンパイラのエラー情報出力方式