JPS60142429A - 仮想計算機システムのi/o実行方法および装置 - Google Patents
仮想計算機システムのi/o実行方法および装置Info
- Publication number
- JPS60142429A JPS60142429A JP58250362A JP25036283A JPS60142429A JP S60142429 A JPS60142429 A JP S60142429A JP 58250362 A JP58250362 A JP 58250362A JP 25036283 A JP25036283 A JP 25036283A JP S60142429 A JPS60142429 A JP S60142429A
- Authority
- JP
- Japan
- Prior art keywords
- channel
- virtual
- interrupt
- instruction
- register
- 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
Links
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は、仮想計算機システムに関し、特に入出力をハ
ードウェアによrJ狗:接実行する仮想計算機システム
のI10実行方法および装置に関するものである。
ードウェアによrJ狗:接実行する仮想計算機システム
のI10実行方法および装置に関するものである。
〔発明の背景)
近年、ディジタル社i算機の応用分野が拡大するに伴い
、実主記憶装置の容量の制約を低減したアドレス方式(
仮想記憶方式)が使用さね、さらにコノ方式を用いて1
つの実計算機を多数のオペレーティング・システム(以
下O8と記す)が同時に使用できる方式(仮想計算機シ
ステム)が用いられている。
、実主記憶装置の容量の制約を低減したアドレス方式(
仮想記憶方式)が使用さね、さらにコノ方式を用いて1
つの実計算機を多数のオペレーティング・システム(以
下O8と記す)が同時に使用できる方式(仮想計算機シ
ステム)が用いられている。
第1図は、通常の仮想計算機システムの概念図である。
実計算機システムの中央処理装置(以下CPUと記す)
100実主記憶装置200、実入出力チャネル装置群3
00、実入出力装置群400が示されている。実主記憶
装置2001.7は、仮想計算機システム(以下VMS
と記す)全体を制御する管理プログラムVMCP (単
にCPとも呼ぶ)が存在し、この管理プログラム■MC
Pのシミュレーション機能により仮想計算機VMI (
500−1)、VM2 (500−2)、VM3 (5
00−3)が実現される(以下、仮想計算機をVM、制
御プログラムをVMCPとNe t )。
100実主記憶装置200、実入出力チャネル装置群3
00、実入出力装置群400が示されている。実主記憶
装置2001.7は、仮想計算機システム(以下VMS
と記す)全体を制御する管理プログラムVMCP (単
にCPとも呼ぶ)が存在し、この管理プログラム■MC
Pのシミュレーション機能により仮想計算機VMI (
500−1)、VM2 (500−2)、VM3 (5
00−3)が実現される(以下、仮想計算機をVM、制
御プログラムをVMCPとNe t )。
実現されるVMの台数は、計算機のリソース量により制
限されるものである。第1図に示すように、各VMには
、仮想CPU (500’−10,500−20’、5
00−30)、仮想主記憶装置(500−11,500
−21,500−31)、仮想入出力チャネル装置群、
仮想入出力装置群が存在する。これらの仮想リソースは
、VMCPのシミュレーション機能により実現される。
限されるものである。第1図に示すように、各VMには
、仮想CPU (500’−10,500−20’、5
00−30)、仮想主記憶装置(500−11,500
−21,500−31)、仮想入出力チャネル装置群、
仮想入出力装置群が存在する。これらの仮想リソースは
、VMCPのシミュレーション機能により実現される。
VM上のO8は、これらのリソースを実リソースとみな
して使用するので、以下これらを、VMのCPU。
して使用するので、以下これらを、VMのCPU。
V Mの主記憶装置、VMの入出力チャネル装置群、V
Mの入出力装置群と呼ぶ。
Mの入出力装置群と呼ぶ。
第2図は、第1図のVMの主記憶装置、つまり仮想主記
憶装置の実主記憶200における割当て方法を示す図で
ある。
憶装置の実主記憶200における割当て方法を示す図で
ある。
第2図に常駐領域(V=R,常駐領域1.常駐領域2)
、VMCPのダイナミックページング領域を示す。この
ベージング領域は、非常駐領域(V=V)として使用さ
れる。
、VMCPのダイナミックページング領域を示す。この
ベージング領域は、非常駐領域(V=V)として使用さ
れる。
V−RのVMは、アドレスOを起点とするV=FL領域
、]一番目の常駐VMの主記憶装置500=11用に主
記憶装置アドレスα□を起点とする常駐領域、2番目の
常駐VMの主記憶装置500−21のために主記憶装置
アドレスα、を起点とする常駐領域がそれぞれ占有さね
ている。常駐VMの台数が増加すわば、同様に、常駐領
域3.常駐領域牛、・・・が常駐VM3の主記憶装置な
500−31、常駐VM4の主記憶装f#t500−4
1と定義されていく。
、]一番目の常駐VMの主記憶装置500=11用に主
記憶装置アドレスα□を起点とする常駐領域、2番目の
常駐VMの主記憶装置500−21のために主記憶装置
アドレスα、を起点とする常駐領域がそれぞれ占有さね
ている。常駐VMの台数が増加すわば、同様に、常駐領
域3.常駐領域牛、・・・が常駐VM3の主記憶装置な
500−31、常駐VM4の主記憶装f#t500−4
1と定義されていく。
一般のV=V (非常駐)のVMの場合には、VMCP
のダイナミック・ベージング領域を他のV−VのVMと
ともに共有することになる。また、VMCPのプレフイ
クス・エリア(PSA)が、第2図に示すように、実主
記憶装置200上の適当な場所に確保さねている(以下
、フレフィクス・エリアをPSAと言上す)。言rmm
のPSAには、その計算機のハードウェア状態が格納さ
れており、その格納状態の例を第4図(A)に示す。
のダイナミック・ベージング領域を他のV−VのVMと
ともに共有することになる。また、VMCPのプレフイ
クス・エリア(PSA)が、第2図に示すように、実主
記憶装置200上の適当な場所に確保さねている(以下
、フレフィクス・エリアをPSAと言上す)。言rmm
のPSAには、その計算機のハードウェア状態が格納さ
れており、その格納状態の例を第4図(A)に示す。
第4図(A、)のPSA201には、入出力チャネル装
置への指令語CCW (Cb、annej Comma
nd Word、)群の先頭アドレスおよびアクセスキ
ー等を含もチャネル・アドレスワード(CAW)202
、I10旧P S W (Program 5tatu
s Word ) 20:!、、■10新PSW204
が含まれている。
置への指令語CCW (Cb、annej Comma
nd Word、)群の先頭アドレスおよびアクセスキ
ー等を含もチャネル・アドレスワード(CAW)202
、I10旧P S W (Program 5tatu
s Word ) 20:!、、■10新PSW204
が含まれている。
第4図(B)は、第4図(AlのPSWの内容を示す図
である。
である。
PSW204におけるビットIはI10マスク、ビット
Eは外部割込みマスク、ビットWはウェイト・ビットで
あり、N、IAは次に実行すべき命令を表わす。このP
SW204は、CPUに1個だけ存在し、そのCPUの
状態を表わすものである。
Eは外部割込みマスク、ビットWはウェイト・ビットで
あり、N、IAは次に実行すべき命令を表わす。このP
SW204は、CPUに1個だけ存在し、そのCPUの
状態を表わすものである。
さらに、各VMに対してもpsw(仮想PSW)が存在
し、それは各V Mの状態を表わすものである。また、
各VMのPSAは、第2図に示す各■Mの領域の中にそ
れぞれ含まれており、各VMのそねぞねのハードウェア
(一般には仮想ハードウェア)状態を表わす。各VMの
PSA (仮想PSA)は、第4図(A)に示したもの
と同じ内容を含む。仮想PSA内のCAWは、そのVM
の仮想主記憶装置内のCCW群の先頭アドレスおよびア
クセスキーを含も。また、仮想PSA内のPSWは、そ
のVM固有の情報を金粉PSWである。
し、それは各V Mの状態を表わすものである。また、
各VMのPSAは、第2図に示す各■Mの領域の中にそ
れぞれ含まれており、各VMのそねぞねのハードウェア
(一般には仮想ハードウェア)状態を表わす。各VMの
PSA (仮想PSA)は、第4図(A)に示したもの
と同じ内容を含む。仮想PSA内のCAWは、そのVM
の仮想主記憶装置内のCCW群の先頭アドレスおよびア
クセスキーを含も。また、仮想PSA内のPSWは、そ
のVM固有の情報を金粉PSWである。
第2図い示すVMCPのPSAには、VMCPで使用す
る計算機システムの状態、つまりVMS全体での計算機
システムの状態が表示される。
る計算機システムの状態、つまりVMS全体での計算機
システムの状態が表示される。
次に、実計算機システムにおけるI10要求および11
0割込みの実行方法を説明する。
0割込みの実行方法を説明する。
先ず、■10に対する要求があると、主記憶装W 20
0 、f=にI10チャネル動作(Read / Wr
ite等)を規定するCCW群を記述する。そのCCW
の中に含まれるデータ・アドレスは、主記憶装置アドレ
スである。次に、CCW群の先頭アドレスをCAWに設
定し、5tart I10命令を発行する。これにより
、目的とする装置にI10起動信号が発行される。この
装置は、■10アドレスCUによりアドレス付けさねて
おり、ここてCはチャネル装置番号、Uは装置アドレス
である。以FのIloの要求手順は、計算機システムを
制御するO8の中の核となるI10スーパバイザと呼ば
れるプログラムにより行われる。
0 、f=にI10チャネル動作(Read / Wr
ite等)を規定するCCW群を記述する。そのCCW
の中に含まれるデータ・アドレスは、主記憶装置アドレ
スである。次に、CCW群の先頭アドレスをCAWに設
定し、5tart I10命令を発行する。これにより
、目的とする装置にI10起動信号が発行される。この
装置は、■10アドレスCUによりアドレス付けさねて
おり、ここてCはチャネル装置番号、Uは装置アドレス
である。以FのIloの要求手順は、計算機システムを
制御するO8の中の核となるI10スーパバイザと呼ば
れるプログラムにより行われる。
110割込みの実行は、先ず、I10チャネル装置から
CPUに対して110割込み要求が発生することにより
開始される。CPU側は、現在の状態がこの割込み要求
に対して割込み可能か否かを判断し、割込み可能な場合
には、割込み動作を起こす。それは、CPU側のpsw
を、PSA内のI10旧pswに格納し、I10新PS
WをPSWにロードすることにより行う。このとき、同
時にこの割込み要求元のI10アドレスCUがPSAの
特定部分に格納される。以上の割込み動作は、O8の介
入なしに、直接ハードウェアにより実現される。
CPUに対して110割込み要求が発生することにより
開始される。CPU側は、現在の状態がこの割込み要求
に対して割込み可能か否かを判断し、割込み可能な場合
には、割込み動作を起こす。それは、CPU側のpsw
を、PSA内のI10旧pswに格納し、I10新PS
WをPSWにロードすることにより行う。このとき、同
時にこの割込み要求元のI10アドレスCUがPSAの
特定部分に格納される。以上の割込み動作は、O8の介
入なしに、直接ハードウェアにより実現される。
第3図(A)CB)は、それぞれI10要求とI10#
I込みのVMSでのシミュレーション動作を示す図であ
る。
I込みのVMSでのシミュレーション動作を示す図であ
る。
vMにおけるI10要求およびI10′#lJ込みは、
VMCPにより次のようにシミュレーションされる0 先ず、儀3図(A)に示すように、VM600上のO8
は、その主記憶装置上にCCW群(仮想CCW群と呼ぶ
)を作り、その先頭アドレスを仮想PSA内の仮#CA
Wに設定し、I10命令を発行する。そのCCW群は、
VMの主記憶装置のアY゛レスで作られる。このアドレ
スは、第2図の常駐領域がVMO主記憶装置として与え
られる場合には、その先頭アドレスをOとする常駐領域
内相対アドレスである。なお、第1図に示すI10チャ
ネル装置は、常駐領域に作られたCCW群f堂社銅悌内
相対アドレスで作られている)の先頭アドレスを含む仮
想PSAのアドレスのみ与えられていれば、そねらを実
行する機能を有するものとする。この場合の実行とは、
常駐領域FのO8の川音したCCWを、プログラムによ
り何ら変更することなく、そのままI10チャネルによ
り実行することを意味する。
VMCPにより次のようにシミュレーションされる0 先ず、儀3図(A)に示すように、VM600上のO8
は、その主記憶装置上にCCW群(仮想CCW群と呼ぶ
)を作り、その先頭アドレスを仮想PSA内の仮#CA
Wに設定し、I10命令を発行する。そのCCW群は、
VMの主記憶装置のアY゛レスで作られる。このアドレ
スは、第2図の常駐領域がVMO主記憶装置として与え
られる場合には、その先頭アドレスをOとする常駐領域
内相対アドレスである。なお、第1図に示すI10チャ
ネル装置は、常駐領域に作られたCCW群f堂社銅悌内
相対アドレスで作られている)の先頭アドレスを含む仮
想PSAのアドレスのみ与えられていれば、そねらを実
行する機能を有するものとする。この場合の実行とは、
常駐領域FのO8の川音したCCWを、プログラムによ
り何ら変更することなく、そのままI10チャネルによ
り実行することを意味する。
第3図(A)において、VM600上のOSが発行した
I10命令は、ハードウェア700によりトラップ(分
岐)され、さらにVMCP800に制御が渡される。V
M CP 800は、VMのPSA内の仮想CAWよ
り、仮想CCW群の先頭アドレスにねは、主記憶装置で
のアドレス)をめ、これをVMCPのPSA内のCAW
に設定し、VMに代ってI10命令を発行する。こねに
より、I10チャネルは、VMCPのPSA内のCAW
よりVMの仮想CCWにアクセスし、直接実行を行う。
I10命令は、ハードウェア700によりトラップ(分
岐)され、さらにVMCP800に制御が渡される。V
M CP 800は、VMのPSA内の仮想CAWよ
り、仮想CCW群の先頭アドレスにねは、主記憶装置で
のアドレス)をめ、これをVMCPのPSA内のCAW
に設定し、VMに代ってI10命令を発行する。こねに
より、I10チャネルは、VMCPのPSA内のCAW
よりVMの仮想CCWにアクセスし、直接実行を行う。
I10チャネルは、実主記憶装置200のアドレスで作
られたcc’w(実CCW)の実行も行うことができる
。
られたcc’w(実CCW)の実行も行うことができる
。
次に、第3図(B)に示すように、VM600で110
割込みが発生すると、ハードウェア700によりトラッ
プされ、VMCP800の該当部に■用御が渡される。
割込みが発生すると、ハードウェア700によりトラッ
プされ、VMCP800の該当部に■用御が渡される。
VMCP800は、この110割込みをどのV Mに反
映すべきかを判断し、このV’MのI / O割込み可
能性を判断して割込み可能であれは、その仮想PSAへ
割込み全反映する。
映すべきかを判断し、このV’MのI / O割込み可
能性を判断して割込み可能であれは、その仮想PSAへ
割込み全反映する。
それは、そのV MのPSW(仮想PSW)を、その仮
想PSAのI10旧pswに格納し、I10新PSWを
仮想f) S Wに設定することにより行われる。これ
らのp S W人換え処理は、すべてVMCP800に
よりそのV MのPSAに対して行われる。
想PSAのI10旧pswに格納し、I10新PSWを
仮想f) S Wに設定することにより行われる。これ
らのp S W人換え処理は、すべてVMCP800に
よりそのV MのPSAに対して行われる。
このように、従来のVMSでは、■10命令は必ずVM
CPによりシミュレーションされるため、そのCPUオ
ーバヘッドが大きく、高性能化が望めないという欠点が
あった。
CPによりシミュレーションされるため、そのCPUオ
ーバヘッドが大きく、高性能化が望めないという欠点が
あった。
〔発明の目的)
本発明の目的は、このような従来の欠点を改善し、VM
SのI10シミュレーション・オーバヘッドを削減して
、高性能化を図ることができる仮想計算機システムのI
10実行方法および装置を提供することにある。
SのI10シミュレーション・オーバヘッドを削減して
、高性能化を図ることができる仮想計算機システムのI
10実行方法および装置を提供することにある。
上記目的を達成するため、本発明の仮想計算機システム
は、1台の実計n機の下で、1個ないし観数個のオペレ
ーティング・システムを走行させる仮想計算機システム
において、現走行中の仮想計算機にI10チャネルが占
有さね、かつ該I10チャネルに現走行仮想計算機から
I10命令が発行されたとき、I10命令実行回路で上
記■10命令を実行し、上記以外のI10チャネルに■
10命令が発行されたときは該I10命令の処理を仮想
計算機の管理プログラム(VMCP)に委ねることに特
徴がある。
は、1台の実計n機の下で、1個ないし観数個のオペレ
ーティング・システムを走行させる仮想計算機システム
において、現走行中の仮想計算機にI10チャネルが占
有さね、かつ該I10チャネルに現走行仮想計算機から
I10命令が発行されたとき、I10命令実行回路で上
記■10命令を実行し、上記以外のI10チャネルに■
10命令が発行されたときは該I10命令の処理を仮想
計算機の管理プログラム(VMCP)に委ねることに特
徴がある。
[発明のJて地側]
以下、本発明の実施例を、図面により説明する。
第5図は、本発明の一実紬例を示すI10命令実行回路
の図であり、第9図(]、) 12)は第5図の動作フ
ローチャートである。
の図であり、第9図(]、) 12)は第5図の動作フ
ローチャートである。
第5図に示すように、f10命令実行回路はハードウェ
アにより構成される。
アにより構成される。
従来より設けられているI10命令レジスタ1000、
、I10¥行回路2300,2400.PSWレジスタ
5200.判定回路5300、プログラムv111込回
路5400の外に、仮想チャネル・マスク・レジスタ1
100 、 (/i、1f41r換レジスタ1200、
ブレフイクス・レジスタ140Q、1500、および選
択回路1900を新たに設ける。
、I10¥行回路2300,2400.PSWレジスタ
5200.判定回路5300、プログラムv111込回
路5400の外に、仮想チャネル・マスク・レジスタ1
100 、 (/i、1f41r換レジスタ1200、
ブレフイクス・レジスタ140Q、1500、および選
択回路1900を新たに設ける。
I10命令がデコードされると、従来と同じように、I
10コードおよびチャネル番号C、デバイス・アドレス
Uがレジスタ]、 、000に設定さJする(第91図
(1)のステップ]、)。
10コードおよびチャネル番号C、デバイス・アドレス
Uがレジスタ]、 、000に設定さJする(第91図
(1)のステップ]、)。
第7図(a) (b) (c) (d)は、それぞれ、
仮想チャネルマスク・レジスタ1100.仮想変換1/
シスタ120o、実チヤネルマスク・レジスタ610
0.実変換レジスタ6200の構成を示す図である。
仮想チャネルマスク・レジスタ1100.仮想変換1/
シスタ120o、実チヤネルマスク・レジスタ610
0.実変換レジスタ6200の構成を示す図である。
第7図の各レジスタの下方の数字o・・・・・n・・・
・・・31は仮想チャネル番号(a)(b)または実チ
ヤネル番号(C)(d)である。
・・・31は仮想チャネル番号(a)(b)または実チ
ヤネル番号(C)(d)である。
仮想チャネルマスク・レジスタ1100は、32ビツト
より構成され、現走行V Mのチャネルの状態を表71
つしている。ピッ)nの値in がOのときは、仮想チ
ャネルnに対応する実チャネルを現走行V Mが占有し
ていることを表わす。また、仮想変換レジスタ1200
は現走行VMの仮想チャネルnに対応する実チヤネル番
号Cを夢わしており、lエントリが1バイト、全体で3
2バイトの長さを備えている。仮想チャネルマスク・レ
ジスタ1100、[想変換レジスタ1200は、現走行
VMがVMCPにより起動されたときに初期設定される
。
より構成され、現走行V Mのチャネルの状態を表71
つしている。ピッ)nの値in がOのときは、仮想チ
ャネルnに対応する実チャネルを現走行V Mが占有し
ていることを表わす。また、仮想変換レジスタ1200
は現走行VMの仮想チャネルnに対応する実チヤネル番
号Cを夢わしており、lエントリが1バイト、全体で3
2バイトの長さを備えている。仮想チャネルマスク・レ
ジスタ1100、[想変換レジスタ1200は、現走行
VMがVMCPにより起動されたときに初期設定される
。
さて、第5図において、レジスタ1000に設定された
チャネル番号C(仮想チャネル番号と呼ぶ)に対応する
仮想チャネルマスク・ビットが、仮想チャネルマスク・
レジスタ1100より取り出されて、ラッチ1600に
セットされる(ステップ2)。なお、ラッチ1600の
値1が°°0”のときは、仮想チャネルCvが現走行中
VMに占有さねていることを表わす。また、仮想チャネ
ルマスク・レジスタ1100は、VMCPにより設定さ
れている。
チャネル番号C(仮想チャネル番号と呼ぶ)に対応する
仮想チャネルマスク・ビットが、仮想チャネルマスク・
レジスタ1100より取り出されて、ラッチ1600に
セットされる(ステップ2)。なお、ラッチ1600の
値1が°°0”のときは、仮想チャネルCvが現走行中
VMに占有さねていることを表わす。また、仮想チャネ
ルマスク・レジスタ1100は、VMCPにより設定さ
れている。
次に、同じようにして、仮想チャネル番号cvに対応す
る実チヤネル番号Crが、仮想変換レジスタ1200よ
り取り出さねて、レジスタ1700′こ設定される(ス
テップ3)。ここで、仮想変換レジスタ1200は、V
MCPにより設定されている。仮想チャネル番号Cv1
実チャネル番号Crが選択回路1900に送られると、
選択回路1900はCvまたはCrのいずれかを選択し
てレジスタ21OOに送710AND回路2600は、
ラッチ(H)1300が°′l”で、かつラッチ160
0がu OT+のとき、ずなわち、高速VMモード(ラ
ッチt() 1300が°’1”)で、がっ現走行VM
に占有化されたチャネル(ラッチ1600カケo″)の
ときのみ、線42ooに°l”を出力して、選択回路1
900に実チヤネル番号Cを選択させる(ステップ4,
5.6)。なお、ステップ5では高速VMモードで、か
つ占有チャネルのときのみ、II I IIが出力され
る。また、ステップ6では、共有チャネルのIlo、V
MCPのIloのときは、ゲー)2600の出力は′0
″となる。このときは変換をせずに、C,rを用いる。
る実チヤネル番号Crが、仮想変換レジスタ1200よ
り取り出さねて、レジスタ1700′こ設定される(ス
テップ3)。ここで、仮想変換レジスタ1200は、V
MCPにより設定されている。仮想チャネル番号Cv1
実チャネル番号Crが選択回路1900に送られると、
選択回路1900はCvまたはCrのいずれかを選択し
てレジスタ21OOに送710AND回路2600は、
ラッチ(H)1300が°′l”で、かつラッチ160
0がu OT+のとき、ずなわち、高速VMモード(ラ
ッチt() 1300が°’1”)で、がっ現走行VM
に占有化されたチャネル(ラッチ1600カケo″)の
ときのみ、線42ooに°l”を出力して、選択回路1
900に実チヤネル番号Cを選択させる(ステップ4,
5.6)。なお、ステップ5では高速VMモードで、か
つ占有チャネルのときのみ、II I IIが出力され
る。また、ステップ6では、共有チャネルのIlo、V
MCPのIloのときは、ゲー)2600の出力は′0
″となる。このときは変換をせずに、C,rを用いる。
以、ヒの動作は、高速■Mモードのとき、占有チャネル
に対するIloが、ハードウェアによりそのチャネル番
号が仮想から実に変換されるごとを意味している。
に対するIloが、ハードウェアによりそのチャネル番
号が仮想から実に変換されるごとを意味している。
レジスタ2100には、選択されたチャネル番号C,レ
ジスタ1000内のデバイス・アドレスUが設定される
(ステップ7)。そのI10アドレスは、I10正常処
理回路2300またはI10例外処理回路2400に入
力される(ステップ8)。
ジスタ1000内のデバイス・アドレスUが設定される
(ステップ7)。そのI10アドレスは、I10正常処
理回路2300またはI10例外処理回路2400に入
力される(ステップ8)。
判定回路5300の出力により、■10正常回路230
0またはI10例外処理2400.またはプログラム割
込回路5400のいずれか1つが選択されて、起動され
る(ステップ9)。
0またはI10例外処理2400.またはプログラム割
込回路5400のいずれか1つが選択されて、起動され
る(ステップ9)。
第6図は、第5図の判定回路の論理回路図である。
レジスタ(PSW)5200には、CPUのPSWが設
定されており、またそのPビットがP−oのときCPU
は特権状態にあり、P−1のときCPUは非特権状謔に
ある。I10命令等の特権命令は、CPUが特権状態、
つまりP−00ときのみ実行可能であるように制御され
る。したかって、P=1のときは、線5300−3ニl
t”l”が出力され、プログラム割込回路5400が起
動される(ステップ11)。なお、p−1はProb/
am Modeを意味し、このときI10命令は特権命
令例外とする。
定されており、またそのPビットがP−oのときCPU
は特権状態にあり、P−1のときCPUは非特権状謔に
ある。I10命令等の特権命令は、CPUが特権状態、
つまりP−00ときのみ実行可能であるように制御され
る。したかって、P=1のときは、線5300−3ニl
t”l”が出力され、プログラム割込回路5400が起
動される(ステップ11)。なお、p−1はProb/
am Modeを意味し、このときI10命令は特権命
令例外とする。
次に、P−00とき、ラッチ1300の値I(が”0゛
′、つまり高速VMモードでないときは、I10正常処
理2300を起動するために、信号線2300−1に信
号“I IIが出る(ステップ12)。
′、つまり高速VMモードでないときは、I10正常処
理2300を起動するために、信号線2300−1に信
号“I IIが出る(ステップ12)。
ラッチ1300の値H−Qは、実計算機モードまたけ一
般VMの場合で、このときは、線5100に”0”が出
力されて、プレフイクス・レジ長身1500が選択され
る。
般VMの場合で、このときは、線5100に”0”が出
力されて、プレフイクス・レジ長身1500が選択され
る。
次に、高速V Mモードのときは、PSA変更要求フラ
グ2200の値Cにより、C0−0のときにはI10正
常処理2300を起動するために、信号線5300−1
に信号II I 11を出す(ステップ13)。このと
き°は、線5100に”]−パが出力さね、ブレフイク
ス・レジスタ1400 (例えば、カレントVMのプレ
フイクス・レジスタ)が選択され、実効ブレフイクス・
レジスタ1800に設定される。
グ2200の値Cにより、C0−0のときにはI10正
常処理2300を起動するために、信号線5300−1
に信号II I 11を出す(ステップ13)。このと
き°は、線5100に”]−パが出力さね、ブレフイク
ス・レジスタ1400 (例えば、カレントVMのプレ
フイクス・レジスタ)が選択され、実効ブレフイクス・
レジスタ1800に設定される。
次じ、Co=1のときは、PSA変更があるので、I1
0例外処理2400を起動するために、信号&−if
5300−2に信号”1′″を出す(ステップ14)。
0例外処理2400を起動するために、信号&−if
5300−2に信号”1′″を出す(ステップ14)。
このときは、@5100に0′″が出力され、ブレフイ
クス・レジスタ1500 (例えばVMCPのプレフイ
クス・レジスタ)が選択される。
クス・レジスタ1500 (例えばVMCPのプレフイ
クス・レジスタ)が選択される。
さて、I10正常処理2300およびI10例夕1処理
2400には、線4300から実効プレフイクス・レジ
スタ1800の内容が送られてきており、その内容をP
SAのアドレスとして該当処理が行われる。実効プレフ
イクス・レジスタ1800の内容は、ANDゲー)20
00の出力5工00の値により選択される。すなわち、
高、7VMモード1300の値Hが”1’”で、かつP
SA変更要求フラグ2200の値C6がII OIIの
ときのみ、線5100に1“′が出力され、そのとき、
現走行VMのプレフイクス1400の内容が選択され、
実効ブレフィクス・レジスタ1800に設定される。こ
のときは、前に説明したとおり、判定回路5300から
は、cpuがギト権状態のとき、線5300−1を介し
て■10正常回路2300に起動信号が出される。I1
0正常回路2300は、線イδOoを経由してI10チ
ャネル2500に起動信号とともに、線4300より送
られてきた実効ブレフイクス・レジスタ1800の内容
を送る。これに」:す、I10チャネル2500は、指
定されたPSAのアドレス全レジスタ2501に記憶す
る。上記の場合は、現走行VMのPSAを示すことにな
るので、現走行V M 17)P S A内のCAWよ
り仮想CCWを取り出して、順次実行していく。このと
き、CAWの内容および仮想CCWのデータ・アドレス
は、第2図の常駐領域内相対アドレスで表わされている
が、その領域先頭アドレスαは、この1.70チヤネル
2500の現走行■Mによる占有を指定したとき、また
は、このI10命令発行時に指定さね2.この■10チ
ャネル2500により記憶さねているものとする。なお
、先頭フドレスαの転送およびI10チャネルによるα
の記憶は、従来と同じ技術により行われるので、I10
チャネル2500の中にレジスタ2502として示すが
、結線は省略する。
2400には、線4300から実効プレフイクス・レジ
スタ1800の内容が送られてきており、その内容をP
SAのアドレスとして該当処理が行われる。実効プレフ
イクス・レジスタ1800の内容は、ANDゲー)20
00の出力5工00の値により選択される。すなわち、
高、7VMモード1300の値Hが”1’”で、かつP
SA変更要求フラグ2200の値C6がII OIIの
ときのみ、線5100に1“′が出力され、そのとき、
現走行VMのプレフイクス1400の内容が選択され、
実効ブレフィクス・レジスタ1800に設定される。こ
のときは、前に説明したとおり、判定回路5300から
は、cpuがギト権状態のとき、線5300−1を介し
て■10正常回路2300に起動信号が出される。I1
0正常回路2300は、線イδOoを経由してI10チ
ャネル2500に起動信号とともに、線4300より送
られてきた実効ブレフイクス・レジスタ1800の内容
を送る。これに」:す、I10チャネル2500は、指
定されたPSAのアドレス全レジスタ2501に記憶す
る。上記の場合は、現走行VMのPSAを示すことにな
るので、現走行V M 17)P S A内のCAWよ
り仮想CCWを取り出して、順次実行していく。このと
き、CAWの内容および仮想CCWのデータ・アドレス
は、第2図の常駐領域内相対アドレスで表わされている
が、その領域先頭アドレスαは、この1.70チヤネル
2500の現走行■Mによる占有を指定したとき、また
は、このI10命令発行時に指定さね2.この■10チ
ャネル2500により記憶さねているものとする。なお
、先頭フドレスαの転送およびI10チャネルによるα
の記憶は、従来と同じ技術により行われるので、I10
チャネル2500の中にレジスタ2502として示すが
、結線は省略する。
実計算機モードの場合には、高速V Mモード・フラグ
1300のイ直Hが0″であり、このときは、プレフイ
クス・レジスタ1500の内容が選択さね、I10正常
回路2300に起動がかかり、従来の実用算機モードに
おける処理が保証さ1+る。
1300のイ直Hが0″であり、このときは、プレフイ
クス・レジスタ1500の内容が選択さね、I10正常
回路2300に起動がかかり、従来の実用算機モードに
おける処理が保証さ1+る。
以1−.目、I10命令の処理であるが、\l = r
tのV Mおよび′尉助gVM)のO8からの■10命
令を直接実行することができる。また、V−Vの非常駐
v Ni上のOSからのIloは、高ジ【\1Mモード
オフ、′1なわち、ラッチ]、 300の値I−1を”
0“′とし、かつJト特権モード(即ちPSW5200
のI〕ビットの値が]−)で走行させるので、VMCP
へ1.1!J1出し、従来と同じ<、VMCPによりシ
ミュし2−ジョンされる。
tのV Mおよび′尉助gVM)のO8からの■10命
令を直接実行することができる。また、V−Vの非常駐
v Ni上のOSからのIloは、高ジ【\1Mモード
オフ、′1なわち、ラッチ]、 300の値I−1を”
0“′とし、かつJト特権モード(即ちPSW5200
のI〕ビットの値が]−)で走行させるので、VMCP
へ1.1!J1出し、従来と同じ<、VMCPによりシ
ミュし2−ジョンされる。
次に、第5図、第9図α)において、仮想チャネル・マ
スクレジスタ1600が+ 111、すなわち現走行V
Mの占有チャネルでないチャネルに対するIloの場合
は、判定回路5300からの起動信7; 、5300−
2により、I10例外処理2400が1節)される(ス
テップ21)。このとき、■10例々1処理2400に
は、レジスタ2100よりI10アドレスCv U s
線4300よりVNうCPのブレフイクス・レジスタ
:+−800の内容が入力される(ステップ22)。以
上二の値をバー)゛ウニ了・ワークレジスタに設定して
、I10例外処理24−00のマイクロプログラム処理
にブレークイン舅Z+ (ステップ23)。I10例外
処理2400内のマイクロプログラムは、セットされた
入力、、、つ、−ヶを利用して、VMCPに割込むこと
もできるとともに、V M CPのめ当な場所に制御を
浪ずこともT@る(ステップ24)。V+\4 CP
ty)i(、’a当′/rii、%所に一制御を渡すに
は、■MCI)によ1・)マイクロプログラムとのイ〉
・タフ1−ス情報を七ツトしておく必要がある。
スクレジスタ1600が+ 111、すなわち現走行V
Mの占有チャネルでないチャネルに対するIloの場合
は、判定回路5300からの起動信7; 、5300−
2により、I10例外処理2400が1節)される(ス
テップ21)。このとき、■10例々1処理2400に
は、レジスタ2100よりI10アドレスCv U s
線4300よりVNうCPのブレフイクス・レジスタ
:+−800の内容が入力される(ステップ22)。以
上二の値をバー)゛ウニ了・ワークレジスタに設定して
、I10例外処理24−00のマイクロプログラム処理
にブレークイン舅Z+ (ステップ23)。I10例外
処理2400内のマイクロプログラムは、セットされた
入力、、、つ、−ヶを利用して、VMCPに割込むこと
もできるとともに、V M CPのめ当な場所に制御を
浪ずこともT@る(ステップ24)。V+\4 CP
ty)i(、’a当′/rii、%所に一制御を渡すに
は、■MCI)によ1・)マイクロプログラムとのイ〉
・タフ1−ス情報を七ツトしておく必要がある。
以上が、■10命令処理の動作である。
第6図は、本発明の実施例を示すI10割込み実行回路
の図であり、第10図は第6図の動作フローチャートで
ある。
の図であり、第10図は第6図の動作フローチャートで
ある。
第6図に示すように、本発明のf / 0 #II込み
実行回路は、従来より設けられているI10割込回路e
3900.I10割込レジスタ6000の仲に、新しく
、実チャネル・マスク・レジスタ6]OO1実変換レジ
スタ6200.VMのプレフイクス・レジスタ1400
.実効プレフィクス・レジスタ1δOO5選択回路67
00、ラッチ1300等を設けている。
実行回路は、従来より設けられているI10割込回路e
3900.I10割込レジスタ6000の仲に、新しく
、実チャネル・マスク・レジスタ6]OO1実変換レジ
スタ6200.VMのプレフイクス・レジスタ1400
.実効プレフィクス・レジスタ1δOO5選択回路67
00、ラッチ1300等を設けている。
I10チャネル2500より、割込要求信号が線9oo
oを経由してI10割込回路6900に送られる(第1
0図α)のステップ31)。これは、従来の動作と同じ
である。次に、I10割込要求を発行しているI10ア
ドレスCOを、線8゜00を経由してレジスタaooo
にセットする(ステップ32)。ここで、Crは実チヤ
ネル番号、Uは実デバイス番号である。こtlも、従来
の動作と同じである。
oを経由してI10割込回路6900に送られる(第1
0図α)のステップ31)。これは、従来の動作と同じ
である。次に、I10割込要求を発行しているI10ア
ドレスCOを、線8゜00を経由してレジスタaooo
にセットする(ステップ32)。ここで、Crは実チヤ
ネル番号、Uは実デバイス番号である。こtlも、従来
の動作と同じである。
本発明により新しくRけられた実チヤネルマスク・レジ
スタ6100と、実変換レジスタ6200を、第7図(
c) (d)により説明する。
スタ6100と、実変換レジスタ6200を、第7図(
c) (d)により説明する。
これらのレジスタ6100.6200は、現定行VMを
起動したときに、VMCPにより設定さねているもので
ある。実チャネル・マスク・レジスタ6100は32ビ
ツトよりなり、名ビットの下の数字は実チヤネル番号を
示している。ビットnの値搗がOのとき、実チャネルn
が現走行Vへ・1に占有されていることを表わす。また
、実変換レジスタ6200は、]エントリが1バイトで
32バイトよりなり、nバイト目の値Cは、実チャネル
nが現走行VMの仮想チャネルCに対応することを示し
ている。
起動したときに、VMCPにより設定さねているもので
ある。実チャネル・マスク・レジスタ6100は32ビ
ツトよりなり、名ビットの下の数字は実チヤネル番号を
示している。ビットnの値搗がOのとき、実チャネルn
が現走行Vへ・1に占有されていることを表わす。また
、実変換レジスタ6200は、]エントリが1バイトで
32バイトよりなり、nバイト目の値Cは、実チャネル
nが現走行VMの仮想チャネルCに対応することを示し
ている。
さて、実チャネル・マスク・レジスタ6100より実チ
ヤネル番号Crに対応したマスク1を取り出し、ラッチ
6300にセットする(ステップ33)。
ヤネル番号Crに対応したマスク1を取り出し、ラッチ
6300にセットする(ステップ33)。
ここで、マスク1−0のときは、実チャネルCrが現走
行中V Mに占有さねていることを表わしている。次に
、前と同じようにして、実変換レジスタ6200より、
実チヤネル番号Crに対応した仮想チャネル査@Cvを
取り出し、レジスタ6400にセットする(ステップ3
4)。なお、前述のように、レジスタ6’lO0,62
00の内容は、VMCPによってセットされている。
行中V Mに占有さねていることを表わしている。次に
、前と同じようにして、実変換レジスタ6200より、
実チヤネル番号Crに対応した仮想チャネル査@Cvを
取り出し、レジスタ6400にセットする(ステップ3
4)。なお、前述のように、レジスタ6’lO0,62
00の内容は、VMCPによってセットされている。
実チヤネル番号Cr、仮想チャネル番号Cvが選択回路
6700に送られ、線8300からの入力の値が°゛1
”のとき、Cvを選択し、”O″′のときCを選択する
(ステップ35)。ANDゲート7700の出力830
0は、高速VMモード(ラッチ1300の値H−1)で
、かつ現走行VMの占有チャネルの場合(ラッチ630
0の1゛直1−0の場合)だけ°′]′″となる。選択
回路6700により選択されたチャネル番号C5および
レジスタ6000の装置アドレスUが、レジスタ680
0に設定される(ステップ36)。以上の動作は、高速
VMモードで、かっ古筆チャネルのとき、ハードウェア
により自動的に実から仮想へのチャネル番号の変換が行
われることを意味している。
6700に送られ、線8300からの入力の値が°゛1
”のとき、Cvを選択し、”O″′のときCを選択する
(ステップ35)。ANDゲート7700の出力830
0は、高速VMモード(ラッチ1300の値H−1)で
、かつ現走行VMの占有チャネルの場合(ラッチ630
0の1゛直1−0の場合)だけ°′]′″となる。選択
回路6700により選択されたチャネル番号C5および
レジスタ6000の装置アドレスUが、レジスタ680
0に設定される(ステップ36)。以上の動作は、高速
VMモードで、かっ古筆チャネルのとき、ハードウェア
により自動的に実から仮想へのチャネル番号の変換が行
われることを意味している。
レジスタ6800の値は、■10割込回路6900に入
力される。■10割込回路6900には、線69007
1より適切なプレフイクス・レジスタの値がP S A
アドレスとして入力されている(ステップ37)。
力される。■10割込回路6900には、線69007
1より適切なプレフイクス・レジスタの値がP S A
アドレスとして入力されている(ステップ37)。
以下、第10図(4)によりI10割込回路6900に
対し、線6900−1を介して入力される実効プレフイ
クス・レジスタ1800の値について説明する。
対し、線6900−1を介して入力される実効プレフイ
クス・レジスタ1800の値について説明する。
PSA変更要求フラグ6500の値C0がO″′(1)
S A変更要なしの意味)で、かつ高速V Mモード
・フラグ1300が′l″゛(現走行VMが高速VMモ
ードである意味)のときのみ、ANDゲー)6600の
出力が”1°′となり (ステップ73)、現走行VM
のプl/フィクス・レジスタ1400がイヘ択され(ス
テップ74)、その内容が実効ブレフイクス・レジスタ
l 800に格納される(ステップ75)。
S A変更要なしの意味)で、かつ高速V Mモード
・フラグ1300が′l″゛(現走行VMが高速VMモ
ードである意味)のときのみ、ANDゲー)6600の
出力が”1°′となり (ステップ73)、現走行VM
のプl/フィクス・レジスタ1400がイヘ択され(ス
テップ74)、その内容が実効ブレフイクス・レジスタ
l 800に格納される(ステップ75)。
上記以外の場合には、A N Dゲー)6600の出力
は′0′”となり(ステップ7]、、72) 、CPの
プレフイクス・レジスタ1500が選択され、その内容
が実効プレフイクス・レジスタ1800に格納される。
は′0′”となり(ステップ7]、、72) 、CPの
プレフイクス・レジスタ1500が選択され、その内容
が実効プレフイクス・レジスタ1800に格納される。
選択された実効プレフイクスのアドレスは、I10割込
回路6900に送られる(ステップ76)。なお、VM
のプレフイクス・レジスタ1400の値は、■M起動時
、VMCPによりセットされる。また、CPのブレフィ
クス・レジスタ1500の値は、VMCPの初期設定の
ときに設定さね、通常、変更はなされない。
回路6900に送られる(ステップ76)。なお、VM
のプレフイクス・レジスタ1400の値は、■M起動時
、VMCPによりセットされる。また、CPのブレフィ
クス・レジスタ1500の値は、VMCPの初期設定の
ときに設定さね、通常、変更はなされない。
さて、第10図(1)に戻り、I10割込回路6900
は、レジスタ6δOOより入力される■10アト°レス
CU、線6900−1より入力される実効プレフイクス
・アドレスを用いて、割込み処理を行うが、その処理は
従来と全く同じである(ステップ38)。M8900−
1からの入力が1′″の場合は、現走行VMのブレフイ
クスヘ割込みを反映することとなるが、現走行VMが割
込不可能の場合は、I10割込回路6900の割込処理
用マイクロプログラムにブレークインが発生せず、I1
0チャネル2500からの割込要求信号は、線9000
上で出されたまま継でとなり、CPU側は何ら割込み動
作を発生せず、処理を続行する。
は、レジスタ6δOOより入力される■10アト°レス
CU、線6900−1より入力される実効プレフイクス
・アドレスを用いて、割込み処理を行うが、その処理は
従来と全く同じである(ステップ38)。M8900−
1からの入力が1′″の場合は、現走行VMのブレフイ
クスヘ割込みを反映することとなるが、現走行VMが割
込不可能の場合は、I10割込回路6900の割込処理
用マイクロプログラムにブレークインが発生せず、I1
0チャネル2500からの割込要求信号は、線9000
上で出されたまま継でとなり、CPU側は何ら割込み動
作を発生せず、処理を続行する。
現走行VMの割込み可能性は、従来のとおり、現PSW
のI10マスクおよび制御レジスタCR2の該当チャネ
ル・マスクにより判断される。
のI10マスクおよび制御レジスタCR2の該当チャネ
ル・マスクにより判断される。
門速VMモード(ラッチ1300の値H−1)のとき、
現P S Wには、現走行V MのPSWが設定さね、
かつ現走行VMの専有チャネル・マスクが実制御レジス
タCR2の該当部分に設定されている。共有チャネルに
該当する実制御レジスタCFL2の該当マスクは、常に
°゛1′′(割込可能)であり、他のVMの専有チャネ
ルについての実制御レジスタCR2の該当マスクはすべ
て60″または、専有光V M O) CR2の値と該
VMのPSWのI10マスクとの論理積を設定すること
ができる。現PSWの値、および実制御レジスタCR2
の値は、VM起動時、VM、CPにより設定される。
現P S Wには、現走行V MのPSWが設定さね、
かつ現走行VMの専有チャネル・マスクが実制御レジス
タCR2の該当部分に設定されている。共有チャネルに
該当する実制御レジスタCFL2の該当マスクは、常に
°゛1′′(割込可能)であり、他のVMの専有チャネ
ルについての実制御レジスタCR2の該当マスクはすべ
て60″または、専有光V M O) CR2の値と該
VMのPSWのI10マスクとの論理積を設定すること
ができる。現PSWの値、および実制御レジスタCR2
の値は、VM起動時、VM、CPにより設定される。
このようにして、r10割込回路690C)は、I10
マスクを判断し、割込み可能のとき割込処9i jT4
マイクロプログラムにブレークインする(ステップ3
9)。そして、I、10割込回路6900内のマイクロ
プログラムは、従来どおり与えられたプレフイクスヘシ
p1込みを反映−する (ステップ40)。
マスクを判断し、割込み可能のとき割込処9i jT4
マイクロプログラムにブレークインする(ステップ3
9)。そして、I、10割込回路6900内のマイクロ
プログラムは、従来どおり与えられたプレフイクスヘシ
p1込みを反映−する (ステップ40)。
線8900−1からの入力が°゛O°′のときは、MM
CPのルフィクスへ割込みを反映し、線8900−1か
らの入力が”]、″のときは、VMのブレフイクスへの
割込み反映を行うことばなる(ステップ4]、)。
CPのルフィクスへ割込みを反映し、線8900−1か
らの入力が”]、″のときは、VMのブレフイクスへの
割込み反映を行うことばなる(ステップ4]、)。
MMCPへ割込みを反映した場合は、現PSW52oO
へ%PSWをロー)−後、Ii 9200 、J: t
)ラッチ65oOのC□、ラッチ1300のHを”OI
+にリセットして、処理を完了する(ステップ42)。
へ%PSWをロー)−後、Ii 9200 、J: t
)ラッチ65oOのC□、ラッチ1300のHを”OI
+にリセットして、処理を完了する(ステップ42)。
さて、VMへ割込みを反映する場合は、現PSW520
0に現走行VMのI10新PSWがロードされるが、そ
の後、m9’200よりラッチ6500を°゛O′″に
リセットする(ステップ43)。高速VMモード・ラッ
チ1300は、1”のままである。現P S W 52
00 km新pswがセットさねた後、高速V tJモ
ードがl゛′のときは、さらにVMCP−ahll 7
600の割込みが起動される可能性がある(ステップ4
4.4−5)。
0に現走行VMのI10新PSWがロードされるが、そ
の後、m9’200よりラッチ6500を°゛O′″に
リセットする(ステップ43)。高速VMモード・ラッ
チ1300は、1”のままである。現P S W 52
00 km新pswがセットさねた後、高速V tJモ
ードがl゛′のときは、さらにVMCP−ahll 7
600の割込みが起動される可能性がある(ステップ4
4.4−5)。
現走行■MのPSAへ割込み反映後、高速VMモード・
ラッチ1300が”1″のときは、さらに次の処理が行
われる。
ラッチ1300が”1″のときは、さらに次の処理が行
われる。
PSW5200のビットW −、1(Wait )のと
きCは、OR回路7400の出力が”111となり、線
9700に”°l″が出力される(ステップ52)。
きCは、OR回路7400の出力が”111となり、線
9700に”°l″が出力される(ステップ52)。
この場合、P3′W52.OOの中には、VMの■10
新PSWがセットされている(ステップ51)。
新PSWがセットされている(ステップ51)。
ラッチ7000には、現走行VMのI10保留ビットが
セットされており、ラッチ7100には、現走行VMの
外部割込み保留ビットがセットされている(ステップ5
3.54)。これら2つのラツ+7000.7100は
、vM起動時、VMCPにより設定される。ランチ70
00が”l”ということは、現走行VMのI10割込み
保留で、現走行V Mのチャネルマスク・レジスタCR
2に関して割込み可爺なものが存在することを意味して
いる。また、ランチ7100が1″ということは、現走
行VMの9I部割込み保留で、現走行VMの外部割込み
サブマスクCFtOの該当ビットに関して、割込み可能
なものが存在することを意味する。
セットされており、ラッチ7100には、現走行VMの
外部割込み保留ビットがセットされている(ステップ5
3.54)。これら2つのラツ+7000.7100は
、vM起動時、VMCPにより設定される。ランチ70
00が”l”ということは、現走行VMのI10割込み
保留で、現走行V Mのチャネルマスク・レジスタCR
2に関して割込み可爺なものが存在することを意味して
いる。また、ランチ7100が1″ということは、現走
行VMの9I部割込み保留で、現走行VMの外部割込み
サブマスクCFtOの該当ビットに関して、割込み可能
なものが存在することを意味する。
次に、P S W 5200の外部割込みマスク(E)
と、ラッチ7100の値がともに°1′′のとき、AN
Dゲート7300の出力が]”となり、したがってOR
回路7400の出力が“°1″となる(ステップ55)
。
と、ラッチ7100の値がともに°1′′のとき、AN
Dゲート7300の出力が]”となり、したがってOR
回路7400の出力が“°1″となる(ステップ55)
。
OR回路7400の出力が°゛1″でかつ、高速■Mモ
ード・ラッチ1300が”111のとき、ANDゲー)
7500の出力はI :+−I+となり、VMCP −
chll 割込回路7600が起動される(ステップ5
6.57) 。VMCP−cait ?JJ込回路は、
プレフイクス・アドレスとしで、VMCPのプレフイク
ス・レジスタ1500の内容を選択し、使用する(ステ
ップ56)。ずなわち、VMCPのPSAへ割込みを反
映し、その後、線9200−1゜9200−2を経由し
てラッチ6500 C□ 、ラッチ13001(を”O
′”にリセットする(ステ゛ノブ59.60)。
ード・ラッチ1300が”111のとき、ANDゲー)
7500の出力はI :+−I+となり、VMCP −
chll 割込回路7600が起動される(ステップ5
6.57) 。VMCP−cait ?JJ込回路は、
プレフイクス・アドレスとしで、VMCPのプレフイク
ス・レジスタ1500の内容を選択し、使用する(ステ
ップ56)。ずなわち、VMCPのPSAへ割込みを反
映し、その後、線9200−1゜9200−2を経由し
てラッチ6500 C□ 、ラッチ13001(を”O
′”にリセットする(ステ゛ノブ59.60)。
この後、制御はVMCPに渡り、VMC’Pにより1制
込み保留解除処理が行われる(ステップ61)。
込み保留解除処理が行われる(ステップ61)。
以上の処理によって、VM上のO8のI10割込み処理
は、VMCPの介入によらずに、ノ1−ドウエアレこよ
り直接実行きねることになる。
は、VMCPの介入によらずに、ノ1−ドウエアレこよ
り直接実行きねることになる。
なお、第5図、第6図の実施例においては、仮想チャネ
ル番号と実チヤネル番号との間の相互変換機能を含も形
で示したが、V M、Sの運用において、両者が等しい
という使用制限を置けば、その変換機能は不要となる。
ル番号と実チヤネル番号との間の相互変換機能を含も形
で示したが、V M、Sの運用において、両者が等しい
という使用制限を置けば、その変換機能は不要となる。
したがって、仮想変換レジスタ1200 % 実変換レ
ジスタ6200は不要となり、回路は簡単化される。
ジスタ6200は不要となり、回路は簡単化される。
〔発明の効果)
以上説明したように、本発明によれば、I10命令命令
間路とI10割込実行回路をノ・−ドウエアで構成し、
VMCPの制御によらずノ・−ト°ウェアの制御で直接
実行するので、110シミユレーシヨン・オーバヘッド
を削減して、■MSIy)高性能化を図ることができる
。
間路とI10割込実行回路をノ・−ドウエアで構成し、
VMCPの制御によらずノ・−ト°ウェアの制御で直接
実行するので、110シミユレーシヨン・オーバヘッド
を削減して、■MSIy)高性能化を図ることができる
。
第1図は一般の仮想計算機システムの概略(シ1、第2
図はv、1図の主記憶装置のVMの割当て方法を示す図
、争3図はVMSにおけるI10シミュレーションを示
す図、第4図はプレフイクス(PSA)の構成図、第5
図は本発明の実施例を示すI10命令命令間路の構成図
、第6図は本発明の実施例を示ずl10111込み実行
回路の構成図、第7図は第5図、第6図に用いるレジス
タの構成図、第8図は塩5図の判定回路の論理接続図、
第9図は笥5図の討1作フローチャート、第10図は第
6図の動作フローチャートである。 100 : CPU、200 :実主記憶装置、300
:チャネル装置、4oo二人出力装置、500−1.5
00−2,500−3:仮想計算機(VM’)、100
0 : I10命令L/ シスタ、1100:仮想チャ
ネル・マスク・レジスタ、1200:仮想変換レジスタ
、1300:高、JVMモード・レジスタ、1400:
現走行■Mブレフイクス・レジスタ、1500 : V
MCPのプレフイクス・レジスタ、6100 :実チャ
ネル・マスク・レジスタ、6200:実変換レジスタ、
5300 :判定回路、6900:I10割込回路、2
300 :110実行正常処理回路、2400 : I
10実行例外処理回路、506−10,500−20.
5oo−3o:仮想CPU、即ちVMのCPU、、50
0−1.1,500−21.500−31 :VMの主
記憶装置(一般には仮想主記憶装置)。 特許出願人 株式会社 日立11i9作所代 埋 人
弁理士 磯 村 雅 棲 \・ ゝ、l−− 第7図 1100 200 0 1 、、、、、、、 n 、、、、、、、 312
00 012・・・n申・・申・・・31 第 8 図 1)SW5200 第 9 図 (1) 第 9 図(2) 第 10 1/II込みの動作 図(1) 第 ] O 図 シ) 小 ]0 図(3) 第 10 図(4)
図はv、1図の主記憶装置のVMの割当て方法を示す図
、争3図はVMSにおけるI10シミュレーションを示
す図、第4図はプレフイクス(PSA)の構成図、第5
図は本発明の実施例を示すI10命令命令間路の構成図
、第6図は本発明の実施例を示ずl10111込み実行
回路の構成図、第7図は第5図、第6図に用いるレジス
タの構成図、第8図は塩5図の判定回路の論理接続図、
第9図は笥5図の討1作フローチャート、第10図は第
6図の動作フローチャートである。 100 : CPU、200 :実主記憶装置、300
:チャネル装置、4oo二人出力装置、500−1.5
00−2,500−3:仮想計算機(VM’)、100
0 : I10命令L/ シスタ、1100:仮想チャ
ネル・マスク・レジスタ、1200:仮想変換レジスタ
、1300:高、JVMモード・レジスタ、1400:
現走行■Mブレフイクス・レジスタ、1500 : V
MCPのプレフイクス・レジスタ、6100 :実チャ
ネル・マスク・レジスタ、6200:実変換レジスタ、
5300 :判定回路、6900:I10割込回路、2
300 :110実行正常処理回路、2400 : I
10実行例外処理回路、506−10,500−20.
5oo−3o:仮想CPU、即ちVMのCPU、、50
0−1.1,500−21.500−31 :VMの主
記憶装置(一般には仮想主記憶装置)。 特許出願人 株式会社 日立11i9作所代 埋 人
弁理士 磯 村 雅 棲 \・ ゝ、l−− 第7図 1100 200 0 1 、、、、、、、 n 、、、、、、、 312
00 012・・・n申・・申・・・31 第 8 図 1)SW5200 第 9 図 (1) 第 9 図(2) 第 10 1/II込みの動作 図(1) 第 ] O 図 シ) 小 ]0 図(3) 第 10 図(4)
Claims (1)
- 【特許請求の範囲】 σ)1台の実計算機の下で、1個ないし複数個のオペレ
ーティング・システムを走行させる仮想計算機システム
において、現走行中の仮想計算機にI10チャネルが占
有さね、かつ該I10チャネルに、現走行仮想計算機か
ら17′0命令が発行されたとき、I10命令実行回路
で上記I10命令を実行し、上記以外のI10チャネル
にI10命令が発行されたときは該I10命令の処理を
仮想計算機の管理プログラム(VMCP)に委ネること
を特徴とする仮想計算機システムのI10実行方法。 12)1台の実計算機の下で、1個ないし複数個のオペ
レーティング・システムを走行させる仮想計算機システ
ムにおいて、現走行中の仮想計算機にI10チャネルが
占有され、かつ該I10チャネルに110割込みが発生
したとき、■二記仮想計算機はL記I10割込みが可能
であるとき、該仮想計算機の割込情報格納領域に上記I
10制込みを反映し、ト記占有I10チャネル以外に発
生した110割込みはVMCPのプレフィクスにIIJ
込trことを特徴とする仮想計算機システムのI10
実行方法。 (3)仮想計穿機が現在走行していることを職別する手
段と、現走行中の仮想計算機[I10チャネルが占有さ
ねているか否かを示す手段と、現走行中の仮想計算機の
プレフィクスのアドレスを記憶する手段と、VMCPの
ブレフィクスのアドレスを記憶する手段と、上記両配憶
手段のいずれか一方を選択する手段と、上記仮想計算機
の走行中に発行されたI10命令が占有I10チャネル
に対して発行されたか否か判断する手段とを有すること
を特徴とする仮想計算機システムのI10実行装置。 (I4)前記判断手段は、現走行中の仮想計算機がr1
0′M込み要求が出されたI10チャネルを占有してい
るか否かを判断するとともに、上記I10チャネルを占
有しているときには、該仮想計算機がF記I10割込み
を行うことができるか否かを判断することを特徴とする
特許請求の範囲第5項記載の仮想計算機システムのI1
0実行装置。 (5)前記I10命令または■101ii511込み要
求を判断する手段は、仮想計算機の示すI10アドレス
の中のI10チャネル・アドレス、または該アドレスに
対応する実計算機におけるI10チャネルアドレスを記
憶し、かつ上記両アドレスを相互に変換することを特徴
とする特許請求の範囲第3項または第4′yi記載の仮
想計算機システムのI10実行装置。 (6)前記110割込みが可能か否かを判断する場合、
現走行中の仮想計算機の110割込み保留の存在と、外
部割込み保留の存在を示す手段を備え、現走行中の仮想
計算/−魂のプレフイクスに」=記■10割込みを反映
した後、現走行中の仮想計算機にI / O割込み保留
が存在し、かつ該計算機が110割込み可能になったと
き、または外8割込み保留が存在し、かつ外部割込み可
能となったとき、または該計算機がウェイト状態となっ
たとき、VMc p y−、va込みを発生ずることを
特徴とする特許請求の範FfJ4第3項、坑4−項また
は第5項記載の仮想計算様システムのI10実行装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58250362A JPS60142429A (ja) | 1983-12-28 | 1983-12-28 | 仮想計算機システムのi/o実行方法および装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58250362A JPS60142429A (ja) | 1983-12-28 | 1983-12-28 | 仮想計算機システムのi/o実行方法および装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS60142429A true JPS60142429A (ja) | 1985-07-27 |
| JPH0567973B2 JPH0567973B2 (ja) | 1993-09-28 |
Family
ID=17206790
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58250362A Granted JPS60142429A (ja) | 1983-12-28 | 1983-12-28 | 仮想計算機システムのi/o実行方法および装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS60142429A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63178359A (ja) * | 1987-01-20 | 1988-07-22 | Hitachi Ltd | チヤネルパスグル−プ管理方式 |
| JPS6459434A (en) * | 1987-08-29 | 1989-03-07 | Fujitsu Ltd | Input/output control system for virtual computer |
| JP2009258798A (ja) * | 2008-04-11 | 2009-11-05 | Nec Corp | 仮想マシンシステム、ホスト計算機、i/oカード、仮想マシン構築方法およびプログラム |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58181149A (ja) * | 1982-04-16 | 1983-10-22 | Hitachi Ltd | 計算機システムの制御方式 |
-
1983
- 1983-12-28 JP JP58250362A patent/JPS60142429A/ja active Granted
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58181149A (ja) * | 1982-04-16 | 1983-10-22 | Hitachi Ltd | 計算機システムの制御方式 |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63178359A (ja) * | 1987-01-20 | 1988-07-22 | Hitachi Ltd | チヤネルパスグル−プ管理方式 |
| JPS6459434A (en) * | 1987-08-29 | 1989-03-07 | Fujitsu Ltd | Input/output control system for virtual computer |
| JP2009258798A (ja) * | 2008-04-11 | 2009-11-05 | Nec Corp | 仮想マシンシステム、ホスト計算機、i/oカード、仮想マシン構築方法およびプログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0567973B2 (ja) | 1993-09-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| AU613823B2 (en) | Virtual computer system having improved input/output interrupt control | |
| US4347565A (en) | Address control system for software simulation | |
| EP0300516B1 (en) | Digital data processing system | |
| US4525780A (en) | Data processing system having a memory using object-based information and a protection scheme for determining access rights to such information | |
| US4493027A (en) | Method of performing a call operation in a digital data processing system having microcode call and return operations | |
| US12367062B1 (en) | Virtualization extension modules | |
| US4466056A (en) | Address translation and generation system for an information processing system | |
| JPS58151655A (ja) | 情報処理装置 | |
| JPH0242569A (ja) | ベクター処理システムに用いる文脈スイッチング方法及び装置 | |
| JPH08278886A (ja) | データ処理システムでの拡張システム管理操作のための方法およびシステム | |
| JPH0430053B2 (ja) | ||
| JPH06168179A (ja) | 非同期コプロセッサによるデータ移動方法および装置 | |
| US5291581A (en) | Apparatus and method for synchronization of access to main memory signal groups in a multiprocessor data processing system | |
| KR20100036279A (ko) | 복수의 프로세서들을 포함하는 시스템 및 그 동작 방법 | |
| Mayer | The architecture of the Burroughs B5000: 20 years later and still ahead of the times? | |
| GB2216306A (en) | Load and synchronize computer architecture and process | |
| US5003468A (en) | Guest machine execution control system for virutal machine system | |
| US5218678A (en) | System and method for atomic access to an input/output device with direct memory access | |
| JPS60142429A (ja) | 仮想計算機システムのi/o実行方法および装置 | |
| EP0290111A2 (en) | Digital data processing system | |
| KR0136111B1 (ko) | 데이터요소의 수정장치 및 그 방법 | |
| US4816992A (en) | Method of operating a data processing system in response to an interrupt | |
| CA1302579C (en) | Apparatus and method for providing an extended processing environment on nonmicrocoded data processing system | |
| JPS61184643A (ja) | 仮想計算機の起動制御方式 | |
| JPH11312092A (ja) | タスク切り替え方法及びデータ処理装置 |