JPH04260948A - メモリシステム - Google Patents

メモリシステム

Info

Publication number
JPH04260948A
JPH04260948A JP442091A JP442091A JPH04260948A JP H04260948 A JPH04260948 A JP H04260948A JP 442091 A JP442091 A JP 442091A JP 442091 A JP442091 A JP 442091A JP H04260948 A JPH04260948 A JP H04260948A
Authority
JP
Japan
Prior art keywords
physical
pages
address
memory
physical pages
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
JP442091A
Other languages
English (en)
Inventor
Morihiro Ikeda
池田 守宏
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 JP442091A priority Critical patent/JPH04260948A/ja
Publication of JPH04260948A publication Critical patent/JPH04260948A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はメモリシステムに関し、
更に詳しくは所謂ページング方式におけるフィジカルペ
ージの動的な割り付けを行うメモリシステムに関する。
【0002】コンピュータの応用は定型的な情報処理か
ら人工知能と呼ばれる問題解決型の情報処理に拡大して
おり、この人工知能向き言語処理に適したコンピュータ
としてProlog処理装置やLISP処理装置がある
。これらの装置の中には小規模のフィジカルメモリで大
規模のプログラムを実行するためにページング方式を採
用するものがあるが、かかるフィジカルページの動的な
割り付けが行われる際には、情報システムの稼働に影響
を与えないことが要望される。
【0003】
【従来の技術】図4は従来のメモリシステムにおけるペ
ージンング処理を説明する概念図で、図において、(1
)はプログラムで規定するロジカルアドレスを保持する
ロジカルアドレスレジスタ、(1a)はその最上位のロ
ジカルベースアドレス(LBA)、(1b)は続くロジ
カルページアドレス(LPA)、(1c)は最下位のロ
ジカルアドレス(LA)、(2)はロジカルベースアド
レス(LBA)を後述のページマップメモリ(3)の中
の各ベースアドレス(Bn)に変換するためのページマ
ップベースメモリ、(5)はベースアドレス(Bn)と
ロジカルページアドレス(LPA)とを加算してオフセ
ットロジカルページアドレス(OLPA)を出力する加
算器、(3)はオフセットロジカルページアドレス(O
LPA)を後述のフィジカルページアドレス(PPA)
に変換するためのページマップメモリ、(3a)はその
変換可否を制御するための制御ビット、(3b)は変換
先のフィジカルページアドレス(PPA)、(4)はフ
ィジカルメモリ(図示せず)をアクセスするためのフィ
ジカルアドレスレジスタ、(4a)はその上位のフィジ
カルページアドレス(PPA)、(4b)は下位のフィ
ジカルアドレス(PA)である。
【0004】ロジカルベースアドレス(LBA)をペー
ジマップベースメモリ(2)に加えて、そこからページ
マップメモリ(3)のベースアドレス(例えばB2)を
読み出す。さらに、このベースアドレス(B2)とロジ
カルページアドレス(LPA)との和のオフセットロジ
カルページアドレス(OLPA)を求めて、これをペー
ジマップメモリ(3)に加え、そこから対応するフィジ
カルページアドレス(PPA)を読み出す。そして、こ
れをフィジカルアドレスレジスタ(4)のフィジカルペ
ージアドレス(4a)に格納し、かつロジカルアドレス
(LA)をそのままフィジカルアドレス(4b)に格納
した後、フィジカルメモリをアクセスする。
【0005】かくして、ロジカルページに対しては任意
の空きフィジカルページを割付可能であるから、フィジ
カルメモリの使用効率が極めて高い。また、予め全ての
ロジカルページに対して全てのフィジカルページを割り
付けておく必要はなく、プログラムの実行に応じて必要
なたびにフィジカルページを割り付ければ良いから、小
規模のフィジカルメモリで大規模のプログラムを実行で
きる。
【0006】図5は従来のメモリシステムにおけるフィ
ジカルページの動的割付処理を説明する概念図で、図4
と同一符号は同一又は相当部分を示し、(6)はフィジ
カルページの割付状況を管理するための割付管理スタッ
ク、(7)はそのスタックポインタ(SP)、(8)は
フィジカルページの割付制御部である。
【0007】今、ページマップベースメモリ(2)が各
ベースアドレス(B2)〜(B4)を差す場合に、ベー
スアドレス(B2)のブロックにはフィジカルページ[
1],[4]が、またベースアドレス(B3)のブロッ
クにはフィジカルページ[2],[3],[5],[6
]が、そしてベースアドレス(B4)のブロックにはフ
ィジカルページ[0]が、おのおの既に割り付けられて
いるとする。そして、スタックポインタ(7)は割付管
理スタック(6)のアドレス[5]を差しており、これ
はアドレス[5]〜[11]の7ページ分が使用中であ
り、かつアドレス[0]〜[4]の5ページ分は空きで
あることを示している。
【0008】プログラムの実行が進み、ある時点で、オ
フセットロジカルページアドレス(OLPA)がページ
マップメモリ(3)のアドレス([B2]+[3])を
アクセスしたとすると、ここにはフィジカルページが未
だ割り付けられていないので、該アクセスと同時に制御
ビット(3a)の[1]が読み出され、これがメモリ要
求信号S1となって割付制御部(8)に入力する。これ
により、割付制御部(8)は制御信号P1を出力してス
タックポインタ(7)の差すアドレスを−1すると共に
、割付管理スタック(6)にスタックされているフィジ
カルページアドレス[7]をページマップメモリ(3)
のアドレス([B2]+[3])に割り付ける。
【0009】更にプログラムの実行が進み、これに伴っ
て上記のフィジカルページの割り付けも進むが、やがて
割付管理スタック(6)の最後の空きページまで割り付
けてしまうと、割付制御部(8)は次のメモリ要求に対
して割り付けるフィジカルページが無いので、所謂ガー
ベッジコレクションを起動する。このガーベッジコレク
ションは、既に割り付け済みのフィジカルページのうち
、今は使用されていないか、あるいは使用頻度の少ない
ページを捜し出して、その内容を例えば2次記憶装置(
図示せず)に退避させることにより不要ページを回収し
、これを空きページとして割付管理スタック(6)に返
す処理である。即ち、制御信号P2により不要となった
ページの制御ビット(3a)の内容を[1]とし、制御
信号P3により割付管理スタック(6)中の不要となっ
たフィジカルページアドレスの部分を詰めると共に、ス
タックポインタ(7)が差すアドレスを増し、該スタッ
クポインタ(7)が差すアドレスよりも若い方のアドレ
スに空きとなったフィジカルページアドレスを書き込む
ものである。
【0010】かくして、上記のようなガーベッジコレク
ションが起動されると、割付管理スタック(6)のリロ
ケーションが済むまでは、通常のプログラムの実行は中
断されてしまう。
【0011】
【発明が解決しようとする課題】解決しようとする問題
点は、従来のメモリシステムではフィジカルページの動
的な割り付けが以上のように行われ、あるメモリの要求
時点で突然にガーベッジコレクションが起動されてしま
うので、例えば工場のプラント制御装置のように、制御
の連続性が不可決の情報処理システムにおいては、処理
中断による著しい不都合を生じる等の点にある。
【0012】本発明はかかる課題を解決するためになさ
れたもので、ガーベッジコレクションによる情報処理シ
ステムの突然の停止を生じさせないメモリシステムを得
ることを目的としている。
【0013】
【課題を解決するための手段】本発明にかかるメモリシ
ステムは、フィジカルページの動的な割り付けを行うメ
モリシステムにおいて、所定時間間隔を計測するタイマ
と、該所定時間間隔に割り付けられるフィジカルページ
数を時系列に求めると共に過去に遡る所定期間の内の最
大値を保持する保持手段と、該保持手段の保持する最大
値と現時点の空きページ数とに基づいてフィジカルペー
ジの払底の予測を行う予測手段とを設けたことを最も主
要な特徴とする。
【0014】従って、所定時間間隔におけるフィジカル
ページの割付量(割付速度あるいは消費速度に相当)を
時系列に求め、かつ過去に遡る所定期間の内の最大値を
保持すると共に、該割付量の最大値と現時点の空きペー
ジ数とに基づいてフィジカルページの払底の予測を行い
、もし払底の状態が予測された場合には、例えば連続運
転が不可決の情報処理システムに対しては待期系への事
前の切替指令の発行等を可能にし、あるいは当該システ
ムの一時的な縮退運転等を実現した。
【0015】
【実施例】図1は本発明の1実施例のメモリシステムの
ブロック図であって、図において図4,図5と同一符号
は同一又は相当部分を示し、(100)は所定時間間隔
を計測するタイマ、(200)はCPUで、例えば図2
のタイマ割込処理に従つて、前記所定時間間隔に割り付
けられるフィジカルページ数を時系列に求めると共に過
去に遡る所定期間の内の最大値を求め、該最大値と現時
点の空きページ数とに基づいてフィジカルページの払底
の予測を行う。(300)は後述のフィジカルメモリ(
500)のバックアップを行う2次記憶装置、(400
)はCPU(200)とフィジカルメモリ(500)と
をインタフェースするメモリ制御装置、(500)はフ
ィジカルメモリ、(600)はCPU(200)のバス
である。なお、図中の(D)はデータバス、(A)はア
ドレスバスを示す。
【0016】図2は実施例におけるタイマ割込処理のフ
ローチャートで、情報処理システムの稼働中にタイマ(
100)が所定時間を計測するとこの処理に割込入力す
る。ステップS1ではレジスタ(SPn )の内容をレ
ジスタ(SPn−1 )にシフトし、ステツプS2では
レジスタ(SPn)にスタックポインタ(7)の差すア
ドレスを読み込む。ステツプS3ではレジスタ(Vn 
)に演算[(SPn−1 )−(SPn )]の結果を
ストアし、これによりレジスタ(Vn )は今回の所定
時間内に割り付けられたフィジカルページ数(割付速度
あるいは消費速度に相当)を保持することになる。ステ
ツプS4ではレジスタ(Vn )のフィジカルページ数
を後述のVメモリにFIFOモードでシフトインし、ス
テツプS5ではVメモリ中の最大のフィジカルページ数
を検出してレジスタ(MAX)に書き込む。ステツプS
6では、レジスタ(MAX)にある最大のフィジカルペ
ージ数とレジスタ(SPn )にあるスタックポインタ
(7)の差すアドレス(現時点の空きページ数に相当)
とを比較することにより、判別[(MAX)>(SPn
 )]を行う。[(MAX)>(SPn )]の時は、
過去の所定時間内に割り付けられた最大のフィジカルペ
ージ数が現時点の空きページ数を越えるので、ステツプ
S7に進みフィジカルページ払底の警告フラグFをセッ
トする。また[(MAX)>(SPn )]でない時は
ステツプS7の処理をスキップし、図示しないメイン処
理に戻る。
【0017】図3は図1のメモリシステムの動作を説明
する図で、図3の(A)はスタックポインタ(7)の差
すアドレス(SP)の遷移を示している。例えば現時点
を(Tn )とすると、過去のタイミング(Tn−6 
)ではフィジカルページ[0]のみが割り付けられてお
り、従つてこの時点の空きページ数は[11]であるこ
と、また続くタイミング(Tn−5 )では更にフィジ
カルページ[1]〜[4]が割り付けられ、従つてこの
時点の空きページ数は[7]でること、以下同様にして
、タイミング(Tn )までには更にフィジカルページ
[5]〜[8]が割り付けられ、従つて現時点の空きペ
ージ数は[3]であることを示している。
【0018】図3の(B)は各所定時間間隔に割り付け
られたフィジカルページ数(V)の遷移を示しており、
タイミング(Tn−6 )〜(Tn−5 )では4ペー
ジ、続くタイミング(Tn−5 )〜(Tn−4 )で
は2ページ、以下同様にして進み、タイミング(Tn−
1 )〜(Tn )では1ページである。そして、Vメ
モリは、例えばタイミング(Tn )ではウインドウ(
Vm )で囲まれる部分の各フィジカルページ数(V)
を記憶しており、この場合の最大値(Vmax )は[
4]である。また次のタイミング(Tn+1 )になる
と、FIFOモードの記憶により、新しいデータを記憶
すると共に最も古いデータは捨てられ、従つてVメモリ
はウインドウ(Vm+1)で囲まれる部分の各フィジカ
ルページ数(V)を記憶することとなり、この場合の最
大値(Vmax )は[2]である。このように、各所
定時間間隔に割り付けられるフィジカルページ数(V)
は、一般には、システムの立ち上がりでは大きく、その
後は小さくなる傾向がある。また処理の中間ではプログ
ラムの性質に応じてダイナミックに変化する。そこで、
Vメモリには上記のように過去に遡る所定期間のフィジ
カルページ数(V)を記憶させ、各時点でその内の最大
値を求めることとしている。
【0019】こうして、現時点(Tn )に着目すると
、フィジカルページ数(V)の最大値(Vmax )は
[4]であり、かつ空きページ数は[3]であるから、
ステツプS6の判別[(MAX)>(SPn )]を満
足し、ステツプS7ではフィジカルページの払底の警告
フラグFがセットされる。これにより、図示しないメイ
ン処理では、例えば待期系に対して事前の切替指令の発
行を行えるので、その後にガーベッジコレクションが起
動されても情報処理システム全体の運用には影響が生じ
ない。あるいは、メイン処理でオペレータに警告を発し
、これによりオペレータが切替操作を行っても良い。さ
らに、オペレータが当該情報処理システムの一部の機能
を縮退させてガーベッジコレクションが起こらないよう
にしても良い。
【0020】なお、現時点の空きページ数(SPn )
を過去の所定時間間隔に割り付けられたフィジカルペー
ジ数の最大値(Vmax )で割ることにより、フィジ
カルメモリの払底までの予測時間を求めることができる
。そこで、求めた予測時間が所定値より小さい時は、フ
ィジカルページの払底の警告フラグFをセットするよう
にしても良い。
【0021】
【発明の効果】以上説明したように本発明のメモリシス
テムは、所定時間間隔に割り付けられるフィジカルペー
ジ数を時系列に求めると共に過去に遡る所定期間の内の
最大値と現時点の空きページ数とに基づいてフィジカル
ページの払底の予測を行うので、ガーベッジコレクショ
ンの発生を的確に予測でき、これにより事前の防御が図
れ、信頼性の高い情報処理システムを構築できるという
利点がある。
【図面の簡単な説明】
【図1】図1は本発明の1実施例のメモリシステムのブ
ロック図である。
【図2】図2はタイマ割込処理を示すフローチャートで
ある。
【図3】図3は図1のメモリシステムの動作を説明する
図である。
【図4】図4は従来のメモリシステムにおけるページン
ング処理を説明する概念図である。
【図5】図5は従来のメモリシステムにおけるフィジカ
ルページの動的割付処理を説明する概念図である。
【符号の説明】
100  タイマ 200  CPU 300  2次記憶装置 400  メモリ制御装置 500  フィジカルメモリ 600  バス

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  フィジカルページの動的な割り付けを
    行うメモリシステムにおいて、所定時間間隔を計測する
    タイマ、該所定時間間隔に割り付けられるフィジカルペ
    ージ数を時系列に求めると共に過去に遡る所定期間の内
    の最大値を保持する保持手段、該保持手段の保持する最
    大値と現時点の空きページ数とに基づいてフィジカルペ
    ージの払底の予測を行う予測手段を備えたことを特徴と
    するメモリシステム。
JP442091A 1991-01-18 1991-01-18 メモリシステム Pending JPH04260948A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP442091A JPH04260948A (ja) 1991-01-18 1991-01-18 メモリシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP442091A JPH04260948A (ja) 1991-01-18 1991-01-18 メモリシステム

Publications (1)

Publication Number Publication Date
JPH04260948A true JPH04260948A (ja) 1992-09-16

Family

ID=11583784

Family Applications (1)

Application Number Title Priority Date Filing Date
JP442091A Pending JPH04260948A (ja) 1991-01-18 1991-01-18 メモリシステム

Country Status (1)

Country Link
JP (1) JPH04260948A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014513342A (ja) * 2011-03-29 2014-05-29 マイクロソフト コーポレーション メモリー管理のための同時マーク及び同時スイープによる保守的ガベージコレクション

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014513342A (ja) * 2011-03-29 2014-05-29 マイクロソフト コーポレーション メモリー管理のための同時マーク及び同時スイープによる保守的ガベージコレクション

Similar Documents

Publication Publication Date Title
US5884077A (en) Information processing system and method in which computer with high load borrows processor of computer with low load to execute process
US4730249A (en) Method to operate on large segments of data in a virtual memory data processing system
USRE36462E (en) Method to control paging subsystem processing in virtual memory data processing system during execution of critical code sections
Carr et al. WSCLOCK—a simple and effective algorithm for virtual memory management
EP0239181B1 (en) Interrupt requests serializing in a virtual memory data processing system
US8108629B2 (en) Method and computer for reducing power consumption of a memory
US6401155B1 (en) Interrupt/software-controlled thread processing
US8990531B2 (en) Multiple time granularity support for online classification of memory pages based on activity level
JP4265610B2 (ja) プログラム制御装置、プログラム制御方法、およびプログラム記録媒体
KR20110048531A (ko) 가상처리장치의 인터럽트 제어
JPH07281908A (ja) 目標制御データを生成する作業負荷を管理する方法及び装置
US20140115291A1 (en) Numa optimization for garbage collection of multi-threaded applications
SE413815B (sv) Databehandlingssystem
US8966212B2 (en) Memory management method, computer system and computer readable medium
JP4333676B2 (ja) プログラム制御装置、プログラム制御方法、およびプログラム記録媒体
KR20060108431A (ko) 가변적인 동적 메모리 관리 방법 및 이를 포함하는임베디드 시스템
US6895583B1 (en) Task control block for a computing environment
CN103593606B (zh) 上下文信息管理方法及系统
JPH04260948A (ja) メモリシステム
EP1103898A2 (en) Microprocessor and memory
CN111125070A (zh) 一种数据交换方法及平台
JP2004227188A (ja) ジョブスワップ方法、ジョブ管理装置、およびジョブ管理プログラム
EP0442297B1 (en) Processor with an overwriteable microcode memory
JP2001290704A (ja) マルチプロセス制御装置及びマルチプロセス制御方法
JP5505195B2 (ja) メモリの制御装置、及び制御方法