JPH06222997A - 仮想記憶計算機システム - Google Patents

仮想記憶計算機システム

Info

Publication number
JPH06222997A
JPH06222997A JP5009140A JP914093A JPH06222997A JP H06222997 A JPH06222997 A JP H06222997A JP 5009140 A JP5009140 A JP 5009140A JP 914093 A JP914093 A JP 914093A JP H06222997 A JPH06222997 A JP H06222997A
Authority
JP
Japan
Prior art keywords
page
paging
algorithm
computer system
virtual
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
JP5009140A
Other languages
English (en)
Inventor
Tatsuya Tsurukawa
達也 鶴川
Toru Takeso
徹 武曽
Keita Ono
慶太 大野
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP5009140A priority Critical patent/JPH06222997A/ja
Publication of JPH06222997A publication Critical patent/JPH06222997A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 仮想記憶計算機システムにおいて、稼働状態
に適応したページングアルゴリズムを選択してページン
グ処理の効率を向上させることにより、システムのスル
ープットを向上させる。 【構成】 常時複数のページングアルゴリズムによるペ
ージングをシミュレーションし、所定のページング回数
中でページの呼び戻し回数の最も少なかったアルゴリズ
ムを次のページングに採用することにより、逐次最適な
アルゴリズムを選択する。また、呼び戻しが発生した場
合はカレントアルゴリズムが当該ページには不適切であ
るという適応性情報をそのページに記憶させ、同一のア
ルゴリズムによって当該ページがページアウトの対象と
して選択された時にはページアウトを拒否する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は仮想記憶計算機システ
ム、特に仮想記憶計算機システムにおけるページング処
理を高効率に行うメモリ管理方式を実現する仮想記憶計
算機システムに関する。
【0002】
【従来の技術】仮想記憶計算機システムでは、ユーザに
実際に実装されている主記憶容量以上の論理空間を提供
するために、論理空間、主記憶をページと呼ぶ単位に分
割して管理し、主記憶に入りきれない論理空間上のペー
ジ(これを仮想ページという)は外部ディスク等の外部
記憶装置上に退避させておき、これを必要に応じて主記
憶上のページ(これを実ページという)にロードしてプ
ログラムを実行する方式を用いていた。
【0003】ここで、主記憶の実ページに未使用のもの
がなくなったり、あるいは主記憶の実ページの使用量が
予め設定された一定の値を越えた状態で、外部記憶装置
上の新たなデータである仮想ページを主記憶にロードす
る(これをページインという)必要が生じると、主記憶
上のいずれかの実ページを外部記憶装置に退避させて
(これをページアウトという)未使用の実ページを用意
する必要が生じる。このページアウトの対象となるペー
ジを選択するアルゴリズムを、ページングアルゴリズム
という。
【0004】ページングにおいてページアウトすべきペ
ージは、最も長い将来使用されることのないページであ
ることが望ましいが、それを前もって完全に知ることは
容易なことではない。そこで、現実的にはモデル化され
た近似的なページングアルゴリズムを用いる必要があ
り、そのような近似的なページングアルゴリズムとして
従来から、FINUFO(First In Not Used F
irst Out)法、LRU(Least Recently Used )
法、LFU(Least Frequently Used )法、MFU
(Most Frequently Used )法等の様々なアルゴリズ
ムが提案されている。これらのページングアルゴリズム
には、任意の時点で次に参照される可能性の高いページ
は、最も近い過去において参照したページであることが
多いという特徴を利用したものや、1つのページ内のデ
ータを集中的に参照したりすることが多いという特徴を
利用したものなどがあり、これらはそれぞれプログラム
の特徴を考慮して考案されている。
【0005】ところで、従来の仮想記憶計算機システム
では、主記憶の使用量が一定の値を越えページングが必
要となったときには、通常は単一のページングアルゴリ
ズムを用いてページングを行っていた。このような単一
のページングアルゴリズムを用いてページングを行う従
来の仮想記憶計算機システム、例えば、ページングアル
ゴリズムにFINUFO法を使用している仮想記憶計算
機システムにおいて、主記憶上に空きページがない状態
で新たなページングが発生した場合の動作について図を
用いて説明する。
【0006】図7は、従来の仮想記憶計算機システムに
おいて、主記憶上に空きページがなくなった状態で最初
のページングが発生した場合のメモリ状況を示す概念図
である。図7では、従来の仮想記憶計算機システムの主
記憶装置が構成する主記憶容量を主記憶11として示
し、外部記憶装置を外部ディスク12として図示してあ
る。また、主記憶11に図示された各枠は各々ページを
表し、その枠に示される数字は各ページがページインさ
れた順番を表している。図に示すように、26回目に発
生した新たなページングによりページ番号26のページ
がページインされようとしているが、そのために必要と
なる空の実ページを作り出すためにページアウトの対象
として選択されるページは、FINUFOアルゴリズム
では最も古いページ番号を持つ「1」ページが選ばれ
る。
【0007】しかし、上述のFINUFO法,LRU
法,LFU法,MFU法等の各ページングアルゴリズム
は、前述したようにそれぞれプログラムのデータの局所
性などの特徴に基づいたものであって、実際のプログラ
ムにおいては必ずしもこれらの特徴に当てはまるものば
かりとは限らず、場合によっては仮想記憶計算機システ
ムで決められている単一のページングアルゴリズムが非
効率的なものになることも有り得る。従って、このよう
な場合は仮想記憶計算機システムのページング処理効率
が悪くなるため、システムのスループットの低下を引き
起こすことがある。また、効率的なページングアルゴリ
ズムはプログラムやページによって異なると考えられる
ので、単一のページングアルゴリズムで常に効率的なペ
ージングが行われるとは限らない。
【0008】そこで、このような問題に対処するため
に、例えば、”Sun OS Reference Manual VO
LII”に記載されるSun社のオペレーティングシステム
(OS)である「Sun OS R4.1」では、アプリ
ケーションプログラムの中でmadvise 関数をコールする
ことにより、システムにデフォルトで設定されているペ
ージングアルゴリズムの他に、そのプログラムの指定ア
ドレス範囲について特定のページ置換アルゴリズムを設
定することができるようにしていた。
【0009】
【発明が解決しようとする課題】上述したように、単一
のページングアルゴリズムを用いる従来の仮想記憶計算
機システムでは、ページングアルゴリズムはプログラム
のデータの局所性などの特徴に基づいたものであるが、
実際のプログラムにおいては必ずしもこれらの特徴に当
てはまるとは限らず、また、効率的なページングアルゴ
リズムはプログラムやページによって異なると考えられ
るので、その場合には仮想記憶計算機システムで決めら
れている単一のページングアルゴリズムが非効率的なも
のになり、仮想記憶計算機システムのスループットの低
下を引き起こすという問題点があった。また、上述し
た”Sun OS Reference Manual VOLII”に記
載される「Sun OS R4.1」が用いている、プロ
グラムの指定アドレス範囲について特定のページ置換ア
ルゴリズムを設定できるというページングアルゴリズム
指定機能についても、madvise 関数を使用するためには
そのプログラムをソースレベルで書き換える必要があ
り、全てのプログラムについて起動前に最適なページン
グアルゴリズムを決定することは困難であるという問題
点があった。
【0010】本発明は上記のような問題点を解消するた
めになされたもので、システム稼働中はその時々の稼働
状態に適応したページングアルゴリズムでページングを
行うということでページング処理の効率を向上させるこ
とにより、システムのスループットを向上させるメモリ
管理方式を実現する仮想記憶計算機システムを得ること
を目的としている。
【0011】
【課題を解決するための手段】上記目的を達成するため
に、本出願の第1の発明に係る仮想記憶計算機システム
は、システム稼働中は常時複数のページングアルゴリズ
ムを用いてページングをシミュレーションするシミュレ
ーション手段と、シミュレーション手段によるシミュレ
ーション結果から所定のページング回数中でページの呼
び戻し回数の最も少なかったアルゴリズムを次のページ
ングに採用することにより逐次最適なアルゴリズムを選
択するようにした最適アルゴリズム選択手段とを備え、
システム稼働状態に応じて前記最適アルゴリズム選択手
段により選択される最も効率のよいページングアルゴリ
ズムに基づきページング処理を行うことを特徴とする。
【0012】また、本出願の第2の発明に係る仮想記憶
計算機システムは、主記憶上に展開された実ページ毎に
当該ページの複数のページングアルゴリズムに対する適
応性情報を記憶させる適応性情報記憶手段と、システム
稼働中は常時複数のページングアルゴリズムを用いてペ
ージングをシミュレーションするシミュレーション手段
と、シミュレーション手段によるシミュレーション結果
から所定のページング回数中でページの呼び戻し回数の
最も少なかったアルゴリズムを次のページングに採用す
ることにより逐次最適なアルゴリズムを選択するように
した最適アルゴリズム選択手段とを備え、システム稼働
状態に応じて最適アルゴリズム選択手段により選択され
る最も効率のよいページングアルゴリズムに基づきペー
ジング処理を行うと共に、適応情報記憶手段によりペー
ジの呼び戻しが発生した場合はカレントアルゴリズムが
当該ページには不適切であるという適応情報をページに
記憶し、ページング処理においてページアウトの対象と
して選択されたページが適応性を有するか否かをその適
応性情報によりチェックし、適応性がないと判断された
場合は当該ページのページアウトを拒否して、適応性の
ある次のページが選択できるまで選択動作を繰り返すこ
とを特徴とする。
【0013】
【作用】従って、本発明の仮想記憶計算機システムによ
れば、システム稼働中はシミュレーション手段により常
時複数のページングアルゴリズムを用いてページングの
シミュレーションが行われ、そのシミュレーション結果
に基づいて最適アルゴリズム選択手段が所定のページン
グ回数中でページの呼び戻し回数の最も少なかったアル
ゴリズムを次のページングに採用することにより逐次最
適なアルゴリズムを選択するので、システム稼働状態に
応じた最も効率のよいページング処理を行うことができ
る。
【0014】また、本発明の仮想記憶計算機システムに
よれば、主記憶上に展開された実ページにはページング
処理において当該ページの呼び戻しが発生した場合にカ
レントアルゴリズムが当該ページには不適切であるとい
う適応性情報が適応情報記憶手段により記憶され、この
適応性情報をチェックすることによりページアウトの対
象として選択された場合に当該ページがカレントアルゴ
リズムに適応性を有するか否かを判断して、適応性がな
いと判断された場合は当該ページのページアウトを拒否
すると共に、適応性のある次のページが選択できるまで
選択動作を繰り返すので、さらに効率のよいページング
処理を実現できる。
【0015】
【実施例】以下、本発明の好適な実施例を図に基づいて
説明する。図1は本実施例に係る仮想記憶計算機システ
ムのメモリ構成図である。図において、本実施例の仮想
記憶計算機システムは、ページングアルゴリズムとして
FINUFO法、LRU法、LFU法、MFU法の複数
のアルゴリズムによりページングを実現することができ
るハードウエア(H/W)を有する仮想記憶計算機シス
テムであって、図示しない中央処理装置と、主記憶11
と、外部記憶装置である外部ディスク12とから構成さ
れ、図1はその主記憶11のメモリ構成を示している。
【0016】実施例1.本発明の第1実施例に係る仮想
記憶計算機システムでは、主記憶11はメモリ容量を3
2MB、1ページを4KBとし、主記憶11全体のペー
ジ数が8000ページから構成されるシステムとして以
下説明する。また、本実施例の仮想記憶計算機システム
では、主記憶11のメモリ容量の内128ページをシミ
ュレーション用のメモリプール24として割り当ててい
る。このシミュレーション用のメモリプール24は主記
憶11の所定位置に固定的な領域を持つものではなく、
128個のページのリスト構造となっており、主記憶1
1内の位置は可変である。さらに、主記憶11にはカー
ネル領域23が確保され、このカーネル領域23内には
シミュレーションに用いる128要素の領域をもった配
列25が3個存在する。
【0017】ところで、通常仮想記憶計算機システムが
起動された場合に、最初に用いられるページングアルゴ
リズムは予め決められている。例えば、本実施例の仮想
記憶計算機システムでは、起動後はFINUFOアルゴ
リズムで実際のページングが行われるものとする。本実
施例の仮想記憶計算機システムでは、後述するように起
動後は常時複数のページングアルゴリズムによりページ
ングがシミュレーションされることになるので、説明の
便宜上ページング処理における複数のアルゴリズムのう
ち、現在のシステムで採用されているページングアルゴ
リズムをカレントアルゴリズムと呼称し(例えば、起動
時はFINUFOアルゴリズムがカレントアルゴリズム
となる)、それ以外のアルゴリズムを候補アルゴリズム
と呼称する(例えば、起動時はLRU,LFU,MFU
アルゴリズムが候補アルゴリズムとなる)。以下、本実
施例の仮想記憶計算機システムのページング処理につい
て説明する。
【0018】まず、主記憶11の使用量が所定の基準値
を越え、最初のページング要求が発生したと仮定する。
今、カレントアルゴリズムがFINUFO法であるの
で、起動後最初に主記憶11に読み込まれたページから
順に現在使用されていないページをサーチし、その内最
も古いページが外部ディスク12にページアウトされる
ことになる。そして、選択されたページをページアウト
すると同時に、そのページアウトの対象となるページを
メモリプール24にもコピーする。その後、ページアウ
トすることにより空きの生じた主記憶11のページに、
外部ディスク12から新たなページをページインする。
本実施例の仮想記憶計算機システムでは、上記処理に加
えてさらに、LRU,LFU,MFUの各々の候補アル
ゴリズムでページアウトの対象とるページをシミュレー
ションし、それらの候補アルゴリズムによってページア
ウトの対象となったページのページ番号をカーネル領域
23に記憶させる。
【0019】すなわち、本実施例の仮想記憶計算機シス
テムの主記憶11のカーネル領域23内には、候補アル
ゴリズムによるシミュレーションにおいて用いられる1
28要素の領域をもった配列25が、候補アルゴリズム
の各方法毎(この場合、LRU,LFU,MFU毎)に
用意されているので、カレントアルゴリズムによるペー
ジングの際に行われる前記候補アルゴリズムのシミュレ
ーションにより選択されたページアウトの対象となるペ
ージのページ番号を、カーネル領域23内の各アルゴリ
ズム毎の配列25内にそれぞれ保持させるようにするの
である(もっとも、候補アルゴリズムでページアウトの
対象となったページは、実際にはページアウトされない
ことはもちろんである)。従って、カーネル領域23の
配列25には各アルゴリズムとも最大128回分のペー
ジアウト履歴が保持できることになる。
【0020】上記最初のページング処理による主記憶1
1のメモリ状況を図2に示す。図において、最初のペー
ジング処理ではカレントアルゴリズムであるFINUF
Oでページ番号1のページがページアウトの対象として
選択され、メモリプール24の先頭チェーンに格納され
ている。また、候補アルゴリズムのシミュレーションの
結果、LRUでページ番号12、LFUでページ番号3
2、MFUでページ番号56のページがページアウトの
対象として選択され、各ページ番号がカーネル領域23
の各アルゴリズムに対応するチェーンに格納されてい
る。さらに、外部ディスク12からページ番号42のペ
ージがページインされ、それまでページ番号1のページ
領域であった箇所に格納されている。
【0021】本実施例の仮想記憶計算機システムでは、
ページング要求が発生する度に以上のようなページング
処理を行い、カレントアルゴリズムにより選択されたペ
ージアウト対象のページについてはメモリプール24に
ページのコピーを格納し、候補アルゴリズムにより選択
されたページアウト対象のページについてはカーネル領
域23内の配列25にそれぞれのアルゴリズム毎にペー
ジ番号を書き込むことによりページアウト履歴を残して
いる。また、本実施例の仮想記憶計算機システムでは、
ページング処理の際カレントアルゴリズムが現在のプロ
グラム処理に適応しているかどうかを判断するために以
下の処理を行う。
【0022】すなわち、ページングの際には新たなペー
ジが外部ディスク12から主記憶11上に読み込まれる
が(ページイン)、その都度本実施例の仮想記憶計算機
システムでは当該ページのページ番号と、カーネル領域
23に記憶された各アルゴリズムのページアウト履歴を
照合し、ページの呼び戻し(ページバック)が発生して
いるかどうかを調べる。ここで、「ページの呼び戻し」
とは、一度ページアウトされたページが比較的短い時間
に再びページインされることを示す。このページの呼び
戻しの回数が多くなるに従って、システムのオーバーヘ
ッドが大きくなる。本実施例の仮想記憶計算機システム
ではこのページの呼び戻しが発生している場合は、当該
アルゴリズムのページの呼び戻し発生回数を1インクリ
メントする。このようなページの呼び戻し発生回数のカ
ウントをページングの度に行い、ページングが128回
繰り返される毎に、それまでの128回のページング処
理において各アルゴリズム毎に何回のページの呼び戻し
があったかをチェックし、ページの呼び戻し発生回数の
最も少なかったアルゴリズムをそれからのカレントアル
ゴリズムとして選択・採用する。
【0023】図3は、上述したページング処理中にペー
ジの呼び戻しが発生した場合の主記憶11のメモリ状況
を説明するための図である。図ではページ番号27のペ
ージがページインされようとしているが、「27」ペー
ジはすでにカレントアルゴリズムとLFUアルゴリズム
において1度ページアウトされていることが、メモリプ
ール24及びカーネル領域23のページアウト履歴から
分かる。従って、ページの呼び戻しが発生しているカレ
ントアルゴリズムとLFUアルゴリズムについて呼び戻
し回数のカウントが“1”増えることになる。なお、カ
レントアルゴリズムでのページの呼び戻しの場合には、
外部ディスク12上のデータと同等のものがメモリプー
ル24のチェーン上にも存在するので、本実施例の仮想
記憶計算機システムでは外部ディスク12に対してアク
セスすることなしにページイン操作を行っている。すな
わち図4は、カレントアルゴリズムでページの呼び戻し
が発生した場合の外部記憶装置に対するアクセスを行わ
ないページイン動作の概要を示す概念図であるが、図に
示すように、「27」ページのページ枠をメモリプール
24のチェーンから外すことにより通常の実ページとし
てアクセス可能にし、ページアウトされた点線で示すペ
ージのページ枠をチェーンの最後につなげることによ
り、外部ディスク12に対するアクセスなしに再ページ
イン操作を行うのである。
【0024】次に、今128回目のページング処理が終
了してカレントアルゴリズムがFINUFOからLRU
に変化したと仮定する。このことは、それまでの128
回のページング処理におけるシミュレーションの結果か
ら最適ページングアルゴリズムがLRU法であると判断
されたことを示している訳であるから、結果論的にはカ
レントアルゴリズムとしてFINUFOではなくLRU
を用いてページングを行っていれば、現在のプログラム
に最も適応し、最もページング効率がよかったわけであ
る。そこで、今後行われる少なくとも128回のページ
ングアルゴリズムはLRU法で行われることを考慮する
と、それまでFINUFO法で行われた128回のペー
ジングもLRUアルゴリズムによって行われたような主
記憶状態に戻した方がよいと考えられる。
【0025】従って、本実施例の仮想記憶計算機システ
ムでは、まずそれまでにFINUFOアルゴリズムでペ
ージアウトされたページを主記憶11上に戻す作業を行
う。これらのページはメモリプール24に記憶されてい
るので、実際の作業としては前述したようにメモリプー
ル24のチェーンのリストを解消し、普通のページとし
て扱えるようにすれば良い。その後、今度はLRUアル
ゴリズムを用いてページ選択を行っていればページアウ
トされたであろうページについて、それらのページを確
保しているページ枠番号をチェーンでつないで新たなメ
モリプール24とする。新たにメモリプール24のチェ
ーンに割り当てられたこれらのページの内容について
は、本来外部ディスク12に書き戻してからメモリプー
ル24のページ内容を消去して空にする必要があるが、
この場合にはダーティビットの立っているページ、すな
わち更新されたページのみを外部ディスク12に対する
書き戻しの対象とすれば良い。上述したカレントアルゴ
リズムがFINUFOからLRUアルゴリズムに変化し
た場合における、メモリプールリストの操作とダーティ
ビットの立っているページの外部ディスク12に対する
書き戻し操作とを表したメモリ状況を図5に示す。
【0026】以上説明したように本第1実施例に係る仮
想記憶計算機システムによると、システム稼働中は常時
複数のページングアルゴリズムによるページングがシミ
ュレーションされ、所定のページング回数中にページの
呼び戻しの最も少なかったアルゴリズムを次のページン
グに採用することにより、逐次最適なアルゴリズムを選
択するので、システム稼働状態に応じた最もページング
効率のよいページング処理を行うことができる。
【0027】実施例2.次に、本発明の第2実施例に係
る仮想記憶計算機システムについて説明する。ページン
グ処理において、ページの呼び戻しが発生した場合、そ
のページは少なくともカレントページングアルゴリズム
には適応性がないと判断できる。従って、呼び戻しされ
たページが再び同じページングアルゴリズムによってペ
ージアウトされようとした場合、それを阻止する必要が
ある。そこで、本実施例の第2の仮想記憶計算機システ
ムでは、主記憶11の各々のページに各々のページに各
アルゴリズムに対応する8ビットの適応情報記憶手段を
設ける。前述した第1の仮想記憶計算機システムと同様
に、第2の仮想記憶計算機システムでもFINUFO
法,LRU法,LFU法,MFU法の全部で4つのペー
ジングアルゴリズムを用いるので、合計32ビット(4
バイト)の適応性情報記憶手段が必要となる。そして、
第2の仮想記憶計算機システムでは、ページング処理に
おいてページの呼び戻しが発生した場合にその時のアル
ゴリズムに対応する8ビットの内のいずれかのビットを
ONにすることにより、当該ページがそのアルゴリズム
に対して適応性がないことを示すことができるようにし
ている。なお、8ビットの内のいずれのビットをONに
するかは、以下に説明する処理に従って決定する。
【0028】まず、一般にページアウトされてから再び
呼び戻しされるまでの時間が短いほどそのアルゴリズム
は当該ページに対して適応性が低いと判断される。そこ
で、ページアウトされてから短時間後に呼び戻しされた
場合は、そのアルゴリズムによるページアウト要請はで
きるだけ拒否し続けるべきであるといえる。従って、本
第2実施例の仮想記憶計算機システムでは、まずアルゴ
リズム毎にカーネル領域23の配列25に保持されてい
る128回分のページアウト履歴を16回毎に分け、呼
び戻しされたページが最近ページアウトからどのくらい
前のものであるかをチェックする。そして、呼び戻しさ
れたページが1回から16回前にページアウトされたも
のであったならば、8ビットの内の最左端のビットをO
Nにする。同様に、呼び戻しされたページが17回から
32回前にページアウトされたものであったならば、8
ビットの内の最左端から2番目のビットをONにする。
また、呼び戻しされたページが113回から128回前
にページアウトされたものであったならば、8ビットの
内の最右端のビットをONにする。このように呼び戻し
されたページのページアウト履歴におけるページアウト
された位置によって、適応性情報8ビットのうちいずれ
のビットをONにすべきかを決定する。以後、この32
ビットの適応性情報記憶手段の情報ビットをキャンセル
ビットと記述する。
【0029】上述した第2実施例の仮想記憶計算機シス
テムでのページの呼び戻しが発生した場合における適応
性情報8ビットの設定動作の概念図を図6に示す。図6
に示すページング処理では、外部ディスク12より「3
8」ページをページインしようとしているが、カーネル
領域23の配列25が示すように、LRUアルゴリズム
においては20回前のページングで「38」ページが1
度ページアウトされたことになっている。従って、この
場合17回から32回前にページアウトされた範囲内の
ページを呼び戻していることになるので、第2実施例の
仮想記憶計算機システムは「38」ページの保持するキ
ャンセルビット26の内、LRUアルゴリズムに対応す
るキャンセルビットの最左端から2番目のビットをON
にする。
【0030】ところで、このキャンセルビット26のO
Nされたビットに対応するページングアルゴリズムにつ
いては、当該ビットが常にONとなっている状態ではそ
のアルゴリズムによるページアウトは絶対に発生しない
ので、主記憶11上の全てのページについてキャンセル
ビットがONになってしまうと、まったくページアウト
ができなくなってしまうことになる。そこで、第2実施
例の仮想記憶計算機システムではページングが16回発
生する度に、全てのページのキャンセルビット26を1
ビット右にシフトする。例えば、最右端のビットがON
になっていた場合はこの操作により全てのビットがOF
Fとなり、対応するアルゴリズムによるページアウト要
請に従ってページアウトできるようになる。
【0031】以上のような方法によりキャンセルビット
26の設定及び操作を行うことにより、(1)ページア
ウトされてから短時間に呼び戻しされたページはある程
度長い期間そのアルゴリズムによるページアウト要請を
拒否することができる。(2)ページアウトされてから
比較的長時間後に呼び戻しされたページはキャンセルビ
ット26の設定がなされても、比較的短い時間でその設
定が解除されるようになる。
【0032】なお、本第2実施例の仮想記憶計算機シス
テムでは、キャンセルビット26がONであることによ
りページアウト要請の拒否が生じた場合、カレントアル
ゴリズムに基づき次のページアウトの対象となる候補ペ
ージを選択して、ページアウトを続行しようとする。そ
の際、新たに選択されたページについてもキャンセルビ
ット26の有無をチェックし、当該ページに対応するキ
ャンセルビットがONであればさらに次の候補ページを
ページアウトしようとする。
【0033】以上説明したように本発明の第2実施例に
係る仮想記憶計算機システムでは、ページの呼び戻しが
発生した場合はカレントアルゴリズムが当該ページには
不適切であるという適応性情報をそのページに記憶さ
せ、同一のアルゴリズムによって当該ページがページア
ウトの対象として選択された時にはページアウトを拒否
することにより不必要なページアウトを回避して、さら
に効率のよいページング処理を実現することができる。
【0034】
【発明の効果】以上説明したように、本発明の仮想記憶
計算機システムによれば、システム稼働中は常時複数の
ページングアルゴリズムを用いてページング効率のシミ
ュレーションを行い、そのシミュレーション結果に基づ
いて逐次最適なアルゴリズムを選択するように構成した
ので、システム稼働状態に応じた最も効率のよいページ
ング処理が実現でき、システムのスループットを向上さ
せることができるという効果がある。
【0035】また、本発明の仮想記憶計算機システムに
よれば、主記憶上に展開された実ページに当該ページの
複数のページングアルゴリズムに対する適応性情報を記
憶するようにし、この適応性情報をチェックすることに
よりページング処理においてページアウトの対象として
選択された場合に適応性を有するか否かを判断して、適
応性がないと判断された場合は当該ページのページアウ
トを拒否すると共に、適応性のある次のページが選択で
きるまで選択動作を繰り返すように構成したので、さら
に効率のよいページング処理を実現してシステムのスル
ープットを向上させることができるという効果がある。
【図面の簡単な説明】
【図1】本実施例に係る仮想記憶計算機システムのメモ
リ構成図である。
【図2】本実施例の仮想記憶計算機システムの最初のペ
ージング処理による主記憶のメモリ状況を示す図であ
る。
【図3】ページング処理中にページの呼び戻しが発生し
た場合の主記憶のメモリ状況を示す図である。
【図4】カレントアルゴリズムで呼び戻しが発生した場
合における外部記憶装置に対するアクセスを行わないペ
ージイン動作の概要を示す概念図である。
【図5】カレントアルゴリズムがFINUFOからLR
Uアルゴリズムに変化した場合における、メモリプール
リストの操作とダーティビットの立っているページの外
部ディスクに対する書き戻し操作を表したメモリ状況を
示す図である。
【図6】本実施例の第2の仮想記憶計算機システムのペ
ージの呼び戻しが発生した場合における適応性情報8ビ
ットの設定動作の概念図である。
【図7】従来の仮想記憶計算機システムにおいて主記憶
上に空きページがない状態で新たなページングが発生し
たメモリ状況を示す概念図である。
【符号の説明】
11 主記憶 12 外部ディスク 23 カーネル領域 24 メモリプールリスト 25 ページアウト履歴用配列 26 キャンセルビット

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 論理空間上の仮想ページを主記憶上の実
    ページに変換するページング処理を行う仮想記憶計算機
    システムにおいて、 システム稼働中は常時複数のページングアルゴリズムを
    用いてページングをシミュレーションするシミュレーシ
    ョン手段と、シミュレーション手段によるシミュレーシ
    ョン結果から逐次最適なアルゴリズムを選択する最適ア
    ルゴリズム選択手段とを備え、 システム稼働状態に応じて最も効率のよいページングア
    ルゴリズムを選択してページング処理を行うことを特徴
    とする仮想記憶計算機システム。
  2. 【請求項2】 論理空間上の仮想ページを主記憶上の実
    ページに変換するページング処理を行う仮想記憶計算機
    システムにおいて、 主記憶上に展開された実ページ毎に当該ページの複数の
    ページングアルゴリズムに対する適応性情報を記憶させ
    る適応性情報記憶手段と、システム稼働中は常時複数の
    ページングアルゴリズムを用いてページングをシミュレ
    ーションするシミュレーション手段と、シミュレーショ
    ン手段によるシミュレーション結果から逐次最適なアル
    ゴリズムを選択する最適アルゴリズム選択手段とを備
    え、 システム稼働状態に応じて最も効率のよいページングア
    ルゴリズムを選択してページング処理を行うと共に、ペ
    ージング処理においてページアウトの対象として選択さ
    れたページが適応性を有するか否かを前記適応性情報に
    よりチェックし、適応性がないと判断された場合は当該
    ページのページアウトを拒否して、適応性のある次のペ
    ージが選択できるまで選択動作を繰り返すことを特徴と
    する仮想記憶計算機システム。
JP5009140A 1993-01-22 1993-01-22 仮想記憶計算機システム Pending JPH06222997A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5009140A JPH06222997A (ja) 1993-01-22 1993-01-22 仮想記憶計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5009140A JPH06222997A (ja) 1993-01-22 1993-01-22 仮想記憶計算機システム

Publications (1)

Publication Number Publication Date
JPH06222997A true JPH06222997A (ja) 1994-08-12

Family

ID=11712328

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5009140A Pending JPH06222997A (ja) 1993-01-22 1993-01-22 仮想記憶計算機システム

Country Status (1)

Country Link
JP (1) JPH06222997A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2002047289A1 (ja) * 2000-12-04 2004-04-08 三菱電機株式会社 合成受信方法および合成受信装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2002047289A1 (ja) * 2000-12-04 2004-04-08 三菱電機株式会社 合成受信方法および合成受信装置
JP4818568B2 (ja) * 2000-12-04 2011-11-16 三菱電機株式会社 合成受信方法および合成受信装置

Similar Documents

Publication Publication Date Title
US5457658A (en) Nonvolatile memory with cluster-erase flash capability and solid state file apparatus using the same
KR100637610B1 (ko) 로킹을 사용한 캐시 교체방법
US5493663A (en) Method and apparatus for predetermining pages for swapping from physical memory in accordance with the number of accesses
US5630097A (en) Enhanced cache operation with remapping of pages for optimizing data relocation from addresses causing cache misses
JP4714396B2 (ja) 共有データキャッシュのための調停プロトコル
JP4429780B2 (ja) 記憶制御装置、制御方法、および制御プログラム。
US4991088A (en) Method for optimizing utilization of a cache memory
US8453015B2 (en) Memory allocation for crash dump
US6948033B2 (en) Control method of the cache hierarchy
US6839739B2 (en) Computer architecture with caching of history counters for dynamic page placement
US6874062B1 (en) System and method for utilizing a hierarchical bitmap structure for locating a set of contiguous ordered search items having a common attribute
US7065613B1 (en) Method for reducing access to main memory using a stack cache
JPH10307756A (ja) キャッシュ除外方法及びシステム
US5317704A (en) Storage relocating method and hierarchy storage system utilizing a cache memory
US6378059B1 (en) Virtual storage for dynamically changing a size of a virtual page
JPS62113234A (ja) レコ−ドセツト分類方法
US7496722B2 (en) Memory mapped page priorities
US6654859B2 (en) NUMA page selection using coloring
JP2655755B2 (ja) バッファ・メモリ管理方法,及び該方法を実施するためのコンピュータシステム
US5572700A (en) Cache access controller and method for permitting caching of information in selected cache lines
US20020194431A1 (en) Multi-level cache system
US5432917A (en) Tabulation of multi-bit vector history
EP0239269B1 (en) Image processing method and system
EP0528584A1 (en) Directory look-aside table for a virtual data storage system
JPH10269132A (ja) メモリ管理の方法およびシステム