JPH031252A - ページフォルト処理方式 - Google Patents

ページフォルト処理方式

Info

Publication number
JPH031252A
JPH031252A JP1134732A JP13473289A JPH031252A JP H031252 A JPH031252 A JP H031252A JP 1134732 A JP1134732 A JP 1134732A JP 13473289 A JP13473289 A JP 13473289A JP H031252 A JPH031252 A JP H031252A
Authority
JP
Japan
Prior art keywords
program
page fault
page
instruction
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
JP1134732A
Other languages
English (en)
Inventor
Masatoshi Nishikawa
正斗志 西川
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 JP1134732A priority Critical patent/JPH031252A/ja
Publication of JPH031252A publication Critical patent/JPH031252A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、電子計算機の仮想記憶のページフォルト処
理方式に関するものである。
[従来の技術] 第4図は、電子il1機の記憶域構成を示す概念図であ
る0図において、(1)は仮想記憶で、プログラムのデ
ータが胃かれている。ただし仮想記憶(1)は仮想的な
もので、物理的には仮想記憶(1)内のデータは、実記
憶(2)または外部記憶(3)上に置かれる。仮想記憶
(1)は複数個のページ(1a)、(lb)より構成さ
れる。また、実記憶(2)は複数個の実フレーム(2a
)、(2b)より構成される。
仮想ページ(1a)、(1b)には、実フレーム(2a
)(2b)を持つものと持たないものとある。実フレム
(2a)を持つ仮想ページ(1a)の場合、そのデータ
は物理的には実フレーム(2a)に置かれている。実フ
レームを持たない仮想ページ(lb)の場合、そのデー
タは物理的には外部記憶(3)に置かれている。実フレ
ーム(2a)を持つ仮想ページ(1a)に対する参照あ
るいは書き込みの命令を実行した際、八−ドウエアが持
つ変換機構により物理的には実フレーム(2a)に対す
る参照あるいは書き込みと同様になる。実フレームを持
たない仮想ページ(1b)に対する参照あるいは書き込
みの命令を実行すると、ページフォルト割り込みが発生
する。(4)はチャネルで、実記+l!!(2)と外部
記憶(3)間でデータ転送を行うプロセッサである。
チャネル(4)はデータ転送が完了した時点で、ブタ転
送完了側り込みを発生させる。
第5図は電子計算機内のソフトウェア構成を示した図あ
る。図において、(5)は該当電子計1機の主たる業務
を実行する10グラム(以下 単にプログラムという)
で、複数個のステップからなり、1個のステップに1個
の命令がある0通常。
プログラム(5)はステップ番号順に1命令ずつ実行さ
れる。ただし8割り込みが発生した時は、その割り込み
の種類に応じた処理プログラムへ実行が移る。(6)は
ページフォルト割り込み処理プログラムで、プログラム
(5)がページフォルシト割り込みを引き起こした時に
実行される。(7)はブタ転送完了側り込み処理プログ
ラムで、チャネル(4)がデータ転送を完了した時に実
行される。
第6図はページフォルト割り込み処理プログラム(6)
のフローチャートを示す図、第7図はブタ転送完了側り
込み処理プログラム(7)のフロチャートを示す図であ
る0図において、プログラム(5)がステップJの命令
J実行で、実フレムを持たない仮想ページ(1b)に対
し参照または書き込みを行った結果、ページフォルト割
り込みが発生した場合の処理を説明している。ページフ
ォルト割り込み処理プログラム(6)はまず、仮想ベジ
(1b)の内容を保持する外部記憶(3)から5未使用
実フレーム(2b)への転送をチャネル(4)に指令し
くステップS5)、その後待ち状態にする(ステップS
7)。データ転送完了割り込み処理プログラム(7)は
、まず実フレーム(2b)を仮想ページ(1b)に割り
付け(ステップS9)、その後プログラム(5)のステ
ップJを再開させる(ステップ13)。
第8図は1プログラム(5)がページフォルトを起こし
た以降の一連の動作を示す図である。
従来のページフォルト処理方式は上記のように構成され
、第8図において、ステップJの命令Jは、実フレーム
を持たない仮想ページ(1b)に対する参照または書き
込み命令とする(ステップ514)。この命令を実行す
るとページフォルト割り込みが発生し、ページフォルト
割り込み処理プログラム(6)へ実行が移る(ステップ
515)、ペジフォルトW1り込み処理プログラム(6
)は、チャネル(4)に対しデータ転送を指令しくステ
ップ55)2次に待ち状態になる(ステップS7)、待
ち状態が続くうちにチャネル(4)によるデータ転送が
完了しくステップ516)、データ転送完了割り込みが
発生して(ステップ517)、データ転送完了割り込み
処理プログラム(7)に実行が移る(ステップ518)
、データ転送完了割り込み処理プログラム(7)は転送
されたデータが入っている実フレム(2b)を仮想ペー
ジ(1b)に割り付け(ステップS9)、プログラム(
5)のステップJを再開させる。プログラム(5)は命
令Jを再び実行する。しかし、命令Jで参照・書き込み
を行う仮想ページ(1b)は、実フレーム(2b)を持
っているので。
ページフォルト割り込みは発生せず、命令は実行可能で
ある(ステップ514)、以後、プログラム(5)はス
テップ(J + 1 )以降を順々に実行していくこと
になる(ステップS18〜520)。
[発明が解決しようとする課題1 上記のような従来のページフォルト処理方式では、プロ
グラム(5)が仮想ページ(1b)にステップJで書き
込みを行う場合、その動作は仮想ベジ(lb)のそれま
での内容に依存しないので、ステップ(、Jl−1>以
降の実行が論理的に可能なのにもかかわらず、データ転
送が完了するまで、ステップ(J + 1 )の命令実
行が侍たされるという問題点があった。
この発明は、かかる問題点を解決するためになされたも
ので、実フレームを持たない仮想ページに対する書き込
み命令でページフォルトが発生しても、データ転送完了
を待つことなく次命令以降の処理を直ちに継続できるよ
うなページフォルト処理方式を得ることを目的とする。
[課題を解決するための手段] この発明に係るページフォルト処)1方式は仮想記憶方
式の電子計算機システムにおいて、プログラムが仮想ペ
ージに対する書き込み命令でページフォルトを起こした
場合1該当仮想ページのデータを保持している外部記憶
から実記憶へのブタ転送が完了する簡に前記プログラム
を次命令より再開させ、該当データの転送完了時に、前
記ページフォルトの原因となった前記書き込み命令を実
行するようにしたものである。
[イ1[5川] この発明においては、ページフ4ルI・割り込み処理プ
ログラムは、書き込み命令で、ページフォルトを起こし
たプログラムを長時開時たせることなく継続させ、また
データ転送割り込み処理は。
プログラムが発行した書き込み命令の結果を正しく仮想
ページ上に反映させる。
]実施例] 第1図はこの発明の一実施例によるページフォルト処理
のフローチャートを示す図である。
第2図はこの発明の一実施例によるページフォルト割り
込み処理プログラムのフローチャートを示す図である。
第3図はこの発明の一実施例によるデータ転送完了il
lり込み処理プログラムのフローチャートを示す図であ
る。
上記のように構成されたページフォルト処理方式におい
て、プログラム(5)のステップ、Jで。
書き込み命令であるストア(STORE)命令を実行す
る場合について説明する。ストア命令は2個のオペラン
ドがあり、オペランド1で示されたレジスタの内容をオ
ペランド2で示された仮想ページに書き込むものである
。第2図はオペランド2で実フレームを持たない仮想ペ
ージ(1b)を指定して実行した結果、べ〜シフオルト
割り込みが発生した時に実行されるページフォルト割り
込み処理10グラム(6)のフローチャートである。第
2図において、まず命令取り出し時に発生したものか否
かを判定する(ステップS1)、命令取り出し時なら従
来の処理となる(ステップS5およびステップS7)、
命令取り出し時でないならば、ステップS2へ進む6次
に、ページフォルトを発生させた命令がストア命令か否
かを判定する(ステップS2)、ストア命令ならステッ
プS3へ進む、ストア命令でないならば、従来の処理と
なる(ステップS5およびステップ57)6次に、変数
RとAに既にデータが入れられているか否かを判定する
(ステ・ンプS3)。入れられているなら、従来の処理
となる(ステップS5およびS7)。入れられていない
ならば、ステップS4へ進む1次にストア命令のオペラ
ンド1で示されたレジスタの内容をRに保存し、オペラ
ンド2で示された仮想ページ(Ib)のアドレスを八に
保存する(ステップS4)。次に仮想ページ(1b)の
内容を保持する外部記憶(3)より未使用実フレーム(
2b)へのデータ転送をチャネル(4)に指令する(ス
テップ85)。次にプログラム(5)をステップ(J 
+ 1 )より再開させる(ステップS6)。第3図は
プログラム(5)のステップにの命令Kが完了した時点
で、チャネル(4)によるデータ転送完了割り込みが発
生した時に実行されるデータ転送完了割り込み処理プロ
グラム(7)のフローチャートである。第3図において
、まず実フレーム(2b)を仮想ページ(1b)に割り
付ける(ステップ59)0次にRとAに値が保存されて
いるか否かを判定する(ステップStO>、保存されて
いれば、ステップSitに進む、保存されていないなら
ば、従来の処理(ステップ813)となる0次にプログ
ラム(5)をステップ(K+1)より再開させる(ステ
ップ512)。
続いて1.第1図によりプログラム(5)がペジフォル
トを起こした以降の一連の動作を説明する。ここで、プ
ログラム(5)のステップJは仮想ページ(1b)をオ
ペランド2として持つストア命令とする。プログラム(
5)は命令Jを実行する(ステップ514)と、仮想ペ
ージ(1b)は実フレームを持たないのでページフォル
ト割り込みが発生し。
ページフォルト割り込み処理プログラム(6)が実行さ
れる(ステップ315)、ここで、第2図におけるいく
つかの判定(ステップ81〜S3)を実行した後、Rと
Aに値を保存して、データ転送を開峡する(ス゛テップ
55)0次にプログラム(5)はステップ(J+1>の
命令以降を実行する(ステップ918)、ステップKま
で実行した時(ステップ519)、データ転送が完了し
くステップ516)、割り込みが発生して、データ転送
完了割り込み処理プログラム(7)が実行される(ステ
ップ517)。
ここで、実フレーム(2b)を仮想ページ(lb)に割
り付けな後(ステップS9)、RとAの値を用いてステ
ップJの命令であるストア命令を実行する(ステップ5
14)、この時は、仮想ページ(1b)は実フレーム(
2b)を持つのでページフォルトは発生しない、続いて
、プログラム(5)はステップ(K + 1 )の命令
以降を実行する。ただし、ステップJの命令を取り出し
た時に発生したページフォルトや、命令Jがストア命令
以外であった時、あるいはデータ転送中(つまりステッ
プ(J+l)からステップKまでの実行中)に同一仮想
ページ(1b)に対し2回目のページフォルトが発生し
た時は従来の処理となる。
なお、上記実施例ではストア命令のみしか汲わなかった
が、その他の書き込み命令についても適用してもよい。
また、上記実施例ではデータ保存用変数R1Aを1個ず
つしか設けなかったので、最初の1回のページフォルト
しか扱えなかったが、複数個設けることによって、複数
回の書き込み命令が処理できるようになる。
[発明の効果1 この発明は以上説明したとおり、書き込み命令において
ページフォルトが発生しても、外部記憶からのデータ転
送完了を待たずに次の命令以降が実行できるので、プロ
グラムの実行時間が短縮できる効果がある。
【図面の簡単な説明】
第1図はこの発明の一実施例によるページフォルl−処
理方式のフローチャート図、第2図はこの発明の一実施
例によるページ7オルト割り込み処理プログラムのフロ
ーチャート図、第3図はこの発明の一実施例によるデー
タ転送完了割り込み処理プログラムのフローチャート図
、第4図は記憶域構造の概念図、第5図はソフトウェア
構成図第6図は従来のページフォルト割り込み処理プロ
グラムのフローチャート図、第7図は従来のブタ転送完
了側り込み処理プログラムのフローチャート図、第8図
は従来のページフォルト処理方式のフローチャート図で
ある。 なお、各図中同一符号は同−又は相当部分を示亮1図 ず。 昂2図 昂5図 沁3図 馬6図 児7図

Claims (1)

    【特許請求の範囲】
  1. 仮想記憶方式の電子計算機システムにおいて、プログラ
    ムが仮想ページに対する書き込み命令でページフオルト
    を起こした場合、該当仮想ページのデータを保持してい
    る外部記憶から実記憶へのデータ転送が完了する前に前
    記プログラムを次命令より再開させ、該当データの転送
    完了時に、前記ページフォルトの原因となった前記書き
    込み命令を実行するようにしたことを特徴とするページ
    フォルト処理方式。
JP1134732A 1989-05-30 1989-05-30 ページフォルト処理方式 Pending JPH031252A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1134732A JPH031252A (ja) 1989-05-30 1989-05-30 ページフォルト処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1134732A JPH031252A (ja) 1989-05-30 1989-05-30 ページフォルト処理方式

Publications (1)

Publication Number Publication Date
JPH031252A true JPH031252A (ja) 1991-01-07

Family

ID=15135298

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1134732A Pending JPH031252A (ja) 1989-05-30 1989-05-30 ページフォルト処理方式

Country Status (1)

Country Link
JP (1) JPH031252A (ja)

Similar Documents

Publication Publication Date Title
EP0087978B1 (en) Information processing unit
JP3439033B2 (ja) 割り込み制御装置及びプロセッサ
US12487826B2 (en) Processing apparatus
JPS58225443A (ja) 高速デ−タ処理装置
JPH031252A (ja) ページフォルト処理方式
JP2671160B2 (ja) 例外処理方式
JPH07219766A (ja) 演算処理装置
JP2814683B2 (ja) 命令処理装置
JP2883488B2 (ja) 命令処理装置
JP2594140B2 (ja) データ駆動型データ処理装置
JPS59144955A (ja) 情報処理装置
JPH0133856B2 (ja)
JPH0447350A (ja) 主記憶読み出し応答制御方式
EP1104899A2 (en) Data processing apparatus and method of controlling the same
JPS61117635A (ja) 仮想記憶制御方式
JPS6149695B2 (ja)
JPH03182945A (ja) 主記憶内データ転送方式
JPS61143850A (ja) 処理装置
JPH0234058B2 (ja)
JPH09330234A (ja) 割り込み処理方法およびマイクロプロセッサ
JPS60142450A (ja) 記憶システム
JPH03127171A (ja) ベクトル処理装置
JPH03259338A (ja) 情報処理装置
JPH03158943A (ja) バッファ記憶・転送方式
JPS617940A (ja) マイクロプログラム制御装置