JPS63180129A - プログラム結合方式 - Google Patents

プログラム結合方式

Info

Publication number
JPS63180129A
JPS63180129A JP1189587A JP1189587A JPS63180129A JP S63180129 A JPS63180129 A JP S63180129A JP 1189587 A JP1189587 A JP 1189587A JP 1189587 A JP1189587 A JP 1189587A JP S63180129 A JPS63180129 A JP S63180129A
Authority
JP
Japan
Prior art keywords
program
language
area
processing
data
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
JP1189587A
Other languages
English (en)
Inventor
Masahiro Osada
長田 昌弘
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 JP1189587A priority Critical patent/JPS63180129A/ja
Publication of JPS63180129A publication Critical patent/JPS63180129A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概 要〕 プログラム結合方式であって、第1言語プログラムと第
2言語プログラムの一方を実行中に他方を呼び出す場合
、処理領域設定手段で呼出し先言語のプログラム実行に
必要な処理領域を設定することにより、異種言語の相互
の呼出しが可能となる。
〔産業上の利用分野〕
本発明は、プログラム結合方式に関し、特に、異なるリ
ンケージ規約を持った異種言語プログラム間で相互に呼
出しを行なうときのプログラム結合方式に関するもので
ある。
〔従来の技術〕
一般に、ソフトウェア製品を開発する場合、その内容を
機能ごとに分割する。そして、その分割された機能ごと
に、機能に応じたプログラム言語で記述したソースプロ
グラムを作成して、それらを結合する。
〔発明が解決しようとする問題点〕
ところで、上述した従来方式にあっては、機能ごとに異
種言語で記述したプログラムを結合するため、それぞれ
のプログラム言語が同一のリンケージ規約で制御の受は
渡しを行なう必要があり、異なるリンケージ規約を持っ
た異種言語間では、相互に呼出しができないという問題
点があった。
本発明は、このような点にかんがみて創作されたもので
あり、異種言語の相互の呼出しが可能になるようにした
プログラム結合方式を提供することを目的としている。
〔問題点を解決するための手段〕
第1図は、本発明のプログラム結合方式の原理ブロック
図である。
図において、第1言語処理手段111は、第1言語プロ
グラムを実行する。
第2言語処理手段131は、第2言語プログラムを実行
する。
処理領域設定手段121は、第1言語処理手段111と
第2言語処理手段131の相互の呼出しを行なうときの
呼出し先の処理領域を設定する。
従って、全体として、処理領域設定手段121によって
呼出し先の処理領域を設定した後に、呼出し先のプログ
ラムを実行するように構成されている。
〔作 用〕
第1言語処理手段111は第1言語プログラムを、処理
領域設定手段121は第2言語プログラムを実行する。
第1言語処理手段111及び第2言語処理手段131の
一方から他方を呼び出すときは、処理領域設定手段12
1で呼出し先の処理領域を設定した後に、呼出し先のプ
ログラムを実行する。
本発明にあっては、処理領域設定手段121で呼出し先
言語のプログラム実行に必要な処理領域を設定すること
により、異種言語の相互の呼出しが可能となる。
〔実施例〕
以下、図面に基づいて本発明の実施例について詳細に説
明する。
第2図は、本発明の一実施例におけるプログラム結合方
式の構成を示す。
■、    と 1゛との、・  、 ここで、本発明の実施例と第1図との対応関係を示して
おく。
第1言語処理手段111は、コボルプログラム211、
制御プログラム245.データ領域241、制御部25
0に相当する。
第2言語処理手段131は、C言語プログラム231、
制御プログラム245.データ領域241、制御部25
0に相当する。
処理領域設定手段121は、仲介プログラム221、制
御プログラム245.データ領域241゜制御部250
に相当する。
↓−実庭■Ω盪底 以上のような対応関係があるものとして、以下本発明の
実施例について説明する。
第2図において、制御部250には、周辺機器を接続す
るための周辺制御部280とプログラムやデータを格納
するメモリ210がつながれている。更に、周辺制御部
280にはプログラムの実行結果やリストを出力するプ
リンタ281.プログラムや動作指示などの情報を入力
するキーボード283.情報を表示するディスプレイ2
85゜プログラムやデータを格納する外部記憶装置28
7が接続されている。
制御部250には、制御を行なうためのレジスタ群25
3が含まれている。また、メモリ210には、既に外部
記憶装置287からロードされたIII ?Iプログラ
ム245.コボルプログラム211゜0言語プログラム
231.仲介プログラム221が格納されており、それ
らの実行に必要なデータ領域241が存在する。
l−実施撚Ω亘立 第3図は、実施例の動作説明図である。また、第4図は
実施例の処理領域作成の説明図である。
C言語プログラムのリンケージ規約はコボルプログラム
のリンケージ規約に加え、更に、以下の2つの条件を満
たしていなければならないものとする。
+l)  レジスタ群253内のレジスタ3 (第4図
中のR3)は、スタック管理テーブルの先頭アドレスを
示し、スタック管理テーブルの3ワード目はスタック領
域の先頭アドレスを、4ワード目はスタック領域の最終
アドレスを示している。
(2)  レジスタ退避領域(レジスタ2(R2)は先
頭アドレスを示す)とパラメータ領域(レジスタ1(R
1)は先頭アドレスを示す)は、スタック領域内にあり
、更に、レジスタ退避領域とパラメータ領域は連続した
領域になければならない。
いま、コボルプログラム211の実行中にC言語プログ
ラム231の呼出しを行なう場合を考える。
以下、第2図〜第4図を参照する。
最初に、制御部250は、メモリ210に格納された制
御プログラム245を実行する。そして、制御プログラ
ム245は、コボルプログラム211からC言語プログ
ラム231を呼び出すための初期処理を行なうために仲
介プログラム221を呼び出す。
制御部250は仲介プログラム221を実行して(ステ
ップ311)、C言語プログラム231の実行に必要な
スタック領域をメモリ210のデータ領域24°1内に
確保する(ステップ312)。
次に、スタック管理テーブルを作成し、ステップ312
で確保したスタック領域の先頭アドレスを管理テーブル
の3ワード目に、最終アドレスを管理テーブルの4ワー
ド目に格納する(ステップ313)。
そして、仲介プログラム221から制御プログラム24
5に復帰する(ステップ314)。
次に、制御プログラム245はコボルプログラム211
を呼び出す。制御部250は、コボルプログラム211
を実行して(ステップ315)、途中でC言語プログラ
ム231の呼出しが生じると、仲介プログラム221に
C言語プログラム231の呼出しを依頼する(ステップ
316)。
制御部250は仲介プログラム221を実行すると、最
初に、レジスタ3にスタック管理テーブルの先頭アドレ
スを設定する(ステップ317)。
次に、レジスタ1にパラメータ領域の先頭アドレスを、
レジスタ3にレジスタ退避領域の先頭アドレスを設定す
る(ステップ318)。尚、C言語のリンケージ規約に
基づいて、スタック領域の最後の所定バイト数(例えば
32バイト)をパラメータ領域とし、それに続く所定バ
イト数(例えば64バイト)をレジスタ退避領域として
、レジスタ1.レジスタ3を設定する。
そして、制御部250は、コボルプログラム211を実
行したときのパラメータ領域のデータをステップ318
で設定したパラメータ領域に転送する(ステップ319
)。これによって、コボルプログラム211で使用して
いたデータをC言語プログラム231でも使用すること
ができる。
次に、制御部250は、C言語プログラム231を実行
する(ステップ320)。
C言語プログラム231の実行が終わると、仲介プログ
ラム221にコボルプログラム211への復帰の依頼を
行なう(ステップ321)。C言語プログラム231の
リンケージ規約にコボルプログラム211のリンケージ
規約は含まれているので、C言語プログラム231で使
用したレジスタ類とデータ(レジスタ退避領域、パラメ
ータ領域)は、そのまま使うことができる。従って、仲
介プログラム221は、そのままコボルプログラム21
1に復帰して(ステップ322)、更に、コボルプログ
ラム211での処理が終わると、323に復帰して(ス
テップ323)、全体の処理が終了する。
■、    の とめ このように、最初に仲介プログラム221を実行してス
タック領域とスタック管理テーブルを確保し、コボルプ
ログラム211からC言語プログラム231を呼び出す
ときに仲介プログラム221を実行してC言語プログラ
ム231に必要なレジスタ類をセットして、C言語プロ
グラム231を実行するための準備をした後に、C言語
プログラム231を実行する。
従って、リンケージ規約の異なる異種言語の呼出しが可
能となる。
■ 、     B  の  ・  ノ F 。
なお、上述した本発明の実施例にあっては、コボルプロ
グラムとC言語プログラムの相互の呼出しを考えたが、
リンケージ規約の異なる言語であれば、フォートランと
C言語、PL/IとC言語などの組み合わせにも適用で
きる。
また、実施例では、C言語のリンケージ規約はコボルの
リンケージ規約に2つの条件を加えたものとしたが、全
く異なるリンケージ規約を持った言語間でも、仲介プロ
グラム221で呼出し先のレジスタ類やデータ領域等を
作成することによって適用できる。
更に、「1.実施例と第1図との対応関係」において、
第1図と本発明との対応関係を説明しておいたが、これ
に限られることはなく、各種の変形態様があることは当
業者であれば容易に推考できるであろう。
〔発明の効果〕
上述したように、本発明によれば、処理領域設定手段で
呼出し先言語のプログラム実行に必要な処理領域を設定
して、第1言語プログラムと第2言語プログラムの一方
を実行中に他方を呼び出すことができるので、実用的に
は極めて有用である。
【図面の簡単な説明】
第1図は本発明のプログラム結合方式の原理ブロック図
、 第2図は本発明の一実施例によるプログラム結合方式の
構成ブロック図、 第3図は本発明の実施例の動作説明図、第4図は本発明
の実施例の処理領域作成図である。 図において、 111は第1言語処理手段、 121は処理領域設定手段、 131は第2言語処理手段、 210はメモリ、 211はコボルプログラム、 221は仲介プログラム、 231はC言語プログラム、 241はデータ領域、 245は制御プログラム、 250は制御部、 253はレジスタ群、 280は周辺制御部、 281はプリンタ、 283はキーボード、 285はディスプレイ、 287は外部記憶装置である。 本廻日月C旅坤フ゛o7り図 第1図 第2図 第3図 史奥勿の処理碍週諧明図 第4図

Claims (3)

    【特許請求の範囲】
  1. (1)第1言語プログラムを実行する第1言語処理手段
    (111)と、 第2言語プログラムを実行する第2言語処理手段(13
    1)と、 第1言語処理手段(111)と第2言語処理手段(13
    1)の相互の呼出しを行なうときの呼出し先の処理領域
    を設定する処理領域設定手段(121)と、 を備え、処理領域設定手段(121)によって呼出し先
    の処理領域を設定した後に、呼出し先のプログラムを実
    行するように構成したことを特徴とするプログラム結合
    方式。
  2. (2)前記処理領域は、プログラム実行に必要なレジス
    タ及びレジスタに格納するデータであることを特徴とす
    る特許請求の範囲第1項記載のプログラム結合方式。
  3. (3)前記処理領域は、プログラム実行に必要なデータ
    領域及びデータ領域に格納するデータであることを特徴
    とする特許請求の範囲第1項記載のプログラム結合方式
JP1189587A 1987-01-21 1987-01-21 プログラム結合方式 Pending JPS63180129A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1189587A JPS63180129A (ja) 1987-01-21 1987-01-21 プログラム結合方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1189587A JPS63180129A (ja) 1987-01-21 1987-01-21 プログラム結合方式

Publications (1)

Publication Number Publication Date
JPS63180129A true JPS63180129A (ja) 1988-07-25

Family

ID=11790462

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1189587A Pending JPS63180129A (ja) 1987-01-21 1987-01-21 プログラム結合方式

Country Status (1)

Country Link
JP (1) JPS63180129A (ja)

Similar Documents

Publication Publication Date Title
JPH02201653A (ja) アプリケーシヨン・プログラム・インターフエース方法
JPH05282260A (ja) コンピユータネツトワーク及びその操作方法
JPH03257624A (ja) 画面言語方式
JPS63180129A (ja) プログラム結合方式
JPH0656581B2 (ja) オブジェクト指向プログラミング方式
JP2003122410A (ja) コントローラの演算実行方法
JP2663600B2 (ja) 制御表再配置処理方式
JP2000242524A (ja) プロセッサのソフトウエアシミュレータ
JPH04174028A (ja) プログラム内ローダによる制御記憶オーバレイ方式
JPS63249206A (ja) プログラマブルコントロ−ラ
JP2852402B2 (ja) プログラム開発装置
JPH02214942A (ja) 親ロードモジュールへの制御移行機能の作成方式
JPH04182726A (ja) デモンストレーション実行方式
JPH0421028A (ja) レジスタ管理方法
JPS6041133A (ja) 制御プログラム修正方式
JPH05334249A (ja) 対話処理システムにおけるカタログのネスティング管理方式
JPH02205143A (ja) パケット交換網情報の管理方法
JPH0367357A (ja) マルチcpuシステム
JPS62209671A (ja) 図面管理装置
JPH02190904A (ja) 推論制御方法
JPH0263481A (ja) 放射線治療計画装置
JPS60214039A (ja) デ−タ処理装置
JPH01128135A (ja) スタック制御方式
JPH07319717A (ja) 情報処理装置のプログラム切替方法
JPH0325530A (ja) モジュール間結合実行制御方式