JPH04155533A - 仮想計算機制御方式 - Google Patents

仮想計算機制御方式

Info

Publication number
JPH04155533A
JPH04155533A JP28137190A JP28137190A JPH04155533A JP H04155533 A JPH04155533 A JP H04155533A JP 28137190 A JP28137190 A JP 28137190A JP 28137190 A JP28137190 A JP 28137190A JP H04155533 A JPH04155533 A JP H04155533A
Authority
JP
Japan
Prior art keywords
virtual machine
memory
saving
virtual computer
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
JP28137190A
Other languages
English (en)
Inventor
Sukeyuki Uchiumi
内海 祐之
Aiichiro Inoue
愛一郎 井上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP28137190A priority Critical patent/JPH04155533A/ja
Publication of JPH04155533A publication Critical patent/JPH04155533A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔概要] 本発明は、実計算機上に複数の仮想計算機を実現する方
式に関し、 低速な主記憶へのアクセスをすることなく高速に仮想計
算機資源を退避、復元することを目的とし、 中央処理装置と、主記憶とを持つ実計算機上で複数の仮
想計算機を実現する方式において、仮想計算機および仮
想計算機制御プログラムが保持している制御情報等を退
避するための高速アクセス可能な退避メモリが備えられ
、退避メモリは仮想計算機番号により指定され、退避メ
モリに仮想計算機および仮想計算機制御プログラムが保
持している制御情報等を退避すると共に、退避メモリよ
り復元をすることにより仮想計算機間における状態遷移
を行うことを特徴とする仮想計算機制御方式。
〔産業上の利用分野〕
本発明は、実計XI!上に複数の仮想計算機を実現する
方式に関する。
実計算機上に複数の仮想計算機を実現するためには、実
計算機上に二つの状態が設定される。
一つは、仮想計算機が動作する状態でVMa′態と呼ば
れる。他方の状態は仮想計算機を制御する状態でT(Y
PER状態と呼ばれる。VM状態で発行された命令や割
込みがVM状態で処理できない場合には、HYPER状
態へと遷移が移行し仮想計算機制御プログラムによりシ
ミニレートが行われる。HYPER状態における仮想計
算機制御プログラムが処理を終了すると、VM状態状態
へと遷移しVM状態での処理が続けられる。
従来の仮想計算機制御方式では、仮想計算機あるいは仮
想計算機制御プログラムの各種レジスタ等の制御情報(
以下、資源と呼ぶ)は、主記憶に退避するようにしてい
た。
例えば、VM状態状態からHYPER状態への遷移の場
合には、現在勤作中の仮想計算機の資源を、主記憶の特
定の領域へ退避し、主記憶の特定の領域に格納されてい
る仮想計算機資源プログラムの資源をCPUへ復元し、
HYPER状態を設定するようにしていた。
そのため、従来の仮想計算機制御方式では、状態遷移に
おける資源の退避、復元の度に主記憶へのアクセスを必
要とし、オーバヘア)の大きい非能率的なものであった
本発明は、低速な主記憶へのアクセスをすることなく高
速に仮想計算機資源を退避3復元することを目的とする
〔従来の技術] 第6回〜第8図により従来の仮想計算機制御方式を説明
する。
第6図は、仮想計算機における状態遷移回である。
61はVM状態、62はHYPER状態を示す。
図示の火付の番号に従って説明する。
■ VM状態61において処理不可能な命令や割込みも
くはタイムアウト等が発生すると、そのことが仮想計算
機制御プログラム(図示せず)に報告される。
■ 仮想計算機プログラムは、仮想計算機資源の退避を
開始し、終了するとHYPER資源の復元がなされる。
■ HYPER状態において、仮想計算機制御プログラ
ムは制御がわたされた原因となった処理を認識し、それ
に対応した処理を開始する。
■ HYPER状態における必要な処理が終了する。
■ HYPER状態の退避を行う。
■ VM状態が復元され、仮想計算機上での処理が続行
される。
第7図は、従来の仮想計算機制御方式を示す。
図(a)において、71は中央処理袋ff(CPU)、
72はバッファ記憶であって、キャッシュメモリよりな
るものである。73は主記憶(MSU)であって、仮想
計算機制御プログラム(HYPER)退避領域と仮想計
算機(VM)退避領域を含むものである。
73゛は)(YPER退避領域、73’−1〜73″−
nは、仮想計算機((VMI)退避領域、仮想計算機2
 (VM2)退避領域、仮想計算機n(VMn)退避領
域である。
図(alは仮想計算機制御プログラム(HYPER)と
n個の仮想計算機(VMI〜VMn)が動作しているシ
ステムを示す。
仮想計算機■が退避する場合について、図(a)の動作
説明をする。
VM状態からHYPER状態への遷移が必要になると仮
想計算機Iは仮想計算機制御プログラムへ報告を行い、
仮想計算機制御プログラムが仮想計算機Iの資源の退避
を開始する。(仮想計算機が退避前に使用していた制御
情報が格納されている)。
まず、CPU71内のレジスタ等の内容が読み出され、
主記憶へ(73)格納するため、バッファ記憶(72)
がアクセスされる。
バッファ記憶(72)がヒントすると、バッファ記憶(
72)への書き込みが行われ、さらに、主記憶記憶(7
3)への書き戻しが行われる。バッファ記憶(72)が
ミスヒツトの場合には退避領域の主起t!(73)の内
容がブロックフェッチされて、バッファ記憶(72)へ
格納される。そこで、再度バッファ記憶(72)がアク
セスされてバッファ記憶(72)に退避データが書き込
まれ、主記憶(73)におけるVMI退避領域73゛−
1に書き戻され、仮想計算機Iの退避が終了する。
主記憶(73)への仮想計算機Iの退避が終了すると、
HYPER退避領域からの資源の復元が開始される。
HYPER退避領域73′に格納されている内容を読み
出すために、まず、バッファ記憶(72)がアクセスさ
れる。バッファ記憶(72)がヒツトするとバッファ記
(t(72)に退避されていた値が読み出され、対応す
るレジスタへ書き込まれる。バッファ記憶がミスヒント
した場合には主記憶ヘブロノクフエノチ要求がだされH
YPER退避領域73゛の内容がバッファ記憶72へ格
納され、再度バッファ記憶72がアクセスされ、必要な
値が読み出されて復元される。
HYPER退避領域73゛に退避されていた資源の復元
が完了すると仮想計算機制御プログラムは制御がわたさ
れた原因となった処理を認識し、それに対応した処理を
開始する。
HYPER状態において必要な処理が終了すると、前述
の処理と同様な処理により、HYPER状態からVM状
態へとi1!移し、仮想計算機1の処理が続行される。
第7図(b)は、仮想計算機ごとにバッファ記憶を分割
した場合を示す。
図において、75−1〜75−n、77はセレクタ(S
EL)である。
76−1〜76−〇は各仮想計算機対応に分割したバッ
ファ記憶である。
中央処理装置(CPU)74、主記憶(MSU)78は
図(a)におけるものと同しである。
図において、CPUは主記憶78のアクセスに際して、
論理アドレスを動的アドレス機構により物理アドレスに
変換し、物理アドレスによりアクセスする。同時に、4
5.1!’、3+算機番号をバッファ記憶制御ユニット
(図示せず)に出力し、仮想計算機番号によって選択さ
れたバッファ記憶(76−1〜76−n)の中で一致し
たときのみバッファ記憶がヒントしたとみなす。
このような構成において、VM状態におけるHYPER
用バッファの書換えは行われていないときで、VM状態
からHYPER状態への状態遷移においてはHYPER
用のバッファ記憶(76−1〜76−n)の中には前回
使用した資源が必ず保存されている。そのため、HYP
ER状態の復元においては、ミスヒツトすることなく高
速に行える。しかし、これに先立って行われるVMの資
源の退避においては、VM走行中にバッファ記憶(76
−1〜76−n)の置き換えが行われることがあるため
に、バッファ記憶が常にヒントするとは限らず、主記憶
へのアクセスが必要になる場合を生じる。
第8図に従来の仮想計算機制御における退避、復元のフ
ローを示す。
図において、80はVM状態、80゛はHYPER状態
である。
図示の番号に従ってフローを示す。
81  VM状態における退避が開始され、全資源が退
避されたか判断する。退避が全て終了したら86へ進む
。全ての退避が終了していなければ、82へ進む。
82 バッファ記憶へアクセスする。
83 ハンファアクセスがヒントしたか判断する。ヒツ
トすれば85へ進む。ヒツトしなければ84へ進む。
84 主記憶から退避領域のブロックフェッチをしてバ
ッファ記憶に格納する。そこで、再度82のバッファ記
憶アクセスを繰り返す。
8583においてヒツトすればVMJ[を主記憶に格納
し、81以降の処理を繰り返す。
8681でVM状態おける全資源退避が終了すると、H
YPER責源の復元を開始する。
HYPER資源の格納が全て終了すると、HYPER状
態における処理が開始される。
全資源の復元が終了していなけれは、87へ進む。
87 バッファ記憶へアクセスする。
88 ヒツトすれば、90へ進む。ヒツトしなければ8
9へ進む。
89 主記憶からHY P E Ru域のプロ、クフェ
ノチを行い、バッファ記憶へ格納する。そこで再度、バ
ッファ記憶アクセスを行う。
9088でヒツトすれば、HYPER資源を主記憶へ格
納し、86以降の処理を繰り返す。
〔発明が解決しようとする課題〕
従来の技術においては、状態遷移における退避、復元の
度に、主記憶へのアクセスをa、要とし、オーバヘッド
の大きいものであった。
本発明は、状B遷移において、主記憶にアクセスするこ
となく仮想計算機資源を退避、復元することにより、状
態遷移に必要な時間を短縮することを目的とする。
〔課題を解決するための手段〕
本発明は、物理アドレスによってアドレス指定されるバ
ッファ記憶および主記憶とは独立に、仮想計算機番号に
よってアドレス指定される高速アクセス可能なメモリを
実計算機上に設け、仮想計算機および仮想計算機制御プ
ログラムの資源の退避、復元を行うようにした。
第1図に本発明の基本構成を示す。
図において、1は中央処理装置 (CPU) 、2は動
的アドレス変換機構(DAT)であって、論理アドレス
を物理アドレスに変換するものである。
3はバッファ記憶であって、キャッシュメモリ(CAC
HE)よりなるもの、4は主記憶(MSU)、5は退避
メモリであって、仮想計算機(■M1〜VMn)および
仮想計算機制御プログラム(HYPER)の退避領域、
6は仮想計算機番号及び仮想計算機資源オフセントであ
る。
〔作用〕
第1図の基本構成の動作を説明する。
例えば、仮想計算機r(VMI)の動作中に7M状態で
処理できない命令および割込みが認識されると、仮想計
算機■は仮想計算機制御プログラムに報告する。報告を
受けた仮想計算機制御プログラムは仮想計算機■の資源
であって中央処理装置IにおけるP S W (Pro
gram 5tatus Word )、 EG (G
eneral Regster)、 AR(Acces
s Register)。
F P R(Floating Po1nt Regi
ster) CR(Contr。
l Register  ) 、  P R(Pref
ix Register)、  CK(Ti+we−o
f−day C1ock)、  CK C(C1ock
 Coll1parator)、 P T (CPU 
Timer)の内容を読み出す。そして、退避メモリ5
におけるVMI退避領域に格納する。
退避が終了すると、仮想計算機制御プログラムの動作環
境を設定するために、退避メモリ5のHYPER領域に
退避していた資源を中央処理装置1へ読み込み、対応す
るレジスタ等へ復元する。
復元が終了すると、仮想計算機制御プログラムは制御が
渡された原因となった処理を認識し、それに対応した処
理を開始する。
必要な処理が終了すると、制御プログラムは自分が使用
していた資源を退避メモリ5のHYPER退避領域に書
き込み、仮想計算機1の資源を退避メモリ5のVMI退
避領域から読み出し、中央処理装置1のレジスタ等への
復元を行い、仮想計算機Iへ制御を返す。
退避メモリ5における各資源の退避および復元には仮想
計算機番号、仮想計算機資源オフセット6によりアドレ
スを指定する。
なお、第1図に構成においては、動的アドレス変換機構
(DAT)2が備えられているが、主記憶主記憶(MS
U)4へのアクセスは論理アドレスにより行う場合もあ
る。
第2図により、本発明における退避、復元のフローを示
す。
図において、20はVM状態、20“はHYPERa’
態である。
VM状態からHYPER状態へ遷移する場合について、
図示の番号に従ってフローを説明する。
21 全VM資源の退避が終了したか判断する。
終了していれば23へ進み、終了していなければ22へ
進む。
22  VM資源をVM退避領域に格納し、21以降の
処理を繰り返す。
23 全VM資源の退避が終了すると、HYPER資源
の復元を開始する。そして、全HYPER状態資源が復
元されるとHYPER状態が設定される。復元が終了し
ていない場合には、24に進む。
24  HYPER資源をHYPER格納領域に格納し
、23以陳の処理を繰り返す。
第3図は、本発明における退避メモリへのアドレス計算
方法を示す。
図において、31は仮想計算機番号、32は仮想計算機
資源オフセット、33は仮想計算機番号と仮想計算機資
源オフセットを加算して得られる仮想計算機資源格納ア
ドレスである。
34は退避メモリ、35は退避メモリ34のアドレスで
あって、仮想計算機番号0.1〜Nと仮想計算機質im
(pswo、pswl、cRo等)のオフセットにより
定められるものである。
図は、仮想計算機番号nにおける各仮想計算機資源(P
SWI、PSW2等)のオフセットにより定められたそ
れぞれの資源のアドレスを示す。
本発明においては、主記憶4には仮想計算機および仮想
計算機制御プログラムの資源の退避領域は設定されない
。そのため、仮想計算機ンステムにおいて、VM状態と
HYPER状態の遷移ムこおける退避、復元が主記憶4
にアクセスされることなく、高速な退避メモリにのみア
クセスすればよいので、状態遷移を高速に行うことがで
きる。
〔実施例1] 第4図は、本発明における退避メモリをCPUに構成し
た場合の実施例を示す。
図において、40はCPU、41はCPU40における
I−ユニットであって、各種レジスタ類を備える部分で
ある。42はE−ユニットであって、演算領域である。
43はS−ユニットであって、キヤノンユメモリ等のハ
ソファ記憶領域であるもの、44はMSU(主記憶)で
ある。
45はレジスタツク(RGSTK)であって、各種レジ
スタ備えるものである。46は退避メモリ、49は資源
アドレスを設定した領域であって、仮想計算機資源であ
るレジスタのオフセット値をもつ領域、47は読み出し
バス、48は書き込ミハスである。
仮想計算機の資源であるレジスタ類はレジスタツク(R
GSTK)45に備えられている。
退避メモリ46の各HYPER領域、VM領領域、レジ
スタツク(RGSTK)45への書き込みのために書き
込みハス48を介して送られてくるデータを同時に受け
とり、それぞれの領域の常に更新された新しい値を保持
している。
また、仮想計算機の資源を復元する場合には、読み出し
バス47を通して退避メモリ46に保存されているデー
タを読み出し、書き込みハス48を介して、レジスタツ
ク(RGSTK)45へ書き込み、VM状態もしくはH
YPER状態を復元する。
退避メモリ46ヘアクセスするアドレスは仮想計算機番
号と仮想針X機資源オフセット(資源頭載アドレス49
)により生成される。
[実施例2] 第5図により本発明の実施例2を説明する。
回は、バッファ記憶(キヤ、ツユメモリ)の領域の一部
を退避メモリ専用に固定して使用する場合を示す。
通常バッファ記憶は、玉記憶(MSU)の異なる複数の
領域のコピーを保持するためにウェイと呼ばれるブロッ
クに分割されている。本実施例は、この複数のウェイの
中の1つを退避メモリ専用に用いるようにした。
図において、50はcpu、51は■−ユニント、52
はE−ユニット、53はS−ユニ、トであって、バッフ
ァ記憶(キヤ、ツユメモリ)を備えるもの、54はMS
U (王記憶)である。
55は資源アドレスを保持している領域、56は論理ア
ドレスを保持している領域、57は動的アドレス変換機
構(DAT)である。
59−1〜59−nはバッファ記憶であって、n個のウ
ェイ0.ウェイ1.・・・・・・ウェイnに公害されて
いるものである。
本発明においては、例としてウェイ0(59−1)を退
避メモリ専用に使用する。
ウェイOは他のウェイと異なり、MSU (主記憶)の
コピーは保持しないため主記憶との接続は不要である。
状態遷移に際して、I−ユニットから資源の迂避を示す
信号とデータが送られてくる。この時、S−ユニットは
この信号を受取りI−ユニットへ八・ノファヒノトを示
す信号を返し、ウェイ0を選択してデータを退避させる
(バッファは必ずヒヮトする)。I−ユニ、トから次に
I−ユニ、トから資源を復元させるための信号が送られ
てくるとS−ユニットはこの信号を受取I−ユニントヘ
バソファ記憶のヒントを示す信号を返し、ウェイ0をウ
ェイにおいて選択要求されているデータをI〜ユニット
へ送る。
退避メモリとして使用するバッファ記憶(59−1)へ
のアクセスに必要なアドレスは仮想計算1  1m番号
と仮想計算機資源オフセ・ト(資源アドレス)により生
成する。
〔発明の効果〕
本発明によれば、仮想計算機ノステムニこおいてVM状
態とHYPER状態の遷移5二おける仮想計算機資源の
退避、復元を、主記憶に7クセスすることなく行うこと
ができる。そのため、状態遷移を高速に行うことができ
、仮想計算機システムの処理が高効率化される。
【図面の簡単な説明】
第1図は、本発明の基本構成を示す図である。 、   第2図は、本発明における退避・復元のフロー
を示す図である。 第3図は、本発明におけるアドレ計算方法を示す図であ
る。 第4図は、本発明の実施例(1)を示す圀である。 第5図は、本発明の実施例(2)を示す図であ第6図は
、仮想計X機における状B遷移図である。 第7図は、従来の仮想計算機制御方式を示す図である。 第8図は、従来の退避・復元のフローを示す図である。 第1図において、 1 :中央処理装置、 2 :動的アドレス変換機構(DAT)、3 :バッフ
ァ記憶(キャンシュメモリ)、4 :主記憶(MSU)
、 5 :退避メモリ、 6 :仮想計算機番号、仮想計算機オフセット。

Claims (1)

    【特許請求の範囲】
  1. 中央処理装置(1)と、主記憶(4)とを持つ実計算機
    上で複数の仮想計算機を実現する方式において、仮想計
    算機および仮想計算機制御プログラムが保持している制
    御情報等を退避するための高速アクセス可能な退避メモ
    リ(5)が備えられ、退避メモリ(5)は仮想計算機番
    号により指定され、退避メモリ(5)に仮想計算機およ
    び仮想計算機制御プログラムが保持している制御情報等
    を退避すると共に、退避メモリ(5)より復元をするこ
    とにより仮想計算機における状態遷移を行うことを特徴
    とする仮想計算機制御方式。
JP28137190A 1990-10-19 1990-10-19 仮想計算機制御方式 Pending JPH04155533A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28137190A JPH04155533A (ja) 1990-10-19 1990-10-19 仮想計算機制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28137190A JPH04155533A (ja) 1990-10-19 1990-10-19 仮想計算機制御方式

Publications (1)

Publication Number Publication Date
JPH04155533A true JPH04155533A (ja) 1992-05-28

Family

ID=17638192

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28137190A Pending JPH04155533A (ja) 1990-10-19 1990-10-19 仮想計算機制御方式

Country Status (1)

Country Link
JP (1) JPH04155533A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7191441B2 (en) 2001-08-06 2007-03-13 International Business Machines Corporation Method and apparatus for suspending a software virtual machine
JP2008140116A (ja) * 2006-12-01 2008-06-19 Nec Corp パーティション・コンテキスト制御装置及び方法、並びにコンピュータ
JP2010134496A (ja) * 2008-12-02 2010-06-17 Hitachi Ltd 仮想計算機システム、仮想計算機システムにおけるハイパバイザ、及び仮想計算機システムにおけるスケジューリング方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7191441B2 (en) 2001-08-06 2007-03-13 International Business Machines Corporation Method and apparatus for suspending a software virtual machine
JP2008140116A (ja) * 2006-12-01 2008-06-19 Nec Corp パーティション・コンテキスト制御装置及び方法、並びにコンピュータ
JP2010134496A (ja) * 2008-12-02 2010-06-17 Hitachi Ltd 仮想計算機システム、仮想計算機システムにおけるハイパバイザ、及び仮想計算機システムにおけるスケジューリング方法

Similar Documents

Publication Publication Date Title
JP3239218B2 (ja) キャッシュ管理システム
US5347634A (en) System and method for directly executing user DMA instruction from user controlled process by employing processor privileged work buffer pointers
US7228389B2 (en) System and method for maintaining cache coherency in a shared memory system
US5555395A (en) System for memory table cache reloads in a reduced number of cycles using a memory controller to set status bits in the main memory table
JPH03217963A (ja) マルチプロセッサ・システムおよびそのプライベート・キャッシュ制御方法
JPS6122825B2 (ja)
JPH04219852A (ja) 直接メモリアクセスを行うためのインターフェース装置及び方法
CA1234639A (en) Ports zone control
JPH04242848A (ja) 走行モード別キャッシュメモリ制御方式
JPH0519176B2 (ja)
JPH04155533A (ja) 仮想計算機制御方式
JPH07105091A (ja) キャッシュの制御装置および制御方法
JPH0793221A (ja) 仮想計算機システム及びその制御方法
JPH0552539B2 (ja)
JP3039391B2 (ja) メモリシステム
JP2972451B2 (ja) ハードウェア制御ソフトウェアによるキャッシュメモリ制御方式
JPH057740B2 (ja)
JPH02238490A (ja) 画像処理装置
JPH07152650A (ja) キャッシュ制御装置
JP2923273B2 (ja) データ処理システム
JPS6275850A (ja) マイクロ命令実行制御方式
JPH0728701A (ja) 計算機システム
JPH07191910A (ja) キャッシュメモリ制御方法
JPH01233536A (ja) キャッシュメモリ書込み装置
JPH02259945A (ja) ストア処理方式