JPH02245934A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH02245934A
JPH02245934A JP6831889A JP6831889A JPH02245934A JP H02245934 A JPH02245934 A JP H02245934A JP 6831889 A JP6831889 A JP 6831889A JP 6831889 A JP6831889 A JP 6831889A JP H02245934 A JPH02245934 A JP H02245934A
Authority
JP
Japan
Prior art keywords
program
conditional
translation
object program
source
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
JP6831889A
Other languages
English (en)
Inventor
Sakae Tanabe
田辺 栄
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP6831889A priority Critical patent/JPH02245934A/ja
Publication of JPH02245934A publication Critical patent/JPH02245934A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 データ処理装置に関し、 翻訳時間の削減、ソースプログラムおよびオブジェクト
プログラムの管理の簡略化、ディスク使用量の低減を図
ることのできるデータ処理装置を提供することを目的と
し、 条件付きアセンブル又は条件付きコンパイルによって翻
訳を制御される条件翻訳部を有する複数のソースプログ
ラムに対し、各ソースプログラム毎に条件翻訳部を翻訳
して条件付きオブジェクトプログラムを生成するととも
に、該条件翻訳部以外の部分を翻訳して主オブジェクト
プログラムを生成する翻訳手段と、翻訳手段によって翻
訳された条件付きオブジェクトプログラムおよび主オブ
ジェクトプログラムを所定の目標システムに従って結合
させるための条件を指示する指示手段と、指示手段から
の条件指示に基づき前記条件付きオブジェクトプログラ
ムおよび主オブジェクトプログラムを結合させて目標シ
ステムに対応するロードモジュールを生成する結合手段
と、を備えるように構成する。
〔産業上の利用分野〕
本発明は、データ処理装置に係り、詳しくは、コンピュ
ータシステムにおけるロードモジュールの生成を効率良
く行うデータ処理装置に関する。
コンピュータにおいてシステムを考える際に大きな助け
となるものの1つが、モジュール化である。この考え方
は、ソフトウェア開発における構造プログラミング(s
tructured programing)と同様な
手法である。すなわち、1つのシステムを開発しようと
するときに、システムの果たすべき仕事をいくつかの機
能部分(モジュール)にあらかじめ分割し、この機能モ
ジュールを組み立てることによってシステムを構築する
方法である。本発明では、このような機能モジュールを
ロードモジュールと称している。
各機能モジュールは、可能な限り個々のモジュールごと
に開発されデパックされた後、組合わされてシステム機
能の確認が行われる。各機能モジュールのインタフェー
スの標準化を進めておけば、−度デバックされた機能モ
ジュールは、システムの構成要素として他の多くのシス
テムで使用することが可能になる。このような機能モジ
ュールの組合わせでシステムを構成する方法をモジュー
ル化されたシステム構成と呼ぶ。モジュール化されたシ
ステム構成とすることにより、システム開発の期間を短
縮し、拡張性と柔軟性に冨んだシステムを構築すること
が可能になる。
一方、近年ソフトウェアの開発効率向上のため、効率的
なソースプログラムおよびオブジェクトプログラムの作
成、翻訳および結合時間の短縮、作成物の管理の簡略化
、またディスク容量の少ないパーソナル・コンピュータ
等においてはディスク使用の効率化等が要求されている
。このため、ソースプログラムおよびオブジェクトプロ
グラムの共通化を図り、翻訳および結合処理等のロード
モジュール作成に費やす時間を最小限に抑える必要があ
る。
なお、ソースプログラムとは高級言語で記述されたプロ
グラムであり、オブジェクトプログラムとは機械語によ
る言語処理プログラムによって得る機械語のプログラム
をいう、また、翻訳とは前段階で作成されたソースプロ
グラムを、言語処理プログラムを使用して、再配置可能
なモジュール形式または絶対番地形式のオブジェクトプ
ログラムに変換する作業である。通常、言語処理プログ
ラムは、その作業の最終段階でリストファイルとオブジ
ェクトファイルを出力する。リストファイルは、翻訳し
た結果を考察するために帳票として印刷できる形式を持
ったファイルでディスクの中に収容しておき、後に任意
の時点で出力する。この中の情報としては記述文、マシ
ンコード、エラー文、デパック文などが含まれる。一方
、オブジェクトファイルは、実際のマシンコードが再配
置可能な、または全体番地形式で収容されている。
〔従来の技術〕
従来の演算処理装置においてソースプログラムおよびオ
ブジェクトプログラム(以下、単にオブジェクトという
)の共通化の手段として機能の一部のみが異なるソフト
ウェアを作成する場合には、条件付きアセンブルおよび
条件付きコンパイルを用いて条件を指定して再翻訳する
方法を取っている。なお、アセンブラとはアセンブリ言
語で記述されたソースプログラムを翻訳し、オブジェク
トプログラムを出力する言語処理プログラムであり、コ
ンパイラとは入力されたあるプログラミング言語を処理
し、目的とするプログラミング言語であるアセンブリ言
語か機械語を出力する言語処理プログラムをいう。また
、条件付きアセンブル(c。
nditional assemble)とは、同じソ
ースプログラムのアセンブル条件を、ハードウェア構成
などの変更に適応させる機能であり、ある条件を評価し
、成立する場合にのみソースプログラムのある区間のア
センブルを実行し、不一致の場合はスキップする0条件
付きコンパイルも同様である。したがって、上記従来の
方法では、必要なオブジェクト数の回数だけ、翻訳が行
われる。
のロードモジュールを作成できるようにすることにより
、翻訳時間の削減、ソースプログラムおよびオブジェク
トの管理の簡略化、ディスク使用量の低減を図ることの
できるデータ処理°装置を提供することを目的としてい
る。
〔発明が解決しようとする課題〕
しかしながら、このような従来のデータ処理装置にあっ
ては、ソースプログラムおよび大部分のオブジェクトの
共通化を図ることができるものの、機能の一部のみが異
なるロードモジュールを複数作成する場合に各ロードモ
ジュールで異なるオブジェクトを得るため、条件付アセ
ンブルなどを用い条件を指定して再翻訳をする必要があ
ることから、翻訳に多大の時間を費やさねばならなくな
って、オブジェクトの数が増え、管理に手間がかかり、
また、ディスク使用量も増大するという問題点があった
そこで本発明は、ソースプログラムを1回だけ翻訳すれ
ば、その後は結合処理を行うだけで目的〔課題を解決す
るための手段〕 本発明によるデータ処理装置は上記目的達成のため、そ
の基本概念図を第1図に示すように、条件付きアセンブ
ル又は条件付きコンパイルによって翻訳を制御される条
件翻訳部を有する複数のソースプログラムに対し、各ソ
ースプログラム毎に条件翻訳部を翻訳して条件付きオブ
ジェクトプログラムを生成するとともに、該条件翻訳部
以外の部分を翻訳して主オブジェクトプログラムを生成
する翻訳手段aと、翻訳手段aによって翻訳された条件
付きオブジェクトプログラムおよび主オブジェクトプロ
グラムを所定の目標システムに従って結合させるための
条件を指示する指示手段すと、指示手段すからの条件指
示に基づき前記条件付きオブジェクトプログラムおよび
主オブジェクトプログラムを結合させて目標システムに
対応するロードモジュールを生成する結合手段Cと、を
備えている。
〔作用〕
本発明では、条件翻訳部を含む各ソースプログラムが翻
訳手段により翻訳されて条件付きオブジェクトおよび主
オブジェクトが生成され、その後指示手段からの条件指
示に基づき結合手段によって所定の目標システムに対応
するように条件付きオブジェクトおよび主オブジェクト
が結合され、ロードモジュールが生成される。
したがって、1回ソースプログラムの翻訳を行い、主オ
ブジェクトおよび条件付きオブジェクトを生成しておけ
ば、条件に応じた結合処理を行うだけでよ(、従来に比
べるとロードモジュール生成に要する時間が短縮し、ソ
ースプログラムおよびオブジェクトの管理の簡略化ディ
スク使用量の低減が図られる。
(実施例〕 以下、本発明を図面に基づいて説明する。
第2〜5図は本発明に係るデータ処理装置の一実施例を
示す図である。第2図はデータ処理装置のハード構成図
であり、この図において、lはコンピュータ本体で内部
にCPU、メモリ等を有し、ソースプログラムの翻訳、
結合等の必要な演算処理を行って所定の目標システム(
例えば、各種の工業用の制御、画像処理など)に対応す
るロードモジエールを作成する。なお、コンピュータ本
体lの内部メモリには上記翻訳処理に必要な情報が取り
込まれ、演算処理はCPUによって実行される。2はキ
ーボードであり、翻訳および結合処理を行うための指示
をコンピュータ本体1に入力するものである。3は表示
装置で、例えばCRTを含んで構成され、コンピュータ
本体1の処理内容を外部に表示する。4は補助記憶装置
であり、ソースプログラム、オブジェクトプログラムお
よびロードモジュールを保存する。
コンピュータ本体1は内部のCPUにより後述の第4図
に示す、フローチャートに従って処理を行うが、この処
理の具体的な概念は第3図のように示され、先に第3図
から説明する。
第3図において、Sl〜Snはロードモジュールを生成
するために必要なソースプログラムであり、条件翻訳部
■〜nを含んでいる。ここで、条件翻訳部とは、条件付
きアセンブル又は条件付きコンパイルによって翻訳を制
御するコード部のことである* T 1 ” T nは
CPUによって実行される機能により具現化される翻訳
装置(翻訳手段に相当)であり、翻訳装置TI−Tnは
ソースプログラム81〜Snをそれぞれ翻訳し、主オブ
ジェクト01〜Onおよび条件付きオブジェクト01〜
Cnを生成する。主オブジェク1−Of〜Onは条件翻
訳部以外の翻訳結果であり、条件付きオブジェクト01
〜Cnは条件翻訳部の翻訳結果である。また、C1−■
〜Cn−nは条件翻訳部■〜nのそれぞれの主オブジェ
クトである。には結合指示を与える指示手段であり、所
定の目標システムに対応したロードモジュールとなるよ
うにはキーボード2からの指示に従って結合装置(結合
手段に相当)Lに条件を指示する。結合装置りは指示手
段Kからの条件指示に基づき主オブジェクト01〜On
および条件付きオブジェクト01〜Cnのうち必要なも
のを結合させてロードモジュールLMを生成する。
第4図はロードモジュール生成処理のプログラムを示す
フローチャートであり、PL=Pnはプログラムの各ス
テップを示し、また同図中左側ははキーボード2の入力
処理、右側はCPUが行う処理に区分している。
まず、P、で翻訳装置T1〜TnにソースプログラムS
1を入力し、翻訳を指示する。これによ、Ptで翻訳処
理が行われ、P、で主オブジェクト01および条件付き
オブジェクトC1が結合装置りに出力される。次いで、
P4で全ソースプログラム81〜Snの翻訳を終了した
か否かを判別し、最初はソースプログラムS1の翻訳を
終了したのみであるからP、に戻ってソースプログラム
82以下の翻訳を順次実行する。そして、全ソースプロ
グラム51xSnの翻訳を終了すると、次いでP、でキ
ーボード2から入力指示に基づき指示手段Kにより結合
装置りに対して主オブジェクト01〜Onおよび条件付
きオブジェクトを結合させるための条件指示を与える。
これにより、結合装置りでは、まずP6で条件指示があ
るか否かが判別され、条件指示があるときにはP7で主
オブジェクト01〜Onおよび条件指示に該当する条件
付きオブジェクトC1−Cnが結合される。一方、条件
指示がないときはP、で主オブジェク)01〜Onのみ
が結合され、Pw又はpHを経ると、P9で結合装置り
からロードモジュールが出力される0次いで、他にロー
ドモジュールを作成する場合にはpsに戻って同様の処
理を繰り返し、作成しない場合には処理を終了する。
上記フローチャートにより実行される処理の具体例、は
第5図(a)〜(d)のように示される。
同図に示すものは機能が異なる3つのロードモジュール
LMI〜LM3の生成過程であり、特に第5図(a)は
翻訳処理を、第5図(b)(C)(d)は結合処理を示
している。また、ソースプログラム5L=SnはC言語
で記述され、同言語中の■〜nは条件付きコンパイルで
処理される文である。特に条件翻訳部に相当する。例え
ば、条件翻訳部のうち■はソースプログラムS1の「A
」が、■およびnはrBJが、■rCJが定義された場
合に翻訳される。なお、翻訳装置T1〜Tnおよび結合
装置りは共にいわゆるO8上で動作するプログラムによ
って実現される。
所望のロードモジュールを生成するには、まず、翻訳装
置T1〜TnによってソースプログラムSl〜Snを翻
訳し、主オブジェクト01〜Onおよび条件付きオブジ
ェクト01〜Cnを生成する。
このとき、主オブジェクト01〜Onは条件翻訳部■〜
n以外の部分の主オブジェクトであり、条件付きオブジ
ェクトC1−■〜Cn−nは条件翻訳部■〜nのオブジ
ェクトである。次に、結合処理を行う。条件翻訳部■を
含み、■、■、nを含まないロードモジュールLMIを
生成する場合、第5図(b)中のリンクLNIに示すよ
うに、口−ドモジュールを構成する全土オブジェクト0
1〜Onおよびロードモジュールに条件翻訳部■の機能
を含ませるために指示手段Kから与えられる条件指示O
Pとして条件Aを結合装置L1に入力する。これにより
、条件翻訳部■のオブジェクトであるC1−■が主オブ
ジェクト01と結合される。全ての主オブジェクト01
〜Onが結合されてロードモジュールLMIが生成され
る0次に、条件翻訳部■、■およびnを含み、■を含ま
ないロードモジュールLM2を生成するには、第5図に
(C)に示すように、すでに生成された主オブジェクト
01〜On sおよび条件付きオブジェクト01〜Cn
を使用してリンクLN2に示す結合処理を行えばよい、
リンクLN2の結合処理は条件指示OPとして条件B、
Cを結合装置L2に与え、条件翻訳部■のオブジェクト
C1−■および条件翻訳部■のオブジェクトC2−■を
主オブジェクトと結合させてロードモジュールLM2を
生成する。
また、条件翻訳部■、■、■、nの何れも含まないロー
ドモジュールLM3を生成するには第5図(d)に示す
ように、リンクLN3において条件指示を与えずに結合
処理を行う。
このように、本実施例では一回翻訳を行い主オブジェク
トおよび条件付きオブジェクトを生成しておけば、その
後は結合処理だけでロードモジュールを生成できる。し
たがって、条件付きコンパイル等のように翻訳からやり
直すことなく、翻訳時間の削減、ソースプログラムおよ
びオブジェクトの管理の簡略化、ディスク使用量の低減
を図ることができ、コンピュータシステム上でのソフト
ウェア開発の効率向上に寄与するところが大きい。
なお、上記実施例ではソースプログラムSl〜SnにC
言語を用いているが、これに限らず、他のプログラミン
グ言語でもよい。また、ソースプログラムは条件翻訳部
のみでもよく、あるいは条件翻訳部を含んでいなくても
よい。
さらに、ソースプログラム中に条件指示OPを記述して
おき、結合時に条件指示OPが指定されない場合に採用
してもよい。また、翻訳装置と結合装置を別々に設けて
いるが、1つのプログラムとしてもよい。
第5図(a)〜(d)はそのロードモジュール生成の具
体例を示すブロック図である。
〔発明の効果〕
本発明によれば、ソースプログラムについて条件翻訳部
をオブジェクトプログラムとしておくことで、その後は
結合処理のみで目的のロードモジュールを生成すること
ができ、1回の翻訳で済み、翻訳時間の削減、ソースプ
ログラムおよびオブジェクトプログラムの管理の簡略化
、ディスク使用量の低減を図ることができる。
【図面の簡単な説明】
第1図は本発明の基本概念図、 第2図〜5図は本発明に係るデータ処理装置の一実施例
を示す図であり、 第2図はそのハード構成図、 第3図はその実現機能を示すブロック図、第4図はその
ロードモジュール生成のフローチャート、 1・・・・・・コンピュータ本体、 2・・・・・・キーボード、 3・・・・・・表示装置、 4・・・・・・補助記憶装置、 Tl”−Tn・・・・・・翻訳装置、 LSLl−L3・・・・・・結合装置、K・・・・・・
指示手段。 S1〜Sn・・・・・・ソースプログラム、01〜On
・・・・・・主オブジェクトプログラム、C1〜Cn・
・・・・・条件付きオブジェクトプログラム、 LM、LMI NLM3・・・・・・ロードモジュール
、OP・・・・・・条件指示。

Claims (1)

  1. 【特許請求の範囲】 a)条件付きアセンブル又は条件付きコンパイルによっ
    て翻訳を制御される条件翻訳部を有する複数のソースプ
    ログラムに対し、各ソースプログラム毎に条件翻訳部を
    翻訳して条件付きオブジェクトプログラムを生成すると
    ともに、該条件翻訳部以外の部分を翻訳して主オブジェ
    クトプログラムを生成する翻訳手段と、b)翻訳手段に
    よって翻訳された条件付きオブジェクトプログラムおよ
    び主オブジェクトプログラムを所定の目標システムに従
    って結合させるための条件を指示する指示手段と、 c)指示手段からの条件指示に基づき前記条件付きオブ
    ジェクトプログラムおよび主オブジェクトプログラムを
    結合させて目標システムに対応するロードモジュールを
    生成する結合手段と、 を備えたことを特徴とするデータ処理装置。
JP6831889A 1989-03-20 1989-03-20 データ処理装置 Pending JPH02245934A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6831889A JPH02245934A (ja) 1989-03-20 1989-03-20 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6831889A JPH02245934A (ja) 1989-03-20 1989-03-20 データ処理装置

Publications (1)

Publication Number Publication Date
JPH02245934A true JPH02245934A (ja) 1990-10-01

Family

ID=13370353

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6831889A Pending JPH02245934A (ja) 1989-03-20 1989-03-20 データ処理装置

Country Status (1)

Country Link
JP (1) JPH02245934A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016143377A (ja) * 2015-02-05 2016-08-08 株式会社デンソー 並列化コンパイル方法、並列化コンパイラ、及び、電子装置
JP2016143378A (ja) * 2015-02-05 2016-08-08 株式会社デンソー 並列化コンパイル方法、並列化コンパイラ、及び、電子装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016143377A (ja) * 2015-02-05 2016-08-08 株式会社デンソー 並列化コンパイル方法、並列化コンパイラ、及び、電子装置
JP2016143378A (ja) * 2015-02-05 2016-08-08 株式会社デンソー 並列化コンパイル方法、並列化コンパイラ、及び、電子装置

Similar Documents

Publication Publication Date Title
US6233733B1 (en) Method for generating a Java bytecode data flow graph
US4672532A (en) Software/hardware integration control system
JPH08202545A (ja) ターゲット言語コードを生成するためのオブジェクト指向システム及びその方法
US6467082B1 (en) Methods and apparatus for simulating external linkage points and control transfers in source translation systems
US5812854A (en) Mechanism for integrating user-defined instructions with compiler-generated instructions and for optimizing the integrated instruction stream
JPH08339304A (ja) 機械独立コードを含むプラットフォーム標準オブジェクト・ファイルを生成する方法および装置
JPH02238527A (ja) 目標コンピュータ・システム、異なるコンピュータ・システム間でプログラムを実行する方法
JPH02238528A (ja) コンピュータ・プログラムの第一バージョン処理方法
CA2081473A1 (en) Analyzing inductive expressions in a multilanguage optimizing compiler
CN112506517B (zh) 一种裸机系统级激励交叉编译系统及编译方法
JPH02245934A (ja) データ処理装置
GB2127188A (en) Software/hardware integration control system
WO2010029812A1 (ja) マルチコアにおけるプログラミングシステム、その方法及びそのプログラム
JPS5922140A (ja) 対話型コンパイル方式
JP2007226358A (ja) アプリケーション生成装置、アプリケーション生成方法、およびアプリケーション生成プログラム
JPS62205431A (ja) 分岐命令処理方式
JP2977642B2 (ja) Fortranコンパイル処理装置
JPH08137684A (ja) プログラム転送方法、プログラム開発システムならびにプログラム開発装置およびプログラム実行装置
JPH11154093A (ja) プログラムコンパイラ及びコンパイラ用プログラムを記録した記録媒体
JPH02253443A (ja) プログラム生成方法
JPH01267731A (ja) セグメントオーバレイプログラムの作成方式
JP3041919B2 (ja) プログラム結合処理装置
JP2001014185A (ja) コンパイルおよびデバッグ方法
KR100293932B1 (ko) 소프트웨어 코드인 이미지의 후처리 방법
JPS58169637A (ja) コンパイル処理方式