JPH03127149A - 主記憶管理方法 - Google Patents

主記憶管理方法

Info

Publication number
JPH03127149A
JPH03127149A JP1264913A JP26491389A JPH03127149A JP H03127149 A JPH03127149 A JP H03127149A JP 1264913 A JP1264913 A JP 1264913A JP 26491389 A JP26491389 A JP 26491389A JP H03127149 A JPH03127149 A JP H03127149A
Authority
JP
Japan
Prior art keywords
page
real
pages
storage device
program
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
JP1264913A
Other languages
English (en)
Inventor
Toshiaki Mori
利明 森
Toyohiko Kagimasa
豊彦 鍵政
Kikuo Takahashi
高橋 喜久雄
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP1264913A priority Critical patent/JPH03127149A/ja
Publication of JPH03127149A publication Critical patent/JPH03127149A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、仮想記憶計算機のページングによる記憶スケ
ジューリングに係り、特に大容量の実記憶装置を有する
場合に好適な主記憶管理方法に関する。
〔従来の技術〕
従来の実記憶管理方法については、HI TACマニュ
アルrVO8/ESIセンタ運営−JSS3編−J  
(pp58−80)において論じられているように、実
記憶装置を効率的に使用するための実記憶管理処理があ
る。実記憶管理処理には、実記憶装置の不足に対して必
要な実記憶を確保するために、実ページの未参照時間を
未す指標を監視し、未参照時間指標の大きい実ページを
他の目的に使用するために実ページのスチールを行なう
ページスチール処理がある。
ページスチール処理には、プログラムが占有する実記憶
を一定時間ごとに監視し、一定期間参照されなかった実
ページは、過去一定期間の間に参照された実ページの集
合であるワーキングセットから外れたものとして、実ペ
ージのスチールを行なうワーキングセット法を採る通常
ページスチール処理と、実記憶装置が不足したときに起
動する緊急ページスチール処理がある。本発明でのペー
ジスチール処理は、緊急ページスチール処理を示してい
る。
次に、デマンドページング方式を採る多重仮想記憶計算
機システムを第2図と第3図により説明する。第2図に
示すように、仮想記憶装置100、実記憶装置200、
補助記憶装置300は、ページと呼ばれる固定長の単位
に分割され、それぞれの仮想ページ101ごとに、実ペ
ージ201、あるいは補助ページ301が割り当てられ
、それぞれの仮想ページ101が属する各仮想記憶空間
100ごとのアドレス変換機構407により対応づけら
れる。また、各実ページ201ごとに対応した実記憶管
理テーブルエントリ71から成る実記憶管理テーブル7
0がある。実記憶管理テープルエントリ71には、実記
憶管理テーブルエントリをチェインするためのフィール
ド(以下、NFPと称す)75と実ページの未参照時間
指標を示す未参照時間カウンタ76(以下、RUTと称
す)76がある。未参照時間カウンタ76が高くなるほ
ど実ページの未参照時間指標も高くなる。
また、複数の仮想記憶空間とアクセス可能なシステムは
、プログラムとデータの両方を格納できる仮想記憶空間
であるアドレス空間とデータのみ格納できる仮想記憶空
間であるデータ空間を有しており、プログラム102は
、一つのアドレス空間100−1と複数のデータ空間1
00−2を使用することができる。また、複数の仮想記
憶空間をアクセス可能なシステムには第3図に示すよう
に汎用レジスタ400ごとにその汎用レジスタに格納さ
れる仮想記憶アドレスがどの仮想記憶空間のアドレスで
あるかを示す空間レジスタ401゜アドレス空間100
−1がアクセス可能な全てのデータ空間100−2を示
すデータ空間リスト402、および各仮想記憶空間のア
ドレス変換を行なうためのアドレス変換テーブル406
がある。
データ空間リスト402は、複数のデータ空間リストエ
ントリ405から成る。データ空間リストエントリ40
5には、各データ空間のアドレス変換テーブル406の
起点を示すアドレス変換テーブルオリジン(STOR)
404がある。プログラムは、空間レジスタ401にデ
ータ空間リストエントリの番号を示す事により直接デー
タ空間100−2にアクセスする。
また、実ページ201には、使用可能実ページ201−
2,201−4と使用中実ページ201−0.201−
1,201−3,201−5゜201−6がある。使用
可能実ページは、ユーザプログラムまたはオペレーティ
ングシステム(以下、O8と称す)自身からの実記憶装
置を割り当ての要求に対しすぐに実ページの割り当てを
行なうためにO8により一定数の未使用の実ページが確
保されている。使用中実ページは、各プログラムが使用
している実ページである。使用可能実ページが不足する
とO8は新しい仕事ができなくなり計算機システム全体
が停止するため、使用可能実ページが一定数より少なく
なった場合、O8の実記憶管理処理は任意のプログラム
の使用中実ページ中から実ページをスチールし、使用可
能実ページを補う。このページスチール処理によりスチ
ールした使用中実ページの内容を保存するため実ページ
を補助記憶装置にページアウトしてから、またすでに同
一内容のページが補助記憶装置にあればページアウトな
しにそのまま直接、使用可能実ページとする。第2図に
示した例では、プログラムのアドレス空間の使用中実ペ
ージ201−1を使用可能実ページとする場合、実ペー
ジ201−1の内容が変更されていれば実ページ201
−1の内容を補助ページ301−5への出力するページ
アウトが生じるが、実ページ201−1の内容が変更さ
れていなければ(実ページ201−1と補助ページ30
1−5の内容が同一であれば)ページアウトは必要とし
ない。従来のページスチール処理では、まず、ページア
ウトを必要としないページのスチール(未変更ページの
みをページスチール)を行ない、なおかつ、実記憶が不
足する時はページアウトの有無にかかわらずにページス
チール(無条件のページスチール)処理を行なうことに
より、使用可能実ページを補っている。
これにより、変更したページを多く保有するプログラム
から、未変更のページをスチールする処理は無駄になっ
ていた。
また、複数のCPUを有する多重仮想記憶計算機システ
ムは、実記憶装置を複数のCPUによりアクセスするた
めに、実記憶装置の内容の競合や破壊を防止するために
実記憶の使用要求に対し、独占的あるいは排他的に使用
を許可するために使用可能ページキューに対し排他制御
処理を行なっている。そのため、複数のCPUを有する
仮想記憶計算機システムでも、ページ計測処理およびペ
ージスチール処理は仮想記憶空間ごとに並列実行はせず
に逐次的に実行している。
〔発明が解決しようとする課題〕
上記従来技術は、大容量の実記憶装置を持つ仮想記憶計
算機システムにおいて使用可能実ページが不足した場合
、ページスチール処理において、変更したページを多く
保有するプログラムからのページアウトを必要としない
変更されていない使用中実ページの検索処理に要するC
PU時間が実ページ数に比例して、大きくなるという問
題があった・ また、各ジョブが占有した実ページの未参照時間指標お
よび変更ページ率を求める実ページの計測処理に要する
CPU時間が実ページ数に比例して大きくなるという問
題があった。
また、大容量の実記憶装置を有する仮想記憶計算機シス
テムにおいて実記憶管理処理時の排他処理について考慮
されておらず、複数のCPUを効果的に並列実行するこ
とができないという問題があった。
〔課題を解決するための手段〕
上記目的は、実行可能状態のプログラムの占有する実記
憶装置の未参照時間指標および変更ページ率を計算し、
実記憶装置が急激に不足した場合のページスチール処理
は、変更されたページが少ない実記憶装置を占有してい
るプログラムから変更されていない使用中実ページのス
チール処理を実施し変更されたページが多い記実憶装置
を占有しているプログラムからはページアウトの有無に
かかわらずページのスチール処理を行なうことにより達
成される。
また、実行可能状態のプログラムの占有する実記憶装置
のアクセス特性および仮想記憶空間の未参照時間指標を
計算することにより実記憶装置の一部のみについてペー
ジ計測処理することにより達l戊される。
また、プログラムにより内容の変更が行むわれなかった
実記憶装置の管理テーブルのエントリを集めた参照ペー
ジキューとプログラムにより変更が行なわれた実記憶装
置の管理テーブルのエントりを集めた変更ページキュー
を設け、ページ計測処理において参照のみ行なわれた実
ページの実記憶管理テーブルエントリは参照ページキュ
ーに変更された実ページの実記憶管理テーブルエントリ
は変更ページキューにチェインし、未変更ページのスチ
ール時に、参照ページキューより検索することにより達
成される。
また、プログラムが独占的に使用している実記憶装置に
対し、プログラムが有する仮想記憶空間ごとにページ計
測処理およびページスチール処理を行なうタスクを生成
し、複数のCPUによりページ計測処理およびページス
チール処理タスクを並列実行し、タスク終了時において
、使用可能ページキューを排他処理し、更新することに
より達成される。
〔作用〕
実記憶装置が急激に不足し、ページスチール処理により
使用可能実ページを補う場合、実行可能状態のジョブの
占有する実記憶装置の変更ページ率の低い実記憶装置を
占有するプログラムよりページスチール処理するため、
ページアウトを必要としない実ページを検索に要するC
PU時間が、変更ページ率の高いプログラムからページ
アウトを必要としない実ページの検索に要するCPU時
間に比べ小量で検索が可能となり、短時間で使用可能実
ページが確保できる。
また、実行可能状態のプログラムの占有する実記憶装置
の未参照指標および変更ページ率を計算する時に、プロ
グラムの占有する実記憶装置の一部分のみについて計測
し、他の実記憶装置を計測せずに未参照時間指標および
変更ページ率を計算することにより、プログラムの占有
する実記憶装置の未参照時間指標および変更ページ率を
求めるため大容量の実記憶装置を占有するプログラムに
対して、実記憶装置の未参照時間指標および変更ページ
率を計測する処理に要するCPU時間が減少する。
また、実記憶装置が急激に不足し、ページスチール処理
により使用可能実ページを補う場合、プログラムにより
内容の変更が行なわれなかった実記憶装置の管理テーブ
ルのエントリを集めた参照ページキューのみを検索する
ことにより、ジョブにより変更が行なわれた実記憶装置
の管理テーブルのエントリを検索することがないので、
ページアウトを必要としない実ページの検索に要するC
PU暗時間減少する。
また、複数のCPUを有する仮想記憶計算機システムで
は、プログラムが独占的に使用している実記憶装置に対
し、プログラムが有する仮想記憶空間ごとにページ計測
処理およびページスチール処理を行なうタスクを生成す
ることにより、複数のCPUによりページ計測処理およ
びページスチール処理タスクを並列実行が可能となり、
複数のCP Uを排他制御により停止させることなく効
率的に使用することができる。
〔実施例〕
以下、本発明の一実施例を第1図から第9図により説明
する。まず、本実施例のオペレーティングシステムが用
いる管理テーブルの構造を第8図により説明する。オペ
レーティングシステムは、ユーザプログラムあるいはア
プリケーションプログラムからの実記憶装置の要求に対
し、いつでもすぐに割り当てが行なえるよう一定数以上
の使用可能実ページの確保するための使用可能ページキ
ュー72.プログラムが使用する仮想記憶空間ごとに占
有した実ページを示すための参照ページキュー73と変
更ページキュー74の3種類の実記憶管理キューがある
。参照ページキュー73は、仮想記憶空間に割り当てら
れた実ページに対し、プログラムが参照のみ行なった実
ページの実記憶管理テーブルエントリのアドレスを示し
ている。
変更ページキュー74は、プログラムが内容を変更した
実ページの実記憶管理テーブルエントリのアドレスを示
している。また、参照ページキュー73、変更ページキ
ュー74に示されている実記憶管理テーブルエントリは
、実ページに対する未参照時間指標を示すRUT76の
値が大きい実記憶管理テーブルエントリのNPF75に
RUTが小さい実記憶管理テーブルエントリのアドレス
を格納することによりRUTが大きい順に実記憶管理テ
ーブルエントリをチェインしている。また。
各仮想記憶空間には、仮想記憶空間のアクセスパターン
を示すAPフラグ77、ジョブがアクセスするデータ空
間のリストを示すポインタ78、仮想記憶空間がアクセ
スされなかった時間を示す未参照時間指標(AUT)4
03、仮想記憶空間が保有する実ページに対し、その内
、内容が変更れた実ページの割合を示す変更ページ率7
9がある。
また、ジョブがアクセスするデータ空間のりスト402
を構成する各エントリ405には、各エントリが示すデ
ータ空間にアクセスしなかった時間を示す未参照時間指
IW (AtJT)403がある。
次に、第1図に本実施例におけるオペレーティングシス
テムの記憶管理の構造と動作を示し以下、説明する。実
記憶管理機構は、ページ不在処理10、使用可能実ペー
ジ確保処理20.ページスチール処理30、時間管理処
理40およびページ計測処理50から成る。
ユーザプログラム(以下ジョブと称す)の仮想記憶装置
アクセス時に、アクセスした仮想ページに実ページが割
り当てられていないとアドレス変換例外割り込みが発生
し、ページ不在処理ルーチン10に制御が渡る。
ページ不在処理ルーチン10は、アドレス変換例外割り
込みが発生した仮想ページに実ページを割り当て(ステ
ップ11)、割り当てた実ページに補助ページを入力し
くステップ12)、システムが使用可能な実記憶装置が
不足していれば、使用可能ページ確保ルーチン20を起
動し、不足していなければ、ユーザプログラムに戻る(
ステップ13)。実ページ割り当て(ステップ11)で
は、使用可能ページキュー71が示す先頭の実記憶管理
テーブルエントりを一つチェインから外し、参照ページ
キュー72にチェインされている実記憶管理テーブルエ
ントリの最後尾に加える操作を行なう。
使用可能ページ確保ルーチン20は、システムが必要と
する使用可能ページ数に対する不足した確保ページ数を
計算しくステップ21)、ページスチールを行なうジョ
ブを選択しくステップ22)、AtJT403が高い値
いの仮想記憶空間を選択しくステップ23)、ページス
チール処理ルーチン30を起動するためのタスクを生成
しくステップ24)、確保ページ数が不足しているかを
調べ不足していればステップ21を実行し、確保ページ
数が充たされれば、ユーザプログラムに戻る(ステップ
26)。
ページスチール処理ルーチン30は、しきい値Poを算
出しくステップ31A)、ページスチール対象となった
仮想記憶空間の変更ページ率79のそのしきい値より高
いか否かを判定しくステップ31B)、システムで規定
した値より低い時は、罪照ページキュー73の先頭にチ
ェインされている実記管理テーブルエンドリフ1−4よ
り未変更ページのみのページスチールを行い(ステップ
32)、確保すべき数の実ページがスチールできたか否
かを調べ(ステップ33)、確保ができていれば、ペー
ジ計測タスクを終了する(ステップ35)。また、ステ
ップ33において確保ができていなければ、参照ページ
キュー73あるいは変更ページキュー74の先頭にチェ
インされている実記憶管理テーブルエントリ71−4.
71−6をより、ページ未参照時間カウンタの高い実ペ
ージを選択し、ページスチールを行ない(ステップ34
)、確保ページ数に足りない数の実ページを確保し、ス
テップ35を行なう。また、ステップ31においてシス
テムで規定した値より変更ページ率が高い値の時は、ス
テップ34を行なう。
ステップ32において、変更された実ページがあれば、
その実ページ管理テーブルエントリを変更ページキュー
の最後尾にチェインする。
ステップ31Aにおいて、その判定基準となる値は、確
保しようとするページXよりも、ページスチール対象と
なった仮想記憶空間にある未変更のページの予測数yが
、少ないとき、つまりその仮想記憶空間が保有するペー
ジをA、変更ページ率をPとする時、以下の条件になる
時である。
(1−P)A=y<x (O乙P塁1)、(x歪A) p>1− −  (=Po) このときは、この仮想記憶空間について未変更ページを
サーチしても、確保ページ数に達つしない。そのため、
従来方法では、その仮想記憶空間の変更ページを再度必
要数スチールする必要がある。したがって、未変更ペー
ジのサーチは、その時間が大にもかかわらず、必要な数
のページをスチールするのに役立ってない。したがって
本実施例では、このようなサーチをしないようにしであ
る。
また、ステップ31Aの代案として、未変更ページ数y
を求め、y < xにより判定する方法がある。
時間管理ルーチン40は、仮想記憶計算機システムの持
つタイマーにより一定期間ごとの割り込みによって起動
し、実記憶装置の監視機構の条件によりページ計測処理
を行なうジョブがあるか否かを判定しくステップ41)
、ページ計測処理を行なうべきジョブがなければユーザ
プログラムに戻り、ページ計測処理をすべきジョブがあ
れば、対象とするジョブを取り出しくステップ42)、
そのジョブが占有する仮想記憶空間より未参照時間指標
(AUT)403の高い仮想記憶空間かあるいはアドレ
ス空間を選び(ステップ43)、その仮想記憶空間のA
P77がLRUに適合するか否かを調べ(ステップ44
)、適合していれば、ステップ41を行なう、ステップ
44において、AP77がLRUに適合していれば、ペ
ージ計測処理50を行なうタスクを生威しくテップ45
)、ステップ41を行なう。
ページ計測処理ルーチン50は、対象とする仮想記憶空
間のアドレス変換テーブルに割り当てられている実ペー
ジの未参照時間指標よりAUT403を計算し、目的の
個数の実ページに対し、各実記憶管理テーブルエントリ
を求め、参照ページと変更ページを分類しくステップ5
2)、変更ページの数をカウントしくステップ53)、
実ページの参照順序を解析(ステップ54)を行う(ス
テップ55)。その後、計測した実ページ数と変更ペー
ジ数の割合から、対象とする仮想記憶空間の変更ページ
率79を求め(ステップ56)、ページ計測処理タスク
を終了する(ステップ57)。
ステップ52では、実ページの未参照頻度を更新すると
伴に変更された実ページと変更されなかった実ページを
それぞれ変更ページキューと参照ページキューに分類す
る処理を行なう。
特に、主記憶共有型で複数のCPUを有す仮想記憶計算
機システムでは、ページスチール処理ルーチン30およ
びページ計測処理50は、仮想記憶空間ごとに処理が独
立に行なうため、仮想記憶空間ごとに異なったタスクを
生威し、それぞれのタスクにCPUを割り当てることに
より並列実行が可能になる。
次に、上記処理中で本発明に関係するページ計測空間選
択処理43、ページスチール空間選択処理23、参照ペ
ージ分類処理52.実ページ参照順解析処理54および
未変更ページのみのページスチール32の詳細を述べる
第4図に示すページ計測空間選択処理43は、ジョブが
占有する仮想記憶空間を任意に選び、仮想記憶空間がア
ドレス空間であるか否かを判定し、(ステップ421)
、アドレス空間であれば、データ空間リスト402に示
される全てのデータ空間に対し、アドレス変換テーブル
に割り当てられた実ページの未参照時間指標RUTより
、各データな間の未参照時間指標(AUT)403を計
算しくステップ422)、アドレス空間ページ計測空間
を行なう対象空間とする(ステップ423)。
ステップ421において、データ空間であれば。
データ空間のAUTがシステパラメータにより定めた一
定値を越えたものであるか否かを判定しくステップ42
4)、AUTが大きければ、データ空間を選択しくステ
ップ426)、もし未参照時間カウンタAUTが一定値
を越えていなければデータ空間リストの内から最も未参
照時間カウンタの高いデータ空間を選択する(ステップ
425)。
第5図に示すページスチール空間選択処]!l!23は
、実行可能状態のジョブが占有する仮想記憶空間から、
任意の仮想記憶空間を選択しくステップ221)、その
仮想記憶空間のAUTが、システムの規定する値を越え
ているか否かを判定しくステップ222)、もしAUT
が大きければ、その仮想記憶空間を参照する頻度が低い
仮想記憶空間であるとしスチール対象空間とし、もしA
UTが小さければ選択可能な仮想記憶空間があるか否か
を調べ(ステップ223)、選択可能な仮想記憶空間が
あればステップ221を実行し1選択可能な仮想記憶空
間がなければ、任意の仮想記憶空間を選択しくステップ
225)、スチール対象空間とする。
第6図に示す参照ページ分類処理52は、対象とする実
ページが参照されたか否かを判定しくステップ511)
、参照されていれば、実ページの未参照頻度カウンタ(
RUT)をOにしくステップ512)、次に変更されて
いるか否かを判定し、(ステップ513)、変更されて
いれば、実ページの管理キューを変更ページキューの最
後尾にチェインしくステップ514)、変更されていな
ければ、参照ページキューの最後尾にチェインする。
ステップ511において、参照されていむければ実ペー
ジの未参照頻度カウンタ(RUT)を1インクリメント
する(ステップ515)。
第7図に示す実ページ参照順解析53は、対象とする実
ページが参照されたか否かを判定しくステップ531)
、参照されていれば、参照ページ数がワーキングセット
(W)より大きいか否かを判定しくステップ532)、
Wより参照ページ数が大きければ、AP77がLRUに
適さないとする(ステップ533)、ステップ531に
おいて参照されていなければ、参照ページ数を0にする
(ステップ535)。また、ステップ532において、
参照ページ数がWに達していなければ、参照ページ数を
1インクリメントする(ステップ534)、これにより
、ワーキングセット(W)を越えて連続に実記憶装置を
アクセスする仮想記憶空間のAPにLRUに適さないと
セットされる。
第8図に示す未変更ページのみのページスチール処理3
2は、参照ページキュー73に格納されたアドレスから
実記憶管理テーブルエントリを求め(ステップ321)
、実記憶管理テーブルエントリに対応する実ページのア
ドレスを求め(ステップ322)、その実ページの内容
が変更されたか否かを調べ(ステップ323)、実ペー
ジの内容が変更された実ページ(変更ページ)でないな
らば、その実ページをスチールしくステップ324)、
スチールした実ページの数が確保すべき数であるか否か
を調べ(ステップ325)、もし確保すべきページ数に
達していれば未変更ページのスチール処理を確保ページ
達成として終了する。ステップ323において変更ペー
ジであれば、参照ページキューにスチール可能なページ
があるか否かを調べ(ステップ326)、スチール可能
な実ページが存在すれば、現在ページスチールを試みよ
うとした実記憶管理テープエントリのNPFより、次の
スチールを試みる実記憶管理テーブルエントリを求め(
ステップ327)、ステップ322を行なう、また、ス
テップ326においてスチール可能なページが無ければ
未変更ページスチール処理を確保ページに達しないとし
て終了する。ステップ325において、確保すべきペー
ジに達していなければ、ステップ326を行い、確保ペ
ージ数に達するまで未変更ページのスチール処理を行な
う。
従来処理では、参照ページキューに変わり仮想記憶空間
に割り当てられた実ページの実記憶管理テーブルエント
リ(変更ページと未変更ページを含む)がキューにチェ
インされていた。そのため変更ページの数が非常に多く
、スチール可能なページを検出するのに多くのCPU時
間を要していた。特に、仮想記憶を逐次的にアクセスし
、総仮想記憶量がシステムが保有する実記憶量を越えて
いるジョブが占有する仮想記憶空間では、未変更ページ
の数が確保すべきページ数より少なくなる(確保ページ
未達成)場合が多く発生していた。
本実施例によれば、多数のデータ空間を使用し、多くの
実記憶装置を占有するジョブに対して、アクセス頻度の
少ない仮想記憶空間を求めることにより、全ての仮想記
憶空間の実記憶装置を定則的にページ計測するにの対し
、アクセス頻度の少ない仮想記憶空間の実記憶装置のみ
ページ計測するので、システムのページ計測に要する実
記憶管理オーバヘッドが軽減され、システムの処理効率
および応答性能が向上する。
また、従来の計算機システムでは、計算機システムが保
有する実記憶量よりも大きい仮想記憶量を占有するジョ
ブが、仮想記憶を逐次的にアクセス(実ページの内容を
変更する)場合、変更ページ率(p)は、1に近い値に
なる。この場合、ジョブが占有する実ページをA、ペー
ジスチールにより確保しようとする実ページ数をX、変
更ページ率をp、1ページ当たりの未変更ページのチエ
ツクに要するCPU時間をtとすると、ページスチール
のCPUオーバヘッド(無駄なCPU時間)vOは以下
の式により示すことができる。
Vo=AXt−(1−p)xAxt  :(x>(1−
p)A)#AX t           : (p=
1)以上のように、ジョブが占有する実記憶量(A)に
比例して、増加する。
本発明によれば、ページスチールのCPUオーバヘッド
Vnは、以下の式となる。
また、参照ページキューを設けることにより、ページス
チールのCPUオーバヘッドVnは、となり、ページス
チールのオーバヘッドが削減できる。また、ページスチ
ールのオーバヘッドが、ジョブの保有する実ページ数に
比例して増加しない。
例えば、ジョブが占有する実ページ数 A=0.25X10’ページ、エページ当りの未変更ペ
ージのチエツクに要するCPU時間 t=1μsec 
、確保するページ数X=↓00.変更−x−10 ページ率P”    A−とする場合、v、 (従来方
式)’=250msecv、(本発明)  =0.1m
5ec となり、 CPUオーバヘッドは、 従来方式に比べ、 また、複数のCPUを持つ仮想記憶計算機システムでは
、複数のページ計測処理およびページスチール処理を複
数のタスクに割り当て複数のCPUで並列実行すること
により、実記憶管理処理に要する実行時間が短くなり、
実記憶装置の排他制御によるロック時間を短くし、複数
のCPUを効率的に使用することができ、システムの処
理効率が向上する。
〔発明の効果〕
本発明によれば、ページスチール処理にスチール対象と
する実ページを選択する処理に要するCPUの時間が短
くなる。
また、ページアウトが必要となる実ページおよび必要と
しない実ページをそれぞれ別々キューにより管理するた
め各種の実ページの検索処理の効率および応答性能が向
上する。
また、実記憶装置を均一的に管理するのではなく、各空
間ごとに未参照時間指標を設けることにより、各空間の
持つ実記憶装置に対する使用頻度を予測し、実記憶装置
の一部分のみの使用状況を解析するだけで実記憶装置全
体の使用状況を解析でき、記憶装置を効率的に使用でき
る。また、実記憶装置の使用頻度を解析する回数が削減
できるため、システムの処理効率および応答性能を向上
する。
また、実記憶装置へのアクセスパターンが順アクセスで
ある仮想記憶空間では、定期的に実記憶装置の参照頻度
を解析しなくても、その実記装置の参照頻度を予測する
ことができるため、定期的に行なっている実記憶装置の
参照頻度を省略することにより、システムの処理効率お
よび応答性能を向上する。
また、複数のCPUを持つ仮想記憶計算機システムでは
、複数の仮想記憶塵nuの実記憶装置のページ置換処理
を同時に並列実行できるため、実記憶装置のページ置換
処理に要する実行時間が短くなる等、複数のCPUを効
率的に使用することができる。
【図面の簡単な説明】
第1図は本発明によるオペレーティングシステムの構成
図、第2図は従来の多重仮想記憶を用いる計算機システ
ムの構成図、第3図は第2図の多重仮想記憶に用いるア
ドレス変換方法の説明図。 第4図は第1図のページ計測空間選択処理(43)の流
れ図、第5図は第1図のページスチール空間選択処理(
23)の流れ図、第6図は第■図の参照ページ分類処理
(52)の流れ図、第7図は第1図の実ページ参照解析
処理(54)の流れ図、第8図は、本発明によるオペレ
ーティングシステムが用いるテーブルの構造図、第9図
は、第1図の未変更ページのみのページスチール処理3
2の流れ図である。 符号の説明 10・・・使用可能ページ確保ルーチン、30・・・ペ
ージスチール処理ルーチン、40・・・時間管理ルーチ
ン、50・・・ページ計測ルーチン、100・・・仮想
記憶装置、101・・・仮想ページ、103・・・アド
レス空間、104・・・データ空間、200・・・実記
憶装置。 201・・・実ページ、300・・・補助記憶装置。 301・・・補助ページ、400・・・汎用レジスタ、
401・・・空間レジスタ、402・・・データ空間リ
スト、403・・・データ空間使用頻度カウンタ、40
4・・・アドレス変換テーブルオリジン、405・デー
タ空間リストエントリ、406・・・アドレス変換テー
ブル。 第 1 図 第2図 第3図 第5図 ベージスチール空間選択23 第6図 e頭ページ分離処理52 第7図 実ページ参照順解析処理54

Claims (1)

  1. 【特許請求の範囲】 1、実記憶装置を固定単位であるページごとに管理する
    多重仮想記憶方式を採るオペレーティング・システムに
    より、制御されて、1つ以上の仮想記憶装置を使用し、
    プログラムを実行する計算機システムにおいて、一定時
    間ごとに実行可能状態のプログラムが占有する実記憶装
    置のページごとの未参照時間をあらわす指標を計算する
    ページ計測処理において、各プログラムごとに占有する
    実記憶装置の内容が変更されたページの割合(変更ペー
    ジ率)を計算し、使用可能実記憶ページを確保するため
    のページスチール処理において、各プログラムの変更ペ
    ージ率により、スチールすべきページを変えるこ とを特徴とする主記憶管理方法。 2、上記ページ計測処理において、プログラムが占有す
    る実記憶装置の一部のみについて上記変更ページ率を計
    算することにより、プログラムの占有する実記憶装置全
    体の変更ページ率を推定することを特徴とする特許請求
    範囲第1項記載の主記憶管理方法。 3、上記ページ計測処理において、プログラムが占有す
    る実記憶装置の上記推定した変更ページ率より、プログ
    ラムの未変更ページ数を計算し、使用可能実記憶ページ
    確保するためのページスチール処理において、各プログ
    ラムの未変更ページ数の大小により、スチールすべきペ
    ージを変えることを特徴とする特許請求範囲第2項記載
    の主記憶管理方法。 4、実記憶装置を固定単位であるページごとに管理する
    仮想記憶計算機システムにおいて、一定時間ごとに実行
    可能状態のプログラムが占有する実記憶装置の未参照時
    間を示す指標を計算するページ計測処理において、プロ
    グラムのアクセスパターンがLRU(Least Re
    centry Used)法に適合する仮想記憶領域に
    対応する実記憶装置についてのみ、ページ計測処理を行
    なうことを特徴とする主記憶管理方法。 5、実記憶装置を固定単位であるページごとに管理し、
    実記憶装置内にアドレス変更テーブルを有する仮想記憶
    装置の未参照時間をあらわす指標を計算するページ計測
    処理においてアドレス変換テーブルに割り当てられた実
    記憶装置の未参照時間指標より仮想記憶領域の未参照時
    間指標を求め、ページ計測領域を選択する処理において
    仮想記憶領域の未参照時間指標が大きい仮想記憶領域に
    対し、実記憶装置のページ計測処理を行なうことを特徴
    とする主記憶管理方法。 6、実記憶装置を固定単位であるページごとに管理し、
    実記憶装置内にアドレス変換テーブルを有し、1つのジ
    ョブが複数の空間をアクセス可能な仮想記憶計算機シス
    テムにおいて、プログラムの実記憶装置のページ計測処
    理時にアクセス可能な仮想記憶空間のアドレス変換テー
    ブルの未参照時間をあらわす指標をもとに各仮想記憶空
    間の未参照時間指標を計算することを特徴とする特許請
    求範囲第5項記載の主記憶管理方法。 7、実記憶装置の管理単位であるページごとにエントリ
    を持つ仮想記憶計算機システムにおいて、プログラムに
    より内容の変更が行なわれなかった。実記憶ページに対
    応するエントリを集めた参照ページ管理キューとプログ
    ラムにより変更が行なわれた実記憶ページに対応するエ
    ントリを集めた変更ページ管理キューを設け、ページ計
    測処理において実記憶装置の内容が変更されたページの
    実記憶管理テーブルエントリは変更ページキューにチェ
    インし、それ以外のページの実記憶管理テーブルエント
    リは参照ページキューにチェインすることにより参照ペ
    ージを分類することを特徴とする主記憶管理方法。 8、複数の中央処理装置(以下、CPUと略する)を有
    する多重仮想記憶計算機システムにおいて該複数のCP
    Uを用い、ジョブごとの実記憶装置のページ計測処理お
    よびページスチール処理を行なうタスクを複数生成し、
    複数のCPUにより並列実行することを特徴とする主記
    憶管理方法。
JP1264913A 1989-10-13 1989-10-13 主記憶管理方法 Pending JPH03127149A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1264913A JPH03127149A (ja) 1989-10-13 1989-10-13 主記憶管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1264913A JPH03127149A (ja) 1989-10-13 1989-10-13 主記憶管理方法

Publications (1)

Publication Number Publication Date
JPH03127149A true JPH03127149A (ja) 1991-05-30

Family

ID=17409947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1264913A Pending JPH03127149A (ja) 1989-10-13 1989-10-13 主記憶管理方法

Country Status (1)

Country Link
JP (1) JPH03127149A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000215099A (ja) * 1996-01-31 2000-08-04 Toshiba Corp 情報処理装置の資源管理装置、及び情報処理システムにおける資源管理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000215099A (ja) * 1996-01-31 2000-08-04 Toshiba Corp 情報処理装置の資源管理装置、及び情報処理システムにおける資源管理方法

Similar Documents

Publication Publication Date Title
CN109923523B (zh) 计算机系统及用于计算机系统的方法
US8271989B2 (en) Method and apparatus for virtual processor dispatching to a partition based on shared memory pages
US5784698A (en) Dynamic memory allocation that enalbes efficient use of buffer pool memory segments
US6871264B2 (en) System and method for dynamic processor core and cache partitioning on large-scale multithreaded, multiprocessor integrated circuits
US7516291B2 (en) Cooperative mechanism for efficient application memory allocation
US5349656A (en) Task scheduling method in a multiprocessor system where task selection is determined by processor identification and evaluation information
US20160328266A1 (en) Process grouping for improved cache and memory affinity
JP2858795B2 (ja) 実記憶割り当て方法
US8495302B2 (en) Selecting a target number of pages for allocation to a partition
JP2013515991A (ja) アクセラレータ・リソースを動的に管理するための方法、情報処理システム、およびコンピュータ・プログラム
EP0362880B1 (en) Process for partially swapping real storage areas used by a program between a real storage and an auxiliary storage
JP4241921B2 (ja) 計算機システム及びその資源割当て方法
US20140229683A1 (en) Self-disabling working set cache
US20200387408A1 (en) Resolving cluster computing task interference
CN111125070A (zh) 一种数据交换方法及平台
Hwang et al. Hyperdealer: Reference-pattern-aware instant memory balancing for consolidated virtual machines
JPH03127149A (ja) 主記憶管理方法
JP2004227188A (ja) ジョブスワップ方法、ジョブ管理装置、およびジョブ管理プログラム
JPH10143382A (ja) 共有メモリ型マルチプロセッサシステムの資源管理方法
JP2610086B2 (ja) メモリ管理方法及びシステム
CN113010453A (zh) 一种内存管理的方法、系统、设备及可读存储介质
JP2008071356A (ja) 割込禁止区間処理装置および方法とページ固定装置および方法
JP5847313B2 (ja) 情報処理装置
Wegner Machine organization for multiprogramming
Lohmann et al. Hard Real-Time Memory-Management in a Single Clock Cycle (on FPGAs)