JP3094477B2 - Virtual storage management method - Google Patents
Virtual storage management methodInfo
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
【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.
【図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.
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)
ョブ毎にメモリに記憶する使用ページ記憶手段と、 ジョブ実行中における前記メモリの確保及び解放のたび
に変動する前記使用ページ数がそれぞれ最大のときに該
使用ページ数をそのジョブの使用ページ数として前記セ
グメント毎に前記メモリに格納するページ数取得手段
と、 ジョブ起動時に、前記メモリに格納されている複数の前
記使用ページ数に基づく統計情報から、ジョブのセグメ
ント毎の使用ページ数を予測する使用ページ数予測手段
と、 予測された前記使用ページ数からページテーブル長を計
算し、ページテーブルを作成するページテーブル作成手
段とを備え、 前記ページテーブル作成手段は、一旦作成したページテ
ーブルの大きさを伸張することなく保持するように、前
記ジョブが起動される時に、前記ページテーブルを作成
することを特徴とする仮想記憶管理方式。 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.
ムのメモリ使用率が予め定めている基準値以上である場
合に、予測される前記ページ数としきい値とを比較し
て、それらのうち小さい方を採用して前記ページテーブ
ルを作成することを特徴とする請求項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.
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) |
-
1991
- 1991-02-12 JP JP03038984A patent/JP3094477B2/en not_active Expired - Fee Related
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 |