JPH077363B2 - アクセス装置及び方法 - Google Patents

アクセス装置及び方法

Info

Publication number
JPH077363B2
JPH077363B2 JP1010094A JP1009489A JPH077363B2 JP H077363 B2 JPH077363 B2 JP H077363B2 JP 1010094 A JP1010094 A JP 1010094A JP 1009489 A JP1009489 A JP 1009489A JP H077363 B2 JPH077363 B2 JP H077363B2
Authority
JP
Japan
Prior art keywords
address
virtual
virtual address
space
data
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.)
Expired - Lifetime
Application number
JP1010094A
Other languages
English (en)
Other versions
JPH027142A (ja
Inventor
カスパー・アンソニイ・スカルズイ
リチヤード・ジヨン・シヤマルツ
Original Assignee
インタ‐ナシヨナル・ビジネス・マシ‐ンズ・コ‐ポレ‐シヨン
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 インタ‐ナシヨナル・ビジネス・マシ‐ンズ・コ‐ポレ‐シヨン filed Critical インタ‐ナシヨナル・ビジネス・マシ‐ンズ・コ‐ポレ‐シヨン
Publication of JPH027142A publication Critical patent/JPH027142A/ja
Publication of JPH077363B2 publication Critical patent/JPH077363B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • G06F12/1475Key-lock mechanism in a virtual system, e.g. with translation means
    • 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
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation

Landscapes

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

Description

【発明の詳細な説明】 A.産業上の利用分野 本発明は、オペレーティング・システム及びそのオペレ
ーティング・システムの制御の下で実行しているプログ
ラムに対して、2つの異なった型の仮想アドレス空間、
即ち私的(プライベート)及び共通のアドレス領域の両
者より成るプログラム・アドレス空間と呼ばれるもの、
並びに私的アドレス領域だけから成るデータ・アドレス
空間と呼ばれるものを、同時に利用可能にすることであ
る。
B.従来技術 複数の仮想アドレス空間における仮想アドレシングを用
いるデータ処理システムは、例えばMVS及びMVS/XAシス
テム制御プログラムを使用するIBMシステム/370のよう
に、周知である。そのようなシステムは、各アドレス空
間を、セグメント・テーブルを用いて0〜231−1バイ
トの線型アドレス可能性を有するように定義する。セグ
メント・テーブルにおいて、各エントリはページ・テー
ブルのアドレスを含み、ページ・テーブルの各々はアド
レス空間中の複数のページ・エントリを定義する。各ベ
ージ・エントリは主記憶中の任意の割り当てられたペー
ジ・フレームのアドレスを含み得る。各アドレス空間
は、記憶装置中のアドレス空間セグメント・テーブルの
位置を示すセグメント・テーブル・オリジン(STO)と
呼ばれるポインタにより参照される。現在のシステム/3
70のアーキテクチャでは、各アドレス空間は、アドレス
0で始まる2ギガバイト(231)までの線型仮想アドレ
ス可能性を有する。現在のシステム/370MVS/XA動作にお
いて、本質的に無制限の数のアドレス空間が利用でき
る。システムの異なったユーザーには異なったアドレス
空間が割り当てられ、システムのユーザー間でアドレス
空間が分離される。即ちあるユーザーは彼自身のアドレ
ス空間内にしかアドレスできず、他のユーザーのアドレ
ス空間からは分離される。但し例外があり、その例外は
(1)アドレス空間又はその一部が全部のユーザーの間
で共通に定義された時(この場合、DLAT又はTLBの使用
の最適化が米国特許第4096573号及び第4136385号に示さ
れているような発明によって達成される);(2)複数
のアドレス空間が所定のアドレス空間からアドレス可能
である時(そのための機構は米国特許第4355355号及び
第4521846号並びにデュアル・アドレス空間(DAS)機構
を扱った米国特許第4366537号、第4430705号及び第4500
952号に示されている)である。
これら両者の場合において、アドレス空間の構造は特定
の制御プログラムに関して固定される。即ち、(1)の
場合、共通として指定されたアドレス範囲は全ての定義
されたアドレス空間に対して共通であり、従って全ての
そのようなアドレス空間は共通のセグメント内に入るア
ドレスに関して上記のDLATシノニム制御の発明から性能
を向上させることができる。(2)の場合は、全ての定
義されたアドレス空間の基本的アドレス空間構造が固定
され、従って再び、TLB内の指定された共通領域内のア
ドレスに関してシノニムのテーブル・エントリを消去す
るために同じ発明を使用することができる。
しかしながら、従来技術の欠点は、その発明及びそれに
関連した性能の利点を得るには、全ての定義されたアド
レス空間に対してその共通セグメントが共通でなければ
ならなかった事である。上記米国特許第4136385号の発
明は、共通のセグメントのないデータ空間及び共通セグ
メントを共有するアドレス空間の両者の存在を許容する
ように改良されなければならない。(この改良がなけれ
ば、データ空間及びプログラム空間が共存するような環
境中で上記発明を用いようとすると、データ空間の私的
なセグメント内の実アドレスが欲しい場合に、プログラ
ム空間の共通セグメント内の実アドレスがDATプロセス
により返されることがある。)例えばデータのアイソレ
ーションのために、データを個々のアドレス空間に関連
付けることが望ましい場合がある。この場合、事前に定
義された共通アドレス領域はこのデータのために使用で
きないので、特定のアドレス空間に写像しうるデータの
大きさが、共通アドレスに専用でない仮想アドレス領域
の部分に限定される。さらに(歴史的理由により)MVS/
XAアドレシング領域内の共通領域は全て隣接しているわ
けではないので、アドレス空間内のデータの大きなブロ
ックは、共通アドレス・セグメントを避けるために断片
化しなければならない。最後に、「低アドレス保護」と
呼ばれるシステム370の機構(例えばIBMシステム/370Ex
temded Architecture Primciples of Operation、SA22
−7085参照)は、その機構が活動している時、アドレス
空間のアドレシング領域の最初の512バイトが記憶され
るのを防止する。この機構はデータ記憶のためのアドレ
ス空間の利用可能性に限界を与える。
D.問題を解決するための手段 本発明は、アドレス空間中で実行するプログラムからア
クセスできるデータを保持するためのデータ空間と呼ば
れる論理的構造物をデータ処理システムで利用すること
を容易にする。本発明の核心は、プログラム・アドレス
空間の定義の一部である共通領域の予約(例えばそのよ
うなプログラム・アドレス空間において、最初の512バ
イトはプログラム記憶領域又はPSAとして指定され、私
的データの記憶には使用できない)なしに、機械の完全
なアドレス領域(MVS/XAシステムでは0から2ギガバイ
トまで)を連続的にデータをアクセスするのに使用する
ことを可能にする機構である。
データ空間におけるこの完全なアドレシング領域の使用
を可能にするために、本発明は、TLB内にある、プログ
ラム・アドレス空間に関する共通領域内の以前に変換さ
れた仮想アドレスが誤ってデータ空間内の同一の仮想ア
ドレスの翻訳に使われることのないようにする手段を提
供する。また本発明は、プログラム空間内からデータ空
間をアクセスし、データ空間に対する記憶操作に関する
低アドレス保護を無効化する機構、及びデータをデータ
空間に写像(マッピング)するための方法を提供する。
本発明の主な目的は、アドレス空間の異なったアドレス
領域内に現れる共通セグメントによる断片化(フラグメ
ンテーション)なしに、(2ギガバイトまでの)大きな
データ・オブジェクトが仮想データ空間に写像されるこ
とを可能にすることである。
本発明の他の目的は、オペレーティング・システムに対
して定義されたあるデータ空間において上記写像が起き
ることを可能にし、且つ上記データ空間が他のデータ又
はプログラム空間と共通のセグメントを持たず、一方他
のプログラム・アドレス空間が同様のアドレス・プログ
ラム空間と共有する共通セグメントを有するようにする
ことである。
本発明の他の目的は、共有セグメントを有するアドレス
空間に関する共有セグメント内の仮想アドレスに関する
TLB内の重複エントリを消去し、一方そのような共有セ
グメントを持たないアドレス空間に関してそのようなエ
ントリが共有されることがないことを認織することによ
って、プロセッサの効率を改善することである。
本発明の他の目的は、データ・オブジェクトのアイソレ
ーション及び制限された共有を容易にするために、他の
アドレス空間で実行しているプログラムにより直接的に
アスセス可能なデータ・アドレス空間の使用を可能にす
ることである。
E.実施例 本発明のゼロ・オリジンのデータ空間は、その存在及び
実用的な使用が下記の一組の関連する機構により可能と
なっている論理的構成物である。即ち、1)共通セグメ
ント無効化機構、及び低アドレス保護の回避機構、この
両者はこの応用にとって中心的である。2)プログラム
・アドレス空間の仮想アドレス領域内からデータ空間の
仮想アドレス内のデータにアクセスするための機構。並
びに3)ユーザー・プログラムにおいて明示的なI/Oプ
ログラム・ステップなしに実行中のユーザー・プログラ
ムによって容易にデータが使用できるように、外部媒体
上にあるデータの論理的に連続なブロックをデータ空間
に関連付ける手段。
共通セグメント無効化及び低アドレス保護回避機構 第2A図は典型的なMVS/XAプログラム・アドレス空間の構
造を示す。斜線領域は全てのプログラム・アドレス空間
に共通である。これらの共通領域には1つだけの論理的
バージョンしか存在しないので、記憶装置の共通領域に
対して行なわれた変更は即座に全てのプログラム・アド
レス空間に反映される。というのは全てが同じ共通記憶
域を共有しているからである。プログラム・アドレス空
間に置かれ、他のプログラムから分離されるべきデータ
は、私的(プライベート)領域(11、12)の1つに置か
れなければならない。これは論理的に分離され、断片化
なしに極端に大きなデータ・セットを収容することはで
きない。
第2B図は本発明のデータ空間を示す。これは、関連のセ
グメント・テーブル記述子(第6図の62A)中のインジ
ケータ・ビットによってプログラム・アドレス空間から
区別される。第2B図に斜線領域が存在しないことは、そ
のようなデータ空間のどの領域も、他のデータ空間又は
任意のプログラム・アドレス空間に対して共通でないこ
とを示している。プログラム空間中の共通記憶域内の記
憶要素(13A及び13B)を参照する仮想アドレスは、任意
のプログラム空間から見てその内容が同じである要素を
示す。従って、プログラム空間内の共通セグメント内の
全ての記憶域に関する仮想アドレスは同じ組のページ・
テーブル(第7図、71)に対応付けられる。一方、私的
記憶域中の記憶要素(14、15、16)を参照する仮想アド
レスは、それ特有のページ・テーブル(72、73)に対応
付けられる。仮想アドレスを対応する実(主記憶)アド
レスに変換するプロセス(但し仮想アドレスは現在実記
憶中に存在する要素を表わす)は、動的アドレス変換
(DAT)と呼ばれ、従来技術で周知である(例えばIBM
System/370 Extended Architecture Primciples of Op
eration、SA22−7085参照)。性能上の理由により、変
換された仮想アドレス、及びそれに対応する実アドレス
はしばらくの間、変換索引緩衝機構(TLB又はDLAT)中
に保持される。そこでそれは、アドレス空間に関して以
前に変換された仮想アドレスを再度変換するオーバーヘ
ッドを避けるために使うことができる。たとえ異なった
アドレス空間内にあっても以前に変換した仮想アドレス
が同じ実アドレスに変換され(両者の仮想アドレスは同
じ)、両者が共通セグメント内に入ることを確認するこ
とにより、付加的な性能の利益が得られる。(この場
合、異なったアドレス空間の共通セグメント内に生じて
いることを除けば同一の仮想アドレスは「シノニム」と
呼ばれる。) 第1A図及び1B図は、前述の米国特許第4136385号の発明
に基き本発明の良好な実施例が動作しうる一般的な枠組
のブロック図を示す。(第6A図が本発明の共通セグメン
ト無効化部分の詳細な論理を含む。)STOK及び制御装置
21は、活動制御レジスタを有する。これは論理アドレス
・レジスタ(LAR)31に現在ロードされているプロセッ
サ仮想アドレスにより現在使用されている活動的なセグ
メント・テーブル・オリジン(STO)を含む。これはア
クセスすべきアドレスを現在要求している。また制御装
置21はセグメント・テーブル・オリジン・スタック(ST
OK)22を含む。これは、各活動的STOが活動制御レジス
タにロードされる時にそれを順次に受け取るエントリを
有する。STOK中にSTOにより表わされるプログラム・ア
ドレス空間及びデータ空間は、DLAT3中のエントリによ
って現在与えられる唯一のアドレス空間である。STOK中
の各エントリは2〜30のインデックス値を有する。これ
らのインデックス値はSTO識別子(STO ID)として使用
される。STOK中の現在活動的なSTOはポインタ・レジス
タ(PTR REG)23中のSTO IDにより指定される。現在
ポインタ・レジスタ23中にあるSTO IDは、現在活動制
御レジスタ中に含まれているSTOとして同じSTOを有する
STOKエントリの位置を指定する。STO IDが2から30ま
でしか使われない理由は、値0〜31を与える5ビットの
インデックス・サイズを収容するためである。その値
0、1及び31は、DLATにおいてそれぞれ、無効STO、動
的アドレス変換なし(NON−DATモード)及び共通記憶域
の特別な条件を示すために使われる。後者の値は、DLAT
が全てのアドレス空間により共有可能なページをアドレ
スすることを示すために本発明により導入された。また
例えば61個のSTOKエントリ(26−3)を可能にする6ビ
ットのSTO IDを設けることにより、より多くのSTO ID
を有する大きなSTOKを設けることも可能である。
第1A図の回路24は、全てのエントリ2〜30が一杯にな
り、且つさらに別のSTOがSTOKに導入されようとした時
に、STOK22に関するオーバーフロー条件を示す信号を出
す。回路24は、STO ID30がPTR REG23中にあり活動制
御レジスタ中の次の巣集うSTOがSTOKエントリ2〜30の
サーチによって見い出されない時にオーバーフロー信号
を発生する。回路24からのオーバーフロー出力信号は、
全てのDLATエントリをリセットするためにDLATロード回
路5に転送される。別のインプリメンテーションではそ
のような無差別的無効化方法は必要がないかもしれな
い。
第1A図のDLAT3は2ウェイ・セット・アソシアティブ方
式であり、DLATアレイの半分は参照番号00〜063として
示される64個のエントリを有するLDATテーブル0を含
み、DLATアレイの他半分は参照番号10〜163として示さ
れる64個のエントリを含むDLATテーブル1を有する。DR
Rレジスタ3Bは、DLATエントリの現在選択された対のア
ドレスを含む。DRR3B中のアドレスは、LAR31中の仮想ア
ドレスのビットをハッシングするハッシュ回路3Aにより
導出される。
第3図は、DRRレジスタによりアドレスされる選択され
たエントリの対に関するフォーマットを示す。各エント
リは、(1)ポインタ・レジスタ23から、又は(2)DL
ATエントリ変換のためにアクセスされるセグメント・テ
ーブル・エントリ(STE)中の共通空間ビットC26から導
き出されたSTO IDを含むことがわかる。
第1図を参照すると、LAR31中の仮想アドレスの変換は
通常、トランスレータ4によって行なわれる。そこで
は、第1B図のセグメント・テーブル27のSTOアドレスか
らのSTEエントリをアドレスのSX部分がインデックスす
る。このSTEアドレスはSTOプラスSXである。ページ・テ
ーブル・オリジン(PTO)アドレス28は、アクセスされ
たSTE中にあり、第1B図のPTE−g29に示すように、ペー
ジ・テーブル・エントリ(PTE)をアドレスするために
トランスレータによって使用される。PTE−gはそこ
で、PTO+PXの記憶位置でアドレスされる。アクセスさ
れるページの実アドレス即ち絶対アドレスは、アクセス
されたPTEのPFRA部分29に含まれている。これは次にト
ランスレータ4によってロード制御装置5に転送され、
選択されたDLAT中の絶対アドレス(RA)フィールド301
に置かれる。
STEフォーマット中のC26ビットが1にセットされる時、
セグメント・テーブルのエントリは、それによって、ST
Eによりアクセスされる。ページ・テーブル中の全ての
ページにより表わされる共通空間セグメント(即ち共有
セグメント)を表わすように指示される。しかしなが
ら、ビットCがオフの時、STEは私的セグメント即ちそ
の特定のセグメント・テーブルをアドレスするSTOによ
って定義されたもの以外の他のアドレス空間によってア
クセス可能でないセグメントを定義する。
第3図で、選択されたDLATエントリ中の仮想アドレス
(VA)フィールド300も、DLAT中のこのページVAを他のD
LATエントリ中に表わされている他の全てのページVAか
ら区別するために常に第1A図のLAR31中のVAからビット
を受け取る。ここで、ハッシングされたアドレスは常
に、DLAT中に表わされた仮想アドレスに関する特性を区
別する部分である。DLATエントリに受け取られたキー
は、そのページに関する記憶保護キーである。
DLATロード動作は、プロセッサが第1A図のLAR31にアド
レスを転送し、LAR31中のアドレスにより要求されるペ
ージをどのDLATエントリもアドレスしないことを読取制
御回路が発見した時に、行なわれる。そのようなDLATエ
ントリの欠如は、第1A図のDLAT読取制御回路6がDLAT例
外信号を信号線67Aからトランスレータ4に与えること
によって示される。トランスレータ4はこの信号をクロ
ック機構によりDLATロード信号38Aに変換する。DLAT読
取制御回路6は、DRR3Bによりハッシュ・アドレスされ
た選択されたDLATエントリの対の各々の関連アィールド
の全てを、LAR31中のVAビット、ポインタ・レジスタ23
から与えられたSTO ID、及びプログラム・ステータス
・ワード(PSW)により与えられたキー・フィールドよ
り成る対応フィールドと、同時に比較する。もし、DLAT
読取制御回路6で同時に比較される2つのDLATエントリ
0、1の1つに関して等値性が見い出されると、読取制
御回路は全ての関連フィールドが等しいDLATのみを選択
する。次に選択されたDLATエントリは、制御回路6が記
憶装置アクセス制御回路25に信号線69A上の信号として
ページ・フレーム・アドレス(RA)を出力するようにす
る。そして選択されたDLATエントリに、LAR31から得ら
れた変位(D)を連結することにより得られたRAアドレ
スから始まる1以上のバイトのアクセスを開始させる。
しかし、DLAT読取制御回路6は、選択されたDLATエント
リのSTO IDフィールド中に2進数31の共通記憶域イン
ジケータ値が存在することを示すことがある。この場
合、本発明により定義されたようなデータ空間に関して
でなく、従来技術で知られるようなアドレス空間に関し
てのみ、DLAT読取制御回路6は、STO ID値31による不
一致の比較を、全てのSTO ID値に関してSTO ID比較結
果が等しいように動作させることにより、無視する。次
にどのアドレス空間が要求を行なっている(ポインタ・
レジスタ23により示される)に無関係に、LAR31中の仮
想アドレスのアクセスが許可される。
従って、DLATエントリが、それをロードしたアドレス空
間のみによって使用を許可されているか、又はどのアド
レス空間がそれをロードしたかに無関係に全てのアドレ
ス空間による使用が許可されるかを制御する値と共にDL
AT中のSTO IDフィールドがロードされることが理解さ
れる。
トランスレータ トランスレータ4の入力は、論理アドレス・レジスタ
(LAR)31(これは第1図にも示されている)及びトラ
ンスレータ入力レジスタ(TIR)32より成る。LAR31は仮
想アドレスをプロセッサの命令ユニットから受け取り、
TIR32はSTOを活動STD制御レジスタから、そして、STE及
びPTEを主記憶から、一時に1つづつ、受け取る。STE中
の共通空間ビットCは出力ゲート32Cにより検知され
る。これはTIR32中のビット位置30を検知する。出力ゲ
ート32Cは共通記憶ラッチ37のセット入力に接続され、
ビットCがオンならばそれをオンにセットし、またビッ
トCがオフならばラッチオフにセットする。出力リード
37AはDLATロード制御回路5にラッチのセッティングを
与え、制御回路5はもし共通空間ビットCがオンであれ
ば、現在選択されたDLATエントリのSTO IDに共通記憶
域の値31を発生しロードする。もし共通空間ビットCが
オフであれば、ラッチ37はオフにセットされ、信号線37
Aはポインタ・レジスタ23から提供されるSTO IDを選択
されたDLATにロードするように制御回路5に指示する。
トランスレータ4の出力は、各々STE及びPTEをアクセス
するのに必要なアドレスSTO+SX又はPTO+PXを供給す
る。PT−RA+Dの値はトランスレータによって発生され
ないが、選択されたDLATからのRAとLAR31からのD値と
を連結することにより得られる。この連結はDLATエント
リにより現在利用可能なページ中のバイト・アドレスを
より高速に生成するために第1図の記憶装置アクセス制
御回路25により直接的に行なわれる。
クロック38はトランスレータ回路に関係するタイミング
を制御する。クロックはDLAT読取回路6からの信号線67
A上のDLAT例外信号により活性化される。DLATエントリ
が見つからない時、クロックは、信号線38A上にDLATロ
ード信号を供給することにより、その動作を終える。こ
の信号はPFRAがPTEから供給されており、選択されたDLA
Tエントリにロードするために利用可能でない事を示
す。
DLATロード制御回路 第5図のDLATロード制御回路は、選択されたDLATエント
リ中の種々のフィールドにロードを行なう複数のゲート
から構成される。通常のLRU回路(図示せず)が、第1A
図のDRR3BによりアドレスされたDLATエントリの対の1
つを選択する。第5図で、共通ID発生器51は、信号線37
A上の共通空間信号及び信号線38A上のDLATロード信号を
受け取るANDゲートである。活性化された時、発生器51
は、2進数値31を表わすために5本の信号線上の1ビッ
トとして、その出力を与える。それらの信号線は、OR回
路56を経て、選択されたDLATエントリ中のSTO IDフィ
ールドに供給される。
また、信号線37Aは共通空間信号をラッチ37(第4図)
からインバータ57へ接続する。インバータの出力は、活
性STO IDが、ポインタ・レジスタからの信号線55からO
R回路56へ伝わるのを防止するためにSTO IDゲート52を
ディスエーブルする。従って、共通ビットCがオンの
時、OR回路56からの唯一の出力は、選択されたDLATに関
する共通IDを示す値31である。
もし共通空間ビットがオフであれば、発生器51からの出
力は存在せず、インバータ57はゲート52を活性化する。
この場合、信号線55上のSTO IDは、OR回路56を経て、
選択されたDLATエントリ中の5ビットのSTO IDフィー
ルドに出力される。
VAゲート93は、VA識別を与えるために、信号線31A上のL
ARビット8〜14を、選択されたDLAT中のVAフィールドに
ゲートする。同様に、RAゲート94は、信号線36B上のPFR
Aを、選択されたDLAT中のRAフィールドに伝達する。
DLAT読取制御回路 第6A図及び第6B図に示すDLAT読取制御回路はプログラム
・アドレス空間をデータ空間から区別するための論理を
含んでいる。これはSTD中のデータ空間インジケータ・
ビット62Aによってトリガされる。それらの制御回路は
2個の同一のDLAT読取制御回路60及び66を含む。それら
は各々、DLATテーブル0及び1中の選択されたDLATエン
トリの対を受け取る。各回路60及び66は複数の比較回路
を含む。例えば回路60中では、比較回路61が、選択され
たDLATからのSTO IDとポインタ・レジスタ23(第1A
図)から受け取った活性STO IDとを比較し、DLATアド
レスが要求アドレス空間中にあるか否かを判定する。も
しそれらが等しければ、信号が出力信号線61BからOR回
路61Aに供給される。もしそれらが等しくなければ、信
号線61B上には何の信号も供給されず、DLATアドレスは
要求アドレス空間中にはない。しかしながら、選択され
たDLAT中のSTO IDが共通記憶域インジケータ2進数31
か否かを検知するために本発明は共通記憶域検出器AND
回路62を使用する。回路62は、2進数31の表示を検出し
AND回路62Cへの出力を付勢するために5つ全部のSTO I
D入力が1であることを要求するANDゲートである。もし
インバータ62Bの出力が活性出力(これはプログラム・
アドレス空間の場合であり、データ空間インジケータ62
Aは不活性である)であれば、(共通記憶域を示す)回
路62からの肯定表示は、回路61の不一致条件をバイパス
して、OR回路61Aに伝達される。しかし、もしデータ空
間インジケータ62Aが活性であり、STDが本発明により定
義されたようなデータ空間を記述していることを示すな
らば、この活性表示は反転され(62B)、それによりア
ドレス空間に関して共通として定義された仮想アドレス
の範囲内にデータ空間アドレスが入ることがあるか否か
のSTOK ID比較61をバイパスすることを禁止する。要約
すると、もし(1)受け取ったSTO IDが等しいか又は
(2)アドレスがアドレス空間の一部であってデータ空
間ではなく且つ共通IDインジケータがDLATエントリであ
れば、OR回路51Aが活性出力を与える。
VA比較回路63は、選択されたDLAT中のVAフィールドをLA
R中のビット位置とする。もしこれらのVAフィールド比
較が等しければ、DLATはそのVAを変換する。但しその条
件はアドレス空間レゾルーション信号がOR回路61AからP
LATO組み合せ回路64を条件付けるために与えられている
ことである。これは次にゲート65Aに出力を与え、それ
によってRAレジスタ65により選択されたDLATから受け取
った主記憶アドレスを伝達する。次にRAは、RAレジスタ
からRA選択ゲート69に伝達される。またゲート65Aの出
力及び回路64の出力60Aは、キー保護回路68に入力する
ためにDLATエントリからキーを選択するためにゲート64
Aを条件付ける。
DLAT1読取制御回路66は、上述のDLATO読取制御回路60と
同一の回路を含む。
DLAT読取制御回路60及び66(これらは、選択されたハッ
シュ・アドレスにおける1対の両DLATの出力を同時に受
け取る)は、対のどちらのDLATエントリが、第1A図のポ
インタ・レジスタ23及びLAR31中の現在アドレス要求に
よって選択されたDLATか又はいずれもそうでないかの判
定を行なう。DLATエントリの対から一時に行60A又は66A
の1つだけが活性状態になることができる。というのは
2つの回路の1つだけが、各行を活性化するのに必要な
比較一致条件を有し得るからである。同様に、回路60又
は66のうち1つだけがそのゲート65Aを経てRAを出力で
きる。ゲートされたRAはRA選択ゲート69へ入力として与
えられるが、選択されたDLATエントリ中のキーがキー保
護回路68によって受け取られたPSWキーに等しくなけれ
ば、それはゲート69から出ることを許されない。もしPS
WキーとDLATキーが等しければ、信号が信号線68Aに与え
られ、RA選択ゲート69を付勢し、それが受け取ったRAを
記憶装置アクセス制御回路へ伝達させる。そしてアクセ
ス制御回路は主記憶中のアドレスをアクセスする。しか
し、回路68でキー比較が等しくなければ、信号線68B上
の信号がキー・バイオレーションを示し、これはプロセ
ッサの割り込み回路に与えられ、アクセスがゲート69に
より阻止される。
またOR回路67は相補的出力67Bを有し、これは入力60A又
は66Aのいずれもが対のDLATエントリ0又は1のどちら
の選択も示していないことを示す。出力信号線67B上の
信号は、LAR31中の仮想アドレスが現在のどのDLATエン
トリによっても表わされないことを示すDLAT例外信号を
発生する。この時、トランスレータは、仮想アドレス
を、主記憶中に存在するかもしれないページに関する絶
対ページ・アドレスに変換する必要がある。もしページ
が主記憶中に存在しなければ、トランスレータがそれに
アクセスしDLATエントリにロードする前にそれをI/O装
置又は拡張記憶装置から取得しなければならない。
再び、第2B図を参照すると、私的データを記憶するため
に利用可能なデータ空間のアドレス範囲全体が示されて
いる。これを達成するために、プログラム・アドレス空
間に関して低アドレス保護を与えながら、データ空間へ
の記憶要求に関してはこの保護機構を無効化する必要が
ある。第13図はそれがどのようにして行なわれるかを示
す。アドレス範囲0〜511(ビット1〜22(132)がゼロ
に等しいことによって示される)内の論理アドレスに関
して記憶要求131が発行され、同時に低アドレス保護イ
ンジケータ133が活性で、且つデータ空間インジケータ1
34(STDから生じる、第6図の参照番号62A参照)が不活
性(インバータ135がこの不活性表示をAND回路136への
入力として正信号に変換することに注意)の時、保護例
外130がトリガされる。保護例外はデータ空間インジケ
ータ134が活性の時は無効化される。これはデータ空間
インジケータからの信号がインバータ135によってAND13
6への負入力に変換され、保護例外130をディスエーブル
するからである。
プログラム空間からデータ空間内のデータにアクセスす
る機構 データ空間の勝ちは主に、データの保管場所即ち「記憶
貯蔵所」として使用することにある。それをこのように
使うには、プログラム・アドレス空間内からそれにアク
セスするための機構が必要である。
第8図の実施例は、データ空間2に含まれる1つのオペ
ランド(81)に、レジスタに含まれるオペランドを乗算
し、データ空間3に結果(82)を記憶する、アドレス空
間中で実行するプログラムである。
この一連の動作を行なうために、第2オペランドの論理
アドレス(第8図に示す乗算命令の例ではレジスタ2に
含まれている)をデータ空間2に関連付け、且つ記憶命
令の第2のオペランドの論理アドレス(第8図に示す例
ではレジスタ3に含まれている)をデータ空間3に関係
付ける機構が設けられなければならない。図式的には、
この関係付けを行なうための機構は、その機構が適当な
データ空間に関係付けられたセグメント・テーブル記述
子(STD)を生成しなければならないことを示すため
に、第9図に「STD選択」(91)として示されている。
多くのそのような機構が可能である。例えば、そのよう
な機構は前記米国特許第4355355号及び第4521846号に与
えられている。別のそのような機構は、本発明の関連出
願に示されている。セグメント・テーブル記述子は、一
度形成されると、動的アドレス変換機構(DAT)プロセ
スへの入力(92)になる。
第10図はオペランドのアドレシングにおける、前記の関
連出願によるSTD選択機構(101)を示す。動的アドレス
変換で使用するためにSTDを得るためにアクセス・レジ
スタの内容を使用するプロセスは、アクセス・レジスタ
変換(ART)動作100と呼ばれる。(この動作は第1図で
は参照番号20で示されている。)命令102は、オペレー
ション・コード、ベース・アドレスを含む汎用レジスタ
104を指定するBフィールド、及び加算器105により汎用
レジスタ104のベース・アドレスと結合される時に記憶
オペランドの論理アドレスを形成する変位Dを有する。
アクセス・レジスタ・モードにおいて、Bフィールドは
ALETを含むアクセス・レジスタ106も指定する。ALET
は、ARTで変換されると、データが記憶されるアドレス
空間に関するSTDを与える。ART100からのSTDは、加算器
105からの論理アドレスと結合され、動的アドレス変換
(DAT)動作108(第4図に詳細を説明)で変換されて、
システムで使用するためのオペランドの実アドレスを与
える。第10図に示すBフィールド及び変位Dに加えて、
記憶オペランドの論理アドレスを含む汎用レジスタを指
定するためにRフィールドを用いてもよい。
第11図はALETの実アドレスへの変換を示す。ブロック11
0に示すのは汎用レジスタ0〜15のアレイである。アク
セス・レジスタ0〜15の112は、第10図に関連して以前
に述べたように、アレイ110の汎用レジスタ各々と各ア
クセス・レジスタが対になるように配列されている。AL
ET中のアクセス・リスト・エントリ番号(ALEN)はアク
セス・リスト114又は115の1つの中のエントリを選択す
る。アクセス・リスト114はDUAL、アクセス・リスト115
はPSALである。第11図の例では、アクセス・レジスタ2
のALENはPSAL115のエントリ3を指す。DUALの基点はデ
ィスパッチ可能ユニット・アクセス・リスト指定(DUAL
D)116により指定され、これは制御レジスタ2中のエン
トリをデコードすることにより見い出される。PSALの基
点は、主空間アクセス・リスト指定(PSALD)117により
指定され、これは制御レジスタ5中のエントリをデコー
ドすることにより見い出される。ART中で使用されるア
クセス・リスト指定は有効アクセス・リスト指定(AL
D)として知られている。
アクセス・リスト中の各エントリは、ASNの第2のテー
ブルのエントリASTE118を指すASTEアドレスを含む。こ
れはASNの第2のテーブル(AST)1101中に存在しても又
していなくてもよい。ASTEは、実際にAST中に存在する
かどうかに完全に無関係に、形成されその機能を実行で
きる。但しいくつかのASTEはAST中に存在する必要があ
る。各ASTEはDAS機構中で使用されるものに類似してお
り、第10図に関連して説明したように、DAT108により実
アドレスを決定するためにSTD値を含む。
同時にプログラムに利用可能な2つのアクセス・リスト
が存在する。その各々は異なったケーパビリティ・ドメ
インを表わしている。1つのアクセス・リストはディス
パッチ可能ユニット・アクセス・リスト(DUAL)と呼ば
れ、他方は主空間アクセス・リスト(PSAL)必要と呼ば
れる。ALET中の1つのビットは、ALETのALENがDUAL114
又はPSAL115のどちらの中のエントリを指すかを決定す
る。アクセス・リスト114及び115中の各エントリは、プ
ログラムが使用するために利用可能である。
DUALドメインは、ディスパッチ可能ユニット(タスク又
はプロセス)により実行されるプログラムのためにディ
スパッチ可能ユニットを永久的に関係付けることを意図
されている。システム中の各ディスパッチ可能ユニット
に関して特有のDUALが存在する。ディスパッチ可能ユニ
ットに関するDUALは、ディスパッチ可能ユニットが多く
の異なったアドレス空間中のプログラムを実行すること
があっても、変化しない。PSALドメインは主アドレス空
間に関係付けられる。これは、主空間内で実行している
プログラムが共通のアドレス空間の組に対するアクセス
を共有することを可能にする。PSALは、例えば空間切り
替えPC動作で主アドレス空間が変化する時に、変化す
る。プログラムは、有効なALETを所有している時、DUAL
114又はPSAL115のいずれかのアクセス・リスト・エント
リにアクセスでき、このエントリは所望のアドレス空間
を指定する。他のドメインも、同様にALET及び選択され
た制御レジスタを用いて実現及び制御できる。例えば、
システム中の全てのプログラムのケーパビリティを有す
る全システム・アクセス・リスト(SWAL)ドメインを形
成しうる。例えば既存の機構をさらに利用することを可
能にするために、SASNドメイシ・アクセス・リスト(SS
AL)等の種々のドメインのサブセットを所望により形成
することができる。
DUALのエントリ0及び1は使用されない。というのは、
ARアドレシング・モードの時、ALETが、各々主アドレス
空間及び第2アドレス空間中のオペランドをアクセスす
るために予約されているからである。CPUのアドレシン
グ・モードはPSW中のビットにより指定される。CPUがAR
アドレシング・モードの時、ゼロのALENを有するALETは
常に主アドレス空間を参照し、1のALENを有するALETは
常に第2アドレス空間を参照する。第11図を参照する
と、ボックス119はこれらの特殊なALETを識別し、それ
らが生じた時にPASN及びSASNに関する正しいSTDをDATに
与える。CPUがホーム・アドレシング・モードの時、ホ
ーム・アドレス空間は、実行される命令及びデータの供
給元である。ホーム・アドレス空間は、実行されるプロ
グラムに関するスーパーバイザ制御情報を有するアドレ
ス空間として定義される。規約により、オペレーティン
グ・システムはデータ・アクセスのために各ホーム空間
毎に2のALENを割り当て、ホーム空間に関するSTDはそ
のようなアクセスに関するARTにより得られる。主及び
第2アドレス空間に関するSTD値は各々制御レジスタ1
及び7に保持されるので、アクセス・リスト・エントリ
0及び1は使用されない。インプリメントされた時、PS
AL115のエントリ0、1及び2は使用されず、無効のマ
ークが付けられる。
ART索引緩衝機構(ALB)110は、ARTから生じるSTDを保
持するために、AR112、AL115及びASTから入力を受け取
り保存する。またALBはアクセス・リスト指定DUCT又はP
SALも保持する。同じALETが再び使用される時、ALB1100
はDAT108に直接に正しい出力を与えるので、ARTは繰り
返される必要はない。
アクセス・レジスタ変換のこのプロセスは、第1図のST
D(200)を発生する。これは第1図の4に示す変換プロ
セスで使用される。
データ・アイソレーションのためのデータ空間の使用 上記のデータ空間は、特に、MVS/XAで「データ・イン・
バーチャル」又はDIVとして知られている機構(例えばI
BM社発行のマニュアル、「MVS/Extended Architecture
Supervisor Service and Macro Instructions」(GC28
−1154):「Am Introduction to Data−in−Virtual」
(GC66−0259);「MVS/Extended Architecture System
Logic Library:Data−in−Virtual」(LY28−1655)を
参照されたい)に関連したデータ保管のようなアプリケ
ーションにより使用するのに適している。
DIV技術を使用すると、外部記憶上に存在する大規模な
データ・セットをデータ空間内の連続的アドレスに写像
し、それを操作することができる。このデータ空間の使
用法は第12図に示されている。共通領域の「穴」を持た
ない、大きなサイズのデータ空間により、大きなデータ
・セット(2ギガ・バイトまで)をデータ空間(120)
に写像できる。データ・セットのページは実際にアクセ
スされた場合にだけ(122)自動的にシステムによって
主記憶に導入されるとしても、データ・セットは、あた
かもそれが記憶装置(121)に読込まれたかのようにア
プリケーション・プログラマによりアクセスすることが
できる。最後に、変更されたページをシステムがモニタ
し、変更されたページだけをコミット・プロセス(12
3)で外部記憶に書込む。
【図面の簡単な説明】
第1A図及び第1B図は、索引テーブルを用いた、仮想アド
レス・実アドレス変換プロセスを示す図、 第2A図は従来技術)のMVS/XAアドレス空間の構造を示す
図、 第2B図は本発明によるデータ空間の構造を示す図、 第3図は単一DLATハッシュ・アドレスによりアクセスさ
れるDLATエントリの各対のフォーマットを示す図、 第4図は実施例で用いるトランスレータを示す図、 第5図は実施例で用いるDLATロード制御回路を示す図、 第6A図及び第6B図は、所定の仮想アドレスに関して索引
テーブルから実アドレスが取り出せるか否かを決定する
ために必要な論理を示す図、 第7図はページ・テーブルへのセグメントのマッピング
を示す図、 第8図はアドレス空間で実行しているプログラムによる
2つのデータ空間の使用を示す図、 第9図はSTD選択機構とDATのプロセスとの関係を示す
図、 第10図はオペランドのアドレシング時のアクセス・レジ
スタの使用を示す図、 第11図はアクセス・レジスタの内容の変換を示す図、 第12図はデータ・イン・バーチャル機構を用いた、デー
タのアイソレーションのためのデータ空間の使用を示す
図、 第13図はデータ空間に関する低アドレス保護の無効化を
示す図である。
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭52−144929(JP,A) 特開 昭61−845(JP,A)

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】CPU、主記憶、上記CPU及び主記憶に接続さ
    れたシステム資源、並びに複数の仮想アドレス空間をサ
    ポートするオペレーティング・システムを有するデータ
    処理システムにおいて、上記仮想アドレス空間のいくつ
    かは命令及びデータを含むプログラム・アドレス空間と
    して設計され、該プログラム・アドレス空間はすべての
    そのようなプログラム・アドレス空間に共通である仮想
    記憶域を表す仮想アドレスの共通領域を含み、他の上記
    仮想アドレス空間はデータのみを含むデータ空間として
    設計され、該データ空間は各データ空間に独自な仮想記
    憶域を表す仮想アドレスの領域を含み、実アドレスを得
    るために仮想アドレスを使用して、記憶域アクセス制御
    手段によって主記憶域にアクセスする装置であって、 (a)供給された仮想アドレスが関連する仮想アドレス
    空間を判断する手段と、 (b)テーブル手段を用いて上記供給された仮想アドレ
    スを対応する実アドレスに変換し、該対応する実アドレ
    スを上記記憶域アクセス制御手段に供給する変換手段
    と、 (c)上記変換された仮想アドレスとともに対応する実
    アドレスをエントリとして記憶する変換索引緩衝機構
    (DLAT)と、 (d)上記エントリを使用して対応する実アドレスを得
    るためのDLAT読取制御手段を有し、続いて供給された仮
    想アドレスが上記エントリ内の変換された仮想アドレス
    に一致する場合、及び上記続いて供給された仮想アドレ
    スと上記変換された仮想アドレスの両方が同じアドレス
    空間に関連する場合に、上記変換手段をバイパスし、 (e)上記エントリを使用して、上記続いて供給された
    仮想アドレスは上記変換された仮想アドレスに一致した
    が、両方とも同じ仮想アドレス空間に関連しなかったた
    めに上記ステップ(d)が起こらなかった場合、(1)
    上記連続して供給された仮想アドレスが上記データ空間
    内かどうかを判断し、(2)それにかかわらず上記DLAT
    読取制御は対応する実アドレスを得るために上記エント
    リを使用し、上記続いて供給された仮想アドレスが上記
    共通領域の少なくとも1つに入り、かついずれの上記デ
    ータ空間内にない場合にのみ上記変換手段をバイパスす
    る上記装置。
  2. 【請求項2】CPU、主記憶、上記CPU及び主記憶に接続さ
    れたシステム資源、並びに複数の仮想アドレス空間をサ
    ポートするオペレーティング・システムを有するデータ
    処理システムにおいて、上記仮想アドレス空間のいくつ
    かは命令及びデータを含むプログラム・アドレス空間と
    して設計され、該プログラム・アドレス空間はすべての
    そのようなプログラム・アドレス空間に共通である仮想
    記憶域を表す仮想アドレスの共通領域を含み、他の上記
    仮想アドレス空間はデータのみを含むデータ空間として
    設計され、該データ空間は各データ空間に独自な仮想記
    憶域を表す仮想アドレスの領域を含み、実アドレスを得
    るために仮想アドレスを使用して、記憶域アクセス制御
    手段によって主記憶域にアクセスする方法であって、 (a)供給された仮想アドレスが関連する仮想アドレス
    空間を判断するステップと、 (b)テーブル手段を用いて上記供給された仮想アドレ
    スを対応する実アドレスに変換し、該対応する実アドレ
    スを上記記憶域アクセス制御手段に供給するステップ
    と、 (c)上記変換された仮想アドレスとともに対応する実
    アドレスをエントリとして変換索引緩衝機構(DLAT)に
    記憶するステップと、 (d)上記エントリを使用して対応する実アドレスを得
    るためのDLAT読取制御手段を有し、続いて供給された仮
    想アドレスが上記エントリ内の変換された仮想アドレス
    に一致する場合、及び上記続いて供給された仮想アドレ
    スと上記変換された仮想アドレスの両方が同じアドレス
    空間に関連する場合に、上記変換ステップをバイパスす
    るステップと、 (e)上記エントリを使用して、上記続いて供給された
    仮想アドレスは上記変換された仮想アドレスに一致した
    が、両方とも同じ仮想アドレス空間に関連しなかったた
    めに上記ステップ(d)が起こらなかった場合、(1)
    上記連続して供給された仮想アドレスが上記データ空間
    内かどうかを判断し、(2)それにかかわらず上記DLAT
    読取制御は対応する実アドレスを得るために上記エント
    リを使用し、上記続いて供給された仮想アドレスが上記
    共通領域の少なくとも1つに入り、かついずれの上記デ
    ータ空間内にない場合にのみ上記変換ステップをバイパ
    スするステップとを有する上記方法。
JP1010094A 1988-02-10 1989-01-20 アクセス装置及び方法 Expired - Lifetime JPH077363B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/154,688 US5008811A (en) 1988-02-10 1988-02-10 Control mechanism for zero-origin data spaces
US154688 1988-02-10

Publications (2)

Publication Number Publication Date
JPH027142A JPH027142A (ja) 1990-01-11
JPH077363B2 true JPH077363B2 (ja) 1995-01-30

Family

ID=22552340

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1010094A Expired - Lifetime JPH077363B2 (ja) 1988-02-10 1989-01-20 アクセス装置及び方法

Country Status (5)

Country Link
US (1) US5008811A (ja)
EP (1) EP0327798B1 (ja)
JP (1) JPH077363B2 (ja)
BR (1) BR8900603A (ja)
DE (1) DE68923627T2 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5239635A (en) * 1988-06-06 1993-08-24 Digital Equipment Corporation Virtual address to physical address translation using page tables in virtual memory
US5134696A (en) * 1988-07-28 1992-07-28 International Business Machines Corp. Virtual lookaside facility
JPH0290349A (ja) * 1988-09-28 1990-03-29 Hitachi Ltd 仮想記憶システムのアドレス空間制御装置
US5226132A (en) * 1988-09-30 1993-07-06 Hitachi, Ltd. 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
US5404476A (en) * 1989-02-10 1995-04-04 Nec Corporation Multiprocessing system having a single translation lookaside buffer with reduced processor overhead
JPH0650480B2 (ja) * 1989-05-02 1994-06-29 株式会社日立製作所 多重仮想記憶システムおよびアドレス制御装置
JP2768503B2 (ja) * 1989-07-25 1998-06-25 富士通株式会社 仮想記憶アドレス空間アクセス制御方式
JP2825550B2 (ja) * 1989-09-21 1998-11-18 株式会社日立製作所 多重仮想空間アドレス制御方法および計算機システム
JPH0679296B2 (ja) * 1989-09-22 1994-10-05 株式会社日立製作所 多重仮想アドレス空間アクセス方法およびデータ処理装置
US5265227A (en) * 1989-11-14 1993-11-23 Intel Corporation Parallel protection checking in an address translation look-aside buffer
US5469556A (en) * 1989-12-12 1995-11-21 Harris Corporation Resource access security system for controlling access to resources of a data processing system
US5319761A (en) * 1991-08-12 1994-06-07 International Business Machines Corporation Directory look-aside table for a virtual storage system including means for minimizing synonym entries
US5390312A (en) * 1991-09-24 1995-02-14 International Business Machines Corporation Access look-aside facility
CA2285089C (en) * 1991-11-12 2000-05-09 Ibm Canada Limited-Ibm Canada Limitee Logical mapping of data objects using data spaces
US5426748A (en) * 1992-01-03 1995-06-20 International Business Machines Corporation Guest/host extended addressing method and means with contiguous access list entries
US5388266A (en) * 1992-03-30 1995-02-07 International Business Machines Corporation Management of data objects used intain state information for shared data at a local complex
US5428757A (en) * 1992-04-29 1995-06-27 International Business Machines Corporation Method for reducing translation look aside buffer purges in a multitasking system
US5479631A (en) * 1992-11-19 1995-12-26 International Business Machines Corporation System for designating real main storage addresses in instructions while dynamic address translation is on
JP3098344B2 (ja) * 1992-12-18 2000-10-16 富士通株式会社 データ転送処理方法及びデータ転送処理装置
US5377337A (en) * 1993-06-08 1994-12-27 International Business Machines Corporation Method and means for enabling virtual addressing control by software users over a hardware page transfer control entity
US6427162B1 (en) * 1996-05-02 2002-07-30 Sun Microsystems, Inc. Separate code and data contexts: an architectural approach to virtual text sharing
US6681239B1 (en) * 1996-12-23 2004-01-20 International Business Machines Corporation Computer system having shared address space among multiple virtual address spaces
US6289432B1 (en) 1998-03-25 2001-09-11 International Business Machines Corporation Sharing segments of storage by enabling the sharing of page tables
JP4116346B2 (ja) * 2002-07-05 2008-07-09 富士通株式会社 演算処理装置及びそのアドレス変換方法
JP4085328B2 (ja) * 2003-04-11 2008-05-14 ソニー株式会社 情報処理装置および方法、記録媒体、プログラム、並びに撮像装置
US6981125B2 (en) * 2003-04-22 2005-12-27 International Business Machines Corporation Method and apparatus for managing shared virtual storage in an information handling system
US8677098B2 (en) 2008-01-11 2014-03-18 International Business Machines Corporation Dynamic address translation with fetch protection
US8082405B2 (en) * 2008-01-11 2011-12-20 International Business Machines Corporation Dynamic address translation with fetch protection
US8103851B2 (en) 2008-01-11 2012-01-24 International Business Machines Corporation Dynamic address translation with translation table entry format control for indentifying format of the translation table entry
US8019964B2 (en) * 2008-01-11 2011-09-13 International Buisness Machines Corporation Dynamic address translation with DAT protection
US8041922B2 (en) * 2008-01-11 2011-10-18 International Business Machines Corporation Enhanced dynamic address translation with load real address function
US8037278B2 (en) * 2008-01-11 2011-10-11 International Business Machines Corporation Dynamic address translation with format control
US8117417B2 (en) 2008-01-11 2012-02-14 International Business Machines Corporation Dynamic address translation with change record override
US8041923B2 (en) 2008-01-11 2011-10-18 International Business Machines Corporation Load page table entry address instruction execution based on an address translation format control field
US8095773B2 (en) 2008-02-26 2012-01-10 International Business Machines Corporation Dynamic address translation with translation exception qualifier
US8285968B2 (en) * 2009-09-29 2012-10-09 International Business Machines Corporation Performing memory accesses while omitting unnecessary address translations
US8806179B2 (en) 2009-12-15 2014-08-12 International Business Machines Corporation Non-quiescing key setting facility
JP6809393B2 (ja) 2017-06-20 2021-01-06 トヨタ自動車株式会社 車両用動力伝達装置の潤滑装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4042911A (en) * 1976-04-30 1977-08-16 International Business Machines Corporation Outer and asynchronous storage extension system
JPS52144929A (en) * 1976-05-28 1977-12-02 Fujitsu Ltd Multiplex virtual space processing data processing system
JPS52149444A (en) * 1976-06-08 1977-12-12 Fujitsu Ltd Multiplex virtual space processing data processing system
US4096573A (en) * 1977-04-25 1978-06-20 International Business Machines Corporation DLAT Synonym control means for common portions of all address spaces
US4136385A (en) * 1977-03-24 1979-01-23 International Business Machines Corporation Synonym control means for multiple virtual storage systems
US4355355A (en) * 1980-03-19 1982-10-19 International Business Machines Corp. Address generating mechanism for multiple virtual spaces
US4500952A (en) * 1980-05-23 1985-02-19 International Business Machines Corporation Mechanism for control of address translation by a program using a plurality of translation tables
US4430705A (en) * 1980-05-23 1984-02-07 International Business Machines Corp. Authorization mechanism for establishing addressability to information in another address space
US4366537A (en) * 1980-05-23 1982-12-28 International Business Machines Corp. Authorization mechanism for transfer of program control or data between different address spaces having different storage protect keys
US4521846A (en) * 1981-02-20 1985-06-04 International Business Machines Corporation Mechanism for accessing multiple virtual address spaces
JPS6091462A (ja) * 1983-10-26 1985-05-22 Toshiba Corp 演算制御装置
JPS61845A (ja) * 1984-06-13 1986-01-06 Fujitsu Ltd 仮想ペ−ジリザ−ブ方式
JPS61148551A (ja) * 1984-12-24 1986-07-07 Hitachi Ltd アドレス変換方式
US4758951A (en) * 1985-04-09 1988-07-19 Tektronix, Inc. Method for translating virtual addresses into real addresses
US4868738A (en) * 1985-08-15 1989-09-19 Lanier Business Products, Inc. Operating system independent virtual memory computer system
JPH0658650B2 (ja) * 1986-03-14 1994-08-03 株式会社日立製作所 仮想計算機システム
JPS62237547A (ja) * 1986-04-09 1987-10-17 Hitachi Ltd アドレス変換方式
US4785392A (en) * 1986-10-14 1988-11-15 Amdahl Corporation Addressing multiple storage spaces
US4943913A (en) * 1988-02-10 1990-07-24 International Business Machines Corporation Operating system accessing control blocks by using home address space segment table to control instruction and operand fetch and store operations

Also Published As

Publication number Publication date
DE68923627D1 (de) 1995-09-07
US5008811A (en) 1991-04-16
EP0327798A2 (en) 1989-08-16
EP0327798B1 (en) 1995-08-02
EP0327798A3 (en) 1990-11-28
DE68923627T2 (de) 1996-04-25
BR8900603A (pt) 1989-10-10
JPH027142A (ja) 1990-01-11

Similar Documents

Publication Publication Date Title
JPH077363B2 (ja) アクセス装置及び方法
CA1092719A (en) Synonym control means for multiple virtual storage systems
US4096573A (en) DLAT Synonym control means for common portions of all address spaces
US4797814A (en) Variable address mode cache
EP0036110B1 (en) Cache addressing mechanism
US5475827A (en) Dynamic look-aside table for multiple size pages
US6266755B1 (en) Translation lookaside buffer with virtual address conflict prevention
KR920005280B1 (ko) 고속 캐쉬 시스템
US6308247B1 (en) Page table entry management method and apparatus for a microkernel data processing system
US4355355A (en) Address generating mechanism for multiple virtual spaces
US5287475A (en) Data processing apparatus operable in extended or unextended virtual address spaces without software modification
EP0144121A2 (en) Virtually addressed cache
JPH03142644A (ja) キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置
JPH0348541B2 (ja)
JPS6341100B2 (ja)
JP2005509946A (ja) メモリ管理システム及び線形アドレスに基づいたメモリアクセスセキュリティ付与方法
US7269825B1 (en) Method and system for relative address translation
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
US5479629A (en) Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address
US5319761A (en) Directory look-aside table for a virtual storage system including means for minimizing synonym entries
US5390312A (en) Access look-aside facility
US5341485A (en) Multiple virtual address translation per computer cycle
JPH055137B2 (ja)
EP0389886B1 (en) Ring reduction logic mechanism
JP3290682B2 (ja) アドレス変換装置