JPS63245727A - Program execution system - Google Patents

Program execution system

Info

Publication number
JPS63245727A
JPS63245727A JP7996087A JP7996087A JPS63245727A JP S63245727 A JPS63245727 A JP S63245727A JP 7996087 A JP7996087 A JP 7996087A JP 7996087 A JP7996087 A JP 7996087A JP S63245727 A JPS63245727 A JP S63245727A
Authority
JP
Japan
Prior art keywords
compilation unit
computer
compiled
compilation
heterogeneous
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
JP7996087A
Other languages
Japanese (ja)
Inventor
Yuji Suzuki
祐二 鈴木
Ichirou Ishida
石田 壹朗
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
NEC Solution Innovators Ltd
Original Assignee
NEC Corp
NEC Solution Innovators 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 NEC Corp, NEC Solution Innovators Ltd filed Critical NEC Corp
Priority to JP7996087A priority Critical patent/JPS63245727A/en
Publication of JPS63245727A publication Critical patent/JPS63245727A/en
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

PURPOSE:To omit time required for compiling a source program by linking a compiling unit in a self-computer with that of a computer of a different kind to execute a program. CONSTITUTION:A different compiling unit library 5 is connected to a compiling unit library 6 through a compiling unit internal structure converting means 1. Different compiling units 8, 9 are converted and utilized as converted different compiling units 10, 11 for linking. A load module 14 is formed by the linked compiling units and stored in a load module library 7. Consequently, time to be consumed for compiling a source program can be omitted, and even if the source program for the compiling unit is lost, the program can be executed only by the compiling unit.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はプログラム実行方式に関し、特にプログラムを
実行しようとする電子計算機(以下、百計算機という)
でコンパイルされたコンパイルユニットと百計算機とは
異なる機種の電子計算機(以下、異機種計算機という)
でコンパイルされたコンパイルユニットとをリンクして
実行可能とするためのプログラム実行方式に関する。
[Detailed Description of the Invention] [Industrial Application Field] The present invention relates to a program execution method, and particularly to an electronic computer (hereinafter referred to as a hundred computers) that attempts to execute a program.
An electronic computer of a different model from the compilation unit compiled with 100 computers (hereinafter referred to as a different model computer)
This book relates to a program execution method for linking with a compilation unit compiled by .

〔従来の技術〕[Conventional technology]

従来、この種のプログラム実行方式は、コンパイルユニ
ットをリンクするために要求される機械語の互換性が両
コンパイルユニットにあったとしても、さらに要求され
るコンパイルユニットの内部構造の形式やスタックフレ
ームの形式で代表されるコンパイルユニット間のコール
メカニズムの同一性が両者にないことから実現すること
ができなかった。
Conventionally, in this type of program execution method, even if both compilation units have the compatibility of the machine language required to link the compilation units, the format of the internal structure of the compilation unit and the stack frame required are This could not be realized because the call mechanism between the compilation units represented by the format was not the same in both.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

上述したように、コンパイルユニットの内部構造の形式
やコンパイルユニット間のコールメカニズムが異なる異
機種計算機でコンパイルされたコンパイルユニットと百
計算機でコンパイルされたコンパイルユニットとをリン
クして実行させることはできなかった。
As mentioned above, it is not possible to link and execute a compilation unit compiled on a heterogeneous computer and a compilation unit compiled on a computer that differ in the format of the internal structure of the compilation unit and the call mechanism between the compilation units. Ta.

そのため、異機種計算機でコンパイルされたコンパイル
ユニットと百計算機でコンパイルされたコンパイルユニ
ットとからロードモジュールを生成するためには前者の
原始プログラムを再び百計算機でコンパイルし直さなけ
ればならないので、原始プログラムの本数か多いときに
はそのコンパイル時間に膨大な時間を要するという欠点
がある。
Therefore, in order to generate a load module from a compilation unit compiled on a different type of computer and a compilation unit compiled on a 100-computer, the former source program must be recompiled on the 100-computer, so the source program must be The disadvantage is that when the number of files is large, it takes an enormous amount of time to compile.

また、その原始プログラムを紛失しているような場合に
は、原始プログラムを再び作り直さなければならないと
いう欠点がある。
Another drawback is that if the source program is lost, the source program must be recreated.

本発明の目的は、上述の点に鑑み、百計算機でコンパイ
ルされたコンパイルユニットと’14 機ftti 計
算機でコンパイルされたコンパイルユニットとをリンク
して実行することを可能とし、両コンパイルユニットの
内容を有するロードモジュールを生成するために異機種
計算機でコンパイルされたコ ′ンパイルユニソトの原
始プログラムを改めて百計算機でコンパイルする必要が
なくなり、異機種計算機でコンパイルされたコンパイル
ユニットの原始プログラムを紛失している場合でもコン
パイルユニットがあれば実行が可能となるプログラム実
行方式を捉供することにある。
In view of the above points, an object of the present invention is to make it possible to link and execute a compilation unit compiled on a 100-meter computer and a compilation unit compiled on a '14 machine ftti computer, and to enable the contents of both compilation units to be linked and executed. If you no longer need to compile a compile unit source program that was compiled on a different type of computer again on a different type of computer in order to generate a load module with a different type of computer, and you have lost the compilation unit source program that was compiled on a different type of computer. However, the purpose is to provide a program execution method that can be executed if there is a compilation unit.

〔問題点を解決するだめの手段〕[Failure to solve the problem]

本発明のプログラム実行方式は、複数のコンパイルユニ
ットをリンクして実行する電子計算機システムにおいて
、異機種計算機でコンパイルされたコンパイルユニット
の内部構造の形式を百計算機でコンパイルされたコンパ
イルユニットの内部構造の形式に変換するコンパイルユ
ニット内部構造変換手段と、百計算機でコンパイルされ
たコンパイルユニットと前記コンパイルユニット内部構
造変換手段により内部構造の形式が変換された異機種計
xmでコンパイルされたコンパイルユニットとを含んで
生成されたロードモジュールの実行において百計算機で
コンパイルされたコンパイルユニットが異機種計算機で
コンパイルされたコンパイルユニットをコールするとき
および百計算機でコンパイルされたコンパイルユニット
カラ’!4機種計Xmでコンパイルされたコンパイルユ
ニットにリターンするときに百計算機でコンパイルされ
たコンパイルユニット間のコールメカニズムから異im
 計X機でコンパイルされたコンパイルユニット間のコ
ールメカニズムに切り替え異機種計算機テコンパイルさ
れたコンパイルユニットカ自計、算機でコンパイルされ
たコンパイルユニットをコールするときおよび異機種計
算機でコンパイルされたコンパイルユニットから百計算
機でコンパイルされたコンパイルユニットにリターンす
るときに異機種計算機でコンパイルされたコンパイルユ
ニット間のコールメカニズムから百計算機でコンパイル
されたコンパイルユニット間のコールメカニズムに切り
替えるコールメカニズム切替え手段と、このコールメカ
ニズム切替え手段を百計算機でコンパイルされたコンパ
イルユニットと異機種計算機でコンパイルされたコンパ
イルユニットとの間にリンクする異機種コンパイルユニ
ット間結合手段とを肴する。
The program execution method of the present invention, in an electronic computer system in which a plurality of compilation units are linked and executed, converts the format of the internal structure of a compilation unit compiled on a heterogeneous computer into the format of the internal structure of a compilation unit compiled on a computer of a different type. a compile unit internal structure converter for converting into a format, a compile unit compiled by a computer, and a compile unit compiled by a heterogeneous computer xm whose internal structure format is converted by the compile unit internal structure converter. When a compilation unit compiled on a hundred computers calls a compilation unit compiled on a heterogeneous computer in the execution of a load module generated with a '! When returning to a compilation unit compiled on a total of 4 machines, there is a difference in the call mechanism between compilation units compiled on a hundred computers.
Switching to the call mechanism between compilation units compiled on a total of X machines, when calling a compilation unit compiled on a heterogeneous computer, and when calling a compilation unit compiled on a computer, and a compilation unit compiled on a heterogeneous computer a call mechanism switching means for switching from a call mechanism between compilation units compiled on different types of computers to a call mechanism between compilation units compiled on a hundred computers when returning from a compilation unit compiled on a hundred computers; The call mechanism switching means is provided with heterogeneous compilation unit coupling means for linking between a compilation unit compiled on a computer and a compilation unit compiled on a heterogeneous computer.

〔作用〕[Effect]

本発明のプログラム実行方式では、コンパイルユニット
内部構造変換手段が異機種計算機でコンパイルされたコ
ンパイルユニットの内部構造の形式を1計算機でコンパ
イルされたコンパイルユニットの内部構造の形式に変換
し、コールメカニズム切替え手段が1計算機でコンパイ
ルされたコンパイルユニットとコンパイルユニット内部
構造変換手段により内部構造の形式が変換された異機種
計算機でコンパイルされたコンパイルユニットとを含ん
で生成されたロードモジュールの実行において1計算機
でコンパイルさhたコンパイルユニットが異機種計算機
でコンパイルされたコンパイルユニットをコールすると
きおよび1計算機でコンパイルされたコンパイルユニッ
トから異機種計算機でコンパイルされたコンパイルユニ
ットにリターンするときに1計算機でコンパイルされた
コンパイルユニット間のコールメカニズムから異機種計
算機でコンパイルされたコンパイルユニット間のコール
メカニズムに切り替え異機種計算機でコンパイルされた
コンパイルユニットが1計算機でコンパイルされたコン
パイルユニットをコールするときおよび異機種計算機で
コンパイルされたコンパイルユニットから1計算機でコ
ンパイルされたコンパイルユニットにリターンするとき
に異i 種it 算mでコンパイルされたコンパイルユ
ニット間のコールメカニズムから1計算機でコンパイル
されたコンパイルユニット間のコールメカニズムに切り
替え、異機種コンパイルユニット間結合手段がコールメ
カニズム切替え手段を1計算機でコンパイルされたコン
パイルユニットと異機種計算機でコンパイルされたコン
パイルユニットとの間にリンクする。
In the program execution method of the present invention, the compilation unit internal structure conversion means converts the format of the internal structure of the compilation unit compiled on different types of computers into the format of the internal structure of the compilation unit compiled on one computer, and switches the call mechanism. In executing a load module generated by means including a compilation unit compiled by one computer and a compilation unit compiled by a heterogeneous computer whose internal structure format has been converted by a compilation unit internal structure conversion means, by one computer. When a compiled compilation unit calls a compilation unit compiled on a heterogeneous computer and when a compilation unit compiled on one computer returns to a compilation unit compiled on a heterogeneous computer. Switching from a call mechanism between compilation units to a call mechanism between compilation units compiled on a heterogeneous computer When a compilation unit compiled on a heterogeneous computer calls a compilation unit compiled on one computer and when compiled on a heterogeneous computer When returning from a compiled compilation unit to a compilation unit compiled by one computer, switch from a call mechanism between compilation units compiled by different types to a call mechanism between compilation units compiled by one computer, A linking means between different types of compilation units links the call mechanism switching means between a compilation unit compiled by one computer and a compilation unit compiled by a different type of computer.

〔実施例〕〔Example〕

次に、本発明について図面を参照して詳細に説明する。 Next, the present invention will be explained in detail with reference to the drawings.

第1図は、本発明のプログラム実行方式の一実施例の構
成を示すブロック図である。本実施例のプログラム実行
方式は、異機種コンパイルユニットライブラリ5に格納
されている異機種計算機でコンパイルされたコンパイル
ユニットの内部構造の形式をリンクプログラム4が扱え
るように1計算機でコンパイルされたコンパイルユニッ
トの内部構造の形式と同一になるよう変換してコンパイ
ルユニットライブラリ6に格納するコンパイルユニット
内部構造変換手段1と、コンパイルユニットライブラリ
6に格納されている複数のコンパイルユニット(異機種
計算機でコンパイルされたコンパイルユニットで内部構
造の形式だけ1計算機でコンパイルされたコンパイルユ
ニットの形式に変換されたコンパイルユニットと、1計
算機でコンパイルされたコンパイルユニットとの両′方
が存在する)をリンクし1つのロードモジュール14と
してロードモジュールライブラリ7に格納するリンクプ
ログラム4と、異機種コンパイルユニットライブラリ5
と、コンパイルユニットライブラリ6と、ロードモジュ
ールライブラリ7とから構成されている。
FIG. 1 is a block diagram showing the configuration of an embodiment of the program execution method of the present invention. The program execution method of this embodiment is a compilation unit compiled on one computer so that the link program 4 can handle the internal structure format of the compilation unit compiled on a heterogeneous computer stored in the heterogeneous compilation unit library 5. A compile unit internal structure converting means 1 converts the format of the internal structure to be the same as that of the compile unit library 6 and stores it in the compile unit library 6. A compilation unit whose internal structure is converted into the format of a compilation unit compiled on one computer, and a compilation unit compiled on one computer exist) are linked into one load module. 14, a link program 4 stored in the load module library 7, and a heterogeneous compilation unit library 5.
, a compile unit library 6, and a load module library 7.

リンクプログラム4は、コンパイルユニットライブラリ
6に格納されている複数のコンパイルユニットをリンク
するときに1計算機でコンパイル、 されたコンパイル
ユニットから異機種計算機でコンパイルされたコンパイ
ルユニットがコールされている場合(または、その逆の
場合)にコールメカニズム切替手段3を1計算機でコン
パイルされたコンパイルユニットと異機種計算機でコン
パイルされたコンパイルユニットとの間にリンクする異
機種コンパイルユニット間結合手段2を含んで構成され
ている。
The link program 4 is used when linking multiple compilation units stored in the compilation unit library 6, if a compilation unit compiled on a different computer is called from a compilation unit compiled on one computer (or , and vice versa), the system includes a heterogeneous compilation unit linking means 2 for linking a call mechanism switching means 3 between a compilation unit compiled by one computer and a compilation unit compiled by a heterogeneous computer. ing.

異機種コンパイルユニットライブラリ5は、異機種計算
機でコンパイルされたコンパイルユニットである異機種
コンパイルユニットA8および異機種コンパイルユニッ
トB9(異機種コンパイルユニットA8と異機種コンパ
イルユニットB9とをコンパイルした電子計算機は同一
である)を格納している。
The heterogeneous compilation unit library 5 includes a heterogeneous compilation unit A8 and a heterogeneous compilation unit B9, which are compilation units compiled on a heterogeneous computer (the computer that compiled the heterogeneous compilation unit A8 and the heterogeneous compilation unit B9 is the same). ) is stored.

コンパイルユニットライブラリ6は、異機種コンパイル
ユニットA8および異機種コンパイルユニットB9が内
部構造の形式についてだけ自計算機中コンパイルされた
コンパイルユニットの内部構造の形式に変換されたコン
パイルユニットである変換異機種コンパイル年月日1−
AIOおよび変換異機種コンパイルユニットBllと、
自計算機でコンパイルされたコンパイルユニットである
自コンハイルユニソトC12および自コンパイルユニッ
トD13とを格納している。
The compilation unit library 6 is a compilation unit in which the heterogeneous compilation unit A8 and the heterogeneous compilation unit B9 are converted into the internal structure format of the compilation unit compiled in the own computer only for the internal structure format. Month/day 1-
AIO and conversion heterogeneous compilation unit Bll;
It stores a compile unit compiled by the own computer, a compile unit C12 and a compile unit D13.

ロードモジュールライブラリ7は、複数のコンパイルユ
ニットがリンクプログラム4によりリンクされたロード
モジュール14を格納している。
The load module library 7 stores a load module 14 in which a plurality of compilation units are linked by the link program 4.

ロードモジュール14は、変換異機種コンパイルユニッ
トAIO,i換異1種コンパイルユニットB11、  
自コンパイルユニットC12および自コンパイルユニッ
トD13に対応するリンクされたコンパイルユニットで
あるリンク異機種コンパイルユニットA17.リンク異
機種コンパイルユニットB18゜リンク自コンパイルユ
ニットC15およびリンク自コンパイルユニットD16
と、ロードモジュール14が実行されてリンク自コンパ
イルユニットC15またはリンク自コンパイルユニット
D16がリンク異機種コンパイルユニットA17または
リンク異機種コンパイルユニットB 18ヲコールしり
場合(マタは、その逆の場合)に自動的に動作してコー
ルされたコンパイルユニットのコールメカニズムに適合
した形式のスタックフレームの生成およびペースレジス
タの設定を行った後にコールされたコンパイルユニット
に制御を移す(リターンするときにはリターンすべきコ
ンパイルユニットのコールメカニズムに適合した形式の
スタックフレームの生成およびペースレジスタの設定を
行った後にリターンすべきコンパイルユニットにIJ?
Iヲ戻t)コールメカニズ切替手段3とがリンクされて
構成されている。
The load module 14 includes a conversion heterogeneous compilation unit AIO, an i conversion type 1 compilation unit B11,
A linked heterogeneous compilation unit A17. which is a linked compilation unit corresponding to the self-compilation unit C12 and the self-compilation unit D13. Link heterogeneous compilation unit B18 Link self-compilation unit C15 and link self-compilation unit D16
When the load module 14 is executed and the link self-compilation unit C15 or the link self-compilation unit D16 calls the link heterogeneous compilation unit A17 or the link heterogeneous compilation unit B 18 (or vice versa), After generating a stack frame in a format compatible with the calling mechanism of the called compilation unit and setting the pace register, control is transferred to the called compilation unit (when returning, the call of the compilation unit that should return) IJ? in the compilation unit to return to after generating a stack frame in a format compatible with the mechanism and setting the pace register.
Return to I) Call mechanism switching means 3 are linked to each other.

第2図を参照すると、異機種計算機でコンパイルされた
コンパイルユニットの内部構造の形式である異機種コン
パイルユニット内部構造形式2工ば、コンパイルユニッ
ト名、コンパイル年月日、スタックの大きさ、パラメー
タの数、データ部の大きさ、データ部、コード部の大き
さおよびコード部をその順に有して構成されている。
Referring to Figure 2, the Heterogeneous Compilation Unit Internal Structure Format 2, which is the format of the internal structure of a compilation unit compiled on a heterogeneous computer, contains the compilation unit name, compilation date, stack size, and parameters. It is configured by having the number, the size of the data part, the data part, the size of the code part, and the code part in that order.

自計xm−eコンパイルされたコンパイルユニットの内
部構造の形式である自コンパイルユニット内部構造形式
22ば、コンパイル年月日、コンパイルユニット名、パ
ラメータの数、スタックの大きさ、コード部の大きさ、
コード部、データ部の大きさおよびデータ部をその順に
有して構成されている。
The self-compilation unit internal structure format 22, which is the format of the internal structure of the self-compiled xm-e compiled compilation unit, includes the compilation date, compilation unit name, number of parameters, stack size, code section size,
It is configured to have a code section, a data section size, and a data section in that order.

第3図を参照すると、コンパイルユニットA(異機種コ
ンパイル年月日)A8.変換異機種コンパイルユニット
A10.リンク異機種コンパイルユニットA17を代表
してこのように呼ぶ。以下、他のコンパイルユニットに
ついても同様)、コンパイルユニットB、コンパイルユ
ニットCおよびコンパイルユニットDの間のコール関係
は、コンパイルユニットC中でコンパイルユニットDが
コールされ、コンパイルユニットD中でコンパイルユニ
ットAがコールされ、コンパイルユニットA中でコンパ
イルユニットBがコールされる関係となっている。
Referring to FIG. 3, compilation unit A (heterogeneous compilation date) A8. Conversion heterogeneous compilation unit A10. It is called like this to represent the link heterogeneous compilation unit A17. (Hereinafter, the same applies to other compilation units), the call relationship between compilation unit B, compilation unit C, and compilation unit D is that compilation unit D is called in compilation unit C, and compilation unit A is called in compilation unit D. The relationship is such that compile unit B is called in compile unit A.

第4図+alを参照すると、異機種計算機でコンパイル
されたコンパイルユニット間のコールメカニズムで使用
される異機種コンパイルユニットスタックフレーム形式
41は、1つ前のスタックフレームアドレス、スタック
フレームの大きさ、パラメータの大きさ、戻り番地、パ
ラメータおよびローカルデータをその順に有して構成さ
れている。異機種コンパイルユニットスタックフレーム
形式41のスタックフレームの先頭のアドレスは、ペー
スレジスタBOで管理されている。
Referring to Figure 4+al, the heterogeneous compilation unit stack frame format 41 used in the call mechanism between compilation units compiled on heterogeneous computers consists of the previous stack frame address, stack frame size, and parameters. It is composed of the size, return address, parameters, and local data in that order. The top address of the stack frame in the heterogeneous compilation unit stack frame format 41 is managed by the pace register BO.

第4図(blを参照すると、自計算機でコンパイルされ
たコンパイルユニット間のコールメカニズムで使用され
る自コンパイルユニットスタックフレーム形式42は、
1つ前のスタックフレームアドレス、ローカルデータの
大きさ、戻り番地、パラメータの大きさ、ローカルデー
タおよびパラメータをその順に有して構成されている。
Referring to FIG. 4 (bl), the self-compilation unit stack frame format 42 used in the call mechanism between compilation units compiled on the own computer is
It is composed of the previous stack frame address, local data size, return address, parameter size, local data, and parameters in that order.

自コンパイルユニットスタックフレーム形式42のスタ
ックフレームの先頭のアドレスは、ペースレジスタB1
で管理されている。
The start address of the stack frame in the self-compilation unit stack frame format 42 is the pace register B1.
It is managed by.

次に、このように構成された本実施例のプログラ6ム実
行方式の動作について説明する。なお、ここではコンパ
イルユニット内部構造変換手段1がアプリケーションプ
ログラムであり、異機種コンパイルユニット間結合手段
2がリンクプログラム4の一機能であり、コールメカニ
ズム切替え手段3がコールメカニズム切替えルーチンで
あるとして説明する。
Next, the operation of the program execution method of this embodiment configured as described above will be explained. Here, the explanation will be given assuming that the compile unit internal structure conversion means 1 is an application program, the inter-different type compilation unit coupling means 2 is a function of the link program 4, and the call mechanism switching means 3 is a call mechanism switching routine. .

異機種コンパイルユニッ)A8.異機種コンパイルユニ
ットB9.  自コンパイルユニットC12および自コ
ンパイルユニットD13をリンクして実行させるときに
は、まずコンパイルユニット内部構造変換手段1である
アプリケーションプログラムが実行されて異機種コンパ
イルユニットライプラIJ 5から異機種コンパイルユ
ニットA8および異機種コンパイルユニットB9が入力
され、それらの異機種コンパイルユニット内部構造形式
21が自コンパイルユニット内部構造形式22に第2図
の矢印で示すように変換され、変換異機種コンパイルユ
ニットAIOおよび変換異機種コンパイルユニットB1
1として自コンパイルユニットC12および自コンパイ
ルユニットD13が格納されているコンパイルユニット
ライブラリ6に出力される。
Heterogeneous compilation unit) A8. Heterogeneous compilation unit B9. When linking and executing the self-compilation unit C12 and the self-compilation unit D13, first the application program which is the compilation unit internal structure conversion means 1 is executed, and the heterogeneous compilation unit Lipra IJ 5 to the heterogeneous compilation unit A8 and the heterogeneous Compilation unit B9 is input, and the heterogeneous compilation unit internal structure format 21 is converted into the own compilation unit internal structure format 22 as shown by the arrow in FIG. 2, and the converted heterogeneous compilation unit AIO and the converted heterogeneous compilation unit B1
1 to the compilation unit library 6 in which the self-compilation unit C12 and the self-compilation unit D13 are stored.

次に、リンクプログラム4が実行され、コンパイルユニ
ットライブラリ6に格納されている変換異機種コンパイ
ルユニッ)AIO,変換異機種コンパイルユニットB1
1.自コンパイルユニットCI2および自コンパイルユ
ニットD13が第3図に示すコール関係に基づきリンク
され、ロードモジュール14が生成されてロードモジュ
ールライブラリ7に格納される。
Next, the link program 4 is executed, and the converted heterogeneous compilation unit (AIO) stored in the compilation unit library 6 and the converted heterogeneous compilation unit B1
1. The self-compilation unit CI2 and the self-compilation unit D13 are linked based on the call relationship shown in FIG. 3, and the load module 14 is generated and stored in the load module library 7.

ここで、リンク自コンパイルユニットC15からリンク
自コンパイルユニットD16へのコールおよびリンク異
機種コンパイルユニットA17からリンク異機種コンパ
イルユニットB18へのコールにおいては、それぞれ同
機種の電子計算機でコンパイルされたコンパイルユニッ
トをコールする関係なので直接的にリンクが行われる。
Here, in the call from the link self-compile unit C15 to the link self-compile unit D16 and the call from the link heterogeneous compile unit A17 to the link heterogeneous compile unit B18, compile units compiled on the same type of electronic computer are respectively used. Since it is a calling relationship, the link is done directly.

しかし、リンク自コンパイルユニットD16からリンク
異機種コンパイルユニットA17へのコールにおいては
両者のコールメカニズムの違いを解決するために、両者
の間にコールメカニズム切替え手段3であるコールメカ
ニズム切替えルーチンがリンクプログラム4の一機能で
ある異機種コンパイルユニット間結合手段2により挿入
されてリンクされる。
However, in the call from the link self-compilation unit D16 to the link heterogeneous compilation unit A17, in order to resolve the difference in the call mechanisms between the two, a call mechanism switching routine, which is the call mechanism switching means 3, is installed between the link program 4 and the link program 4. It is inserted and linked by the inter-different types of compilation unit coupling means 2, which is one of the functions of .

このようにして生成されたロードモジュール14の実行
にあたってリンク自コンパイルユニットD16のrCA
LL  AJが実行されると、自動的にコールメカニズ
ム切替えルーチン(コールメカニズム切替え手段3)に
制御が渡る。
When executing the load module 14 generated in this way, the rCA of the link self-compilation unit D16 is
When LL AJ is executed, control is automatically passed to the call mechanism switching routine (call mechanism switching means 3).

コールメカニズム切替え手段3は、コールすべきリンク
異機種コンパイルユニットA17が異機種計算機でコン
パイルされたコンパイルユニットであるということを判
断すると、スタックフレームの形式をそれまでの自コン
パイルユニットスタックフレーム形式42から異機種コ
ンパイルユニットスタックフレーム形式41に変換し、
それまでペースレジスタB1に記憶させていたスタ・7
クフレームの先頭のアドレスをペースレジスタBOに記
憶させてからリンク異機種コンパイルユニットA17に
制御を渡す。
When the call mechanism switching means 3 determines that the linked heterogeneous compilation unit A17 to be called is a compilation unit compiled on a heterogeneous computer, the call mechanism switching means 3 changes the stack frame format from the previous self-compilation unit stack frame format 42. Convert to heterogeneous compilation unit stack frame format 41,
Star 7 that had been stored in pace register B1 until then.
After storing the start address of the block frame in the pace register BO, control is passed to the link heterogeneous compile unit A17.

1に のように、異機種計算機でコンパイルされたコンパイル
ユニットどうしの間のコールメカニズムにおけるスタッ
クフレームの形式に変換されるので、制御が渡されたリ
ンク異機種コンパイルユニットA1?では正しい動作が
保証される。
1, the link heterogeneous compilation unit A1 to which control is passed is converted into the form of a stack frame in the call mechanism between compilation units compiled on a heterogeneous computer. correct operation is guaranteed.

〔発明の効果〕〔Effect of the invention〕

以上説明したように本発明は、1計算機でコンパイルさ
れたコンパイルユニットとコンパイルユニットの内部構
造やコンパイルユニット間のコールメカニズムが異なる
異機種計算機でコンパイルされたコンパイルユニットと
をリンクして実行することを可能とすることにより、電
子計算機システムのグレードアップ等でコンパイルユニ
ットが実行される電子計算機が変わった場合等でも以前
のコンパイルユニットがそのまま利用できるので改めて
原始プログラムをコンパイルするために費す時間が不要
となり、そのコンパイルユニットの原始プログラムを紛
失している場合でもコンパイルユニットさえあれば実行
が可能となるという効果がある。
As explained above, the present invention enables linking and execution of a compilation unit compiled on one computer and a compilation unit compiled on different types of computers with different internal structures of the compilation unit and call mechanisms between the compilation units. By making this possible, even if the computer on which the compilation unit is executed changes due to an upgrade of the computer system, the previous compilation unit can be used as is, so there is no need to spend time compiling the source program again. This has the effect that even if the source program of the compilation unit is lost, execution is possible as long as the compilation unit is available.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例の構成を示すブロック図、 第2図は異機種コンパイルユニット内部構造形式および
自コンパイルユニット内部構造形式を示す図、 第3図は第1図中のコンパイルユニットA、B。 CおよびDの間のコール関係を示す図、第4図(a)は
異機種コンパイルユニソトスタンクフレーム形式を示す
図、 第4図(illは自コンパイルユニソトスタンクフレー
ム形式を示す図である。 図において、 1・・・コンパイルユニット内部構造変換手段、2・・
・異機種コンパイルユニット間結合手段、3・・・コー
ルメカニズム切替手段、 4・・・リンクプログラム、 5・・・異機種コンパイルユニットライブラリ、6・・
・コンパイルユニットライブラリ、7・・・ロードモジ
ュールライブラリ、8・・・異機種コンパイルユニソI
・A 。 9・・・異機種コンパイルユニットB、10・・・変換
異機種コンパイルユニッ)A、11・・・変換異機種コ
ンパイルユニッ)B、12・・・自コンパイルユニット
C1 13・・・自コンパイルユニットD1 14・・・ロードモジュール、 15・・・リンク自コンパイルユニットC116・・・
リンク自コンパイルユニットD117・・・リンク異機
種コンパイルユニットA、18・・・リンク異機種コン
パイルユニットB121・・・異機種コンパイルユニッ
ト内部構造形式、 22・・・自コンパイルユニット内部構造形式、41・
・・異機種コンパイルユニソトスクソクフレーム形式、 42・・・自コンパイルユニットスタックフレーム形式
である。 ご−1=ぺ
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention, FIG. 2 is a diagram showing the internal structure format of a heterogeneous compilation unit and the internal structure format of the own compilation unit, and FIG. 3 is a diagram showing the compilation unit in FIG. 1. A, B. FIG. 4(a) is a diagram showing the call relationship between C and D. FIG. 4(a) is a diagram showing the heterogeneous compilation UniSotus tank frame format. FIG. In the figure, 1... compile unit internal structure conversion means, 2...
・Heterogeneous compilation unit coupling means, 3... Call mechanism switching means, 4... Link program, 5... Heterogeneous compilation unit library, 6...
- Compilation unit library, 7... Load module library, 8... Heterogeneous compilation Uniso I
・A. 9... Heterogeneous compilation unit B, 10... Conversion heterogeneous compilation unit) A, 11... Conversion heterogeneous compilation unit) B, 12... Self-compilation unit C1 13... Self-compilation unit D1 14...Load module, 15...Link self-compilation unit C116...
Link self-compilation unit D117... Link heterogeneous compilation unit A, 18... Link heterogeneous compilation unit B121... Heterogeneous compilation unit internal structure format, 22... Self-compilation unit internal structure format, 41.
...Heterogeneous compilation UnisotoSoku frame format, 42...Self compilation unit stack frame format. Go-1=Pe

Claims (1)

【特許請求の範囲】 複数のコンパイルユニットをリンクして実行する電子計
算機システムにおいて、 異機種計算機でコンパイルされたコンパイルユニットの
内部構造の形式を自計算機でコンパイルされたコンパイ
ルユニットの内部構造の形式に変換するコンパイルユニ
ット内部構造変換手段と、自計算機でコンパイルされた
コンパイルユニットと前記コンパイルユニット内部構造
変換手段により内部構造の形式が変換された異機種計算
機でコンパイルされたコンパイルユニットとを含んで生
成されたロードモジュールの実行において自計算機でコ
ンパイルされたコンパイルユニットが異機種計算機でコ
ンパイルされたコンパイルユニットをコールするときお
よび自計算機でコンパイルされたコンパイルユニットか
ら異機種計算機でコンパイルされたコンパイルユニット
にリターンするときに自計算機でコンパイルされたコン
パイルユニット間のコールメカニズムから異機種計算機
でコンパイルされたコンパイルユニット間のコールメカ
ニズムに切り替え異機種計算機でコンパイルされたコン
パイルユニットが自計算機でコンパイルされたコンパイ
ルユニットをコールするときおよび異機種計算機でコン
パイルされたコンパイルユニットから自計算機でコンパ
イルされたコンパイルユニットにリターンするときに異
機種計算機でコンパイルされたコンパイルユニット間の
コールメカニズムから自計算機でコンパイルされたコン
パイルユニット間のコールメカニズムに切り替えるコー
ルメカニズム切替え手段と、 このコールメカニズム切替え手段を自計算機でコンパイ
ルされたコンパイルユニットと異機種計算機でコンパイ
ルされたコンパイルユニットとの間にリンクする異機種
コンパイルユニット間結合手段と、 を有することを特徴とするプログラム実行方式。
[Claims] In an electronic computer system in which a plurality of compilation units are linked and executed, the format of the internal structure of the compilation unit compiled on a different type of computer is changed to the format of the internal structure of the compilation unit compiled on the own computer. A compilation unit is generated including a compilation unit internal structure conversion means to be converted, a compilation unit compiled on the own computer, and a compilation unit compiled on a heterogeneous computer whose internal structure format has been converted by the compilation unit internal structure conversion means. When a compilation unit compiled on the local computer calls a compilation unit compiled on a heterogeneous computer during execution of a loaded module, or when a compilation unit compiled on the local computer calls a compilation unit compiled on a heterogeneous computer When switching from a call mechanism between compilation units compiled on the own computer to a call mechanism between compilation units compiled on a different type of computer, a compilation unit compiled on a different type of computer calls a compilation unit compiled on the own computer. When calling and returning from a compilation unit compiled on a different computer to a compilation unit compiled on the own computer from a call mechanism between compilation units compiled on a different computer to a compilation unit compiled on the own computer call mechanism switching means for switching to a call mechanism between the two; and heterogeneous compilation unit coupling means for linking the call mechanism switching means between a compilation unit compiled on the own computer and a compilation unit compiled on a heterogeneous computer; A program execution method characterized by having the following.
JP7996087A 1987-03-31 1987-03-31 Program execution system Pending JPS63245727A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7996087A JPS63245727A (en) 1987-03-31 1987-03-31 Program execution system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7996087A JPS63245727A (en) 1987-03-31 1987-03-31 Program execution system

Publications (1)

Publication Number Publication Date
JPS63245727A true JPS63245727A (en) 1988-10-12

Family

ID=13704872

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7996087A Pending JPS63245727A (en) 1987-03-31 1987-03-31 Program execution system

Country Status (1)

Country Link
JP (1) JPS63245727A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6149844A (en) * 1994-09-09 2000-11-21 Decta Holdings Pty Ltd. Method of manufacturing composites

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6149844A (en) * 1994-09-09 2000-11-21 Decta Holdings Pty Ltd. Method of manufacturing composites

Similar Documents

Publication Publication Date Title
JPH01306923A (en) System for connecting different languages
JPH01154267A (en) Incorporating system for input/output device control program of operating system
JPH09231077A (en) Method for reducing size of computer program
JPS63245727A (en) Program execution system
EP0417916B1 (en) Procedure state descriptor system for digital data processors
US5765148A (en) Database processing apparatus and database processing method for variable length objects, and computer-readable memory medium for storing database processing program
JPH10510082A (en) Method of identifying a system comprising a plurality of interconnected functional modules each representing a machine based on an individual abstract state and a system so identified
Korb The design and implementation of a goal-directed programming language.
JPH0863421A (en) Centralized management system for hardware constitution information
JPH1196003A (en) Method for controlling plural banks of computer
Goad MUMPS code-building package for data-base management
JPS6324422A (en) Coexistence system for more than two kinds of access procedures in segment system computer
Denker Transactions in object-oriented specifications
Braverman CASTE: A class system for Tcl
JPH03229327A (en) Computer program executing system
JPH05282134A (en) Divided load module formation system
JP2852402B2 (en) Program development equipment
JPS63180129A (en) Program connection system
JPH01121939A (en) Program converting system
JPH0390931A (en) Generation of rom transformation program
JPH02214942A (en) Production system for control transfer function to master load module
JPH07129408A (en) Executing system for language processing program
Schumacher et al. Abstract Hardware Modelling using an Object-Oriented Language Extension to VHDL
JPH04284539A (en) Program linking system for information processor
JPS62144237A (en) Back track system