JPH04205422A - プログラム自動翻訳結合及び選択方法 - Google Patents
プログラム自動翻訳結合及び選択方法Info
- Publication number
- JPH04205422A JPH04205422A JP2337117A JP33711790A JPH04205422A JP H04205422 A JPH04205422 A JP H04205422A JP 2337117 A JP2337117 A JP 2337117A JP 33711790 A JP33711790 A JP 33711790A JP H04205422 A JPH04205422 A JP H04205422A
- Authority
- JP
- Japan
- Prior art keywords
- translation
- module
- file
- load module
- program
- 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
Links
- 238000000034 method Methods 0.000 title claims description 27
- 238000013519 translation Methods 0.000 claims abstract description 106
- 238000007726 management method Methods 0.000 claims description 46
- 230000014616 translation Effects 0.000 description 85
- 238000013500 data storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、ソースモジュールを翻訳・結合し、ロードモ
ジュールを作成する方法ならびにソースモジュール、オ
ブジェクトモジュール、ロードモジュールの管理方法に
関する。
ジュールを作成する方法ならびにソースモジュール、オ
ブジェクトモジュール、ロードモジュールの管理方法に
関する。
従来のプログラミング支援システムは、ユーザが機能を
選択し実行するのに先立って、まずその動作環境をユー
ザ自身でつくることが要求される。
選択し実行するのに先立って、まずその動作環境をユー
ザ自身でつくることが要求される。
たとえば、あるモジュールをデバッグするときに特定の
ソース文位置で実行を中断し、変数の値を確認すること
が行われるが、このためには通常、対象ソースモジュー
ルを特定の翻訳オプションで再翻訳し、他のオブジェク
トモジュールと結合をとりロードモジュールを作成しな
ければならない。
ソース文位置で実行を中断し、変数の値を確認すること
が行われるが、このためには通常、対象ソースモジュー
ルを特定の翻訳オプションで再翻訳し、他のオブジェク
トモジュールと結合をとりロードモジュールを作成しな
ければならない。
また、再翻訳されると旧オブジェクトファイルの内容は
新オブジェクトモジュールに置き換えられるため、旧オ
ブジーエクトモジュールを再び使うには再度翻訳しなけ
ればならない。世代管理機能を持ったファイルシステム
では、この問題は解決されるが、翻訳時に指定したオプ
ションとオブジェクトモジュールとの関係、つまりユー
ザニーズとオブジェクトモジュールとの対応はユーザが
対応づけておかねばならない。この対応に基づいて、ニ
ーズ対応に結合するオブジェクトモジュールを選択し、
ロードモジュールを作成しなければならない。ロードモ
ジュールの管理においても状況は同じである。
新オブジェクトモジュールに置き換えられるため、旧オ
ブジーエクトモジュールを再び使うには再度翻訳しなけ
ればならない。世代管理機能を持ったファイルシステム
では、この問題は解決されるが、翻訳時に指定したオプ
ションとオブジェクトモジュールとの関係、つまりユー
ザニーズとオブジェクトモジュールとの対応はユーザが
対応づけておかねばならない。この対応に基づいて、ニ
ーズ対応に結合するオブジェクトモジュールを選択し、
ロードモジュールを作成しなければならない。ロードモ
ジュールの管理においても状況は同じである。
従来、プログラムを自動的に翻訳結合する方法は、特開
平2−67626号のプログラム自動翻訳結合方式、特
開平2−15330号のプログラム情報管理及びロード
モジュール自動作成方式として特許出願されている。ま
た、動作させるべきプログラムを選択する方法は、特開
平2−67626号のプログラム選択方式として特許出
願されている。
平2−67626号のプログラム自動翻訳結合方式、特
開平2−15330号のプログラム情報管理及びロード
モジュール自動作成方式として特許出願されている。ま
た、動作させるべきプログラムを選択する方法は、特開
平2−67626号のプログラム選択方式として特許出
願されている。
第1の従来技術はソースファイルの作成更新目付とオブ
ジェクトファイルの翻訳日時、ロードモジュールの結合
日時を相互に比較して再翻訳・再結合が必要なソースフ
ァイルのみを翻訳・結合してロードモジュールを自動作
成するようになっている。
ジェクトファイルの翻訳日時、ロードモジュールの結合
日時を相互に比較して再翻訳・再結合が必要なソースフ
ァイルのみを翻訳・結合してロードモジュールを自動作
成するようになっている。
第2の従来技術はプログラム構成情報と新規追加及び修
正モジュール情報からオブジェクトモジュールを再翻訳
し、リンクすべきサブモジュールを自動検索し、自動リ
ンクするようになっている。
正モジュール情報からオブジェクトモジュールを再翻訳
し、リンクすべきサブモジュールを自動検索し、自動リ
ンクするようになっている。
第3の従来技術は種々のプログラムからユーザ業務・動
作環境に最適なプログラムを自動選択・自動起動するよ
うになっている。
作環境に最適なプログラムを自動選択・自動起動するよ
うになっている。
上記従来技術は、ユーザニーズに応じて、再翻訳が必要
なソースモジュールを決定する点、翻訳時オプションや
結合時オプションなどコンパイラやリンカの動作環境を
決定する点、さらにこの決定に基づいて翻訳を実行し、
オブジェクトモジュールを生成した後、オブジェクトモ
ジュール間の結合をとる点、について考慮されていない
。さらに、オブジェクトモジュールやロードモジュール
の管理は名称でのみ行われており、動作環境情報を保持
することについて考慮されていない。
なソースモジュールを決定する点、翻訳時オプションや
結合時オプションなどコンパイラやリンカの動作環境を
決定する点、さらにこの決定に基づいて翻訳を実行し、
オブジェクトモジュールを生成した後、オブジェクトモ
ジュール間の結合をとる点、について考慮されていない
。さらに、オブジェクトモジュールやロードモジュール
の管理は名称でのみ行われており、動作環境情報を保持
することについて考慮されていない。
したがって、ユーザニーズに対応して再翻訳する必要の
あるソースモジュールと翻訳時と結合時の動作環境情報
を決定し、コンパイラ、リンカを順次起動する方法とこ
の過程で作成されるオブジェクトモジュールとロードモ
ジュールとを動作環境情報と関連付けて管理する方法が
必要となる。
あるソースモジュールと翻訳時と結合時の動作環境情報
を決定し、コンパイラ、リンカを順次起動する方法とこ
の過程で作成されるオブジェクトモジュールとロードモ
ジュールとを動作環境情報と関連付けて管理する方法が
必要となる。
本発明の目的は、ユーザニーズに応じて、その実現に必
要な環境を判断し、これを整えるために必要な手続きを
決定し、実行する機構、あるし)はすでに存在する環境
からユーザニーズに適合する環境を選択する機構を提供
することを目的とする。
要な環境を判断し、これを整えるために必要な手続きを
決定し、実行する機構、あるし)はすでに存在する環境
からユーザニーズに適合する環境を選択する機構を提供
することを目的とする。
上記本発明の目的は、第1に翻訳時のオプションとユー
ザニーズとの対応を管理し、ユーザニーズにより翻訳時
のオプションを自動的に決定すること、また、第2に翻
訳の結果作成されるオブジェクトモジュールを格納する
オブジェクトファイルに翻訳時オプションを関連情報と
して保持し、さらにオブジェクトモジュールを結合して
得られるロードモジュールに対して、結合されたオブジ
ェクトファイルを示す情報を保持することによって達成
される。
ザニーズとの対応を管理し、ユーザニーズにより翻訳時
のオプションを自動的に決定すること、また、第2に翻
訳の結果作成されるオブジェクトモジュールを格納する
オブジェクトファイルに翻訳時オプションを関連情報と
して保持し、さらにオブジェクトモジュールを結合して
得られるロードモジュールに対して、結合されたオブジ
ェクトファイルを示す情報を保持することによって達成
される。
上記第1の構成によるプログラム自動翻訳結合及び選択
方法では、ユーザニーズと翻訳時に指定する必要がある
オプションとの関係が明らかであるので、ユーザニーズ
に対応して翻訳時オプションを自動的に決定することが
できる。
方法では、ユーザニーズと翻訳時に指定する必要がある
オプションとの関係が明らかであるので、ユーザニーズ
に対応して翻訳時オプションを自動的に決定することが
できる。
また、ユーザニーズに対応して、その実現に必要な環境
を判断し、整える必要性があるか否かを判定するために
は、ユーザニーズを満たすオブジェクトモジュール、ロ
ードモジュールの存在を調べる必要がある。
を判断し、整える必要性があるか否かを判定するために
は、ユーザニーズを満たすオブジェクトモジュール、ロ
ードモジュールの存在を調べる必要がある。
そこで、オブジェクトモジュールの関連情報である翻訳
時オプションを調べることにより再翻訳する必要がある
か否かを判断することができる。
時オプションを調べることにより再翻訳する必要がある
か否かを判断することができる。
また、すでに必要なオブジェクトモジュールを格納した
オブジェクトファイルが存在する場合には、これが結合
されたロードモジュールが存在するかを調べることによ
り再結合してロードモジュールを作成する必要があるか
否かを判断できる。すなわち、上記第2の構成によるプ
ログラム自動翻訳結合及び選択方法では、ユーザニーズ
に対応するオブジェクトモジュール、ロードモジュール
の存在の有無を調べることができ、存在しなければ、コ
ンパイラやリンカを起動して、これを生成することがで
きる。
オブジェクトファイルが存在する場合には、これが結合
されたロードモジュールが存在するかを調べることによ
り再結合してロードモジュールを作成する必要があるか
否かを判断できる。すなわち、上記第2の構成によるプ
ログラム自動翻訳結合及び選択方法では、ユーザニーズ
に対応するオブジェクトモジュール、ロードモジュール
の存在の有無を調べることができ、存在しなければ、コ
ンパイラやリンカを起動して、これを生成することがで
きる。
以下、本発明の実施例を図面を参照して説明する。なお
、これにより本発明が限定されるものではない。
、これにより本発明が限定されるものではない。
第1図は1本発明の一実施例を適用したプログラミング
支援システムの全体構成を示している。
支援システムの全体構成を示している。
プログラミング支援システム100にはユーザニーズと
対象ソースファイル名称が入力される。
対象ソースファイル名称が入力される。
ユーザニーズとそのニーズを実現するために必要な準備
の具体例は、たとえば、以下のようなものである。
の具体例は、たとえば、以下のようなものである。
ユーザプログラムのデバッグを行う場合、デバッグ対象
であるソースモジュールに対して、指定したソース文位
置で実行を中断し変数の値を参照したり、ソース文の実
行推移を高輝度に画面表示する。などといった手段を用
いる。このニーズを実現するには、対象ソースモジュー
ルを適当な翻訳オプションで翻訳してオブジェクトモジ
ュールを作成し、他オブジェクトモジュールとの結合を
とり、実行可能なロードモジュールを作成する必要があ
る。また、翻訳時には、オブジェクトモジュールに加え
てデバッグ情報を作成し、ファイルに格納する。
であるソースモジュールに対して、指定したソース文位
置で実行を中断し変数の値を参照したり、ソース文の実
行推移を高輝度に画面表示する。などといった手段を用
いる。このニーズを実現するには、対象ソースモジュー
ルを適当な翻訳オプションで翻訳してオブジェクトモジ
ュールを作成し、他オブジェクトモジュールとの結合を
とり、実行可能なロードモジュールを作成する必要があ
る。また、翻訳時には、オブジェクトモジュールに加え
てデバッグ情報を作成し、ファイルに格納する。
プログラミング支援システム100は、動作環境設定部
200と翻訳対象選択部300.翻訳部400、結合対
象選択部5oO9結合部600゜ファイル管理登録部7
00とを有している。これら各部は第7図に示されたフ
ローチャートのように作動する。
200と翻訳対象選択部300.翻訳部400、結合対
象選択部5oO9結合部600゜ファイル管理登録部7
00とを有している。これら各部は第7図に示されたフ
ローチャートのように作動する。
これらフローチャート中のステップの番号で、210は
前記動作環境設定部200による処理を示し、310.
311は前記翻訳対象選択部300による処理を示し、
410,411は前記翻訳部400による処理を示し、
510〜512は前記結合対象選択部500による処理
を示し、610゜611は前記結合部600による処理
を示す。
前記動作環境設定部200による処理を示し、310.
311は前記翻訳対象選択部300による処理を示し、
410,411は前記翻訳部400による処理を示し、
510〜512は前記結合対象選択部500による処理
を示し、610゜611は前記結合部600による処理
を示す。
まず、動作環境設定部200ではユーザニーズを実現す
る環境を決定する。通常、ユーザニーズを満たすオブジ
ェクトモジュールを作成するための翻訳オプションの決
定、結合時の結合オプションの決定9作業ファイルの必
要性の決定を行う。
る環境を決定する。通常、ユーザニーズを満たすオブジ
ェクトモジュールを作成するための翻訳オプションの決
定、結合時の結合オプションの決定9作業ファイルの必
要性の決定を行う。
作業ファイルは必要な場合にのみシステムが確保するも
のであって、デバッグオプションで翻訳時にオブジェク
トモジュール対応に出力されるデバッグ情報を格納した
り、あるいはプログラム実行中にトレースデータを収集
する場合にこれらを格納するために必要となる。
のであって、デバッグオプションで翻訳時にオブジェク
トモジュール対応に出力されるデバッグ情報を格納した
り、あるいはプログラム実行中にトレースデータを収集
する場合にこれらを格納するために必要となる。
ステップ210では、翻訳オプションと結合オプション
を決定し、これらをそれぞれ環境管理ファイル内80o
の翻訳環境管理データ820と結合環境管理データ84
0に登録する。ともに同一の管理データ、すなわち同一
の翻訳環境識別子、結合環境識別子を持つものがあれば
重複登録しない。
を決定し、これらをそれぞれ環境管理ファイル内80o
の翻訳環境管理データ820と結合環境管理データ84
0に登録する。ともに同一の管理データ、すなわち同一
の翻訳環境識別子、結合環境識別子を持つものがあれば
重複登録しない。
翻訳環境管理データ820は第3図に示すが如きデータ
格納形式を有している。
格納形式を有している。
各データは翻訳環境識別子821と翻訳オプション集合
822とから成る。翻訳オプションは複数個存在するが
、これらに一連の番号づけを行う。
822とから成る。翻訳オプションは複数個存在するが
、これらに一連の番号づけを行う。
指定されたオプションは翻訳オプション集合において対
応位置ビットONで表現する。
応位置ビットONで表現する。
同様に、結合環境管理データ840は第5図に示すが如
きデータ格納形式を有しており、結合時に指定されたオ
プションをビット集合の形式824で保持し、これに結
合環境識別子841を付けて管理する。
きデータ格納形式を有しており、結合時に指定されたオ
プションをビット集合の形式824で保持し、これに結
合環境識別子841を付けて管理する。
このようにステップ210では、ユーザニーズを満たす
翻訳環境識別子と翻訳候補ソースファイル名が決定され
、ステップ310以降に渡される。
翻訳環境識別子と翻訳候補ソースファイル名が決定され
、ステップ310以降に渡される。
翻訳対象選択部300は、動作環境設定部200で設定
された翻訳候補ソースファイル名と翻訳環境識別子を入
力し、ステップ310〜311において環境管理ファイ
ル800内の翻訳情報管理データ810を検索し、新た
に翻訳処理が必要なソースファイルを決定する。
された翻訳候補ソースファイル名と翻訳環境識別子を入
力し、ステップ310〜311において環境管理ファイ
ル800内の翻訳情報管理データ810を検索し、新た
に翻訳処理が必要なソースファイルを決定する。
翻訳情報管理データ810は第2図に示すが如きデータ
格納形式を有している。
格納形式を有している。
ソースファイル名情報811には翻訳されたソースファ
イル名を格納し、オブジェクトモジュール名情報812
には翻訳して作成されたオブジェクトモジュール名称を
格納する。813には、翻訳環境識別子情報814のア
ドレスを格納する。
イル名を格納し、オブジェクトモジュール名情報812
には翻訳して作成されたオブジェクトモジュール名称を
格納する。813には、翻訳環境識別子情報814のア
ドレスを格納する。
翻訳環境識別子情報814には、上記ソースファイル内
に格納されたソースモジュールを翻訳する際に指定した
翻訳オプション情報である翻訳環境識別子821(第3
図)を格納する。オブジェクトファイル名情報815に
は、上記ソースファイルを上記翻訳環境識別子814で
翻訳して作成されたオブジェクトモジュールを格納して
いるオブジェクトファイル名称を格納する。さらに、デ
バッグ情報ファイル名情報816にはデバッグ用情報を
格納しているファイル名称を格納する。
に格納されたソースモジュールを翻訳する際に指定した
翻訳オプション情報である翻訳環境識別子821(第3
図)を格納する。オブジェクトファイル名情報815に
は、上記ソースファイルを上記翻訳環境識別子814で
翻訳して作成されたオブジェクトモジュールを格納して
いるオブジェクトファイル名称を格納する。さらに、デ
バッグ情報ファイル名情報816にはデバッグ用情報を
格納しているファイル名称を格納する。
また、同一ソースファイルが複数の翻訳環境識別子で翻
訳されている場合には、最終フィールド817に次の翻
訳環境識別子情報のアドレスを格納する。
訳されている場合には、最終フィールド817に次の翻
訳環境識別子情報のアドレスを格納する。
ステップ310では、すべての翻訳候補ソースファイル
について、翻訳情報管理データ810に登録されている
ソースファイル名811を検索し、一致するソースファ
イルが登録されているか調べる。同一ソースファイル名
が存在しない翻訳候補ソースファイルは翻訳対象ソース
ファイルとする。
について、翻訳情報管理データ810に登録されている
ソースファイル名811を検索し、一致するソースファ
イルが登録されているか調べる。同一ソースファイル名
が存在しない翻訳候補ソースファイルは翻訳対象ソース
ファイルとする。
存在する場合には、ステップ210で設定した翻訳環境
識別子と翻訳環境識別子814とが一致するか調べる。
識別子と翻訳環境識別子814とが一致するか調べる。
一致しない場合には翻訳対象ソースファイルとする。こ
こで翻訳対象ソースファイルに決定したソースファイル
名は翻訳部400に渡される。
こで翻訳対象ソースファイルに決定したソースファイル
名は翻訳部400に渡される。
ステップ311では、上記ステップにて翻訳対象ソース
ファイルが存在したかを判定し、翻訳対象があれば翻訳
処理400部のステップ410に進み、翻訳対象がなけ
れば結合対象選択部500のステップ510に進む。
ファイルが存在したかを判定し、翻訳対象があれば翻訳
処理400部のステップ410に進み、翻訳対象がなけ
れば結合対象選択部500のステップ510に進む。
翻訳部400は、翻訳対象選択部300で設定された翻
訳対象ソースファイル名と、動作環境設定部200で設
定された、このソースファイルの翻訳環境識別子とを入
力し、翻訳処理を行ってオブジェクトモジュールを作成
する。このオブジェクトモジュールはファイル管理登録
部700によリオブジェクトファイル910に出力され
る。さらに、環境管理ファイル800内の翻訳情報管理
データ810の更新処理を行う。
訳対象ソースファイル名と、動作環境設定部200で設
定された、このソースファイルの翻訳環境識別子とを入
力し、翻訳処理を行ってオブジェクトモジュールを作成
する。このオブジェクトモジュールはファイル管理登録
部700によリオブジェクトファイル910に出力され
る。さらに、環境管理ファイル800内の翻訳情報管理
データ810の更新処理を行う。
ステップ410では、ソースファイル900から翻訳対
象ソースファイルを読み込み、翻訳環境識別子に示され
た翻訳オプションに従い、翻訳処理を行う。翻訳結果で
あるオブジェクトモジュールは、ファイル管理登録部7
00によってオブジェクトファイル910に出力する。
象ソースファイルを読み込み、翻訳環境識別子に示され
た翻訳オプションに従い、翻訳処理を行う。翻訳結果で
あるオブジェクトモジュールは、ファイル管理登録部7
00によってオブジェクトファイル910に出力する。
ステップ411では、翻訳情報管理データ810の更新
処理を行う。ここでの更新処理は2つの場合に分けられ
る。
処理を行う。ここでの更新処理は2つの場合に分けられ
る。
第1の場合は、翻訳ソースファイルが翻訳情報管理デー
タ810に登録されていない場合である。
タ810に登録されていない場合である。
この場合には、第2図に示したデータ格納形式に従い、
翻訳情報管理データを新たに作成し、環境管理ファイル
800に格納する。
翻訳情報管理データを新たに作成し、環境管理ファイル
800に格納する。
第2の場合は、翻訳ソースファイル名は翻訳情報管理デ
ータ810に存在するが、翻訳環境識別子が一致しない
場合である。この場合は、新たに814〜817からな
るフィールド情報を作成する。このとき、813に格納
されていたポインタは新フィールド817に格納し、8
13には新翻訳環境識別子情報へのポインタを格納する
。
ータ810に存在するが、翻訳環境識別子が一致しない
場合である。この場合は、新たに814〜817からな
るフィールド情報を作成する。このとき、813に格納
されていたポインタは新フィールド817に格納し、8
13には新翻訳環境識別子情報へのポインタを格納する
。
以上、ステップ210〜411までによりユーザニーズ
を満たすロードモジュールを作成するために必要な特定
ニーズ用オブジェクトファイル名が決定する。
を満たすロードモジュールを作成するために必要な特定
ニーズ用オブジェクトファイル名が決定する。
結合対象選択部500は、環境管理ファイル800内の
結合情報管理データ830からユーザニーズを満たすロ
ードモジュールを選択するか、あるいは適合するロード
モジュールが存在しない場合には、ロードモジュールを
作成するために結合対象オブジェクトファイル名の決定
を行う。
結合情報管理データ830からユーザニーズを満たすロ
ードモジュールを選択するか、あるいは適合するロード
モジュールが存在しない場合には、ロードモジュールを
作成するために結合対象オブジェクトファイル名の決定
を行う。
ステップ510では、翻訳対象選択部300のステップ
311の判定で翻訳対象ソースファイルが無かった場合
に回部300からユーザニーズを満たす翻訳環境識別子
を有するオブジェクトファイル名を入力し、環境管理フ
ァイル800内の結合情報管理データ830内に登録さ
れたロードモジュールに対して上記オブジェクトファイ
ルを結合して作成されたロードモジュールを格納してい
るロードファイルを検索する。
311の判定で翻訳対象ソースファイルが無かった場合
に回部300からユーザニーズを満たす翻訳環境識別子
を有するオブジェクトファイル名を入力し、環境管理フ
ァイル800内の結合情報管理データ830内に登録さ
れたロードモジュールに対して上記オブジェクトファイ
ルを結合して作成されたロードモジュールを格納してい
るロードファイルを検索する。
結合情報管理データは第4図に示すが如きデータ格納形
式を有している。ロードモジュール名情報831にはロ
ードモジュール名称を格納する。
式を有している。ロードモジュール名情報831にはロ
ードモジュール名称を格納する。
さらにロードモジュール情報として動作種別833、ロ
ードファイル名834.結合環境識別子835゜特定ニ
ーズ用オブジェクトファイル名情報へのポインタ836
をリスト形式で保持する。
ードファイル名834.結合環境識別子835゜特定ニ
ーズ用オブジェクトファイル名情報へのポインタ836
をリスト形式で保持する。
また、第6図は、通常実行用のロードモジュールを作成
するための結合対象オブジェクトファイル名の一覧をリ
スト形式で示している。
するための結合対象オブジェクトファイル名の一覧をリ
スト形式で示している。
動作種別833は、ロードモジュールの種別が通常実行
用、デバッグ用、性能チューニング用であるかを示す。
用、デバッグ用、性能チューニング用であるかを示す。
この種別を設けることにより、たとえば、ユーザニーズ
がデバッグであるときには種別がデバッグ用のロードフ
ァイルについてのみ検索対象にすればよく、検索処理を
高速化することができる。ロードファイル名情報834
には、ロードモジュールが格納されているファイル名を
格納する。結合識別子情報835には上記ロードファイ
ルの作成時に指定された結合環境識別子841を格納す
る。特定ニーズ用オブジェクトファイル名情報838に
は本ロードモジュール作成時に結合され、かつ第6図に
格納された通常実行用オブジェクトファイルとは異なる
特定ニーズ用オブジェクトファイル名を格納する。
がデバッグであるときには種別がデバッグ用のロードフ
ァイルについてのみ検索対象にすればよく、検索処理を
高速化することができる。ロードファイル名情報834
には、ロードモジュールが格納されているファイル名を
格納する。結合識別子情報835には上記ロードファイ
ルの作成時に指定された結合環境識別子841を格納す
る。特定ニーズ用オブジェクトファイル名情報838に
は本ロードモジュール作成時に結合され、かつ第6図に
格納された通常実行用オブジェクトファイルとは異なる
特定ニーズ用オブジェクトファイル名を格納する。
上記ステップ510において、種別833と結合環境識
別子835が一致し、かつ入力された特定ニーズ用オブ
ジェクトファイル名が838で示されたファイル名と全
て一致するかをすべてのロードファイルについて検索す
る。
別子835が一致し、かつ入力された特定ニーズ用オブ
ジェクトファイル名が838で示されたファイル名と全
て一致するかをすべてのロードファイルについて検索す
る。
ステップ511では、上記検索の結果を判定し、一致す
るロードファイルが存在した場合にはロードファイル名
834を出力し、全ての動作を終了する。一致するロー
ドファイルが存在しない場合にはステップ512に進む
。
るロードファイルが存在した場合にはロードファイル名
834を出力し、全ての動作を終了する。一致するロー
ドファイルが存在しない場合にはステップ512に進む
。
ステップ512では、ユーザニーズを満たすために結合
する必要のある特定ニーズ用オブジェクトファイル名と
、環境管理ファイル800内結合対象管理データ850
のオブジェクトファイル名リスト851とを入力し、結
合順を前者ファイルの後、後者ファイルとしてこれをス
テップ610に渡す。
する必要のある特定ニーズ用オブジェクトファイル名と
、環境管理ファイル800内結合対象管理データ850
のオブジェクトファイル名リスト851とを入力し、結
合順を前者ファイルの後、後者ファイルとしてこれをス
テップ610に渡す。
結合処理600では、上記順番に従い、ステップ610
で結合処理を行い、ロードモジュールを作成する。ファ
イル管理登録部700はこれをロードファイル920に
出力する。また、環境管理ファイル800に対して第4
図に示した結合情報管理データ830を更新する。
で結合処理を行い、ロードモジュールを作成する。ファ
イル管理登録部700はこれをロードファイル920に
出力する。また、環境管理ファイル800に対して第4
図に示した結合情報管理データ830を更新する。
以上の実施例によれば、ユーザニーズに対応して再翻訳
する必要のあるソースファイルと翻訳、結合時のオプシ
ョンや必要な作業ファイルなどの動作環境をシステムが
決定することができ、その結果、コンパイラとリンカを
順次起動することにより必要なロードモジュールを自動
的に作成することができる。しかも、オブジェクトモジ
ュールとロードモジュールを翻訳情報や結合情報ととも
に管理することにより、再翻訳や再結合の必要がない場
合には、これを行わないように制御することができる。
する必要のあるソースファイルと翻訳、結合時のオプシ
ョンや必要な作業ファイルなどの動作環境をシステムが
決定することができ、その結果、コンパイラとリンカを
順次起動することにより必要なロードモジュールを自動
的に作成することができる。しかも、オブジェクトモジ
ュールとロードモジュールを翻訳情報や結合情報ととも
に管理することにより、再翻訳や再結合の必要がない場
合には、これを行わないように制御することができる。
本発明によれば、ユーザニーズに応じて翻訳時オプショ
ンが決定されるため、ユーザがオプションの種類やその
意味内容を知らなくても自動的に必要な翻訳処理を行う
ことができる。
ンが決定されるため、ユーザがオプションの種類やその
意味内容を知らなくても自動的に必要な翻訳処理を行う
ことができる。
また、ユーザニーズを満たすロードモジュールを作成す
るために結合するオブジェクトファイルが自動的に決定
され、結合が行われるため、結合時のユーザ作業が不要
になる。
るために結合するオブジェクトファイルが自動的に決定
され、結合が行われるため、結合時のユーザ作業が不要
になる。
さらに、オブジェクトモジュールとこのときに指定され
た翻訳オプションを関連付けて管理することにより、ユ
ーザニーズに対応して対象ソースファイルを再翻訳する
必要があるかを判定することができる。その結果、同一
翻訳オプションで翻訳されたオブジェクトモジュールが
すでに存在すれば、これを再利用し無駄な翻訳処理を省
くことができる。
た翻訳オプションを関連付けて管理することにより、ユ
ーザニーズに対応して対象ソースファイルを再翻訳する
必要があるかを判定することができる。その結果、同一
翻訳オプションで翻訳されたオブジェクトモジュールが
すでに存在すれば、これを再利用し無駄な翻訳処理を省
くことができる。
また、ロードモジュールとこれに結合されているオブジ
ェクトファイルとの関係を保持することにより、再結合
してロードモジュールを作成する必要があるかを判定す
ることができる。その結果、結合すべきオブジェクトフ
ァイルから作成されたロードモジュールがすでに存在す
れば、これを再利用し無駄な結合処理も省くことができ
る。
ェクトファイルとの関係を保持することにより、再結合
してロードモジュールを作成する必要があるかを判定す
ることができる。その結果、結合すべきオブジェクトフ
ァイルから作成されたロードモジュールがすでに存在す
れば、これを再利用し無駄な結合処理も省くことができ
る。
第1図は本発明の一実施例の全体構成図、第2図はソー
スファイルとオブジェクトファイルとの関係を管理する
翻訳情報管理データのデータ形式図、第3図は翻訳環境
管理データのデータ形式図、第4図は結合情報管理デー
タのデータ形式図、第5図は結合環境管理データのデー
タ形式図、第6図は結合対象管理データのデータ形式図
、第7図はプログラミング支援システムの動作のフロー
チャートである。 100・・・プログラム支援システム、200・・・動
作環境設定部、300・・・翻訳対象選択部、400・
・・翻訳部、500・・・結合対象選択部、600・・
・結合部、700・・・ファイル管理登録部、8oo・
・・環境管理ファイル、810・・・翻訳情報管理デー
タ。
スファイルとオブジェクトファイルとの関係を管理する
翻訳情報管理データのデータ形式図、第3図は翻訳環境
管理データのデータ形式図、第4図は結合情報管理デー
タのデータ形式図、第5図は結合環境管理データのデー
タ形式図、第6図は結合対象管理データのデータ形式図
、第7図はプログラミング支援システムの動作のフロー
チャートである。 100・・・プログラム支援システム、200・・・動
作環境設定部、300・・・翻訳対象選択部、400・
・・翻訳部、500・・・結合対象選択部、600・・
・結合部、700・・・ファイル管理登録部、8oo・
・・環境管理ファイル、810・・・翻訳情報管理デー
タ。
Claims (1)
- 【特許請求の範囲】 1、プログラムが複数モジュールから構成され、その中
の複数のモジュールに特定の動作をさせるため対象ソー
スモジュールを翻訳しオブジェクトモジュールを作成し
た後、結合してロードモジュールを作成する方法におい
て、該特定動作対象ソースファイル名称と動作を指定さ
れた時に、その要求動作を満たすロードモジュールを作
成し実行するために必要な翻訳時オプション、結合時オ
プション、実行時オプション、作業ファイルなどの動作
環境を決定し、翻訳・結合を順次行い、ロードモジュー
ルを作成するプログラム自動翻訳結合方法。 2、ソースファイルを翻訳した結果作成されるオブジェ
クトモジュールの管理情報において、該オブジェクトモ
ジュールが格納されているオブジェクトファイル名称と
ともにデバッグ情報ファイル名称、翻訳環境情報として
翻訳時のオプションとを用いるプログラム自動翻訳結合
方法。 3、請求項2記載のオブジェクトモジュールを管理する
方法において、オブジェクトモジュール名称が同一でも
動作環境情報が異なる場合には、これらを区別して管理
するプログラム自動翻訳結合方法。 4、請求項1記載のオブジェクトモジュール間を結合す
る方法において、同一ソースファイルに対して翻訳環境
情報が異なる複数のオブジェクトファイルが存在する場
合、オブジェクトファイル対応に保持される翻訳環境情
報を参照して特定動作対象オブジェクトファイルを選択
し、これら以外の通常動作するオブジェクトモジュール
との間で結合をとるプログラム自動翻訳結合方法。 5、請求項1の翻訳方法において、翻訳対象ソースモジ
ュールが格納されているソースファイル名と翻訳環境情
報が決定したときに、既にこのソースファイルを翻訳し
て得られたオブジェクトモジュールが格納されているオ
ブジェクトファイルの管理情報の内容を調べ、同一翻訳
環境情報を持つものが存在すれば再翻訳を行わないプロ
グラム自動翻訳結合方法。 6、請求項1で生成されるロードモジュールを管理する
方法において、ロードモジュールの動作種別として最終
実行用、デバッグ用、性能チューニング用の3種を用い
てロードモジュールの実行により実現される機能を識別
できるプログラム選択方法。 7、請求項6のロードモジュール管理方法において、結
合されるオブジェクトファイルの翻訳環境情報からロー
ドモジュールの動作種別を決定するプログラム選択方法
。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2337117A JPH04205422A (ja) | 1990-11-30 | 1990-11-30 | プログラム自動翻訳結合及び選択方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2337117A JPH04205422A (ja) | 1990-11-30 | 1990-11-30 | プログラム自動翻訳結合及び選択方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04205422A true JPH04205422A (ja) | 1992-07-27 |
Family
ID=18305599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2337117A Pending JPH04205422A (ja) | 1990-11-30 | 1990-11-30 | プログラム自動翻訳結合及び選択方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04205422A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009098963A (ja) * | 2007-10-17 | 2009-05-07 | Mitsubishi Electric Corp | モジュール自動生成システム |
JP2018032082A (ja) * | 2016-08-22 | 2018-03-01 | 富士通株式会社 | プログラム生成プログラム、プログラム生成方法、プログラム生成装置及びコンパイルプログラム |
-
1990
- 1990-11-30 JP JP2337117A patent/JPH04205422A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009098963A (ja) * | 2007-10-17 | 2009-05-07 | Mitsubishi Electric Corp | モジュール自動生成システム |
JP2018032082A (ja) * | 2016-08-22 | 2018-03-01 | 富士通株式会社 | プログラム生成プログラム、プログラム生成方法、プログラム生成装置及びコンパイルプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7571427B2 (en) | Methods for comparing versions of a program | |
JP3875999B2 (ja) | 総称データ交換環境において動的データ参照を提供するシステムと方法 | |
US5339435A (en) | Heterogenous software configuration management apparatus | |
JP2927180B2 (ja) | 情報処理プログラムのデバッグ方法およびそのためのデバッガ | |
JP2644728B2 (ja) | データディクショナリ・ディレクトリシステム | |
US20010042241A1 (en) | Apparatus and method for executing program using just-in time-compiler system | |
JPH06149554A (ja) | プログラム動作仕様自動合成装置及びその方法 | |
US6233732B1 (en) | Compiling system using intermediate codes to store a plurality of values | |
JPH04205422A (ja) | プログラム自動翻訳結合及び選択方法 | |
CN113608795B (zh) | 一种通用的VxWorks下启动并加载应用程序方法 | |
JPH01193944A (ja) | テスト項目自動選択システム | |
JP3461185B2 (ja) | ロードモジュールへのソースコード行番号登録方法および装置 | |
JP2000122876A (ja) | 情報処理装置 | |
JP2614341B2 (ja) | 計算機システムの新旧交換時における移行システム | |
JP3637606B2 (ja) | データ処理装置 | |
JPH11110250A (ja) | ソフトウェア実行モード切替方法 | |
CN115809087A (zh) | 版本更新方法、装置、设备及存储介质 | |
CN115587148A (zh) | 适用于低代码平台的无业务含义数据访问方法及装置 | |
JPH02310627A (ja) | 言語処理プログラミングにおけるオブジェクトプログラムのリンク方法 | |
JPH0128414B2 (ja) | ||
JPH07121414A (ja) | ファイルシステム | |
Kneen | A Users Guide to the IBM Linkage Editor | |
JPH02178845A (ja) | データベース操作言語のプリコンパイル方式 | |
JPH11184680A (ja) | ファイル編集方法及びこれを用いたプログラム開発方法及び装置並びに記憶媒体 | |
Sabelfeld | Procedure implementation in the multi-language translator |