JPS6039248A - Resource managing system - Google Patents

Resource managing system

Info

Publication number
JPS6039248A
JPS6039248A JP58145752A JP14575283A JPS6039248A JP S6039248 A JPS6039248 A JP S6039248A JP 58145752 A JP58145752 A JP 58145752A JP 14575283 A JP14575283 A JP 14575283A JP S6039248 A JPS6039248 A JP S6039248A
Authority
JP
Japan
Prior art keywords
program
memory
real memory
control mechanism
execution priority
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.)
Granted
Application number
JP58145752A
Other languages
Japanese (ja)
Other versions
JPH0324697B2 (en
Inventor
Kenichiro Murakami
村上 健一郎
Masahiro Kurata
正博 倉田
Takaaki Matsumoto
隆明 松本
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP58145752A priority Critical patent/JPS6039248A/en
Publication of JPS6039248A publication Critical patent/JPS6039248A/en
Publication of JPH0324697B2 publication Critical patent/JPH0324697B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To improve the processing efficiency by excluding a real memory used by a high priority program and using the rest without swap-out of all memories when a memory load is high and does not satisfy the working set size of a program having minimum execution priority. CONSTITUTION:The real memory 1 of resource management system is provided with a program storage area 2, a memory managing table 3, an idle area management table 4, a mapping control table 5 and an execution priority managing table 6, and a memory control mechanism 7 execute control and data transfer is connected to each. A processing device 8 executing the program is connected to the mechanism 7 via a data transfer line 17 and a CPU control mechanism 14. Further, an auxiliary storage device 16 is connected to the transfer line 16 via an auxiliary storage controller 15. When the memory load does not satisfy the working set size of the minimum execution priority program, all memories are avoided from being swapped out, the real memory used by the high priority program is excluded, the rest is used to improve the utilizing efficiency.

Description

【発明の詳細な説明】 本発明は、データ処理装置における実メモリ管理方式、
特にシステムが実メモリ不足状態に陥った場合に同時に
実行されている複数の順次的プログラムへの効率の良い
実メモリ配分を行なえる様にした資源管理方式に関する
ものである。
DETAILED DESCRIPTION OF THE INVENTION The present invention provides a real memory management method in a data processing device;
In particular, the present invention relates to a resource management method that can efficiently allocate real memory to a plurality of sequential programs that are being executed simultaneously when the system runs out of real memory.

(従来の技術) マルチプログラムで動作する仮想記憶方式の情報処理シ
ステムにおいては、実メモリ上の各プログラムに対して
、いかに実メモIJ i割当てるかが問題となる。仮想
記憶システムでは、処理装置CPUは実行すべきプログ
ラムの一部が入れられている実メモリをアクセスしつつ
処理を進める。プログラム全体は補助記憶装置上に置か
れており、常にゾログラム全体がアクセスされる事は無
いので、アクセスされる確率の高い部分をプログラムの
管理単位であるページごとに選んで(これをワーキング
セットと呼ぶ) CPUの直接アクセスがijJ能な実
メモリへ入れておく。このことにより、少ない実メモリ
量で多くのプログラムが同時に実行出来、実メモリ資源
の使用効率を高めている。
(Prior Art) In a virtual memory type information processing system that operates with multiple programs, the problem is how to allocate real memory IJi to each program on real memory. In a virtual memory system, a processing unit CPU advances processing while accessing real memory in which a part of a program to be executed is stored. The entire program is stored on the auxiliary storage device, and the entire zologram is not always accessed. Therefore, parts with a high probability of being accessed are selected for each page, which is the management unit of the program (this is called the working set). (call) into real memory that can be directly accessed by the CPU. This allows many programs to be executed simultaneously with a small amount of real memory, increasing the efficiency of using real memory resources.

CPUのアクセスしようとした情報が実メモリに無い場
合(被−シフオルト時)には、補助記憶装置からそのプ
ログラムの所望の論理ページの内容が適切な実メモリの
物理ページに転送される。この転送に先立ち、すでに空
き実メモリが無い場合には、新情報が転送されてくるべ
き実メモリのページ内にあっ/C旧情報は補助記憶装置
へ転送され退避される。プログラムに与えられた実メモ
リ量がプログラムの必要実メモリ量(ワーキングセット
サイズ)よりも少ない場合には、所望のプログラムの論
理波−ジが実メモリ」二に無い確率が増加し、上記の転
送が頻繁に行われる。このため、プログラムは転送待ち
となって実行されなくなる。これを防止するため、通常
ページフォルトが発生すると、他プログラムが使用中の
実メモリ内容を補助記憶装置に転送して空き実メモリを
作り、これを前記プログラムへ割当てる事によってワー
キングセットサイズを満たし、K−シフオルトの起こる
回数を少なくする。
If the information that the CPU attempts to access does not exist in the real memory (when shifted), the contents of the desired logical page of the program are transferred from the auxiliary storage device to the appropriate physical page of the real memory. Prior to this transfer, if there is already no free real memory, the old information that is in the page of the real memory to which the new information is to be transferred is transferred to the auxiliary storage and saved. If the amount of real memory given to a program is smaller than the amount of real memory required by the program (working set size), the probability that the desired program's logic waveforms are not in real memory increases, and the transfer described above increases. is carried out frequently. Therefore, the program waits for transfer and is not executed. To prevent this, normally when a page fault occurs, the contents of real memory being used by other programs are transferred to auxiliary storage to create free real memory, and this is allocated to the program to satisfy the working set size. Reduce the number of times K-shift occurs.

マルチプログラミングシステムでは多数のプログラムが
時分割によって同時に処理されているが、上記転送が開
始されてそのプログラムが実行出来なくなるとCPUは
他のプログラムを実行する。ところが、全体のプログラ
ムの総必要実メモリ量(ワーキングセットサイズの総和
)が・/ステム中の全実メモリ量を越えると、各プログ
ラムに制御が移るたびに次々と実メモリ要求が起こシ、
プログラム間で実メモリ資源い合うので、上記の窒きメ
モリを作るだめの転送及び必要な論理に一ジ内容の補助
記憶装置から実メモリへの転送が総てのプログラムで頻
発する。この結果どのプログラムも転送待ちが多くなり
、プログラムの実行が進まなくなる(スラッシング状態
)。
In a multiprogramming system, a large number of programs are processed simultaneously by time sharing, but when the above transfer starts and the program cannot be executed, the CPU executes another program. However, if the total amount of real memory required for all programs (sum of working set sizes) exceeds the total amount of real memory in the / stem, real memory requests will occur one after another each time control is transferred to each program.
Since the real memory resources are competed between programs, the above-mentioned transfer to create a dead memory and the transfer of the necessary logic contents from the auxiliary storage device to the real memory occur frequently in all programs. As a result, all programs have a large amount of waiting time for transfer, and the execution of the programs does not proceed (thrashing state).

従来、このスラッシングを防止するため、不足している
実メモリ量に関係なく最低実行優先度のプログラムが使
用している実メモリの内容を総て補助記憶装置へ強制的
に転送して空き実メモl) k作す(スワップアウト)
、そのうち、他の実行優先度の高いプログラムへ不足し
ている実メモリ量だけ配分していた。スワップアウトは
、不足して散が多くなシ、使用されないままの実メモリ
が発生してメモリ資源の有効利用が出来ないという欠点
があった。まだ、最低実行優先度のプログラムはスワッ
プアウトによって総ての実メモリを強制的に奪われるの
で、そのプログラムは全く実行できなくなる。その結果
、他プログラムが入出力待ち等のだめに実行出来ない場
合にも、このプログラムの実行が出来なくなシ、結局ど
のプログラムでもCPUが使用されずに無駄となるとい
う欠点もあった。
Conventionally, in order to prevent this thrashing, all the contents of the real memory used by the program with the lowest execution priority are forcibly transferred to the auxiliary storage device, regardless of the amount of real memory that is insufficient, to create free real memory. l) Create k (swap out)
,The insufficient amount of real memory was allocated to other programs with high execution priority. Swap-out has the disadvantage that it is insufficient and wastes a lot of memory, and that real memory remains unused, making it impossible to effectively utilize memory resources. Still, the program with the lowest execution priority is forcibly taken away from all real memory by swapping out, so that program cannot be executed at all. As a result, even when other programs cannot be executed due to waiting for input/output, etc., this program cannot be executed, resulting in the disadvantage that the CPU of any program is not used and is wasted.

(発明の目的) 本発明はこれらの欠点を除去するため、各プログラムの
必要実メモリ量の総和がシステムの全実メモリ量を越え
る際には、 (1)最低実行優先度に属するプログラムの1つから不
足に一ジ分だけの使用中実メモ’J k選択し、補助記
憶装置へその内容を転送する事により空きメモリを作っ
て実メモリの不足している他プログラムへ与えるが、残
りは与えたままとして上記メモリ取り上げ対象プログラ
ムを実行可能とし、(11)そのメモリ取り上げ対象プ
ログラムの硬−シフオルトの際には、そのプログラムが
現在使用中、である実メモリ量を越えてメモリを与えな
い事によりそのプログラムが高優先度プログラムの使用
している実メモリを奪う事を防止して高実行優先度プロ
グラムでのスラッシング発生を抑止し、(lii) 上
記メモリ取シ上げ対象プログラムをシステム中で唯一つ
の最低実行優先度に設定17、他のより高い実行優先度
のプログラムがCPU、補助記憶制御装置(チャネル)
を使用しない時のみこれら残りのシステム資源をそのプ
ログラムへ与えることによシ、そのプログラムで多発す
るページフォルト処理のだめのシステム資源の使用が、
高実行優先度プログラムの実行妨害を引き起こさないよ
うにする。
(Objective of the Invention) In order to eliminate these drawbacks, the present invention has the following objectives: (1) When the total amount of real memory required by each program exceeds the total amount of real memory of the system, (1) one of the programs belonging to the lowest execution priority is By selecting the actual memo 'Jk' that is currently in use and transferring its contents to the auxiliary storage device, free memory is created and given to other programs that have a shortage of real memory, but the rest is (11) When the program to which memory is to be taken is hard-shifted, memory is not given to the program in excess of the amount of real memory currently in use by the program. This prevents the program from stealing the real memory used by the high-priority program, thereby suppressing the occurrence of thrashing in the high-priority program, and (lii) Set only the lowest execution priority to 17, other higher execution priority programs are CPU, auxiliary storage controller (channel)
By giving these remaining system resources to the program only when it is not in use, the use of system resources that would otherwise be used to handle page faults that occur frequently in the program can be reduced.
To prevent execution interruption of high execution priority programs.

というメモリスケジー−ルとCPUスケジー−ルを組合
せた資源管理方式で達成するもので、以下図面を用いて
詳細に説明する。
This is achieved by a resource management method that combines a memory schedule and a CPU schedule, and will be explained in detail below with reference to the drawings.

(発明の構成および作用) 第1図は本発明の方式による一実施例の構成を示すブロ
ック図で、1は実行時にプログラムPが格納されている
実メモ!I(MM)でPo〜P はゾログラム名、2は
プログラム?格納している実メモリ上のプログラム格納
領域で、PAo−PAnは各プログラムpo−p の一
部を格納している領域、3は各プログラムP。−P ご
とに使用中の実メモリ量(ワーキングセットサイズ)W
S 及びそのマツピング制御テーブル5へのポインタP
TRを管理するメモリ管理テーブル、4は空き実メモリ
量Eとその物理に一ジ番号PPAGEを管理する空き実
メモリ管理テーブル、5はプログラムの論理ページ番号
LPAGEと実メモリの物理ページ番号PPAGEの対
応およびその論理波−ジの内容がすでに実メモリ上の物
理波−ジにあるかどうかを示すフラグA′fニブログラ
ムごとに管理するマツピング制御テーブル、6は各実行
優先度PRごとにプログラムPo〜Pr1を管理する実
行優先度管理テーブル、7はメモリの制御及びデータ転
送を行うメモリ制御機構、8はプログラムを実行するだ
めの実行部である処理装置(CPU)、9は各プログラ
ムP。〜Pnの論理ページ番号LPAGEと物理ページ
番号PPAGEとの変換及びページフォルトの検出を行
なうマツピング制御機構、10はプログラムPの実メモ
リ要求時に実メモリのどの物理ページを与えるかを決定
する(−ジ選択機構、11は実メモリの物理ページの内
容を補助記憶装置16上の論理ページへ転送し実メモリ
を空き状態とするページアウト制御機構、12は補助記
憶装置16上にあるプログラムの論理ページの内容を空
き実メモリへ転送し、処理装置(CPU)8が所望する
プログラムPの論理ページの内容が入っている物理ペー
ジをアクセス可能状態とするページイン制御機構、13
はプログラムの実行優先度を変更する実行優先度制御機
構、14は処理装置8の全体の制御及びデータの転送を
行なうCPU制御機構、15は補助記憶装置の制御及び
データの転送を制御する補助記憶制御装置、16はプロ
グラムPo−Pnの総ての論理ページが格納されている
補助記憶装置、17は実メモリ(MM) 1 、処理装
置(CPU)8、補助記憶装置16間でデータ転送を行
なうデータ転送路である。なおマツピング制御テーブル
5のフラグAの値は、既に論理ページの内容がどれかの
物理ページにある場合には1、無い場合にはOである。
(Structure and operation of the invention) FIG. 1 is a block diagram showing the structure of an embodiment according to the method of the present invention, and 1 is an actual memo in which a program P is stored at the time of execution! In I (MM), Po~P is the zologram name and 2 is the program? In the program storage areas on the real memory, PAo-PAn are areas storing a part of each program pop, and 3 is an area for each program P. -Amount of real memory in use (working set size) per P
S and a pointer P to its mapping control table 5
4 is a memory management table that manages the TR, 4 is a free real memory management table that manages the free real memory amount E and its physical number PPAGE, and 5 is a correspondence between the program's logical page number LPAGE and the physical page number PPAGE of the real memory. and a flag A'f indicating whether the contents of the logical wave are already in the physical wave on the real memory. Mapping control table 6 is managed for each program. 7 is a memory control mechanism that controls memory and transfers data; 8 is a processing unit (CPU) which is an execution unit for executing programs; 9 is each program P; A mapping control mechanism 10 converts between the logical page number LPAGE of Pn and the physical page number PPAGE and detects a page fault; A selection mechanism 11 transfers the contents of the physical page of the real memory to a logical page on the auxiliary storage device 16 to make the real memory free, and 12 a page-out control mechanism that transfers the contents of the physical page of the real memory to a logical page on the auxiliary storage device 16. a page-in control mechanism that transfers the contents to a free real memory and makes the physical page containing the contents of the logical page of the program P desired by the processing unit (CPU) 8 accessible;
14 is an execution priority control mechanism that changes the execution priority of a program; 14 is a CPU control mechanism that controls the entire processing device 8 and transfers data; and 15 is an auxiliary storage that controls auxiliary storage and data transfer. A control device 16 is an auxiliary storage device in which all logical pages of programs Po to Pn are stored, 17 is a real memory (MM) 1 , a processing device (CPU) 8, and an auxiliary storage device 16 for data transfer between them. It is a data transfer path. Note that the value of flag A in the mapping control table 5 is 1 if the content of the logical page already exists in any physical page, and O if the content does not exist.

次に動作を説明する。処理装置8は実メモリ上ノブログ
ラム格納領域2のPA、をアクセスしつつ処理を進める
。仮想記憶システムでは、プログラムPo−Pn全体は
補助記憶装置16上にあシ、各70ログラムPの論理波
−ノの内容は必要となった時点でデータ転送路17を通
じて実メモリ1上のプログラム格納領域2のPAiにあ
る物理ページヘコピーされてアクセス可能状態となる。
Next, the operation will be explained. The processing device 8 proceeds with the processing while accessing the PA of the novel program storage area 2 on the real memory. In the virtual memory system, the entire program Po-Pn is stored on the auxiliary storage device 16, and the contents of the logical waves of each 70 programs P are stored in the real memory 1 through the data transfer path 17 when needed. It is copied to the physical page in PAi of area 2 and becomes accessible.

処理装置8がプログラムをアクセスする場合には論理に
一ノ番号LPAGEjでアクセスを行なうが、この論理
ページ番号LPAGEjは一旦マッピング制御機構9に
渡される。マツピング制御機構9は、CPU制御機構1
4((介してメモリ制御機構7を起動し、データ転送路
17を通じてマツピング制御テーブル5の論理ページ番
号LPAGEjに対するエントリにあるフラグA、と物
理ページ番号PPAGEjを得る。このようにしてマツ
ピング制御機構9はマツピング制御テーブル5に従いそ
の論理R−ジ番号LPAGEj に対応する物理ページ
番号PPAGEJ へ変換する。更に、その物理ページ
番号LPAGEjはマツピング制御機構9からcpじ制
御機構14全介し、データ転送路17を通じてメモリ制
御機構7へ渡される。次に、このメモリ制御機構7はデ
ータを取り出し、データ転送路17を通じて所望の被−
ジを処理装置8へ転送してアクセスを完了する。マツピ
ング制御機構9が受け取るプログラムの論理ページLP
AGE;に対応するエントリのフラグAjの値が0、即
ち所望の論理ページLPAGE jの内容がどの物理波
−ジにもなかった場合(ページフォルト)には、マツピ
ング制御機構9はCPU制御機構14iC−e−シフオ
ルトの発生を通知する。
When the processing device 8 accesses the program, the logical page number LPAGEj is used to access the program, and this logical page number LPAGEj is once passed to the mapping control mechanism 9. The mapping control mechanism 9 is based on the CPU control mechanism 1.
4((), the memory control mechanism 7 is activated, and the flag A in the entry for the logical page number LPAGEj of the mapping control table 5 and the physical page number PPAGEj are obtained through the data transfer path 17. In this way, the mapping control mechanism 9 is converted into a physical page number PPAGEJ corresponding to the logical R-age number LPAGEj according to the mapping control table 5.Furthermore, the physical page number LPAGEj is transferred from the mapping control mechanism 9 through the entire cp control mechanism 14 and through the data transfer path 17. The data is passed to the memory control mechanism 7. Next, the memory control mechanism 7 takes out the data and transfers it to the desired destination via the data transfer path 17.
The data is transferred to the processing device 8 to complete the access. Logical page LP of the program received by the mapping control mechanism 9
If the value of the flag Aj of the entry corresponding to AGE is 0, that is, the content of the desired logical page LPAGE j is not present in any physical wave (page fault), the mapping control mechanism 9 controls the CPU control mechanism 14iC. -e- Notify occurrence of shift.

例えば、プログラムPiの実行中に啄−シフオルトが起
こシ実メモリ要求が行なわれた場合の処理を順を追って
説明する。
For example, the processing when a shift occurs and a real memory request is made during the execution of the program Pi will be explained step by step.

(1) マツピング制御機構9からCPU制御機構14
へ4−シフオルトの発生が通知されると、CPU制御機
構14はページ選択機構10を起動する0 (4) ページ選択機構10は、CPU制御機構14を
介し、データ転送路17を通じて実メモリ上にある空き
メモリ管理テーブル4の空きメモリエンドすEをアクセ
スしてチェックする。Eの値が0でなければ、即ち空き
実メモリがあれば、そのテーブルに登録されている物理
波−ノを1−2−ジ選択し、その物理波−ノ番号PPA
GEkとイーシフオルトの発生した論理ページ番号LP
AGEjをページイン制御機構12へ通知し−C<−ジ
イン制御機構12を起動する。
(1) From the mapping control mechanism 9 to the CPU control mechanism 14
(4) When notified of the occurrence of a shift, the CPU control mechanism 14 activates the page selection mechanism 10. The free memory end E of a certain free memory management table 4 is accessed and checked. If the value of E is not 0, that is, if there is free real memory, select the physical wave number 1-2 registered in the table and write the physical wave number PPA.
Logical page number LP where GEk and esfault occurred
AGEj is notified to the page-in control mechanism 12, and the -C<-page-in control mechanism 12 is activated.

0ii) (ii)において空きメモリエントリEがO
で空きメモリがなければ、ページ選択機構10はCPU
:li制御機構14を介し、データ転送路17を通じて
実メモリ」二にある実行優先度管理テーブル6のエント
リPRo−PRxをアクヒスしてチェックし、実行中の
最低実行優先度に属するプログラム群のうちの1つをメ
モリ取り上げ対象プログラムPlとじて選択する。更に
メモリ管理テーブル3のPlエントリのPTRlが指し
ているマツピング制御テーブル5を見ることによって、
メモリ取り上げ対象プログラムPiが使用中の物理ペー
ジのうちIK−ジPPAGEkを選択してページアウト
制御機構11へ、そのメモリ取シ上げ対象プログラム名
P1と選択した物理ページ番号PPAGEkを通知して
ページアウト制御機構11を起動する。但し、ページフ
ォルトを起こしたプログラムPi自身が最低実行優先度
に属するノログラムのうちの一つであれば、そのプログ
ラム自身をメモリ取9上げ対象プログラムとして選択す
る。又、このようにページアウト制御機構11を起動す
ると同時に、メモリ取シ上げ対象プログラム名PIを実
行優先度制御機構13にも通知して実行優先制御機構1
3を起動する。
0ii) In (ii), free memory entry E is O
If there is no free memory, the page selection mechanism 10 uses the CPU
:Acquires and checks the entries PRo-PRx of the execution priority management table 6 in the real memory 2 through the data transfer path 17 via the li control mechanism 14, and checks the entries PRo-PRx of the execution priority management table 6 in the real memory 2 through the data transfer path 17. One of them is selected as the memory take-up target program Pl. Furthermore, by looking at the mapping control table 5 pointed to by PTRl of the Pl entry in the memory management table 3,
The IK-di PPAGEk is selected from among the physical pages being used by the memory removal target program Pi, and the pageout control mechanism 11 is notified of the memory removal target program name P1 and the selected physical page number PPAGEk, and the page is paged out. The control mechanism 11 is activated. However, if the program Pi that caused the page fault is one of the programs belonging to the lowest execution priority, that program itself is selected as the program to be taken up from the memory 9. Further, at the same time as starting the page-out control mechanism 11 in this way, the execution priority control mechanism 13 is also notified of the program name PI to be taken up from memory, and the execution priority control mechanism 1
Start 3.

(V) 実行優先度制御機構13は、実メモリ1が低使
用率でメモリ不足状態でない場合には、どのプログラム
も設定されないところのシステム中で最も低い実行優先
度PRxにメモリ取シ上げ対象フ0ログラムP1を設定
するために、CPU制御機構14を介し、データ転送路
17を通じてメモリ取シ上げ対象プログラム名P1を実
行優先度管理テーブル6のPRxエントリへ登録する。
(V) When the real memory 1 has a low usage rate and is not in a memory shortage state, the execution priority control mechanism 13 sets the memory removal target program to the lowest execution priority PRx in the system where no program is set. In order to set the zero program P1, the name of the program to be taken up memory P1 is registered in the PRx entry of the execution priority management table 6 via the CPU control mechanism 14 and the data transfer path 17.

このため、メモリ取り上げ対象プログラムは、他の総て
のプログラムが走行しない場合のみ走行し、しかもその
プログラムのページフォルトはそのプログラムが走行中
、即ち、他のどのプログラムも処理装置8及びI/l)
を使用していない間に起こるので、ページフォルト多発
による処理装置8及びI10負荷の上昇が他のプログラ
ムの実行へ影響を与えることはない。
Therefore, the program to be taken up of memory runs only when all other programs are not running, and the page fault of that program occurs while the program is running, that is, when all other programs are running on the processing unit 8 and )
This occurs while the page faults are not being used, so an increase in the load on the processing unit 8 and I10 due to frequent page faults does not affect the execution of other programs.

(■)波−ジイン制御機構11は、(111)で通知さ
れた物理に一ジPPAGEkの内容をメモリ制御機構7
と補助記憶制御装置15に起動をかけ、データ転送路1
7を通じて実メモリ1から補助記憶装置16へ転送する
。この転送の完了後、この処理によって空きとなった物
理ページ番号PPAGEkとプログラムP1が硬−シフ
オルトを起した論理ページ番号LPAGEjを、既に空
きメモリがあった(11)の場合と同様に、ベージイン
制御機構12へ通知してa−ジイン制御機構12に起動
をかける。
(■) The wave-in control mechanism 11 transfers the contents of the physical PPAGEk notified in (111) to the memory control mechanism 7.
and starts up the auxiliary storage control device 15, and starts the data transfer path 1.
7 from the real memory 1 to the auxiliary storage device 16. After this transfer is completed, the physical page number PPAGEk that has become free due to this process and the logical page number LPAGEj that caused the hard shift by program P1 are subjected to page-in control as in the case (11) where there was already free memory. The mechanism 12 is notified and the a-gein control mechanism 12 is activated.

位) 4−ジイン制御機構12は、CPU制御機構14
を介してメモリ制御機構7と補助記憶装置15に起動を
かけることにより、データ転送路17を通じて補助記憶
装置16からプログラムP1がo−シフオルトを起こし
て要求した論理ページLPA(Jjの内容を前記実技−
ジPPAGEkヘコピーしアクセス可能状態とする。更
に、CPU制御機構14を介し、データ転送路17を通
じてマツピング制御テーブル5の論理ページ番号LPA
GEjのエントリに物理ページ番号PPAGEkを設定
すると共に、そのエントリのフラグAjを1として実メ
モリ内に既にその論理ページの内容が存在する事を示す
。次にベージイン制御機構12は所望のページがアクセ
ス可能状態と々っだことをCPU制御機構14へ通知し
て総てのページフォルト処理を完了する。
4-The engine control mechanism 12 is the CPU control mechanism 14
By starting up the memory control mechanism 7 and the auxiliary storage device 15 via the data transfer path 17, the program P1 performs an o-shift from the auxiliary storage device 16 to the requested logical page LPA (Jj). −
Copy it to PPAGEk and make it accessible. Furthermore, the logical page number LPA of the mapping control table 5 is transmitted via the CPU control mechanism 14 and the data transfer path 17.
The physical page number PPAGEk is set in the entry of GEj, and the flag Aj of that entry is set to 1 to indicate that the contents of the logical page already exist in the real memory. Next, the page-in control mechanism 12 notifies the CPU control mechanism 14 that the desired page is now accessible, and completes all page fault processing.

第2図はこれらの処理のフローチャートに示す。FIG. 2 shows a flowchart of these processes.

以上本発明の一実施例の説明を行なったが、本発明の趣
旨は各プログラムの必要実メモリ量の総和がシステムの
全実メモリ量を越える際には、■ 最低実行優先度に属
するプログラムの1つから不足ペーノ分だけの使用中実
メモリを選択し、補助記憶装置へその内容を転送する事
によって空きメモl) f作シ実メモリの不足している
他プログラムへ与えるが、残シは与えたままとして上記
メモリ取シ上げ対象プログラムを実行可能とし、■ そ
のメモリ取り上げ対象プログラムのペーノフォルトの際
には、そのプログラムの使用中実メモリ量を越えてメモ
リを与えない事によシ高優先度プログラムの使用中実メ
モIJ =、奪う事を防止して高実行優先度プログラム
でのスラソンング発生を抑止し、 ■ 上記メモリ取9上げ対象プログラムをシステム中て
唯一っの最低実行優先度に設定し他のより高い実行優先
度のプログラムが処理装置8、補助記憶制御装置(チャ
ンネル)15を使用しない時のみ、これら残シのシステ
ム資源を上記ノ0ログラム−1与えて、そのプログラム
で多発する一=−ノフォルト処理のだめのシステム資源
の使用が、高実行優先度プログラムの実行妨害を引き起
こさないようにする。
An embodiment of the present invention has been described above, but the gist of the present invention is that when the total amount of real memory required by each program exceeds the total amount of real memory of the system, ■ the program belonging to the lowest execution priority is By selecting the actual memory in use corresponding to the amount of insufficient memory from one program and transferring its contents to the auxiliary storage device, free memory is provided to other programs that have insufficient real memory, but the remaining memory is The program to which the memory is being taken can be executed as it is, and if the program to which the memory is to be taken has a peno fault, it is given high priority by not giving memory in excess of the amount of real memory in use by that program. Prevents the actual memo IJ = from being taken away from programs with high execution priority, and suppresses the occurrence of slur songs in high execution priority programs. However, only when another program with a higher execution priority does not use the processing unit 8 or auxiliary storage control unit (channel) 15, these remaining system resources are given to the above program - 1 and the program is used frequently. 1 = - Prevents the use of system resources during fault processing from interfering with the execution of high execution priority programs.

というメモリスヶノー−ルと処理装置スケゾュールを組
合せた総合的資源管理方式にある。
It is a comprehensive resource management method that combines a memory node and a processing unit schedule.

(効 果) 以上説明したように、本発明によれば、メモリ負荷が高
く最低実行優先度プログラムのワーキングセットサイズ
が鱒だされない場合でも、そのプログラムの使用してい
る全実メモリをスワップアウトせずに常に高優先度プロ
グラムの使用する実メモl) f除いた残シのメモリだ
けを使用踵かつ他の総ての高優先度プログラムが処理装
置を使用しない時に走行する様に最低実行優先度プログ
ラムへの資源配分を行うため、従来方式のようにプログ
ラムが全く走行しない事がなくな逆処理効率が向上する
(Effects) As explained above, according to the present invention, even if the working set size of a program with the lowest execution priority is not reached due to high memory load, all real memory used by that program can be swapped out. Lowest execution priority so that all other high-priority programs run when they are not using the processing unit. Since resources are allocated to programs, programs do not run at all as in the conventional system, and reverse processing efficiency is improved.

特に、従来の制御方式では走行困難であった実行優先度
が低く、走行すれば必ずメモリ不足状態に陥る程に実メ
モリを多量に必要とするプログラムが、本制御方式で実
行可能となる。更に、システムが高メモリ負荷となシス
ラッシング状態に陥った場合でも、最低実行優先度プロ
グラムから順に他プログラムの不足分だけ実メモリが取
シ上けられてゆき最低実行優先度プログラムは常に他プ
ログラムの使用した残りの資源だけで実行されるので、
自動的に低実行優先度プログラムの停止が行われ、かつ
メモリ負荷が下がれば自動的に低実行優先度プログラム
へ実メモリが与えられて再起動される。しかも、従来の
様な高優先度プログラムの実行妨害阻止を目的とする低
優先度プログラムの停止や、再びシステムのメモリ負荷
が下がった場合の低優先度プログラムの再起動等を行う
システム運転者介入が不必要となるという利点もある。
In particular, programs that have a low execution priority and require a large amount of real memory to the extent that running them will inevitably lead to a memory shortage state, which would be difficult to run using conventional control methods, can now be executed using this control method. Furthermore, even if the system is in a syslashing state with a high memory load, real memory will be taken up by the program with the lowest execution priority to compensate for the shortage of other programs. Since it is executed using only the remaining resources used by
The low execution priority program is automatically stopped, and when the memory load decreases, the low execution priority program is automatically given real memory and restarted. In addition, system driver intervention is required to stop low-priority programs to prevent interference with the execution of high-priority programs, as in the past, and to restart low-priority programs when the system memory load decreases again. There is also the advantage that it becomes unnecessary.

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

第1図は本発明の方式による一実施例の構成を示すプロ
、り図、第2図は本発明の処理のフローチャートである
。 1・・・実メモリ、2・・・プログラム格納領域、3・
・・メモリ管理テーブル、4・・・空き実メモリ管理テ
ーブル、5・・・マツピング制御テーブル、6・・実行
優先度管理テーブル、7・・・メモリ制御機構、8・・
・処理装置、9・・・マツピング制御機構、1o・・・
R−ノ選択機構、11・・・ページアウト制御機構、1
2・・・ベージイン制御機構、13・・・実行優先度制
御機構、14・・・CPU制御機構、15・・・補助記
憶制御装置、16・・・補助記憶装置、17・・・デー
タ転送路。
FIG. 1 is a schematic diagram showing the configuration of an embodiment according to the method of the present invention, and FIG. 2 is a flowchart of the processing of the present invention. 1... Real memory, 2... Program storage area, 3.
... Memory management table, 4... Free real memory management table, 5... Mapping control table, 6... Execution priority management table, 7... Memory control mechanism, 8...
- Processing device, 9... Mapping control mechanism, 1o...
R-no selection mechanism, 11... page-out control mechanism, 1
2...Bage-in control mechanism, 13...Execution priority control mechanism, 14...CPU control mechanism, 15...Auxiliary storage control device, 16...Auxiliary storage device, 17...Data transfer path .

Claims (1)

【特許請求の範囲】[Claims] マルチゾログラムで動作し、各プログラムは実行優先度
に従って実行される仮想記憶方式の情報処理/ステムに
おいて、同時に実行されている複数の順次プログラムの
間に実メモリの割当てを行う場合に、各ゾログラムの実
行優先度順に各プログラムに実メモリを総て割当ててゆ
き、残りの実メモリ配分が次に割当てるべきプログラム
の必要実メモリ耽ヲ下まわった際には残りの実メモリ量
だけを与える機構上、割当てた実メモリ量が必要実メモ
リ)杖ケ下捷わったプログラムの実行優先度を/ステム
中で最低の実行優先度に設定して、実メモリ不足による
実メモリの奪い合いを原因として発生する実メモリと補
助記憶装置間のメモリ内容の転送頻発が引き起こすプロ
グラム実行不可能状% (スラ、ソング)を抑止する機
構を備える事を% 徴Jする資源管理方式。
In a virtual memory information processing/system that operates as a multi-zologram and each program is executed according to its execution priority, each zologram is Allocates all real memory to each program in order of execution priority, and when the remaining real memory allocation falls below the real memory requirement of the next program to be allocated, only the remaining amount of real memory is given. , the amount of allocated real memory is required (Real memory) This problem occurs when the execution priority of the program is set to the lowest execution priority in the /system, and competition for real memory occurs due to lack of real memory. A resource management method that requires a mechanism to prevent programs from being unable to run due to frequent transfers of memory contents between real memory and auxiliary storage.
JP58145752A 1983-08-11 1983-08-11 Resource managing system Granted JPS6039248A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58145752A JPS6039248A (en) 1983-08-11 1983-08-11 Resource managing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58145752A JPS6039248A (en) 1983-08-11 1983-08-11 Resource managing system

Publications (2)

Publication Number Publication Date
JPS6039248A true JPS6039248A (en) 1985-03-01
JPH0324697B2 JPH0324697B2 (en) 1991-04-03

Family

ID=15392333

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58145752A Granted JPS6039248A (en) 1983-08-11 1983-08-11 Resource managing system

Country Status (1)

Country Link
JP (1) JPS6039248A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63257047A (en) * 1987-04-15 1988-10-24 Agency Of Ind Science & Technol Information processor
JPH0594315A (en) * 1990-08-31 1993-04-16 Internatl Business Mach Corp <Ibm> Method of improving production cpu time of system
JP2005222141A (en) * 2004-02-03 2005-08-18 Nec Corp Array type processor
JP2005222142A (en) * 2004-02-03 2005-08-18 Nec Corp Array type processor

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63257047A (en) * 1987-04-15 1988-10-24 Agency Of Ind Science & Technol Information processor
JPH0594315A (en) * 1990-08-31 1993-04-16 Internatl Business Mach Corp <Ibm> Method of improving production cpu time of system
JP2005222141A (en) * 2004-02-03 2005-08-18 Nec Corp Array type processor
JP2005222142A (en) * 2004-02-03 2005-08-18 Nec Corp Array type processor
US7650484B2 (en) 2004-02-03 2010-01-19 Nec Corporation Array—type computer processor with reduced instruction storage

Also Published As

Publication number Publication date
JPH0324697B2 (en) 1991-04-03

Similar Documents

Publication Publication Date Title
JP6314355B2 (en) Memory management method and device
US7487329B2 (en) Page replacement policy for systems having multiple page sizes
US4730249A (en) Method to operate on large segments of data in a virtual memory data processing system
JP2009032252A (en) Memory allocation for crash dump
CN102841858A (en) Processor core stack extension
US6487630B2 (en) Processor with register stack engine that dynamically spills/fills physical registers to backing store
CN103345451A (en) Data buffering method in multi-core processor
JP3226525B2 (en) Main memory management method
CN111813710B (en) Method and device for avoiding Linux kernel memory fragmentation and computer storage medium
US8990537B2 (en) System and method for robust and efficient free chain management
JPS6039248A (en) Resource managing system
CN112162818A (en) Virtual memory allocation method and device, electronic equipment and storage medium
US20060195662A1 (en) Method for deterministic cache partitioning
CN111124506A (en) Operation card driving implementation method based on application layer
WO2023116910A1 (en) Computing resource and cache resource scheduling method and apparatus, and system
KR100401560B1 (en) Kernel Stack Dynamic Allocation Method In Operating System
JP3013742B2 (en) Cache memory management method
US20060230247A1 (en) Page allocation management for virtual memory
JP2535584B2 (en) Real memory fixed processing computer
JPH07182298A (en) Method and device for processing information
JP3013735B2 (en) Memory management method
JPH0329041A (en) Decentralized paging control system
JPH10340198A (en) Information processing system, its controlling method, information processor and its controlling method
JPS63172346A (en) Stack allocating method
JPH04116743A (en) Control system for real memory