JPH0792761B2 - 仮想計算機システムの入出力制御方法 - Google Patents
仮想計算機システムの入出力制御方法Info
- Publication number
- JPH0792761B2 JPH0792761B2 JP60170430A JP17043085A JPH0792761B2 JP H0792761 B2 JPH0792761 B2 JP H0792761B2 JP 60170430 A JP60170430 A JP 60170430A JP 17043085 A JP17043085 A JP 17043085A JP H0792761 B2 JPH0792761 B2 JP H0792761B2
- Authority
- JP
- Japan
- Prior art keywords
- input
- output
- mode
- vmcp
- output device
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Executing Machine-Instructions (AREA)
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】 〔発明の利用分野〕 本発明は、仮想計算機システム(以下、VMSという)の
入出力制御方法に関し、特に仮想計算機(以下、VMとい
う)上のOSからの入出力命令およびそれに関連する入出
力割込みを、仮想計算機制御プログラム(以下、VMCPと
いう)が関与することなく、ハードウェアにより、直接
実行可能なVMSの入出力制御方法に関するものである。
入出力制御方法に関し、特に仮想計算機(以下、VMとい
う)上のOSからの入出力命令およびそれに関連する入出
力割込みを、仮想計算機制御プログラム(以下、VMCPと
いう)が関与することなく、ハードウェアにより、直接
実行可能なVMSの入出力制御方法に関するものである。
従来、仮想計算機システム(VMS)は、実計算機システ
ムとハードウェア構成(中央処理装置、主記憶装置、入
出力装置等)は変らないが、主記憶装置上に、仮想計算
機制御プログラム(VMCP)を設け、VMCPのハードウェア
シミュレーション機能により、論理的な計算機(このこ
とを以下、仮想計算機、すなわち、バーチャルマシン
(Virtual Machine)VMという)が複数台論理的に実現
され、この論理的に実現された複数のVMにより各種処理
を行うものである。この仮想計算機システムの構成例を
第10図に示す。第10図において、90は実計算機システ
ム、91は中央処理装置(以下、CPUという)、92はVMCP
を備えた主記憶装置、93は入出力処理装置、94は入出力
制御装置、90−1,90−2,90−3はそれぞれ、VMCPにより
論理的に実現される仮想計算機VMである。VM90−1は、
CPU91−1,主記憶装置92−1、入出力処理装置93−1、
入出力制御装置94−1から構成される。VM90−2も同様
にCPU91−2,主記憶装置92−2、入出力処理装置93−
2、入出力制御装置94−2から構成される。さらに、VM
90−3は、CPU91−3,主記憶装置92−3、入出力処理装
置93−3、入出力制御装置94−3から構成される。ここ
では、仮想計算機VMを3個実現した例を示しているが、
VMCPにより3個以上実現することも可能である。各VM、
すなわち、VM90−1,VM90−2,VM90−3は、実計算機シス
テム(以下、ホストシステムという)90とほぼ同じハー
ドウェア構成を持つものとして論理的に実現される。各
VMの主記憶装置92−i(i=1,2,3)上には、各VMを制
御し、動かすオペレーティングシステムOSが存在し、こ
の複数のOSが1台のホストシステムの下で同時に走行し
ていることを示すものである。第10図の各VMにおけるハ
ードウェア構成(CPU、主記憶装置、入出力処理装置、
入出力制御装置)は、VMCPにより論理的に実現されるも
のであるが、それらの実体の大部分は、ホストシステム
の対応するハードウェア構成上に存在する。例えば、VM
の記憶装置は、ホストシステムの主記憶装置92の一部分
を占有することもあり、また、共有することもある。
ムとハードウェア構成(中央処理装置、主記憶装置、入
出力装置等)は変らないが、主記憶装置上に、仮想計算
機制御プログラム(VMCP)を設け、VMCPのハードウェア
シミュレーション機能により、論理的な計算機(このこ
とを以下、仮想計算機、すなわち、バーチャルマシン
(Virtual Machine)VMという)が複数台論理的に実現
され、この論理的に実現された複数のVMにより各種処理
を行うものである。この仮想計算機システムの構成例を
第10図に示す。第10図において、90は実計算機システ
ム、91は中央処理装置(以下、CPUという)、92はVMCP
を備えた主記憶装置、93は入出力処理装置、94は入出力
制御装置、90−1,90−2,90−3はそれぞれ、VMCPにより
論理的に実現される仮想計算機VMである。VM90−1は、
CPU91−1,主記憶装置92−1、入出力処理装置93−1、
入出力制御装置94−1から構成される。VM90−2も同様
にCPU91−2,主記憶装置92−2、入出力処理装置93−
2、入出力制御装置94−2から構成される。さらに、VM
90−3は、CPU91−3,主記憶装置92−3、入出力処理装
置93−3、入出力制御装置94−3から構成される。ここ
では、仮想計算機VMを3個実現した例を示しているが、
VMCPにより3個以上実現することも可能である。各VM、
すなわち、VM90−1,VM90−2,VM90−3は、実計算機シス
テム(以下、ホストシステムという)90とほぼ同じハー
ドウェア構成を持つものとして論理的に実現される。各
VMの主記憶装置92−i(i=1,2,3)上には、各VMを制
御し、動かすオペレーティングシステムOSが存在し、こ
の複数のOSが1台のホストシステムの下で同時に走行し
ていることを示すものである。第10図の各VMにおけるハ
ードウェア構成(CPU、主記憶装置、入出力処理装置、
入出力制御装置)は、VMCPにより論理的に実現されるも
のであるが、それらの実体の大部分は、ホストシステム
の対応するハードウェア構成上に存在する。例えば、VM
の記憶装置は、ホストシステムの主記憶装置92の一部分
を占有することもあり、また、共有することもある。
また、VMの入出力装置は、ホストシステムの入出力装置
をVM間で共有することもあり、また、いくつかの入出力
装置を占有することもある。あるいは、ホストシステム
上に対応する入出力装置がなく、全く仮想的にVMCPに擬
似されて、実現される場合もある。いずれにせよ、各VM
の主記憶装置92−i(i=1,2,3)上のOSからは、ホス
トシステムと同様のハードウェア構成(CPU、主記憶装
置、入出力処理装置、入出力制御装置)が見えることに
なる。
をVM間で共有することもあり、また、いくつかの入出力
装置を占有することもある。あるいは、ホストシステム
上に対応する入出力装置がなく、全く仮想的にVMCPに擬
似されて、実現される場合もある。いずれにせよ、各VM
の主記憶装置92−i(i=1,2,3)上のOSからは、ホス
トシステムと同様のハードウェア構成(CPU、主記憶装
置、入出力処理装置、入出力制御装置)が見えることに
なる。
このような従来の仮想計算機システムにおけるVM上のOS
のIO実行においては、必ずVMCPが介入するもので、その
シミュレーションが必要となり、IO実行頻度の高い負荷
に対しては、VMCPのシミュレーションオーバヘッドが大
きくなるという問題があった。この問題を解決して、VM
からの入出力命令のシミュレーションによるオーバヘッ
ドを削減するために、VMからの入出力命令をVMCPに介在
させることなく、ハードウェアで直接実行する方法を
「仮想計算機システムのIO実行方式」として本発明者等
により提案されている(特願昭59-5587号明細書参
照)。しかし、この方式では、VMが入出力装置を最初に
使用開始した後に入出力の実行モード(入出力直接実行
モード、および、入出力シミュレーションモード)を切
換えることは、実現されていなかった。
のIO実行においては、必ずVMCPが介入するもので、その
シミュレーションが必要となり、IO実行頻度の高い負荷
に対しては、VMCPのシミュレーションオーバヘッドが大
きくなるという問題があった。この問題を解決して、VM
からの入出力命令のシミュレーションによるオーバヘッ
ドを削減するために、VMからの入出力命令をVMCPに介在
させることなく、ハードウェアで直接実行する方法を
「仮想計算機システムのIO実行方式」として本発明者等
により提案されている(特願昭59-5587号明細書参
照)。しかし、この方式では、VMが入出力装置を最初に
使用開始した後に入出力の実行モード(入出力直接実行
モード、および、入出力シミュレーションモード)を切
換えることは、実現されていなかった。
本発明の目的は、このように従来の実現されていなかっ
た点を改善し、VMが占有する入出力装置への入出力命
令、およびこの命令に関連する入出力割込みを、VMが入
出力装置を最初に使用開始した後に入出力の実行モード
(入出力直接実行モード、および、入出力シミュレーシ
ョンモード)を切換えることが可能な仮想計算機システ
ムの入出力制御方法を提供することにある。
た点を改善し、VMが占有する入出力装置への入出力命
令、およびこの命令に関連する入出力割込みを、VMが入
出力装置を最初に使用開始した後に入出力の実行モード
(入出力直接実行モード、および、入出力シミュレーシ
ョンモード)を切換えることが可能な仮想計算機システ
ムの入出力制御方法を提供することにある。
上記目的を達成するために、本発明の仮想計算機システ
ムの入出力制御方法は、 1台の計算機において仮想計算機制御プログラム(VMC
P)の管理下で少なくとも1つのオペレーティングシス
テム(OS)が走行し、前記計算機の入出力装置対応に入
出力シミュレーションモードあるいは入出力直接実行モ
ードが設定され、入出力シミュレーションモードが設定
された入出力装置に対するOSからの入出力命令はVMCPが
シミュレーションして実行し、入出力直接実行モードが
設定された入出力装置に対するOSからの入出力命令はVM
CPが介在することなく前記計算機により直接実行すると
ともに、入出力シミュレーションモードから入出力直接
実行モードへの移行を要求された入出力装置を識別する
識別手段〔第8図の仮想ステータスフィールド15−i−
r−1のビットf〕、および上記2つのモードを切り替
えるモード切り替え手段〔第9図記載のA命令〕を有す
る仮想計算機システムの入出力制御方法であって、上記
識別手段〔第8図の仮想ステータスフィールド15−i−
r−1のビットf〕により、OSが入出力装置を最初に使
用開始した後に入出力直接実行モードへの移行を要求さ
れた入出力装置を識別し、該識別された入出力装置が前
記VMCPによるシミュレーションおよび入出力の実行に関
して所定のモード移行条件を満足するかを判定し〔第1
図(a)の102-106〕、上記判定を満足した時点で、上
記モード切り替え手段〔第9図記載のA命令〕により該
入出力装置を入出力シミュレーションモードから入出力
直接実行モードに移行させる〔第1図(a)の107〕こ
とを特徴としている。また、上記所定のモード移行条件
は、該入出力装置に対する入出力命令の実行要求をVMCP
が保留中でなく〔第1図(a)の102〕、該入出力装置
の入出力割り込みをVMCPが保留中でなく〔第1図(a)
の103〕、該入出力装置が入出力実行中でなく〔第1図
(a)の104〕、かつ、該入出力装置が入出力割り込み
を保留中でない〔第1図(a)の104〕という条件であ
ることを特徴としている。
ムの入出力制御方法は、 1台の計算機において仮想計算機制御プログラム(VMC
P)の管理下で少なくとも1つのオペレーティングシス
テム(OS)が走行し、前記計算機の入出力装置対応に入
出力シミュレーションモードあるいは入出力直接実行モ
ードが設定され、入出力シミュレーションモードが設定
された入出力装置に対するOSからの入出力命令はVMCPが
シミュレーションして実行し、入出力直接実行モードが
設定された入出力装置に対するOSからの入出力命令はVM
CPが介在することなく前記計算機により直接実行すると
ともに、入出力シミュレーションモードから入出力直接
実行モードへの移行を要求された入出力装置を識別する
識別手段〔第8図の仮想ステータスフィールド15−i−
r−1のビットf〕、および上記2つのモードを切り替
えるモード切り替え手段〔第9図記載のA命令〕を有す
る仮想計算機システムの入出力制御方法であって、上記
識別手段〔第8図の仮想ステータスフィールド15−i−
r−1のビットf〕により、OSが入出力装置を最初に使
用開始した後に入出力直接実行モードへの移行を要求さ
れた入出力装置を識別し、該識別された入出力装置が前
記VMCPによるシミュレーションおよび入出力の実行に関
して所定のモード移行条件を満足するかを判定し〔第1
図(a)の102-106〕、上記判定を満足した時点で、上
記モード切り替え手段〔第9図記載のA命令〕により該
入出力装置を入出力シミュレーションモードから入出力
直接実行モードに移行させる〔第1図(a)の107〕こ
とを特徴としている。また、上記所定のモード移行条件
は、該入出力装置に対する入出力命令の実行要求をVMCP
が保留中でなく〔第1図(a)の102〕、該入出力装置
の入出力割り込みをVMCPが保留中でなく〔第1図(a)
の103〕、該入出力装置が入出力実行中でなく〔第1図
(a)の104〕、かつ、該入出力装置が入出力割り込み
を保留中でない〔第1図(a)の104〕という条件であ
ることを特徴としている。
また、1台の計算機において仮想計算機制御プログラム
(VMCP)の管理下で少なくとも1つのオペレーティング
システム(OS)が走行し、前記計算機の入出力装置対応
に入出力シミュレーションモードあるいは入出力直接実
行モードが設定され、入出力シミュレーションモードが
設定された入出力装置に対するOSからの入出力命令はVM
CPがシミュレーションして実行し、入出力直接実行モー
ドが設定された入出力装置に対するOSからの入出力命令
はVMCPが介在することなく前記計算機により直接実行す
るとともに、上記2つのモードを切り替えるモード切り
替え手段〔第9図記載のA命令〕および上記入出力装置
の入出力実行状態を調べる手段〔明細書44頁第17行目か
ら45頁第7行目に記載のSTSCH命令〕を有する仮想計算
機システムの入出力制御方法であって、OSが入出力装置
を最初に使用開始した後に入出力直接実行モードから入
出力シミュレーションモードへの移行を要求されたこと
に応じて、上記入出力装置の入出力実行状態を調べる手
段により該入出力装置の入出力実行状態をVMCPが認識し
〔第1図(b)の111〕、上記モード切り替え手段〔第
9図記載のA命令〕により、該入出力装置に入出力シミ
ュレーションモードを設定する〔第1図(b)の112〕
ことを特徴としている。
(VMCP)の管理下で少なくとも1つのオペレーティング
システム(OS)が走行し、前記計算機の入出力装置対応
に入出力シミュレーションモードあるいは入出力直接実
行モードが設定され、入出力シミュレーションモードが
設定された入出力装置に対するOSからの入出力命令はVM
CPがシミュレーションして実行し、入出力直接実行モー
ドが設定された入出力装置に対するOSからの入出力命令
はVMCPが介在することなく前記計算機により直接実行す
るとともに、上記2つのモードを切り替えるモード切り
替え手段〔第9図記載のA命令〕および上記入出力装置
の入出力実行状態を調べる手段〔明細書44頁第17行目か
ら45頁第7行目に記載のSTSCH命令〕を有する仮想計算
機システムの入出力制御方法であって、OSが入出力装置
を最初に使用開始した後に入出力直接実行モードから入
出力シミュレーションモードへの移行を要求されたこと
に応じて、上記入出力装置の入出力実行状態を調べる手
段により該入出力装置の入出力実行状態をVMCPが認識し
〔第1図(b)の111〕、上記モード切り替え手段〔第
9図記載のA命令〕により、該入出力装置に入出力シミ
ュレーションモードを設定する〔第1図(b)の112〕
ことを特徴としている。
さらに、1台の計算機において仮想計算機制御プログラ
ム(VMCP)の管理下で少なくとも1つのオペレーティン
グシステム(OS)が走行し、前記計算機の入出力装置対
応に入出力シミュレーションモードあるいは入出力直接
実行モードが設定され、入出力シミュレーションモード
が設定された入出力装置に対するOSからの入出力命令は
VMCPがシミュレーションして実行し、入出力直接実行モ
ードが設定された入出力装置に対するOSからの入出力命
令はVMCPが介在することなく前記計算機により直接実行
するとともに、上記2つのモードを切り替えるモード切
り替え手段〔第9図記載のA命令〕および上記入出力装
置の入出力実行状態を調べる手段〔明細書44頁第17行目
から45頁第7行目に記載のSTSCH命令〕を有する仮想計
算機システムの入出力制御方法であって、OSが入出力装
置を最初に使用開始した後に入出力直接実行モードから
入出力シミュレーションモードへの移行を要求されたこ
とに応じて、VMCPはOSが発行した入出力命令のシミュレ
ーションを実行保留することを開始し〔第1図(c)の
116〕、上記モード切り替え手段〔第9図記載のA命
令〕により、該入出力装置に入出力シミュレーションモ
ードを設定し〔第1図(c)の117〕、上記入出力装置
の状態を調べる手段により該入出力装置の入出力が完了
したかを判定し〔第1図(c)の119〕、前記判定を満
足した時点で、前記入出力命令の実行保留を解除する
〔第1図(c)の120〕ことを特徴としている。
ム(VMCP)の管理下で少なくとも1つのオペレーティン
グシステム(OS)が走行し、前記計算機の入出力装置対
応に入出力シミュレーションモードあるいは入出力直接
実行モードが設定され、入出力シミュレーションモード
が設定された入出力装置に対するOSからの入出力命令は
VMCPがシミュレーションして実行し、入出力直接実行モ
ードが設定された入出力装置に対するOSからの入出力命
令はVMCPが介在することなく前記計算機により直接実行
するとともに、上記2つのモードを切り替えるモード切
り替え手段〔第9図記載のA命令〕および上記入出力装
置の入出力実行状態を調べる手段〔明細書44頁第17行目
から45頁第7行目に記載のSTSCH命令〕を有する仮想計
算機システムの入出力制御方法であって、OSが入出力装
置を最初に使用開始した後に入出力直接実行モードから
入出力シミュレーションモードへの移行を要求されたこ
とに応じて、VMCPはOSが発行した入出力命令のシミュレ
ーションを実行保留することを開始し〔第1図(c)の
116〕、上記モード切り替え手段〔第9図記載のA命
令〕により、該入出力装置に入出力シミュレーションモ
ードを設定し〔第1図(c)の117〕、上記入出力装置
の状態を調べる手段により該入出力装置の入出力が完了
したかを判定し〔第1図(c)の119〕、前記判定を満
足した時点で、前記入出力命令の実行保留を解除する
〔第1図(c)の120〕ことを特徴としている。
さらに、1台の計算機において仮想計算機制御プログラ
ム(VMCP)の管理下で少なくとも1つのオペレーティン
グシステム(OS)が走行し、前記計算機の入出力装置対
応に入出力シミュレーションモードあるいは入出力直接
実行モードが設定され、入出力シミュレーションモード
が設定された入出力装置に対するOSからの入出力命令は
VMCPがシミュレーションして実行し、入出力直接実行モ
ードが設定された入出力装置に対するOSからの入出力命
令はVMCPが介在することなく前記計算機により直接実行
するとともに、上記2つのモードを切り替えるモード切
り替え手段〔第9図記載のA命令〕および上記入出力装
置の入出力実行状態を調べる手段〔明細書44頁第17行目
から45頁第7行目に記載のSTSCH命令〕を有する仮想計
算機システムの入出力制御方法であって、OSが入出力装
置を最初に使用開始した後に入出力直接実行モードから
入出力シミュレーションモードへの移行を要求されたこ
とに応じて、VMCPはOSが発行した入出力命令のシミュレ
ーションを実行保留することを開始し〔第1図(d)の
123〕、上記モード切り替え手段〔第9図記載のA命
令〕により、該入出力装置に入出力シミュレーションモ
ードを設定し〔第1図(d)の124〕、前記実行保留の
開始から一定の時間が経過した〔第1図(d)の125,12
6〕とき、上記入出力装置の入出力実行状態を調べる手
段により該入出力装置の入出力実行状態をVMCPが認識す
るとともに〔第1図(d)の127〕、前記実行保留を解
除する〔第1図(d)の128〕ことを特徴としている。
ム(VMCP)の管理下で少なくとも1つのオペレーティン
グシステム(OS)が走行し、前記計算機の入出力装置対
応に入出力シミュレーションモードあるいは入出力直接
実行モードが設定され、入出力シミュレーションモード
が設定された入出力装置に対するOSからの入出力命令は
VMCPがシミュレーションして実行し、入出力直接実行モ
ードが設定された入出力装置に対するOSからの入出力命
令はVMCPが介在することなく前記計算機により直接実行
するとともに、上記2つのモードを切り替えるモード切
り替え手段〔第9図記載のA命令〕および上記入出力装
置の入出力実行状態を調べる手段〔明細書44頁第17行目
から45頁第7行目に記載のSTSCH命令〕を有する仮想計
算機システムの入出力制御方法であって、OSが入出力装
置を最初に使用開始した後に入出力直接実行モードから
入出力シミュレーションモードへの移行を要求されたこ
とに応じて、VMCPはOSが発行した入出力命令のシミュレ
ーションを実行保留することを開始し〔第1図(d)の
123〕、上記モード切り替え手段〔第9図記載のA命
令〕により、該入出力装置に入出力シミュレーションモ
ードを設定し〔第1図(d)の124〕、前記実行保留の
開始から一定の時間が経過した〔第1図(d)の125,12
6〕とき、上記入出力装置の入出力実行状態を調べる手
段により該入出力装置の入出力実行状態をVMCPが認識す
るとともに〔第1図(d)の127〕、前記実行保留を解
除する〔第1図(d)の128〕ことを特徴としている。
以下、本発明の一実施例を、図面により詳細に説明す
る。
る。
まず、本発明の原理的な説明をする。
本発明は、入出力シミュレーションモードから入出力直
接実行モードへの入出力実行モード制御と、入出力直接
実行モードから入出力シミュレーションモードへの入出
力実行モード制御からなる。入出力直接実行モードの入
出力装置では、入出力制御は全て入出力装置を占有する
OSが行い、VMCPは介在しない。他方、入出力シミュレー
ションモードの入出力装置では、OSからの入出力命令の
実行および、それに関連する入出力割込みのOSへの反映
はVMCPが介在して行われる。
接実行モードへの入出力実行モード制御と、入出力直接
実行モードから入出力シミュレーションモードへの入出
力実行モード制御からなる。入出力直接実行モードの入
出力装置では、入出力制御は全て入出力装置を占有する
OSが行い、VMCPは介在しない。他方、入出力シミュレー
ションモードの入出力装置では、OSからの入出力命令の
実行および、それに関連する入出力割込みのOSへの反映
はVMCPが介在して行われる。
このため、入出力シミュレーションモードから入出力直
接実行モードに移行する場合、OSのみに入出力制御を委
ねてよいかをVMCPにより判定する。そして、モードの移
行条件を満足した時点で、該入出力装置の実行モードを
指定するフィールドに、実行モードを設定する手段によ
り入出力直接実行モードを設定する。
接実行モードに移行する場合、OSのみに入出力制御を委
ねてよいかをVMCPにより判定する。そして、モードの移
行条件を満足した時点で、該入出力装置の実行モードを
指定するフィールドに、実行モードを設定する手段によ
り入出力直接実行モードを設定する。
入出力直接実行モードから入出力シミュレーションモー
ドに移行するには、次の3つの方法により可能である。
ドに移行するには、次の3つの方法により可能である。
1番目の方法は、入出力シミュレーションモードへの移
行要求があった時点で、実行モードを設定する手段によ
り、入出力直接実行モードを解除する。さらに、入出力
装置のハードウェア情報を入出力装置の状態を調べる命
令によりVMCP側に取込み、この情報をもとに、VMCPによ
る入出力シミュレーションを行おうとするものである。
行要求があった時点で、実行モードを設定する手段によ
り、入出力直接実行モードを解除する。さらに、入出力
装置のハードウェア情報を入出力装置の状態を調べる命
令によりVMCP側に取込み、この情報をもとに、VMCPによ
る入出力シミュレーションを行おうとするものである。
2番目の方法では、入出力シミュレーションモードへの
移行要求があった時点で、実行モードを設定する手段に
より入出力直接実行モードを解除する。さらに、該入出
力装置への入出力命令実行要求は、VMCPで強制的に保留
することを開始する。そして、入出力装置の状態を調べ
る命令により、該当入出力装置の入出力が完了したこと
を確認した後、VMCPで強制的に入出力命令実行要求を保
留することを解除して、シミュレーションモードへ移行
するものである。
移行要求があった時点で、実行モードを設定する手段に
より入出力直接実行モードを解除する。さらに、該入出
力装置への入出力命令実行要求は、VMCPで強制的に保留
することを開始する。そして、入出力装置の状態を調べ
る命令により、該当入出力装置の入出力が完了したこと
を確認した後、VMCPで強制的に入出力命令実行要求を保
留することを解除して、シミュレーションモードへ移行
するものである。
3番目の方法では、入出力シミュレーションモードへの
移行要求があった時点で、実行モードを設定する手段に
より入出力直接実行モードを解除する。さらに、該入出
力装置への入出力命令実行要求はVMCPで強制的に保留す
ることを開始する。そして、一定時間経過後、VMCPで強
制的に入出力命令実行要求を保留することを解除する。
さらに、移行要求を持つ入出力装置のハードウェア情報
を入出力装置の状態を調べる命令によりVMCP側に取込
み、この情報をもとに、VMCPによる入出力シミュレーシ
ョンを行おうとするものである。以下、図面を用いて上
述の方法を具体的に説明する。
移行要求があった時点で、実行モードを設定する手段に
より入出力直接実行モードを解除する。さらに、該入出
力装置への入出力命令実行要求はVMCPで強制的に保留す
ることを開始する。そして、一定時間経過後、VMCPで強
制的に入出力命令実行要求を保留することを解除する。
さらに、移行要求を持つ入出力装置のハードウェア情報
を入出力装置の状態を調べる命令によりVMCP側に取込
み、この情報をもとに、VMCPによる入出力シミュレーシ
ョンを行おうとするものである。以下、図面を用いて上
述の方法を具体的に説明する。
第1図に入出力装置を入出力シミュレーションモードと
入出力直接実行モードの間でのモード移行処理フローチ
ャートを示す。以下、第1図に従ってモード移行の概要
を説明し、後述第2図以降の図面によりモード移行を具
体的に詳述する。
入出力直接実行モードの間でのモード移行処理フローチ
ャートを示す。以下、第1図に従ってモード移行の概要
を説明し、後述第2図以降の図面によりモード移行を具
体的に詳述する。
第1図(a)は、本実施例による入出力シミュレーショ
ンモードの入出力装置を入出力直接実行モードに移行さ
せる処理フローチャートである。以下、第1図(a)に
従って説明する。
ンモードの入出力装置を入出力直接実行モードに移行さ
せる処理フローチャートである。以下、第1図(a)に
従って説明する。
まず、入出力直接実行モードへの移行判定開始が行なわ
れると(ステップ101)、次に、該当VM上のOSに制御が
渡った時点でVMCPは該当入出力装置の入出力命令実行要
求キューを持つか否かを調べる(ステップ102)。この
入出力命令実行要求キューを持たない場合は、入出力直
接実行モードにしようとするVMの該当入出力装置の入出
力割込み保留をVMCPは持つか否かを調べる(ステップ10
3)。入出力割込み保留を持たない場合は、入出力直接
実行モードにしようとする入出力装置に対してVMCPおよ
び該当VM以外のVMは、入出力実行中でなく、かつ、入出
力割込み保留中でないかを調べる(ステップ104)。入
出力割込み保留中でない場合は、入出力直接実行モード
にしようとする入出力装置に関連する入出力割込みを制
御する入出力割込みサブクラスを該当VMが占有している
か、または占有可能であるか調べる(ステップ105)。
該当VMが占有しているか、占有可能である場合は、入出
力直接実行モードにしようとする入出力装置を該当VMは
占有しているか、または占有可能であるかを調べる(ス
テップ106)。該当入出力装置を該当VMが占有している
か、または占有可能である場合は、A命令(後述第9図
参照)により該当入出力装置を入出力直接実行モードに
移行する。ただし、該当サブクラス、該当入出力装置を
占有していない場合には、占有の処理を行う(ステップ
107)。以上の処理により入出力直接実行モードへの移
行判定を終了し(ステップ108)、上記モード移行条件
をすべて満足した時点で入出力シミュレーションモード
の入出力装置を入出力直接実行モードに移行できる。
れると(ステップ101)、次に、該当VM上のOSに制御が
渡った時点でVMCPは該当入出力装置の入出力命令実行要
求キューを持つか否かを調べる(ステップ102)。この
入出力命令実行要求キューを持たない場合は、入出力直
接実行モードにしようとするVMの該当入出力装置の入出
力割込み保留をVMCPは持つか否かを調べる(ステップ10
3)。入出力割込み保留を持たない場合は、入出力直接
実行モードにしようとする入出力装置に対してVMCPおよ
び該当VM以外のVMは、入出力実行中でなく、かつ、入出
力割込み保留中でないかを調べる(ステップ104)。入
出力割込み保留中でない場合は、入出力直接実行モード
にしようとする入出力装置に関連する入出力割込みを制
御する入出力割込みサブクラスを該当VMが占有している
か、または占有可能であるか調べる(ステップ105)。
該当VMが占有しているか、占有可能である場合は、入出
力直接実行モードにしようとする入出力装置を該当VMは
占有しているか、または占有可能であるかを調べる(ス
テップ106)。該当入出力装置を該当VMが占有している
か、または占有可能である場合は、A命令(後述第9図
参照)により該当入出力装置を入出力直接実行モードに
移行する。ただし、該当サブクラス、該当入出力装置を
占有していない場合には、占有の処理を行う(ステップ
107)。以上の処理により入出力直接実行モードへの移
行判定を終了し(ステップ108)、上記モード移行条件
をすべて満足した時点で入出力シミュレーションモード
の入出力装置を入出力直接実行モードに移行できる。
第1図(b)は、本実施例による入出力直接実行モード
の入出力装置を入出力シミュレーションモードへ移行さ
せる処理フローチャートである。以下、第1図(b)に
従って説明する。
の入出力装置を入出力シミュレーションモードへ移行さ
せる処理フローチャートである。以下、第1図(b)に
従って説明する。
まず、入出力シミュレーションモードへの移行要求があ
ると(ステップ110)、STSCH命令により、該当入出力装
置の状態をVMCP側に取り込む(ステップ111)。次に、
A命令(後述第9図参照)により該当入出力装置を入出
力シミュレーションモードに移行させる(ステップ11
2)。以上の処理により移行処理を終了する(ステップ1
13)。
ると(ステップ110)、STSCH命令により、該当入出力装
置の状態をVMCP側に取り込む(ステップ111)。次に、
A命令(後述第9図参照)により該当入出力装置を入出
力シミュレーションモードに移行させる(ステップ11
2)。以上の処理により移行処理を終了する(ステップ1
13)。
第1図(c)は、他の実施例による入出力直接実行モー
ドの入出力装置を入出力シミュレーションモードへ移行
させる処理フローチャートである。
ドの入出力装置を入出力シミュレーションモードへ移行
させる処理フローチャートである。
以下、第1図(c)に従って説明する。
まず、入出力シミュレーションモードへの移行要求があ
ると(ステップ115)、該当入出力装置への入出力命令
実行要求をVMCPが強制的に保留することを開始する(ス
テップ116)。次に、A命令(後述第9図参照)により
該当入出力装置の入出力直接実行モードを解除する(ス
テップ117)。その後、入出力シミュレーションモード
への移行判定を開始する(ステップ118)。まず、該当
入出力装置に関する入出力が全て完了したか否かを調べ
る(ステップ119)。全て完了した場合は、該当入出力
装置への入出力命令実行要求をVMCPが強制的に保留する
ことを解除する(ステップ120)。以上の処理により入
出力シミュレーションモードへの移行判定を終了し(ス
テップ121)、入出力直接実行モードの入出力装置を入
出力シミュレーションモードへ移行できる。
ると(ステップ115)、該当入出力装置への入出力命令
実行要求をVMCPが強制的に保留することを開始する(ス
テップ116)。次に、A命令(後述第9図参照)により
該当入出力装置の入出力直接実行モードを解除する(ス
テップ117)。その後、入出力シミュレーションモード
への移行判定を開始する(ステップ118)。まず、該当
入出力装置に関する入出力が全て完了したか否かを調べ
る(ステップ119)。全て完了した場合は、該当入出力
装置への入出力命令実行要求をVMCPが強制的に保留する
ことを解除する(ステップ120)。以上の処理により入
出力シミュレーションモードへの移行判定を終了し(ス
テップ121)、入出力直接実行モードの入出力装置を入
出力シミュレーションモードへ移行できる。
第1図(d)は、他の実施例による入出力直接実行モー
ドの入出力装置を入出力シミュレーションモードへ移行
させる処理フローチャートである。
ドの入出力装置を入出力シミュレーションモードへ移行
させる処理フローチャートである。
以下、第1図(d)に従って説明する。
まず、入出力シミュレーションモードへの移行要求があ
ると(ステップ122)、該当入出力装置への入出力命令
実行要求をVMCPが強制的に保留することを開始する(ス
テップ123)、次に、A命令(後述第9図参照)により
該当入出力装置の入出力直接実行モードを解除する(ス
テップ124)。その後、予め定められた時間が経過した
時、タイマ割込みを発生させるために、タイマ割込み要
求ブロックをVMCPのタイマ割込み要求キューに登録する
(ステップ125)。次に、タイマ割込みが発生すると
(ステップ126)、STSCH命令により該当入出力装置の状
態をVMCP側に取り込む(ステップ127)。次に、該当入
出力装置への入出力命令実行要求をVMCPが強制的に保留
することを解除する(ステップ128)。以上の処理によ
り入出力装置の入出力直接実行モードから入出力シミュ
レーションモードへの移行を終了する(ステップ12
9)。
ると(ステップ122)、該当入出力装置への入出力命令
実行要求をVMCPが強制的に保留することを開始する(ス
テップ123)、次に、A命令(後述第9図参照)により
該当入出力装置の入出力直接実行モードを解除する(ス
テップ124)。その後、予め定められた時間が経過した
時、タイマ割込みを発生させるために、タイマ割込み要
求ブロックをVMCPのタイマ割込み要求キューに登録する
(ステップ125)。次に、タイマ割込みが発生すると
(ステップ126)、STSCH命令により該当入出力装置の状
態をVMCP側に取り込む(ステップ127)。次に、該当入
出力装置への入出力命令実行要求をVMCPが強制的に保留
することを解除する(ステップ128)。以上の処理によ
り入出力装置の入出力直接実行モードから入出力シミュ
レーションモードへの移行を終了する(ステップ12
9)。
第2図は、本発明を適用した仮想計算機システムの主要
構成図である。
構成図である。
第2図において、1は主記憶装置、2はVMCPがハードウ
ェアの状態を記憶しておく領域のプレフィクス・セーブ
・エリア(以下、PSAという)、2−1,・・・,2−i,・
・・,2−nは仮想計算機VMi(i=1〜n)のPSA、3は
プレフィクスレジスタであり、VMiの走行中は、そのVMi
のPSA2−i(i=1〜n)のアドレスを格納し、VMCPに
制御が渡った時には、VMCPのPSA2のアドレスを格納して
いる。4は命令レジスタ、5は命令実行回路、6は命令
実行回路5内の命令実行マイクロプログラム、7は割込
み回路、8は割込み回路7内の割込みマイクロプログラ
ム、9は入出力装置群、10−1,・・・,10−j,・・・,10
−kは入出力装置である。
ェアの状態を記憶しておく領域のプレフィクス・セーブ
・エリア(以下、PSAという)、2−1,・・・,2−i,・
・・,2−nは仮想計算機VMi(i=1〜n)のPSA、3は
プレフィクスレジスタであり、VMiの走行中は、そのVMi
のPSA2−i(i=1〜n)のアドレスを格納し、VMCPに
制御が渡った時には、VMCPのPSA2のアドレスを格納して
いる。4は命令レジスタ、5は命令実行回路、6は命令
実行回路5内の命令実行マイクロプログラム、7は割込
み回路、8は割込み回路7内の割込みマイクロプログラ
ム、9は入出力装置群、10−1,・・・,10−j,・・・,10
−kは入出力装置である。
第3図は、VMCPが入出力制御のために使用する主記憶装
置1内の制御ブロック図である。
置1内の制御ブロック図である。
第3図において、11−1,・・・,11−i,・・・,11−nは
仮想制御ブロックであり、VMi(i=1〜n)の仮想的
な計算機資源の状態を示す。12は実制御ブロックであ
り、VMCPが認識する計算機資源の状態を示す。各仮想制
御ブロック11−i(i=1〜n)には、VMi(i=1〜
n)のプログラム・ステータス・ワード(以下、PSWと
いう)を格納するVPSW13−i(i=1〜n),VMi(i=
1〜n)の入出力割込みをサブマスクにより制御する制
御レジスタを格納する仮想制御レジスタ14−i(i=1
〜n),および,VMi(i=1〜n)の入出力装置群の状
態を記述する仮想入出力制御ブロック15−i(i=1〜
n)からなる。また、仮想制御入出力装置制御ブロック
15−i−r(i=1〜n)は、VMiの入出力装置の状態
を記述する。16は実入出力装置全体の入出力制御を行う
実入出力制御ブロック、実入出力制御ブロック16中の実
入出力装置制御ブロック16−j(j=1〜k)は、VMCP
が認識する各入出力装置10−j(j=1〜k)の状態を
示す。17はハードウェア制御情報を有するソフトウェア
−マイクロプログラム間インターフェース部であり、ソ
フトウェアでは参照および書込みは不可能であり、マイ
クロプログラムでのみ参照および書込みが可能な主記憶
装置1上の領域である。ソフトウェア−マイクロプログ
ラム間インターフェース部17内の入出力装置フィールド
18−j(j=1〜k)は、各入出力装置10−j(j=1
〜k)の状態を表す領域である。19−1,・・・,19−j,
・・・,19−kは、VMの入出力制御のために用いる入出
力装置VM用フィールドである。
仮想制御ブロックであり、VMi(i=1〜n)の仮想的
な計算機資源の状態を示す。12は実制御ブロックであ
り、VMCPが認識する計算機資源の状態を示す。各仮想制
御ブロック11−i(i=1〜n)には、VMi(i=1〜
n)のプログラム・ステータス・ワード(以下、PSWと
いう)を格納するVPSW13−i(i=1〜n),VMi(i=
1〜n)の入出力割込みをサブマスクにより制御する制
御レジスタを格納する仮想制御レジスタ14−i(i=1
〜n),および,VMi(i=1〜n)の入出力装置群の状
態を記述する仮想入出力制御ブロック15−i(i=1〜
n)からなる。また、仮想制御入出力装置制御ブロック
15−i−r(i=1〜n)は、VMiの入出力装置の状態
を記述する。16は実入出力装置全体の入出力制御を行う
実入出力制御ブロック、実入出力制御ブロック16中の実
入出力装置制御ブロック16−j(j=1〜k)は、VMCP
が認識する各入出力装置10−j(j=1〜k)の状態を
示す。17はハードウェア制御情報を有するソフトウェア
−マイクロプログラム間インターフェース部であり、ソ
フトウェアでは参照および書込みは不可能であり、マイ
クロプログラムでのみ参照および書込みが可能な主記憶
装置1上の領域である。ソフトウェア−マイクロプログ
ラム間インターフェース部17内の入出力装置フィールド
18−j(j=1〜k)は、各入出力装置10−j(j=1
〜k)の状態を表す領域である。19−1,・・・,19−j,
・・・,19−kは、VMの入出力制御のために用いる入出
力装置VM用フィールドである。
第4図は、第3図の各入出力装置VM用フィールド19−j
の詳細図である。ここで、j=1〜kとする。
の詳細図である。ここで、j=1〜kとする。
各入出力装置VM用フィールド19−jは、VM番号フィール
ド19−j−1、実サブクラス番号フィールド19−j−
2、入出力直接実行モードビット19−j−3、アーキテ
クチャ番号フィールド19−j−4からなる。VM番号フィ
ールド19−j−1は、この入出力装置に対する入出力を
直接実行の対象としているVMを識別するためのフィール
ドであり、入出力直接実行モードビット19−j−3が
“1"の時のみ有効となる。実サブクラス番号フィールド
19−j−2は、この入出力装置10−jの入出力割込みを
制御する入出力割込みサブクラス番号を格納するフィー
ルドである。すなわち、実サブクラス番号フィールド19
−j−2の値がqの時、この入出力装置10−jの入出力
割込みは、後述第7図に示す制御レジスタ14のビットq
の値であるMqの制御を受ける。これについては、後で詳
しく述べる。入出力直接実行モードビット19−j−3
は、“1"の時、該当する入出力装置10−jが入出力直接
実行モードであることを示し、“0"の時、入出力直接実
行モードでないことを表す。
ド19−j−1、実サブクラス番号フィールド19−j−
2、入出力直接実行モードビット19−j−3、アーキテ
クチャ番号フィールド19−j−4からなる。VM番号フィ
ールド19−j−1は、この入出力装置に対する入出力を
直接実行の対象としているVMを識別するためのフィール
ドであり、入出力直接実行モードビット19−j−3が
“1"の時のみ有効となる。実サブクラス番号フィールド
19−j−2は、この入出力装置10−jの入出力割込みを
制御する入出力割込みサブクラス番号を格納するフィー
ルドである。すなわち、実サブクラス番号フィールド19
−j−2の値がqの時、この入出力装置10−jの入出力
割込みは、後述第7図に示す制御レジスタ14のビットq
の値であるMqの制御を受ける。これについては、後で詳
しく述べる。入出力直接実行モードビット19−j−3
は、“1"の時、該当する入出力装置10−jが入出力直接
実行モードであることを示し、“0"の時、入出力直接実
行モードでないことを表す。
次に、入出力シミュレーションモードおよび入出力直接
実行モードの入出力装置において、OSからの入出力命令
および、入出力装置からの入出力割込みがどのように処
理されるかについて述べる。
実行モードの入出力装置において、OSからの入出力命令
および、入出力装置からの入出力割込みがどのように処
理されるかについて述べる。
任意のOSiが、入出力シミュレーションモードの入出力
装置10−jに入出力命令実行要求を出すと、第2図の信
号線100により命令レジスタ4に信号が送られ、命令レ
ジスタ4は、信号線101により該当する命令の起動信号
を命令実行回路5に送る。命令実行回路5および命令実
行マイクロプログラム6は、信号線102により入出力装
置10−jに対応する入出力装置フィールド18−jの入出
力直接実行モードビット19−j−3を調べる。この時、
入出力直接実行モードビット19−j−3は“0"となって
いるので、プレフィクスレジスタ3にVMCPのPSA2のアド
レスを設定し、VMCPの入出力命令制御プログラムに制御
を渡す。VMCPの入出力命令制御プログラムは、仮想入出
力制御ブロック15−iの情報によりこの入出力命令のシ
ミュレーションを行う。
装置10−jに入出力命令実行要求を出すと、第2図の信
号線100により命令レジスタ4に信号が送られ、命令レ
ジスタ4は、信号線101により該当する命令の起動信号
を命令実行回路5に送る。命令実行回路5および命令実
行マイクロプログラム6は、信号線102により入出力装
置10−jに対応する入出力装置フィールド18−jの入出
力直接実行モードビット19−j−3を調べる。この時、
入出力直接実行モードビット19−j−3は“0"となって
いるので、プレフィクスレジスタ3にVMCPのPSA2のアド
レスを設定し、VMCPの入出力命令制御プログラムに制御
を渡す。VMCPの入出力命令制御プログラムは、仮想入出
力制御ブロック15−iの情報によりこの入出力命令のシ
ミュレーションを行う。
このVMCPによるシミュレーションでは、仮想入出力制御
ブロック15−iの情報と命令の種類により、入出力装置
10−jに対して入出力命令を発行することもあれば、発
行しないこともある。入出力命令を発行する必要のある
場合には、実入出力制御ブロック16の対応する実入出力
装置制御ブロック16−jに、入出力命令を実行するため
に、必要な情報およびVM識別情報を入出力命令実行要求
として、キューイングする。第5図に実入出力装置制御
ブロック16−jの詳細図を示す。この実入出力装置制御
ブロック16−jは、入出力実行要求ポインタ16−j−1,
実ステータスフィールド16−j−2,入出力実行中ポイン
タ16−j−3,占有元VM識別フィールド16−j−4からな
る。入出力実行要求ポインタ16−j−1は、最初のこの
入出力装置10−jに対する入出力命令実行要求の領域の
アドレスを格納する領域である。第5図では、2つの入
出力命令実行要求21−1および21−2がキューイングさ
れている。入出力実行要求ポインタ16−j−1には、入
出力命令実行要求がない場合、実入出力装置制御ブロッ
ク16−jの先頭アドレスが格納される。すなわち、入出
力実行要求ポインタ16−j−1と実入出力装置制御ブロ
ック16−jの先頭アドレスが等しい時、実入出力装置制
御ブロック16−jには、入出力実行要求はキューイング
されていない。入出力命令実行要求キューにキューイン
グされた入出力命令実行要求に対応する入出力命令を発
行する場合、この要求を入出力命令実行要求キューから
取りはずして、入出力実行中ポインタ16−j−3に、こ
の要求の先頭アドレスを格納する。また、該当入出力装
置が使用中であることを示す実ステータスフィールド16
−j−2のビットaを“1"に設定する。
ブロック15−iの情報と命令の種類により、入出力装置
10−jに対して入出力命令を発行することもあれば、発
行しないこともある。入出力命令を発行する必要のある
場合には、実入出力制御ブロック16の対応する実入出力
装置制御ブロック16−jに、入出力命令を実行するため
に、必要な情報およびVM識別情報を入出力命令実行要求
として、キューイングする。第5図に実入出力装置制御
ブロック16−jの詳細図を示す。この実入出力装置制御
ブロック16−jは、入出力実行要求ポインタ16−j−1,
実ステータスフィールド16−j−2,入出力実行中ポイン
タ16−j−3,占有元VM識別フィールド16−j−4からな
る。入出力実行要求ポインタ16−j−1は、最初のこの
入出力装置10−jに対する入出力命令実行要求の領域の
アドレスを格納する領域である。第5図では、2つの入
出力命令実行要求21−1および21−2がキューイングさ
れている。入出力実行要求ポインタ16−j−1には、入
出力命令実行要求がない場合、実入出力装置制御ブロッ
ク16−jの先頭アドレスが格納される。すなわち、入出
力実行要求ポインタ16−j−1と実入出力装置制御ブロ
ック16−jの先頭アドレスが等しい時、実入出力装置制
御ブロック16−jには、入出力実行要求はキューイング
されていない。入出力命令実行要求キューにキューイン
グされた入出力命令実行要求に対応する入出力命令を発
行する場合、この要求を入出力命令実行要求キューから
取りはずして、入出力実行中ポインタ16−j−3に、こ
の要求の先頭アドレスを格納する。また、該当入出力装
置が使用中であることを示す実ステータスフィールド16
−j−2のビットaを“1"に設定する。
OSの入出力命令のシミュレーションのためでなくVMCPが
固有に入出力命令を発行する場合、入出力命令を実行す
るために必要な情報およびVMCPの入出力命令実行要求で
あることを識別する情報を入出力命令実行要求に設定し
て、実入出力装置制御ブロック16−jにキューイングす
る。VMCP固有の入出力命令を実行する場合には、実ステ
ータスフィールド16−j−2のaビットおよびbビット
を共に“1"に設定する。このaビットおよびbビット
は、入出力完了割込み発生時にVMCPにより“0"に設定さ
れる。
固有に入出力命令を発行する場合、入出力命令を実行す
るために必要な情報およびVMCPの入出力命令実行要求で
あることを識別する情報を入出力命令実行要求に設定し
て、実入出力装置制御ブロック16−jにキューイングす
る。VMCP固有の入出力命令を実行する場合には、実ステ
ータスフィールド16−j−2のaビットおよびbビット
を共に“1"に設定する。このaビットおよびbビット
は、入出力完了割込み発生時にVMCPにより“0"に設定さ
れる。
一方、入出力装置10−jからの入出力割込みのVMCPによ
るシミュレーションは次のように行われる。第6図にPS
Wの構造、第7図に制御レジスタの構造を示し、それを
用いて説明する。入出力割込みの制御は、第6図に示す
PSW13のIビット20および第7図に示す入出力割込みを
制御するサブマスクを有する制御レジスタ14により行な
う。PSW13のIビット20が“1"、かつ、入出力装置10−
jに対応する入出力装置VM用フィールド19−jの実サブ
クラス番号フィールド19−j−2により指定される入出
力割込みを制御する制御レジスタ14のビットが“1"の時
のみ、該当入出力装置10−jから入出力割込みが発生
し、信号線104により入出力割込み信号が割込み回路7
に送られる。割込み回路7および割込みマイクロプログ
ラム8は、信号線105により該当する入出力装置10−j
の入出力装置フィールド18−jの入出力直接実行モード
ビット19−j−3の値を調べ、その値が“0"であるの
で、制御をVMCPに渡すために、プレフィクスレジスタ3
にVMCPのPSA2のアドレスを格納後、入出力割込みが発生
し、VMCPの入出力割込み制御プログラムに制御を渡す。
るシミュレーションは次のように行われる。第6図にPS
Wの構造、第7図に制御レジスタの構造を示し、それを
用いて説明する。入出力割込みの制御は、第6図に示す
PSW13のIビット20および第7図に示す入出力割込みを
制御するサブマスクを有する制御レジスタ14により行な
う。PSW13のIビット20が“1"、かつ、入出力装置10−
jに対応する入出力装置VM用フィールド19−jの実サブ
クラス番号フィールド19−j−2により指定される入出
力割込みを制御する制御レジスタ14のビットが“1"の時
のみ、該当入出力装置10−jから入出力割込みが発生
し、信号線104により入出力割込み信号が割込み回路7
に送られる。割込み回路7および割込みマイクロプログ
ラム8は、信号線105により該当する入出力装置10−j
の入出力装置フィールド18−jの入出力直接実行モード
ビット19−j−3の値を調べ、その値が“0"であるの
で、制御をVMCPに渡すために、プレフィクスレジスタ3
にVMCPのPSA2のアドレスを格納後、入出力割込みが発生
し、VMCPの入出力割込み制御プログラムに制御を渡す。
VMCPの入出力割込み制御プログラムでは、入出力実行中
ポインタ16−j−3で示される入出力命令実行要求内の
VM識別情報をもとに、該当VMの仮想制御ブロック(VBLO
KS)11−i中の該当する仮想入出力装置制御ブロック15
−i−rに入出力割込み情報を格納する。OSiのアーキ
テクチャにより、OSiに反映すべき入出力割込みの情報
は異なる。このため、VMCPは、VMCPのPSA2に格納された
入出力割込み情報および入出力装置フィールド18−j中
にある入出力割込み情報をOSiのアーキテクチャにおけ
る入出力割込み情報に変換して、仮想入出力装置制御ブ
ロック15−i−rに入出力割込み情報を格納するととも
に、該入出力装置が入出力割込みをVMCPが保留している
ことを示す。仮想入出力装置制御ブロック15−i−rの
詳細説明図を第8図に示す。この仮想入出力装置制御ブ
ロック15−i−rは、仮想ステータスフィールド15−i
−r−1とサブクラス表示フィールド15−i−r−2か
らなる。次に、入出力割込み保留中を示す仮想ステータ
スフィールド15−i−r−1のgビットに“1"を設定す
る。
ポインタ16−j−3で示される入出力命令実行要求内の
VM識別情報をもとに、該当VMの仮想制御ブロック(VBLO
KS)11−i中の該当する仮想入出力装置制御ブロック15
−i−rに入出力割込み情報を格納する。OSiのアーキ
テクチャにより、OSiに反映すべき入出力割込みの情報
は異なる。このため、VMCPは、VMCPのPSA2に格納された
入出力割込み情報および入出力装置フィールド18−j中
にある入出力割込み情報をOSiのアーキテクチャにおけ
る入出力割込み情報に変換して、仮想入出力装置制御ブ
ロック15−i−rに入出力割込み情報を格納するととも
に、該入出力装置が入出力割込みをVMCPが保留している
ことを示す。仮想入出力装置制御ブロック15−i−rの
詳細説明図を第8図に示す。この仮想入出力装置制御ブ
ロック15−i−rは、仮想ステータスフィールド15−i
−r−1とサブクラス表示フィールド15−i−r−2か
らなる。次に、入出力割込み保留中を示す仮想ステータ
スフィールド15−i−r−1のgビットに“1"を設定す
る。
VMCPでは、OSiの仮想PSWであるVPSW13−iのIビットお
よび仮想制御レジスタ14−iの仮想入出力装置制御ブロ
ック15−i−rに対応する割込みサブクラスが共に“1"
となった時、OSiのPSA2−iに入出力割込みを反映する
と共に、この仮想入出力装置制御ブロック15−i−rの
仮想ステータスフィールド15−i−r−1のgビットを
“0"に設定する。
よび仮想制御レジスタ14−iの仮想入出力装置制御ブロ
ック15−i−rに対応する割込みサブクラスが共に“1"
となった時、OSiのPSA2−iに入出力割込みを反映する
と共に、この仮想入出力装置制御ブロック15−i−rの
仮想ステータスフィールド15−i−r−1のgビットを
“0"に設定する。
OSiが入出力直接実行モードの入出力装置10−jに入出
力命令実行要求を出すと、第2図の信号線100を通して
命令レジスタ4に信号が送られる。命令レジスタ4は、
信号線101により該当命令の起動信号を命令実行回路5
に送る。命令実行回路5および命令実行マイクロプログ
ラム6は、信号線102により、この入出力装置10−jに
対応する入出力装置フィールド18−jの入出力直接実行
モードビット19−j−3を調べる。この時、入出力直接
実行モードビット19−j−3は“1"となっているので、
信号線103を通してOSiからの入出力命令が直接実行され
る。
力命令実行要求を出すと、第2図の信号線100を通して
命令レジスタ4に信号が送られる。命令レジスタ4は、
信号線101により該当命令の起動信号を命令実行回路5
に送る。命令実行回路5および命令実行マイクロプログ
ラム6は、信号線102により、この入出力装置10−jに
対応する入出力装置フィールド18−jの入出力直接実行
モードビット19−j−3を調べる。この時、入出力直接
実行モードビット19−j−3は“1"となっているので、
信号線103を通してOSiからの入出力命令が直接実行され
る。
入出力直接実行モードの入出力装置10−jの入出力割込
みがハードウェアに存在し、PSW13のIビット20が“1"
かつ、入出力装置10−jに対応する入出力装置VM用フィ
ールド19−jの実サブクラスフィールド19−j−2によ
り指定される制御レジスタ14のビットが“1"の時、入出
力割込みが発生する。割込み回路7および割込みマイク
ロプログラム8は、信号線105により、該当する入出力
装置10−jの入出力装置フィールド18−jの入出力直接
実行モードビット19−j−3の値を調べる。この値は、
“1"となっているので入出力割込みを発生し、割込み情
報を該VMのPSA2−iに格納する。OSiのアーキテクチャ
により、VMのPSAに反映する割込みの情報は異なる。こ
のため、入出力装置フィールド18−jには、この入出力
装置10−jを占有するOSiのアーキテクチャを識別する
情報が入っており、割込み回路7および割込みマイクロ
プログラム8は、OSiのアーキテクチャにおける入出力
の割込み情報をVMiのPSA2−iに格納する。
みがハードウェアに存在し、PSW13のIビット20が“1"
かつ、入出力装置10−jに対応する入出力装置VM用フィ
ールド19−jの実サブクラスフィールド19−j−2によ
り指定される制御レジスタ14のビットが“1"の時、入出
力割込みが発生する。割込み回路7および割込みマイク
ロプログラム8は、信号線105により、該当する入出力
装置10−jの入出力装置フィールド18−jの入出力直接
実行モードビット19−j−3の値を調べる。この値は、
“1"となっているので入出力割込みを発生し、割込み情
報を該VMのPSA2−iに格納する。OSiのアーキテクチャ
により、VMのPSAに反映する割込みの情報は異なる。こ
のため、入出力装置フィールド18−jには、この入出力
装置10−jを占有するOSiのアーキテクチャを識別する
情報が入っており、割込み回路7および割込みマイクロ
プログラム8は、OSiのアーキテクチャにおける入出力
の割込み情報をVMiのPSA2−iに格納する。
次に、入出力装置10−jが入出力直接実行モードである
か否かを指定する入出力直接実行モードビット19−j−
3を変更するために、本発明により設けられたA命令に
ついて説明する。第9図にA命令の構造を示す。
か否かを指定する入出力直接実行モードビット19−j−
3を変更するために、本発明により設けられたA命令に
ついて説明する。第9図にA命令の構造を示す。
第9図に示すように、A命令は、いわゆるS形式の命令
である。第2オペランドアドレス(D2/B2)は、命令の
対象とする入出力装置10−jを指定する入出力装置番
号、この入出力装置を直接実行の対象とするVMを識別す
るためのVM番号、このVMのアーキテクチャを指定するア
ーキテクチャ識別番号、および、該入出力装置に入出力
直接実行モードを指定するか非入出力直接実行モードを
指定するかの指定するモードビットを格納するフィール
ドのアドレスである。
である。第2オペランドアドレス(D2/B2)は、命令の
対象とする入出力装置10−jを指定する入出力装置番
号、この入出力装置を直接実行の対象とするVMを識別す
るためのVM番号、このVMのアーキテクチャを指定するア
ーキテクチャ識別番号、および、該入出力装置に入出力
直接実行モードを指定するか非入出力直接実行モードを
指定するかの指定するモードビットを格納するフィール
ドのアドレスである。
A命令を発行すると、信号線100を通して命令レジスタ
4に信号が送られ、信号線101によりA命令の起動信号
が命令実行回路5に送られる。命令実行回路5および命
令実行マイクロプログラム6は信号線102により、特定
の汎用レジスタで示された入出力装置番号に対応する入
出力装置フィールド18−jに、汎用レジスタ第2オペラ
ンドアドレス(D2/B2)で指定されたVM番号,モードビ
ット,アーキテクチャ識別番号をそれぞれ、VM番号フィ
ールド19−j−1,入出力直接実行モードビット19−j−
3,アーキテクチャ番号フィールド19−j−4に格納す
る。
4に信号が送られ、信号線101によりA命令の起動信号
が命令実行回路5に送られる。命令実行回路5および命
令実行マイクロプログラム6は信号線102により、特定
の汎用レジスタで示された入出力装置番号に対応する入
出力装置フィールド18−jに、汎用レジスタ第2オペラ
ンドアドレス(D2/B2)で指定されたVM番号,モードビ
ット,アーキテクチャ識別番号をそれぞれ、VM番号フィ
ールド19−j−1,入出力直接実行モードビット19−j−
3,アーキテクチャ番号フィールド19−j−4に格納す
る。
VMCPが入出力シミュレーションモードの入出力装置を入
出力直接実行モードに移行させるには、次のようにすれ
ばよい。まず、モード移行を要求する入出力装置を識別
するために、該当する入出力装置10−jに対応する仮想
入出力装置制御ブロック15−i−r内の仮想ステータス
フィールド15−i−r−1(第8図参照)のビットfを
“1"に設定する。
出力直接実行モードに移行させるには、次のようにすれ
ばよい。まず、モード移行を要求する入出力装置を識別
するために、該当する入出力装置10−jに対応する仮想
入出力装置制御ブロック15−i−r内の仮想ステータス
フィールド15−i−r−1(第8図参照)のビットfを
“1"に設定する。
この仮想ステータスフィールド15−i−r−1のビット
fが“1"の仮想入出力装置制御ブロック15−i−rに対
応する入出力装置10−jが以下の5条件を全て満足した
時点で、VMCPは該入出力装置10−jが未だ直接実行の対
象となるVMiの占有入出力装置となっていないならば、
実ステータスフィールド16−j−2のビットeを“1"と
するとともに、占有元VM識別フィールドにVMiの識別情
報を設定する。また、入出力装置VM用フィールド19−j
の実サブクラス番号フィールド19−j−2に指定された
サブクラスをVMiが占有していないならば、占有する。
このサブクラスの占有については、後で述べる。そし
て、A命令により該当入出力装置10−jを入出力直接実
行モードとすることができる。
fが“1"の仮想入出力装置制御ブロック15−i−rに対
応する入出力装置10−jが以下の5条件を全て満足した
時点で、VMCPは該入出力装置10−jが未だ直接実行の対
象となるVMiの占有入出力装置となっていないならば、
実ステータスフィールド16−j−2のビットeを“1"と
するとともに、占有元VM識別フィールドにVMiの識別情
報を設定する。また、入出力装置VM用フィールド19−j
の実サブクラス番号フィールド19−j−2に指定された
サブクラスをVMiが占有していないならば、占有する。
このサブクラスの占有については、後で述べる。そし
て、A命令により該当入出力装置10−jを入出力直接実
行モードとすることができる。
また、以後VMiを走行させる場合には、VMiが占有する入
出力直接実行モードの入出力装置に対応する割込みサブ
クラスを有する制御レジスタ14のビットを対応するVMi
の仮想制御レジスタ14−iの値に一致させる。また、PS
W13のIビット20の値もVPSW13−iのIビットの値に一
致させる。
出力直接実行モードの入出力装置に対応する割込みサブ
クラスを有する制御レジスタ14のビットを対応するVMi
の仮想制御レジスタ14−iの値に一致させる。また、PS
W13のIビット20の値もVPSW13−iのIビットの値に一
致させる。
入出力直接実行モードに移行するには、以下の5条件を
満足しなければならない。
満足しなければならない。
(i) 次に、VMi上のOSiに制御が渡った時点で、VMCP
は入出力装置10−jに対応する実入出力装置制御ブロッ
ク16−jに入出力命令実行要求キューを持たない。
は入出力装置10−jに対応する実入出力装置制御ブロッ
ク16−jに入出力命令実行要求キューを持たない。
(ii) 入出力直接実行モードにしようとする入出力装
置に対応するVMiの仮想入出力装置制御ブロック15−i
−rに入出力割込み保留がない。
置に対応するVMiの仮想入出力装置制御ブロック15−i
−rに入出力割込み保留がない。
(iii) 入出力直接実行モードにしようとする入出力
装置に対して、VMCP,およびVMi以外のVMは、入出力実行
中でなく、かつ、入出力割込み保留中でない。
装置に対して、VMCP,およびVMi以外のVMは、入出力実行
中でなく、かつ、入出力割込み保留中でない。
(iv) 入出力直接実行モードにしようとする入出力装
置に関連する入出力割込みを制御する入出力割込みサブ
クラスはVMiが占有しているか、または占有可能であ
る。
置に関連する入出力割込みを制御する入出力割込みサブ
クラスはVMiが占有しているか、または占有可能であ
る。
(v) 入出力直接実行モードにしようとする入出力装
置をVMiは占有しているか、または占有可能である。
置をVMiは占有しているか、または占有可能である。
上記5条件の必要性とVMCPによる判定方法について述べ
る。
る。
(i) 入出力装置10−jが入出力直接実行モードに移
行後、VMCPまたはVMi以外の入出力命令実行要求がある
と、キューイングされていたVMCPまたはVMi以外のVMの
要求を入出力実行中に、VMiがこの入出力に影響を与え
る入出力命令を発行して、VMCPまたは他VMの入出力制御
を混乱させる可能性がある。
行後、VMCPまたはVMi以外の入出力命令実行要求がある
と、キューイングされていたVMCPまたはVMi以外のVMの
要求を入出力実行中に、VMiがこの入出力に影響を与え
る入出力命令を発行して、VMCPまたは他VMの入出力制御
を混乱させる可能性がある。
また、VMiの入出力命令実行要求が存在するとき、VMiが
この実入出力装置制御ブロック16−jにキューイングさ
れた入出力命令要求に影響を与える命令を発行しても、
命令は直接実行されるので、入出力命令要求に影響を与
えることができない。このため、VMiの入出力制御上の
混乱を生じる可能性がある。
この実入出力装置制御ブロック16−jにキューイングさ
れた入出力命令要求に影響を与える命令を発行しても、
命令は直接実行されるので、入出力命令要求に影響を与
えることができない。このため、VMiの入出力制御上の
混乱を生じる可能性がある。
VMCPによる判定方法としては、該当する入出力装置に対
応する実入出力装置制御ブロック16−jの先頭アドレス
と、入出力実行要求ポインタ16−j−1の値が等しいか
否か調べればよい。その値が等しい場合、VMCPは該当す
る実入出力装置制御ブロック16−jに入出力命令実行要
求を持たない。
応する実入出力装置制御ブロック16−jの先頭アドレス
と、入出力実行要求ポインタ16−j−1の値が等しいか
否か調べればよい。その値が等しい場合、VMCPは該当す
る実入出力装置制御ブロック16−jに入出力命令実行要
求を持たない。
(ii) VMiの入出力割込み保留が対応する仮想入出力
装置制御ブロック15−i−rにある状態で入出力直接実
行モードに移行したとする。OSiが該当入出力装置10−
jに対して入出力命令を発行した場合、本来ならば、入
出力割込み保留中である入出力装置へ入出力命令を発行
した場合と同じ動作が命令実行回路5,命令実行マイクロ
プログラム6,および入出力装置群9で行わなければなら
ない。しかし、ハードウェアからの入出力割込みは既に
発生しているので、命令実行回路5,命令実行マイクロプ
ログラム6,および入出力装置群9により本来取られない
はずの動作が行われ、OSiの入出力制御に混乱を生じる
可能性がある。VMCPによる判定方法としては、仮想ステ
ータスフィールド15−i−r−1のfビットが“1"、g
ビットが“0"であるときは、VMCPによる入出力割込み保
留はない。
装置制御ブロック15−i−rにある状態で入出力直接実
行モードに移行したとする。OSiが該当入出力装置10−
jに対して入出力命令を発行した場合、本来ならば、入
出力割込み保留中である入出力装置へ入出力命令を発行
した場合と同じ動作が命令実行回路5,命令実行マイクロ
プログラム6,および入出力装置群9で行わなければなら
ない。しかし、ハードウェアからの入出力割込みは既に
発生しているので、命令実行回路5,命令実行マイクロプ
ログラム6,および入出力装置群9により本来取られない
はずの動作が行われ、OSiの入出力制御に混乱を生じる
可能性がある。VMCPによる判定方法としては、仮想ステ
ータスフィールド15−i−r−1のfビットが“1"、g
ビットが“0"であるときは、VMCPによる入出力割込み保
留はない。
(iii) VMCPまたは他VMが入出力実行中または入出力
割込み保留中に該当入出力装置10−jの入出力直接実行
モードに移行したとする。OSiがこの入出力装置10−j
に対して入出力命令を発行すると、命令の種類により入
出力動作を停止させたり、保留中の入出力割込みを解除
する可能性がある。これにより、VMCPまたは他VMの入出
力が混乱する可能性がある。
割込み保留中に該当入出力装置10−jの入出力直接実行
モードに移行したとする。OSiがこの入出力装置10−j
に対して入出力命令を発行すると、命令の種類により入
出力動作を停止させたり、保留中の入出力割込みを解除
する可能性がある。これにより、VMCPまたは他VMの入出
力が混乱する可能性がある。
VMCPの判定方法としては、該当する実入出力装置制御ブ
ロック16−jの実ステータスフィールド16−j−2のb
ビットが“1"であるときは、VMCPの入出力実行中または
入出力割込み保留中である。また、実ステータスフィー
ルド16−j−2のaビットが“1"の場合、入出力実行中
ポインタ16−j−3の先の入出力実行要求内のVM識別情
報により他のVMの入出力実行中,または入出力割込み保
留中であるか否かを判定できる。
ロック16−jの実ステータスフィールド16−j−2のb
ビットが“1"であるときは、VMCPの入出力実行中または
入出力割込み保留中である。また、実ステータスフィー
ルド16−j−2のaビットが“1"の場合、入出力実行中
ポインタ16−j−3の先の入出力実行要求内のVM識別情
報により他のVMの入出力実行中,または入出力割込み保
留中であるか否かを判定できる。
該当入出力装置10−jが、OSiより入出力実行中あるい
は入出力割込み保留中であっても、モードの移行は可能
である。この場合、使用中であることを表す実入出力制
御装置ブロック16−j内の実ステータスフィールド16−
j−2のaビットを“0"、また、入出力実行中ポインタ
16−j−3にアドレスが格納される入出力命令実行要求
を領域をクリアする。
は入出力割込み保留中であっても、モードの移行は可能
である。この場合、使用中であることを表す実入出力制
御装置ブロック16−j内の実ステータスフィールド16−
j−2のaビットを“0"、また、入出力実行中ポインタ
16−j−3にアドレスが格納される入出力命令実行要求
を領域をクリアする。
(iv) 入出力割込みを直接実行するためには、VMiが
入出力割込み可能、すなわち、VPSW13−iのIビットが
“1"、かつ、制御レジスタ14−iの該入出力装置に対応
するビットが“1"の時のみ割込み可能としなければなら
ない。また、入出力動作はCPUと非同期に行われるの
で、VMiが走行中以外の時も、該当サブクラスのビット
の値は、VPSW13−iのIビットおよび制御レジスタ14−
iの該当ビットの値に従うか、あるいは、入出力割込み
不可能状態にしなければならない。従って、入出力直接
実行モードにしようとする入出力装置に関連する入出力
割込みサブクラスを入出力直接実行モードでは、VMiが
占有する必要がある。したがって、該当するサブクラス
をVMiが占有しているか、占有可能でなければならな
い。
入出力割込み可能、すなわち、VPSW13−iのIビットが
“1"、かつ、制御レジスタ14−iの該入出力装置に対応
するビットが“1"の時のみ割込み可能としなければなら
ない。また、入出力動作はCPUと非同期に行われるの
で、VMiが走行中以外の時も、該当サブクラスのビット
の値は、VPSW13−iのIビットおよび制御レジスタ14−
iの該当ビットの値に従うか、あるいは、入出力割込み
不可能状態にしなければならない。従って、入出力直接
実行モードにしようとする入出力装置に関連する入出力
割込みサブクラスを入出力直接実行モードでは、VMiが
占有する必要がある。したがって、該当するサブクラス
をVMiが占有しているか、占有可能でなければならな
い。
VMCPによる判定方法は次の通りである。まず、主記憶装
置1上に、占有サブクラスフィールド22および各VMiの
占有サブクラスフィールド24−iを設ける。サブクラス
番号変換表23−iは、OSiが意識する仮想サブクラス番
号と、ハードウェアが意識する実サブクラスとの対応を
表す。ある実サブクラスMqをVMiが占有するためには、
他VMのサブクラス番号変換表23−iにおいて、Mqに対応
づけられる仮想サブクラスが存在しないことが必要十分
条件である。実サブクラスを占有する場合には、占有サ
ブクラスフィールド22およびVMiの占有サブクラスフィ
ールド24−iの該当ビットを“1"にする。
置1上に、占有サブクラスフィールド22および各VMiの
占有サブクラスフィールド24−iを設ける。サブクラス
番号変換表23−iは、OSiが意識する仮想サブクラス番
号と、ハードウェアが意識する実サブクラスとの対応を
表す。ある実サブクラスMqをVMiが占有するためには、
他VMのサブクラス番号変換表23−iにおいて、Mqに対応
づけられる仮想サブクラスが存在しないことが必要十分
条件である。実サブクラスを占有する場合には、占有サ
ブクラスフィールド22およびVMiの占有サブクラスフィ
ールド24−iの該当ビットを“1"にする。
VMiが入出力装置10−jを入出力直接実行モードとする
ためには、サブクラス表示フィールド15−i−r−2に
示された実サブクラスをVMiの占有サブクラスフィール
ド24−iにより占有していると判定されるか、あるい
は、他VMのサブクラス変換表23−iにおいて、該実サブ
クラス番号に対応づけられている仮想サブクラスがな
く、該実サブクラスを占有可能と判定されなければなら
ない。
ためには、サブクラス表示フィールド15−i−r−2に
示された実サブクラスをVMiの占有サブクラスフィール
ド24−iにより占有していると判定されるか、あるい
は、他VMのサブクラス変換表23−iにおいて、該実サブ
クラス番号に対応づけられている仮想サブクラスがな
く、該実サブクラスを占有可能と判定されなければなら
ない。
ただし、サブクラス表示フィールド15−i−r−2に
は、仮想サブクラス番号と実サブクラス番号が格納され
ている。実サブクラス番号は、サブクラス番号変換表23
−iにより仮想サブクラスを変換した結果得られる。ま
た、VMiの入出力実行中には、サブクラス表示フィール
ド15−i−r−2の実サブクラス番号が、対応する入出
力装置フィールド18−jの実サブクラス番号フィールド
19−j−2に設定され、入出力割込みの制御が行われ
る。
は、仮想サブクラス番号と実サブクラス番号が格納され
ている。実サブクラス番号は、サブクラス番号変換表23
−iにより仮想サブクラスを変換した結果得られる。ま
た、VMiの入出力実行中には、サブクラス表示フィール
ド15−i−r−2の実サブクラス番号が、対応する入出
力装置フィールド18−jの実サブクラス番号フィールド
19−j−2に設定され、入出力割込みの制御が行われ
る。
(v) 入出力直接実行モードに移行後は、該入出力装
置の入出力制御は、全てVMi上のOSiに委ねられ、VMCPは
入出力管理情報を持たない。したがって、他のVMは該入
出力装置に入出力命令を発行できない。
置の入出力制御は、全てVMi上のOSiに委ねられ、VMCPは
入出力管理情報を持たない。したがって、他のVMは該入
出力装置に入出力命令を発行できない。
実ステータスフィールド16−j−2のeビットが“1"の
時、入出力装置10−jは、占有元VM識別フィールド16−
j−4に示されたVMに占有されていることを示す。VMCP
は、あるVMiに入出力装置10−jを占有させる場合、実
ステータスフィールド16−j−2のeビットを“1"にす
ると共に、占有元VM識別フィールド16−j−4に、VMi
が占有していることが識別可能なVMiに固有である情報
を設定する。
時、入出力装置10−jは、占有元VM識別フィールド16−
j−4に示されたVMに占有されていることを示す。VMCP
は、あるVMiに入出力装置10−jを占有させる場合、実
ステータスフィールド16−j−2のeビットを“1"にす
ると共に、占有元VM識別フィールド16−j−4に、VMi
が占有していることが識別可能なVMiに固有である情報
を設定する。
VMCPによる判定方法としては、既にVMiが入出力装置10
−jを占有しているならば、実ステータスフィールド16
−j−2のeビットが“1"、かつ、占有元VM識別フィー
ルド16−j−4にVMiが占有することを識別可能なVMiに
固有である情報が設定されている。また、以下の3条件
を満足すれば、VMiは該入出力装置10−jを占有可能で
ある。
−jを占有しているならば、実ステータスフィールド16
−j−2のeビットが“1"、かつ、占有元VM識別フィー
ルド16−j−4にVMiが占有することを識別可能なVMiに
固有である情報が設定されている。また、以下の3条件
を満足すれば、VMiは該入出力装置10−jを占有可能で
ある。
(i) 他のVMに入出力装置10−jが占有されていな
い。
い。
(ii) 他のVMの入出力命令要求を実入出力装置制御ブ
ロック16−jに持たない。
ロック16−jに持たない。
(iii) 他のVMが入出力装置10−jにおいて入出力実
行中でなく、かつ、入出力割込み保留中でない。
行中でなく、かつ、入出力割込み保留中でない。
占有可能であるためには、上記3条件を満足しなければ
ならない理由は、既に述べた入出力直接実行モードへの
移行条件と同様に、他のVMの入出力制御に混乱を生じる
ためである。
ならない理由は、既に述べた入出力直接実行モードへの
移行条件と同様に、他のVMの入出力制御に混乱を生じる
ためである。
次に、入出力直接実行モードの入出力装置を入出力シミ
ュレーションモードに移行させる場合の処理について3
通りの方法を述べる。
ュレーションモードに移行させる場合の処理について3
通りの方法を述べる。
第1番目の方法では、入出力シミュレーションモードへ
の移行要求があった場合、まず、該当入出力装置10−j
に対して入出力装置の状態を調べる命令であるSTSCH命
令を発行する。
の移行要求があった場合、まず、該当入出力装置10−j
に対して入出力装置の状態を調べる命令であるSTSCH命
令を発行する。
STSCH命令を実行する命令実行回路5および命令実行マ
イクロプログラム6は、信号線102を通してソフトウェ
ア−マイクロプログラム間インターフェース部17の該当
する入出力装置フィールド18−jに格納されている該入
出力装置の状態をプログラムから参照可能な主記憶装置
1上の領域へ格納する。VMCPは、STSCH命令により得ら
れた入出力装置の状態をもとに、VMCP側の入出力制御情
報を設定する。例えば、入出力装置10−jが入出力実行
中、または入出力割込み保留中であるときは、実制御ブ
ロック(RBLOKS)12内の実入出力装置制御ブロック16−
j内の実ステータスフィールド16−j−2のビットaを
“1"とする。また、入出力実行要求を作成し、この要求
の先頭アドレスを入出力実行中ポインタ16−j−3に設
定する。このように、あたかも、以前から入出力シミュ
レーションであったかのような情報をVMCP側に持たせた
後で、該当入出力装置フィールド18−jの入出力直接実
行モードフラグ19−j−3をA命令により“0"にすれ
ば、該入出力装置10−jはシミュレーションモードとな
る。
イクロプログラム6は、信号線102を通してソフトウェ
ア−マイクロプログラム間インターフェース部17の該当
する入出力装置フィールド18−jに格納されている該入
出力装置の状態をプログラムから参照可能な主記憶装置
1上の領域へ格納する。VMCPは、STSCH命令により得ら
れた入出力装置の状態をもとに、VMCP側の入出力制御情
報を設定する。例えば、入出力装置10−jが入出力実行
中、または入出力割込み保留中であるときは、実制御ブ
ロック(RBLOKS)12内の実入出力装置制御ブロック16−
j内の実ステータスフィールド16−j−2のビットaを
“1"とする。また、入出力実行要求を作成し、この要求
の先頭アドレスを入出力実行中ポインタ16−j−3に設
定する。このように、あたかも、以前から入出力シミュ
レーションであったかのような情報をVMCP側に持たせた
後で、該当入出力装置フィールド18−jの入出力直接実
行モードフラグ19−j−3をA命令により“0"にすれ
ば、該入出力装置10−jはシミュレーションモードとな
る。
第2番目の方法では、入出力直接実行モードから入出力
シミュレーションモードへの移行要求があった場合、ま
ずモード移行を要求する入出力装置の実入出力装置制御
ブロック16−jの実ステータスフィールド16−j−2の
cビットを“1"に設定する。また、該入出力装置フィー
ルド18−jの入出力直接実行モードフラグ19−j−3を
A命令により“0"、該実入出力装置制御ブロック16−j
内の実ステータスフィールド16−j−2のdビットを
“1"に設定する。そのdビットが“1"の場合、OSおよび
VMCPの入出力実行要求は、全て実入出力装置制御ブロッ
ク16−jにキューイングされ、実際に入出力命令が発行
されることはない。この間VMCPでは、該当入出力装置10
−jに関する入出力割込みの処理を行う。この入出力割
込みを契機として、VMCPでは、STSCH命令を発行して、
該入出力装置に関する入出力が、全て完了したか否かを
判定する。全て完了した場合には、該実入出力装置制御
ブロック16−jにキューイングされている入出力実行要
求に対するサービスを開始するために、実ステータスフ
ィールド16−j−2のdビットを“0"に設定する。これ
以後のこの入出力装置に対する入出力制御は、VMCPが介
在して行われる。
シミュレーションモードへの移行要求があった場合、ま
ずモード移行を要求する入出力装置の実入出力装置制御
ブロック16−jの実ステータスフィールド16−j−2の
cビットを“1"に設定する。また、該入出力装置フィー
ルド18−jの入出力直接実行モードフラグ19−j−3を
A命令により“0"、該実入出力装置制御ブロック16−j
内の実ステータスフィールド16−j−2のdビットを
“1"に設定する。そのdビットが“1"の場合、OSおよび
VMCPの入出力実行要求は、全て実入出力装置制御ブロッ
ク16−jにキューイングされ、実際に入出力命令が発行
されることはない。この間VMCPでは、該当入出力装置10
−jに関する入出力割込みの処理を行う。この入出力割
込みを契機として、VMCPでは、STSCH命令を発行して、
該入出力装置に関する入出力が、全て完了したか否かを
判定する。全て完了した場合には、該実入出力装置制御
ブロック16−jにキューイングされている入出力実行要
求に対するサービスを開始するために、実ステータスフ
ィールド16−j−2のdビットを“0"に設定する。これ
以後のこの入出力装置に対する入出力制御は、VMCPが介
在して行われる。
第3番目の方法では、入出力直接実行モードから入出力
シミュレーションモードへの移行要求があった場合、該
当する実入出力装置制御ブロック16−j内の実ステータ
スフィールド16−j−2のcビットおよびdビットを
“1"に設定する。また、該入出力装置フィールド18−j
の入出力直接実行モードフラグ19−j−3をA命令によ
り“0"とする。また、予め定められた時間が経過した後
には、上記の入出力装置を入出力シミュレーションモー
ドに移行させるために、タイマ割込み要求ブロックを従
来からVMCPが持つタイマ割込み要求キューに登録する。
タイマ割込み要求ブロックには、タイマ割込みを発生さ
せる時間と、割込み後に制御が渡されるVMCPのプログラ
ムのアドレスが登録されている。タイマ割込みが起きる
までの間、VMCPでは該当入出力装置10−jに関する入出
力割込みの処理を行う。
シミュレーションモードへの移行要求があった場合、該
当する実入出力装置制御ブロック16−j内の実ステータ
スフィールド16−j−2のcビットおよびdビットを
“1"に設定する。また、該入出力装置フィールド18−j
の入出力直接実行モードフラグ19−j−3をA命令によ
り“0"とする。また、予め定められた時間が経過した後
には、上記の入出力装置を入出力シミュレーションモー
ドに移行させるために、タイマ割込み要求ブロックを従
来からVMCPが持つタイマ割込み要求キューに登録する。
タイマ割込み要求ブロックには、タイマ割込みを発生さ
せる時間と、割込み後に制御が渡されるVMCPのプログラ
ムのアドレスが登録されている。タイマ割込みが起きる
までの間、VMCPでは該当入出力装置10−jに関する入出
力割込みの処理を行う。
一定時間経過後、上記のタイマ割込みが発生した後、VM
CPが行う処理は、以下のとおりである。まず、実ステー
タスフィールド16−j−2のcビットが“1"となってい
る入出力装置に対してSTSCH命令を発行する。STSCH命令
により得られた入出力装置の状態をもとに、VMCP側の入
出力制御情報を設定する。これは、第1番目の方法で述
べたのと全く同じ処理である。このようにして、あたか
も、以前から入出力シミュレーションモードであったか
のような情報をVMCPに持たせる。また、実入出力制御ブ
ロック16−jにキューイングされている入出力命令実行
要求に対するサービスを開始するために、実ステータス
フィールド16−j−2のdビットを“0"に設定する。こ
れ以後、この入出力装置に対する入出力制御はVMCPが介
在して行われる。
CPが行う処理は、以下のとおりである。まず、実ステー
タスフィールド16−j−2のcビットが“1"となってい
る入出力装置に対してSTSCH命令を発行する。STSCH命令
により得られた入出力装置の状態をもとに、VMCP側の入
出力制御情報を設定する。これは、第1番目の方法で述
べたのと全く同じ処理である。このようにして、あたか
も、以前から入出力シミュレーションモードであったか
のような情報をVMCPに持たせる。また、実入出力制御ブ
ロック16−jにキューイングされている入出力命令実行
要求に対するサービスを開始するために、実ステータス
フィールド16−j−2のdビットを“0"に設定する。こ
れ以後、この入出力装置に対する入出力制御はVMCPが介
在して行われる。
このようにして、本実施例においては、入出力直接実行
を行なう入出力装置の設定および指定の解除を、VMの停
止やOSのIPLのやり直しを伴うことなく、VM走行中に可
能となる。また、VMCPが入出力直接実行モードの入出力
装置に対して入出力命令を発行することも、次のように
して可能となる。VMCPが入出力直接実行モードの入出力
装置に対して、入出力命令の発行要求を出した場合、該
入出力装置を入出力シミュレーションモードに移行させ
る。移行後、VMCPの入出力命令を実行するとともに、該
入出力装置を入出力直接実行モードに移行させる要求を
出す。このようにすれば、VMCPの入出力命令が終了した
後、該当VMの占有入出力装置の入出力環境が整った時点
で、再び入出力直接実行モードを設定することが可能と
なる。
を行なう入出力装置の設定および指定の解除を、VMの停
止やOSのIPLのやり直しを伴うことなく、VM走行中に可
能となる。また、VMCPが入出力直接実行モードの入出力
装置に対して入出力命令を発行することも、次のように
して可能となる。VMCPが入出力直接実行モードの入出力
装置に対して、入出力命令の発行要求を出した場合、該
入出力装置を入出力シミュレーションモードに移行させ
る。移行後、VMCPの入出力命令を実行するとともに、該
入出力装置を入出力直接実行モードに移行させる要求を
出す。このようにすれば、VMCPの入出力命令が終了した
後、該当VMの占有入出力装置の入出力環境が整った時点
で、再び入出力直接実行モードを設定することが可能と
なる。
以上説明したように、本発明によれば、VMが占有する入
出力装置への入出力命令、およびこの命令に関連する入
出力割込みを、VMCPが関与することなく、ハードウェア
により直接実行する入出力直接実行モードと、VMCPが介
在してシミュレーションを入出力シミュレーションモー
ドとをVM走行中に切換え可能となり、効率的な入出力制
御が行える。
出力装置への入出力命令、およびこの命令に関連する入
出力割込みを、VMCPが関与することなく、ハードウェア
により直接実行する入出力直接実行モードと、VMCPが介
在してシミュレーションを入出力シミュレーションモー
ドとをVM走行中に切換え可能となり、効率的な入出力制
御が行える。
第1図は本発明によるモード移行の処理フローチャー
ト、第2図は本発明が適用される仮想計算機システムの
主要構成図、第3図は第2図の制御ブロックの詳細説明
図、第4図は第3図の入出力装置VM用フィールドの詳細
説明図、第5図は第3図の実入出力装置制御ブロックの
詳細説明図、第6図はPSWの説明図、第7図は制御レジ
スタの説明図、第8図は仮想入出力制御ブロックの説明
図、第9図は本発明による命令の説明図、第10図は従来
の仮想計算機システムの構成図である。 1:主記憶装置、2,2−i:PSA、3:プレフィクスレジスタ、
4:命令レジスタ、5:命令実行回路、6:命令実行マイクロ
プログラム、7:割込み回路、8:割込みマイクロプログラ
ム、9:入出力装置群、10−j:入出力装置、11−i:仮想制
御ブロック、12:実制御ブロック、13:PSW、13−i:VPS
W、14:制御レジスタ、14−i:仮想制御レジスタ、15−i:
仮想入出力制御ブロック、15−i−r:仮想入出力装置制
御ブロック、15−i−r−1:仮想ステータスフィール
ド、15−i−r−2:サブクラス表示フィールド、16:実
入出力制御ブロック、16−j:実入出力装置制御ブロッ
ク、16−j−1:入出力実行要求ポインタ、16−j−2:実
ステータスフィールド、16−j−3:入出力実行中ポイン
タ、16−j−4:占有元VM識別フィールド、17:ソフトウ
ェア−マイクロプログラム間インタフェース部、18−j:
入出力装置フィールド、19−j:入出力装置VM用フィール
ド、19−j−1:VM番号フィールド、19−j−2:実サブク
ラス番号フィールド、19−j−3:入出力直接実行モード
ビット、19−j−4:アーキテクチャ番号フィールド、2
0:PSWのIビット、21:入出力命令実行要求、22:占有サ
ブクラスフィールド、23−i:サブクラス番号変換表、24
−i:VMiの占有サブクラスフィールド、90:実計算機シス
テム、91:中央処理装置、92:主記憶装置、93:入出力処
理装置、94:入出力制御装置、100〜105:信号線。
ト、第2図は本発明が適用される仮想計算機システムの
主要構成図、第3図は第2図の制御ブロックの詳細説明
図、第4図は第3図の入出力装置VM用フィールドの詳細
説明図、第5図は第3図の実入出力装置制御ブロックの
詳細説明図、第6図はPSWの説明図、第7図は制御レジ
スタの説明図、第8図は仮想入出力制御ブロックの説明
図、第9図は本発明による命令の説明図、第10図は従来
の仮想計算機システムの構成図である。 1:主記憶装置、2,2−i:PSA、3:プレフィクスレジスタ、
4:命令レジスタ、5:命令実行回路、6:命令実行マイクロ
プログラム、7:割込み回路、8:割込みマイクロプログラ
ム、9:入出力装置群、10−j:入出力装置、11−i:仮想制
御ブロック、12:実制御ブロック、13:PSW、13−i:VPS
W、14:制御レジスタ、14−i:仮想制御レジスタ、15−i:
仮想入出力制御ブロック、15−i−r:仮想入出力装置制
御ブロック、15−i−r−1:仮想ステータスフィール
ド、15−i−r−2:サブクラス表示フィールド、16:実
入出力制御ブロック、16−j:実入出力装置制御ブロッ
ク、16−j−1:入出力実行要求ポインタ、16−j−2:実
ステータスフィールド、16−j−3:入出力実行中ポイン
タ、16−j−4:占有元VM識別フィールド、17:ソフトウ
ェア−マイクロプログラム間インタフェース部、18−j:
入出力装置フィールド、19−j:入出力装置VM用フィール
ド、19−j−1:VM番号フィールド、19−j−2:実サブク
ラス番号フィールド、19−j−3:入出力直接実行モード
ビット、19−j−4:アーキテクチャ番号フィールド、2
0:PSWのIビット、21:入出力命令実行要求、22:占有サ
ブクラスフィールド、23−i:サブクラス番号変換表、24
−i:VMiの占有サブクラスフィールド、90:実計算機シス
テム、91:中央処理装置、92:主記憶装置、93:入出力処
理装置、94:入出力制御装置、100〜105:信号線。
Claims (5)
- 【請求項1】1台の計算機において仮想計算機制御プロ
グラム(VMCP)の管理下で少なくとも1つのオペレーテ
ィングシステム(OS)が走行し、前記計算機の入出力装
置対応に入出力シミュレーションモードあるいは入出力
直接実行モードが設定され、入出力シミュレーションモ
ードが設定された入出力装置に対するOSからの入出力命
令はVMCPがシミュレーションして実行し、入出力直接実
行モードが設定された入出力装置に対するOSからの入出
力命令はVMCPが介在することなく前記計算機により直接
実行するとともに、入出力シミュレーションモードから
入出力直接実行モードへの移行を要求された入出力装置
を識別する識別手段、および上記2つのモードを切り替
えるモード切り替え手段を有する仮想計算機システムの
入出力制御方法であって、 上記識別手段により、OSが入出力装置を最初に使用開始
した後に入出力直接実行モードへの移行を要求された入
出力装置を識別し、 該識別された入出力装置が前記VMCPによるシミュレーシ
ョンおよび入出力の実行に関して所定のモード移行条件
を満足するかを判定し、 上記判定を満足した時点で、上記モード切り替え手段に
より該入出力装置を入出力シミュレーションモードから
入出力直接実行モードに移行させることを特徴とする仮
想計算機システムの入出力制御方法。 - 【請求項2】上記所定のモード移行条件は、該入出力装
置に対する入出力命令の実行要求をVMCPが保留中でな
く、該入出力装置の入出力割り込みをVMCPが保留中でな
く、該入出力装置が入出力実行中でなく、かつ、該入出
力装置が入出力割り込みを保留中でないという条件であ
ることを特徴とする特許請求の範囲第1項記載の仮想計
算機システムの入出力制御方法。 - 【請求項3】1台の計算機において仮想計算機制御プロ
グラム(VMCP)の管理下で少なくとも1つのオペレーテ
ィングシステム(OS)が走行し、前記計算機の入出力装
置対応に入出力シミュレーションモードあるいは入出力
直接実行モードが設定され、入出力シミュレーションモ
ードが設定された入出力装置に対するOSからの入出力命
令はVMCPがシミュレーションして実行し、入出力直接実
行モードが設定された入出力装置に対するOSからの入出
力命令はVMCPが介在することなく前記計算機により直接
実行するとともに、上記2つのモードを切り替えるモー
ド切り替え手段および上記入出力装置の入出力実行状態
を調べる手段を有する仮想計算機システムの入出力制御
方法であって、 OSが入出力装置を最初に使用開始した後に入出力直接実
行モードから入出力シミュレーションモードへの移行を
要求されたことに応じて、上記入出力装置の入出力実行
状態を調べる手段により該入出力装置の入出力実行状態
をVMCPが認識し、 上記モード切り替え手段により、該入出力装置を入出力
シミュレーションモードを設定することを特徴とする仮
想計算機システムの入出力制御方法。 - 【請求項4】1台の計算機において仮想計算機制御プロ
グラム(VMCP)の管理下で少なくとも1つのオペレーテ
ィングシステム(OS)が走行し、前記計算機の入出力装
置対応に入出力シミュレーションモードあるいは入出力
直接実行モードが設定され、入出力シミュレーションモ
ードが設定された入出力装置に対するOSからの入出力命
令はVMCPがシミュレーションして実行し、入出力直接実
行モードが設定された入出力装置に対するOSからの入出
力命令はVMCPが介在することなく前記計算機により直接
実行するとともに、上記2つのモードを切り替えるモー
ド切り替え手段および上記入出力装置の入出力実行状態
を調べる手段を有する仮想計算機システムの入出力制御
方法であって、 OSが入出力装置を最初に使用開始した後に入出力直接実
行モードから入出力シミュレーションモードへの移行を
要求されたことに応じて、VMCPはOSが発行した入出力命
令のシミュレーションを実行保留することを開始し、 上記モード切り替え手段により、該入出力装置に入出力
シミュレーションモードを設定し、 上記入出力装置の状態を調べる手段により、該入出力装
置の入出力が完了したかを判定し、 前記判定を満足した時点で、前記入出力命令の実行保留
を解除することを特徴とする仮想計算機システムの入出
力制御方法。 - 【請求項5】1台の計算機において仮想計算機制御プロ
グラム(VMCP)の管理下で少なくとも1つのオペレーテ
ィングシステム(OS)が走行し、前記計算機の入出力装
置対応に入出力シミュレーションモードあるいは入出力
直接実行モードが設定され、入出力シミュレーションモ
ードが設定された入出力装置に対するOSからの入出力命
令はVMCPがシミュレーションして実行し、入出力直接実
行モードが設定された入出力装置に対するOSからの入出
力命令はVMCPが介在することなく前記計算機により直接
実行するとともに、上記2つのモードを切り替えるモー
ド切り替え手段および上記入出力装置の入出力実行状態
を調べる手段を有する仮想計算機システムの入出力制御
方法であって、 OSが入出力装置を最初に使用開始した後に入出力直接実
行モードから入出力シミュレーションモードへの移行を
要求されたことに応じて、VMCPはOSが発行した入出力命
令のシミュレーションを実行保留することを開始し、 上記モード切り替え手段により、該入出力装置に入出力
シミュレーションモードを設定し、 前記実行保留の開始から一定の時間が経過したとき、上
記入出力装置の入出力実行状態を調べる手段により該入
出力装置の入出力実行状態をVMCPが認識するとともに、
前記実行保留を解除することを特徴とする仮想計算機シ
ステムの入出力制御方法。
Priority Applications (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60170430A JPH0792761B2 (ja) | 1985-07-31 | 1985-07-31 | 仮想計算機システムの入出力制御方法 |
| EP86110429A EP0210640B1 (en) | 1985-07-31 | 1986-07-29 | Input-output control system in a virtual machine system |
| DE8686110429T DE3687805T2 (de) | 1985-07-31 | 1986-07-29 | Ein-ausgabesteuersystem in einem virtuellen maschinensystem. |
| CN86105553A CN1007938B (zh) | 1985-07-31 | 1986-07-30 | 虚拟计算机系统的输入输出控制方式 |
| US06/890,524 US4887202A (en) | 1985-07-31 | 1986-07-30 | Input-output control method in a virtual machine system |
| KR1019860006273A KR930008265B1 (ko) | 1985-07-31 | 1986-07-30 | 가상 계산기 시스템의 입출력 제어방법 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60170430A JPH0792761B2 (ja) | 1985-07-31 | 1985-07-31 | 仮想計算機システムの入出力制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6231437A JPS6231437A (ja) | 1987-02-10 |
| JPH0792761B2 true JPH0792761B2 (ja) | 1995-10-09 |
Family
ID=15904768
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60170430A Expired - Lifetime JPH0792761B2 (ja) | 1985-07-31 | 1985-07-31 | 仮想計算機システムの入出力制御方法 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US4887202A (ja) |
| EP (1) | EP0210640B1 (ja) |
| JP (1) | JPH0792761B2 (ja) |
| KR (1) | KR930008265B1 (ja) |
| CN (1) | CN1007938B (ja) |
| DE (1) | DE3687805T2 (ja) |
Families Citing this family (49)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5129064A (en) * | 1988-02-01 | 1992-07-07 | International Business Machines Corporation | System and method for simulating the I/O of a processing system |
| JP2629278B2 (ja) * | 1988-06-30 | 1997-07-09 | 株式会社日立製作所 | 仮想計算機システム |
| US5276815A (en) * | 1988-10-24 | 1994-01-04 | Fujitsu Limited | Input and output processing system for a virtual computer |
| JPH02171934A (ja) * | 1988-12-26 | 1990-07-03 | Hitachi Ltd | 仮想計算機システム |
| JP2535609B2 (ja) * | 1989-02-07 | 1996-09-18 | 富士通株式会社 | 計算機システム |
| JPH02208740A (ja) * | 1989-02-09 | 1990-08-20 | Fujitsu Ltd | 仮想計算機制御方式 |
| EP0419723B1 (de) * | 1989-09-29 | 1995-01-11 | Siemens Nixdorf Informationssysteme Aktiengesellschaft | Verfahren und Unterbrechungssteuerung zur Behandlung von Unterbrechungsanforderungen bei Ein-/Ausgabeoperationen in einem virtuellen Maschinensystem |
| US5283900A (en) * | 1989-10-02 | 1994-02-01 | Spectron Microsystems, Inc. | Real-time operating system and virtual digital signal processor for the control of a digital signal processor |
| EP0447145B1 (en) * | 1990-03-12 | 2000-07-12 | Hewlett-Packard Company | User scheduled direct memory access using virtual addresses |
| JP2708608B2 (ja) * | 1990-05-25 | 1998-02-04 | 富士通株式会社 | 仮想計算機のipl処理方式 |
| EP0503092B1 (en) * | 1990-10-03 | 1998-01-07 | Fujitsu Limited | System for controlling issue of input/output instruction in data processing system |
| JP3093293B2 (ja) * | 1991-02-08 | 2000-10-03 | 日本電気株式会社 | 情報処理装置の割り込み方式 |
| US5291599A (en) * | 1991-08-08 | 1994-03-01 | International Business Machines Corporation | Dispatcher switch for a partitioner |
| JP2677474B2 (ja) * | 1992-01-14 | 1997-11-17 | 富士通株式会社 | 仮想計算機の制御情報収集装置および方法 |
| JPH06187178A (ja) * | 1992-12-18 | 1994-07-08 | Hitachi Ltd | 仮想計算機システムの入出力割込み制御方法 |
| GB9311935D0 (en) * | 1993-06-09 | 1993-07-28 | Madge Networks Ltd | Processor |
| US6055559A (en) * | 1994-03-07 | 2000-04-25 | Fujitsu Limited | Process switch control apparatus and a process control method |
| US5603059A (en) * | 1994-04-22 | 1997-02-11 | Pitney Bowes Inc. | Software architecture system having a virtual I/O channel including multi-layered communication interface in between virtual stations and physical modules |
| US5799169A (en) * | 1995-10-02 | 1998-08-25 | Chromatic Research, Inc. | Emulated registers |
| US6067527A (en) * | 1995-10-12 | 2000-05-23 | Gilbarco, Inc. | Point of sale system, method of operation thereof and programming for control thereof |
| US5925109A (en) * | 1996-04-10 | 1999-07-20 | National Instruments Corporation | System for I/O management where I/O operations are determined to be direct or indirect based on hardware coupling manners and/or program privilege modes |
| US5978912A (en) * | 1997-03-20 | 1999-11-02 | Phoenix Technologies Limited | Network enhanced BIOS enabling remote management of a computer without a functioning operating system |
| WO2002003220A2 (en) * | 2000-07-05 | 2002-01-10 | Ernst & Young Llp | Method and apparatus for providing computer services |
| JP2002132518A (ja) * | 2000-10-25 | 2002-05-10 | Fujitsu Ltd | 仮想計算機システムおよび仮想計算機間の入出力装置交換方法 |
| JP4091792B2 (ja) * | 2002-05-17 | 2008-05-28 | 株式会社エヌ・ティ・ティ・ドコモ | 電子機器、イベント提供方法、プログラム、及び記録媒体 |
| US8079034B2 (en) * | 2003-09-15 | 2011-12-13 | Intel Corporation | Optimizing processor-managed resources based on the behavior of a virtual machine monitor |
| CN100335997C (zh) * | 2004-01-14 | 2007-09-05 | 威达电股份有限公司 | 多个输入/输出装置的切换控制系统及其方法 |
| US7454756B2 (en) * | 2004-03-05 | 2008-11-18 | Intel Corporation | Method, apparatus and system for seamlessly sharing devices amongst virtual machines |
| US7725895B2 (en) * | 2004-03-31 | 2010-05-25 | Intel Corporation | Processor control register virtualization to minimize virtual machine exits |
| US7941799B2 (en) | 2004-05-27 | 2011-05-10 | International Business Machines Corporation | Interpreting I/O operation requests from pageable guests without host intervention |
| CN101359312B (zh) * | 2006-01-17 | 2010-06-09 | 株式会社Ntt都科摩 | 输入输出控制系统 |
| CN100454278C (zh) * | 2006-01-19 | 2009-01-21 | 联想(北京)有限公司 | 计算机系统及其i/o端口访问控制方法 |
| JP5010164B2 (ja) | 2006-03-31 | 2012-08-29 | 株式会社日立製作所 | サーバ装置及び仮想計算機の制御プログラム |
| CN100464295C (zh) * | 2006-05-17 | 2009-02-25 | 联想(北京)有限公司 | 一种基于虚拟机的安全输入方法 |
| JP4295783B2 (ja) * | 2006-12-13 | 2009-07-15 | 株式会社日立製作所 | 計算機、仮想デバイスの制御方法 |
| US7478185B2 (en) * | 2007-01-05 | 2009-01-13 | International Business Machines Corporation | Directly initiating by external adapters the setting of interruption initiatives |
| JP5018252B2 (ja) * | 2007-06-06 | 2012-09-05 | 株式会社日立製作所 | デバイス割り当て変更方法 |
| US8151265B2 (en) * | 2007-12-19 | 2012-04-03 | International Business Machines Corporation | Apparatus for and method for real-time optimization of virtual machine input/output performance |
| US8677367B2 (en) | 2009-03-31 | 2014-03-18 | Mitsubishi Electric Corporation | Execution order decision device |
| CN102576312A (zh) * | 2009-10-01 | 2012-07-11 | 三菱电机株式会社 | 计算机装置 |
| US8402461B2 (en) * | 2009-11-15 | 2013-03-19 | Hewlett-Packard Development Company, L. P. | Switching between direct mode and indirect mode for virtual machine I/O requests |
| JP2011118578A (ja) * | 2009-12-02 | 2011-06-16 | Renesas Electronics Corp | 情報処理装置 |
| US8650565B2 (en) | 2009-12-14 | 2014-02-11 | Citrix Systems, Inc. | Servicing interrupts generated responsive to actuation of hardware, via dynamic incorporation of ACPI functionality into virtual firmware |
| US8560826B2 (en) | 2009-12-14 | 2013-10-15 | Citrix Systems, Inc. | Secure virtualization environment bootable from an external media device |
| US20120167082A1 (en) * | 2010-12-23 | 2012-06-28 | Sanjay Kumar | Direct sharing of smart devices through virtualization |
| US8719560B2 (en) * | 2011-12-13 | 2014-05-06 | International Business Machines Corporation | Virtual machine monitor bridge to bare-metal booting |
| US9760511B2 (en) * | 2014-10-08 | 2017-09-12 | International Business Machines Corporation | Efficient interruption routing for a multithreaded processor |
| US11042494B1 (en) * | 2018-06-21 | 2021-06-22 | Amazon Technologies, Inc. | Direct injection of a virtual interrupt |
| US11115324B2 (en) | 2019-08-27 | 2021-09-07 | Nokia Solutions Networks Oy | System and method for performing segment routing over an MPLS network |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6049352B2 (ja) * | 1978-02-13 | 1985-11-01 | 株式会社日立製作所 | デ−タ処理装置 |
| JPS6013501B2 (ja) * | 1978-09-18 | 1985-04-08 | 富士通株式会社 | 仮想計算機システムにおけるチヤネルアドレス制御方式 |
| US4456954A (en) * | 1981-06-15 | 1984-06-26 | International Business Machines Corporation | Virtual machine system with guest architecture emulation using hardware TLB's for plural level address translations |
| EP0072107B1 (en) * | 1981-08-03 | 1989-05-31 | International Business Machines Corporation | Peripheral sub-systems accommodating guest operating systems |
| US4533996A (en) * | 1982-02-23 | 1985-08-06 | International Business Machines Corporation | Peripheral systems accommodation of guest operating systems |
| US4494189A (en) * | 1982-04-26 | 1985-01-15 | International Business Machines Corporation | Method and means for switching system control of CPUs |
| US4571674A (en) * | 1982-09-27 | 1986-02-18 | International Business Machines Corporation | Peripheral storage system having multiple data transfer rates |
| JPS6057438A (ja) * | 1983-09-08 | 1985-04-03 | Hitachi Ltd | 仮想計算機システム制御装置 |
| JPH0619747B2 (ja) * | 1984-01-18 | 1994-03-16 | 株式会社日立製作所 | I/o命令実行方法、i/o割込処理方法およびそれらを用いた計算機システム |
| JPS60159948A (ja) * | 1984-01-30 | 1985-08-21 | Nec Corp | 命令例外処理方式 |
| JPS60225944A (ja) * | 1984-04-25 | 1985-11-11 | Hitachi Ltd | 仮想計算機システム |
| US4674038A (en) * | 1984-12-28 | 1987-06-16 | International Business Machines Corporation | Recovery of guest virtual machines after failure of a host real machine |
| JPS61206057A (ja) * | 1985-03-11 | 1986-09-12 | Hitachi Ltd | アドレス変換装置 |
| JPH07110406B2 (ja) * | 1992-02-14 | 1995-11-29 | 正利 横木 | 耐磨耗性金属材およびその製造方法 |
| JP3069435B2 (ja) * | 1992-06-25 | 2000-07-24 | 松下電工株式会社 | アンテナ線引込装置の引込み線の接続構造 |
-
1985
- 1985-07-31 JP JP60170430A patent/JPH0792761B2/ja not_active Expired - Lifetime
-
1986
- 1986-07-29 EP EP86110429A patent/EP0210640B1/en not_active Expired - Lifetime
- 1986-07-29 DE DE8686110429T patent/DE3687805T2/de not_active Expired - Fee Related
- 1986-07-30 US US06/890,524 patent/US4887202A/en not_active Expired - Fee Related
- 1986-07-30 CN CN86105553A patent/CN1007938B/zh not_active Expired
- 1986-07-30 KR KR1019860006273A patent/KR930008265B1/ko not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| CN86105553A (zh) | 1987-07-15 |
| EP0210640A3 (en) | 1989-06-21 |
| KR870001510A (ko) | 1987-03-14 |
| EP0210640B1 (en) | 1993-02-24 |
| EP0210640A2 (en) | 1987-02-04 |
| DE3687805T2 (de) | 1993-06-09 |
| US4887202A (en) | 1989-12-12 |
| JPS6231437A (ja) | 1987-02-10 |
| DE3687805D1 (de) | 1993-04-01 |
| CN1007938B (zh) | 1990-05-09 |
| KR930008265B1 (ko) | 1993-08-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0792761B2 (ja) | 仮想計算機システムの入出力制御方法 | |
| JP3659062B2 (ja) | 計算機システム | |
| TWI506445B (zh) | 用於虛擬作業系統的直接記憶體存取篩選器的電腦系統、方法及電腦可讀取儲存媒體 | |
| US4885681A (en) | I/O Execution method for a virtual machine system and system therefor | |
| US6772419B1 (en) | Multi OS configuration system having an interrupt process program executes independently of operation of the multi OS | |
| US5553291A (en) | Virtual machine control method and virtual machine system | |
| US5499379A (en) | Input/output execution apparatus for a plural-OS run system | |
| JP2945498B2 (ja) | システム間通信方式 | |
| JPH0784883A (ja) | 仮想計算機システムのアドレス変換バッファパージ方法 | |
| JPS61206043A (ja) | 仮想計算機システムにおける割込制御方法 | |
| JPS58151655A (ja) | 情報処理装置 | |
| JPS61272833A (ja) | デ−タ処理装置 | |
| JP2870254B2 (ja) | 仮想計算機の入出力割り込み処理方式 | |
| JP2019169081A (ja) | 情報処理装置、情報処理方法、プログラム | |
| US20120179901A1 (en) | Computer apparatus | |
| US20140215467A1 (en) | Method and Virtualization Controller for Managing a Computer Resource With at Least Two Virtual Machines | |
| JPH09282196A (ja) | 複合論理プロセッサシステムのプログラム走行制御方式 | |
| JPS6049352B2 (ja) | デ−タ処理装置 | |
| JPS603229B2 (ja) | 情報処理方式 | |
| US12423030B2 (en) | Transaction requests according to a request ordering protocol | |
| JPH0444131A (ja) | 複数os走行システムにおけるプロセッサ間通信の実行装置および方法 | |
| JPH06242975A (ja) | 多重情報処理システムの仮想計算機ディスパッチ方式 | |
| JPS62221041A (ja) | 仮想計算機システムにおけるデイスパツチ制御装置 | |
| JPH02146634A (ja) | 仮想計算機システムにおける割込み制御方式 | |
| JPH07141210A (ja) | 仮想計算機処理装置 |