JPS6214244A - Virtual storage control system - Google Patents

Virtual storage control system

Info

Publication number
JPS6214244A
JPS6214244A JP60152874A JP15287485A JPS6214244A JP S6214244 A JPS6214244 A JP S6214244A JP 60152874 A JP60152874 A JP 60152874A JP 15287485 A JP15287485 A JP 15287485A JP S6214244 A JPS6214244 A JP S6214244A
Authority
JP
Japan
Prior art keywords
storage device
area
logical
logical page
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
JP60152874A
Other languages
Japanese (ja)
Inventor
Takeshi Shinoki
剛 篠木
Akira Hattori
彰 服部
Masashi Niwa
雅司 丹羽
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 JP60152874A priority Critical patent/JPS6214244A/en
Publication of JPS6214244A publication Critical patent/JPS6214244A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To avoid the redundant load of the logical page in the paging control by providing the flag to show that the data copying processing is being executed in the garbage collection and the border register to show the copying destination area. CONSTITUTION:For the copying-type garbage collection system, a flag 20 to show that the data copying processing is being executed from one side area to other side area and a border register 21 to show the copying destination area are provided. When the logical page of the access destination is not loaded to a main storage device, the flag 20 displays that the copying processing is being executed and said access destination is located in the copying destination area displayed at the border register 21, the logical page is not loaded from the storage device and the copying destination logical page is set on the main storage device.

Description

【発明の詳細な説明】 〔概 要〕 仮想記憶システムのページングの制御方式である。仮想
記憶システムでLISPプログラムを実行する場合等で
、論理空間に2領域を設けて交互に使用する、複写型ガ
ーベジコレクション方式がある。
[Detailed Description of the Invention] [Summary] This is a paging control method for a virtual storage system. When a LISP program is executed in a virtual storage system, there is a copy type garbage collection method in which two areas are provided in a logical space and used alternately.

その場合、ガーベジコレクションの複写中を示すフラグ
を設け、複写処理中に複写先の論理ページが主記憶装置
に無い場合には、その論理ページをロードすること無く
、主記憶装置に取ったページ領域をそのま\論理ページ
として使用するようにする。これにより複写更新される
ページのロードが省略され、オーバヘッドを減少できる
In that case, a flag is set to indicate that the garbage collection is being copied, and if the logical page to be copied is not in the main storage during the copying process, the page area is allocated to the main storage without loading that logical page. Use it as is as a logical page. This eliminates the need to load pages to be copied and updated, reducing overhead.

〔産業上の利用分野〕[Industrial application field]

本発明は、情報処理システムにおける、仮想記憶システ
ムのベージングの制御方式に関する。
The present invention relates to a paging control method for a virtual storage system in an information processing system.

多くの情報処理システJ・における、仮想記憶システム
では公知のように、論理空間を一定の大きさの論理ペー
ジに分割して管理し、アクセスの要求が発生したときに
、その論理ページが主記憶装置に無ければ、該当の論理
ページを論理空間を保持する外部の記憶装置から主記憶
装置にロートして、アクセスを実行する方式が採られて
いる。
As is well known in the virtual storage system of many information processing systems, the logical space is managed by dividing it into logical pages of a certain size, and when an access request occurs, the logical page is transferred to the main memory. If the logical page does not exist in the device, a method is adopted in which the relevant logical page is loaded from an external storage device that holds a logical space to the main storage device and accessed.

そのようなシステムで書込みアクセスの場合に、論理ペ
ージのロードが実行されても、もしその論理ページの有
効な内容が、以前の内容に関わらずすべて更新される場
合には、以前の内容をロードしたことは実際上無駄にな
るので、少なくともこのようなアクセスを行うことが事
前に明らかな場合には、ロードを実行しないで、主記憶
装置上にページ領域を取ることができれば、処理効率上
望ましい。
In the case of write access in such a system, even if a logical page load is performed, if the valid contents of that logical page are all updated regardless of the previous contents, the previous contents will be loaded. What you do is actually a waste, so at least if it is clear in advance that such an access will be performed, it is desirable for processing efficiency to be able to take up page space on main storage without performing the load. .

〔従来の技術と発明が解決しようとする問題点〕第3図
は、情報処理システムの一構成例を示すブロック図であ
る。
[Prior art and problems to be solved by the invention] FIG. 3 is a block diagram showing an example of the configuration of an information processing system.

記↑a制御装置1は、処理装置2、入出力処理装置3、
主記憶装置4を接続し、それらの装置間のアクセスを制
御する。
↑a The control device 1 includes a processing device 2, an input/output processing device 3,
The main storage device 4 is connected and access between these devices is controlled.

処理装置2は、記憶制御■装置1を経て主記憶装置4に
アクセスすることにより、主記憶装置4に保持されてい
るプログラムを実行して、同じく保持されているデータ
を処理する。
The processing device 2 accesses the main storage device 4 via the storage control device 1, executes the program held in the main storage device 4, and processes the data also held.

入出力処理装置3は、例えは磁気ディスク記憶装置で構
成される記憶装置5を接続し、処理装置2の指令によっ
て、記憶装置5と主起1a装置4との間のプログラム、
データ等の転送を制御する。
The input/output processing device 3 is connected to a storage device 5 made up of, for example, a magnetic disk storage device, and executes programs between the storage device 5 and the host device 1a 4 according to instructions from the processing device 2.
Controls the transfer of data, etc.

仮想記憶方式の場合、通常上記1a装置の記憶領域より
十分大きな領域を有する、論理空間の内容が、記憶装置
5に保持され、一定の大きさく例えば4キロバイト)の
論理ページに分割して管理される。
In the case of the virtual storage method, the contents of a logical space, which usually has a sufficiently larger area than the storage area of the device 1a, is held in the storage device 5 and managed by dividing it into logical pages of a certain size (for example, 4 kilobytes). Ru.

それらの論理ページは主記憶装置4にロードされて、は
じめて処理装置2からアクセス可能であり、処理装置2
で実行されるプログラムから発生される論理アドレス 
(論理空間内のアドレス)は、公知の処理装置2に設け
られるアドレス変換機構及び記憶管理プログラムによっ
て、対応する論理ページのロードされている実アドレス
(主記憶装置4上の記憶アドレス)に変換されて、アク
セスが実行される。
Those logical pages can be accessed from the processing device 2 only after being loaded into the main storage device 4.
A logical address generated from a program executed in
(address in the logical space) is converted into a real address (a storage address on the main storage device 4) at which the corresponding logical page is loaded by an address translation mechanism and a storage management program provided in the known processing device 2. access is performed.

処理装置2でアクセス要求が出たとき、該当する論理ペ
ージが主記憶装置4に無い場合(この状at−ページフ
ォールトという)には、記憶管理プログラムによる公知
のページング制御によって、所要の論理ページが記憶装
置5から主記憶装置4ヘロードされる。
When an access request is issued by the processing device 2, if the corresponding logical page does not exist in the main storage device 4 (this condition is referred to as an at-page fault), the required logical page is stored using known paging control by the storage management program. It is loaded from the storage device 5 to the main storage device 4.

以上のようなページング制御によって主記憶装置4にロ
ードされた論理ページについて、もし、その以前の内容
力月度も参照されること無く、別のデータで更新されて
、新データのみが有効データになるとすると、記憶装置
5に保持されていた該論理ページの内容を主記憶装置4
に転送したことは、結果的に全く無駄であったというこ
とになる。
If the logical page loaded into the main storage device 4 by the above paging control is updated with different data without referring to the previous content, only the new data becomes valid data. Then, the contents of the logical page held in the storage device 5 are transferred to the main storage device 4.
In the end, it turned out to be a complete waste of money.

従って、もしそのような態様の処理がされることが、そ
の論理ページのページフォールトが発生した時に決定し
ているならば、そのようなアクセス要求によるページン
グ制御においては、単に主記憶装置4上の1ページ1i
llJ1を空きにして、それを該当の論理ページ(がロ
ードされたもの)とみなせばよい。
Therefore, if it is determined that such processing will be performed when a page fault occurs for that logical page, paging control based on such access requests will simply involve 1 page 1i
All you have to do is make llJ1 empty and consider it as the corresponding logical page (the one loaded).

このような処理態様が、ページフォールト時から決定し
ている場合の一例として、LISPプログラムの実行等
における、ガーベジコレクション中のページフォールト
がある。
An example of a case where such a processing mode is determined from the time of a page fault is a page fault during garbage collection during execution of a LISP program or the like.

公知のように、プログラミング言語LISPで記述され
たプログラムは、リストを構成するデータを処理し、リ
ストは所定の形式でポインタによりチェインされたデー
タであり、一般に、処理の進行と共に、リストは伸縮さ
れ、又ポインタのつなぎ換え等が生じるので、論理空間
上のデータ領域には次第に半端な空き領域が多くなる結
果、実効的に領域が不足するようになる。
As is well known, a program written in the programming language LISP processes data that constitutes a list, and a list is data chained by pointers in a predetermined format, and in general, the list is expanded or contracted as processing progresses. In addition, as pointers are reconnected, etc., the data area in the logical space gradually becomes full of irregular empty areas, resulting in an effective area shortage.

このような状態において、データ領域を整理して、空き
領域をまとめる処理を、ガーベジコレクションと呼んで
いる。
In such a state, the process of organizing data areas and collecting free areas is called garbage collection.

ガーベジコレクションの一方式である複写型ガーベジコ
レクション方式では、第4図に示すように、空間内に2
つのデータ領域1O111を設け、一方のデータ領域(
例えばデータ領域10)を使用して目SPプログラムの
実行を進めた結果、ガーベジコレクションが必要になる
と、データ領域10に分散している有効リストのデータ
12を、データ領域11にデータ13として例示するよ
うに配置をつめて、複写することにより、ガーベジコレ
クションを実施した結果をデータ領域11に得る。
In the copy type garbage collection method, which is a type of garbage collection method, as shown in Figure 4, two
Two data areas 1O111 are provided, and one data area (
For example, if garbage collection becomes necessary as a result of proceeding with the execution of the SP program using the data area 10), data 12 of the valid list distributed in the data area 10 is exemplified as data 13 in the data area 11. The results of garbage collection are obtained in the data area 11 by arranging and copying the data as shown in FIG.

その後は、LISPプログラムは、データ領域11につ
いて、実行を継続するように制御される。
After that, the LISP program is controlled to continue executing the data area 11.

このようなガーベジコレクション処理の、例えばデータ
領域10からデータ領域11への1データの転送は、デ
ータ領域10の1論理ページ内のデータを読みだして、
データ領域11の論理ページへ、例えばデータ領域11
の先頭の論理ページから順次使用して、転送する形で進
められるので、この間にページフォールトが発生すれば
、前記のようにして、記憶装置5からロードされる。
In such garbage collection processing, for example, transferring one piece of data from the data area 10 to the data area 11 involves reading out the data within one logical page of the data area 10,
To the logical page of data area 11, for example, data area 11
Since the logical page is sequentially used and transferred from the first logical page, if a page fault occurs during this time, it is loaded from the storage device 5 as described above.

こ−で、データ転送先のデータ領域の論理ページは、前
記説明から明らかなように、単にデータが書き込まれて
、新たに書き込まれたデータのみが有効データになる。
As is clear from the above description, data is simply written to the logical page of the data area of the data transfer destination, and only the newly written data becomes valid data.

従って、この論理ページは記憶装置5からロードされる
必要が無いにも関わらず、一般的なページング制御によ
って、無駄なロードが実行されることになる。
Therefore, although this logical page does not need to be loaded from the storage device 5, general paging control will result in unnecessary loading.

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

第1図は、本発明の構成を示すブロック図である。 FIG. 1 is a block diagram showing the configuration of the present invention.

図において、20はガーベジコレクションにおけるデー
タ複写処理中を示すフラグ、21は複写先領域を示す境
界レジスタ、22はガーベジコレクタ、23は記憶管理
プログラムである。
In the figure, 20 is a flag indicating that data copy processing is in progress in garbage collection, 21 is a boundary register indicating a copy destination area, 22 is a garbage collector, and 23 is a storage management program.

〔作 用〕[For production]

ガーベジコレクタ22は、処理の開始時にフラグ20を
処理中の表示にセットし、又境界レジスタ21にガーベ
ジコレクションによって複写先になる領域を示すアドレ
スを設定する。
The garbage collector 22 sets a flag 20 to indicate that processing is in progress at the start of processing, and also sets an address in the boundary register 21 that indicates the area to be copied by garbage collection.

ページフォールトが発生して記憶管理プログラム23が
処理を開始すると、先ずフラグ20が処理中表示か識別
し、処理中であればアクセス要求先のアドレスが境界レ
ジスタ21で示される領域内か識別する。
When a page fault occurs and the storage management program 23 starts processing, first it is determined whether the flag 20 indicates that the process is in progress, and if the process is in progress, it is determined whether the address of the access request destination is within the area indicated by the boundary register 21.

その結果、アクセス先アドレスが複写先領域であること
を識別した場合には、記憶管理プログラム23は、公知
の方法で主記憶装置4に、1ページの空きページ領域を
設定し、これを要求の論理ページとしてアクセスできる
ようにアドレス変換機構を設定する。
As a result, if the access destination address is identified as the copy destination area, the storage management program 23 sets a free page area of one page in the main storage device 4 using a known method, and uses this as the requested area. Set up the address translation mechanism so that it can be accessed as a logical page.

以上の構成により、ベージング制御において、論理ペー
ジの冗長なロードを避けることが可能になる。
The above configuration makes it possible to avoid redundant loading of logical pages in paging control.

〔実施例〕〔Example〕

第1図において、ガーベジコレタ22及び記憶管理プロ
グラム23は、以下に説明する制御を行う他は、それぞ
れ従来のガーベジコレクション処理プログラム及び記憶
管理プログラムと同様の処理を、前記のように実行する
ものとし、ガーベジコレクションは、前記のように複写
型ガーベジコレクション方式による。
In FIG. 1, the garbage collector 22 and the storage management program 23 execute the same processes as the conventional garbage collection processing program and storage management program, respectively, as described above, except for performing the control described below. Garbage collection is performed using the copy type garbage collection method as described above.

以下の説明では、第1図と共に、第2図の処理の流れ図
を参照する。
In the following description, reference will be made to the process flowchart of FIG. 2 as well as FIG. 1.

第4図に例示したデータ領域l0111の一方を使用し
ていて、まとまった空き領域が無くなると、ガーベジコ
レタ22が呼び出される。
When one of the data areas 10111 illustrated in FIG. 4 is being used and a large amount of free space runs out, the garbage collector 22 is called.

ガーベジコレクタ22は、第2図の処理のステップ30
において、フラグ20を処理中の表示にセントし、ステ
ップ31で境界レジスタ21にガーベジコレクションに
よって複写先になる領域を示すアドレスを設定する。
Garbage collector 22 performs step 30 of the process of FIG.
At step 31, the flag 20 is set to indicate the processing in progress, and at step 31, an address indicating the area to be copied by garbage collection is set in the boundary register 21.

フラグ20及び境界レジスタ21には、例えば処理装置
2内の特定のレジスタを使用する。境界レジスタ21に
は、例えば第4図に示す領域10又は11の先頭アドレ
ス及び最終アドレスを設定するものとする。
For example, specific registers within the processing device 2 are used as the flag 20 and the boundary register 21. It is assumed that the start address and end address of the area 10 or 11 shown in FIG. 4 are set in the boundary register 21, for example.

ガーベジコレクタ22は、その後ステップ32に進んで
、従来と同様にガーベジコレクション処理を実行する。
The garbage collector 22 then proceeds to step 32 and executes garbage collection processing in the same manner as before.

ステップ32の処理過程において、ページフォールトが
発生すると、記憶管理プログラム23に制御が渡される
。記憶管理プログラム23は、最初のステップ40にお
いて、フラグ20が処理中表示か識別し、処理中表示で
なければステップ41以降の通常のベージング制御を実
行する。
When a page fault occurs in the process of step 32, control is passed to the storage management program 23. In the first step 40, the storage management program 23 determines whether the flag 20 indicates that processing is in progress, and if it does not indicate that processing is in progress, it executes normal paging control from step 41 onwards.

即ち、ステップ41で、主記憶装置4に空きページ領域
を取り、ステップ42で、そのページ領域に記憶装置5
から論理ページをロードし、ロードが完了すると、ステ
ップ43でその論理ページにアクセスできるようにアド
レス変換機構を設定し、その後ガーベジコレクタ22の
ステップ32の中断点へ制御を戻す。
That is, in step 41, a free page area is taken in the main storage device 4, and in step 42, the storage device 5 is allocated to that page area.
When the load is complete, step 43 sets up the address translation mechanism to access the logical page, and then returns control to the point where garbage collector 22 left off in step 32.

フラグ20が処理中表示であればステップ44で、アク
セス要求先のアドレスが境界レジスタ21で示される複
写領域内か識別する。
If the flag 20 indicates that processing is in progress, it is determined in step 44 whether the address of the access request destination is within the copy area indicated by the boundary register 21.

その結果、アクセス先アドレスが複写先領域でなければ
、ステップ41に進んで、前記と同様に通常のベージン
グ制御を実行する。
As a result, if the access destination address is not in the copy destination area, the process advances to step 41 and normal paging control is executed in the same manner as described above.

アクセス先アドレスが複写先領域であることを識別した
場合には、ステップ45において、主記憶装置4に、1
ページの空きページ領域を設定して、これを要求の論理
ページとし、ステップ43に進んで、このページにアク
セスできるようにアドレス変換機構を設定した後、ガー
ベジコレクタ22のステップ32の中断点へ制御を戻す
If it is determined that the access destination address is the copy destination area, in step 45, 1 is stored in the main storage device 4.
After setting the free page area of the page and making it the logical page of the request, proceeding to step 43 and setting up the address translation mechanism to access this page, the garbage collector 22 returns to the break point of step 32. Return.

ガーベジコレクタ22はステップ32の処理が終わると
、ステップ33でフラグ20をリセットし、ガーベジコ
レクションを完了する。
When the garbage collector 22 completes the process in step 32, it resets the flag 20 in step 33 and completes the garbage collection.

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

以上の説明から明らかなように、本発明によれば、仮想
記憶方式の情報処理システムにおいて、ページング制御
における、論理ページの冗長な0−ドを省略して、ベー
ジング制御のオーバヘッドを減少し、ベージング処理時
間を短縮するので、ガーベジコレクション等が高速にな
り、情報処理システムの処理効率を改善するという著し
い工業的効果がある。
As is clear from the above description, according to the present invention, in a virtual memory type information processing system, redundant 0-words of logical pages are omitted in paging control, the overhead of paging control is reduced, and paging control is reduced. Since the processing time is shortened, garbage collection and the like become faster, which has a significant industrial effect of improving the processing efficiency of the information processing system.

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

第1図は本発明の実施例構成ブロック図、第2図は本発
明の処理の流れ図、 第3図は情報処理システムの一構成例ブロック図、第4
図はガーベジコレクションの説明図である。 図において、 1は記憶制御装置、  2は処理装置、3は入出力処理
装置、 4は主記憶装置、5は記憶装置、    10
.11はデータ領域、20はフラグ、     21は
境界レジスタ、22はガーベジコレクタ、23は記憶管
理プログラム、30〜33.40〜45は処理のステッ
プを示す。
Fig. 1 is a block diagram of the configuration of an embodiment of the present invention, Fig. 2 is a flowchart of the processing of the present invention, Fig. 3 is a block diagram of an example configuration of an information processing system, and Fig. 4 is a block diagram of an example configuration of an information processing system.
The figure is an explanatory diagram of garbage collection. In the figure, 1 is a storage control device, 2 is a processing device, 3 is an input/output processing device, 4 is a main storage device, 5 is a storage device, 10
.. 11 is a data area, 20 is a flag, 21 is a boundary register, 22 is a garbage collector, 23 is a storage management program, 30 to 33, and 40 to 45 are processing steps.

Claims (1)

【特許請求の範囲】 記憶装置に複数の論理ページからなる論理空間のデータ
を保持し、所要の時に所要の該論理ページを、該記憶装
置から主記憶装置へロードしてアクセスするように構成
され、所定の場合に、該論理空間内の所定の2領域の、
一方の該領域に保持するデータを他方の該領域へ複写す
ることにより、該2領域を交互に使用するようにされた
情報処理システムにおいて、 該一方の領域から他方の領域へのデータ複写の処理中を
示すフラグ(20)、 及び、複写先領域を表示する手段(21)を設け、アク
セス先の論理ページが上記主記憶装置にロードされてい
ない場合に、該フラグ(20)が該複写処理中を表示し
、且つ該アクセス先が上記表示手段(21)に表示され
る複写先領域内にある場合には、該論理ページを上記記
憶装置からロードすること無く、該主記憶装置上に該複
写先論理ページを設定するように構成されていることを
特徴とする仮想記憶制御方式。
[Scope of Claims] Data in a logical space consisting of a plurality of logical pages is held in a storage device, and the required logical pages are loaded from the storage device to the main storage device and accessed when necessary. , in a given case, of two given areas in the logical space,
In an information processing system configured to alternately use the two areas by copying data held in one area to the other area, processing for copying data from the one area to the other area. A flag (20) indicating "inside" and a means (21) for displaying a copy destination area are provided, and when the logical page to be accessed is not loaded in the main storage device, the flag (20) indicates that the copy process is not executed. If the access destination is within the copy destination area displayed on the display means (21), the logical page is stored on the main storage device without being loaded from the storage device. A virtual memory control method configured to set a copy destination logical page.
JP60152874A 1985-07-11 1985-07-11 Virtual storage control system Pending JPS6214244A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60152874A JPS6214244A (en) 1985-07-11 1985-07-11 Virtual storage control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60152874A JPS6214244A (en) 1985-07-11 1985-07-11 Virtual storage control system

Publications (1)

Publication Number Publication Date
JPS6214244A true JPS6214244A (en) 1987-01-22

Family

ID=15550004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60152874A Pending JPS6214244A (en) 1985-07-11 1985-07-11 Virtual storage control system

Country Status (1)

Country Link
JP (1) JPS6214244A (en)

Similar Documents

Publication Publication Date Title
JPS6214244A (en) Virtual storage control system
JPS63244152A (en) Access control system for extended memory device
JPS61184643A (en) Starting control system for virtual computer
JP2718676B2 (en) Virtual memory dump processing method
JPH02238490A (en) Image processor
JPH04113432A (en) Virtual storage control method
JP2735400B2 (en) Asynchronous I / O control method
JPS62108346A (en) Inter-process communication system
Denning Virtual memory
JPS6149704B2 (en)
JPH0658647B2 (en) Page fault test method on computer
JPS62212850A (en) Memory device
JPS60256858A (en) Program loading system
JPS61280167A (en) Picture memory controlling device
JPH03265045A (en) Managing method for shared data between computers
JPH02219142A (en) Memory control system
JPS59211156A (en) Copying system of address space
JPH0816478A (en) Vector data processor
JPS63173144A (en) Control system for actual time garbage collection
JPH01173240A (en) Buffer memory management system
JPS6058495B2 (en) Page management method
JPH03132839A (en) Data processor
JPH04280337A (en) Virtual storage computer system
JPH04188326A (en) Stack area managing system
JPH05165756A (en) Channel controller with macro processing function