JPH04113432A - 仮想記憶制御方法 - Google Patents

仮想記憶制御方法

Info

Publication number
JPH04113432A
JPH04113432A JP2234006A JP23400690A JPH04113432A JP H04113432 A JPH04113432 A JP H04113432A JP 2234006 A JP2234006 A JP 2234006A JP 23400690 A JP23400690 A JP 23400690A JP H04113432 A JPH04113432 A JP H04113432A
Authority
JP
Japan
Prior art keywords
page
reading
memory
virtual
input
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
JP2234006A
Other languages
English (en)
Inventor
Mitsuhiro Kishimoto
岸本 光弘
Masanobu Yuhara
雅信 湯原
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2234006A priority Critical patent/JPH04113432A/ja
Publication of JPH04113432A publication Critical patent/JPH04113432A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 プロセスの仮想空間またはファイルシステムを仮想記憶
によって実現している計算機における仮想記憶制御方法
に関し 不在ページのディスクからの先行読み出しを可能とし、
ページ入出力の待ち時間を削減して、処理の高速化を図
ることを目的とし 特定のレジスタを宛先とするメモリ読み出しでページフ
ォールトが発生した場合に、不在ページを読み込むため
のハードウェアを起動し、その読み込みの完了前に、ペ
ージフォールトが発生したプロセスを再開させるように
構成する。
〔産業上の利用分野] 本発明は、プロセスの仮想空間またはファイルシステム
を仮想記憶によって実現している計算機における仮想記
憶制御方法に関する。
現在では、大多数の計算機において仮想記憶力式が採用
されている。このようなシステムにおいて、不在ページ
へのアクセスによりページフォールトが発生すると、処
理はそのページの読み出しが完了するまで待たされるこ
とになり、その分処理時間か長くなることになる。それ
を改善する手段が望まれる。
〔従来の技術〕
第4図は従来技術の例を示す。
従来のデマンドページング型の仮想記憶方式では、ユー
ザプログラムの将来の振る舞いなどの性質を、プログラ
ムからカーネルの仮想記憶機構に伝える方法がなかった
。そのため、プログラムの性質に適した先行制御、すな
わち必要となる仮想空間上に配置されるべきデータをあ
らかじめディスクなどの二次記憶装置から読み出してお
く制御が簡単にはできなかった。
仮想空間はページから構成されており、CPUが物理記
憶上に存在しないページをアクセスしたことを主記憶制
御装置が検出すると、プロセスの実行を止め、物理ペー
ジを割り付けた後、ディスクから該当ページを読み出し
、読み出しの終わった時点で、プロセスの実行を再開す
る。
すなわち、従来、第4図に示す■〜■のような制御が行
われていた。
処理■により、不在ページの読み込みのため入出力命令
を発行してハードウェアを起動するとその入出力が完了
するまで、プロセスの再開が待たされる。このように、
従来技術では、ページフォールトが起こってしまうと、
プロセスの実行が中断されるので、あらかじめアクセス
することが予測できる場合であっても、先行読み出しを
行うことはできなかった。
また、仮想空間へファイルをマツピングするメモリマツ
プ技法に、仮想記憶方式を適用することが行われている
が、非同期入出力によって事前に必要なページデータを
読み出しておくことはできず、先行読み出しを行うため
には、非同期入出力を行うための専用のルーチンを設け
なければならず、オーバヘッドもあった。
〔発明が解決しようとする課題〕
従来技術の問題を解決するために1例えば次のようなこ
とが考えられている。
(1)  ページサイズの拡大 一般的にいって、メモリの参照には局所性があるので、
あるページをアクセスした場合、さらにその次のページ
をアクセスすることが多い。そこで ページングを行う
単位、すなわち物理メモリとディスク間で転送する単位
を、ハードウェアが提供しているページサイズよりも大
きくすることにより、ページフォールトの起きる確立を
小さくする。
しかし、この方法では、不要なページを読み込んでしま
う場合があり、それぞれのプログラムの性質に適した先
読みを実現することができないという問題がある。
(2)  ファイルの非同期入出力 入出力動作とCPUの実行とを並列化すれば。
処理速度が向上する。そこで、完了を待たない(ブロッ
クしない)入力機能を提供することにより、入出力とC
PUの並列動作を実現することができる。しかし、その
ためには、非同期入出力を行う専用のルーチンが必要で
あり、仮想記憶に適応することはできない。
本発明は上記問題点の解決を図り、不在ページのディス
クからの先行読み出しを可能とし、ページ入出力の待ち
時間を削減して、処理の高速化を可能とすることを目的
としている。
〔課題を解決するための手段〕
第1図は本発明の原理説明図である。
本発明では、特定のレジスタを宛先とするメモリ読み出
しを、仮想空間の先行制御を行うために使う。すなわち
、ページフォールトが発生したメモリ読み出し命令が、
特定のレジスタを格納先に指定していたならば、ページ
ングルーチンは、即座にプロセスを再開し、並行してペ
ージの読み込みを行う。
ページフォールト発生時の制御は、第1図に示す■〜■
のようになる。
■ ページフォールトが発生すると、そのプロセスは停
止する。
■ オペレーティング・システムでは2割込処理によっ
てページフォールトの発生を認識し、ぺら −ジングルーチンを起動する。
■〜■ ページングルーチンでは、不在ペーシノ読め込
ののため、入出力命令を発行してハードウェアを起動す
る。
■ ページフォールI・が先行読み出しのためのものか
どうかを判定する。格納先が特定のレジスタの場合に、
先行読み出しと判断して、処理■へ移る。特定のレジス
タ以外の場合、従来と同様な処理を行い、現プロセスを
停止させたまま実行可能な他のプロセスを起動する。
■〜■ 先行読み出しの場合、入出力の完了を待たずに
、直ちにプロセスの再開処理を行い、プロセスの実行を
再開させる。
■〜■ 先行読み出しでない場合には、ハードウェアか
らの入出力の完了割込が起きたときにページ読み込みの
完了を認識し、今まで停止させていたプロセスの再開処
理を行う。
〔作用] 通常の計算機では1例えば汎用レジスタROは他の汎用
レジスタとは異なる扱いを受け、定数″0”の発生や、
結果が不要な演算の宛先として使用される。そこで、こ
の特別の意味を持つレジスタROを、ページング処理に
おける先行読み出しの指定に用いる。
ユーザプログラムは、先行読み出しを行う場合レジスタ
ROを格納先としてメモリ読み出しを行うことにより、
カーネル(オペレーティング・システム)の仮想記憶機
構に、ユーザプログラムの将来の振る舞いを伝える。
仮想空間へファイルをマツピングするメモリマツプ技法
においても、レジスタROを指定したメモリ読み出しに
よって、プロセスの処理と入出力処理とを並行に動作さ
せることができる。
〔実施例] 第2図は本発明の適用システムの例、第3図は本発明の
実施例を示す。
本発明は、第2図に示すような通常の仮想記憶システム
に通用することができる。
第2図において、10はCPUおよびメモリなどからな
る計算機、11は仮想空間上で動作するユーザプログラ
ムからなる応用処理部、12は応用処理部11とカーネ
ルとのインタフェース部13は応用処理部11の実行を
管理するプロセス管理部、14はページング処理などの
管理を行う仮想記憶管理部、15はページフォール1、
の割込や入出力割込などの割込を処理する割込処理部1
6は入出力制御を行うハードウェア管理部、17は磁気
ディスク装置などの二次記憶装置を表す。
割込処理部15は、第1図に示す■の処理とハードウェ
アからの完了割込の受付けを行う。仮想記憶管理部14
は、第1図に示す■、■および■の処理を行う。プロセ
ス管理部13は、第1図に示ず■、■および■の処理を
行う。なお、■■の処理を、仮想記憶管理部14が行う
ようにしてもよい。
本発明は1例えば格納先が特殊レジスタR○の場合に、
先行読み出しと判断し、プロセス管理部13または仮想
記憶管理部】4によって、直ちにプロセスの再開処理を
行う点が従来と異なる。
第3図は、仮想空間20ヘフアイル22の領域をマツピ
ングするメモリマツプ技法へ本発明を適用した実施例を
示している。
仮想空間20には、プログラム領域20−1の他に、フ
ァイル用領域20−2が設けられる。ファイル用領域2
0−2は、二次記憶装置17上にあるファイル22の実
体と関連付けられておりユーザプログラムがファイル2
2にアクセスするとき、入出力命令ではなく1通常のメ
モリアクセス命令によって、データの読み込みや書き出
しが可能になっている。
仮想空間20上のファイル用領域20−2とファイル2
2の実体との対応は、アドレス変換テーブル21によっ
て管理され、ファイル22の実体が主記憶上に読み」二
げられている場合には、ファイル用領域20−2の仮想
アドレスが、主記憶の実アドレスに対応付けられている
。主記憶上に存在しない場合には、アドレス変換テーブ
ル21は、仮想アドレスとファイル22の二次記憶装置
17における格納アドレスとの対応情報を持つ。
例えば、ファイル22から、仮想アドレスVA2に対応
するデータを先行読み出しする場合には。
仮想アドレスVA2のデータを、レジスタROにRミ出
t OF 命令(L  RO、# V A 2 )を。
事前に発行する。
仮想アドレスVA2のアドレス変換が失敗すると、ペー
ジフォールトが起き、仮想記憶管理部14が起動される
。ここで、ファイル22の格納アドレスDA2を読み込
む入出力命令が発行される。
この入出力命令による読み込みの完了を待たずに。
ページフォールトの割込箇所にCPUの制御が復帰する
このようなソフトウェアインタフェースを設けることに
より、非同期入出力を行う専用のルーチンを設けること
な(、メモリマツプ技法における先行制御が可能になる
しめアクセスすることが判っているページの先読みによ
り、簡単に処理の高速化を実現できるようになる。
【図面の簡単な説明】
第1図は本発明の原理説明図。 第2図は本発明の適用システムの例 第3図は本発明の実施例。 第4図は従来技術の例を示す。 図中、10は計算機、11は応用処理部、12はインタ
フェース部、13はプロセス管理部、14は仮想記憶管
理部、15は割込処理部、16はハードウェア管理部、
17は二次記憶装置を表す。

Claims (1)

  1. 【特許請求の範囲】 プロセスの仮想空間またはファイルシステムを仮想記憶
    によって実現している計算機における仮想記憶制御方法
    において、 特定のレジスタを宛先とするメモリ読み出しでページフ
    ォールトが発生した場合に、不在ページを読み込むため
    のハードウェアを起動し、 その読み込みの完了前に、ページフォールトが発生した
    プロセスを再開させることを特徴とする仮想記憶制御方
    法。
JP2234006A 1990-09-04 1990-09-04 仮想記憶制御方法 Pending JPH04113432A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2234006A JPH04113432A (ja) 1990-09-04 1990-09-04 仮想記憶制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2234006A JPH04113432A (ja) 1990-09-04 1990-09-04 仮想記憶制御方法

Publications (1)

Publication Number Publication Date
JPH04113432A true JPH04113432A (ja) 1992-04-14

Family

ID=16964078

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2234006A Pending JPH04113432A (ja) 1990-09-04 1990-09-04 仮想記憶制御方法

Country Status (1)

Country Link
JP (1) JPH04113432A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9678886B2 (en) 2014-12-29 2017-06-13 International Business Machines Corporation Processing page fault exceptions in supervisory software when accessing strings and similar data structures using normal load instructions

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9678886B2 (en) 2014-12-29 2017-06-13 International Business Machines Corporation Processing page fault exceptions in supervisory software when accessing strings and similar data structures using normal load instructions

Similar Documents

Publication Publication Date Title
US7047401B2 (en) Handling interrupts during multiple access program instructions
US7200705B2 (en) Method of checkpointing state of virtual memory for process
US20060149940A1 (en) Implementation to save and restore processor registers on a context switch
JPH04113432A (ja) 仮想記憶制御方法
JP2980326B2 (ja) ディスク制御装置
JPH0133856B2 (ja)
JPH0447350A (ja) 主記憶読み出し応答制御方式
JPH0554141B2 (ja)
JPS62125437A (ja) 付加プロセツサの制御方法
JPS59172044A (ja) 命令制御方式
JPH06295265A (ja) 仮想記憶制御における命令中断情報格納制御方法
JPH03154139A (ja) キャッシュメモリ
JPS6234258A (ja) 拡張記憶制御方式
JPH0628303A (ja) 通信処理装置
JPS59172186A (ja) キヤツシユ・メモリ制御方式
JP2002259209A (ja) 演算処理システム
JPH0734186B2 (ja) キヤツシユシステム
JPH1027153A (ja) バス転送装置
JPH02219145A (ja) ミッシングページ処理方式
JPS6214244A (ja) 仮想記憶制御方式
JPH08278910A (ja) 情報処理システム及び二次記憶装置の保守方法
JPS63273144A (ja) 仮想記憶ダンプ処理方法
JPS6232554A (ja) 拡張記憶制御方式
JPS62171040A (ja) 命令再実行装置
JPH0216652A (ja) ミッシングページ処理方式