JPS5868285A - 仮想計算機のアドレス変換方式 - Google Patents

仮想計算機のアドレス変換方式

Info

Publication number
JPS5868285A
JPS5868285A JP56165349A JP16534981A JPS5868285A JP S5868285 A JPS5868285 A JP S5868285A JP 56165349 A JP56165349 A JP 56165349A JP 16534981 A JP16534981 A JP 16534981A JP S5868285 A JPS5868285 A JP S5868285A
Authority
JP
Japan
Prior art keywords
address
computer
virtual
absolute
buffer
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.)
Granted
Application number
JP56165349A
Other languages
English (en)
Other versions
JPH0235336B2 (ja
Inventor
Shinji Nanba
難波 信治
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.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP56165349A priority Critical patent/JPS5868285A/ja
Publication of JPS5868285A publication Critical patent/JPS5868285A/ja
Publication of JPH0235336B2 publication Critical patent/JPH0235336B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 本発明は1つの計算機システム上に1つ以上の仮想的な
計算機を実現する仮想計算機システムに関しさらに詳し
くはそのアドレス変換に関するものである。
仮想計算機のアドレス変換は従来シャドーテーブル音用
いて行なわれている。シャドーテーブル方式ではソフト
ウ・ア又はVMアシストと呼ばれるファームウェアによ
り仮想計算機の論理アドレスを実計31俄の絶対アドレ
スに変換するためのアドレス変換表つまりシャドーテー
ブルを作成し、このシャドーテーブルを使用して仮想計
算機のアドレス変換を行なってきた。この方式は論理ア
ドレス空間が大きな仮想計算機には同かないことは13
11らかである。すなわちシャドーテーブルそのものが
非常に大きくなり、またシャドーテーブルのクリア等の
管理が大きなオーバーへ!ドになる・こういわけでシャ
ドーテーブルを用いずに仮想計算機上 ら特願昭56−53586号によりすでに提案した。以
下にすでに提案した従来の方式の概略を図面を参昭しな
がら説明する。
第1図はすでに提案したシャドーテーブルを用いない仮
想計算機のアドレス変換方式を説明するプロψり図であ
る。10 は変換しようとしている仮想計算機上の論理
アドレスであり、11 がそのページ番号部で、12が
ページ内アドレス部である。20 は現時点で実行中の
仮想計算機を識別する計算機識別子を保持する実行計算
機識別子保持手段である。
(資)は仮想計算機の論理アドレスを実計算機の絶対ア
ドレスに変換するためのアドレス変換バッフrで、31
 が計算機識別フィールド、32・か仮想計算機の論理
アドレスの内のページ番号を保持するページ番号フィー
ルド、33が対応する豐主記憶上でのページ単位での先
頭アドレスすなわちページわく番号を保持するページわ
く番号フィールドであり、凋 はキイと一致したエント
リーのページわく番号フィールドの値を読み出したペー
ジわく番号である。40 はページわく番号U と論理
アドレス100ペ一ジ内アドレス部のページ内アドレス
から作られる実計算機上の絶対アドレスである。
アドレス変換バッフ130には仮想計算機上の陶埋アド
レス(v1111論理アドレスと言う。)のページ番号
部の値であるページ番号と、そのVM論理アドレスの属
する仮想計31’磯の計算4&誠別子とその■vi、6
埋アドレスのページの冥土記憶上でのページ単位での先
頭アドレスrなわちぺ一ジイ〕<番号とカ月つのエント
リーのページ番号フィールド32.計算慎識別フィール
ド31及びページわく番号フィールド33  にそれぞ
れ格納されており他のVM論理アドレスも又他のエント
リーにセデトしである。
仮想計算機上のプログラムの実行に伴なう用鏑埋アドレ
ス10 は次のようにしてアドレス変換される。!j!
行計算機識別子保持手段20 の保持する実行中の仮想
計算機のtl貞磯鐵別千金冑崗埋アドレス10 のペー
ジ番号部のページ番号13 から作られるキイ2011
  でアドレス変換バッファ(資)を引く。キイ201
1と一致する清報を計算機識別フィールド31及びペー
ジ番号フィールド32  にもつエントリーのページわ
く番号フィールド33 の値であるページわく番号詞 
とVM ′m理アドレス10のページ内アドレス部12
の値であるページ内アドレス14  とを41図のよう
にならべて実計算機上の絶対アドレス40  を得この
アドレスでもって実主記憶をアクセスする。一方キイ2
011  と一致するエントリーがない場合には図には
示していない仮想計算機上01il&理アドレスを仮想
計算機上の絶対アドレスに変換するアドレス変換表(以
下■に1アドレス変換表という。)と仮想計算機上の絶
対アドレスを実計算機上の絶対アドレスに変換するため
のアドレス変換表(以下■貴アドレス変換表という。)
をひいてVM論理アドレス10  を実計算機上の絶対
アドレスに変換する。またこの時得られるページわく番
号をVMQ埋アドレスlOのページ番号部11の値であ
るページ番号13  と実行計算機識別子保持手段20
 の保持するti算機識別子と共にアドレス変換バッフ
y30 VcM録するのはいうまでもないことである。
このようにすることにより大きな領域を必要としまたオ
ーバーヘッドの大きい管理を心安と4−るシャドーテー
ブルなしに仮想計算機上論理アドレスを実計算機の絶対
アドレスに変換することができる。しかしながらこの方
式にもいくつかの改善されるべき欠点が存在する。その
欠点のうち本発明1−cl揚V−るものについて以下に
述べる1アドレス変挾バツフ1中に変換すべき■(論理
アドレスの情報が存在しなければ前述のようにVMアド
レス変洟表と■4Sアドレス変換表とを引かねばならな
い。■〜1アドレス変撲表は仮想計′に〜の圧記憶上に
存在する。つまりn1アドレス叢侠表を引くためのアド
レスは仮想計算機の主記憶の絶対アドレスである0その
ためこの絶対アドレスを4) Vt5lSアドレス変換
表でアドレス変換し実主記憶の絶対アドレスにして■ア
ドレス変換表を引くことになる。そういうわけでこの方
法はアドレス変換バッフ1中に所望のアドレス変換情報
がない時のオーバーヘッドは大きなものとなるという欠
点をもりていた。
ム 本発明の目的は上記アドレス変換バーフ1中株所望のア
ドレス変換情報がないときのアドレス変換オーバーヘッ
ドを小さくすることにある。
本発明によればVM論理アドレスを仮想計算機上の絶対
アドレスに変換する別のアドレス変換バッフ7を設は仮
想計算機に制御をわたす時点で上記別のアドレス変換バ
ッファに制御を得る仮想計算機のアドレス変換情報を格
納し上記アドレス変換バッフ1中に所望のアドレス変換
情報がない時には上記別のアドレス変換バッファを使う
ことにより■論理アドレスの仮想計n機上の絶対アドレ
スへの変換を高速に行なうことができ、アドレス変換オ
ーバーヘッドと小さくすることができる◎本発明はこの
目的を達成するために、制御を得ている仮想計算機を識
別するための計算機緘千金を保持する実行計算機識別子
保持手段と、仮想計算機上の論理アドレスを仮想計算機
上の絶対アドレスに変換するための、仮想計算機上の論
理アドレスからなるキイと該論理アドレスに対応する仮
想−[寞機上の絶対アドレスからなるデータとの組を1
組以上記憶する第1のアドレス変換バッフ1と、仮想計
算機上の論理アドレスを実計算機上の絶対アドレスに変
換するための、仮想計算機上の論理アドレスと該仮想計
算機を識別する計算MA繊態別番号からなるキイと該論
理アドレスに対応する実計算機上の絶対アドレスからな
るデータとの組を1組以上記憶する第2のアドレス変換
バッフ1と會有し、ある仮想計算機が制御を与えられる
時点懇その仮想tllLmのためにあらかじめ定められ
ている領域にある初期化あるいは退避されていたアドレ
ス変換情報を第1のアドレス変換バッフ1に格納し、そ
の仮5Itix機が制御をとりあげられる時点で第1の
アドレス変換バψ)1の内容を上記あらかじめ定められ
た領域に退避し、仮想計算機上のプログラムの実行に伴
なう#1埋アドレスを実計算機上の絶対アドレスに変換
する際、実行計算機識別子保持手段の保持する計算機識
別子を伴なう該論理アドレスが第2のアドレス変換バッ
フ1にない場合第1のアドレス変換バーフ1から該論理
アドレスに対応する仮想計算機上の絶対アドレスが得ら
れればこの絶対アドレスとあらかじめ実主記憶上に存在
し錬仮想計算機の絶対アドレスを実計算機上の絶対アド
レスに変換するアドレス変換表とを用いて得られる該細
塊アドレスに対応する実計算機上の絶対アドレスと王制
計算機織千金及び該論理アドレスとの3つ組を第2のア
ドレス変換バッフ1に登録しもって仮想計算機上の論理
アドレスを実計算機上の絶対アドレスに変換することを
特徴としている。
以下に図面を参照しながら本発明の実施例について説明
する。
第2図は本発明の一実施例の構成を表わすブロック図で
ある。
10、20及び40はM1図の10.20.40と同一
である。
50は第1のアドレス変換バッファで51 か仮想計算
機上の論理アドレスの内のページ番号の値を保持する弔
1のページ番号フィールドで、52  がそのページの
仮想針(1)機上でのページわくの番号を保持する第l
のページわく番号フィールドである。60  は第1図
のアドレス変換バッフy 30と同一であり、この説明
では62 を第2のページ番号フィールドと称し63 
 と第2のページわく番号フξ イルドと称すること4より51.52に区別することに
する。また61は第1図の計算機識別フィールド31 
 と同じであり同様の呼び名で呼ぶこととする70  
は第1のアドレスに換バデフ1を■4論理アドレス10
  のページ番号部の値であるページ番号13ヲキイと
して引いて得られる仮想計算機上のページわく番号であ
る。
なお、VΔ喧子アドレス変換表VΔ侶子アドレス変換衣
らびに第1のアドレス変換バッフ1の内容を7<j4す
る仮想計算機ごとにあらかじめ定められた退避領域は第
2図からは省いた。
次に動作について説明する。仮想計算mK制御をわたす
時点で集村計算機織千金保持手段加にその仮想計算機の
計算機識別子をセットしこの仮想計算機のためKあらか
じめ定められた領域に退避または初期化されていた情報
を第1のアドレス変換バッフylc格納する。仮想計算
機上のプログラムの実行に伴なうVM@理アドアドレス
10は第2のアドレス変換バフフy60 中にVM陶理
アドレス10 のアドレス変換情報があれば第2のアド
レス変換バVフy 60の第2のページわく番号フィー
ルド63 から得られるページわく番号64とVM論場
アドレス】0のページ内アドレス部】2 の値であるペ
ージ内アドレス14  とを図のようにならべて実計算
機上の絶対アドレスに変換する。
fg2のアドレス変換バッフ760中にVM論理アドレ
スlOのアドレス変換情報がない場合には第1のアドレ
ス変換バッファ50 を使用する。すなわちVM論理ア
ドレス10  のページ番号部11の値であるページ番
号13 をキイにして第1のアドレス変換パVフ150
 を引く。キイ13  と一致するエントリーがあれば
そのエントリーの第1のページオつく番号フィールド5
2 から仮想針3I機上のページわく番号70  と絖
み出す。このページわく番号70 でこの仮想計算機の
&想主記憶に対応するVMSアドレス変換表を引いて得
られる実計n<=上のページわく番号とUM倫理アドレ
ス100ページ内番号部のイ直であるページ内アドレス
14とをならべると実計Ha上の絶対アドレスが得られ
る。もし第1のアドレス変換バッフ150上にもvM@
理アドアドレス10アドレス変換情報がない場合洟述す
るように(非常にまれである)にはV&lアドレス変3
m4を引いて仮想針!V磯上のページわく番号70を得
(この時点でVM論理アドレス]0 のページ番号部の
値であるページ番号13と得られた仮想計算機上のペー
ジわく番号とをwJlのアドレス変換バッフ150 に
登録しておく。)さらにこのページわく番号70 k使
ってVMSアドレス変換茨會引いて実計算機上のページ
わく番号をイムる。こうして得られた実計算機上のペー
ジわく番号とページ内アドレス14 とをならべればV
M論理アドレス10  K対応する実計算機上の絶対ア
ドレスが得られる。この時に得られた実計算機上のペー
ジわく番号と■i論理アドレス10  のページ番号1
1と笑行計算機識別子保持手段20の保持する計算機識
別子を第2のアドレス変換バヴフ150  に登録する
ことはいうまでもない。
この仮想計算機から制御がうばわれる時点で、第2のア
ドレス変換バッフ160の内容をこの仮想計算機のため
にあらかじめ定められたMfJ ti退避領域に退避す
る〇 仮想計算機上でその仮想計算機のアドレス変換バ、フ1
から全てのアドレス焚換情報を消去する命令が実行され
た場合、第1及び第2のアドレス変換バッフy 50.
60のエントリーのうち次の条件を満たすエントリーを
無効化する。
・第1のアドレス変換バッフ150のエントリー全ての
エントリー ・第2のアドレス変換バ、・フ160のエントリー計算
楡識別フィールド61  に実行針′14−機識別子株
千金段20 の保持する計算機識別子と同一のものを保
持する全エントリー 仮想計算機上でその仮想it計算機アドレス変換バッフ
1から特定のページのアドレス変換情報と消去する命令
が実行された場合、第1及び第2のアドレス変換バッフ
y 50.60のエントリーのうち次の榮件を満たすエ
ントリーを無効化する。
・第1のアドレス変換バッフy 50 のエントリー第
1のページ番号フィールド51  に上記特定のページ
を表わすページ布上を保持するエントリー ・第2のアドレス変換バッフy60 のエントリーAn
−T−iaav イールド61  に実行計算機識別子
保持手段20の保持する計算機識別子と同一のものを保
持しかつ第2のページ番号フィールド62  にJj1
6%”1lf)”−ジを宍わずページ番号を保持するエ
ントリー 仮想計算機と制御する実計算機上のプログラムがある仮
想!l″を算機に割りつけている実計31機上のページ
わく内の情報を二次記憶にはき出した場合は第2のアド
レス変換バッフy60 のエントリーのうち次の条件を
満たすエンド!J−’に無効化する。
・計算機識別フィールド61  に実行計算機識別子保
持手段加の保持する計算機識別子と同一〇ものを保持す
る全てのエントリー 仮想計算機を生成する時点では第2のアドレス変換バッ
フy60  のエントリーの内生成する仮想計算機に与
えられる計算機識別子と同一のものを計算機識別フィー
ルド61  にもつすべてのエントリーを無効化する。
本実施例においては、仮想計算機のページサイズと実計
算機のページサイズ回−であるとしたが仮想計算機のペ
ージサイズが実計算機のページサイズよりも大きい場合
にも本発明の適用が可能であることは明らかである。
本実施例の説明においてはアドレス変換バッフ1は通常
連想メモリと呼ばれている素子を用いて5N現されてい
ることを想定しているが本来キイを与えてデータを得る
ことができればよいのであって必ずしも連想メモリ素子
でなければならないというようなことはなく、一般に行
なわれているような通常のランダムアクセスメモリ素子
を用いるセットアソシアティブ方式と呼ばれている方式
を用いてもかまわない。
このようにすることにより第4のアドレス変換バッフ1
は実行中の仮想計算機のための情報をもつことになりか
つ別の仮想計算機の実行によりて変化することもないの
で第1のアドレス変換バ!71のヒツト率は一般の計算
機システムのアドレス変換バッフ1のヒツト率と同じく
らい高くすることができる。よって第2のアドレス変換
バッフ1中にPjr望のアドレス変換情報がない場合で
もほとんどの場合第1のアドレス変換バッフ1にはアド
レス変換情報がある。そういうわけで第2のアドレス変
換バシフ7上にアドレス変11Lhl報がない揚付のア
ドレス変換はほとんどの場合、実主記憶上のVMSアド
レス変換表をひくだけで行なうことかでさ、オーバーヘ
ッドとなりでいた仮想計算機の王記憶上にあるVMアド
レス変換表をひかずに一ツーむのでオーバーヘッドか小
さくてすむようになるO なお第2のアドレス変換バッフ1にあるアドレス変換情
報のうち制御をうばわれる仮想計算機のためのアドレス
変換情報だけを退避することが考えられるが退避したア
ドレス変換情報の中にあるページに与えられていた実計
算機上のページわく皐 が他の仮想計算機に与えられるなどすると退避しアドレ
ス変換情報をしらへて消去しなければならなくなるので
オーバーヘッドが大きく実用的でないことを付は加えて
おく。
【図面の簡単な説明】
第1図は従来のアドレス変換の方法を説明するためのブ
ロック図、落2図は本発明の一実施例のブロツク図であ
る。

Claims (1)

  1. 【特許請求の範囲】 仮想記憶を提供する1つ以上の仮想的な計算機を実現す
    る仮想計算機システムにεいて、 1ltlj碑を得て
    いる仮想計算機を誠別するための計N機織別千金保持す
    る集村計@憬鑓千金保持手段と、仮想計算機上の論理ア
    ドレスを仮想計算機上の絶対アドレスに変換するだめの
    、仮想i1算慎上の論理アドレスからなるキイとg =
    48!アドレスに対応する仮AFJIt k機上の絶対
    アドレスからなるデータとの組を1組以上記憶する第l
    のアドレス変換バ・フッと、仮想計算世上の爾埋アドレ
    ス會央「「算愼上の絶対アドレスに1侠するための、&
    心1其憬上の@埋アト【/スと該仮想計算機を鍼別)゛
    る酊算機猷千金とZ′I)らなるキイと該−塩アドレス
    に対応する夾l!It袴搏上の絶対アドレスからなるデ
    ータとの組を1組以上記憶するaI、2のアドレス変換
    バッフとを有し、ある仮想計算機が制御を与えられる時
    点でその仮想計算機のためにあらかじめ定められている
    領埴にある初期化あるいは退避されていたアドレス交換
    情報を第1のアドレス変換バッフ1に格納し、その仮想
    計算機が制御をとりあげられる時点で第1のアドレス変
    換バッフ1の内8に上記あらかじめ定められた執域に退
    避し、仮想計算機上のプログラムの集村に伴なうt?J
    理アドアドレス計算機上の絶対アドレスに変換する際、
    笑行Ht算機識別子保持手段の保持する計算機識別子を
    伴f、xう該@mアドレスが第2のアドレス変換バッフ
    1にない場合弗1のアドレス変侠バ・フ7から践論理ア
    ドレスに対応する仮想計算機上の絶対アドレスが得られ
    ればこの絶対アドレスとあらかじめ実主記憶上に存在し
    咳仮想計′J!#機の絶対アドレスを実計算機上の絶対
    アドレスに変換するアドレス変換衆とを用いて得られる
    該−塩アドレスに対応する実計算機上の絶対アドレスと
    上hピ計典f!kM千金及び該1iiilf&アドレス
    との3つ組を第2のアドレス変換バッファに登録しもつ
    て仮想計算機上の論埋アドレスを実計算機上の絶対アド
    レスに変換することを特徴とする仮想lIt算機のアド
    レス変換方式。
JP56165349A 1981-10-16 1981-10-16 仮想計算機のアドレス変換方式 Granted JPS5868285A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56165349A JPS5868285A (ja) 1981-10-16 1981-10-16 仮想計算機のアドレス変換方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56165349A JPS5868285A (ja) 1981-10-16 1981-10-16 仮想計算機のアドレス変換方式

Publications (2)

Publication Number Publication Date
JPS5868285A true JPS5868285A (ja) 1983-04-23
JPH0235336B2 JPH0235336B2 (ja) 1990-08-09

Family

ID=15810663

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56165349A Granted JPS5868285A (ja) 1981-10-16 1981-10-16 仮想計算機のアドレス変換方式

Country Status (1)

Country Link
JP (1) JPS5868285A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60171552A (ja) * 1983-12-14 1985-09-05 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション アドレス変換処理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60171552A (ja) * 1983-12-14 1985-09-05 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション アドレス変換処理方法
JPH0458056B2 (ja) * 1983-12-14 1992-09-16 Intaanashonaru Bijinesu Mashiinzu Corp

Also Published As

Publication number Publication date
JPH0235336B2 (ja) 1990-08-09

Similar Documents

Publication Publication Date Title
WO1997014084A3 (en) Virtual memory system with local and global virtual address translation
CN101872316A (zh) 体系结构事件期间维持处理器资源
JPH08272692A (ja) 仮想アドレス変換方法
US6427162B1 (en) Separate code and data contexts: an architectural approach to virtual text sharing
CA1262287A (en) Explicit instructions for control of translation lookaside buffers
JPH0357046A (ja) 仮想記憶アドレス空間アクセス制御方式
JPS5868285A (ja) 仮想計算機のアドレス変換方式
JPH02292648A (ja) 多重仮想記憶システムおよびアドレス制御装置
JP2933628B2 (ja) 主記憶装置管理方法および計算機システム
JPS5853075A (ja) 高速分離バツフアを備えた情報処理装置
JP2635310B2 (ja) アドレス変換装置
JPH0552539B2 (ja)
JPH03147039A (ja) データ処理システムのアドレス変換装置
JP2612173B2 (ja) 仮想計算機
JPS5858752B2 (ja) アドレス変換装置
JPS589452B2 (ja) フア−ムウエアホウシキ
JP2555461B2 (ja) キャッシュメモリシステム
JPS63269242A (ja) アドレス変換方式
JPS619739A (ja) アドレス変換回路
JP2502811B2 (ja) 物理キャッシュ装置
JPH07117918B2 (ja) データ処理システム
JPS61246850A (ja) バツフア記憶制御方式
JPS6324337A (ja) キャッシュ・メモリ管理方式
JPH06309237A (ja) 主記憶キー格納方式
JPS626350A (ja) Tlb制御装置