JPH06250850A - 入出力割込み要因の処理方法 - Google Patents

入出力割込み要因の処理方法

Info

Publication number
JPH06250850A
JPH06250850A JP5038078A JP3807893A JPH06250850A JP H06250850 A JPH06250850 A JP H06250850A JP 5038078 A JP5038078 A JP 5038078A JP 3807893 A JP3807893 A JP 3807893A JP H06250850 A JPH06250850 A JP H06250850A
Authority
JP
Japan
Prior art keywords
input
interrupt
output
pending
output interrupt
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP5038078A
Other languages
English (en)
Inventor
Osamu Onodera
修 小野寺
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 JP5038078A priority Critical patent/JPH06250850A/ja
Publication of JPH06250850A publication Critical patent/JPH06250850A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 (修正有) 【目的】入出理力割込み要因の保留状況に応じて入出力
割込みを受付可能とする。 【構成】デバイスからCPUに対する割込み要求が発生
すると710、入出力プロセッサは、このデバイスの属
する論理入出力サブクラスを判定し740、この論理サ
ブクラスの入出力割込みの発生が禁止されている場合に
は780、この論理入出力サブクラスについて保留され
ている入出力割込みの要因数と、この論理入出力サブク
ラスが割り当てられている仮想計算機に対して設定され
たしきい値とを比較し7A0、しきい値の方が小さけれ
ば、保留入出力割込みを発生する7B0。これによりC
PUは保留入出力割込み処理を起動し7C0、実行中の
仮想計算機を中断して、VMCPに制御を渡す。VMC
Pは、保留数がしきい値を超えた論理入出力サブクラス
に対応する仮想計算機をディスパッチする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機システムにおけ
る入出力割込みを要因を処理する技術に関し、特に仮想
計算機システムにおいて保留されている入出力割込み要
因を処理する技術に関するものである。
【0002】
【従来の技術】一般に、情報処理システムを構成する計
算機の使用形態としては、実計算機上で単一のオペレ−
ティングシステム(以下、「OS」という)を動作させ
る形態と単一の実計算機上で複数のOSを動作させる仮
想計算機(以下「VM」又は「LPAR」という)と呼
ばれる形態とがある。
【0003】ここで、実計算機の一般的なハードウェア
資源構成の概略を図1に示す。図示するように、実計算
機のハードウェア資源は、1台又はそれ以上の中央処理
装置(以下、「CPU」という),1台の共用主記憶装
置(以下、「MS」という),1台又はそれ以上のチャ
ネルパス(以下、「CHP」という)、各々のCHPに
接続されているデバイス(以下、「DEV」という)群
とから構成される。
【0004】このような、実計算機上で単一のOSを動
作させるモードをベーシックモードと言う。そして、ベ
ーシックモードにおいて、これらの実計算機のハードウ
ェア資源は単一の資源として扱われる。
【0005】一方、単一の実計算機上に複数のLPAR
を構築し複数のOSを動作させるモードをLPARモー
ドと言う。一般に、このモ−ドでは、複数のLPARを
単一の実計算機上で実現する為に、仮想計算機制御プロ
グラム(以下、「VMCP」という)と呼ばれるプログ
ラムを実計算機上で動作させ、このVMCPの制御の下
で複数のLPARを生成し、更に、この各々のLPAR
の上で独立したOSを動作させている。また、このよう
なVMCPには、単一の実計算機のハ−ドウェア資源を
各々のLPARに共用させて使用させる機能が付加され
ている。
【0006】単一の実計算機のハ−ドウェア資源を各々
のLPARに共用させる方式としては、VMCPの制御
の下に時分割でハ−ドウェア資源を割り当てる方式と、
ハ−ドウェア資源を論理的に分割して各々のLPARに
占有的に割り当てる方式と、これらの二つの方式を混在
させる方式等がある。
【0007】この単一の実計算機のハ−ドウェア資源を
各々のLPARに割り当てる技術としては、たとえば、
IBM社発行の刊行物”Enterprise System/9000 Enter
prise System/3090 Processor Resource/System Manage
r Planning Guide”(GA22-7123-4)に記載されている技
術が知られている。この刊行物で紹介されている技術
は、入出力チャネルのLPARでの共用方式として前述
の二つの方法のうち後者の方式、すなわち、実CHPを
論理的に分割して各々のLPARに占有的に割り当てる
方式によるものである。さらに、この刊行物で紹介され
ている技術によれば、それぞれの実CHPに対応するサ
ブチャネルも各々のLPARに占有的に割り当てられ
る。
【0008】なお、前記サブチャネルを含む入出力命令
及び入出力処理に関する一般的仕様としては、たとえば
IBM社発行の刊行物”Enterprise System Architectu
re/390 Principles of Operation"(SA22-7201-00)に記
載されているものなどが知られている。
【0009】このようなLPARモ−ドでの、実計算機
のハードウェア資源構成の概略を図2に示す。
【0010】図2には、実計算機のハードウェア資源
は、2台以上のCPU,1台の共用MS,2台以上のC
HP及び各々のCHPに接続されているDEV群とから
構成される場合について示した。
【0011】図2において、実計算機のハードウェア資
源の2台のCPUは、それぞれ1台ずつ2つのLPAR
に占有的に割り当てられており、実計算機のハードウェ
ア資源の1台の共用MSは、その記憶領域が論理的に分
割され、それぞれ2つのLPARに占有的に割り当てら
れている。
【0012】また、実計算機のハードウェア資源の4台
のCHPは、CHP単位に論理的に分割され、それぞれ
2つのLPARに占有的に割り当てられている。各々の
CHPに接続されているDEV群は、CHPの占有的な
割り当て従い、2つのLPARに占有的に割り当てられ
ている。なお。この場合、DEV群の占有的な割り当て
に従い、そのDEVに対応するサブチャネル(以下、
「SCH」という)も各々のLPARに占有的に割り当
てられる。
【0013】以上のように、図2においてCPU1,M
S1,CHP1,CHP2,DEV11からDEV1n
及びDEV21からDEV2nは一つのLPARである
LPAR1に割り当てられ、CPU2,MS2,CHP
3,CHP4,DEV31からDEV3n及びDEV4
1からDEV4nは他方のLPARであるLPAR2に
割り当てられている。ここでDEV11からDEV1
n,DEV21からDEV2n,DEV31からDEV
3n及びDEV41からDEV4nには、それぞれ独立
した一つ以上のSCHが割り当てられている。
【0014】図3に、LPAR、CHP群およびSCH
群の割り当ての具体例を示す。
【0015】図3において、各LPARはそのLPAR
に属するCHP群を占有的に使用しており、各CHPは
そのCHPに属するSCH群を占有的に使用している。
すなわち、各LPARはそのLPARに属するSCH群
を占有的に使用している事になる。
【0016】すなわち、LPAR21はそのLPARに
属するCHP21及びCHP22を占有的に使用してお
り、CHP21はそのCHPに属するSCH211から
SCH21nを占有的に使用している。また、CHP2
2はそのCHPに属するSCH221からSCH22n
を占有的に使用している。さらに、LPAR22はその
LPARに属するCHP23及びCHP24を占有的に
使用しており、CHP23はそのCHPに属するSCH
231からSCH23nを占有的に使用している。ま
た、CHP24はそのCHPに属するSCH241から
SCH24nを占有的に使用している。
【0017】図4には、LPARと、SCH群の対応を
示す。
【0018】図4において、LPAR31はそのLPA
Rに属するSCH311からSCH31nを占有的に使
用しており、LPAR32はそのLPARに属するSC
H321からSCH32nを占有的に使用している。
【0019】そして、LPAR31およびLPAR32
は、それぞれのSCH群に対する入出力割込みの受付可
否のを制御を行う為、論理入出力割込みサブクラス番号
(以下、「LISCN」という)を使用する。入出力割
込みサブクラス番号の一般的仕様については、例えば前
述の刊行物等に詳述されている。また、LPAR31、
LPAR32は、それぞれのSCH群に対して、所属す
るLPARを特定する制御を行う為、領域ID(以下、
「RID」という)を使用する。RIDには一つのLP
ARに対し唯一の値が与えられ、そのLPARに所属す
るSCH群も全てこの唯一の値をRIDとして保持す
る。これにより、LPARとそれに所属するSCH群と
の対応をとることができる。
【0020】たとえば、図示するように、LPAR31
のLISCNは’1’が割り当てられており、RID
は’1’が割り当てられている。したがい、LPAR3
1に所属するSCH群(SCH311〜SCH31n)
もLISCNは’1’が割り当てられており、RID
は’1’が割り当てられている。
【0021】また、LPAR32のLISCNは’2’
が割り当てられており、RIDは’2’が割り当てられ
ている。したがい、LPAR32に所属するSCH群
(SCH321〜SCH32n)もLISCNは’2’
が割り当てられており、RIDは’2’が割り当てられ
ている。
【0022】ここで、LPAR31が実計算機上で仮想
計算機として動作する場合、LISCN=’1’かつR
ID=’1’の属性で動作し、LPAR32が実計算機
上で仮想計算機として動作する場合、LISCN=’
2’かつRID=’2’の状態で動作する。
【0023】さて、LPARが実計算機上で仮想計算機
として動作する場合、VMCPはLISCNの値に対応
した制御レジスタ内の論理入出力割込みサブクラスマス
ク(以下、「LISCM」という)を’1’として動作
する。制御レジスタ内の入出力割込みサブクラスマスク
の一般的仕様としては、たとえば前述の刊行物に詳述さ
れている。値が1のLISCMに対応するLISCNの
SCHからの入出力割込が受付可能となる。
【0024】制御レジスタ内のLISCMの形式を図5
に示す。
【0025】図5において、制御レジスタは32ビット
の長さを持ち、ビット0〜7がLISCMとして使用さ
れ、LISCNの0〜7の値に各ビットが対応する。ビ
ット8〜31は未使用で予約ビットとして扱われる。
【0026】たとえば、図4のLPAR31が実計算機
上で仮想計算機として動作する場合、LISCN=’
1’であるのでLISCMのビット1を’1’かつビッ
ト2〜7を’0’として動作し、LPAR32が実計算
機上で仮想計算機として動作する場合、LISCN=’
2であるのでLISCMのビット2を’1’かつビット
1およびビット3〜7を’0’として動作する。
【0027】LISCMのビット0は、VMCPによっ
て使用され、LPARには開放されず、このビットは通
常’1’に設定されている。したがい、実際には、LP
AR31が実計算機上で仮想計算機として動作する場
合、LISCN=’1’であるのでLISCMのビット
0および1を’1’、ビット2〜7を’0’として動作
し、LPAR32が実計算機上で仮想計算機として動作
する場合、LISCN=’2であるのでLISCMのビ
ット0および2を’1’、ビット1およびビット3〜7
を’0’として動作する。
【0028】図6は、LPAR31およびLPAR32
が実計算機上で仮想計算機として動作する場合の。VM
CP,LPAR31およびLPAR32の時間資源配分
をしめすタイムチャートである。
【0029】図示した例では、VMCPに対しそれぞれ
区間501,区間503および区間503が配分され,
LPAR31に対しては区間502が配分され,そして
LPAR32に対しては区間504が配分される。各L
PAR31、32は、VMCPによってディスパッチさ
れ、区間が割り当てられる。
【0030】VMCPが走行している区間501,区間
503および区間503でのLISCMの値は’100
00000’(2進)であり、LISCN=’0’のS
CHからの入出力割込みのみが受付可能であり、LIS
CN=’1’およびLISCN=’2’のSCHからの
入出力割込みはハードウェアで保留される。また、LP
AR31が走行している区間502でのLISCMの値
は’11000000’(2進)であり、LISCN
=’0’およびLISCN=’1’のSCHからの入出
力割込みのみが受付可能であり、LISCN=’2’の
SCHからの入出力割込みはハードウェアで保留され
る。さらにLPAR32が走行している区間504での
LISCMの値は’10100000’(2進)であ
り、LISCN=’0’およびLISCN=’2’のS
CHからの入出力割込みのみが受付可能であり、LIS
CN=’1’のSCHからの入出力割込みはSCHもし
くはDEVで保留される。
【0031】したがい、たとえば、区間502ではLI
SCN=’2’のSCHからの入出力割込みはハードウ
ェアで保留される為、その受付は区間504迄待たされ
る。同様に、区間504ではLISCN=’1’のSC
Hからの入出力割込みはハードウェアで保留される為、
その受付は次にLPAR32がVMCPによってディス
パッチされる区間迄待たされる。
【0032】
【発明が解決しようとする課題】このように、従来は、
走行状態に無いLPARへの入出力割込みは保留され、
次にそのLPARがVMCPによってディスパッチされ
る迄受け付けられ無い。このため、VMCPによってデ
ィスパッチされるLPARのディスパッチ間隔(以下、
「タイムスライス」という)が長くなると、現在ディス
パッチされているLPAR以外のLPARへの入出力割
込みの受付け待ち時間が大きくなり、結果として入出力
装置の応答が遅くなるという問題が生じる。一方、この
問題を解決する為に、VMCPによってディスパッチさ
れるLPARのタイムスライスを短くすると、今度はV
MCPによってディスパッチされるLPARの切替頻度
が多くなり、VMCPのLPAR切替のためのオーバヘ
ッドが大きくなり、仮想計算機システムの性能低下をも
たらすという問題が生じる。
【0033】また、このような事情は、実計算機上で単
一のOSを動作させるモードをベーシックモードにおい
て、サブチャネル群を分割し複数のタスクに占有的に割
り当て、各タスクのを切り換えて動作させる場合にも同
様にあてはまる。
【0034】そこで、本発明は、VMCPのLPAR切
替のためのオーバヘッドと、入出力装置の応答性との、
調和を図ることを目的とする。
【0035】また、併せて本発明は、タスク切り換えの
のためのオーバヘッドと、入出力装置の応答性との、調
和を図ることを目的とする。
【0036】
【課題を解決するための手段】前記目的達成のために、
本発明は、入出力割込み要因に基づく入出力割込みの発
生を許可もしくは禁止する入出力割込みマスクを備えた
計算機システムにおける入出力割込み要因の処理方法で
あって、あらかじめ、保留する入出力割込み要因の総数
をしきい値として設定するステップと、入出力割込み要
因の発生時に、前記入出力割込みマスクが、当該入出力
割込み要因に基づく入出力割込みの発生を禁止している
場合に、当該入出力割込み要因を保留するステップと、
保留している入入出力割込み要因の数と、前記しきい値
を比較するステップと、保留している入出力割込み要因
の数が、前記しきい値を超えた場合に、保留入出力割込
みを発生するステップと、保留入出力割込みに対する処
理として、保留されている入出力割込み要因に基づく入
出力割込みの発生を可能とするステップとを有すること
を特徴とする入出力割込み要因の処理方法を提供する。
【0037】また、単一の実計算機上で、複数の仮想計
算機を稼働させる情報処理システムについては、特に、
あらかじめ、保留する入出力割込み要因の総数をしきい
値として設定するステップと、入出力割込み要因の発生
時に、前記入出力割込みマスクが、当該入出力割込み要
因に対応する仮想計算機への入出力割込みの発生を禁止
している場合に、当該入出力割込み要因を保留するとす
るステップと、仮想計算機毎に、入出力割込み要因の保
留数と、前記しきい値を比較するステップと、保留して
いる入出力割込み要因の数が、前記しきい値を超えた場
合に、当該保留数がしきい値を超えた入出力割込み要因
に基づく入出力割込みを受け付ける処理を起動する保留
入出力割込みを発生するステップとを有することを特徴
とする入出力割込み要因の処理方法を提供する。
【0038】
【作用】たとえば、本発明の一実施態様によれば、ある
LPARがディスパッチされかつ動作中に、他LPAR
の入出力割込み要因のハードウェアでの保留状況を調
べ、その結果により保留入出力割込みを発生させるか否
かを判断し、発生させると判断した場合には保留入出力
割込みを経由して、制御をVMCPに戻し、VMCPの
保留入出力割込みハンドラが、保留入出力割込みに付随
する割込みパラメータに含まれるLISCNを調べ、そ
のLISCNが割り当てられているLPARをVMCP
がディスパッチする事により、保留されている入出力割
込みが受け付けられる状態に置くよう制御する。よっ
て、タイムスライスの長さとは無関係に入出力デバイス
への応答性を高めることができる。
【0039】すなわち、従来は、入出力割込み要因が生
じた場合、前述したように、VMCPによってディスパ
ッチされるLPARのタイムスライスが長くなると、入
出力デバイスの応答が悪くなるが、本実施例によれば、
あるLPARが実計算機にディスパッチされかつ動作中
に、その実計算機上での他LPARの入出力割込みのハ
ードウェアでの保留状況を調べ、ハードウェアで保留さ
れている他LPARの入出力割込み要因数がある一定の
しきい値を超えていると、保留入出力割込みを経由して
現在動作しているLPARの動作を打ち切り、制御をV
MCPに戻し、その保留入出力割込みパラメータの解析
に基づいて、VMCPはハードウェアで保留されている
入出力割込み要因数がある一定のしきい値を超えている
LPARをディスパッチする。その結果、ディスパッチ
されたLPARのハードウェアで保留されている入出力
割込み要因は、そのLPARによって受け付けられ、処
理される。
【0040】一方、このようにタイムスライスの設定を
短くすること無しに、入出力デバイスの応答性を高める
ことができるので、タイムスライスを短くして、不必要
にLPARの切り換えによるオ−バヘッドを増加させる
ことはない。よって、VMCPのLPAR切替のための
オーバヘッドと、入出力装置の応答性との、調和を図る
ことができる。
【0041】
【実施例】以下、本発明の一実施例を説明する。
【0042】本実施例では、各LISCN毎にしきい値
を設定し、各LISCNに対応するSCHからの入出力
割込み数が、当該LISCNに設定されたしきい値を超
えた場合には、当該LISCNで動作するLPARをデ
ィスパッチし、そのSCHからの入出力割込みを受付可
能とする。
【0043】そこで、まず、本実施例において、各LI
SCN毎にしきい値を設定するために用いる命令につい
て説明する。
【0044】本実施例では、この命令を、Set Pe
nding Interruption Thresh
old (SPIT)命令と呼ぶ。このSPIT命令
は、図7に示すように、31ビット幅の命令である。命
令語のビット0からビット15は命令コードで、ビット
24からビット27で第1オペランドである汎用レジス
タ(R1)を指定し、ビット28からビット31で第2
オペランドである汎用レジスタ(R2)を指定する。し
たがい、SPIT命例の命令形式は、いわゆるRRE形
式である。RRE形式命令の一般的仕様は、たとえばI
BM社発行の刊行物”Enterprise System Architecture
/390 Principles of Operation"(SA22-7201-00) 等に記
載されているので説明を省略する。
【0045】以下、本命令の内容について説明する。本
命令は、指定された論理入出力割込みサブクラスに保留
されている入出力割込み要因の数に従って、後述する保
留入出力割込みを発生させるか否かを制御するしきい値
を設定する命令である。
【0046】第1オペランド(R1)はしきい値を設定
するLISCNを格納した汎用レジスタを指定する。具
体的には、R1で指定される汎用レジスタのビット0か
らビット15には’9701’(16進)を設定し、ビ
ット16からビット31でしきい値を設定するLISC
Nを設定しておく。そして、R1で指定される汎用レジ
スタのビット0からビット15が’9701’(16
進)で無ければオペランド例外を検出するようにする。
【0047】また、第2オペランド(R2)で指定され
る汎用レジスタのビット0からビット15には、LIS
CNに設定するしきい値を設定しておく。また、この汎
用レジスタのビット16からビット31で、保留入出力
割込み実行時に、それに付随させる保留入出力割込みパ
ラメータを指定する。保留入出力割込みパラメータはL
ISCN毎にそれぞれ任意の値を指定することが出来
る。
【0048】命令のビット16からビット23は無視さ
れる。
【0049】なお、本命令は特権命令であり、CPU
が、いわゆる問題プログラム状態にある時、本命例を実
行しようとすると、特権命令例外が検出され、本命令の
実行は抑止される。特権命令例外の一般的仕様として
は、前述したIBM社発行の刊行物等に記載されてい
る。
【0050】また、本命令が正常に実行され、しきい値
のセットがそのLISCに対する初めてセットである場
合、PSWの条件コードにはゼロをセットする。命令が
正常に実行され、しきい値のセットがそのLISCに対
する初めてセットで無い場合には条件コードに’1’を
セットし、指定されたLISCNが不当である場合には
条件コードに’3’をセットするようにする。条件コー
ドの’2’は使用しない。これにより、本SPIT命令
の発行元は、命令の実行結果を認識することができる。
【0051】さて、本実施例では、あらかじめ、このS
PIT命令を用いて、各LISCN毎にしきい値と、保
留入出力割込みパラメータを設定しておく。
【0052】以下、実際にDEVから入出力割込み要求
が発生した場合の、本情報処理システムの動作について
説明する。
【0053】図8に、この場合の動作手順を示す。以
下、処理の順序に従って各ステップを説明する。
【0054】ステップ710 : DEVから入出力割
込み要求が発生すると、このDEVから入出力割込み要
求はCHPを経由してCPUの入出力処理部(以下、
「IOP」という)に伝達され、IOPのステップ72
0から7B0に入たる処理が起動される。なお、このと
き、IOPには、入出力割込み要求を発生したDEV番
号も付随して伝達される。このような入出力割込み要求
の一般的仕様としては、たとえばIBM社発行の刊行
物”Enterprise System Architecture/390 Principles
of Operation"(SA22-7201-00)にその詳細が記述されて
いる。
【0055】ステップ720 : IOPは、DEVか
らの入出力割込み要求を受け取ると、該入出力割込み要
求に付随して来たDEV番号から、あらかじめ設定され
ている実計算機資源の割り当てに従い、このDEV番号
に対応するSCH番号を求め、ステップ730に進む。
【0056】ステップ730 : IOPは、ステップ
720で求めたSCH番号から、あらかじめMS上に設
けた、ハ−ドウェアの情報を記憶させるエリアであるH
SA内の、求めたSCH番号に対応するSCHの情報を
保持するユニット制御ワード(以下、「UCW」とい
う)をアクセスし、DEVから送られて来た入出力割込
み要求と入出力割込みパラメータをサブチャネル状態ワ
ード(以下、「SCSW」という)の形式で登録し、こ
のSCH番号のSCHをステータス保留状態にする。そ
して、ステップ740に進む。なお、このようなSCS
Wの一般的仕様としては、たとえばIBM社発行の刊行
物”Enterprise System Architecture/390Principles o
f Operation"(SA22-7201-00)にその詳細が記述されてい
る。
【0057】ステップ740 : IOPは、ステップ
720で求めたSCH番号SCHにLISCNが既に割
り当てられていれば、前記UCW内に格納しておいた当
該SCH番号に割り当てたLISCNを取り出し、ステ
ップ750に行く。LISCNが未だ割り当てられてい
なければ、本処理を終了する。
【0058】ステップ750 : IOPは、ステップ
740で取りだしたLISCNを用いて、そのLISC
Nに対応して、あらかじめHSA内に設けられている入
出力割込みキューカウント(以下、「IQC」という)
エントリをアクセスし、IQCに’1’を加え、ステッ
プ760に進む。IQCは、各LISCN毎に一つづつ
設けたエントリであり、そのLISCNが割り当てられ
ているSCHの未だ受け付けられていない入出力割込み
の総数を保持する。
【0059】ステップ760 : IOPは、CPUに
対し入出力割込み要因が存在する旨を通知し且つ入出力
割込み処理を要求する入出力割込み処理要求フラグを’
1’にセットし、ステップ770に進む。
【0060】ステップ770 : IOPは、プログラ
ム状態語(以下PSWという)の入出力割込みマスクの
値を調べ、該マスクの値が’0’(全ての入出力割込み
受付禁止の状態)であれば、処理を終了する。該マスク
の値が’1’(全ての入出力割込み受付許可の状態)で
あれば、ステップ780に進む。
【0061】ステップ780 : IOPは、制御レジ
スタ内の入出力割込みサブクラスマスクであるLISC
Mの値を調べ、前記LISCNに対応するLISCMの
対応するマスクの値が’1’(該LISCNの入出力割
込み受付許可の状態)であれば、ステップ760で設定
した入出力割込み処理要求フラグにより、この入出力割
込みは受け付けられるので、処理を終了する。該マスク
の値が’0’(該LISCNの入出力割込み受付禁止の
状態)であれば、ステップ790に進む。
【0062】ステップ790 : IOPは、SPIT
命令によって、ステップ740で取りだしたLISCN
に対して設定されたしきい値を取り出し、ステップ7A
0に進む。
【0063】ステップ7A0 : IOPは、ステップ
790で取り出したLISCNに対応するしきい値と、
そのLISCNが割り当てられているSCHの未だ受け
付けられていない入出力割込みの数を保持しているIQ
Cの値とを比較する。そして、しきい値の方が該IQC
の値より大きければ、処理を終了する。一方、しきい値
の方がIQCの値より小さいか等しければステップ7B
0に進む。
【0064】ステップ7B0 : IOPは、CPUに
対し保留入出力割込み処理を要求する保留入出力割込み
処理要求フラグを’1’にセットし、処理を終了する。
なお、本実施例では、保留入出力割込を、浮動割込みと
している。浮動割込みについては、IBM社発行の刊行
物”Enterprise System Architecture/390 Principles
of Operation"(SA22-7201-00)等にその詳細が記述され
ているので、説明を省略する。
【0065】ステップ7C0 : 保留入出力割込み処
理要求フラグが’1’にセットされると、CPUのハ−
ドウェア(OSによらないCPU自体の機能部分)は、
保留入出力割込み処理を起動すると共に、IOPがセッ
トした保留入出力割込み処理要求フラグを’0’にリセ
ットする。
【0066】なお、保留入出力割込み処理の内容は、M
Sのプリフィクス退避域(以下、「PSA」という)に
格納する割込みパラメータが通常の入出力割込み処理時
の割込みパラメータとその内容が一部異なるのみで、そ
の他は、通常の入出力割込み処理と同じである。通常の
入出力割込み処理の一般的仕様としては、たとえばIB
M社発行の刊行物”Enterprise System Architecture/3
90 Principles of Operation"(SA22-7201-00)等にその
詳細が記述されている。ここで、図9に、この割込みパ
ラメータの例を示す。図9は、MSのPSAを示したも
のであり、PSAの184番地から185番地には’9
701’(16進)の値を格納し、186番地から18
7番地には、保留入出力割込みを発生させたLISCN
の値が格納し、188番地から189番地にはLISC
Nに対応するしきい値を格納し、190番地から191
番地には、当該LISCNに対してSPIT命令で設定
した保留入出力割込みパラメータを格納する。
【0067】次に、保留入出力割込処理によって、VM
CPが起動されると、VMCPは、前述した保留入出力
割込みパラメータから、次にディスパッチすべきLPA
Rを選択する。VMCPは、次にディスパッチすべきL
PARを選択すると、選択したLPARを起動する前
に、対応する状態記述(以下、「SD」という)を初期
化し、そのSDをオペランドとしてSIE命令を発行
し、対応するLPARを起動する。
【0068】その結果、対応するLPARが翻訳実行モ
ード(以下、「IE」モードという)で動作を開始す
る。そして、当該LPARに対応するLISCMの値が
1にセットされ、LPARがIEモードで動作を開始す
ると、保留入出力割込み発生のきっかけとなったLIS
CNのSCHで保留されていた入出力割込み要因が入出
力割込みを発生させ、対応するLPARで動作している
OSにより、従来と同様に受け付けられ処理される。こ
のとき、IQCの値は、一つ入出力割込み要求が受け付
けられる度に1デクリメントされる。
【0069】なお、SD,SIE命令及びIEモードの
一般的仕様としては、たとえばIBM社発行の刊行物”
IBM System/370 Extended Architecture Interpretive
Execution"(SA22-7095) にその詳細が記述されているの
で、詳しい説明は省略する。
【0070】以上のように本実施例によれば、実計算機
で保留されている仮想計算機の入出力割込み要因が、プ
ログラムによって指定されたしきい値を超えた時、入出
力割込みマスクの値によ存せずに保留入出力割込みを発
生させる。すなわち、VMCPによってディスパッチさ
れたLPARが走行中でも、ハードウェアで保留されて
いる他LPARの保留入出力割込み要因数がある任意の
しきい値を超えると、ハードウェア的に現在VMCPに
よってディスパッチされているLPARの走行を中断
し、制御をVMCPに戻す。
【0071】よって、ハードウェアで保留されている一
定のしきい値を超えている入出力割込み要因をそのLP
ARにおいて、早期に受付可能とすることができる。ま
た、この際前記しきい値を各仮想計算機毎に設定するこ
とができる。
【0072】さらに、前記保留入出力割込みを発生させ
る際、保留入出力割込みを発生させた入出力割込み保留
要因をクリアしないので、VMCPが、保留されている
入出力割込み要因をVMCP内の入出力割込みキューに
キューイングする必要はない。 なお、以上の実施例で
は、PSWの入出力割込みマスクの値が’1で、制御レ
ジスタ内のLISCMの値が’0’の場合に、保留入出
力割込みを発生可能としたが、この条件は任意に変更し
て実現しても良い。すなわち、たとえば、保留入出力割
込みの発生をのみを制御する保留入出力割込みマスクを
PSWまたは制御レジスタ内に設けても良い。
【0073】また、本実施例は、VMCPをOS、各L
PARをタスクに置き換えれば、実計算機上で単一のO
Sを動作させるモードをベーシックモードにおいて、サ
ブチャネル群を分割し複数のタスクに占有的に割り当
て、各タスクのを切り換えて動作させる場合にも同様に
適用することができる。
【0074】
【発明の効果】以上のように本発明によれば、VMCP
のLPAR切替のためのオーバヘッドと、入出力装置の
応答性との、調和を図ることができる。また、タスク切
り換えのためのオーバヘッドと、入出力装置の応答性と
の、調和を図ることができる。
【図面の簡単な説明】
【図1】ベ−シックモ−ド時の実計算機のハ−ドウェア
資源の構成を示すブロック図である。
【図2】LPARモ−ド時の実計算機のハ−ドウェア資
源の構成を示すブロック図である。
【図3】サブチャネル群の各LPARへの割り当てを示
す説明図である。
【図4】サブチャネル群のLPARへの割り当てと、サ
ブサブクラス番号と領域IDとの関係を示す説明図であ
る。
【図5】制御レジスタの論理入出力サブクラスマスクを
示す説明図である。
【図6】VMCPおよびLPARの実動作期間を示すタ
イムチャ−トである。
【図7】本発明の実施例で用いるSPIT命令の構成を
示す説明図である。
【図8】本発明の実施例に係る情報処理システムの動作
を示すフロ−チャ−トである。
【図9】本発明の実施例で用いる保留入出力割込みの割
込みパラメ−タを示す説明図である。
【符号の説明】
710 入出力割込み要求発生 750 保留されている入出力割込み数のインクリメン
ト 7A0 保留されている入出力割込み数としきい値との
比較 7B0 保留入出力割込みの発生 7C0 保留入出力割込み処理の起動

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】入出力割込み要因に基づく入出力割込みの
    発生を許可もしくは禁止する入出力割込みマスクを備え
    た計算機システムにおける入出力割込み要因の処理方法
    であって、 あらかじめ、保留する入出力割込み要因の総数をしきい
    値として設定するステップと、 入出力割込み要因の発生時に、前記入出力割込みマスク
    が、当該入出力割込み要因に基づく入出力割込みの発生
    を禁止している場合に、当該入出力割込み要因を保留す
    るステップと、 保留している入入出力割込み要因の数と、前記しきい値
    を比較するステップと、 保留している入出力割込み要因の数が、前記しきい値を
    超えた場合に、保留入出力割込みを発生するステップ
    と、 保留入出力割込みに対する処理として、保留されている
    入出力割込み要因に基づく入出力割込みの発生を可能と
    するステップとを有することを特徴とする入出力割込み
    要因の処理方法。
  2. 【請求項2】請求項1記載の入出力割込み要因の処理方
    法であって、 前記しきい値を設定するステップは、タスク毎に、当該
    仮想計算機について保留する入出力割込み要因の総数を
    しきい値として設定するステップであって、 前記タスク毎に、入出力割込み要因の保留数と、前記し
    きい値を比較するステップは、タスク毎に、入出力割込
    み要因の保留数と、当該タスクに対して設定された前記
    しきい値を比較するステップであることを特徴とする入
    出力割込み要因の処理方法。
  3. 【請求項3】単一の実計算機上で、複数の仮想計算機を
    稼働させる情報処理システムであって、仮想計算機毎
    に、当該仮想計算機の非動作期間中、当該仮想計算機に
    対応する入出力割込み要因に基づく入出力割込みの発生
    を禁止する入出力割込みマスクを備えた情報処理システ
    ムにおける入出力割込み要因の処理方法であって、 あらかじめ、保留する入出力割込み要因の総数をしきい
    値として設定するステップと、 入出力割込み要因の発生時に、前記入出力割込みマスク
    が、当該入出力割込み要因に対応する仮想計算機への入
    出力割込みの発生を禁止している場合に、当該入出力割
    込み要因を保留するとするステップと、 仮想計算機毎に、入出力割込み要因の保留数と、前記し
    きい値を比較するステップと、 保留している入出力割込み要因の数が、前記しきい値を
    超えた場合に、当該保留数がしきい値を超えた入出力割
    込み要因に基づく入出力割込みを受け付ける処理を起動
    する保留入出力割込みを発生するステップとを有するこ
    とを特徴とする入出力割込み要因の処理方法。
  4. 【請求項4】請求項3記載の入出力割込み要因の処理方
    法であって、 前記保留入出力割込みを発生するステップは、前記保留
    数が前記しきい値を超えた入出力割込み要因を消去せず
    に前記保留入出力割込みを発生させるステップであっ
    て、 当該保留入出力割込みによって起動される処理は、対応
    する入出力要因の保留数が前記しきい値を超えた仮想計
    算機を動作させるステップであることを特徴とする入出
    力割込み要因の処理方法。
  5. 【請求項5】請求項3または4記載の入出力割込み要因
    の処理方法であって、 前記仮想計算機に対応する入出力割込み要因とは、当該
    仮想計算機に割り当てられたサブチャネルにおいて発生
    した入出力割込み要因であることを特徴とする入出力割
    込み要因の処理方法。
  6. 【請求項6】請求項3、4または5記載の入出力割込み
    要因の処理方法であって、 前記しきい値を設定するステップは、仮想計算機毎に、
    それぞれ、当該仮想計算機について保留する入出力割込
    み要因の総数をしきい値として設定するステップであっ
    て、 前記仮想計算機毎に、入出力割込み要因の保留数と、前
    記しきい値を比較するステップは、仮想計算機毎に、入
    出力割込み要因の保留数と、当該仮想計算機に対して設
    定された前記しきい値を比較するステップであることを
    特徴とする入出力割込み要因の処理方法。
JP5038078A 1993-02-26 1993-02-26 入出力割込み要因の処理方法 Pending JPH06250850A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5038078A JPH06250850A (ja) 1993-02-26 1993-02-26 入出力割込み要因の処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5038078A JPH06250850A (ja) 1993-02-26 1993-02-26 入出力割込み要因の処理方法

Publications (1)

Publication Number Publication Date
JPH06250850A true JPH06250850A (ja) 1994-09-09

Family

ID=12515459

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5038078A Pending JPH06250850A (ja) 1993-02-26 1993-02-26 入出力割込み要因の処理方法

Country Status (1)

Country Link
JP (1) JPH06250850A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004109512A1 (ja) * 2003-06-03 2004-12-16 Sony Corporation 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム
WO2006035728A1 (ja) * 2004-09-29 2006-04-06 Sony Corporation 情報処理装置、割り込み処理制御方法、並びにコンピュータ・プログラム
US11188373B2 (en) 2018-05-18 2021-11-30 Renesas Electronics Corporation Executing interrupt processing of virtual machines using processor's arithmetic unit

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004109512A1 (ja) * 2003-06-03 2004-12-16 Sony Corporation 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム
US7818751B2 (en) 2003-06-03 2010-10-19 Sony Corporation Methods and systems for scheduling execution of interrupt requests
WO2006035728A1 (ja) * 2004-09-29 2006-04-06 Sony Corporation 情報処理装置、割り込み処理制御方法、並びにコンピュータ・プログラム
US8584125B2 (en) 2004-09-29 2013-11-12 Sony Corporation Apparatuses, methods, and computer-readable media for interrupt control
US11188373B2 (en) 2018-05-18 2021-11-30 Renesas Electronics Corporation Executing interrupt processing of virtual machines using processor's arithmetic unit
US11915032B2 (en) 2018-05-18 2024-02-27 Renesas Electronics Corporation Interrupt processing using virtual machines

Similar Documents

Publication Publication Date Title
US5506975A (en) Virtual machine I/O interrupt control method compares number of pending I/O interrupt conditions for non-running virtual machines with predetermined number
EP0382505B1 (en) Virtual computer system having improved input/output interrupt control
US5553291A (en) Virtual machine control method and virtual machine system
US8713563B2 (en) Data processor with virtual machine management
US5555414A (en) Multiprocessing system including gating of host I/O and external enablement to guest enablement at polling intervals
US4843541A (en) Logical resource partitioning of a data processing system
US5414848A (en) Method and apparatus for sharing a common routine stored in a single virtual machine with other virtual machines operating in a preemptive muli-tasking computer system
US8468540B2 (en) Interrupt and exception handling for multi-streaming digital processors
CA1260149A (en) Computer system for controlling virtual machines
EP0185378A2 (en) Virtual computer system
KR20070100367A (ko) 하나의 가상 머신에서 다른 가상 머신으로 메모리를동적으로 재할당하기 위한 방법, 장치 및 시스템
US20070169126A1 (en) Multi-processor system and program for causing computer to execute controlling method of multi-processor system
US10846088B2 (en) Control of instruction execution in a data processor
JP2009223842A (ja) 仮想計算機制御プログラム及び仮想計算機システム
JPH06243112A (ja) マルチプロセッサ装置
EP0290942A2 (en) Guest machine execution control system for virtual machine system
JPH06250850A (ja) 入出力割込み要因の処理方法
WO2020008757A1 (ja) 仮想化環境におけるデバイスへのアクセス方法
US11194615B2 (en) Dynamic pause exiting
JP2585905B2 (ja) マルチタスク実行装置
US20230376334A1 (en) Semiconductor device and control method for the same
JP2864255B2 (ja) 仮想計算機方式の計算機システム
JPH0567973B2 (ja)
JPH0444131A (ja) 複数os走行システムにおけるプロセッサ間通信の実行装置および方法
JP2022055002A (ja) 情報処理装置、情報処理方法および情報処理プログラム