JP3094477B2 - Virtual storage management method - Google Patents

Virtual storage management method

Info

Publication number
JP3094477B2
JP3094477B2 JP03038984A JP3898491A JP3094477B2 JP 3094477 B2 JP3094477 B2 JP 3094477B2 JP 03038984 A JP03038984 A JP 03038984A JP 3898491 A JP3898491 A JP 3898491A JP 3094477 B2 JP3094477 B2 JP 3094477B2
Authority
JP
Japan
Prior art keywords
pages
page
job
memory
page table
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 - Fee Related
Application number
JP03038984A
Other languages
Japanese (ja)
Other versions
JPH04257041A (en
Inventor
幸貴 ▲斉▼川
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
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP03038984A priority Critical patent/JP3094477B2/en
Publication of JPH04257041A publication Critical patent/JPH04257041A/en
Application granted granted Critical
Publication of JP3094477B2 publication Critical patent/JP3094477B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、電子計算機システムに
おける仮想記憶管理方式に関する。
The present invention relates to a virtual storage management system in an electronic computer system.

【0002】[0002]

【従来の技術】仮想記憶管理は、論理空間をセグメント
とページとによって細分化し、主記憶上のメモリとのマ
ッピングを行っている。このマッピングは、ジョブ毎に
与えられるセグメントテーブルおよびページテーブルと
呼ばれる制御表によって行われる。
2. Description of the Related Art In virtual memory management, a logical space is subdivided into segments and pages, and mapping is performed with a memory on a main memory. This mapping is performed by a control table called a segment table and a page table provided for each job.

【0003】従来の仮想記憶管理方式では、主記憶上の
メモリ効率を向上させるため、最初のメモリ確保時にペ
ージテーブルを作成し、その後、メモリ確保が起こりペ
ージテーブルが不足すると伸張するようになっている。
ページテーブルを伸張する方法は、伸張すべき大きさの
別の領域を確保した上で、現在のページテーブルの内容
を新しく確保した領域にコピーし、コピー後の領域を新
たにページテーブルとして使用するものである。
In the conventional virtual memory management method, a page table is created at the time of securing the first memory in order to improve the memory efficiency on the main memory, and then the memory is expanded when the memory is secured and the page table becomes insufficient. I have.
The method of expanding the page table is to secure another area of the size to be expanded, copy the contents of the current page table to the newly secured area, and use the copied area as a new page table. Things.

【0004】[0004]

【発明が解決しようとする課題】しかし、上述した従来
の仮想記憶管理方式では、ジョブのメモリ確保量が増加
するにつれて段階的にページテーブルを伸張するので、
オーバヘッドが大きいという問題があった。
However, in the above-described conventional virtual storage management method, the page table is expanded stepwise as the memory reservation of the job increases.
There is a problem that overhead is large.

【0005】[0005]

【問題点を解決するための手段】上記の課題を解決する
ために、本発明の仮想記憶管理方式は、各セグメントの
使用ページ数を複数のジョブ毎にメモリに記憶する使用
ページ記憶手段と、ジョブ実行中における前記メモリの
確保及び解放のたびに変動する前記使用ページ数がそれ
ぞれ最大のときに該ページ数をそのジョブの使用ページ
数として前記セグメント毎に前記メモリに格納するペー
ジ数取得手段と、ジョブ起動時に、前記メモリに格納さ
れている複数の前記ページの数量に基づく統計情報か
ら、ジョブのセグメント毎の使用ページ数を予測する使
用ページ数予測手段と、予測された前記使用ページ数か
らページテーブル長を計算し、ページテーブルを作成す
るページテーブル作成手段とを備え、前記ページテーブ
ル作成手段は、一旦作成したページテーブルの大きさを
伸張することなく保持するように、前記ジョブが起動さ
れる時に、前記ページテーブルを作成することを特徴と
する。
[Means for Solving the Problems ] To solve the above problems
Therefore, the virtual storage management method of the present invention
Use to store the number of used pages in memory for each job
Page storage means, and the memory of the memory during job execution.
The number of used pages that fluctuates each time it is allocated and released
When the number of pages is maximum, the number of pages is used for the job
Number of pages to be stored in the memory for each segment.
Means for acquiring the number of pages,
Statistics based on the quantity of the pages listed
To estimate the number of pages used for each job segment.
Means for estimating the number of pages for use and the estimated number of used pages
Calculate the page table length and create the page table.
Page table creating means, and the page table
The file creation means determines the size of the page table once created.
The job is launched to hold it without stretching
When the page table is created,
I do.

【0006】[0006]

【作用】本発明は以上のように構成されているので、ジ
ョブのメモリ使用量をセグメント毎に統計を取ることに
より、セグメント毎の過去の使用量からページテーブル
の大きさを予測し、ジョブ起動時に予めページテーブル
を作成しておき、ページテーブルの伸張処理の回数を減
少させることができる。
Since the present invention is configured as described above, the size of the page table is predicted from the past usage amount of each segment by collecting statistics on the memory usage amount of the job for each segment, and starting the job. At times, a page table is created in advance, and the number of times of expanding the page table can be reduced.

【0007】[0007]

【実施例】以下本発明の実施例を図面を参照して説明す
る。図1は本発明の一実施例を示すブロック構成図であ
る。同図において、1はジョブ実行中にジョブからの依
頼によるメモリ確保とメモリ解放によって変動するペー
ジ数が最大となる時点のページ数をそのジョブの使用ペ
ージ数として、使用ページ数記憶手段2に設定する使用
ページ数取得手段2は使用ページ数取得手段1によって
主記憶またはディスクなどの記憶媒体上に設定されるも
ので、セグメント毎の使用ページ数をジョブ毎に保存す
る使用ページ数記憶手段、3はジョブ起動時に使用ペー
ジ数記憶手段2に保存されている使用ページ数の統計情
報から、ジョブ実行中に変動する当該ジョブに属するペ
ージ数の最大値を予測する使用ページ数予測手段、4は
使用ページ数予測手段3から通知されるページ数に基づ
いてページテーブルを作成するページテーブル作成手
段、5は同様に、使用ページ数予測手段3から通知され
るページ数が基準値以上であるときに、ページテーブル
作成手段4に代ってページテーブルを作成するメモリ負
荷時ページテーブル作成手段である。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing an embodiment of the present invention. In FIG. 1, reference numeral 1 designates the number of pages at the time when the number of pages fluctuating by securing and releasing memory during a job execution becomes maximum as the number of used pages of the job in the used page number storage means 2. The used page number acquiring means 2 is set on a storage medium such as a main memory or a disk by the used page number acquiring means 1, and used page number storing means for storing the number of used pages for each segment for each job. Is used page number estimating means for estimating the maximum value of the number of pages belonging to the job which fluctuates during the execution of the job from the used page number statistical information stored in the used page number storing means 2 at the time of starting the job. The page table creation means 5 for creating a page table based on the number of pages notified from the page number estimation means 3 and the page table When the number of pages sent from the di-number prediction means 3 is equal to or greater than the reference value, a memory load page table creation means for creating a page table in place of the page table creation means 4.

【0008】次に以上のように構成された仮想記憶管理
方式の動作を説明する。
Next, the operation of the virtual storage management system configured as described above will be described.

【0009】使用ページ数取得手段1は、ジョブ開始
時、ジョブからのメモリ確保依頼発生時、ジョブからの
メモリ解放依頼発生時、およびジョブ終了時に実行され
る。使用ページ数を求めるために、各セグメントに関し
て例えば、使用ページ数カウンタ(図示せず)と最大使
用ページ数カウンタ(図示せず)を用い、ジョブ開始時
には、各セグメントの使用ページ数カウンタと最大使用
ページ数カウンタは0クリアしておく。ジョブからのメ
モリ確保依頼が発生した時には、各セグメントに依頼さ
れた確保ページ数分だけ、使用ページ数カウンタを加算
する。この時、各セグメントの使用ページ数カウンタと
最大使用ページ数カウンタとを比較して、使用ページ数
カウンタの方が最大使用ページ数カウンタよりも大きい
場合には、使用ページ数カウンタの値を最大使用ページ
数カウンタに設定する。また、ジョブからのメモリ解放
依頼が発生した時には、各セグメントに依頼された解放
ページ数分だけ使用ページ数カウンタを減算する。そし
てジョブ終了後に、各セグメントの最大使用ページ数カ
ウンタの値を使用ページ数記憶手段2に設定する。
The used page number acquiring means 1 is executed when a job is started, when a memory reservation request is issued from a job, when a memory release request is issued from a job, and when a job is terminated. To determine the number of used pages, for example, a used page number counter (not shown) and a maximum used page number counter (not shown) are used for each segment. The page number counter is cleared to 0. When a memory reservation request is issued from a job, the used page counter is incremented by the number of reserved pages requested for each segment. At this time, the used page counter of each segment is compared with the maximum used page counter, and if the used page counter is larger than the maximum used page counter, the value of the used page counter is used to the maximum. Set to the page number counter. When a memory release request is issued from a job, the used page counter is decremented by the number of released pages requested for each segment. After the job is completed, the value of the maximum used page number counter of each segment is set in the used page number storage unit 2.

【0010】図2は使用ページ数記憶手段2の制御表1
0の構成の一例を説明する図である。11は制御表10
が属するプログラム名、12はプログラム名11のブロ
グラムの起動回数、13は各セグメント内使用ページ数
を記憶するセグメント内使用ページエントリである。こ
のセグメント内使用ページエントリ13には、過去16
回分の使用ページ数を記憶する使用ページ数エントリが
0番から15番までの16エントリである。使用ページ
数取得手段1が使用ページ数を設定する場合は以下の手
順で行う。先ず、ジョブのプログラム名に対応する使用
ページ数記憶部2の制御表10をサーチし、制御表10
の起動回数12に1を加算する。次に、セグメント内使
用ページエントリの第1エントリ13について、制御表
10の起動回数12の右4ビットを数値に変換して、使
用ページ数エントリのエントリ番号とし、前記エントリ
番号に対応する使用ページ数エントリに、使用ページ数
取得手段1によって取得した使用ページ数を設定する。
このようにして、セグメント内使用ページエントリの第
2エントリ14以降も同様に行う。
FIG. 2 is a control table 1 of the used page number storage means 2.
FIG. 3 is a diagram for explaining an example of a configuration of a zero. 11 is a control table 10
, The number of startups of the program having the program name 11, and the in-segment used page entry 13 for storing the number of used pages in each segment. The used page entry 13 in the segment includes the past 16
The used page number entries for storing the number of used pages for 16 times are 16 entries from No. 0 to No. 15. When the used page number acquiring means 1 sets the number of used pages, the following procedure is performed. First, the control table 10 of the used page number storage unit 2 corresponding to the program name of the job is searched, and the control table 10 is searched.
1 is added to the number of activations 12 of. Next, for the first entry 13 of the used page entry in the segment, the right 4 bits of the number of activations 12 in the control table 10 are converted into a numerical value to be the entry number of the used page number entry, and the used page corresponding to the entry number is used. The number of used pages acquired by the used page number acquiring unit 1 is set in the number entry.
In this manner, the same operation is performed for the second entry 14 and subsequent entries of the used page entry in the segment.

【0011】使用ページ数予測手段3は、ジョブ起動時
に実行され、起動されるジョブのプログラム名に対応す
る使用ページ数記憶手段2の制御表10を得る。使用ペ
ージ数記憶手段2の制御表10には過去16回起動され
たときの各セグメントの使用ページ数が対応するセグメ
ント内使用ページエントリ13に格納されているので、
各セグメント毎に使用ページ数エントリ13の16エン
トリ分の使用ページ数の平均値を計算する。前記計算に
よって求めた平均値を予想使用ページ数とし、ページテ
ーブル作成手段4に通知する。ページテーブル作成手段
4は、使用ページ数予測手段3から通知されたジョブの
セグメント毎の予想使用ページ数から、予想使用ページ
数を満足するようなページテーブル長を計算してページ
テーブル領域を確保し、その領域をページテーブル用に
初期化する。メモリ負荷時ページテーブル作成手段5
は、システムのメモリ使用率が基準値以上である場合
に、ページテーブル作成手段4に代わってページテーブ
ル領域を確保する。使用ページ数予測手段3から通知さ
れたジョブのセグメント毎の予想使用ページ数があらか
じめ設定された基準値以上であったときには、基準値を
ページテーブル長として採用することによってページテ
ーブル領域を確保し、その領域をページテーブル用に初
期化する。
The used page number estimating means 3 is executed when the job is started, and obtains the control table 10 of the used page number storing means 2 corresponding to the program name of the job to be started. The control table 10 of the used page number storage means 2 stores the number of used pages of each segment when activated 16 times in the past in the corresponding used page entry 13 in the segment.
The average value of the number of used pages for 16 entries of the used page number entry 13 is calculated for each segment. The average value obtained by the above calculation is used as the estimated number of pages to be used, and is notified to the page table creating means 4. The page table creation means 4 secures a page table area by calculating a page table length that satisfies the expected number of used pages from the expected number of used pages for each segment of the job notified from the used page number estimation means 3. , Initialize the area for the page table. Memory load page table creation means 5
Secures a page table area in place of the page table creation means 4 when the memory usage rate of the system is equal to or more than the reference value. When the predicted number of used pages for each segment of the job notified from the used page number prediction unit 3 is equal to or larger than a preset reference value, the reference value is adopted as the page table length to secure a page table area, Initialize the area for the page table.

【0012】[0012]

【発明の効果】以上説明したように、本発明によれば、
ジョブ起動的にジョブのセグメント毎の使用ページ数を
予測してページテーブルを予め確保しておくことによ
り、ページテーブルのメモリ確保時に発生する伸張処理
の回数を減少させることができるので、システムのオー
バヘッドを少なくすることができるという優れた効果が
ある。また、システムのメモリ使用率が高い時には、ジ
ョブ起動的に確保するページテーブルの大きさを基準値
以内に抑えるので、メモリ負荷状態である場合は、主記
憶を効率的に使用することができるという優れた効果も
ある。
As described above, according to the present invention,
By predicting the number of pages used for each segment of the job upon job startup and reserving the page table in advance, the number of decompression processes that occur when reserving memory for the page table can be reduced, so that system overhead is reduced. Has an excellent effect that it can be reduced. In addition, when the memory usage rate of the system is high, the size of the page table secured for job activation is suppressed to within the reference value, so that when the memory load is on, the main storage can be used efficiently. There is also an excellent effect.

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

【図1】本発明の一実施例のブロック構成図、FIG. 1 is a block diagram of an embodiment of the present invention;

【図2】本発明のページ数記憶手段における制御表の構
成例を示す説明図である。
FIG. 2 is an explanatory diagram showing a configuration example of a control table in a page number storage unit of the present invention.

【符号の説明】[Explanation of symbols]

1 使用ページ数取得手段、 2 使用ページ数記憶手段、 3 使用ページ数予測手段、 4 ページテーブル作成手段、 5 メモリ負荷時ページテーブル作成手段。 1 used page number acquisition means, 2 used page number storage means, 3 used page number prediction means, 4 page table creation means, 5 memory load page table creation means.

フロントページの続き (56)参考文献 特開 昭63−113740(JP,A) 特開 昭62−241050(JP,A) 特開 昭64−241050(JP,A) 特開 平3−240849(JP,A) 特開 平2−12339(JP,A) 特開 昭62−79549(JP,A) 特開 平3−147042(JP,A) 特開 平4−213132(JP,A) 特開 平2−304655(JP,A) 特開 昭60−8960(JP,A) 特開 平3−91046(JP,A) 特開 昭63−76033(JP,A) 特開 平4−153848(JP,A) 特開 平2−196352(JP,A) 特開 平3−25645(JP,A) 特開 昭62−237547(JP,A) 特開 平1−175651(JP,A) 特開 平2−43632(JP,A) 特開 平2−132538(JP,A) 特開 平4−65725(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 12/08 G06F 12/10 G06F 9/46 Continuation of the front page (56) References JP-A-63-113740 (JP, A) JP-A-62-241050 (JP, A) JP-A-64-241050 (JP, A) JP-A-3-240849 (JP) JP-A-2-12339 (JP, A) JP-A-62-79549 (JP, A) JP-A-3-147042 (JP, A) JP-A-4-213132 (JP, A) 2-304655 (JP, A) JP-A-60-8960 (JP, A) JP-A-3-91046 (JP, A) JP-A-63-76033 (JP, A) JP-A-4-153848 (JP, A) A) JP-A-2-196352 (JP, A) JP-A-3-25645 (JP, A) JP-A-62-237547 (JP, A) JP-A-1-1755651 (JP, A) JP-A-2 -43632 (JP, A) JP-A-2-132538 (JP, A) JP-A-4-65725 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) G06F 12/08 G06F 12/10 G06F 9/46

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 各セグメントの使用ページ数を複数のジ
ョブ毎にメモリに記憶する使用ページ記憶手段と、 ジョブ実行中における前記メモリの確保及び解放のたび
に変動する前記使用ページ数がそれぞれ最大のときに該
使用ページ数をそのジョブの使用ページ数として前記セ
グメント毎に前記メモリに格納するページ数取得手段
と、 ジョブ起動時に、前記メモリに格納されている複数の前
記使用ページ数に基づく統計情報から、ジョブのセグメ
ント毎の使用ページ数を予測する使用ページ数予測手段
と、 予測された前記使用ページ数からページテーブル長を計
算し、ページテーブルを作成するページテーブル作成手
段とを備え、 前記ページテーブル作成手段は、一旦作成したページテ
ーブルの大きさを伸張することなく保持するように、前
記ジョブが起動される時に、前記ページテーブルを作成
することを特徴とする仮想記憶管理方式。
1. The method according to claim 1, wherein the number of used pages of each segment is determined by a plurality of pages.
Used page storage means for storing in a memory for each job, and each time the memory is secured and released during job execution
When the number of pages used fluctuates
The number of used pages is defined as the number of used pages of the job.
Means for acquiring the number of pages stored in the memory for each segment
When starting a job, a plurality of files stored in the memory
From the statistical information based on the number of pages used,
Used page number prediction means for estimating the used page number for each application
And the page table length is calculated from the predicted number of used pages.
To create a page table
And the page table creation means includes a page table once created.
To keep the cable size without stretching it.
Creates the page table when the job is started
A virtual storage management method.
【請求項2】 前記ページテーブル作成手段は、システ
ムのメモリ使用率が予め定めている基準値以上である場
合に、予測される前記ページ数としきい値とを比較し
て、それらのうち小さい方を採用して前記ページテーブ
ルを作成することを特徴とする請求項1に記載の仮想記
憶管理方式。
2. The system according to claim 1, wherein said page table creating means includes a system.
If the memory usage of the
If so, compare the expected number of pages with a threshold
And adopt the smaller one of them
2. The virtual recording method according to claim 1, wherein
Memory management method.
JP03038984A 1991-02-12 1991-02-12 Virtual storage management method Expired - Fee Related JP3094477B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03038984A JP3094477B2 (en) 1991-02-12 1991-02-12 Virtual storage management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03038984A JP3094477B2 (en) 1991-02-12 1991-02-12 Virtual storage management method

Publications (2)

Publication Number Publication Date
JPH04257041A JPH04257041A (en) 1992-09-11
JP3094477B2 true JP3094477B2 (en) 2000-10-03

Family

ID=12540414

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03038984A Expired - Fee Related JP3094477B2 (en) 1991-02-12 1991-02-12 Virtual storage management method

Country Status (1)

Country Link
JP (1) JP3094477B2 (en)

Also Published As

Publication number Publication date
JPH04257041A (en) 1992-09-11

Similar Documents

Publication Publication Date Title
KR100289628B1 (en) Resource management method and apparatus for information processing system of multitasking facility
JP2571664B2 (en) Computer main storage management system and method
US7469326B1 (en) Promotion or demotion of backup data in a storage hierarchy based on significance and redundancy of the backup data
JPH05189281A (en) File assigning system for storage device
JPH02300949A (en) Memory control
JP3444346B2 (en) Virtual memory management method
JP2003330765A (en) Page securing processing method for database
US5678024A (en) Method and system for dynamic performance resource management within a computer based system
US6725211B1 (en) Work load assessment heuristic for optimal task parallelism determination
JP3094477B2 (en) Virtual storage management method
JP3175764B2 (en) Memory scheduling method and storage medium for storing memory scheduling program
US9223689B2 (en) Apparatus and method for managing memory
CN111290856A (en) Data processing apparatus and method
JPH04364549A (en) File storing system and access system
JP2924725B2 (en) Buffer allocation control system
US5761738A (en) Computer system which stores management or control information in different address space but same offset as corresponding data
JP6524733B2 (en) Parallel computing device, parallel computing system, and job control program
JP4045482B2 (en) Periodic automatic backup schedule method and apparatus
JPH0812643B2 (en) Page save / restore device
JP2500735B2 (en) Checkpoint / restart controller
CN116339968A (en) Computing resource and cache resource scheduling method, device and system
JPH0793192A (en) File managing method
JP3123498B2 (en) Program restart device and its program recording medium
JP3125761B2 (en) Working set calculation processing apparatus and working set calculation processing method
JP2982134B2 (en) Main storage device allocation size determination method

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees