JPS63118852A - Control system for virtual memory - Google Patents

Control system for virtual memory

Info

Publication number
JPS63118852A
JPS63118852A JP61129912A JP12991286A JPS63118852A JP S63118852 A JPS63118852 A JP S63118852A JP 61129912 A JP61129912 A JP 61129912A JP 12991286 A JP12991286 A JP 12991286A JP S63118852 A JPS63118852 A JP S63118852A
Authority
JP
Japan
Prior art keywords
storage device
address space
program
virtual
parts
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
JP61129912A
Other languages
Japanese (ja)
Inventor
Yukihisa Murata
幸久 村田
Nobuo Kakiya
垣谷 信夫
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP61129912A priority Critical patent/JPS63118852A/en
Publication of JPS63118852A publication Critical patent/JPS63118852A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To realize the effective use of a virtual address space and reduction of the program executing time by recognizing presence of a proper variable part and a common invariable part that can be shared by other programs and storing these variable and invariable parts into a proper address space. CONSTITUTION:The virtual memories 21-23 contain proper address spaces 25-27. Then it is recognized that the proper variable parts (a) and (c) and an invariable part (x) that can be shared by other programs are contained in the programs stored in the memories 21-23. These parts (a), (c) and (x) are stored in the spaces 25-27. Thus the parts (a)-(x) are set into the spaces 25 and 27 when programs are loaded to the memories 21-23. Then the space 26 is expended to omit dynamic security and initialization of both parts (a) and (c).

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、複数のプログラムに共有される不変部が存
する場合の仮想記憶装置の制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a control method for a virtual storage device when there is an unchangeable part shared by a plurality of programs.

〔従来技術〕[Prior art]

一般に、計算機の実(主)記憶装置はアクセス時間はは
るかに短いが記憶容量が小さく、逆に外部記憶装置であ
る補助記憶装置のディスク装置等では、アクセス時間は
長いがその記憶容量ははるかに大きい。従って、プログ
ラムやデータ等はその全体が実記憶装置上に存在する必
要はなく、現在実行するために必要な例えば1ペ一ジ分
のみが実記憶装置に入っていればよい。後に実行される
他のページは外部記憶装置に記憶し、必要に応じて実記
憶装置に呼び出すようにしている。実記憶装置の実アド
レスと外部記憶装置の仮想アドレスとをアドレス変換テ
ーブルで連結して、実記憶装置に大容量の外部記憶装置
をソフトウェアとインタフェースで取り込んだ形の仮想
記憶装置が構築されている。
In general, a computer's real (main) storage device has a much shorter access time but a smaller storage capacity; conversely, an external storage device such as an auxiliary storage disk device has a longer access time but a much smaller storage capacity. big. Therefore, programs, data, etc. do not need to exist in their entirety on the real storage device, and only the portion of, for example, one page required for the current execution needs to be on the real storage device. Other pages to be executed later are stored in an external storage device and recalled to the real storage device as needed. A virtual storage device is constructed in which the real address of the real storage device and the virtual address of the external storage device are linked using an address conversion table, and a large-capacity external storage device is incorporated into the real storage device using software and an interface. .

第4図は、従来の仮想記憶装置におけるプログラムの格
納方式のメモリマツプを示している。同図において、1
0,11.12は並列的に設けられた仮想記憶装置A、
B、Cであり、これら仮想記憶装置A、B、Cは共龜ア
ドレス空間1,2゜3と、互いに独立な固有アドレス空
間5,6.7を夫々有している。共通アドレス空間1.
 2. 3は実質同一である上記実記憶装置に、又各間
有アドレス空間は別個に設けられた上記外部記憶装置に
夫々対応し、多重仮想記憶装置を形成している。
FIG. 4 shows a memory map of a program storage method in a conventional virtual storage device. In the same figure, 1
0, 11.12 is a virtual storage device A provided in parallel,
These virtual storage devices A, B, and C have common address spaces 1, 2.3, and mutually independent unique address spaces 5, 6.7, respectively. Common address space 1.
2. 3 corresponds to the real storage device which is substantially the same, and each intervening address space corresponds to the separately provided external storage device, forming a multiple virtual storage device.

今仮想記憶装置Aに、可変部aと不変部Xからなるプロ
グラムを、又仮想記憶装置Cに可変部Cと不変部Xとか
らなるプログラムを記憶する場合に、従来では、不変部
Xを共有アドレス空間1,2゜3に記憶し、可変部aは
固有アドレス空間5に又可変部Cは固有アドレス空間7
に夫々記憶している。このような共有部である不変部X
を有するプログラムを演算処理装置にローデングする場
合、まず不変部Xが実行の制御に渡され、その後可変部
a又はCが、夫々の仮想記憶装置A又はCにて動的に確
保及び初期化され、即ちアドレス変換テーブルによる処
理が行なわれ、不変部Xとの整合が取られプログラムが
実行されている。
When storing a program consisting of variable part a and constant part X in virtual storage device A, and a program consisting of variable part C and constant part X in virtual storage device C, conventionally, constant part The variable part a is stored in the address space 1, 2.3, the variable part a is stored in the unique address space 5, and the variable part C is stored in the unique address space 7.
I remember each of them. Invariant part X which is such a common part
When loading a program having That is, processing is performed using the address conversion table, consistency with the unchanged part X is achieved, and the program is executed.

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

従来の制御方式ではプログラムの不変部Xを共有アドレ
ス空間1.2.3即ち、実記憶装置内に置くので、主メ
モリである実記憶装置の容量が狭くなり、その分だけ、
より多くのタスクの頭出しをするという重要作業が制限
を受けている。又可変部a、cを動的に確保し、不変部
Xと整合させるための初期化の作業が必要になってくる
という問題があった。
In the conventional control method, the unchanging part X of the program is placed in the shared address space 1.2.3, that is, in the real storage device, so the capacity of the real storage device, which is the main memory, is reduced, and by that amount,
The important task of cueing more tasks is being restricted. Another problem is that it becomes necessary to dynamically secure the variable parts a and c and to initialize them to match them with the constant part X.

この発明は、上記事情に鑑みなされたもので、仮想記憶
装置の共有アドレス空間を狭めず、可動部動的確保及び
初期化を不要としてプログラム実行の効率化、仮想記憶
装置の能率向上を可能とする仮想記憶装置の制御方式を
提供することを目的としている。
This invention was made in view of the above circumstances, and it is possible to improve the efficiency of program execution and the efficiency of the virtual storage device without narrowing the shared address space of the virtual storage device and without requiring dynamic allocation and initialization of moving parts. The purpose of this paper is to provide a control method for virtual storage devices.

〔問題点を解決するための手段〕[Means for solving problems]

仮想記憶装置21,22..23は固有アドレス空間2
5,26.27を備え、前記仮想記憶装置21.22.
23に記憶されるプログラム中に、固有の可変部a、c
と、他のプログラムに共用できる不変部Xとが存在する
ことを認識し、これら可変9部a、cと不変部Xとをと
もに前記固有アドレス空間25,26.27に記憶する
Virtual storage devices 21, 22. .. 23 is unique address space 2
5, 26.27, and the virtual storage devices 21.22.
In the program stored in 23, unique variable parts a, c
It recognizes that there is a constant part X that can be shared by other programs, and stores both the variable parts a and c and the constant part X in the unique address spaces 25, 26, and 27.

〔作用〕[Effect]

プログラムの仮想記憶装置21,22.23へのローデ
ングでは、その可変部a、cと不変部Xとをともに各間
をアドレス空間25及び27に夫々配置し、共通アドレ
ス空間24を広くし、可変部a、cの動的確保及び初期
化を不要とする。
When loading a program into the virtual storage devices 21, 22, and 23, the variable parts a and c and the fixed part Dynamic allocation and initialization of parts a and c are unnecessary.

〔実施例〕〔Example〕

以下、この発明の一実施例を第1〜3図を参照して説明
する。第1図は本発明の仮想記憶装置におけるプログラ
ムの格納方式のメモリマツプを示している。同図におい
て、21,22.23は並列に設けられた仮想記憶装置
であり、仮想記憶値[21,22,23は共通アドレス
空間24と互いに独立な固有アドレス空間25,26.
27を夫々有している。共通アドレス空間24は実質同
一の共同使用される実(主)記憶装置であり、各固有ア
ドレス空間は別個に設けられた外部記憶装置である。こ
れら共通アドレス空間24と固有アドレス空間25,2
6.27は図示外の演算処理装置により総合されて多重
仮想記憶装置21゜22.23を夫々構築している。
Hereinafter, one embodiment of the present invention will be described with reference to FIGS. 1 to 3. FIG. 1 shows a memory map of the program storage method in the virtual storage device of the present invention. In the figure, 21, 22, 23 are virtual storage devices provided in parallel, and virtual storage values [21, 22, 23 are a common address space 24 and mutually independent unique address spaces 25, 26, .
27 each. The common address space 24 is substantially the same shared real (main) storage, and each unique address space is a separate external storage. These common address spaces 24 and unique address spaces 25, 2
6.27 are integrated by an arithmetic processing unit (not shown) to construct multiple virtual storage devices 21, 22, and 23, respectively.

そして、仮想記憶装置21と23には共通部のあるプロ
グラムが夫々記憶されている。仮想空間21には可変部
aと不変部Xからなるプログラムを、又仮想空間23に
は可変部Cと不変部Xとからなるプログラムを夫々記憶
するが、不変部Xが双方に共有される共通部である。
The virtual storage devices 21 and 23 each store a program having a common part. A program consisting of a variable part a and an unchanging part X is stored in the virtual space 21, and a program consisting of a variable part C and an unchanging part X is stored in the virtual space 23. Department.

而して、仮想記憶装置21では、可変部a、不変部Xと
も固有アドレス空間25に、同様に仮想記憶装置23で
も、可変部C0不変部Xとも固有アドレス空間にアドレ
スが互いに関連付けられて夫々記憶している。従って、
プログラムの実行前は、共通アドレス空間24にはプロ
グラムは何ら記憶されていない。
In the virtual storage device 21, the variable part a and the fixed part I remember. Therefore,
Before a program is executed, no program is stored in the common address space 24.

第2図は仮想記憶装置21又は23の固有アドレス空間
25又は27上のメモリマツプの詳細及びデータの動き
を説明する図である。
FIG. 2 is a diagram illustrating details of the memory map and data movement in the unique address space 25 or 27 of the virtual storage device 21 or 23.

記憶されたプログラムの可変部a (又はC1以下単に
aについて説明する)31は、初期設定部と実行制御部
とデータ部とからなり、不変部X32は共通のルーチン
A、ルーチンB−・−ルーチンZ等1例えばI F−T
HANルーチンから夫々構成されている。
The variable part a (or a will be simply explained below in C1) 31 of the stored program consists of an initial setting part, an execution control part, and a data part, and the constant part X32 is a common routine A, routine B, etc. Z etc. 1 For example I F-T
Each routine is composed of HAN routines.

初期設定部は、プログラムが始動した場合に、最初にプ
ログラムの実行制御機能を与えられて、データ部へのア
クセス及び不変部Xに含まれる各ルーチンA等の呼出し
が可能になるように設定するものである。
The initial setting section is set so that when the program is started, it is first given a program execution control function and is able to access the data section and call each routine A etc. included in the constant section X. It is something.

実行制御部は、不変部Xの各ルーチンA等を呼出しなが
らプログラムの処理を進めるものである。
The execution control section advances the processing of the program while calling each routine A of the unchanged section X.

データ部はプログラムの実行時に必要とされる固有デー
タを含むものである。
The data portion contains unique data required when executing the program.

第4図に従って動作を説明する。The operation will be explained according to FIG.

ステップS1では、実行されるプログラムが共用部、即
ち不変部Xを有するものかどうか判断する。もしそうな
らステップS2に進み、まず、可変部aのみを固有アド
レス空間25(外部記憶装置)から、共通アドレス空間
24(実記憶装置)にローデングする。
In step S1, it is determined whether the program to be executed has a shared part, that is, an unchanged part X. If so, the process proceeds to step S2, and first, only the variable part a is loaded from the unique address space 25 (external storage device) to the common address space 24 (real storage device).

ステップ$3では、すでに不変部Xが共通アドレス空間
24(実記憶装置)上に存在するかどうか判断する。も
し存在しなければ、ステップS4で、固有アドレス空間
24(外部記憶装置)から共通アドレス空間24(実記
憶装置)にローデングする。もし別のプログラムで既に
不変部Xが共通アドレス空間24上に存在すれば、不変
部Xを共用するように設定し、そのローデングは不要と
なり、直にステップS5に進む。
In step $3, it is determined whether the constant portion X already exists on the common address space 24 (real storage device). If it does not exist, it is loaded from the unique address space 24 (external storage device) to the common address space 24 (real storage device) in step S4. If the constant part X already exists in the common address space 24 in another program, the constant part X is set to be shared, and its loading becomes unnecessary, and the process directly proceeds to step S5.

ステップS5では、実記憶装置上で可変部aの初期設定
部が実行され初期設定がされる。次にステップS6では
、不変部Xの所望ルーチンを呼出しプログラムの実行が
進められる。
In step S5, the initial setting section of variable section a is executed on the real storage device to perform initial setting. Next, in step S6, a desired routine in the unchanged portion X is called and the execution of the program is advanced.

ステップS1で、共用部がなければステップ37、ステ
ップS8に進み、通常通りプログラムをローデングし、
そして実行する。
In step S1, if there is no shared part, proceed to step 37 and step S8, load the program as usual,
And execute.

・なお、上記実施例では複数個の仮想記憶装置間で、プ
ログラムの不変部Xを共用させたが、同一仮想記憶装置
内で、異なるプログラム間で不変部Xを共用させてもよ
い。
- In the above embodiment, the constant portion X of the program is shared between a plurality of virtual storage devices, but the constant portion X may be shared between different programs within the same virtual storage device.

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

以上説明してきたように、この発明によれば、共通アド
レス空間を狭めず、可変部の動的確保。
As described above, according to the present invention, variable parts can be dynamically allocated without narrowing the common address space.

アドレス変換テーブルの処理も不要となるので、実記憶
装置の余力は他のタスクの処理に振り向けられて、全体
としての仮想アドレス空間の有効利用、プログラムの実
行時間の短縮が可能となる。
Since the processing of the address conversion table is also unnecessary, the remaining capacity of the real storage device can be allocated to processing other tasks, making it possible to effectively utilize the overall virtual address space and shorten the program execution time.

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

第1図はこの発明の仮想記憶装置の制御方式のメモリマ
ツプ図、第2図は第1図の詳細メモリマツプ図、第3図
は動作を説明するためのフローチャート、第4図は従来
のメモリマツプ図である。 21.22.23・・・仮想記憶装置、24・・・共通
アドレス空間、25,26.27・・・固有アドレス空
間、a、c・・・可変部、X・・・不変部。 代理人  大  岩  増  雄(ばか2名)手続補正
書(1鋤 昭和  年  月  日
Fig. 1 is a memory map diagram of the virtual storage device control method of the present invention, Fig. 2 is a detailed memory map diagram of Fig. 1, Fig. 3 is a flowchart for explaining the operation, and Fig. 4 is a conventional memory map diagram. be. 21.22.23...Virtual storage device, 24...Common address space, 25, 26.27...Unique address space, a, c...Variable part, X...Unchangeable part. Agent Masuo Oiwa (two idiots) procedural amendment (1 puke Showa 1999, month, day

Claims (1)

【特許請求の範囲】 演算処理装置と実記憶装置と補助記憶装置とから構築さ
れる仮想記憶装置において、 前記仮想記憶装置は前記補助記憶装置に対応する固有ア
ドレス空間を備え、前記仮想記憶装置に記憶されるプロ
グラム中に、固有の可変部と、他のプログラムに共用で
きる共通の不変部とが存在することを認識し、これら可
変部と不変部とをともに前記固有アドレス空間に記憶す
ることを特徴とする仮想記憶装置の制御方式。
[Scope of Claims] A virtual storage device constructed from an arithmetic processing unit, a real storage device, and an auxiliary storage device, wherein the virtual storage device is provided with a unique address space corresponding to the auxiliary storage device, and the virtual storage device has a unique address space corresponding to the auxiliary storage device. Recognizing that a program to be stored has a unique variable part and a common constant part that can be shared by other programs, and storing both the variable part and the constant part in the unique address space. Features a virtual storage device control method.
JP61129912A 1986-06-04 1986-06-04 Control system for virtual memory Pending JPS63118852A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61129912A JPS63118852A (en) 1986-06-04 1986-06-04 Control system for virtual memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61129912A JPS63118852A (en) 1986-06-04 1986-06-04 Control system for virtual memory

Publications (1)

Publication Number Publication Date
JPS63118852A true JPS63118852A (en) 1988-05-23

Family

ID=15021466

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61129912A Pending JPS63118852A (en) 1986-06-04 1986-06-04 Control system for virtual memory

Country Status (1)

Country Link
JP (1) JPS63118852A (en)

Similar Documents

Publication Publication Date Title
JPS62165250A (en) Virtual memory
JPS6027964A (en) Memory access control circuit
US3778776A (en) Electronic computer comprising a plurality of general purpose registers and having a dynamic relocation capability
US6138210A (en) Multi-stack memory architecture
US6058457A (en) Method for storing method frames in multiple stacks
JPS63118852A (en) Control system for virtual memory
US6067602A (en) Multi-stack-caching memory architecture
US6092152A (en) Method for stack-caching method frames
JPS63244152A (en) Access control system for extended memory device
JP2552287B2 (en) System bus method
JPH1153327A (en) Multiprocessor system
JPH01246635A (en) Task switching system
JP2633382B2 (en) Multi-register file system
JPS63155338A (en) Control system for record of program executing history
JPH0844570A (en) System and method for program execution
JPH08507630A (en) Memory management device and memory management method
EP0521265A2 (en) Parallel processing system
JPS6330946A (en) Paging system for multitask
JPH0423137A (en) Thread generation system and parallel processing system
JPS62151955A (en) Memory addressing system
JPS63197239A (en) Saving/storing system for control information of virtual processor
JPS646487B2 (en)
JPH02150923A (en) Program dividing controller
JPS61133437A (en) One chip microcomputer
JPS61165151A (en) Memory controlling system of data processor