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

仮想計算機システム

Info

Publication number
JPH0695314B2
JPH0695314B2 JP63181288A JP18128888A JPH0695314B2 JP H0695314 B2 JPH0695314 B2 JP H0695314B2 JP 63181288 A JP63181288 A JP 63181288A JP 18128888 A JP18128888 A JP 18128888A JP H0695314 B2 JPH0695314 B2 JP H0695314B2
Authority
JP
Japan
Prior art keywords
interrupt
virtual computer
mask
input
subclass
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
JP63181288A
Other languages
English (en)
Other versions
JPH0229831A (ja
Inventor
延芳 須釜
英典 梅野
俊治 田中
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63181288A priority Critical patent/JPH0695314B2/ja
Publication of JPH0229831A publication Critical patent/JPH0229831A/ja
Publication of JPH0695314B2 publication Critical patent/JPH0695314B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、仮想計算機制御プログラム(VMCP)が行う入
出力割込み制御を効率よく行うことができる仮想計算機
システムに関するものである。
〔従来の技術〕
仮想計算機システムは、1台の計算機システムのもと
で、複数のオペレーティングシステムの併存を実現する
ためにシミュレートされる計算機システムである。この
ような仮想計算機システムでは、仮想計算機制御プログ
ラム(VMCP)が実計算機の資源を配分し、シミュレート
することにより、仮想の計算機を実現する。ここで実現
する仮想の計算機は複数個とされ、複数個の仮想計算機
(VM)のそれぞれのもとで、複数のオペレーティングシ
ステム(OS)が同時並行動作する。
従来、仮想計算機システムにおいて、実計算機システム
(ホストオペレーティングシステムが動作するシステ
ム:ホストシステム)に接続された入出力装置(IOデバ
イス)をIOデバイス単位にそれぞれのOSに専有させ、か
つ、入出力割込み(IO割込み)制御を行うためのホスト
システムが有するIO割込みサブクラスマスクをサブクラ
ス単位にそれぞれのOS(各々の仮想計算機で動作するO
S)に専有させたとき、この場合のホストシステムのIO
割込みサブクラスマスク値の決定は、特開昭60−150140
公報に記載されているように、次のように行われてい
た。すなわち、 (1)ホストシステムのサブクラスマスクが現走行VM
(OS)に専有されているとき、対応するVMのサブクラス
マスクのマスク値をセットする。
(2)ホストシステムのサブクラスマスクが現走行VM以
外のVMに専有されているとき、対応するVMのサブクラス
マスクのマスク値と現走行VMのPSW(プログラム状態
語)のIO割込みマスク値との論理積をセットする。な
お、該サブクラスマスクの割込みの遅れが問題にならな
い場合は“0"がセットされてもよい。
〔発明が解決しようとする課題〕
ところで、上述した従来における仮想計算機システムの
入出力割込み制御においては、現走行VM以外のVM(非走
行VM)上のOSが待ち状態にあるか否かにかかわらず、VM
のIO割込みマスク値が“1"で、IO割込みサブクラスマス
ク値が“1"であれば、VMCPは該VM上のOSのIO割込みを受
け付けていた。
しかし、VM上のOSが待ち状態でなければ、該VMはいずれ
スケジューリングされ、走行VMとなり、該VM上のOSのIO
割込みはハードウェアから直接OSに報告することが可能
な状態となる。この場合、VMCPが介入して該VM上のOSの
IO割込みを受け付ける必要はない。
また、非走行VM(OS)が専有するホストシステムサブク
ラスマスクに“0"をセットした場合、OSがIO割込み待ち
状態にあると、該VM上のOSは待ち状態が解除されず永久
に待ち続けることになる。このため、場合によっては仮
想計算機システムの性能が極端に低下するという問題が
あった。
本発明は、上記問題点を解決するためになされたもので
ある。
本発明の目的は、走行VM(OS)に対するIO割込みの受付
け方式を改善し、VMの性能を向上させることにある。
本発明の前記ならびにその他の目的と新規な特徴は、本
明細書の記述及び添付図面によって明らかになるであろ
う。
〔課題を解決するための手段〕
上記目的を達成するため、本発明においては、仮想計算
機制御手段の制御の下に、少なくとも1つの仮想計算機
を実現し、該仮想計算機の各々について入出力割込み全
体の許可/禁止を制御する入出力割込みマスクと、該仮
想計算機が専有する入出力装置について入出力割込みの
許可/禁止を制御する入出力割込みサブクラスマスク
と、プログラムが動作状態か待ち状態かを示す待ち状態
ビット値記憶手段とを具備し、該仮想計算機の入出力割
込みマスクと入出力割込みサブクラスマスクとに基づい
てシステム全体の入出力割込みサブクラスマスクの値を
決定する仮想計算機システムにおいて、該仮想計算機制
御手段が、走行を停止させる仮想計算機について該仮想
計算機の入出力割込みマスク値と入出力割込みサブクラ
スマスク値の待ち状態ビット値との論理積によりシステ
ム全体の入出力割込みサブクラスマスク値を決定する手
段を備え、動作状態でありかつ非走行の仮想計算機につ
いての入出力割込を、該仮想計算機制御手段が受け付け
るのを抑止するようにしたことを特徴とする。
〔作用〕
前記手段によれば、非走行VMが専有するホストシステム
のIO割込みサブクラスマスクに、マスク値として、ホス
トシステムのIO割込みサブクラスマスクに対応するVMの
IOサブクラスマスクのマスク値と該VMのIO割込みマスク
のマスク値と該VMの待ち状態ビットのビット値との論理
積を設定する。
これにより、非走行VM(OS)が専有しているホストシス
テムのIOサブクラスマスク値の決定に、OSが設定した待
ち状態ビットの値が加えられることになり、非走行VM
(OS)のIO割込みは、OSが待ち状態でかつIO割込みマス
クとサブクラスマスクでIO割込みを許可しているときの
み、VMCPが受け付けることになる。
したがって、VMCPは受け付ける必要のないIO割込みの受
付抑止を行うことができ、IO割込み待ち状態になったと
きの待ち状態解除が可能となる。
〔実施例〕
以下、本発明の一実施例を図面を用いて具体的に説明す
る。
第1図は、本発明の一実施例にかかる仮想計算機システ
ムの要部の構成を示すブロック図である。
第1図において、1は中央処理装置(CPU)、2は主記
憶装置(MS)である。また、3は入出力処理装置(IO
P)、4は入出力制御装置(IOC)、5はIOデバイスであ
る。また、10はプログラム状態語(PSW)を格納するPSW
レジスタ、10aは全IO割込みを制御するIO割込みマスク
ビット(I)、10bはプログラムの動作/待ち状態を制
御する待ち状態ビット(W)である。11はIO割込サブク
ラスマスクレジスタであり、IOデバイス単位にIO割込み
の許可/禁止を制御するためのIO割込みサブクラスマス
クを保持する32ビットのレジスタである。11aは1つのI
O割込みサブクラスマスクビットである。12はCPU側のVM
/EX機構であり、OSから発行されるIO命令実行およびIO
割込みの該OSへの報告をVMCPの介入なしに行うことを可
能にするハードウェア機構である。また、32はIOP側のV
M/EX機構である。
データ処理システムが、中央処理装置1,主記憶装置2,入
出力処理装置3,入出力制御装置4,およびIOデバイス5の
ハードウェア要素の組合せにより構成される。これらの
ハードウェア要素を用いてホストオペレーティングシス
テムが動作し、実計算機システム(ホストシステム)が
動作する。そして、この実計算機システムと同様な要素
をシミュレートして、仮想計算機システムが構成され
る。仮想計算機システムが構成される実体は、主記憶装
置2上に設定される仮想計算機用の制御データであり、
この制御データを用いてデータ処理を行う中央処理装置
の機能で仮想計算機が実現される。第1図においては、
このようにして実現される仮想計算機システムを主記憶
装置2のブロック上にブロック表示している。すなわ
ち、第1図において、一点鎖線が囲んだブロックが仮想
計算機システムを構成する要素の要部となる。
第1図に示すように、ここでは、第1の仮想計算機(VM
1)24a,第2の仮想計算機(VM2)24b,第3の仮想計算機
(VM3)24cが、各仮想計算機を制御し管理する仮想計算
機制御プログラム(VMCP)20の管理下に実現される。各
々の仮想計算機24a,24b,24cには、実計算機システムのP
SWレジスタおよびIO割込サブクラスマスレジスタの各々
と対応して、同様な仮想計算機(VM)PSWレジスタ25お
よび仮想計算機(VM)IO割込サブクラスマスクレジスタ
26が設けられる。また、各仮想計算機の入出力制御を管
理するため、VMCP20には、IO割込み制御ルーチン21,ホ
ストIO割込みサブクラスマスクレジスタ22,各仮想計算
機対応にサブクラス変換テーブル23a,23b,23cが設けら
れている。サブクラス変換テーブル23a,23b,23cは、対
応する各VMの個々のサブクラスマスクビット26aが専有
サブクラスマスクビットであるか否かの情報と、専有サ
ブクラスマスクの場合は対応するホストIO割込サブクラ
スマスクレジスタの対応ビット22aの番号情報を有して
いる。VMCP20のIO割込み制御ルーチン21は、ホストIO割
込みサブクラスマスクレジスタ22の領域にサブクラスマ
スク値を設定するサブルーチンを有している。このよう
に構成されたVM1〜VM3の上で各々のオペレーティングシ
ステムOS1〜OS3が動作する。なお、VMCPが行うシミュレ
ーション処理は、実計算機システム(ホストシステム)
におけるホストOS上で動作する。
第2図は、VMCPのIO割込みサブクラスマスクの設定処理
を示すフローチャートである。この設定処理はVMCP20の
IO割込み制御ルーチン21の中のサブルーチンである。こ
のサブルーチンは、タイムスライス制御等によりディス
パッチするVM(OS)が切り換わるとき、直前にディスパ
ッチしたVM(停止させるVM)に対して、および次にディ
スパッチするVM(走行させるVM)に対してコールされ
る。このサブルーチンは、以下に詳細に説明するよう
に、停止させるVMと走行させるVMについて、そのVMの割
込み制御用に割当てられたサブクラスマスク(専用サブ
クラスマスク)のサブクラスマスク値をVMCPのホストIO
割込みサブクラスマスクレジスタ22の対応するサブクラ
スマスクに設定する処理を行う。停止させるVMの場合に
は、このサブクラスマスク値の決定に当該PSWのIビッ
トとWビットとを関与させる。停止させるVMと走行させ
るVMに対する設定処理が終了した後、ホストIO割込みサ
ブマスクレジスタ22の内容が中央処理装置1のIO割込サ
ブクラスマスクレジスタ11にセットされ、中央処理装置
1のPSWレジスタ10が停止させるVMの仮想計算機PSWレジ
スタ25にセットされ、走行させるVMの仮想計算機PSWレ
ジスタ25が中央処理装置1のPSWレジスタ10にセットさ
れ、走行させる当該VM(OS)がディスパッチされる。
次に、第2図を参照して、ホストIO割込みサブクラスマ
スクレジスタ22の領域にサブクラスマスク値を設定する
処理を説明する。まず、ステップ60において、走行させ
るVM(走行VM)か停止させるVMかの判定を行い、走行VM
でない場合、ステップ61に進み、ホストIO割込みサブク
ラスマスクレジスタ22に設定するサブクラスマスク値を
決定するため、変数Tに仮想計算機PSWレジスタ25のI
ビットとWビットとの論理積をセットする。一方、ステ
ップ60の判定が走行VMである場合には、ステップ62に進
んで、変数Tに“1"をセットする。この処理は、ホスト
IO割込みサブマスクレジスタ22に設定するサブクラスマ
スク値の決定に仮想計算機PSWレジスタ25のIビットと
Wビットの値を使用しないための処理である。
次にステップ63において、当該VMに対するサブクラスマ
スク返還テーブル23aより専有サブクラスマスクをサー
チする。これにより、仮想計算機IO割込みサブクラスマ
スクレジスタ26の対応ビット番号VDSN(26a)を得る。
次のステップ64において、ステップ63のサーチ結果を判
定し、専有サブクラスマスクが見つからない場合は、処
理を終了しコール元にリターンする。一方、ステップ64
のサーチ結果の判定で専有サブクラスマスクが見つかっ
た場合には、次のステップ65でVMの専有サブクラスマス
クのビット番号VDSNに対応するホストの専有サブクラス
マスクのビット番号RDSN(22a)を該VMのサブクラスマ
スク変換テーブル23aより求める。
次のステップ66においては、仮想計算機IO割込みサブク
ラスマスクレジスタ26の対応ビット番号VDSN(26a)の
マスク値miとステップ61またはステップ62でセットされ
た変数Tとの論理積Aをとる。そして、ステップ67にお
いて、ステップ66で得られた論理積AをホストIO割込み
サブクラスマスクレジスタ22の領域の対応ビット番号RD
SN(22a)のマスク値としてセットする。そして、再
び、ステップ63に戻り、ステップ63からの処理を繰り返
し行う。
このようにして、ホストIO割込みサブクラスマスクレジ
スタ22の領域にサブクラスマスク値を設定する処理を行
う。一般的に、仮想計算機システムにおいて、IO割込み
を禁止した状態で動作する部分はごく一部であり、OSは
待ち状態にないとき、通常、IO割込みを許可した状態で
動作している。したがって、OSが待ち状態でないとき、
タイムスライス制御等で非走行VMとなった場合、ほとん
どがIO割込みマスク値とIOサブクラスマスク値は共に
“1"となっている。本実施例の入出力制御方式によれ
ば、この状態にある非走行VM(OS)に対するIO割込み
を、VMCPの介入なしにハードウェア(IOデバイス)から
直接的に当該仮想計算機に報告することができる。この
ため、このIO割込みの報告のためだけにVMCPが動作する
必要はなく、複数の仮想計算機が動作する仮想計算機シ
ステムの性能が向上する。
以上、本発明を実施例にもとづき具体的に説明したが、
本発明は、前記実施例に限定されるものではなく、その
要旨を逸脱しない範囲において種々変更可能であること
は言うまでもない。
〔発明の効果〕
以上、説明したように、本発明によれば、非走行VM(O
S)が専有しているホストシステムのIOサブクラスマス
ク値の決定に、OSが設定した待ち状態ビットの値を加え
ることにより、非走行VM(OS)のIO割込みは、OSが待ち
状態でかつIO割込みマスクとサブクラスマスクでIO割込
みを許可しているときのみ、VMCPが受け付けることにな
り、VMCPは受け付ける必要のないIO割込みの受付抑止を
行うことができる。このため、非走行VM(OS)のIO割込
みをVMCPの介入なしにハードウェアから直接的に該VM
(OS)に報告する処理を行うことができ、行なわなくて
も良いVMCPのシミュレーション処理を省略でき、仮想計
算機システムの性能が向上する。
【図面の簡単な説明】
第1図は、本発明の一実施例にかかる仮想計算機システ
ムの要部の構成を行すブロック図、 第2図は、VMCPのIO割込みサブクラスマスクの設定処理
を示すフローチャートである。 図中、1……中央処理装置、2……主記憶装置、3……
IO処理装置、4……IO制御装置、5……IOデバイス、10
……PSWレジスタ、10a……IO割込みマスクビット、10b
……待ち状態ビット、11……IO割込サブクラスマスクレ
ジスタ、11a……IO割込みサブクラスマスクビット、12,
32……VM/EX機構。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】仮想計算機制御手段の制御の下に、少なく
    とも1つの仮想計算機を実現し、該仮想計算機の各々
    が、入出力割込み全体の許可/禁止を制御する入出力割
    込みマスクと、該仮想計算機が専有する入出力装置につ
    いて入出力割込みの許可/禁止を制御する入出力割込み
    サブクラスマスクと、プログラムが動作状態か待ち状態
    かを示す待ち状態ビット値記憶手段とを具備し、該仮想
    計算機の入出力割込みマスクと入出力割込みサブクラス
    マスクとに基づいてシステム全体の入出力割込みサブク
    ラスマスクの値を決定する仮想計算機システムにおい
    て、 該仮想計算機制御手段が、走行を停止させる仮想計算機
    について該仮想計算機の入出力割込みマスク値と入出力
    割込みサブクラスマスク値の待ち状態ビット値との論理
    積によりシステム全体の入出力割込みサブクラスマスク
    値を決定する手段を備え、動作状態でありかつ非走行の
    仮想計算機についての入出力割込を、該仮想計算機制御
    手段が受け付けるのを抑止するようにしたことを特徴と
    する仮想計算機システム。
JP63181288A 1988-07-19 1988-07-19 仮想計算機システム Expired - Lifetime JPH0695314B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63181288A JPH0695314B2 (ja) 1988-07-19 1988-07-19 仮想計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63181288A JPH0695314B2 (ja) 1988-07-19 1988-07-19 仮想計算機システム

Publications (2)

Publication Number Publication Date
JPH0229831A JPH0229831A (ja) 1990-01-31
JPH0695314B2 true JPH0695314B2 (ja) 1994-11-24

Family

ID=16098065

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63181288A Expired - Lifetime JPH0695314B2 (ja) 1988-07-19 1988-07-19 仮想計算機システム

Country Status (1)

Country Link
JP (1) JPH0695314B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119691825B (zh) * 2024-12-04 2026-04-21 北京紫光青藤微系统有限公司 基于安全单元的多通道并发通信方法、装置、设备及介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55112651A (en) * 1979-02-21 1980-08-30 Fujitsu Ltd Virtual computer system

Also Published As

Publication number Publication date
JPH0229831A (ja) 1990-01-31

Similar Documents

Publication Publication Date Title
US4885681A (en) I/O Execution method for a virtual machine system and system therefor
US5038281A (en) Acceleration of system interrupts between operating systems in guest-host relationship
EP0185378B1 (en) Virtual computer system
EP3039540B1 (en) Virtual machine monitor configured to support latency sensitive virtual machines
US4414624A (en) Multiple-microcomputer processing
US4812967A (en) Method and apparatus for controlling interrupts in a virtual machine system
EP0093267B1 (en) Method for switching the control of central processing units in a data processing system, and apparatus for initiating the switching of cpu control
KR102946523B1 (ko) 칩 시스템, 가상 인터럽트 처리 방법 및 대응하는 장치
JPS6258341A (ja) 入出力割込処理方式
JPH0673108B2 (ja) ゲストに割り当てられたシステム資源に対するゲストの動作を制限する方法
KR20060108711A (ko) 액티비티 정보를 이용한 가상 머신 관리
CN114327767B (zh) 任务处理的方法、装置、电子设备及计算机可读存储介质
AU603876B2 (en) Multiple i/o bus virtual broadcast of programmed i/o instructions
US20050091022A1 (en) Ultra fast multi-processor system simulation using dedicated virtual machines
US20040193394A1 (en) Method for CPU simulation using virtual machine extensions
JPH0695314B2 (ja) 仮想計算機システム
JPS6097440A (ja) 仮想多重プロセツサ装置
JPH0754468B2 (ja) 仮想計算機システム
JP2585905B2 (ja) マルチタスク実行装置
JPS5958553A (ja) 統合型仮想計算機のディスパッチ制御方式
JPS62120542A (ja) 情報処理装置
JPH0638238B2 (ja) 仮想計算機システム
JPS6313218B2 (ja)
JPS62221041A (ja) 仮想計算機システムにおけるデイスパツチ制御装置
JPS61208133A (ja) 仮想計算機システムにおける状態レジスタ制御装置