JPS62137640A - Interpreter execution control system - Google Patents
Interpreter execution control systemInfo
- Publication number
- JPS62137640A JPS62137640A JP27769385A JP27769385A JPS62137640A JP S62137640 A JPS62137640 A JP S62137640A JP 27769385 A JP27769385 A JP 27769385A JP 27769385 A JP27769385 A JP 27769385A JP S62137640 A JPS62137640 A JP S62137640A
- Authority
- JP
- Japan
- Prior art keywords
- program
- unit
- information
- data set
- main
- 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
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
Description
【発明の詳細な説明】
〔(既要〕
r’0RTRAN等のソース・プログラムをインタプリ
タで実行する時に、主記憶上には実行中のプログラム単
位に関する変換制御情報のみを置き、他のプログラム単
位の変換制御情報はデータセットで管理して、 CAL
L、 RIETUI?Nにより実行プログラム単位が変
わるとき、主記憶上の変換制御情報を対応させて入れ替
え、必要な記憶容量を節約する。[Detailed Description of the Invention] [(Already required)] When a source program such as r'0RTRAN is executed by an interpreter, only the conversion control information for the program unit being executed is stored in the main memory, and the conversion control information for other program units is stored in the main memory. Conversion control information is managed in datasets and CAL
L.RIETUI? When the execution program unit changes due to N, the conversion control information on the main memory is replaced correspondingly to save the required storage capacity.
本発明は、情報処理装置におけるFORTl?AN等の
インタプリタの実行制御方式に関する。The present invention provides FORTI? in an information processing device. This invention relates to an execution control method for an interpreter such as AN.
1n報処理装置において、たとえばFORTRANで記
述されたソース・プログラムをインタプリタを用いて実
行する場合、インタプリタは、変換処理に必要な変数情
報や手続き情報のテーブルを主記y3上に置かなければ
ならない。In the 1n information processing device, when a source program written in, for example, FORTRAN is executed using an interpreter, the interpreter must place a table of variable information and procedure information necessary for conversion processing on the host y3.
ところで一般にプログラムは主プログラムと関数やサブ
ルーチンの副プログラムからなるから。By the way, a program generally consists of a main program and subprograms such as functions and subroutines.
これらの個々のプログラムをプログラム単位と呼ぶもの
とすると、インタプリタは、プログラム単位ごとに変数
情報や手続き情報の変換制御情報をもつことになる。If these individual programs are called program units, the interpreter will have conversion control information for variable information and procedure information for each program unit.
従来のインクプリタ実行制御では、プログラム単位ごと
の変換制御情報テーブルを全て主記憶上に置くか、ある
いは外部記1.α上に置いて必要なものをその都度読み
出すかのいずれかの方法がとられていたが、前者の方法
の場合、主記憶にかなり大きな容量をもたせる必要があ
り、また後者の方法の場合、外部記憶との間で情報を人
出力するための時間が長くなり、レスポンスが悪くなる
という問題があった。In conventional ink printer execution control, all conversion control information tables for each program unit are stored in the main memory or externally stored in 1. One of two methods was used: to store the necessary information on α and read it each time, but the former method required a considerably large capacity in the main memory, and the latter method required There was a problem in that it took a long time to output information to and from external memory, resulting in poor response.
(問題点を解決するだめの手段)
本発明は、インタプリタの実行に際して、レスポンスタ
イムを悪化させることなく、使用する主21,0の領域
を削減可能にするものである。(Means for Solving the Problem) The present invention makes it possible to reduce the area of the host 21,0 used when executing the interpreter without deteriorating the response time.
そのため本発明は、複数のプログラム単位で構成される
プログラムのインタプリタによる実行時に、常に実行中
の1つのプログラム単位の変換制御情報のみを主記憶上
に置き、他のプログラム唯位の変換制御情報は外部記憶
のデータセント(ファイル)に格納しておいて、プログ
ラム単位が入れ替わるごとに、変換側′41111i’
t 報も対応させて入れ替えるように制御するものであ
る。Therefore, in the present invention, when a program consisting of a plurality of program units is executed by an interpreter, only the conversion control information of one program unit being executed is always stored in the main memory, and the conversion control information of only other programs is stored. It is stored in the data center (file) of external storage, and whenever the program unit is replaced, the conversion side '41111i'
Control is performed so that the t-information is also replaced accordingly.
第1図は1本発明の原理を示す概念図である。FIG. 1 is a conceptual diagram showing the principle of the present invention.
図において、11はたとえば主プログラムであるプログ
ラム単位A、12はたとえばサブルーチン副プログラム
であるプログラム単位B、13は主記憶領域、14は外
部記憶上のデータセット。In the figure, 11 is a program unit A which is, for example, a main program, 12 is a program unit B which is, for example, a subroutine subprogram, 13 is a main storage area, and 14 is a data set on external storage.
15はプログラム単位への変換ttIl制御情報、16
はプログラム単位Bの変換制御情報、17はインタプリ
タを表す。15 is conversion ttIl control information into program units, 16
1 represents conversion control information of program unit B, and 17 represents an interpreter.
インタプリタ17がプログラム単位Allを実行してい
るとき、その変換制御情報15は定められた主記憶領域
13に置かれている。When the interpreter 17 is executing the program unit All, the conversion control information 15 is placed in a predetermined main storage area 13.
インタプリタ17は、プログラム単位Δ11の文を次々
に取り出し、変換側?l[l情報15を用いて倚械命令
列に変換し、実行させる。しかし、プログラム単位B1
2を呼び出すCALL文を検出したとき、■で示すよう
に、主記憶領域13上のプログラム単位Allに関する
変換制御情報15を外部記tg上のデータセット14に
退避し2代わりにデータセット14からプログラム単位
B12の変換制御情報16を読み出して主記i+!領域
13上に置く。The interpreter 17 takes out the statements of the program unit Δ11 one after another, and converts the statements on the conversion side? Convert to a machine instruction sequence using the l[l information 15 and execute it. However, program unit B1
When a CALL statement that calls 2 is detected, as shown by Read the conversion control information 16 of the unit B12 and enter the main entry i+! Place it on area 13.
次にインタプリタ17は、プログラム単位B12を実行
し、終了後、■で示すように、プログラム単位Allへ
復帰する際、主記憶領域13がらプログラム単位B12
の変換制御情報16をデータセット14へ退避し、そし
てプログラム単位Allの変換制御情報15を主24r
<領域13へ復元する。このようにして、再びプログラ
ム単位Allの実行を続ける。Next, the interpreter 17 executes the program unit B12, and after completion, as shown by ■, when returning to the program unit All, the interpreter 17 erases the program unit B12 from the main storage area 13.
The conversion control information 16 of the program unit All is saved to the data set 14, and the conversion control information 15 of the program unit All is saved to the main 24r.
<Restore to area 13. In this way, execution of the program unit All continues again.
本発明によれば、主記憶領域上に置かれる変換制御情報
は実行中のプログラム単位についてのものに限られるか
ら、主記憶領域の大きさは小さくて済ますことができる
。また主記憶領域とデータセントとの間での変換制御情
報の退避、復元は。According to the present invention, since the conversion control information placed in the main storage area is limited to information regarding the program unit being executed, the size of the main storage area can be reduced. It also saves and restores conversion control information between the main storage area and the data center.
プログラム単位の呼び出し、復帰時にプログラムの入口
、出口でのみ行えばよいから、入出力処理回数は少なく
て済み、処理速度の低下を比較的小さく抑えることがで
きる。Since it is only necessary to call and return each program at the entrance and exit of the program, the number of input/output operations can be reduced, and the decrease in processing speed can be kept relatively small.
第2図に本発明の1実施例の構成を示す。 FIG. 2 shows the configuration of one embodiment of the present invention.
図において、20はデータ処理装置、21はソース・プ
ログラム、22−1ないし22−3はプログラム単位で
あり、そのうち22−1は主プログラムMAIN、22
−2はサブ/L/−チア5UB−1,22−3はサブル
ーチン5U13−2である。In the figure, 20 is a data processing device, 21 is a source program, and 22-1 to 22-3 are program units, of which 22-1 is a main program MAIN;
-2 is the sub/L/-cheer 5UB-1, 22-3 is the subroutine 5U13-2.
また23は主2=le a域、24はデータセット、2
5−1は主プログラムMAINの変換制御1?t 9a
。Also, 23 is the main 2=le a area, 24 is the data set, 2
5-1 is conversion control 1 of main program MAIN? t 9a
.
25−2はサブルーチンS[JB−1の変換制御悄報、
25−3はサブルーチン5UB−2の変換制御情報、2
7はインクブリ外 28は人出ツノ処理部である。25-2 is a subroutine S [JB-1 conversion control report,
25-3 is conversion control information of subroutine 5UB-2, 2
7 is outside the inkburi, and 28 is the outgoing horn processing section.
インタプリタ27は、ソース・プログラム21を構成す
る各プログラム単位について2図中のフロー(ステップ
a−g>に示す処理を行う。The interpreter 27 performs the processing shown in the flow (steps ag> in FIG. 2) for each program unit constituting the source program 21.
簡単に説明すると。To explain briefly.
a、プログラム中の文を取り出す。a. Extract the statement in the program.
b、その文が外部手続き(サブルーチン、外部関数)を
呼び出す文たとえばCALL文がどうかを識別する。外
部手続き呼び出しの場合は後出するfのステップを実行
し、その他の場合は次のCのステップを実行する。b. Identify whether the statement is a statement that calls an external procedure (subroutine, external function), for example, a CALL statement. In the case of an external procedure call, step f, which will be described later, is executed, and in other cases, the next step C is executed.
c、5TOP文かどうかを識別し、5TOP文であれば
後出するgのステップを実行し、その他の場合は次のd
のステップを実行する。c, identify whether it is a 5TOP statement, and if it is a 5TOP statement, execute step g, which will be described later; otherwise, proceed to step d.
Execute the steps.
d、 RETURN文かどうかを識別し、 RETUR
N文であればfのステップを実行し、その他の場合は次
のeのステップを実行する。d. Identify whether it is a RETURN statement and
If there are N sentences, step f is executed; otherwise, step e is executed.
e、その文を変換処理し、実行する。実行後、aへ戻る
。e. Convert and execute the statement. After execution, return to a.
r、外部手続き呼び出しの場合は、呼び出し先のサブル
ーチンあるいは外部関数副プログラムのプログラム単位
に切り換える処理を行う (図示のソース・プログラム
21の例では、主プログラムMAINにサブルーチン5
UB−1を呼び出すCALT−文があり1またサブルー
チンS[JB−1にはサブルーチン5OB−2を呼び出
すCA L L文がある)。またRETURN文の場合
は。r. In the case of an external procedure call, processing is performed to switch to the called subroutine or external function subprogram program unit (in the example of the source program 21 shown in the figure, subroutine 5 is added to the main program MAIN).
There is a CALT statement that calls UB-1 and subroutine S [JB-1 has a CALL statement that calls subroutine 5OB-2]. Also, in the case of a RETURN statement.
呼び出し元のプログラム単位に切り換える処理を行う(
図示の例では、サブルーチン5tJ13−1および5U
B−2にIIETUI?N文がある)。プログラム単位
を切り換えた後、aへ戻る。Performs processing to switch to the calling program unit (
In the illustrated example, subroutines 5tJ13-1 and 5U
IIETUI on B-2? There are N sentences). After switching the program unit, return to a.
g、s’rop文を検出したことにより、終了処理を行
う。g, s'rop statement is detected, the termination process is performed.
入出力処理部28は、インタプリタ27かプログラム単
位切り換え処理(ステップf)を行ったとき、指示によ
り、主記憶領域23上の現プログラム単位の変換制御情
報をデータセット24に退避し、そして次に実行される
プログラム単位の変換制御情報をデータセット24から
主記憶領域23へ復元する入出力処理を行う。When the interpreter 27 performs the program unit switching process (step f), the input/output processing unit 28 saves the conversion control information of the current program unit in the main storage area 23 to the data set 24 according to the instruction, and then Input/output processing is performed to restore conversion control information for each program to be executed from the data set 24 to the main storage area 23.
次に、第2図のソース・プログラム21を例にとり、プ
ログラム単位の切り換え動作を、第3図を用いて具体的
に説明する。なお、第3図では。Next, taking the source program 21 of FIG. 2 as an example, switching operations in program units will be specifically explained using FIG. 3. In addition, in Fig. 3.
「変換制御情報」は単に「情報」で表されている。"Conversion control information" is simply expressed as "information."
■は、主プログラムMA’INがサブルーチン5un−
tを呼び出したときの動作であり、主記憶領域には5U
B−1に関する変換制御情報が置かれる。処理としては
、MAINに関する変換制御情報がデータセットに退避
することと、5UB−1を実行するための初期設定とが
行われる。■ In the main program MA'IN, subroutine 5un-
This is the operation when calling t, and the main storage area has 5U
Conversion control information regarding B-1 is placed. The processing includes saving conversion control information regarding MAIN to a data set, and initial settings for executing 5UB-1.
■は、5U)3−1から5UB−2が呼び出されたとき
の動作であり、■の場合と同様にして、データセットに
は5UB−1の変換側?:III情報が追加退避される
。■ is the operation when 5UB-2 is called from 5U) 3-1, and in the same way as in ■, the data set is the conversion side of 5UB-1? :III information is additionally saved.
■は、5UB−2のRETURN文により5UB−1に
復帰したときの動作であり、主記憶領域のS[JB−2
に関する変換制御情報はデータセットに退避され9代わ
りに5UB−1に関する変換制御情報がデータセントか
ら主記憶領域へ読み込まれる(復元)。■ is the operation when returning to 5UB-1 by the RETURN statement of 5UB-2, and the S[JB-2
The conversion control information related to 5UB-1 is saved to the data set, and instead, the conversion control information related to 5UB-1 is read from the data center to the main storage area (restored).
■は、5UB−1のRETURN文によりMAINに復
帰したときの動作であり、■の場合と同様にして、主記
憶領域上の5UB−1の変換制御情報はデータセットに
退避され2代わりにMAINの変換制御情報がデータセ
ットから主犯ta領域へ読み込まれる。■ is the operation when returning to MAIN by the RETURN statement of 5UB-1, and in the same way as in ■, the conversion control information of 5UB-1 on the main storage area is saved to the data set, and 2 is returned to MAIN instead. The conversion control information is read from the data set into the main culprit ta area.
このような動作は、任意複数のプログラム単位に対して
適用でき、その場合主記憶領域の大きさを、プログラム
単位数によって変更する必要は殆どない。Such operations can be applied to any number of program units, and in that case there is little need to change the size of the main storage area depending on the number of program units.
また、上記to領域からデータセットに退避する情報は
、そのプログラム単位に関する全ての情報である必要は
なく、一定の大きさの領域分のみとすることができる。Furthermore, the information saved from the to area to the data set does not have to be all information related to the program unit, and can be saved only for an area of a certain size.
これにより、上記主記憶上の一定の大きさの領域のみが
各プログラム単位間で共用される。さらにデータセソ1
−への入出力は一定の大きさの領域のみであるため、同
一プログラム単位に対する退避は、領域の上書きのみで
よ(。As a result, only a certain size area on the main memory is shared between each program unit. Further data seso 1
Since input/output to - is limited to an area of a certain size, saving the same program unit can only be done by overwriting the area (.
また一定の領域とデータセットとの間の読み当きのため
にアドレス定数域等を意識することが不要となる。Further, it is not necessary to be aware of the address constant area etc. for reading between a certain area and a data set.
(発明の効果〕
本発明により、インタプリタの実行を、比較的小さい主
記憶容量のデータ処理装置においてもあまり処理速度を
低下させることなく効率的に行わせるごとができ、利用
者のコスト軽減を図ることができる。(Effects of the Invention) According to the present invention, the interpreter can be executed efficiently even in a data processing device with a relatively small main memory capacity without significantly reducing the processing speed, thereby reducing costs for the user. be able to.
第1図は本発明の詳細な説明するための概念図。
第2図は本発明の1実施例の構成図、第3図は第2図に
示された実施例におけるプログラム単位切り換え動作の
例の説明図である。
第1図中
lllニブログラム位A
12;プログラム単位B
13:主記憶領域
14:データセット
15ニブログラム単位Aの変換制御情報16:プログラ
ム11位Bの変換制御情tta17:インクプリタFIG. 1 is a conceptual diagram for explaining the present invention in detail. FIG. 2 is a block diagram of one embodiment of the present invention, and FIG. 3 is an explanatory diagram of an example of program unit switching operation in the embodiment shown in FIG. In Figure 1, 11 nibogram position A 12; program unit B 13: main storage area 14: data set 15 conversion control information for nibogram unit A 16: conversion control information for program 11th position B tta17: ink printer
Claims (1)
ラムからなる複数のプログラム単位(11、12)を含
むソース・プログラムを、インタプリタ(17)により
変換し実行する際、 上記複数のプログラム単位(11、12)の各々の変換
制御情報(15、16)をデータセット(14)で管理
し、実行中のプログラム単位の変換制御情報のみを主記
憶領域(13)上に置き、実行プログラム単位が呼び出
しあるいは復帰により切り替わるとき、対応する変換制
御情報も主記憶領域(13)とデータセット(14)と
の間で入れ替えることを特徴とするインタプリタの実行
制御方式。[Claims] In a data processing device, when a source program including a plurality of program units (11, 12) consisting of a main program and a subprogram is converted and executed by an interpreter (17), the plurality of program units are The conversion control information (15, 16) of each of (11, 12) is managed in a data set (14), and only the conversion control information for each program being executed is stored in the main storage area (13). 1. An interpreter execution control system characterized in that when a switch is made by calling or returning, corresponding conversion control information is also switched between a main storage area (13) and a data set (14).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27769385A JPS62137640A (en) | 1985-12-10 | 1985-12-10 | Interpreter execution control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP27769385A JPS62137640A (en) | 1985-12-10 | 1985-12-10 | Interpreter execution control system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS62137640A true JPS62137640A (en) | 1987-06-20 |
Family
ID=17586986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP27769385A Pending JPS62137640A (en) | 1985-12-10 | 1985-12-10 | Interpreter execution control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62137640A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02136931A (en) * | 1988-11-17 | 1990-05-25 | Nec Corp | External reference updating system |
-
1985
- 1985-12-10 JP JP27769385A patent/JPS62137640A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02136931A (en) * | 1988-11-17 | 1990-05-25 | Nec Corp | External reference updating system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS62137640A (en) | Interpreter execution control system | |
JP2985244B2 (en) | Information processing device | |
JPH03184136A (en) | Address trace circuit | |
JPH05242009A (en) | Direct memory access device | |
JPS63100534A (en) | Picture switching system for multijob | |
JPH03265932A (en) | Instruction memory control system | |
JPS6143342A (en) | Microprogram controller | |
JPH09251545A (en) | Picture processor | |
JPS63155241A (en) | Address space control system | |
JPS58168168A (en) | Swap-in and swap-out system of terminal | |
JPH01243120A (en) | Firmware control device | |
JPH06208614A (en) | Image processor | |
JPH02172776A (en) | Printing device | |
JPH01158527A (en) | Memory control system | |
JPH02201626A (en) | Disk cache device | |
JPH04147365A (en) | Document processor | |
JPS6378255A (en) | Execution system for program | |
JPS62130472A (en) | Picture processor | |
JPH01130692A (en) | Video signal recording method | |
JPH01113806A (en) | Sequence controller | |
JPS6320527A (en) | Code converter | |
JPH02216529A (en) | Recognition processing system for electric signal | |
JPH06103077A (en) | Allocating system for memory area | |
JPH0241522A (en) | Function arithmetic processor | |
JPH0564937U (en) | Image memory and data processor |