JPH02206841A - 仮想計算機システム - Google Patents

仮想計算機システム

Info

Publication number
JPH02206841A
JPH02206841A JP1025891A JP2589189A JPH02206841A JP H02206841 A JPH02206841 A JP H02206841A JP 1025891 A JP1025891 A JP 1025891A JP 2589189 A JP2589189 A JP 2589189A JP H02206841 A JPH02206841 A JP H02206841A
Authority
JP
Japan
Prior art keywords
interrupt
time
timer
processing
guest
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
JP1025891A
Other languages
English (en)
Inventor
Yoshiyuki Uehara
植原 良幸
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 JP1025891A priority Critical patent/JPH02206841A/ja
Publication of JPH02206841A publication Critical patent/JPH02206841A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔概 要〕 一つの計算機システムで複数のオペレーティングシステ
ムおよびその配下プログラムであるVMゲストを切替え
稼働させるために、VMゲストを時分割で切り替えるた
めのタイマ割込み機構と、該タイマ以外からの割込み要
求によりリアルタイムにVMゲストを切り替えるための
VMリアルタイム割込み機構を備える仮想計算機システ
ムに関し、 割込み要求がなされてからこの割込み要求に対する処理
が実行されるまでに前回中断した処理の残りを実行する
ために要する時間をなくすことを目的とし、 VMゲストの実行中の処理への割込み許可あるいは不許
可状態を示すマスクビットが割込みを許可しないことを
示す状態にあるときにはVMタイマ割込みを禁止するよ
うに構成した。
〔産業上の利用分野〕
本発明は、一つの計算機システムで複数のオベレーティ
ングシステム(O8)およびその配下プログラムである
VMゲストを切替え稼働させるために、VMゲストを時
分割で切り替えるためのタイマ割込み機構と、該タイマ
以外からの割込み要求によりリアルタイムにVMゲスト
を切り替えるためのVMリアルタイム割込み機構を備え
る仮想計算機システムに関する。
〔従来の技術〕
近年の計算機の性能向上により仮想計算機(7M)が実
用水準に達するようになった。これに伴いVMの有用性
が認識され、様々な分野へのVMの有効利用が図られる
ようになった。
また、仮想計算機が一般利用されるようになったことか
ら、より効率よく仮想計算機を実現し、しかもオーバヘ
ッドを削減することが要求されている。
このため、VM@御プログラムであるVMモニタを効率
よく動作させるためのVM機構が提供されているが、オ
ンライン処理やリアルタイム処理を行うシステムにVM
を適用する場合には外部事象に対する高速な割込み応答
をも実現する必要がある。
より詳細に説明すると、プロセッサシステムを動作させ
るためには一般的にオペレーティングシステム(以下、
O81という)が用いられており、特に、限られた計算
機資源をより有効に活用するためにマルチタスク処理が
O8によって実現されている。
このマルチタスク処理は、ユーザが要求する計算機処理
(ジョブ)を一連のCPU時間を与えるべきタスクの組
合せに分割することによって、このタスクを単位として
複数のジョブを切換実行することによって実現される。
O8は、このタスクの状態を管理してCPUの適切な割
当てを行なうために、主記憶上の小領域にタスクの状態
などを格納した制御ブロックをタスクごとに設けてこれ
をある順序で論理的に連結した待ち行列を作成する。
この待ち行列としては、すぐに実行可能なタスクを連結
した「実行可能待ち行列」、I10処理が終了しないと
次に進めないタスクからなる「■10処理待の待ち行列
」および他のタスクとの同期を要するために停止してい
るタスクからなる「同期待ち行列」などがある。
計算機処理の実行に際して、O8は「実行可能待ち行列
」から先頭の1つのタスクを取出してこのタスクにCP
U時間を割当てて処理を実行させる。この実行中のタス
クがO8に対してI10待ちを要求した場合にはそのタ
スクの実行を中断してこれを「■10待ち行列」につな
ぐとともに、「実行可能待ち行列」から次のタスクを取
出してCPU時間を割当てる。
このように、O8は実行可能なタスクにCPU実行時間
を割当てるが、実行可能なタスクがなくなるとプログラ
ム・ステータス・ワード(以下、PSW、という)のウ
ェイト状態ビットを“1”にしてCPUにおける命令処
理を停止してこのCPUを待機状態とする。もし、割込
みなどの処理すべきタスクが発生するとこのPSWのウ
ェイトビットを“0”に設定して動作を再開させる。
このようなO8にはその処理目的などによって異なる多
くの種類のものがあり、計算機システムの使用目的に応
じた適当なO8が選択使用されるが、近時、複数のO8
およびその配下のプログラムに対して時分割でCPU資
源を割り当てる仮想計算機システム(VM機構)が実用
化されるようになった。
この時分割での割当てを行なうために、VM機構専用の
タイマ割込み機構であるVMタイマが用意されており、
このVMタイマによって例えば20ミリ秒の一定時間間
隔で計算機に割込みが発生すると、CPUの制御は現在
実行中のO3およびその配下のプログラムであるVMゲ
ストからVMモニタに移される。なお、このVMタイマ
の割込み時間間隔は上記した20ミリ秒に限られるもの
ではなく、当該計算機システムに最適な間隔に調節され
るものであることはいうまでもない。
更に外部事象による割込み要求に高速に応答する必要が
あるシステムでは、予めこの割込み(VMリアルタイム
割込み)を処理すべきO8とその配下のプログラムであ
るVMゲストが定められており、その割込み要求が発生
した時点でこの割込みの対象となるVMゲストにCPU
時間が割り当てられていない場合にはVMタイマの割込
みを待たず即座にVMリアルタイム割込みを発生させて
VMモニタに制御を移す機構が提供されている。
ところが、VMタイマによる割込みはVMゲストの動作
とは無関係に上記のように一定時間間隔で行なわれるの
で、例えば上記のような高速応答が必要な外部事象に対
する応答処理を行っている最中にVMタイマ割込みが発
生してCPUが奪われてしまうことがある。
第4図ないし第6図は上記のような仮想計算機システム
を説明するためのもので、第4図は仮想計算機システム
の本発明に関係する内部構成を示すブロック図である。
この第4図において、命令ユニットIUはマイクロプロ
グラムを格納しているコントロール・ストレージC8あ
るいは論理レジスタデータを格納したリワーク領域に使
用されているローカル・ストレージLSからマイクロ命
令やデータを取出して解釈し、プログラムの実行を制御
するものであり、その内部には前記のpswを格納する
pswレジスタPSWRが設けられているが、このPS
Wの内容については後に詳細に説明する。
記憶制御ユニッ)SUはバス/メそり制御装置インター
フェイスIFを介して図示しないシステムバス/メモリ
制御装置に接続されており、命令ユニットIUからの命
令フェッチ要求や実行ユニットEUあるいは命令ユニッ
トIUからのオペランドフェッチストア要求を受けてそ
れを実行し、命令アドレスから命令コードを読出して命
令ユニットIUに転送したり、命令ユニットIUからの
オペランドアドレスを受けてオペランドを実行ユニット
EUに転送し、また実行ユニットEUからのオペランド
などの実行結果を上記インターフェイスIPを経て図示
しない外部記憶装置に格納するなどの処理を行なう。
なお、上記実行ユニッ)EUは演算器、シフタなどを含
んでおり、命令ユニットIUからのマイクロプログラム
の指示を受けて演算を実行するが、その実行のためにワ
ークレジスタWRが設けられている。
上記記憶制御ユニットSUにおけるアドレス変換での例
外発生時や実行ユニッ)EUにおける演算例外発生時に
はこの例外発生を命令ユニッ)IUに通知して割込みを
要求し、またバス/メモリ制御装置インターフェイスI
Fからは110割込み要求あるいは外部割込み要求が命
令ユニットrUに通知される。
一方、仮想計算機システムとして動作させるために前記
したようにVMゲストを時分割で選択的に動作させるた
めのVMタイマVTが設けられており、上記割込み要求
およびこのVMタイマVTからの割込み要求の命令ユニ
ッ1−IUに対する割込みは第5図に示すようにPSW
の制御ビットの状態に応じて制御される。
すなわち、この第5図には命令ユニットIU内に設けら
れるプログラム・ステータス・ワード・レジスタPSW
Rにおけるビット割当が示されており、このレジスタに
は図の下方から命令アドレス、主記憶アクセスキー、ウ
ェイトビット、例外マスク、外部マスク、I10マスク
および動的アドレス変換機能(Dynami(Addr
ess Translation:DAT)を制御する
ためのビットが設けられており、これらビットはO8の
指示のもとに命令ユニットIUによって書換えられる。
前記のバス/メモリ制御装置インターフェイスIFから
の110割込み要求や外部割込み要求、記憶制御ユニッ
)SUあるいは実行ユニソ1−EUからの例外割込み要
求は、上記プログラム・ステータス・ワード・レジスタ
PSWRのこれら割込みに対応して設けられてこれら割
込みが許可されている場合に“1″にセントされるビッ
トの値“0″、11″とアンド回路AI 、  Ai 
、A3によってそれぞれ論理積がとられ、その出力の論
理和をとるオア回路0を経て命令ユニット■Uに対して
割込み要求を行なう。
しかしながら、O8およびこのO8配下のブロダラムを
一定時間ごとに切換えるためのVMタイマVTからの割
込み要求については無条件で上記オア回路Oから命令ユ
ニッ)IUに送られて割込み要求が行なわれる。
命令ユニッI−IUがこの割込み要求を受けると、マイ
クロプログラムの制御の下で実行中の処理、例えば機械
語命令処理、割込み処理が終了した後に割込み処理プロ
グラムをその先頭から実行させ、この割込み処理プログ
ラムは割込みの原因を解析して各々の割込みの仕様に沿
った処理を行なう。
第6図(a)、 (b)はこの命令ユニットにおける実
行中の処理と割込みとの関係を概念的に示すタイムチャ
ートであって、同図(a)はVMタイマ以外の割込みが
ない場合の動作を示しており、7Mゲスト1の実行中に
VMタイマからの割込みがあると、−旦VMモニタに戻
って次の期間に実行されるべきO3への切換えを行い、
この切換えが終了すると他方のO8の配下にあるプログ
ラムであるVMゲスト2の実行を開始し、以下同様にV
Mタイマからの割込みがあるたびにVMゲストの切換え
が行なわれる。
同図(b)は優先度が高い7Mゲスト1が時刻1゜にお
いて太線で示したように、他からの割込みを禁止して処
理を実行しているときに時刻t2で7Mタイマからのタ
イマ割込みが行なわれた場合の動作を示すもので、この
タイマ割込みによって7Mゲスト1は実行中の処理を中
断してVMモニタに一旦戻ってからVMゲスト2の処理
を行う。
このVMゲスト2が処理を実行している期間中の時刻t
、に優先度の高い7Mゲスト1に外部事象が発生してV
¥リアルタイム割込み要求がなされると、VMゲスト2
はその処理を中断してVMモニタにCPUを渡し、この
VMモニタは上記の割込み要求をした7Mゲスト1に時
刻t4でCPUを渡す。
これによってCPUを得た7Mゲスト1はVMタイマか
らの割込みによって中断していた処理を実行し、この中
断していた処理を終了した時刻t、から時刻t、で割込
み要求されたVMリアルタイム割込みに対する処理を開
始する。
〔発明が解決しようとする課題〕
上記のように、優先度の高いVMゲストが割込み禁止の
状態で処理の実行中にVMタイマからのタイマ割込みで
CPU時間が奪われた場合その処理は中断され、再びそ
のVMゲストにCPUが割り当てられたときに残りの処
理を実行することになる。
したがって、外部事象の発生からこの外部事象に基づく
割込みの処理が開始されるまでにはt4〜t、の時間だ
け余計な待ち時間を要する。
本発明は、このように割込み要求がなされてからこの割
込み要求に対する処理が実行されるまでに前回中断した
処理の残りを実行するために要する時間をな(すことを
目的とする。
〔課題を解決するための手段〕
一つの計算機システムで複数のオペレーティングシステ
ムおよびその配下プログラムであるVMゲストを同時に
稼働させるために、VMゲストを時分割で切り替えるた
めのタイマ割込み機構と、該タイマ以外からの割込み要
求によりリアルタイムにVMゲストを切り替えるための
VMリアルタイム割込み機構を備える仮想計算機システ
ムにおいて、VMゲストの実行中の処理への割込み許可
あるいは不許可状態を示すマスクビットが割込みを許可
しないことを示す状態にあるときにはVMタイマ割込み
を禁止するように構成した。
〔作 用〕
第1図は本発明の原理を示す図であって、VMゲストが
実行中の処理の内容に応じてセット・リセットされるマ
スクビットMの値とVMタイマ機機構外らの割込み要求
との値とをアンド回路などの論理回路りによって論理演
算することによって、VMタイマからの割込み要求をマ
スクビットMの状態に応じて許可あるいは不許可にする
ようにする。
第2図(a)は従来の動作例として第6図(blに示し
たタイムチャートと同一のVMリアルタイム割込みに対
する本発明による動作例を示すタイムチャ−トであって
、動作の差異を明らかにするために第6図(b)に示し
た従来の動作例を同図(blとして再掲しである。
本発明においては、VMゲスト1が時刻t、で割込みを
禁止する処理を開始すると同時に上記のマスクビットM
を例えば“O”にセットして割込み禁止状態にあること
を示す。
上記第2図(a)を参照して、このようにマスクビット
Mが“0”であるときに時刻t2でVMタイマTから′
1ルベルの割込み要求が到来してもアンド回路として示
した論理回路りからの出力、すなわちCPUに対するV
Mタイマ割込み要求は出力されず、したがってCPUは
実行中の処理を中断することなく一連の処理をその終了
まで実行し、その処理が終了したときに上記マスクビッ
トMを“1”にセットする。
このようにマスクビットMが“1”にセットされれば、
処理の実行中にVMタイマTからのVMタイマ割込み要
求があった場合には上記論理回路りの出力は“1”にな
り、この出力はCPUを7Mモニタの処理に移し、さら
にVMゲスト2の処理に向かわせることができる。
このようにしてVMゲスト2の処理実行中の時刻t、に
優先度の高いVMゲスト1に対してVMリアルタイム割
込みが発生すると、CPUの処理はVMモニタを経てこ
のVMゲスト1に移ってこのVMリアルタイム割込みの
処理を行なうようになるが、このときにはVMゲスト1
の前回の割込み禁止を要する処理は終了しているので、
直ちにこのVMリアルタイム割込みに対する処理が実行
される。
〔実施例〕
第3図は本発明の一実施例を示すもので、VMタイマ割
込み機構に付加されるVMタイマ割込みマスク回路を示
している。
レジスタ1は現在実行中であるVMゲストの番号を保持
するレジスタであり、レジスタ2はVMリアルタイム割
込みを処理する優先度の高いVMゲスト、すなわちVM
タイマ割込みが保留されるVMゲストの番号を保持する
レジスタであり、このレジスタ1は処理するVMゲスト
を切換えるごとに書き換えられ、レジスタ2は高優先の
VMゲスト番号が変更された場合に書き換えられる。
そして比較器3においてはこれらレジスタ1゜2の内容
について常時比較が行われるが、その−致出力“1”は
現在実行中のVMゲストがVMタイマ割込みを保留すべ
きリアルタイム割込みを処理する高優先度のものである
ことを示すものとなる。
優先度が高く、VMタイマ割込みが保留されるべきVM
ゲストに対応して設けられているプログラム・ステータ
ス・ワード・レジスタ(PSWR)4には例えば110
割込み、外部割込み、バス割込みなどの割込み要求の種
類にそれぞれ対応するマスクビットが設けられており、
現在実行中のVMゲストがVMタイマ割込みを許可しな
い処理に対応するマスクビットにはO”が、またVMタ
イマ割込みを許容できる種類の処理に対するマスクビッ
トには“1”がセットされる。
リアルタイム割込みマスクレジスタ5には上記PSWR
4のマスクビットにそれぞれ対応するとともにオペレー
タなどによってセットさ札るVMタイマ割込みマスクビ
ットが設けられており、このビットを“1”にセットす
ることによってVMタイマ割込みを保留するように設定
する。
110割込みを実行中にはVMタイマ割込みを保留する
ようにVMタイマ割込みマスクレジスタ5の図で左端に
示したビット51を“1″にセントした場合を例にとっ
て具体的に説明する。
CPUが110割込みについての処理の実行中にはPS
WR4のマスクビット41はO″にセットされており、
このマスクビット4.の値が反転入力端子に供給される
アンド回路61からは■Mタイマ割込みマスクレジスタ
5のマスクビット5、の“1”との論理積として“l”
が出力され、オア回路7を経てこの出力はアンド回路8
の一方の入力端子に供給される。
このときCPUが処理しているVMゲストがこのVMタ
イマ割込みを保留すべきVMゲストであれば、処理中の
VMゲストの番号を保持するレジスタ1とVMタイマ割
込みを保留すべきVMゲストの番号を保持するレジスタ
2がそれぞれ格納している値は同一であるから、比較回
路Cからはこの一致によって“l”が出力され、上記ア
ンド回路8の他方の入力端子に供給される。
したがって、このアンド回路8の反転出力端子からは“
0”が出力されてアンド回路10を遮断状態にするので
VMタイマ機構9からのタイマ割込み要求はこのアンド
回路10によって阻止されてCPtJには供給されず、
VMタイマ割込みは生じない。
CPUがこの実行中のVMゲストの処理を終了して他の
処理を実行し得る状態になると、この110割込みも許
容し得る状態になってPSWR4のI10マスクビフト
41がl”になるので上記アンド回路6.の出力は“O
”となり、この“0”レベルの出力はオア回路7を経て
アンド回路8の一方の入力端子に供給される。
したがって、このアンド回路8の反転出力端子からは“
1”レベルにある出力がアンド回路10の一方の入力端
子に供給されてこのアンド回路10が導通状態になるの
で、VMタイヌ機構VからのVMタイマ割込み要求はこ
の第2のアンド回路10を経てCPUには供給され、V
Mタイマ割込みが発生する。
〔発明の効果〕
以上説明したように、本発明によれば、VMゲストがV
Mタイマ割込みによって中断していた処理をVMリアル
タイム割込み処理の前に実行するために生じるVMリア
ルタイム割込み応答処理の実行の遅れを防止することが
できるので、VMリアルタイム割込みに対する応答時間
を高速かつ安定に実現できるという格別な効果を達成す
ることができる。
【図面の簡単な説明】
第1図は本発明の原理を示す図、 第2図は本発明による割込み処理を従来の割込み処理と
対比して示すタイムチャート、 第3図は本発明の実施例を示す図、 第4図は本発明が適用される仮想計算機システムの例を
示す図、 第5図は従来の割込み要求の制御例、 第6図は従来の割込み処理の例を示すタイムチャートで
ある。 VMゲスト マスクビ・・Iト

Claims (1)

  1. 【特許請求の範囲】 一つの計算機システムで複数のオペレーティングシステ
    ムおよびその配下プログラムであるVMゲストを切替え
    稼働させるために、VMゲストを時分割で切り替えるた
    めのタイマ割込み機構と、該タイマ以外からの割込み要
    求によりリアルタイムにVMゲストを切り替えるための
    VMリアルタイム割込み機構を備える仮想計算機システ
    ムにおいて、 VMゲストの実行中の処理への割込み許可あるいは不許
    可状態を示すマスクビットが割込みを許可しないことを
    示す状態にあるときにはタイマ割込みを禁止するように
    したことを特徴とする仮想計算機システム。
JP1025891A 1989-02-06 1989-02-06 仮想計算機システム Pending JPH02206841A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1025891A JPH02206841A (ja) 1989-02-06 1989-02-06 仮想計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1025891A JPH02206841A (ja) 1989-02-06 1989-02-06 仮想計算機システム

Publications (1)

Publication Number Publication Date
JPH02206841A true JPH02206841A (ja) 1990-08-16

Family

ID=12178416

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1025891A Pending JPH02206841A (ja) 1989-02-06 1989-02-06 仮想計算機システム

Country Status (1)

Country Link
JP (1) JPH02206841A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008513909A (ja) * 2004-09-30 2008-05-01 インテル・コーポレーション 仮想マシンモニタに関連するタイマへのサポートを提供する方法及び装置
JP2023032307A (ja) * 2021-08-26 2023-03-09 株式会社デンソーテン 仮想化制御装置および割り込み制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008513909A (ja) * 2004-09-30 2008-05-01 インテル・コーポレーション 仮想マシンモニタに関連するタイマへのサポートを提供する方法及び装置
JP2023032307A (ja) * 2021-08-26 2023-03-09 株式会社デンソーテン 仮想化制御装置および割り込み制御方法

Similar Documents

Publication Publication Date Title
JP3776449B2 (ja) マルチタスク低電力制御装置
US5553291A (en) Virtual machine control method and virtual machine system
US6301634B1 (en) Real time control method for a robot controller
JPH0430053B2 (ja)
JPS6275739A (ja) タスク割当て方法
JPH02208740A (ja) 仮想計算機制御方式
KR20160033517A (ko) 인터럽트 컨트롤러를 위한 하이브리드 가상화 방법
KR20010070469A (ko) 고속의 낮은 오버헤드 콘텍스트 스위치를 실행하는디바이스 및 방법
US20090241112A1 (en) Recording medium recording virtual machine control program and virtual machine system
US12032983B2 (en) Method of accessing device in virtual environment
KR102003721B1 (ko) Gpu 커널 트랜잭션화 방법 및 컴퓨팅 장치
JPH02206841A (ja) 仮想計算機システム
JP2902746B2 (ja) 仮想計算機制御方式
JPH02184925A (ja) 仮想計算機システム
JP2585905B2 (ja) マルチタスク実行装置
JPS603229B2 (ja) 情報処理方式
JPH02207335A (ja) 仮想計算機システム
JPS60225944A (ja) 仮想計算機システム
JP2601359B2 (ja) 並行処理マイクロプロセッサ
JPS6313218B2 (ja)
JPH0444131A (ja) 複数os走行システムにおけるプロセッサ間通信の実行装置および方法
JPH06242975A (ja) 多重情報処理システムの仮想計算機ディスパッチ方式
JPS59125450A (ja) 仮想計算機制御方式
JPH02113363A (ja) マルチプロセッサシステムにおけるタイムスライス制御方式
JPH03116335A (ja) 非特権cpuから特権cpuヘの乗り移り方式