JPH0337213B2 - - Google Patents
Info
- Publication number
- JPH0337213B2 JPH0337213B2 JP6582185A JP6582185A JPH0337213B2 JP H0337213 B2 JPH0337213 B2 JP H0337213B2 JP 6582185 A JP6582185 A JP 6582185A JP 6582185 A JP6582185 A JP 6582185A JP H0337213 B2 JPH0337213 B2 JP H0337213B2
- Authority
- JP
- Japan
- Prior art keywords
- modules
- sub
- module
- execution
- 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.)
- Expired
Links
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 1
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、データ処理装置、特に複数の実行モ
ジユールが選択的に主記憶装置上にローデイング
され、かつ1つまたは複数の入口をもつ複数のサ
ブ・モジユールが上記実行モジユールによつて利
用される如き処理態様がとられるデータ処理装置
において、上記複数のサブ・モジユールを主記憶
装置上に常駐させかつ主記憶装置に現にローデイ
ングされている実行モジユールが当該複数のサ
ブ・モジユールを共通に利用できるようにしたデ
ータ処理装置に関するものである。DETAILED DESCRIPTION OF THE INVENTION (Industrial Application Field) The present invention relates to a data processing apparatus, and more particularly to a data processing apparatus, in which a plurality of execution modules are selectively loaded onto a main memory, and a plurality of execution modules having one or more entry points. In a data processing device in which a processing mode is adopted in which sub-modules are used by the execution module, an execution module in which the plurality of sub-modules are made to reside on a main memory and is currently loaded in the main memory. The present invention relates to a data processing device in which a plurality of sub-modules can be used in common.
例えば第3図に示す如く、メイン・モジユール
1によつて実行モジユール2−1,2−2,2−
3を選択的に呼出して処理を実行し、当該実行モ
ジユールにおける処理の間に各実行モジユールに
共通的に利用するサブ・モジユールを呼出して処
理を実行するような場合がある。
For example, as shown in FIG.
There are cases where a sub-module commonly used by each execution module is called and executed while the execution module is executing the process.
このような場合においては、従来、第4図に示
す如く、すべての実行モジユールを主記憶装置4
上に常駐させかつすべてのサブ・モジユールを主
記憶装置4上に常駐させる構成をとるか、あるい
は第5図に示す如く、各実行モジユールに対して
すべてのサブ・モジユールを結合した上で、当該
結合された単位をメイン・モジユール1が動的に
主記憶装置4上にローデイングする構成をとるか
であつた。
In such a case, conventionally, all execution modules are stored in the main memory 4 as shown in FIG.
Alternatively, as shown in FIG. 5, all sub-modules may be connected to each execution module, and all sub-modules may be resident on the main memory 4. The configuration was such that the main module 1 dynamically loads the combined units onto the main memory 4.
しかし、第4図に示す前者の場合には、主記憶
装置4上の記憶容量が大とならざるを得ない。ま
た第5図に示す後者の場合には、(i)主記憶装置上
にローデイングされた実行モジユールがサブ・モ
ジユールを必要とするとき当該複数のサブ・モジ
ユールをローデイングする方式を採用すると、当
該サブ・モジユールのローデイング時間が問題と
なり、また(ii)各実行モジユールに対して複数のサ
ブ・モジユールを静的に結合せしめておいて、上
記実行モジユールの1つがローデイングされる際
に上記サブ・モジユールをも一緒にローデイング
する方式を採用すると、デイスク・メモリ上でも
上記結合単位を1つの単位として保持することが
必要であり、デイスク・メモリ上で同じサブ・モ
ジユールが複数個存在する形となり、デイスク・
メモリの効率的利用という面から好ましくない。 However, in the former case shown in FIG. 4, the storage capacity on the main storage device 4 is inevitably large. In the latter case shown in Figure 5, (i) when the execution module loaded on the main memory requires a sub-module, if a method is adopted in which multiple sub-modules are loaded, the sub-modules are・Module loading time becomes a problem, and (ii) multiple sub-modules are statically linked to each execution module, and when one of the execution modules is loaded, the above-mentioned sub-modules are If a method is adopted in which sub-modules are loaded together, it is necessary to hold the above-mentioned combined unit as a single unit on the disk memory, resulting in multiple identical sub-modules existing on the disk memory, and the disk
This is not desirable from the standpoint of efficient memory usage.
本発明は上記の点を解決することを目的として
おり、上記サブ・モジユールを主記憶装置上に常
駐せしめると共に、選択的にローデイングされる
各実行モジユールが当該サブ・モジユールを共通
に利用できるようにすることを目的としている。
The present invention aims to solve the above-mentioned problems by making the sub-module resident in the main memory, and by making the sub-module commonly available to each execution module that is selectively loaded. It is intended to.
第1図は本発明の一実施例構成を示している。
図中の符号1,2−1,2−2,2−3,3,
4,は第3図ないし第5図に対応し、5はデイス
ク・メモリ、6はローデイング・ルーチン、7−
1,7−2,……は夫々個々のサブ・ルーチン、
8はデイスパツチ・ルーチンを表わしている。ま
たローデイング・ルーチン6は共通領域9と複数
の分岐テーブル10−1,10−2,……とをも
つている。共通領域9には、上記分岐テーブル1
0−1,10−2,……の先頭位置を上記デイス
パツチ・ルーチン8に知らせるために、分岐テー
ブルの先頭アドレスが記述されており、上記デイ
スパツチ・ルーチン8が参照するようにされる。
また各分岐テーブル10−1,10−2,……に
は夫々個々のサブ・ルーチン7−1,7−2,…
…の主記憶装置4上での格納位置が記述されてい
る。 FIG. 1 shows the configuration of an embodiment of the present invention.
Codes 1, 2-1, 2-2, 2-3, 3 in the diagram
4 corresponds to FIGS. 3 to 5, 5 is a disk memory, 6 is a loading routine, and 7-
1, 7-2, ... are individual subroutines,
8 represents the dispatch routine. The loading routine 6 also has a common area 9 and a plurality of branch tables 10-1, 10-2, . . . . In the common area 9, the above branch table 1
In order to inform the dispatch routine 8 of the starting position of 0-1, 10-2, . . . , the starting address of the branch table is written and referred to by the dispatch routine 8.
Further, each branch table 10-1, 10-2, . . . has individual subroutines 7-1, 7-2, .
The storage location of ... on the main storage device 4 is described.
各実行モジユール2−1,2−2,……に対し
て静的に結合されるデイスパツチ・ルーチン8に
は、各個々のサブ・ルーチンに対応する形で、当
該個々のサブ・ルーチンに対応する分岐テーブル
の位置を抽出すると共に、当該分岐テーブルの内
容が示すアドレス位置に分岐する機能11−1,
11−2,……が与えられている。 The dispatch routine 8 statically coupled to each execution module 2-1, 2-2, . Function 11-1 to extract the position of the branch table and branch to the address position indicated by the contents of the branch table;
11-2,... are given.
メイン・モジユール1は、従来と同様に各実行
モジユール2−1,2−2,……を選択的に主記
憶装置4上にローデイングする機能をもつと共
に、第1図図示の主記憶装置4中に示す如く、複
数のサブ・ルーチン7−1,7−2,……と静的
に結合されたローデイング・ルーチン6を主記憶
装置4上にローデイングする機能をもつ。そし
て、当該複数のサブ・ルーチン7−1,7−2,
……とローデイング・ルーチン6とは主記憶装置
4上に常駐され、共通領域9上に分岐テーブルの
先頭アドレスを格納し、かつ分岐テーブル10−
1,10−2,……上に夫々のサブ・ルーチンの
格納位置をセツトする。
The main module 1 has a function of selectively loading each execution module 2-1, 2-2, . As shown in FIG. 2, it has a function of loading a loading routine 6 statically combined with a plurality of subroutines 7-1, 7-2, . . . onto the main storage device 4. Then, the plurality of subroutines 7-1, 7-2,
. . . and the loading routine 6 resides in the main memory 4, stores the start address of the branch table in the common area 9, and loads the branch table 10-
1, 10-2, . . . the storage locations of the respective subroutines are set above.
今、主記憶装置4上にローデイングされている
実行モジユールが例えばサブ・ルーチン7−1を
利用しようとする場合、第2図に示す如く、当該
実行モジユールは、コール命令によつてデイスパ
ツチ・ルーチン11−1を実行するようにする。
これによつて、デイスパツチ・ルーチン11−1
は、上記共通領域9上の分岐テーブル先頭アドレ
スを抽出し、サブ・ルーチン7−1に対応する分
岐テーブル10−1の位置を判定して、当該分岐
テーブル10−1を索引する。そして、該テーブ
ル10−1の内容にもとづいて、所望のサブ・ル
ーチン7−1に分岐する。 When the execution module currently loaded on the main storage device 4 attempts to use the subroutine 7-1, for example, as shown in FIG. -1 is executed.
This causes dispatch routine 11-1
extracts the branch table start address on the common area 9, determines the position of the branch table 10-1 corresponding to the subroutine 7-1, and indexes the branch table 10-1. Then, based on the contents of the table 10-1, a branch is made to a desired subroutine 7-1.
ローデイング・ルーチン6は次のように構成さ
れる。
Loading routine 6 is constructed as follows.
(1) 1つまたは複数の入口をもつサブ・モジユー
ルのすべてと静的に結合される。(1) Statically coupled to all submodules with one or more inlets.
(2) 上記すべての入口に対応する分岐テーブル1
0−1,10−2,……を用意し、エキスター
ナル宣言によつて、各入口に分岐することが可
能となるようにされ、
(3) 共通領域9上に、分岐テーブルの先頭番地を
設定し、デイスパツチ・ルーチン8が当該先頭
番地を参照できるようにされる。(2) Branch table 1 corresponding to all the above entrances
0-1, 10-2, etc. are prepared, and it is possible to branch to each entrance by external declaration. (3) The start address of the branch table is set on the common area 9. However, the dispatch routine 8 is enabled to refer to the starting address.
デイスパツチ・ルーチン8は次のように構成さ
れる。 Dispatch routine 8 is constructed as follows.
(4) すべての実行モジユール2−1,2−2,…
…と静的に結合され、グローバル宣言によつ
て、上記入口への分岐先を当該ルーチン8内に
持ち込むようにする。(4) All execution modules 2-1, 2-2,...
..., and the branch destination to the above entry point is brought into the routine 8 by the global declaration.
(5) そして、夫々の分岐先に分岐できるようにす
る。(5) Then, make it possible to branch to each branch destination.
(6) また分岐先のモジユールの引数アドレスリス
ト(復帰番地)を当該ルーチン8の復帰番地と
するようにする。(6) Also, set the argument address list (return address) of the branch destination module as the return address of the routine 8.
以上説明した如く、本発明によれば、サブ・モ
ジユールを主記憶装置上に常駐させ、かつ主記憶
装置上にローデイングされた実行モジユールが上
記複数のサブ・モジユールのいずれの入口へも処
理を分岐させることが可能となる。
As explained above, according to the present invention, sub-modules are made to reside on the main memory, and the execution module loaded on the main memory can branch processing to any entry point of the plurality of sub-modules. It becomes possible to do so.
第1図は本発明の一実施例構成、第2図は処理
態様を説明する説明図、第3図ないし第5図は本
発明の前提問題を説明する説明図を示す。
図中、1はメイン・モジユール、2−1,2−
2,……は夫々実行モジユール、3および7−
1,7−2,……はサブ・モジユール、4は主記
憶装置、5はデイスク・メモリ、6はローデイン
グ・ルーチン、8はデイスパツチ・ルーチン、9
は共通領域、10−1,10−2,……は夫々分
岐テーブル、11−1,11−2,……は分岐機
能を表わす。
FIG. 1 shows the configuration of an embodiment of the present invention, FIG. 2 is an explanatory diagram for explaining the processing mode, and FIGS. 3 to 5 are explanatory diagrams for explaining the prerequisite problems of the present invention. In the figure, 1 is the main module, 2-1, 2-
2, . . . are execution modules, 3 and 7-, respectively.
1, 7-2, ... are sub modules, 4 is the main memory, 5 is the disk memory, 6 is the loading routine, 8 is the dispatch routine, 9
10-1, 10-2, . . . are branch tables, and 11-1, 11-2, . . . are branch functions.
Claims (1)
ルによつて選択的に主記憶装置上にローデイング
される複数の実行モジユールと、該夫々の実行モ
ジユールにおける処理の実行中に当該夫々の実行
モジユールから利用される1つまたは複数の入口
をもつ複数のサブ・モジユールとをそなえ、上記
メイン・モジユールと上記実行モジユールの1つ
と上記複数のサブ・モジユールとが主記憶装置上
に駐在されて処理を実行するデータ処理装置にお
いて、上記複数のサブ・モジユールと静的に結合
されかつ上記各サブ・モジユールの入口を指示す
る分岐テーブルを少なくとももつローデイング・
ルーチンを上記複数のサブ・モジユールと静的に
結合せしめて上記主記憶装置上に常駐するよう構
成すると共に、上記複数の実行モジユールの夫々
に上記分岐テーブルの内容を取込んで当該分岐テ
ーブルの内容が指示する上記サブ・モジユールの
1つに分岐させるデイスパツチ・ルーチンを静的
に結合せしめておくよう構成され、上記ローデイ
ング・ルーチンと上記複数のサブ・モジユールと
が上記メイン・モジユールによつて上記主記憶装
置上にローデイングされかつ常駐され、かつ上記
デイスパツチ・ルーチンを結合された上記実行モ
ジユールが上記メイン・モジユールによつて選択
的に主記憶装置上にローデイングされることを特
徴とするデータ処理装置。1 A main module, a plurality of execution modules that are selectively loaded onto the main memory by the main module, and a plurality of execution modules that are used by each execution module during execution of processing in each execution module. A data processing system comprising a plurality of sub-modules having one or more entrances, wherein the main module, one of the execution modules, and the plurality of sub-modules are resident on a main memory to execute processing. In the device, a loading module is statically coupled to the plurality of sub-modules and has at least a branch table indicating the entrance of each of the sub-modules.
The routine is statically coupled with the plurality of sub-modules and configured to reside on the main storage device, and the contents of the branch table are loaded into each of the plurality of execution modules to execute the contents of the branch table. A dispatch routine for branching to one of the sub-modules instructed by the main module is statically coupled, and the loading routine and the plurality of sub-modules are connected to the main module by the main module. A data processing device characterized in that said execution module loaded and resident on a storage device and coupled with said dispatch routine is selectively loaded onto said main storage device by said main module.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6582185A JPS61224041A (en) | 1985-03-29 | 1985-03-29 | Data processing device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6582185A JPS61224041A (en) | 1985-03-29 | 1985-03-29 | Data processing device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS61224041A JPS61224041A (en) | 1986-10-04 |
| JPH0337213B2 true JPH0337213B2 (en) | 1991-06-04 |
Family
ID=13298074
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6582185A Granted JPS61224041A (en) | 1985-03-29 | 1985-03-29 | Data processing device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS61224041A (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01142936A (en) * | 1987-11-30 | 1989-06-05 | Matsushita Electric Ind Co Ltd | Information linking method |
| JP2865291B2 (en) * | 1988-02-16 | 1999-03-08 | 富士通株式会社 | Module connection control method |
-
1985
- 1985-03-29 JP JP6582185A patent/JPS61224041A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS61224041A (en) | 1986-10-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6077265A (en) | Vector processor | |
| EP0341905B1 (en) | Computer with intelligent memory system and corresponding method | |
| ATE60150T1 (en) | DATA HANDLING SYSTEM FOR THE EXECUTION OF PROGRAMS IN THE FORM OF SEARCH TREES, SO-CALLED PARALLEL EXECUTION. | |
| JPH0337213B2 (en) | ||
| JPS62182822A (en) | Automatic operation system | |
| JPS6232497B2 (en) | ||
| JPH02105962A (en) | System starting device | |
| JP3149904B2 (en) | OS switching device | |
| JPH0221610B2 (en) | ||
| JPS5856153A (en) | Subroutine return system | |
| JPS59178543A (en) | Communication controlling device which can execute relative-address-formed program | |
| JPS61251947A (en) | Information processor | |
| JPH0465717A (en) | Method for accessing program | |
| JPH01195540A (en) | Data loading/dumping system | |
| JPH0341847B2 (en) | ||
| JPS6168643A (en) | Extension system for interpreter type language function | |
| 解体かー et al. | SkSZ | |
| JPS61125653A (en) | Control system for input and output instruction | |
| JPH0368046A (en) | Memory access system | |
| JPS6252665A (en) | Multiprocessor system | |
| JPS62281040A (en) | Page managing system | |
| JPS6149257A (en) | Connection of input/output control system to microcomputer | |
| JPH02193223A (en) | Program number calling system | |
| JPS60220416A (en) | Initialization system of information processing system | |
| JPS62100853A (en) | Loading control system for initial program |