JPH06208511A - ページ・フレームのデータを保護する方法 - Google Patents

ページ・フレームのデータを保護する方法

Info

Publication number
JPH06208511A
JPH06208511A JP5201320A JP20132093A JPH06208511A JP H06208511 A JPH06208511 A JP H06208511A JP 5201320 A JP5201320 A JP 5201320A JP 20132093 A JP20132093 A JP 20132093A JP H06208511 A JPH06208511 A JP H06208511A
Authority
JP
Japan
Prior art keywords
page
format
virtual
address
pte
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
JP5201320A
Other languages
English (en)
Inventor
Glen A Brent
アラン ブレント グレン
Casper A Scalzi
アンソニ スカルッチ キャスパ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH06208511A publication Critical patent/JPH06208511A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 【目的】 本発明は、すべてのデータ取り出しおよびペ
ージ全体書き出し操作に際し、ページ・フレーム上の以
前のデータを新ユーザまたはプログラムから保護するた
めに行われる実アドレスページ・フレーム上へのゼロ
(またはその他の文字)書き込みの必要性を除去するこ
とを目的とする。 【構成】 仮想アドレスから実アドレスへの変換を制御
するために使用されるページ・テーブル・エントリにペ
ージ初期化状態ビットならびに主記憶装置または拡張記
憶装置への実ページ対応状態を制御するフィールドを設
ける。また、実ページ・フレームへのアクセスを仮想的
に代替するための書式フレームを設ける。これらの新機
軸の制御ビット、フィールドおよびページ・フレームを
活用して、ページ・フレーム上の従前データの保護を維
持しながら効率的かつ経済的ページ変換プロセスを実現
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はページ転送機能を使用す
るコンピュータ・システムにおける仮想アドレス指定機
能におけるページ・フレーム割り当てと初期化の改良に
関する。
【0002】
【従来の技術】コンピュータ・システムにおける処理装
置は通常仮想記憶域におけるデータの読み書きを仮想ア
ドレスを用いて行う。これは実記憶域の実アドレス側対
応ページ・フレームのデータを読み書きすることによっ
て実行される。実アドレス側対応ページ・フレームはユ
ーザの仮想アドレス空間における要求ページ仮想アドレ
スの変換によって獲得される。IBM ESA/390
アーキテクチャにおいては仮想アドレスはユーザ仮想記
憶域においてバイト単位に位置決めされているデータを
アクセスするよう設計されており、このバイト単位位置
は実アドレス側対応ページ・フレームにおいてバイト単
位でアクセスされる。ESA/390ページ・フレーム
各々は4096バイト記憶域を有する記憶域の1単位で
ある。バイト・アドレス機能を使用する実アドレス側対
応ページ・フレームは2の12乗(すなわち4096)の
整数倍バイト単位でアドレスされているページ境界に基
づいて主記憶装置に位置決めされている。
【0003】仮想アドレス空間における各仮想ページは
ページ・テーブル・エントリ (以下PTEと呼ぶ)によ
ってシステム内で管理される。各PTEには対象となる
仮想ページに対応する主記憶域内の実アドレス側対応ペ
ージ・フレームの実アドレスを持つフィールドがある。
IBM ESA/390アーキテクチャにおいては、P
TEの実アドレスフィールドは「ページ・フレーム実ア
ドレス」(PFRA)フィールドと呼ばれる。PTEにけ
る実アドレス側対応 PF フラッグ・ビット(「無効」
または「有効」フラッグ・ビットと呼ばれる)の状態は
実アドレス側対応 PF が割り当てられているか否かを
を示す。実アドレス側対応 PFが対応する二つの媒体
のいずれかに割り当てられていることを表すために2個
の実アドレス側対応フラッグ・ビットがある。
【0004】ある処理装置が仮想ページにアクセス要求
を行い、PTEの対応フラッグ・ビットが実アドレス側
対応ページが存在しないことを示す場合はページフォー
ルトが発生し、オペレーティングシステム(以下OSと
呼ぶ)に対しページフォールト割り込みを発生させる。
この場合、OSは処理装置に代わってページ・フレーム
を割り当てて、対応する仮想アドレスを表示するPTE
のPFRAに実アドレスを書き込み、実アドレス側対応
ページ・フレームが仮想アドレスを裏打ちするために
割り当てられていることを示すよう対応フラッグ・ビッ
トを設定する。
【0005】ページ・アクセスの時点でのOSによる仮
想ページに対する実アドレス側対応ページの割り当ては
「デマンドページング」と呼ばれるが、「ページフォー
ルト」発生の場合の実アドレス側対応ページ・フレーム
割り当てについても同様に呼ばれる。
【0006】仮想ページへの実アドレス側対応ページ・
フレームの割り当ての際新たに割り当てられるページ・
フレームの初期化の一部としてデータ保護のためそのペ
ージ・フレームの内容はすべて消去され、前ユーザのデ
ータを新ユーザがアクセスすることを不可能とする。新
たなページ・フレームユーザは当該ページ・フレームの
前ユーザのデータに関しいかなる特権も有しないことと
される。
【0007】このようなデータ保護の必要性をシステム
内で解決するための伝統的方法は当該ページ・フレーム
内に既に書き込まれている可能性のある以前のデータを
すべて破壊するためページ・フレーム全体にゼロを書き
込む(またはある特定の文字を繰り返し書き込む)ことに
よってページ・フレームを初期化するというものであ
る。この方法では、各ページ・フレームの割り当てが新
たに行われる毎に4096バイトを書き込むという消去プロ
セスは、ページ・フレームの割り付けが多くのメーンフ
レームでは頻繁に行われることから、コストのかかるプ
ロセスである。ページ・フレームのユーザがもはやそれ
を必要としなくなった時は常に(例えばユーザのジョブ
が終了しそのデータがI/O装置に保管されたような時
は常に)再割り当てに備え消去が実行されることもある
し、または、後刻ページ・フレームが実際に再割り当て
される時点で、消去が実行されることもある。
【0008】仮想記憶を用いるIBMメーンフレームで
は、PTEによって表される対応仮想ページにいかなる
ページ・フレームも割り当てられていないことを示すた
めに当該ページのPTEの実アドレス側対応フラッグ・
ビットを再セットすることによって、ページ・フレーム
の解放は実行される。新たに参照される仮想ページを実
アドレス側対応する際使用できるようにするため使用可
能ページ・フレームのリストまたは待ち行列情報はOS
によって維持される。
【0009】本特許と同一出願人の出願になるアメリカ
合衆国特許出願番号 07/424,797(PO9-89-018),出願日19
89年10月20日、発明名称"Process Using VirtualAddres
sing In A Non-Privileged Instruction To Control Th
e Copying ofA Page Of Data In Or Between Multiple
Media" において、PTEは、異なるタイプのの実アド
レス方式を用いる二つの異なる媒体のいずれか一方の実
アドレス側対応ページ・フレームの実アドレス(PFR
A)を格納するように修正されている。実アドレス側対
応ページ・フレームを保有する媒体は、主記憶装置(MS)
か拡張記憶装置(ES)のいずれかにPFRAの実アドレス
を対応ずけできるように各PTEの二つのフラッグ・ビ
ットの状態によって管理されている。従って、この修正
されたPTEによって、仮想アドレスを、MS または ES
の異なる二つの媒体のいずれかの実アドレス側対応ペ
ージ・フレームに位置づけさせることができる。
【0010】どの媒体における実アドレス側対応ページ
・フレーム(PF)も、そのページのPTEにおける媒体
に対応するフラッグ・ビットを割り当て済みにセットす
ることによって、割り当てが解除され、再割り当てが可
能となる。しかしながら、PF割り当て解除は、対応す
るページ・フレームの内容そのものに影響を及ぼさな
い。割り当て解除は単にページ・フレームの実アドレス
とPTEによって表される仮想アドレスとの間の結合を
解くにすぎない。
【0011】再割り当てのためページ・フレームを解放
する前にユーザがページ・フレームのデータ内容を消去
する必要性はない。そして、ページ・フレームがユーザ
に割り当てられる場合ユーザがページ・フレームのデー
タ内容を消去する必要もない。(仮想アドレスのみ見る
システムユーザにとってPTEやPFは関知するところ
ではない。) さらに、OSが仮想ページを異なる媒体
へ、例えばMSからESへ、移動させる時実アドレス側
対応ページ・フレームは割り当て解除となるが、このこ
とは仮想ページを使用するプログラムにとっても関知す
るところではない。したがって、先行ユーザのいかなる
データ内容も後続ユーザに使われることがないことをO
Sが保証できるよう、IBMメーンフレームのOSは、
PF初期化機能の一部として、ページ・フレームの再割
り当て時点でのPF消去機能を提供してきた。そして、
PFのすべてのユーザは、自分が割り当て解除するいか
なるPFの内容もそのPFが再使用される前にOSによ
ってデータ消去されるものと仮定してきた。
【0012】
【発明が解決しようとしている課題】以上述べたような
従来のPF消去機能では、OSは、MSとES上で再割
り当てが行われるすべてのページ・フレームについてそ
の中のスペース全体の各文字位置ごとに1文字を書き込
む必要があった。これは、ページ・フレーム全体4096バ
イトのすべてのバイト位置にゼロかまたは特定の文字を
書き込む必要があることを意味する。この書き込み操作
は、多大な処理装置時間を消費し、コンピュータ利用上
のコスト高の要因となる。この従来技術の消去操作は、
ページ解放操作に関連したOSへの割り込みの間に発生
し、OSはページ・フレームの再割り当ての前にページ
・フレームを初期化させるため不可欠であるとはいえ、
システム資源を要し余分なシステム操作を加えるこのよ
うな消去操作を実行せざるを得なかった。
【0013】MSと他の実アドレス側対応媒体との間の
データのページ移動を制御する従来技術は、前記アメリ
カ合衆国特許出願番号 07/424,797 (PO9-89-018)に加え
て以下のアメリカ合衆国出願特許および特許に記述され
ている。
【0014】 A) 出願番号: 07/816,917 (PO9-90-030) 出願日: 1992年1月3日 出願人申請人: 本特許出願人に同じ 発明要点: MS,ES間の非同期ページ移動のた
めのMSにおける仮想アドレスを可能ならしめるデータ
移動命令(ADM)に関する発明 B) 特許番号: 4,476,524 (PO9-80-009) 発行日: 1984年10月9日 発明者: Brown その他 発明要点: MS,ES間の非同期ページ移動のた
めのMSにおける実アドレス化(仮想アドレス化)を支援
するPAGEIN(PI)およびPAGEOUT(PO)命令に関する発
明 これらの特許及び出願特許における従来技術の各種MV
PG、ADM、PI、POは、各ページ・フレーム全体
にわたるOSの物理的書き込み機能を除いて、上述のペ
ージ初期化上の問題を扱っていない。
【0015】従来技術では、仮想ページのプログラムへ
の割り当ての際仮想ページの事前初期化が発生するが、
これは、OSが仮想アドレス空間を要求するプログラム
に対しその関連仮想ページを表すPTEを格納するペー
ジ・テーブルを設定するということである。PTEから
構成されるアドレス空間がプログラムまたはユーザに対
し設定される時点で、実記憶域における実アドレス側対
応ページ・フレームが仮想ページに対し割り当てられる
ことはない。、その後の仮想ページのアドレス変換プロ
セス過程でPTEにおけるページ割付フラッグ・ビット
の各々(すなわち第1及び第5ビット)の状態をテスト
し、実アドレス側対応ページ・フレームが割り当て済み
を示していないならばページフォールトシグナルを発生
させることによって、仮想ページのページ・フレームへ
の割り当ては行われる。
【0016】アドレス変換操作を伴う伝統的ページフォ
ールト割り込み操作は仮想ページに割り当てられる各ペ
ージ・フレームの全内容の消去操作を実行する。これ
は、ページ・フレーム内のデータを新ユーザまたはプロ
グラムから保護するために行われる 本発明は、すべてのデータ取り出しおよびページ全体書
き出し操作のためページ・フレーム上の以前のデータを
新ユーザまたはプログラムから保護するために行われる
実アドレス側対応ページ・フレーム上のゼロ(またはそ
の他の文字)書き込みの必要性を除去することを目的と
する。
【0017】
【課題を解決するための手段】本発明は、すべての実ア
ドレス側対応ページ・フレームに対し行われる物理的消
去という従来技術に対抗し、仮想記憶ページに対する論
理的消去の概念を提供する。(仮想ページが実記憶側ペ
ージに対応づけして割り当てられているところの)実記
憶域内のいかなるページ・フレーム(PF)上の以前のデ
ータも(たとえそのページ・フレームの内容が物理的に
消去されていなくとも)ページ・フレームの再割り当て
によってアクセス可能とならないことを保証するため、
本発明におけるページ初期化プロセスの論理的消去が提
供される。
【0018】本発明では、新機軸のページ初期化制御が
各仮想ページに関連づけられている。新機軸のページ初
期化制御には、システムに定義されている各仮想ページ
に関連づけられている各ページ・テーブル・エントリ
(PTE)のページ初期化フィールドが含まれる。ページ
初期化フィールドは、割り当て済み実アドレス側対応ペ
ージ・フレームを仮想ページが保持していない間ページ
初期化状態に設定するために使われる。。ページ初期化
状態は実アドレス側対応ページ・フレームが仮想ページ
に割り当てられた後最初の書きだし要求が実アドレス側
対応ページ・フレームにおいて実行されるまで継続し、
その時点でページ初期化状態はOFFにセットされる。
【0019】ページ初期化制御はアドレス変換プロセス
において取り出しと書き込みに対し異なる操作を行う。
取り出し書き込み両者に対する新機軸のページ初期化制
御プロセスには、仮想アドレス変換プロセスのためにア
クセスされるすべてのPTEのページ初期化フィールド
のページ初期化状態の検査が含まれる。
【0020】変換プロセスが、変換プロセス中にページ
初期化状態が存在するもしくは存在しないことを見出す
こともあり得る。ページ初期化状態をサポートしていな
い古いプログラムと整合性を持たせる場合にはいかなる
取り出し・読み取り操作においてもページ初期化状態は
検知されないであろし、ページ初期化状態がOFFとな
っていると仮定されるであろう。
【0021】本発明はまた仮想アドレス指定を使用する
取り出し・書き込み両者に対するアドレス変換プロセス
に対する新機軸の修正を提供する。本発明は二つの異な
る種類の取りだし操作を認知する。すなわち、取りだし
専用と非取りだし専用の2種類である。取りだし専用操
作は以下を含む:仮想ページの事前初期化(この時PT
Eが作られる)と仮想ページに対する「最初の」書き込
み要求との間に出されるすべての取り出し要求、ならび
に、仮想ページが割り当て済み実アドレス側対応ページ
・フレームを保持していない時点と実アドレス側対応P
Fの割り当てを伴う「最初の」書き出し要求が出される
時点までの間に出されるすべての取り出し要求。
【0022】処理装置プログラムからの取りだし専用要
求を受け取る仮想ページのため、本発明は、従来技術と
は異なる方法でページフォールトプロセスを制御する。
本発明は、実アドレス側対応ページ・フレームに対する
実際の取り出し専用要求を完了させる必要のないことを
発見した。すなわち、本発明では、仮想ページに対する
一連の読みとり要求が受け取られる場合ページフォール
トを発生させるという従来技術での必要性を不要とす
る。なぜならば、特別に割り当てられた実アドレス側対
応ページ・フレームがあれば、取出し専用要求を成功裡
に完了させる変換プロセスを必要としないと本発明は認
識するからである。取りだし専用変換プロセスが実アド
レス側対応ページ・フレームが仮想ページに割り当てら
れていることを見いだすか否かを問わず、本発明では、
ページフォールト障害を発生させることを回避する。そ
してまた、もしも実アドレス側対応ページ・フレームが
既に仮想ページに対し割り当てられていない場合でも、
取りだし専用のための実アドレス側対応ページ・フレー
ムの割り当ては行わない。
【0023】もしも取出し専用アクセスが割り当て済み
PFを保持しているならば、本発明では、その取り出し
アクセスは、「書式(FORM)」ページ・フレームに対する
アクセスか、「書式(FORM)」ページ全体または「書式(F
ORM)」ページのアドレス指定された部分かをシミュレー
トする機能のいづれかに振り替えられる。もしも仮想ペ
ージに割り当て済みの実アドレス側対応ページ・フレー
ムがない場合は、取り出し専用操作は書式(form)PFに
アクセスする。この振り替えにより、たとえ割り当てら
れる実アドレス側対応ページ・フレームの内容に対し物
理的消去が行われていなくとも、割り当てられるページ
・フレームにある以前のデータがユーザによって取り出
されることのないことが保証される。そして実アドレス
側対応PFが存在しないならば読み取り専用操作はペー
ジフォールト割り込みを回避しその代わりに書式(form)
PFにアクセスする。
【0024】仮想ページに対する取り出し専用アクセス
要求が出されている限りはその仮想ページのページ初期
化状態は変わらない。その「最初の」書き込み要求が出
された時点で、書き出し要求が実アドレス側対応ページ
・フレームを実際に必要とするが故に、ページ初期化状
態は終了する。すなわち、仮想ページに対する「最初の
書き込み」要求およびそれに続く書き込み要求のそれぞ
れは書き込みを行う対象となる実アドレス側対応ページ
・フレームを必要とする。実アドレス側対応ページ・フ
レーム上の以前のいかなるデータも最初の書き込み以後
の書き込み操作によって破壊され、以前のデータを保護
するためのページ初期化は以後不要となるので、「最初
の書き込み」操作において仮想ページのPTE上のペー
ジ初期化状態をOFFにセットする。
【0025】本発明における「最初の書き込み」操作
は、「最初の」ページ全体書き込みと「最初の」部分的
ページ書き込みに対するものとでは異なる。(「ページ
全体書き込み」は仮想ページのすべてのビット位置への
書き込みを行う。「部分ページ書き込み」はすべてのビ
ットに書き込みを行うものではない。) 本発明では、
両者の書き込みタイプとも、割り当てられる実アドレス
側対応ページ・フレームの以前のデータの保護を行うよ
う取り扱っている。
【0026】ページ全体書き込みに関し、本発明では、
従来技術とは異なり、割り当てられる実アドレス側対応
ページ・フレームの物理的消去を必要としない。ページ
全体書き込みの一例としてページ・フレーム転送操作が
挙げられる。これはページ・フレームのすべてのビット
位置での書き込みを伴う。
【0027】本発明で実アドレス側対応ページ・フレー
ムの初期の物理的消去の必要性を取り除けない唯一の場
合は、最初の部分的ページ書き込みについてである。最
初の部分的ページ書き込みについては、部分的書き込み
操作実行に先がけ、ページ・フレーム全体に対する物理
的消去が行われる。
【0028】「最初の」書き込み以後は(「最初の書き
込み」が全体であろうと部分であろうと)ページ・フレ
ームに対する物理的消去は必要でない。
【0029】取り出し及び部分書き込みにおいて異なる
種類の書式データの選択及び使用を可能ならしめるため
に事前に決められた異なる内容を持った複数の「書式(f
orm)」ページ・フレームを備え持つことは、発明の実施
方法でのオプションである。1またはそれ以上の種類の
書式ページ・フレームおよび書式機能を備え持つことも
できよう。書式ページ・フレームがすべてのユーザに使
用できる共通セットとして提供されることもできるし、
またはそれぞれのユーザが自分のセットを持つこともあ
り得よう。変換操作がOSまたはマイクロコードを通し
て行われる場合には、OSまたはマイクロコードがアク
セス可能な場所においてのみ(たとえばIBMメーンフ
レームにおけるハードウェア・セーブ・エリア HSA
のような場所において)共通セットとして提供される場
合も有り得よう。
【0030】本発明を実現するアドレス変換プロセス部
分が処理装置マイクロコード全体において提供されこと
も有り得る。。これによりHSAのようなマイクロコー
ドアクセス可能な場所、または、OSかユーザがアクセ
スできる記憶域における書式ページ・フレームをアドレ
ス変換プロセスがアクセスすることができる。
【0031】関連仮想ページのページ初期化状態を制御
するために書式 (F) フラッグ・ビットを各PTEに備
えるのは本発明の好ましい実施例である。PTE制御に
おけるFビットの状態は、 取り出し操作による実アド
レス側対応ページ・フレームのアクセス可能性と時期を
制御する。Fビットがページ初期化状態にセットされて
いる間は取り出しまたはページ全体書き込み操作のため
の実アドレス側対応ページ・フレームでの消去書き込み
の必要はない。本発明の好ましい具体例として、PTE
に書式識別子(以後FORM#と呼ぶ)フィールドを設け
ることができる。FORM#フィールドは要求されるペ
ージ初期化状況フィールドに関連づけられている。FO
RM#フィールドの内容は複数の書式機能または書式ペ
ージ・フレームの一つを識別する。たとえば、異なる書
式内容を持つ書式PFに対するアドレス・エントリを格
納する書式テーブルへのインデックスをFORM#フィ
ールドが格納することもあり得る。省略時解釈の書式機
能またはページ・フレームがすべてのシステムユーザに
使用可能な書式テーブルの所定の位置で提供されること
もあり得る。省略時解釈書式ページはすべてバイナリ・
ゼロとなるかもしれない。その他の書式ページ・フレー
ムは別の異なる内容を持つこともできる。例えば予め定
められた文字や予め定められた文字・グラフィックスの
組み合わせ持つかもしれない。その他の例としては、す
べてEBCDICまたはASCIIのブランクのページ
・フレーム、書式ページ・フレーム全体にわたって特定
文字の繰り返し埋め込み、またはページ・フレームがい
ろいろの長さのビットパターンの繰り返しまたはビット
列を含んだり、いかなる形の(IRS書式でさえ)書式
のページ全体テンプレートを持つ書式ページ・フレーム
を使うことが可能である。
【0032】たとえば、特定の書式がデータ・ベース・
サブシステムによって構造化されていて、そこでの書式
は、サブシステムによって必要とされる特別の情報を、
たとえばサブシステムと各レコードのユーザの識別のた
めのフィールドやサブシステムの制御情報のためのフィ
ールドを備え持つこともできる。この場合は、(サブシ
ステムに割り当てられている仮想ページを表す)各PT
EのFORM#フィールドにおいて所定の値を設定する
ことによって、割り当てられる仮想ページそれぞれを初
期化するために、OSは、そのサブシステムに割り当て
られる各仮想ページへサブシステム指定の書式を割り当
てる。書式には、データ・ベースをよりうまく制御でき
るようにするためサブシステムによって要求される特別
のフィールドまたは情報が含まれる。
【0033】取り出し専用アドレス変換は従来技術に比
較して本発明の方法の場合の方が迅速に行われる。なぜ
ならば、本発明では、実アドレス側対応PFが仮想ペー
ジに割り当てられていない場合に取り出し専用操作のた
めに従来技術で必要であったページフォールト割り込み
およびOS介入を必要としないからである。このように
して本発明ではページフォールト割り込みを起こすこと
なくマイクロコードまたは内部コードに関連するすべて
の取り出し専用処理装置要求を処理することができる。
【0034】本発明では取り出し専用変換を処理装置変
換ルックアサイドバッファ(TLB)に置く必要はな
い。
【0035】本発明では、TLBはすべての取り出し専
用アドレス変換が終了した後に発生する「最初の」書き
込みアドレス変換が行われる時にのみアドレス変換を受
け取る必要がある。このようにして、ページ初期化状態
を持たない変換のみがTLBに置かれる必要がある。な
ぜならこれらの変換はMSまたはESの実アドレス側対
応ページ・フレームへのアクセスを伴うからである。こ
の方法により本発明は処理装置の操作において必要とさ
れるTLBアクセスの回数を減少させることができる。
【0036】かくして本発明では、仮想アドレス変換が
TLBエントリに正しく格納されている限りは本発明の
論理的消去状態は常にOFFとなっているので、TLB
に表示されるべきページ初期化状態を必要としない。仮
想ページがユーザによって解放(割り当て解除)されるな
らば、その実アドレス側対応PFは未使用記憶域プール
に置かれる。そして、関連TLB上の各実アドレス側対
応PFフラッグ・フィールドが 実アドレス側非対応状
態にセットされ、いかなる関連TLBエントリも無効と
され、PTEは本発明での新機軸のページ初期化状態に
セットされる。次にアドレス変換プロセスが仮想ページ
にアクセスする時ページ初期化状態が関連PTEに存在
していることがわかる。本発明は本願書に記述されてい
る新機軸のページ初期化フィールドと同等のものである
限りはPTEをどのように修正しても適応する点を強調
する。(たとえばMS、ES一方のページ識別子のよう
な)単一または複数の実アドレス側対応ページ・フレー
ム識別子をもつPTEタイプを含む従来技術でのPTE
タイプに本発明を付加できる。いかなるPTEタイプに
ついても、本発明は本願書に記述されている方法で取り
出し/書き出しのためのアドレス変換プロセスを修正す
る。
【0037】本発明はまたOSがユーザに1またはそれ
以上のPTEのページ・テーブルを割り当てることおよ
び書式PFを活用するためにPTEを初期化することを
認める。割り当てと初期化のプロセスは、ユーザの要求
によって行われることもできるし、省略時解釈情報また
はユーザによって事前にOSに与えられるかユーザに対
するOSの事後のサービス提供のための情報かいずれか
によるセグメントフォールト発生にともない自動的に実
行することもあり得よう。
【0038】
【実施例】PTEおよび実アドレス側対応ページ・フレームの仮想
アドレス指定の使用: 本発明の好ましい実施例は、前述
のアメリカ合衆国発明出願書番号07/424,797(PO09-89-0
18)において開示され請求されているタイプの仮想アド
レス指定を用いるIBM ESA/9000コンピュー
タ・システムの環境内で記述されている。その環境で
は、仮想ページは、システム主記憶装置媒体(MS)また
は拡張記憶装置媒体(ES)のいずれかにおいて割り当て
られる(PF)によって裏打ちされ得る。IBM ESA
/9000においては、31ビットMS論理アドレスは
(仮想または実いずれであってもも)MS上のどのバイ
トをもアドレスできる。しかし、31ビットESアドレ
スは4096バイトから成るページ・フレーム全体だけ
いかアドレスすることができなく、ESページ・フレー
ム内のバイト位置をアドレスすることはできない。従っ
て、拡張記憶装置ページ・フレーム(ES PF)は、M
S,ESどちらのアドレスも31ビットであっても、M
S論理アドレスによってはアドレスすることはできず、
ESアドレスによってのみ可能である。処理装置上動く
プログラムのほとんどの命令はそのオペランド・フィー
ルドにおいてMSをアドレスし、MSのアドレス指定を
用いるよう設計されている。
【0039】数少ない特別の命令タイプのみがESペー
ジ・フレームをアドレスすることができる。たとえば、
ページ移動(MVPG)命令、PEGEIN(PI)または
PAGEOUT(PO)命令などである。これらの特別の
命令は、その内容を変えることなく、単にESページ・
フレームをMSにコピーしたり、MSページ・フレーム
をESにコピーしたりするものである。ページ移動(M
VPG)命令は、MSとESのページ・フレーム間でペ
ージを移動するために仮想アドレス指定を生成する命令
であり、これを行うために、MVPGは仮想アドレス指
定を使用可能にするためPTE書式の修正を必要とし
た。MVPGは、PTEには既にMSページ・フレーム
識別子が備わっていたが新たにES識別子を追加した。
PTEによって表される仮想ページへの実アドレス側対
応ページ・フレームの割り当てを行うところの関連MS
またはESページ・フレーム実アドレスをPTEアドレ
ス・フィールドに格納されていることをを示すために、
MSかESかいずれの識別子が設定される。MVPG命
令は、修正PTEにおけるMSおよびESの実アドレス
側対応PF識別子ビットを検知し、PTEのアドレス・
フィールドがESブロック番号またはMS実アドレスい
ずれかを含んでいるか否かを解釈する。
【0040】しかしながら、本発明の実施方法において
は、MVPG命令の機能とは非常に異なる新機軸の機能
を提供するためにMVPGタイプのPTEへFビット識
別子およびFORM#フィールドを追加する。
【0041】本発明を使用する処理装置は仮想アドレス
を使用するものと仮定する。実行時には、仮想アドレス
は、実アドレスに変換され、MS実アドレスはMS絶対
アドレスに変形される。(MS実アドレスと絶対アドレ
スとの唯一の相違は(システムに複数の中央処理装置が
ある場合プレフィックスページ・フレームを定義すると
ころの)実ページ・フレームゼロの位置にある。各々の
中央処理装置は割り込みアドレスなどの独自の処理装置
データを保持するために独自のプレフィックスページを
必要とするからである。すべての仮想アドレス空間はそ
のプレフィックスページ・アドレスを実アドレスゼロに
変換し、その実アドレスゼロはそのプログラムを実際に
実行することになる処理装置の絶対的アドレスを指定さ
れているページ・フレームにプレフィックスされてい
る。かくして、絶対アドレスのみが対応する中央処理装
置に対する主記憶域内の異なるプレフィックスページ・
フレームを割り当てることによって各々の中央処理装置
に対する実アドレスゼロ(プレフィックスアドレス)を
異なる絶対アドレスに変形する。これにより、すべての
中央処理装置が互いにぶつかることのないプレフィック
スページ・フレームを持つこととなる。その他のMSペ
ージ・フレームはそれぞれすべての処理装置に対する絶
対アドレスに等しい実アドレスを持つ。)従来技術での
命令および命令オペランドに関する仮想アドレスは、主
記憶装置(MS)における実アドレス側対応ページ・フレ
ームにおいて常にアクセスされるが、ただし前述のアメ
リカ合衆国特許出願番号07/424,797(PO9-89-018) およ
び07/816,917(PO9-90-030)におけるMVPG命令と非同
期データ移動は例外である。もっとも、この点は本発明
の本題ではない。
【0042】本発明の好ましい実施例として、PTEの
アドレス・フィールドがMS PFのためのものである
ならば、それは、MSPFのいかなるバイト位置をもア
ドレスすることができる。しかし、PTEのアドレス・
フィールドがES PFのためのものであるならば、1
単位のES記憶装置としてES内のPF全体のみをアド
レスするのみで、ES PF上のバイト位置をアドレス
することはできない。したがって、もしもある命令がバ
イトアドレスへのアクセスを必要とし、実アドレス側対
応 PFがESにあるべきとPTEで示されているなら
ば、例外割り込みが発生し、OSがそのページをESか
らバイト位置がアクセスされることのできるMSへ移動
させる。(他の具体化として、ページのMSへ移動によ
る例外条件回避を行うことなくESのバイトアドレスへ
直接アクセスできるようESのアドレス形式を変更する
場合もある。)PTEの初期化制御 :本発明におけるページ初期化制御
は、仮想アドレス変換に用いられる 実アドレス側対応
ページ・フレーム上の新機軸の書式制御を提供する。こ
れは、IBMメーンフレーム、例えばESA/390で
現在使われているアドレス変換プロセスを修正する。ペ
ージ初期化制御は、ページ・フレーム上の以前のデータ
が他の仮想ページのユーザにアクセスされないようにす
ることによって他の仮想ページへ割り当てられる実アド
レス側対応ページ・フレーム上の以前のデータの保護を
行う。また、各ページ・フレームの以前のデータの保護
のためにページ・フレームが再割り当てされる時はいつ
でもすべての 実アドレス側対応 ページ・フレームのす
べての内容を消去しなければならないという従来技術の
技法に対し本発明の書式制御の使用は、システム・パフ
ォーマンス上の利点を有している。
【0043】アドレス変換プロセスは、先ず、変換ルッ
クアサイドテーブル(TLB)を調べて、要求された仮想
アドレスが以前の変換プロセスによって割り当てられた
実アドレス側対応ページ・フレーム(PF)を保持してい
るかを判断する。もしも、有効な変換がTLBに存在す
るならば、実ページ・フレーム・アドレス(PFRA)を
TLBから取得し、実アドレス側対応PFをアクセスし
て現在の処理装置オペランド要求に求められているデー
タの取り出し/書き込みを行なう。
【0044】TLBが有効なアドレス変換を保持してい
ない場合は、現在の処理装置要求の終了までアドレス変
換プロセスは継続する。この場合、現在要求の仮想ペー
ジを表すPTEをアクセスするプロセスでは、本発明の
好ましい実施例においても、図3で示される従来技術の
プロセスが実行される。
【0045】図1におけるPTEの書式 図1は、本発明の好ましい実施例に使われる修正された
PTEを示す。しかしながら、単一MS媒体での単一実
アドレス側対応ページ標識を持つ従来技術でのPTEを
含めいかなる書式のPTEでも本発明を使用することが
できる点を強調しておく。このような場合、本発明は、
同一記憶媒体内での取り出し/書き出しに適用される。
【0046】図1でのPTEは、MSまたはESいずれ
の実アドレス側対応ページ・フレームをも指すことがで
きる。PTEはまたMVPG命令を使用して、MSまた
はESそれぞれの範囲でまたはMSとES両記憶媒体に
またがって開始元オペランドと行先オペランド間のデー
タ移動を、両オペランドについてMS仮想ページアドレ
スを使用する限りは、可能ならしめる。MVPG命令で
の各仮想オペランドはMS,ESいずれの媒体上でも裏
打ちされ得る。すなわち、各オペランドの仮想アドレス
はMSまたはESいずれかの実アドレス側対応ページ・
フレームを指し示すことのできるPTEを使ってアドレ
ス変換が行われる。
【0047】MSまたはESどの媒体が実アドレス側対
応ページ・フレームを保持しているかまたはいずれの媒
体も保持していないかは、MS用IとES用Vのそれぞ
れのビットを持つPTEのフラッグ・ビット12、13
で示される。PTEのフラッグ・ビットの(MS用)I
および(ES用)Vが(いずれか一方のみが示すことで
はあるがが)実アドレス側対応ページ・フレームが存在
することを示す場合、PTEのフィールド11には指示
された媒体上の 実アドレス側対応 ページ・フレームの
実アドレスが格納される。
【0048】(MSフラッグ・ビットの)ビットIがゼロ
にセットされると、PTEフィールド11にはMS上の
有効なPFRA(ページ・フレーム実アドレス)が入れ
られていることを示す。(反対の意味ではあるが)同様
に、(ESフラッグ・ビットの)ビットVが1にセット
されると、PTEフィールド11はMS上の有効なES
BN(拡張記憶装置ビン番号)が入れられていることを
示す。もしIがゼロにセットされているとPTEは有効
なESBNを持っていない。この様にして、フィールド
11は、フラッグ・ビットIおよびVに応じてMS媒体
のPFRAかまたはES媒体のESBNかを格納する、
またはいずれをも格納しないこととなる。
【0049】たとえば、I,V=0,0 ならば、フィ
ールド11は、主記憶装置ページ・フレーム(MS P
F)の位置を指す有効なPFRAを格納する。もしも、
I,V=1,1 ならば、フィールド11は、拡張記憶
装置ページ・フレーム(ESPF)の位置を指す有効な
ESBNを保持する。しかし、もしもI,V=1,0
ならば、フィールド11は、いかなる 実アドレス側対
応 PFをもアドレスしていないことを示し、またPT
Eによって示される仮想アドレスは、いかなるPFによ
っても裏打ちされていない。(このことはプログラム実
行継続のために、ページフォールト信号を発しOS処理
装置を呼出しMSまたはESのPFを割り当てフィール
ド11にPFRAかESBNを書き込むことによって対
応オペランドの仮想アドレスを裏打ちする必要があるこ
とを示す。)PTEにおける書式フィールド制御 : 図1において、
(本発明でPTEに提供する)Fビット用フィールド1
4は、割り当てられる実アドレス側対応ページ・フレー
ムの内容の如何を問わず、仮想ページが初期化を必要と
する時はいつでもONにセットされる。
【0050】PTEは、また、書式番号(FORM#)
フィールド15を持つ。このフィールドは、本発明で
は、本発明の実施例上の任意選択機能として定義され
る。FORM#15は、図2で示されるフォーム・エン
トリ・テーブル(FORMLIST)20におけるエン
トリの位置を決めるためのインデックス番号を収納す
る。FORM#15の値はエントリのアドレスにインデ
ックスすることによってFORMLIST20の複数エ
ントリの一つを選択する。選択されるエントリの実アド
レスは図2の"書式"ページ・フレーム21FからNFま
でのN個のPFの一つに位置づけられる。FORMLI
ST20は、制御レジスタの絶対アドレス(FL開始
点)によって位置が決めらていて、また、「FL長」フ
ィールドにはFORMLIST20のバイト長が入れら
れている。
【0051】PTEで与えられるFORM#フィールド
15がない場合は、またはFORM#フィールド15の
値がゼロの場合、FORMLIST20への省略時解釈
アクセスとして最初のエントリ21への全ビットゼロ取
り出しアクセスを行なう。最初のFOMLISTエント
リ21は”すべてゼロ”のPFにおけるアクセスと同等
のものを提供するためバイナリ・ゼロを生成する機能の
位置を指すアドレスが入れられている。さもなくば、処
理装置は、書式PFアドレスを使用せずにバイナリ・ゼ
ロのページを生成する。
【0052】図2に示されるその他の書式PFはそれぞ
れ別の内容を格納する。たとえば、FORM22Fは、
単にバイナリを格納しているだけかもしれない。FOR
M23FからNFまでは、ブランクがはいっているかも
しれない。それぞれのPFはそれぞれ異なる予め決めら
れた文字またはグラフィックスの組み合わせを格納して
いるかもしれない。各FORMページの内容はシステム
の1またはそれ以上のユーザのためにページ・フレーム
を裏打ちする論理的初期化内容を表すよう設計される。
【0053】FORMLIST20は記憶域のシステム
領域におかれ、マイクロコードのみがアクセスできるよ
うにする場合もあるし、または、OSによってのみアク
セスできるMS域に置くこともできる。FORMLIS
T20のそれぞれのエントリはそのエントリにあるアド
レス・フィールドが有効な書式ページ(21F,22
F,23F...NF)を指しているかを示す有効性検
査ビットが含まれている。 仮想記憶装置アドレスへの
処理装置取り出し専用要求それぞれは、すべての取り出
し専用要求のためのPTE指定の疑似実アドレス側対応
ページ・フレームを提供する特定の書式PF対して行わ
れる。たとえ実アドレス側対応ページ・フレームが仮想
ページに対して割り当てられていても、仮想アドレスに
対する取り出し専用アクセスは、書式PFに振り替えら
れる最初の書き込み要求がその仮想ページに出されるま
で、割り当て済み実アドレス側対応PFを無視する。書
式PFへの取り出しアクセスは、そのページ・フレーム
を裏打ちするいかなる実PFにおけるデータも保護され
ていることを保証する。なぜならば、最初の書き出し要
求が出され以前のデータが書き出し操作によってかき消
されるまで、実PFへの一切の取り出しが許可されない
からである。
【0054】次のリストは仮想アドレス指定を用いる処
理装置オペランド要求についての本発明の好ましい実施
例の要約である。 MSまたはES媒体でのPF割り当て 有効な 実アドレス側 その結果としての 書式ページ 対応PFの有効性 CPUの動作 取り出しアクセスの場合 1.なし 無効 ページフォールト例外処理 (Fビットなし) 3.なし 有効 ページフォールト例外処理なし ( F=0 ) PFの内容は取り出される 5.あり 無効 ページフォールト例外処理なし ( F=1 ) PF内容は無視される ページ全体および部分ページ 両操作用FORM#フィールド によって指定される書式ページ からの取り出しが行われる 部分ページ操作の場合アドレス されるページ部分のみへの取り 出しが行われる 7.あり 有効 ページフォールト例外処理なし ( F=1 ) 実アドレス側対応PF内容は無 視される ページ全体および部分ページ 両操作用FORM#フィールド によって指定される書式ページ からの取り出しが行われる 部分ページ操作の場合アドレス されるページ部分のみへの取り 出しが行われる。 書き出しアクセスの場合 2.なし 無効 ページフォールト例外処理あり (Fビットなし) 4.なし 有効 ページフォールト例外処理なし ( F=0 ) PFの内容は書き込みデータ によって置き換えられる 6.あり 無効 ページフォールト例外処理あり ( F=1 ) OSは仮想ページへのPFを 割り当て、有効性を調べる 書き出し操作を再試行するた めの再-実行フォールト命令が 出される 8.あり 有効 ページフォールト例外処理なし ( F=1 ) 実アドレス側対応PF内容は ページ全体操作の書き出し データによって置き換えられる 部分ページ操作の場合は、 FORM#フィールドによって 示される書式ページの内容を そのPFへ複写し書き出し データの部分ページ書き出し を実行する。最後にF−ビット をOFFにセットする リストにおいて、取り出し要求用奇数番号行の各々は書
き出し要求用の次の偶数番号の行に関連付けられてい
て、それらは同様のタイプの要求を取り扱う。
【0055】リストの行1と行2は、F ビット 14ま
たは FORM#フィールド15 を持たない従来技術タ
イプのPTEを使用する取り出し/書き出しアクセスを
示す。PTEのアクセス : 図3は、処理装置によって要求され
る仮想アドレス指定のためのPTEへのアクセスを行う
プロセスを示す。二つのレベルの仮想アドレス変換プロ
セスがIBM ESA/390アーキテクチャア規則を
使用する本発明の実施例おいて使用される。しかしなが
ら、他のコンピュータ・アーキテクチャによって使われ
る単一レベルアドレス変換プロセスのようにページ・テ
ーブルを用いるいかなるアドレス変換プロセスをも使用
することは可能なので、アドレス変換に使われるコンピ
ュータ・アーキテクチャのタイプそのものは本発明の基
本原理にとって重要ではない。本発明は単に、仮想ペー
ジのページテーブル形式(PTEに同じ)がF ビット
に同等のものを格納していること、および、FORM#
フィールドと同等のものを任意的ではあるがページテー
ブル形式が備えていればよい。
【0056】本発明の好ましい実施例での変換プロセス
は、図3ステップ31での処理装置要求による仮想アド
レス指定によって開始される。このステップでは、 セ
グメントテーブルの位置づけのためセグメントテーブル
記述子(STD)をESA/390制御レジスタからア
クセスできるようにする(または、従来技術で記述され
ているアクセスレジスタ変換の結果から入手できるよう
にする)。
【0057】次にステップ32では、セグメントテーブ
ルを取り出す。セグメントテーブルエントリ(STE)
の位置は、アクセスされる仮想アドレスのセグメントイ
ンデックス部分で定められ、このSTEの内容が取り出
される。
【0058】次のステップ33では、STEの有効ビッ
ト状態を検査しSTEが仮想アドレス空間のセグメント
を表すMS上の有効ページ・テーブル(PT)を指して
いるかを調べる。有効でないならば、第34ステップに
進み、制御プログラムに対しセグメントフォールト例外
を生成し、現行アドレス変換操作に必要なPTEを含む
PTEのページ・テーブルの割り当てと初期化の必要性
を知らせる。これは、新しいページ・テーブルが割り当
てられ初期化されるまで繰り返される。
【0059】ステップ33の検査でSTEが有効である
とみなされる場合は、ステップ35に進み、現行ESA
/300アーキテクチャ仮想アドレス変換規則に従っ
て、MSでアクセスされページ・テーブルに必要なペー
ジ・テーブル・エントリ(PTE)の位置を定め取り出
しを行うための仮想アドレスのページ・インデックス部
分を使用する。
【0060】次のステップ36は、書き出しタイプと取
り出しタイプとではアクセスの取扱いが異なるので、両
タイプの記憶域への要求に関する処理装置要求を検査す
る。図4では取り出しタイプのアクセスに進み、図5で
は、書き込みタイプのアクセスへ進む。取り出し処理 :図4は処理装置取り出し処理の流れ図で
ある。最初のステップ40ではアクセスされるPTEの
F ビット 状態が検査される。PTEのF ビットがO
Nにセットされると、これは取り出し専用タイプの要求
を示している。その場合仮想ページはPTEのFORM
#フィールドで示される書式ページPF(または同等の
もの)によって裏打ちされている。実際の実アドレス変
換可能ページ・フレームがMSまたはESいずれかの仮
想ページに割り当てられているか否かに拘らず仮想ペー
ジはすべての取り出し専用要求に関し「書式」によって
裏打ちされる。これにより、処理装置要求がいかなる割
り当て済み実アドレス側対応PFの物理的初期化を行な
うことなくまた実アドレス側対応PFの割り当てを必要
とすることなく実際のデータにアクセスできることとな
る。また、この方法では、取り出しアクセスが(割り当
て済みPFへのアクセスの代わりに)書式PFへ振り替
えられているために、実アドレス上の対応割り当て済み
ページ・フレームの以前のデータの保護が実現される。
もしも仮想ページを裏打ちするページ・フレームが割り
当てられてないならば、取り出し専用要求に対しいかな
る割り当てもなされない。従来技術でのアドレス変換処
理においてはこのような取り出し専用処理は実行不可能
である。
【0061】ステップ40で F ビット が ON (ペー
ジ初期化状態を示す)であるとわかれば、第41ステッ
プに進み、PTE FORM#15を使って指定された
書式PFのアドレスを入手する。次にステップ42へ進
み、取り出し要求に合う書式PFをアクセスし、そのア
クセスを終了させる。アクセスはページの変位(D)位
置に対し行われる。
【0062】一方、ステップ40で F ビット が OF
F(非ページ初期化状態を示す)であるとわかれば、要
求は、非取り出し専用要求であり、現行割り当て済み実
アドレス側対応ページを必要としステップ43へ進む。書き込み処理 :図3ステップ36で書き出し専用操作が
示されたなら、すべての書き出し操作を扱うため図5に
進む。図5の最初のステップ50は書式PFが仮想ペー
ジに割り当てられているかを見るため F ビット状態が
か検査される。書式PFが割り当てられているならば、
ステップ50の ON の方向で流れ図の出口Aから図6
へと進む。F ビット が OFF の状態であれば、ステ
ップ51からステップ56が実行される。(これらのス
テップはアメリカ合衆国特許出願番号 07/424,797(PO-8
9-018)で記述されている方法で動作する従来技術の手法
を表す。)図6ステップ60は現行仮想ページを示すP
TE上の I ビット12を検査しMS側実アドレス対応
有効ページ・フレームが存在するか否かを決定する。存
在しない場合、ステップ61に進み、これが部分ページ
かページ全体書き出しアクセスかを検査する。(本発明
では、これら二つのタイプの書き出しに対しそれぞれ異
なる操作が行われる。)もしもステップ61が部分ペー
ジ書き出しアクセス操作を示すならば、ESは、それが
(バイト単位アドレス指定のできない)ページ全体アド
レス指定記憶装置であるがために、直接にはアクセスを
行うことはできなく、ページフォールト例外を生成する
ステップ61Aへ進む。部分ページアクセスを実行する
ためMS上で実アドレス側対応ページ・フレームが必要
とされ、これはステップ61Aのページフォールト例外
に対応してOSによって入手される。
【0063】ステップ61でこの書き込みがページ全体
操作であることを示すならば、NOの方向ステップ62
へ進み、有効なES側実アドレス対応ページ・フレーム
標示用PTE V ビット 13を検査する。何もない場
合は、61Aへ進み、MSまたはES上の実アドレス対
応PFの割り当てを行うためページフォールト例外を発
生させる。ステップ62で、ES上の実アドレス対応P
Fが存在する場合は、(現在の処理装置要求によって出
されている)ES PFへのページ全体書き出しが実行
される。次の第64ステップでFビットを OFF にセ
ットし、ページ全体書き出しアクセスを終了する。図6
のこの経路の最後のステップ65では、このアドレス変
換によって得られる変換情報をTLB(変換ルックアサ
イドバッファ)に挿入する。
【0064】図5出口Aから図6図60に入ると、MS
側実アドレス対応PFの存在が検査される。これは、P
TEの I ビット 12の状態によって示される。MS
PFが割り当てられているならば、I ビットは有効な状
態となっている。この場合は、第66ステップに入り、
これが部分ページかページ全体アクセスかを検査する。
(本発明では二つのタイプの書き出しは異なる働きをす
る。)ステップ66でページ全体書き出しアクセス操作
が示されるならば、NO の方向へ進みステップ67A
で(現在処理装置要求に対応して)ページ全体がMS実
アドレス対応PFへ書き出される。このページ全体書き
出し操作はMS PFに存在する可能性のある以前のデ
ータを破壊し、これにより以前のデータの保護を図るた
めPFの現ユーザによる以前のデータへのアクセスを防
止する。
【0065】その後ステップ67BでFビット状態を
OFF にし、ページ全体書き出し操作を終了する。
【0066】一方、ステップ66で処理装置によって部
分書き出しが要求されている場合には、PTE FOR
M#フィールドを用いて指定された書式PFのアドレス
を入手する。次のステップ66Bで指定された書式PF
の内容を割り当てられたMS PFへ複写する。このよ
うな書式全体の書き出し操作は、PFに存在するかもし
れない以前のデータを破壊するためPFの現ユーザによ
る以前のデータへのアクセスを防止し以前のデータの保
護が図られる。次にステップ67Aへ進み、処理装置部
分書き出しを実行する、上述の処理を行い、ステップ6
7BでFビットを OFF として部分書き出し操作を終
了する。図6のこの経路での最後のステップ67Cで、
このアドレス変換によって得られる変換情報をTLB
(変換ルックアサイドバッファ)に挿入する。書式ページ・フレームの割り当ておよび初期化 :図7、
8図および9図のプロセス(本出願において範囲初期化
プログラムまたはIRPと呼ぶ)は、特権を持たないユ
ーザをしてOSに対しそのユーザの1組の仮想ページの
割り当てと初期化を要求することを可能ならしめる。ど
のような適用プログラムまたはサブシステムプログラム
も仮想ページの割り当てと初期化のためにIRPプロセ
スを使用することができる。
【0067】OSにこの要求を行うには、ユーザのアド
レス空間に設定されるべき仮想ページの数を指定し、そ
の1組の仮想ページの初期化に使用されるユーザページ
・フレームの内容見本を提示する。その結果、要求され
た仮想ページがIRPプロセスを実行するOSによって
割り当てられ初期化される。ここでの割り当ておよび初
期化では、要求された数のPTE上で、それぞれ対応す
るFORM#フィールドが、割り当てられる仮想ページ
の要求された仮想内容を示すように、設定される。 ユ
ーザはユーザがIRPプロセスを呼び出す前に、割り当
てられるべき仮想ページの数および希望する仮想内容を
示すパラメータをOSに渡す。要求される数の仮想ペー
ジを割り当て初期化すために、IRPは何度も繰り返し
プロセスされるであろう。
【0068】IRPを使用するには、ユーザのアドレス
空間に多くのパラメータを書き込み、それをOSに知ら
せねばならない。パラメターは以下の項目を含む。
【0069】ーALET (アクセス・リスト・エントリ
・トークン)ー このパラメータはユーザがOSに対し
そこに必要な数の仮想ページを初期化することを求める
ユーザの仮想アドレス空間を定義する。OSはユーザが
要求したそれらの仮想ページを表すページ・テーブルを
構築する。
【0070】ー#PAGES (ユーザ用連続的ページの
数) - このパラメータは、ユーザが初期化を要求した、
SADDR位置に開始点を持つ連続的仮想ページの数を
示す。
【0071】−"FORM@"(ユーザ仮想ページ、NE
WFORM、のアドレス) - このパラメータは、ユーザ
がそれぞれの仮想ページに格納したい内容を格納するユ
ーザ仮想ページ、NEWFORM、のアドレスである。
【0072】−SADDR (最初のページの仮想アドレ
ス) - このパラメータは、一組の連続的ユーザ仮想ペー
ジにおける最初の仮想ページのユーザ仮想アドレスであ
る。
【0073】NEWFORMは、ユーザが希望する書式
内容に関するユーザによって作られた書式見本の格納さ
れるページ・フレームである。
【0074】OSは、IRP操作によって(仮想的意味
ではあるが)NEWFORM の内容を格納するように
割り当てられるユーザ仮想ページを初期化する。すなわ
ち、ユーザが要求するNEWFORM内容を格納するO
Sセット内の書式PF(図2のFORMLIST20)を
指し示すインデックス値をOSがPTEのそれぞれのF
ORM#フィールドに挿入することによって、各要求仮
想ページの内容が論理的に初期化する。このOS書式P
Fは仮想ページに対する取り出し専用要求または最初の
書き出し要求すべてによってアクセスされる。
【0075】図7ステップ72では、NEWFORMが
OSセットにおいて(すなわち、図2のFORMLIS
Tおよびその書式PFにおいて)、表示されているかが
決められる。もしも、表示されていないならば、ステッ
プ75でOSセットにNEWFORMを追加する。もし
もNEWFORMがOSセットに見つからないならば、
新しいOS書式PFがNEWFORMPFを書式PFの
OSセットに複写することによって挿入され、新しい書
式PFのアドレスがFORMLISTの新たに有効とさ
れたエントリに書き込まれる。OSの保護領域にある書
式PFセットは特権のないいかなるシステム・ユーザも
アクセスできないが、本発明では、前述のごとくPTE
上のFORM#フィールドを通じてアクセスできる。
【0076】図7のプロセスは、内部カウンター#FO
RMを使用している。これは、”旧書式”と呼ばれるO
S書式PFの現在通算数を収納する。
【0077】図7において、IRPはステップ70から
開始し、先ず、NEWFORMの中がすべてバイナリ
ゼロかを検査する。もしそうならば、ステップ77に進
み、#FORMの中をゼロに設定した後、出口AAから
図8へと進む。NEWFORMの中がすべてゼロである
ということは、ユーザが書式PFの省略時解釈値(すべ
てバイナリゼロ)を要求していると解釈される。
【0078】もしも、ステップ70で、NEWFOMの
中が、すべてバイナリゼロでないならば、ステップ71
へ進み、#FORMの通算数を1とし、FORMLIS
Tの省略時解釈でないインデックスエントリをアクセス
する。FORMLISTは7、8および9図でFLと略
記されている。ステップ72で、#FORM通算数は、
OSセットにおいてOLDFORMと呼ばれる書式PF
のアドレスを得るためのFORMLISTエントリへの
インデックス値に使われる。OLDFORMのインデッ
クスされた位置がFL(#FORM)である。ステップ
72では、OLDFORM と NEWFORM ページ
・フレームの4096バイトすべてが比較される。もし
もすべて等しい場合は、書式の内容がOSセットで既に
書き込まれていたことを示し、ここでは、何もする必要
はなく、出口AAから図8へと進む。
【0079】しかし、OLDFORM とNEWFOR
Mが等しくない場合には、ステップ73で、OSセット
の次のOLDFORMへインデックスするため#FOR
M通算数を1加算する。次にステップ74へ入る。
【0080】ステップ74では、#FORMの現在値と
FL長とが比較される。FL長はFORMLISTに存
在する有効なOLDFORMの数を示す制御レジスター
の値である。(制御レジスターはまたFORMLIST
へのポインターを持っている。)#FORMがFL長よ
り大でないならばFORMLISTの次のエントリがな
お有効なエントリであるので、ステップ72へ戻りOS
セットの次のOLDFORMの内容がNEWFORMに
等しいか等しくないかを検査する繰り返しプロセスに入
る。
【0081】ステップ74で、#FORMがNEWFO
RMより大となる場合は、現OSセット上の最後のOL
DFORMが検査されて、ユーザがNEWFORMに与
えたいと望む内容を持つOLDFORMが見い出だされ
ないことを意味する。その場合、ステップ75へ進み、
ユーザが望むNEWFORMの内容を持つOSセットの
新しい書式PFを挿入する。これを実行するため、第7
5ステップでは、NEWFORMの内容をOS書式セッ
ト用にOSによって提供される新しい書式PFへ複写す
る。そして、OSはこの新しい書式PFのアドレスをF
ORMLISTの最初の無効エントリに書き込み、それ
に有効のマークを付ける。
【0082】次にステップ76で、FL長フィールドを
#FORMの値がOSセットのOLDFORMの新しい
数へ増加しているので、図2の制御レジスターの#FO
RM現在値にセットする。その後、出口AAから図8へ
進む。
【0083】図8では、IRPプロセスを継続し、ユー
ザ要求の割り当てに必要なPTEを持つページ・テーブ
ルが存在するか否かを決定する。ページ・テーブルは、
ここで使われているESAアーキテクチャ規則における
セグメント・テーブル・エントリ(STE)によって位置
決めがなされる。要求の割り当てのためのページ・テー
ブルが存在しないならば、IRPは、ページ・テーブル
の位置決めを行うためのSTEを生成する。
【0084】図8のプロセスでは、現在初期化が行われ
ているユーザ仮想ページの仮想アドレスを格納する内部
作業レジスターCPAGE@が使われる。
【0085】ステップ80では、ユーザによってOSへ
渡されるALETパラメータを入手する。ALETはユ
ーザアドレス空間を定義するセグメントテーブルをアド
レスするSTO(セグメントテーブル開始点)をOSが
入手するのに用いられる。STOは、OSテーブルにあ
り、従来技術でASTEと呼ばれ、ESA/390アー
キテクチャの既存アクセスレジスタ変換規則を用いるこ
とによって見いだされる。
【0086】次に、図8ステップ81に入り、ユーザ初
期仮想アドレスであるSADDRパラメータを書き込む
ことによってCPAGE@内部作業レジスタを初期化す
る。IRP第9図ステップ94に至る各受け渡しごとに
CPAGE@の値はユーザセットの次のページの仮想ア
ドレスを示すため4096バイトずつ増加される。CP
AGE@レジスタは初期化されるユーザ仮想現在ページ
の仮想アドレスを収納する。CPGE@を増加させるこ
とで、各々の次の仮想ページを初期化するための順序で
ユーザ仮想アドレスを生成する。#PAGESカウンタ
ーは、(CPAGE@にSADDRの値が初めに書き込
まれる時、)ユーザによって要求される仮想ページの数
を入れて初期設定される。#PAGESの通算数は、各
ページが初期化される毎に1減じられる。最後のユーザ
仮想ページが初期化されると、#PAGESはゼロとな
る。ステップ82では、すべてのユーザ仮想ページが初
期化されたか否かを確認するため#PAGESが検査さ
れる。#PAGESがゼロでないならば、初期化される
べきユーザ仮想ページがまだ残っており、ステップ83
へ進む。ステップ83では、ステップ81でセットされ
た、または、入り口DDを経由第9図ステップ94から
受け取るCPAGE@現在値を使用する。ステップ83
において、STEとPTEを入手すためにCPAGE@
アドレスを変換し、ステップ84でそのSTEの有効性
を検査する。有効の場合、ユーザの仮想ページ割り当て
に必要なPTEを持つ現ページ・テーブルが存在するこ
ととなり、出口BBから図9へ進む。しかしもしもST
Eが無効の(つまりいかなるページ・テーブルをもアド
レスしていない)場合は、第84ステップのNOの方向
第85ステップへ進み、新しいページ・テーブル用にO
S空間の1ページを割り当てる。つぎに、ステップ86
で、STEのページ・テーブル開始点アドレスを書き、
第87ステップで、STEに有効ビットを ON にセッ
トする。その後出口CCから図9へ進む。
【0087】図9ステップ90では、ページテーブルに
おけるPTEを生成し、それらPTEに対応するすべて
の実アドレス側対応MS PFおよびES PFが無効で
あること(I=1かつV=0)を示すように事前初期化
を行い、また、省略時解釈の書式PFを選択できるよう
すべてのPTEのFORM#フィールドをすべてゼロに
設定する。(ページ・テーブルの数は、標準サイズのペ
ージ・テーブルが生成されるため、ユーザによって要求
されるページの数とは違うこともあり得る。)次にステ
ップ91に入り、ユーザによって要求されたPTEの数
だけのFORM#フィールドをユーザが要求する書式が
省略時解釈のものと相違するならユーザが要求する書式
に設定する。
【0088】ステップ91は、出口BBからも入り、こ
の場合は、有効なSTEおよびユーザが要求するFOR
M#に初期化する必要のあるPTEを格納する現行ペー
ジ・テーブルが存在する。
【0089】ステップ91では、次のステップ92で取
り扱われるPTEの位置決めを行うために図8ステップ
83で始まった変換プロセスを継続する。ステップ92
では、PTEにおけるFORM#フィールドをNEWF
ORM ページ・フレームの内容をユーザが要求する内
容にするFORM#に設定する。次に、ステップ93へ
出口BBから入った場合には Fビットが ON になっ
ていないこともあり得るので、ステップ90で既にセッ
トされたとしても、ステップ93でFビットをON に
セットする。
【0090】ステップ94では、ユーザ指定のページ範
囲の次に初期化すべき仮想ページをアドレスするようC
PAGE@を1ページ増加させる。
【0091】次のステップ95では、#PAGAES
を1減少させ、初期化をなお必要とするユーザ仮想ペー
ジの数を減少させる。次に出口DDから図8へ行き、そ
のステップ82で、CPAGE@カウンターがゼロに達
し、すべてのユーザ要求ページが初期化されたことが示
されると、IRP初期化プロセスが終了する。ページ・テーブルの割り当て :図10では、図3ステッ
プ33中に発生するようなセグメントフォールト例外の
ある現行仮想アドレス変換において必要となる有効PT
Eを持つ新しいページ・テーブルを割り当てるためのO
Sプロセスが示される。ステップ100で、新しいペー
ジ・テーブルを収納するためのOS PFを割り当て
る。次にステップ101でセグメントフォールト例外を
持つSTEへの実アドレス(開始点)をセットし、ステ
ップ102でSTEが今有効状態であることを示すよう
PTEの有効ビットをセットする。
【0092】次にステップ103では、すべてのPTE
の実アドレス側対応ページ・フレーム指標のすべてを実
アドレスページ・フレーム無の状態にセットし、すべて
のPTEのFビットをページ初期化状態に(F=1)に
セットし、ページ・テーブル上のすべてのPTEのFO
RM#フィールドを省略時解釈状態にセットする。もし
も図7から図9までのプロセスが先に行われOSが将来
の参照のためユーザ指定の省略時解釈値としてユーザパ
ラメータを保存した場合は、FORM#フィールドをユ
ーザ指定値に設定できる。この場合、ページ・テーブル
のPTEは、ユーザによって先に指定された書式の数に
等しい初期化FORM#を保有する。そしてステップ1
04で、セグメントフォールトを発生させた仮想ページ
PTEを発見するためにCPAGE@レジスタの仮想ア
ドレスに対するアドレス変換が遂行される。ステップ1
05では、OSが利用可能PF領域から1個の利用可能
PFを取り出しフォールト発生PTEへ実アドレス対応
可能PFとして割り当てる。プロセスは、例外発生を持
つ現PTEのPFRAフィールドへ入手されたPFの実
アドレスを設定することによって当該PFを実アドレス
側対応可のPFとして割り当てる。例外発生を持つ仮想
ページへのこのような裏打ち処理は、実アドレス側対応
PFのある媒体であることをしめすためPTEに実アド
レス側対応PF利用可指標をセットして(すなわち、I
=0、V=1とする)、終了する。
【0093】最後に、セグメントフォールト例外プロセ
スを呼び起こしたプロセスへの戻り、たとえば、図3ス
テップ34のプロセスへの戻り、を行う。
【0094】
【発明の効果】仮想ページへの実アドレス側対応ページ
・フレームの割り当ての際新たに割り当てられるページ
・フレームの初期化の一部としてそのページ・フレーム
の前ユーザのデータを新ユーザがアクセスすることを不
可能とするいうデータ保護の必要性をシステム内で解決
するための従来技術の方法は、当該ページ・フレーム内
に既に書き込まれている可能性のある以前のデータをす
べて破壊するためページ・フレーム全体にゼロを書き込
む(またはある特定の文字を繰り返し書き込む)ことによ
ってページ・フレームを初期化するというものである。
この方法では、各ページ・フレームの割り当てが新たに
行われる毎に4096バイトを書き込まねばならず、ページ
・フレームの割り付けは通常多くのメーンフレームでは
頻繁に行われることから、システム資源の非効率な使用
をもたらし、コストのかかるプロセスである。本発明を
実施することにより、ページ・フレーム上の以前のユー
ザデータを保護するために従来技術で必要とされたペー
ジ・フレーム全バイト位置へのゼロまたは特定文字の書
き込みによる消去プロセスを除去し、いっそう効率的な
ページデータ保護の操作をページ変換プロセスに組み入
れることにより、従来技術に比較し、システム資源のよ
り効率的使用とコストの軽減を実現できる。
【図面の簡単な説明】
【図1】本発明の好ましい実施例で使われているページ
・テーブル上の新機軸のページ・テーブル・エントリを
示す。
【図2】異なる種類の予め決められた書式データを含む
ように初期化された一組のページ・フレーム(PF)の図
解である。
【図3】処理装置によって要求される仮想アドレスの変
換を開始する、従来技術でのプロセス・ステップを示
す。
【図4】本発明の好ましい実施例で遂行される新機軸の
処理装置取り出し操作を示す。
【図5】本発明の好ましい実施例で遂行される新機軸の
処理装置書き出し操作を示す。
【図6】本発明の好ましい実施例で遂行される新機軸の
処理装置書き出し操作を示す図5の続きである。
【図7】「範囲初期化プログラム」に使われる新機軸の
プロセスの流れ図を示す。このプログラムは、要求元ユ
ーザへ1またはそれ以上から成る仮想空間の区分を割り
当てて、要求元ユーザによって指定される内容を持つ書
式ページ・フレームを含むようOS位置テーブル(FO
RMLIST)を構築し、処理装置の要求がある時ユー
ザの取り出し書き出し要求による使用に備えて要求され
た書式ページ・フレームに従った初期状態になるよう
に、割り当てられる仮想ページを初期化する。
【図8】図7の続きで、「範囲初期化プログラム」に使
われる新機軸のプロセスの流れ図を示す。このプログラ
ムは、要求元ユーザへ1またはそれ以上から成る仮想空
間の区分を割り当てて、要求元ユーザによって指定され
る内容を持つ書式ページ・フレームを含むようOS位置
テーブル(FORMLIST)を構築し、処理装置の要求
がある時ユーザの取り出し書き出し要求による使用に備
えて要求された書式ページ・フレームに従った初期状態
になるように、割り当てられる仮想ページを初期化す
る。
【図9】図8の続きで、「範囲初期化プログラム」に使
われる新機軸のプロセスの流れ図を示す。このプログラ
ムは、要求元ユーザへ1またはそれ以上から成る仮想空
間の区分を割り当てて、要求元ユーザによって指定され
る内容を持つ書式ページ・フレームを含むようOS位置
テーブル(FORMLIST)を構築し、処理装置の要求
がある時ユーザの取り出し書き出し要求による使用に備
えて要求された書式ページ・フレームに従った初期状態
になるように、割り当てられる仮想ページを初期化す
る。
【図10】本発明によってページ・テーブルの初期化が
行われることとなっているアドレス変換プロセス中に発
生するセグメント・フォールトの例外処理を行う新機軸
のプロセスを示す。
【符号の説明】
11 ESBN 11 PFRA 80 ALET 81、94 CPAGE@ 82、95 #PAGES 14、40、48、50、64、67B、93 F ビ
ット 15、41、48、72、90、103 FORM# 31 STD 32、33 STE 35、41、51,62,66A PTE 35、52、55,63,67A 書き出し 32、35、36、42 取り出し 21 省略時解釈の書式 12 I フィールド 13 V フィールド
フロントページの続き (72)発明者 キャスパ アンソニ スカルッチ アメリカ合衆国ニューヨーク州ポケプシイ 市 アカデミ通り160

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】1またはそれ以上のプログラムでの使用の
    ための仮想記憶装置における仮想ページを定義するため
    の複数のページ・テーブル・エントリ(以下PTEと呼
    ぶ)を持つ複数のページ・テーブルを生成するステップ
    と、ここでいう各PTEは、あるPTEへのページ・フ
    レーム割り当て後実記憶域内の実アドレス側対応ページ
    ・フレームに残される可能性のある以前のデータへのア
    クセスができないように初期設定される従前データ保護
    フィールド (F) を持ち、かつ実アドレス側対応ページ
    ・フレームがそのPTEが示す仮想ページに割り当てら
    れていないことを示すように初期設定される1またはそ
    れ以上の実アドレス側対応ページ・フレーム識別子フィ
    ールドを持つことと、 コンピュータ・システムにおいて実行されるプログラム
    によって発せられる取り出しオペランドおよび書き出し
    オペランドの処理を行うステップと、ここでいう取り出
    しオペランドおよび書き出しオペランドは、アドレス変
    換を必要とする仮想アドレス、ならびに、取り出しオペ
    ランドが取り出すデータの位置または書き出しオペラン
    ドが書き出すデータの位置を格納する仮想ページ用のP
    TEをアクセスすることによって仮想ページを変換する
    アドレス、とを含むことと、 取り出しオペランドまたは部分ページ書き出しオペラン
    ドによってアクセスされる仮想ページに従前データ状態
    が存在するか否かを決定するためのPTE上の従前デー
    タ保護フィールド(F)を検査するステップと、 PTE上の実アドレス側対応ページ・フレーム識別子が
    どのように設定されていようとも、従前データ保護状態
    が仮想ページに存在することを従前データ保護フィール
    ド(F)が示す場合、ページ・フォールトを起こすこと
    なく取り出しオペランド用の所定の書式データへのアク
    セスを行うステップと、を含むコンピュータ・システム
    の記憶域におけるページ・フレームのデータ内容の保護
    を行う方法。
  2. 【請求項2】取り出しオペランドのためのデータを作成
    するため1またはそれ以上の所定の文字を繰り返し埋め
    込むことによる所定書式(FORM)データを生成する
    ステップと、 仮想アドレス上のページ変位位置(DISPLACEMENT LOCATI
    ON)によってアクセス可能な、コンピュータ・システム
    のページ・フレーム上に所定書式データを構築するステ
    ップと、を含む請求項1に記載のコンピュータ・システ
    ム記憶域上のページ・フレームのデータ内容の保護を行
    う方法。
  3. 【請求項3】コンピュータ・システムの複数の書式ペー
    ジ・フレームを作成するように所定書式データを格納す
    る複数ページ・フレームを構築するステップと、 複数書式ページ・フレームの一つを対応するPTEへ割
    り当てるため各PTEにおける書式アドレスフィールド
    を付与するステップと、 PTEにおける従前データ保護フィールド(F)が従前
    データ状態に設定されている場合、取り出しオペランド
    用のデータを提供するために、PTE書式アドレス・フ
    ィールドの内容によって位置を定められている複数書式
    ページ・フレームの一つにおける仮想アドレス・ページ
    変位位置(D)での所定書式データへのアクセスを行うス
    テップと、を含む請求項1に記載のコンピュータ・シス
    テム記憶域上のページ・フレームのデータ内容の保護を
    行う方法。
  4. 【請求項4】所定のテーブル・アドレスへの書式ページ
    ・フレーム・インデックス・テーブルを書き出すステッ
    プと、ここでいうインデックス・テーブルには複数形式
    ページ・フレームの位置を定めるための複数書式ページ
    ・フレームの位置を示すための実記憶アドレスを格納す
    るエントリが含まれていることと、 PTE仮想ページへのアクセスに使用されるべく選択さ
    れている複数書式ページ・フレームの一つに対する書式
    ページ・フレーム・インデックス・テーブル上のインデ
    ックス番号の、PTEそれぞれの書式アドレスフィール
    ド(F#)への書き込みを行うステップと、を含む請求
    項1に記載のコンピュータ・システム記憶域上のページ
    ・フレームのデータ内容の保護を行う方法。
  5. 【請求項5】 書き込みオペランドによってアクセスさ
    れている仮想ページが従前データ保護状態を標示してい
    るかを決めるための、PTE保護フィールド(F)の検
    査を行うステップと、従前データ保護状態が保護フィー
    ルドによって標示されていない場合の従来技術方法での
    書き出しアクセスを完了させるステップとを含む請求項
    1に記載のコンピュータ・システム記憶域上のページ・
    フレームのデータ内容の保護を行う方法。
  6. 【請求項6】書き出しオペランドによってアクセスされ
    ている仮想ページが従前データ保護状態を標示している
    かを決めるための、PTE保護フィールド(F)の検
    査、および、従前データ保護フィールドによって従前デ
    ータ状態が標示されているならば書き出しオペランド用
    にアクセスされているデータによって仮想ページ全体を
    書き出すべきか部分的に書き出すべきかを決定するため
    の書き出しオペランドの検査を行うステップと、 事前に割り当て済みの実アドレス側対応ページ・フレー
    ムの存在を示す仮想ページPTEの検知と、実アドレス
    側対応ページ・フレームが事前に割り当てられていない
    場合の、実アドレス側対応ページ・フィールドの割り当
    てのためのページフォールトシグナルの発生、および、
    実アドレス側対応ページ・フレームの存在表示とアドレ
    ス指定を行うためのPTEの設定とを行うステップと、
    を含む請求項1に記載のコンピュータ・システム記憶域
    上のページ・フレームのデータ内容の保護を行う方法。
  7. 【請求項7】コンピュータ・システムユーザによる仮想
    ページ割り当て要求を行うステップと、 オペレーティングシステム(OS)へのユーザによるパラ
    メータ類の提供を行うステップと、ここでいうパラメー
    タ類は、アドレス空間識別子、 実アドレス側対応ペー
    ジ・フレームを格納する新書式(NEWFORM)ペー
    ジ・フレーム、要求されているいくつかの仮想ページ、
    および要求されている一連の連続的仮想ページの位置づ
    けを行う仮想アドレス開始点とから構成されることと、 要求仮想アドレス開始点で位置づけされている一連の仮
    想ページに必要な仮想ページ数と等しい数のPTEを含
    むPTEテーブルの生成を行うステップと、 実アドレス側対応書式の内容と書式PF OSセットの
    各書式ページ・フレーム(書式PF)との比較を行うステ
    ップと、 上記比較を行うステップでの結果新書式(NEWFOR
    M)ページ・フレームに等しい書式PFが発見されない
    場合新書式(NEWFORM)ページ・フレームに等し
    い書式PFのOSセットへの追加挿入を行い、等しい書
    式PFが発見される場合新たな書式PFを挿入しないと
    いうステップと、を含むコンピュータ・システムの記憶
    域におけるページ・フレームのデータ内容の保護を行う
    方法。
  8. 【請求項8】コンピュータ・システムユーザによる仮想
    ページ割り当て要求を行うステップと、 オペレーティングシステム(OS)へのユーザによるパラ
    メータ類の提供を行うステップと、ここでいうパラメー
    タ類は、アドレス空間識別子、 実アドレス側対応ペー
    ジ・フレームを格納する新書式(NEWFORM)ペー
    ジ・フレーム、要求されているいくつかの仮想ページ、
    および要求されている一連の連続的仮想ページの位置づ
    けを行う仮想アドレス開始点とから構成されることと、 要求仮想アドレス開始点で位置決めされている一連の仮
    想ページに必要な仮想ページ数と等しい数のPTEを含
    むPTEの現行テーブルの処理をおこなうステップと、 実アドレス側対応書式の内容と書式PF OSセットの
    各書式ページ・フレーム(書式PF)との比較を行うステ
    ップと、 上記比較を行うステップの結果新書式(NEWFOR
    M)ページ・フレームに等しい書式PFが発見されない
    場合新書式(NEWFORM)ページ・フレームに等し
    い書式PFのOSセットへの追加挿入を行い、等しい書
    式PFが発見される場合新たな書式PFを挿入しないと
    いうステップと、を含むコンピュータ・システムの記憶
    域におけるページ・フレームのデータ内容の保護を行う
    方法。
  9. 【請求項9】書式PFのOSセットにおける現行書式P
    Fの位置づけに必要なアドレスを格納するOS書式テー
    ブルの作成を行うステップと、 OSセットで追加生成されるいかなる書式PFのための
    OS書式テーブルのエントリの生成を行うステップと、
    とを含む請求項8に記載のコンピュータ・システム記憶
    域上のページ・フレームのデータ内容の保護を行う方
    法。
  10. 【請求項10】 実アドレス側対応ページ・フレーム状
    態を示すための新書式ページ・フレーム・パラメータに
    等しいOSセットの書式PFの位置決め用の書式識別子
    の、ページテーブルの各PTE上での設定と、従前デー
    タ状態へのPTE保護フィールドの設定と、および、省
    略時解釈書式データが処理装置要求に対し使用されるべ
    きことを示すようPTEの書式アドレスフィールドの設
    定とを行うステップを含む請求項7に記載のコンピュー
    タ・システム記憶域上のページ・フレームのデータ内容
    の保護を行う方法。
JP5201320A 1992-09-17 1993-07-22 ページ・フレームのデータを保護する方法 Pending JPH06208511A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/946,504 1992-09-17
US07/946,504 US5388244A (en) 1992-09-17 1992-09-17 Controls for initial diversion of page-frame logical content as part of dynamic virtual-to-real translation of a virtual page address

Publications (1)

Publication Number Publication Date
JPH06208511A true JPH06208511A (ja) 1994-07-26

Family

ID=25484568

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5201320A Pending JPH06208511A (ja) 1992-09-17 1993-07-22 ページ・フレームのデータを保護する方法

Country Status (2)

Country Link
US (1) US5388244A (ja)
JP (1) JPH06208511A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008112332A (ja) * 2006-10-31 2008-05-15 Nec Corp メモリ管理装置
JP2013544380A (ja) * 2010-08-06 2013-12-12 アルカテル−ルーセント コンピュータ・メモリを管理する方法、対応するコンピュータ・プログラム製品、およびそのためのデータ・ストレージ・デバイス
JP2014048895A (ja) * 2012-08-31 2014-03-17 Nec Corp 仮想記憶管理システム、仮想記憶管理装置、仮想記憶初期化方法および仮想記憶初期化プログラム

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832534A (en) * 1994-01-04 1998-11-03 Intel Corporation Method and apparatus for maintaining cache coherency using a single controller for multiple cache memories
US6029245A (en) * 1997-03-25 2000-02-22 International Business Machines Corporation Dynamic assignment of security parameters to web pages
US7242682B1 (en) 2002-10-09 2007-07-10 Storage Technology Corporation Hardware frame modifier apparatus and method for storage virtualization
US8522205B2 (en) * 2004-05-18 2013-08-27 Oracle International Corporation Packaging multiple groups of read-only files of an application's components into multiple shared libraries
US8276201B2 (en) * 2007-03-22 2012-09-25 International Business Machines Corporation Integrity protection in data processing systems
CN105095094B (zh) * 2014-05-06 2018-11-30 华为技术有限公司 内存管理方法和设备
CN105446889B (zh) * 2014-07-31 2019-02-12 华为技术有限公司 一种内存管理方法、装置以及内存控制器
US10528477B2 (en) * 2017-04-24 2020-01-07 International Business Machines Corporation Pseudo-invalidating dynamic address translation (DAT) tables of a DAT structure associated with a workload

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55154358U (ja) * 1979-04-24 1980-11-07
JPS5694847U (ja) * 1979-12-21 1981-07-28
JPS57109262U (ja) * 1980-12-26 1982-07-06
JPH0893581A (ja) * 1994-09-26 1996-04-09 Honda Motor Co Ltd 縦型エンジンの吸気消音装置
JP2000118496A (ja) * 1998-10-15 2000-04-25 Suzuki Motor Corp 船外機
JP2004299485A (ja) * 2003-03-31 2004-10-28 Yamaha Marine Co Ltd 船外機のトップカウル
JP2007069823A (ja) * 2005-09-08 2007-03-22 Yamaha Marine Co Ltd 船外機
JP2010137715A (ja) * 2008-12-11 2010-06-24 Honda Motor Co Ltd 船外機

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4730249A (en) * 1986-01-16 1988-03-08 International Business Machines Corporation Method to operate on large segments of data in a virtual memory data processing system
US4718008A (en) * 1986-01-16 1988-01-05 International Business Machines Corporation Method to control paging subsystem processing in a virtual memory data processing system during execution of critical code sections
US5237668A (en) * 1989-10-20 1993-08-17 International Business Machines Corporation Process using virtual addressing in a non-privileged instruction to control the copying of a page of data in or between multiple media

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55154358U (ja) * 1979-04-24 1980-11-07
JPS5694847U (ja) * 1979-12-21 1981-07-28
JPS57109262U (ja) * 1980-12-26 1982-07-06
JPH0893581A (ja) * 1994-09-26 1996-04-09 Honda Motor Co Ltd 縦型エンジンの吸気消音装置
JP2000118496A (ja) * 1998-10-15 2000-04-25 Suzuki Motor Corp 船外機
JP2004299485A (ja) * 2003-03-31 2004-10-28 Yamaha Marine Co Ltd 船外機のトップカウル
JP2007069823A (ja) * 2005-09-08 2007-03-22 Yamaha Marine Co Ltd 船外機
JP2010137715A (ja) * 2008-12-11 2010-06-24 Honda Motor Co Ltd 船外機

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008112332A (ja) * 2006-10-31 2008-05-15 Nec Corp メモリ管理装置
JP2013544380A (ja) * 2010-08-06 2013-12-12 アルカテル−ルーセント コンピュータ・メモリを管理する方法、対応するコンピュータ・プログラム製品、およびそのためのデータ・ストレージ・デバイス
JP2014048895A (ja) * 2012-08-31 2014-03-17 Nec Corp 仮想記憶管理システム、仮想記憶管理装置、仮想記憶初期化方法および仮想記憶初期化プログラム

Also Published As

Publication number Publication date
US5388244A (en) 1995-02-07

Similar Documents

Publication Publication Date Title
US5617554A (en) Physical address size selection and page size selection in an address translator
US8650442B2 (en) Programming in a simultaneous multi-threaded processor environment
US5652873A (en) System and method for simulating a contiguous addressable data space
CA2024444C (en) Process using virtual addressing in a non-privileged instruction to control the copying of a page of data in or between multiple media
CA1209270A (en) Partitioned multiprocessor programming system
US4742447A (en) Method to control I/O accesses in a multi-tasking virtual memory virtual machine type data processing system
US5765201A (en) Changing page size in storage media of computer system
US4031517A (en) Emulation of target system interrupts through the use of counters
US6003112A (en) Memory controller and method for clearing or copying memory utilizing register files to store address information
US6446034B1 (en) Processor emulation virtual memory address translation
EP0690385A1 (en) Method and apparatus for managing memory in a computer system
US5481688A (en) Information processing system having an address translation table loaded with main/expanded memory presence bits
US4989137A (en) Computer memory system
JPS62165249A (ja) ペ−ジ・セグメント化仮想記憶デ−タ処理システムにおけるセグメント・サイズを自動的に大きくする方法
US6529862B1 (en) Method and apparatus for dynamic management of translated code blocks in dynamic object code translation
KR19980032190A (ko) 다이나믹 롬의 로드-온-라이트 실행 방법 및 시스템
US6961840B2 (en) Method and apparatus for managing a dynamic alias page table
US5175830A (en) Method for executing overlays in an expanded memory data processing system
JPH06208511A (ja) ページ・フレームのデータを保護する方法
US5159677A (en) Method and system for storing data in and retrieving data from a non-main storage virtual data space
US5226132A (en) Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system
US7293207B2 (en) Method for testing memory in a computer system utilizing a CPU with either 32-bit or 36-bit memory addressing
WO1995012848A1 (en) Recovery boot process
US6457171B1 (en) Storage structure for dynamic management of translated code blocks in dynamic object code translation
EP0297891A2 (en) Apparatus and method for main memory unit protection using access and fault logic signals