JPH04324525A - プログラム移植支援装置 - Google Patents

プログラム移植支援装置

Info

Publication number
JPH04324525A
JPH04324525A JP3095040A JP9504091A JPH04324525A JP H04324525 A JPH04324525 A JP H04324525A JP 3095040 A JP3095040 A JP 3095040A JP 9504091 A JP9504091 A JP 9504091A JP H04324525 A JPH04324525 A JP H04324525A
Authority
JP
Japan
Prior art keywords
program
computer
simulator
ported
executed
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.)
Withdrawn
Application number
JP3095040A
Other languages
English (en)
Inventor
Chikako Murakami
村上 知嘉子
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP3095040A priority Critical patent/JPH04324525A/ja
Publication of JPH04324525A publication Critical patent/JPH04324525A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

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

Abstract

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

Description

【発明の詳細な説明】
【0001】[発明の目的]
【0002】
【産業上の利用分野】本発明は、クロスソフトウェアに
よる開発方式をとる場合のプログラムの移植を支援する
プログラム移植支援装置に関する。
【0003】
【従来の技術】一般に、プログラム開発を行う場合、ク
ロスソフトウェアによる開発を行う場合が多い。これは
計算機Bのプログラムを開発する際、直接計算機B上で
プログラムを開発するのではなく、一旦計算機A上でプ
ログラムを開発し、その動作が仕様に合った正しいもの
であることを確認してから、計算機Aのプログラムを計
算機B上に移植し、計算機Bのプログラムを開発する方
式である。
【0004】このクロスソフトウェアによる開発は、特
に、計算機Aのプログラム開発用リソース(言語、OS
、各種ツール等)が計算機Bのプログラム開発側リソー
スより豊富であり、計算機Aのプログラム開発効率が計
算機Bのプログラム開発効率より優れている場合に有効
である。
【0005】このようなクロスソフトウェア開発におい
て、計算機Aのプログラムが完成すると、この計算機A
のプログラムを計算機Bに移植し、移植終了後計算機B
上で移植したプログラムを実行し正しく動作することを
確認する。また、移植の途中で混入した誤りを発見する
場合等は、全ての移植が終了する以前に、まだ移植の終
了していない計算機A上にあるプログラムを計算機A上
で直接実行することと、計算機Bのプログラムとして既
に移植を終了しているプログラムを計算機Bシミュレー
タを用いて計算機A上でシミュレーションを行うことで
、計算機Aのプログラムと計算機Bのプログラムを計算
機A上で共存させて実行し、その動作を確認することに
より、不具合箇所の特定を容易にしている。
【0006】
【発明が解決しようとする課題】しかしながら、上記説
明の従来の技術では、計算機Aのプログラムと計算機B
のプログラムを計算機A上で共存させて実行する際に、
計算機Bシミュレータから計算機Aに制御を渡す必要が
あるかどうかの判断を行う必要があり、計算機Aのプロ
グラムから計算機Bのプログラムに移植済のプログラム
に対して、一部変更を行なう必要がある。このために、
プログラムに新たなバグが混入する可能性が生じ、プロ
グラム開発効率の低下を招くという問題があった。
【0007】本発明は、かかる従来の事情に対処してな
されたもので、クロスソフトウェア開発におけるプログ
ラム移植の過程で、移植前のプログラムと移植済のプロ
グラムとを共存させて実行する際に、移植済のプログラ
ムに変更を加えることなくこれらを実行することができ
、従来に較べてプログラム開発効率の向上を図ることの
できるプログラム移植支援装置を提供しようとするもの
である。
【0008】[発明の構成]
【0009】
【課題を解決するための手段】本発明のプログラム移植
支援装置は、移植前のプログラムを実行する演算処理手
段と、前記移植前のプログラムと命令コードを異にする
移植済のプログラムをシミュレーション実行するシミュ
レータとを備え、前記移植前のプログラムと前記移植済
のプログラムとが共存した状態でこれらのプログラムを
実行可能に構成されたプログラム移植支援装置において
、前記シミュレータは、プログラムを構成する各モジュ
ール名と、これらのモジュールが前記演算処理手段と前
記シミュレータのどちらで実行するものであるかを記述
したテーブルを具備し、このテーブルに従って、前記移
植済のプログラム中に存在する分岐命令のシミュレーシ
ョンを実行するよう構成したことを特徴とする。
【0010】
【作用】上記構成の本発明のプログラム移植支援装置で
は、シミュレータが、プログラムを構成する各モジュー
ル名とこれらのモジュールが演算処理手段とシミュレー
タのどちらで実行するものであるかを記述したテーブル
を備えており、このテーブルに従って、移植済のプログ
ラム中に存在する分岐命令のシミュレーションを実行す
る。すなわち、このテーブルにより、制御をシミュレー
タから演算処理手段(計算機A)へ渡す必要があるかど
うかを判断する。
【0011】したがって、シミュレータでシミュレーシ
ョンを行う移植済のプログラムに変更を行う必要がない
ので、変更に伴うバグの混入を防ぐことができ、従来に
較べてプログラム開発効率の向上を図ることができる。
【0012】
【実施例】以下、本発明のプログラム移植支援装置の詳
細を図面を参照して一実施例について説明する。
【0013】図1は本実施例のプログラム移植支援装置
の構成を示すもので、図において100は、演算処理手
段を有する計算機Aを示している。計算機A100上に
は、この計算機A100で処理する計算機Aのプログラ
ム101、計算機Bのプログラム102、この計算機B
のプログラム102を計算機A100上で実行するとと
もに予め指定した計算機Bの持つ予約命令により計算機
Aのプログラム101を計算機A100上で実行するこ
との両方を可能にするプログラムである計算機Bシミュ
レータ103が設けられている。
【0014】なお、以下の説明では、計算機A100で
開発され計算機Bに移植されるプログラムは、図2に示
すように、メインプログラム(MAIN)と、サブプロ
グラム1(SUB1)、サブプログラム2(SUB2)
、サブプログラム3(SUB3)、サブプログラム4(
SUB4)から構成されているものとする。また、これ
らのプログラムは、最初計算機Aのプログラム101と
して作られているが、ここでは、これらのプログラムを
計算機Bへ移植する途中の段階として、サブプログラム
2、サブプログラム3だけ移植が終わり、残りのプログ
ラムは計算機Aのプログラム101のままの状態とする
【0015】図3は、プログラム構成を示しており、こ
の時、計算機A100には、計算機Aのプログラム10
1として、メインプログラム、サブプログラム1、サブ
プログラム4およびデータ領域が格納され、さらに、計
算機A100の計算機Bシミュレータ103には、計算
機Bのプログラム102としてのサブプログラム2、サ
ブプログラム3およびデータ領域が格納される。また、
これらのプログラムにそれぞれ含まれているモジュール
のモジュール名と、これらのモジュールを計算機A10
0と計算機Bシミュレータ103のどちらで実行するの
かを記述したテーブル104が計算機Bシミュレータ1
03に格納されている。
【0016】なお、この時メインプログラムの”コール
  SUB2”命令を、”コール  シミュレータ(S
UB2)”命令に置き換えてから格納する。
【0017】プログラムの実行を開始すると、最初メイ
ンプログラムから実行が開始される。メインプログラム
内でサブプログラム1がコールされると、メインプログ
ラム、サブプログラム1ともに計算機Aのプログラム1
01であるため、通常のサブプログラムのコールが実行
される。
【0018】次に、サブプログラム2がコールされるが
、メインプログラムは計算機Aのプログラム101、サ
ブプログラム2は計算機Bのプログラム102であるた
め、通常のサブプログラムのコールではなく、次のよう
に処理される。
【0019】すなわち、”コール  SUB2”命令は
、予め”コール  シミュレータ(SUB2)”命令に
置き換えられているため、この命令が実行されると計算
機Bシミュレータ103がコールされる。計算機Bシミ
ュレータ103では、まず計算機A用のデータ領域を計
算機B用のデータ領域に転送してからサブプログラム2
へのコール命令を実行し、サブプログラム2のシミュレ
ーションを開始する。
【0020】そして、サブプログラム2のプログラムの
中で分岐命令”コール  SUB3”をフェッチすると
、計算機Bシミュレータ103が持つテーブル104を
参照する。この場合、サブプログラム3は計算機Bシミ
ュレータ103上でシミュレーションを行うプログラム
であることがわかるので、通常のサブプログラムのコー
ルのシミュレーションを実行する。
【0021】また、サブプログラム4がコールされた時
も同様に、まず計算機Bシミュレータ103は前述のテ
ーブル104を参照する。ここで、サブプログラム4は
計算機Aのプログラム101であるため、この”コール
  SUB4”命令は、計算機A100上のサブプログ
ラム4をコールする命令であることがわかる。従って、
計算機Bシミュレータ103は計算機B用のデータ領域
を計算機A用のデータ領域に転送してからサブプログラ
ム4へのコール命令を実行する。
【0022】サブプログラム4の計算機A100上での
実行が終了すると、制御が計算機Bシミュレータ103
に戻る。計算機Bシミュレータ103は、計算機A用の
データ領域を、計算機B用のデータ領域に転送した後、
サブプログラム2内の”コール  SUB4”命令の次
の命令からシミュレーションを続ける。
【0023】そして、サブプログラム2の実行が終了し
たならば、再度計算機Bシミュレータ103は、計算機
B用のデータ領域を計算機A用のデータ領域に転送し、
メインプログラムへ制御を移す。
【0024】以上のように本実施例では、計算機A10
0で実行可能な移植前のプログラム(計算機Aのプログ
ラム101)と、計算機Bで実行することが可能である
移植済のプログラム(計算機Bのプログラム102)と
を計算機A100上に共存させて実行することができ、
かつ、移植済のプログラム(計算機Bのプログラム10
2)に何等変更を加える必要がない。したがって、部分
的に移植が完了する都度それを実行して確認することで
不具合カ所の特定を容易にすることができ、プログラム
の変更に伴ってバグが混入することもない。このため、
従来に較べてプログラム開発効率の向上を図ることがで
きる。
【0025】
【発明の効果】以上説明したように、本発明のプログラ
ム移植支援装置によれば、クロスソフトウェア開発にお
けるプログラム移植の過程で、移植前のプログラムと移
植済のプログラムとを共存させて実行する際に、移植済
のプログラムに変更を加えることなくこれらを実行する
ことができ、従来に較べてプログラム開発効率の向上を
図ることができる。
【図面の簡単な説明】
【図1】本発明のプログラム移植支援装置の一実施例の
構成を示す図。
【図2】本発明の一実施例におけるプログラムの構成を
示す図。
【図3】本発明の一実施例におけるプログラムの構成を
示す図。
【符号の説明】
100  計算機A 101  計算機Aのプログラム 102  計算機Bのプログラム 103  計算機Bシミュレータ 104  テーブル

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  移植前のプログラムを実行する演算処
    理手段と、前記移植前のプログラムと命令コードを異に
    する移植済のプログラムをシミュレーション実行するシ
    ミュレータとを備え、前記移植前のプログラムと前記移
    植済のプログラムとが共存した状態でこれらのプログラ
    ムを実行可能に構成されたプログラム移植支援装置にお
    いて、前記シミュレータは、プログラムを構成する各モ
    ジュール名と、これらのモジュールが前記演算処理手段
    と前記シミュレータのどちらで実行するものであるかを
    記述したテーブルを具備し、このテーブルに従って、前
    記移植済のプログラム中に存在する分岐命令のシミュレ
    ーションを実行するよう構成したことを特徴とするプロ
    グラム移植支援装置。
JP3095040A 1991-04-25 1991-04-25 プログラム移植支援装置 Withdrawn JPH04324525A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3095040A JPH04324525A (ja) 1991-04-25 1991-04-25 プログラム移植支援装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3095040A JPH04324525A (ja) 1991-04-25 1991-04-25 プログラム移植支援装置

Publications (1)

Publication Number Publication Date
JPH04324525A true JPH04324525A (ja) 1992-11-13

Family

ID=14126964

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3095040A Withdrawn JPH04324525A (ja) 1991-04-25 1991-04-25 プログラム移植支援装置

Country Status (1)

Country Link
JP (1) JPH04324525A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002536712A (ja) * 1999-01-28 2002-10-29 エーティーアイ インターナショナル エスアールエル 第2のアーキテクチャのコンピュータにおける第1のコンピュータアーキテクチャ用プログラムの実行

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002536712A (ja) * 1999-01-28 2002-10-29 エーティーアイ インターナショナル エスアールエル 第2のアーキテクチャのコンピュータにおける第1のコンピュータアーキテクチャ用プログラムの実行

Similar Documents

Publication Publication Date Title
US6718294B1 (en) System and method for synchronized control of system simulators with multiple processor cores
JP2000181725A (ja) 実行可能なコ―ドを改変し、追加機能を付与するための方法およびシステム
US5680584A (en) Simulator system for code execution and debugging within a multi-architecture environment
JPH0810437B2 (ja) 仮想計算機システムのゲスト実行制御方式
JP2817786B2 (ja) シミュレーション装置及びシミュレーション方法
JP2919302B2 (ja) Cpuシミュレーション方法
US11573787B1 (en) Hot reloading a running application with an unsaved source code change
Lyu et al. A procedure-based dynamic software update
JPH04324525A (ja) プログラム移植支援装置
CN112882701A (zh) 一种支持多架构的可执行文件静态插桩技术框架
JP2000029678A (ja) プログラム言語変換方法、変換装置および記録媒体
JPH07253909A (ja) マイクロプログラム検証方法
RU2521265C2 (ru) Система и способ автоматической обработки системных ошибок программного обеспечения
WO2007144891A1 (en) A method for the distribution of software processes to a plurality of computers
JPS626260B2 (ja)
JP2570119B2 (ja) ソフトウェアシミュレータ
JPH0314040A (ja) プログラム移植支援装置
JPH0424734A (ja) プログラム移植支援装置
JPH02231634A (ja) ソフトウェア互換性維持方法
JPH03218539A (ja) 並列計算機システムにおけるデバッグ方法
CN114115938A (zh) 基于QEMU的Linux跨架构运行文件方法
JP2001005688A (ja) 並列プログラム用デバッグ支援装置
JPS6214240A (ja) プログラム検査方式
JPH0588879A (ja) プログラム開発支援システム
JPH04358232A (ja) 情報処理装置の機能試験方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19980711