JPS60140437A - 仮想計算機システムタイマ制御方式 - Google Patents

仮想計算機システムタイマ制御方式

Info

Publication number
JPS60140437A
JPS60140437A JP24628783A JP24628783A JPS60140437A JP S60140437 A JPS60140437 A JP S60140437A JP 24628783 A JP24628783 A JP 24628783A JP 24628783 A JP24628783 A JP 24628783A JP S60140437 A JPS60140437 A JP S60140437A
Authority
JP
Japan
Prior art keywords
value
vmcp
ckc
virtual
running
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
Application number
JP24628783A
Other languages
English (en)
Other versions
JP2581659B2 (ja
Inventor
Toshiharu Tanaka
俊治 田中
Hidenori Umeno
梅野 英典
Hideo Sawamoto
英雄 澤本
Takashige Kubo
久保 隆重
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 JP58246287A priority Critical patent/JP2581659B2/ja
Publication of JPS60140437A publication Critical patent/JPS60140437A/ja
Application granted granted Critical
Publication of JP2581659B2 publication Critical patent/JP2581659B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、VMSにおけるタイマ制御方式に係り、特に
仮想計算1幾のクロックコンパレータCKCの値をセッ
トする命令のシミュンーション及びクロックコンパノー
夕による割込み処理によるVMCPのオーバヘッドを削
減する上で有効である。
〔発明の背景〕
VMSにおいては、各仮想計算機(VM)のハードウェ
ア・インタフェースは、VMCPにより実現される。V
MCPは、計算機資源(中央処理装置、主記憶装置、入
出力装置等)?各VMで共 有するように管理し、各V
Mがあたかも1台の実計算機全専有するかのような環境
を作り出す。
第1図に、従来の一般的な計算機システムのブロック図
、第2図に、従来の一般的な仮想計算機システムのブロ
ック図を示す。
各VMが共有する資源にタイマがある。タイマには、T
ime of Day(’TOD)、CKC,CPUタ
イマ、インタバルタイマカアル。
TODは、時刻表示のために使われ、通常一定時間間隔
毎に加算される。
VMCPでは、これらタイマを仮想タイマとして、各V
Mに与えるようシミュレーション全行すっている。
タイマの1つであるCKCは、TODがCKCの指定す
る特定の値に達した時点でタイマ割込み全発生させる機
構である。各々のVMは、特権命令セットクロックコン
パレータ(scKc)命令により、CKCKgを設定し
、一定時間後のタイマ割込み(これをクロックコンパレ
ータ割込トいう)の要求全行ない、特権命令ストアクロ
ックコンパレータ(STCKC)命令により、該当VM
のクロックコンパレータのタイマ値を読み出す事が出来
る。
タイマ等、システムリソースの管理は、一般的な計算機
システムにおいては、O8が行ない、VMSにおいては
、VMCPが行なう。VMSにおけるVMCP及び、一
般的な計算機システムにおけるOSは、′X特権命令ゝ
ゝと呼ばれる命令全発行する事により、システムリソー
スにアクセスする事ができる。
一般的な計算機におけるユーザプログラム及びVMSに
おけるO8とユーザプログラムには、N非特権モードゝ
ゝが割当てられる。
VMSにおいてO8が、。特権命令1を実行しようとす
ると、プログラム割込み(特権命令例外)が検出され、
VMCPK制御が渡り、VMCPはこの特権命令全シミ
ュレーションする。
VMCPFi、ハードウェアの状態を記憶しておくため
に、主記憶装置内にPrefix 5ave Area
(PSA)と呼ばれる領域を持っており、割込みは、P
SAに反映される。各VMも、同様のPSAを持つ。
一般の計算機システムでは、CPUの動作を制御する基
本的な制御情報は、第5図に示すProgramSta
tus Word (P SW) 22と呼ばれるレジ
スタに、保持されている。割込み条件が起きるとPSW
22全体を、主記憶装置の特定の位置に格納し、他の特
定の位置から新PSWとなるべき内容を読み出してPS
W22に設定する。これにより特定の割込処理プ四グラ
ムへ制御が渡される。これを割込動作と呼ぶ。
PSW22の外部マスク12が11ゝゝであり、個個の
外部割込み要求に対応するサブマスクがJt(の時、そ
の割込みの要求は受付けられ、このビットが10#の時
、外部割込みの要求は、保留される。
クロックコンパレータ割込みのサブマスクは、特定のコ
ントロールレジスタの特定ビットである。
PSW22のPビット13が00時、特権モードを表わ
し SS 1”の時、非特権モードを表わす。
以下、第3図に基づいて従来技術を説明する。
第6図において、2は、 VM、のクロックコンパレー
タ割込みの要求で、そのタイマ値がαである要求を表わ
す。VMCPは、各VMのクロックコンパレータ割込み
の要求を、そのタイマ値が小さな順に並ぶようにタイマ
キュー6に登録している。
第3図のタイマキューろは、V Mle V M2 *
 V M3m V M4が、クロックコンパレータ割込
みの要求?Ifll l、テおり、それぞれのタイマ値
は、α、β、γ、δであり、αくβ≦γくδである事を
示す。
1は、従来よりあるCKCl表わし、4は、従来よりあ
るToDi表わす。CKClには、クロックコンパレー
タ割込みの要求キュー6の先頭の要求のタイマ値αがセ
ットされている。
また、各VMは、クロツクコンパレータノタイマ値を格
納するブロックを持っている。以下、このブロック全タ
イマ保持ブロックと称す。
第3図のタイマキュー3は、タイマ保持ブロックをキュ
ーイングしたものを示している。
システムに仮想計算機支援ファームウェア(VMA)が
装備された場合には、S CKC命令、5TCKC命令
t−’VMで発行した場合、vMCPへ割込まず、マイ
クロプログラムにより処理を行ない、処理の高速化を図
っている。以下、この従来例においては、VMAが装備
された場合の処理を述べる。
VMCPにより、VM3’ii起動したとする。
7M3がタイマ値εで、tVj権命令5CKC’i発行
した場合の処理フロー全第10図に示す。VMは非特権
モードで走行しているのでvMA又はVMCPにより以
下の処理が行なわれる。
まず、マイクロプログラムにより、クロックコンパレー
タ割込みの要求キュー3を検索して、既にVM3からの
要求が要求キュー乙に登録されているかを調べる。
既に登録さhている場合には、その要求をキュー3から
叡りけずし、新しく発行された命令のタイマ値号持つ要
求を、タイマ値の小さな順にクロックコンパレータ割込
みの要求が並ぶように、VMAは、要求?キュー3に登
録する。また、その要求が、要求キュー3の先頭である
場合VrFi、CKClの値をεに書き換える。
末だ7M3の要求がキュー3に登録されていない場合に
も、同様にして、キュー3に要求を登録し。
その要求が要求キュー乙の先頭である場合には、CKC
1の値をεに書きかえる。
VMCP自身が5CKC命令を発行した。場合には、ハ
ードウェアによりCKClに値がセットされる。特権命
令5TCKC命令が、VM3から発行された場合の処理
は第11図に示す。VMAitVM3のタイマ保持ブロ
ックにより、VM3のクロックコンパレータのタイマ値
を読み出す事が出来る。
VMCP自身が5TCKC命令を発行した場合には、C
KClの値が、命令で指定された領域に格納される。C
I(CIの値が、TODの値よりも、例えば、小さくな
った場合には、第12図に示すようにタイマ割込みが発
生り、VMCPは、要求キュー3の先頭の要求を出しi
VMの、クロックコンパレータ割込みとして、割込みの
シミュレーションを行なう。
VMCPにより、走行VMが7M3から他vMへ切換わ
った場合も、以上述べた処理と同様の処理を行なう。
以上述べた従来技術においては、VMからの5CKC命
令の都度%VMCP又はVMAが要求キュー3?検索し
、また、クロックコンパレータ割込みのシミュレーショ
ンiVMcPが行なっており、これがVMCPのオーバ
ヘッドの要因の一つとなっている。
〔発明の目的〕
本発明は、VMSにおいて、上記問題点を解消するため
、走行中のVMに対するタイマ値更新の要求は、キュー
に登録するのではな(、走行中の7M専用のりλマ値を
設定する機構に、1頁接書き込む事を可能とし、またC
KCによるタイマ割込みfVMcPf継由せず直継歯走
行中のVMのO8に反映することを可能とするVMSを
提供することにある。
〔発明の概要〕 本発明の仮想計算機システムでは、走行中の仮想計算機
専用のタイマ値を設定する機構を設ける。
そして走行中仮想計算機からのタイマ値の更新の要求が
あった時は、専用のタイマ値を設定する機構の値を直接
更新する。従って走行中は、タイマキューへの登録は1
行なわない。仮想計算機の切換え時に、専用のタイマ値
?設定する機構の値會、割込み要求と1−で、タイマキ
ューに登録する。また、CKCによる割込みが直接、走
行中のVMのO8に反映出来るかを示す機構を設け、可
能な場合には1面接O8に反映する。
〔発明の実施例〕
以下本発明全実施例により詳細に説明する。
1、第4図は、本発明の1実施例のブロック図である。
25け、VMSの主記憶装置全表わす。5HVMCPの
システム常駐領域であり、主記憶装置25に常駐するv
MCPシステム常駐プログラムが使用する。10は、v
Mcpのシステム常駐領域5の内で、ハードウェアとの
インタフェースのために使用されるvMCPのPSAを
表わす。
6、 7. 8. 9(4それぞれ、VM、、 vM2
. VM3゜VM4のPSAを表わす。
プレフイクスレジスタ11は、VMが走行中の場合には
、そのVMのPSAのアドレスケ格納し。
VMCPK制御カ渡った時rは、V M CP)PSA
のアドレスを格納(2ている。
ベンディングフラグ17は、VMCPにおいて、クロッ
クコンパレータ割込みの保留が、走行中のVMにある時
にはゝゝ1”、保留がない時にはゝゝO”となるフラグ
である。
VMモードフラグ26が1の場合は、走行中VMの特権
命令及びイ1」込みの処理を、VMCPの関与なしにO
8が直接実行することが可能であることを意味する。
命令実行回路14は、5CKC,5TCKC命令等の実
行を行なう回路(マイクロプログラム23の制御による
)゛、比較回路15は、CKClとTOD、dの値の比
較回路、16は、クロックコンパレータの割込みを発生
させる割込み回路(マイクロプログラム24の制御によ
る)である。
40は命令レジスタ群であり、主記憶装置25上の命令
は、ここへ取こまれ、線311経由して、命令実行回路
14へ送られる。
vMCPは、VM起動時、該VMの直接実行モードイザ
ボートするときは、VM起動命令により、VMモードフ
ラグ26に1をセットする。さらに、PSW−22の外
部マスク12及び、!定のコントロールレジスタに存在
するクロックコンパレータサブマスクは、VMモードフ
ラグ26がゝゝ1”の時、そね、それ、仮想PSWの外
部マスク及び、該当の仮想コントロールレジスタに存在
するクロックコンパレータサブマスクに合わせられる。
g6に、VMCPは、VM起動時、そノVM(7)PS
Aのアドレスff1PXR11に設定する。
vMCPが、7Mモードフラグ26が0で、VMを起動
するとき、PxRllicは、VMCPのPSAのアド
レス?設定するO VMCPが、VM3’i起動する場合、VMCPは、7
M3のタイマ保持ブロックのCKCのタイマ値?CKC
lICセットする。次に、VMCPけ7M3のクロック
コンパレータ割込み要求力、キュー3に登録されている
かを検索し、あるならばその要求をキュー3から取り除
く。
さらに、vM3起動時、VMCPが7M3のCKC割込
み保留要因を持つ場合には、VMCPはベンディングブ
ラシ17全1にセットする。
5CKC命令が発行された場合のフローは、第13図に
示す。点線により、囲甘れ′f?、部分が、従来技術に
より実施されている処理である。
主記憶装置25上の命令は、命令レジスタ40に取りこ
壕れ、線引′fr経由して、命令実行回路14に入る。
同様に7M3がCKC値εで5CKC命令を発行すると
、その5CKC命令は命令実行回路14及びマイクロプ
ログラム23により、以下のように実行される。
7Mモードフラグ26が1 カ)、 P SW22の非
特権モードフラグ13が1o”(即ち、VMが特権モー
ド)、保留フラグ17が5SoII(即ち、VMCPに
よる7M3のCKC割込み保留はない)の場合には、#
39?経由して、CKClにεが設定される。
VMモードフラグ26が11〃かっ、pswの非特権モ
ードフラグ13が10”、保留フラグ17が“1〃(即
ち、VMCPKよりVMaのCKC割込みが保留となっ
ている)場合には、緋34を継由して、プレフイクスレ
ジスタ11には、VMCPのPSAアドレスがセットさ
れ、線33に継由して、割込回路16が起動され、VM
CPに%罹命令例外が報告される。
VMモードフラグ26がゝゝ1〃かっ、Pswの非特権
モードフラグ13が“1〃(即ち、VMが非特権モード
)の場合には、線33を継由して1割込み回路16が起
動され、VMK特権命令例外が報告される。
VMモードフラグカー〇”かつ、PSWの非特権モード
フラグ16が“0〃(即ち、特権モード)の場合には、
VMCP又は実計算機モードであるから、線39を経由
して、CKClには、εが設定される。
VMモードフラグがゝゝ0“かつ、Pswの非特権モー
ドフラグ13が11〃の場合には、実計算機モード又は
一般のVMモードであるから、従来技術で述べたとおり
5CKCのシミュンーション処理が、VMA又はVMC
Pにより行なわれる。
5TCKC命令が発行された場合の処理フローは、第1
4図に示すとおりである。点線で囲まれた部分が、従来
技術において実施している処理である。
V MB (7)発行する5TCKC命令は、S CK
C命令と同様に、命令実行回路14及びマイクロプログ
ラム23により、以下のように実行される。
VMモードフラグ26が111 //、かつ、psw。
非特権モードフラグ13が和〃の場合には、線39及び
線30を継由して、CKClの値が、5TCKC命令で
指定された主記憶装置25の領域に格納される。
VMモードフラグ26が気1〃かっ、pswの非特権モ
ードフラグ13が11〃の場合には、線33を継由して
1割込み回路16が起動され、VMに特権命令例外が報
告される。
VMモードフラグ26が加〃かっ、非特権モードフラグ
13が11″の場合は、VMAにより、VM、のタイマ
保持ブロック内のVMSのクロックコンパレータのタイ
マ値を読み出す。
VMモードフラグが10〃かっ、非特権モードフラグ1
3が“0“の場合には、CKClの値が線39及び線3
0全継由して、5TCKC命令で指定された主記憶装置
25の領域に、格納される。
VMCPICより、走行VMが7M3から、他VMに切
換わる場合には、VMCPは、7M3−1iXCKCを
専有するVMであるかどうか判断し、その場合は、CK
Clの値’iVM3のタイマ保持ブロックに緋39及び
線3C1−継由してセットしその割込みが末だ発生して
いない時は、要求キュー乙に登録する。
7M3がCKCを専有するVMでないときは、特に何も
しない。
CKC割込みは、第15図のフローに従う。
CKClの値がTOD4よりも小さくなった場合には、
割込発生回路16により7M3にCKC割込みの条件が
発生し、マイクロプログラム24により以下の処理が行
なわれる。
VMモードフラグが“1〃であり、かつ、ベンディング
フラグ17が加〃(即ちVMCPによりクロックコンパ
レータ割込みが保留となっていない)ならば、線41経
由で7M3のPSAへ直接割込み。
その他の場合は、+1135’に継歯して、プレフイク
スレジスタ11にVMCPのPSAのアドレスをセット
してVMCPのPSAへ割込む。
VMCPのPSAのアドレスは、走行中VM用に作られ
た主記憶装置25内の制御領域内に存在するようにし、
それを割込回路16のマイクロプログラム24により読
みだして来ても良いし、あるいは、VMCPのPSAア
ドレスを格納する専用のレジスタ?設け、VM起動時、
VMCPが、その値を設定するようにしても良い。後者
の場合、そのレジスタの内容を、割込回路16のマイク
ロプログラム24が読み取ることになるが、第4図にお
ける結線は省略する。
2、第6図は、本発明の第2の実施例のブロック図であ
る。第6図において、27はVMSで使用ず右レジスタ
、18は、走行中のVM専用のレジスタ、19は、27
と18の値の比較回路、20は、CKClに設定された
値が、レジスタ27の値である時は“0〃、レジスタ1
8の値である時はst 1 //となるラッチである。
本実施例においては1%権命令Set Guest C
lockComparator (S G CK C)
及び、5tore GuestClock Compa
rator (S T G CK C) k新設する。
VMCPが、VMを起動するとき、VMモードフラグ2
6* SS 1//にセットする。さらに、PSWの外
部マスク12及び、特定コントロールレジスタの特定ビ
ットに存在するクロックコンパレータ割込みサブマスク
は、それぞれ、仮想PSWの外部マスク及び該当仮想コ
ントロールレジスタの該サブマスクに、それぞれ合わせ
る。さらに、PXRllには、VMのPSAのアドレス
が設定される。
VMモードフラグ26が和”のときは、VMCPの走行
モード又は、実計算機モードを表わす。したがって、そ
のときは、PXR114Cは、VMCPのPSAのアド
レスが設定されている。
V M CP 2>E VM3 K’起動する時、vM
CPが7M3のCKC割込み保留要因を持つ場合には、
VMCPは、ベンディングフラグ17−e XXl /
/にセットする。
さらにVMCPは5GCKC命令を発行し、7M3のタ
イマ保持ブロック内の仮想CKC値γ全走行VMのCK
C専用のレジスタ18にセットする。
5GCKC命令は、MMCP専用の命令であり、命令実
行回路14及びマイクロプログラム23により、第16
図のフローに従い以下のように実行される。
VMモードフラグ26 :@E’0”であり、かつ、非
特慣モードフラグ16が10“(即ち特権モード)であ
る時は線ろO及びi38′ft継由してVラスタ18に
、5GCKCのオペランド(この場合はVM3のタイマ
保持ブロックのクロックコンパレータのタイマ値)全、
セットする。次に、VMCPは、VM3のタイマ割込み
要求が、キュー乙に登録されているかどうかヲ調べ、登
録されている場合には、その要求分キュー6より取りは
ずす。
VMモードフラグが′X1“の時には、VMには使わせ
ないために、特殊命令例外により5GCKC命令を抑止
する。
VMモードフラグがゝゝ0〃で、非特権モードフラグが
1(即ち非特権モード)で5GCKC命令を発行した場
合には、線36を継歯して、割込回路16が起動され、
コノ場合PXR111Cは、VMCPのPSAのアドレ
スがセットされているから、VMCPVc特権命令例外
が報告される。
VMCPld、タイマ割込み要求キュー3の先頭の要求
のタイマ値、すなわち、タイマ割込み要求キュー3に径
録された要求の中で、最小のタイマ値全オペランドとし
て、通常の5CKC命令を発行しVラスタ2フに、その
値tセットする。
比較回路19により、レジスタ27とレジスタ18の値
の比較か行なわれ、小さい方の値’i CKC1にセッ
トしさらにレジスタ18の値がレジスタ27の値よりも
小さいか、等しい場合には、ラッチ20に11〃が設定
され、その他の場合には、ラッチ20には“0〃が設定
される。これにより、ラッチ20の値が”1〃の場合は
、実効的なCKClには、現走行VMOCKC値が設定
されていること全意味している。
5CKC命令が発行された場合のフロー會、第17図に
示す。点線により囲まれた部分が、従来技術に相当する
処理に該当する。
VM3が、タイマ値εで、5CKC命令全発行すると、
5CKC命令は、命令実行回路14反びマイクロプログ
ラム23により、以下のように実行される。
VMモードフラグ26がV″1〃かつ、非!#f権モー
ドフラグ13が和〃(即ち% 確モード)かつベンディ
ングフラグ17が和〃(即ちVMCPによるVM3のC
KC割込み保留がない)の場合には、線60及び線68
全継由してレジスタ18にそのタイマ値がセットされ、
比較回路19により、前述した比較動l乍が行なわれる
VMモードフラグ26がゝゝ1〃かつ非特権モードフラ
グ13がゞゝ0〃かつ、ベンディングフラグ17が11
“(即ちVMCPKよるVM3のCKC割込み保留があ
る)の場合には、線34を継由してプレフイクスンシフ
タ11にVMCPのPSAのアドレス會セットして、さ
らに線66會継油して割込み回路16を起動し、VMC
Pに割り出す。このとき、VMCPのPSAアドレスは
、主記憶装置25の特定領域からマイクロプログラム2
4が線41會経由して読み込んでも良いし、又は、VM
CPのPSAのアドレス全記憶する専用のレジスタを用
意し、VM起動時、VMCPにより設定するようにして
も良い。後者の場合の結線は省略する。
いずれの場合も、VMモードフラグ26はゝX□ tt
にセットされる。
VMモードフラグ26が11〃かつ、非特権モードフラ
グ13が1”場合には、線66を継由して、割込み回路
16を起動しVMK%罹命令例外?報告する。この場合
はpxRllの値は現走行VMのPSA會さしたままで
ある。
VMモードフラグ26が10〃かつ、非特権モードフラ
グ16が10〃であれば、線30及び線67を継由して
、レジスタ27にタイマ値全セットする。
VMモードフラグ26が“0“かつ、非特権モードフラ
グ16がヤ1〃の場合には、特権命令例外割込みケ、線
36経由で、割込回路16を起動し現在のPXRllの
値により発生する。この陽会は、VMモードフラグ26
が10”だから、vMCP又は実計算慨モードで割込み
が発生する。
5TCKCが発行された場合には、第18図に従い以下
の処理全行なう。点綴で囲んだ部分が。
従来処理に相当する部分である。
VMadf S T CK C命令を発行すると、5T
CK−C命令は命令実行回路14及びマイクロプログラ
ム23により以下のように実行される。VMモードフラ
グかモ1〃かつ非特権モードフラグが1“の場合には、
線38及び線30に継由して、レジスタ18の値を指定
された領域に格納する。
VMモードフラグ26が“1〃、かつ非特権モードフラ
グ13 妙x” 1 ttの場合には、練36を継由し
て割込み回路16を起動して7M3に特権命令側外管報
告する。
VMモードフラグ26が〜o〃で、非特権モードフラグ
16が一0〃の場合には1M37及び線3゜會継歯して
、レジスタ27の値全指定された領域に格納する。
VMモードフラグ26が和〃で非特権モードフラグ16
が“1〃の場合には、線36経由で割込回路16全起動
し、特権命令例外割込みを発生させる。この場合PXR
11には、V’MS環境下では。
VMCPのPSAのアトルスがセットされているので、
VMCPに割出されることとなる。
VMCPが、走行V M ’i VM3カら他VMt/
C切換える場合、VMCPは、5TGCKC命令を発行
する。VMCPが、5TGCKC命令を発行すると、5
TGCKC命令は、命令回路14及びマイクロプログラ
ム26により、第19図に従い以下の処理を行なう。
VMモードフラグ26が10〃かつ、非特権モードフラ
グ13が和〃の時、レジスタ18の値が、7M3の最新
のCKCi表わすので、#38及び線ろ0を継由してこ
れft7M3のタイマ保持ブロックに退避する。さらに
、その7M3のクロックコンパレータ割込みが、末だ発
生していない時は、この7M3のCKCの値が、タイマ
値の例えば小さな順となるように、タイマ割込み要求キ
ュー6゛に、キューイングする。
VMモードフラグ26がゝゝ1“の場合には、線36全
起動して割込み回路16を起動し特殊命令例外により、
命令を抑止する。
VMモードフラグが“O”かつ非特権モードフラグ16
が1〃の場合には1,111i!36全継由して割込み
回路16全起動し特権命令例外で割り込む。この場合、
VMS環境下では、PXRllにはVMCPのPSAア
ドレスが設定されているので、VMCPに割込むことと
なる。
TOD4の値がCKClの値よりも大きくなった場合に
は、割込発生回路16によりCKC割込みの条件が発生
し、マイクロプログラム24により第20図に示すよう
に、以下の処理が行なわれる。
VMモードフラグが”0〃、又は、ラッチ20が110
 //の場合には、プレフイクスレジスタ11に線35
を継由してVMCPのPSAアドンスをセットしてVM
CPに割り込む。
VMモードフラグが“1“かつ、ラッチ20が′X1〃
の場合には、VMCP全継由せ継歯M3に直接割りこみ
、さらに、レジスタ27の値とレジスタ18の値が等し
い場合には、さらに緋35を経由してプレフイクスレジ
スタ11にVMCPのPSAのアドレス全設定してVM
CPに割込む。
6、第7図が、本発明による第3の実朔例のブロック図
、第8図及び第ヲ図は、本実施例において新設されたレ
ジスタ28の説明図である。
プレフイクスレジスタ11. ベンティングフラグ17
.7Mモードフラグ26.VM起動時[VMモードフラ
グ26が1の場合のP SW22の外部マスク及びクロ
ックコンパレータサブマスク、以上の設定方法は、実施
例1と同じである。
レジスタ28i、8バイトのレジスタであり、上位52
ビツトの退避クロックコンパレータタイマ値21には、
走行中VMのCKCタイマ値と、走行中以外のVMのC
KCタイマ値の最小値のうち、大きな方の値が設定され
る。NTVピット43は、XX□ ttの時、クロック
コンパレータタイマ値が退避されていない、又は、走行
中VMのCKCタイマ値が退避されている事を示し、1
〃の時、走行中のVMのCKCタイマ値が退避されてい
る事を示すフラグである。
EQUフラグ42は、和〃の時、走行中VMのCKCタ
イマ値と、走行中以外のVMのCKCタイマ値の最小値
が等しくない事を示し、1”の時、両者が等しい事ケ示
すフラグである。
VMCP[より、走行VMがVMlから7M3に切換え
られたとする。この時、VMCPは、7M3のCKCタ
イマ値vM3のタイマ保持ブロックより取り出し、退避
クロックコンパレータタイマ値2IW士ット1−で V
 M9のタイマ保持ブロックが割込み要求キュー31C
登録されているならば要求キュー3から取りはずす。さ
らに、要求キューろの先頭のタイマ割込みの要求のタイ
マ値と、退避クロックコンパレータタイマ値21の比較
を行なう。
そして、退避クロックコンパレータタイマ値21の方が
小さい場合には、キの値會CKClにセットして、要求
キュー3の先頭のタイマ値管、退避クロックコンパレー
タタイマ値21にセットし、NTIC’l〃’ii−セ
ットする。さらにgQUに“0“全セットする。退避ク
ロックコンパレータタイマ値21と要求キュー乙の先頭
のタイマ割込みの要求のタイマ値が等しい場合にはCK
Clに、要求キュー乙の先頭のタイマ割込みの要求のタ
イマ値をセットして、さらに、EQUにゝゝ1“をセッ
トする。退避クロックコンパレータタイマ値21の値の
万が要求キュー3の先頭のタイマ割込みの要求のタイマ
値より大きい時、CKClに、要求キュー6の先頭のタ
イマ割込みの要求のタイマ値にセットして、さらに、E
QUに1“全セットする。
vM3走行中に5cKc@令が発行された場合に点線で
囲まれた部分は、実施例1と同じ処理である。3CKC
命令におけるタイマ値?T+、現在の退避クロツクコン
ハL/−タタイマ値をT2.ノ1−ドクロツクコンパレ
ータ1にセットされている値をT3とする。
VMs カCK C値T、で5cKc命令を発行すると
、その5CKC命令は、実行回路14及びマイクロ例1
の場合と同じであるので、VMモードフラグ26がゝゝ
1“かつ非特権モードフラグが0〃かつ、ベンディング
フラグ17がゝゝ0“(即ちVMCPvcよるVM3の
CKC割込み保留がない)の場合の処理を説明する。
NTV43がSS 1 //である場合は、以下の処理
を行なう。
5CKC命令のタイマ値T、が、退避クロックコ/パレ
ータのタイマ値T2よりも小さい場合には。
線67を継歯してEQU42に蟻0〃を設定して。
ハードCKClには、線39全継由して5CKC命令の
タイマ値T+’にセットする。
5CKC命令のタイマ値T1が、退避クロックコンパレ
ータ21の値T2に等しい場合にij、!37ケ継由し
てEQU42に1全設定して、ノ1−ドCKClには、
純69を継歯して5CKC命令のタイマ値Tt全セット
する。
5CI(C命令のタイマ値Tlが、退避クロックコンパ
レータ21の値T2より大きい場合には%線37?継由
してNTV、!i3にゝゝ0〃全0〃ヲて、さらにEQ
U42にゝゝ0”を設定し、ハードCKClには、緋6
7及び線39を継歯して退避クロックコンパソータタイ
マ値21をセットして、退避クロックコンパソータタイ
マ値21には線37全継由して5CKC命令のタイマ値
T+’tセットする。
NTV41がゝゝ0“の場合は、以下の処理を行なう。
5CKC命令のタイマ値T!か、ハードCKC1にセッ
トされた値よりも大きい場合には、線37を継歯してE
QIJ42に’O//、NTV13に和〃?設定して、
退避クロックコンパレータタイマ値21に、線67を継
歯して5CKC命令のタイマ値T、をセーブする。
5CKC命令のタイマ値T、と、)翫−ドCKClにセ
ットされた値T3が等しい場合には1.m37をh義歯
してEQU42にXX1〃、NTv46ニXX1〃全設
定し、退避クロックコンパレータタイマ値21に、m3
7’*継由して5CKC命令のタイマ値Tlをセットす
る。
5CKC命令のタイマ値TIが、ノ・−ドCKClにセ
ットされた値T3よりも小さい場合には、線37?継由
してEQU42[加”、NTV431Cゝ11 //全
設定し、退避クロックコンパレータタイマ値21に、線
69及び#i3フケ継由継歯)1−ドCKClのタイマ
値分セーブし、5CKC命令のタイマ値T1全N39を
継歯してハードCKC11Cセツトする。
5CKC命令km VMモードフラグがゝゝD〃で発行
した場合、及び、VMモードフラグがSS 1 /7か
つ非特権モードフラグがゝ1〃で発行した場合、及び、
°−−−− 二 −VMモード フラグが1かつI¥j権モードかつベンディングフラグ
17がゝゝ1〃(即ちVMCPにより走行VMのクロッ
クコンパレータ割込みが保留となっている)の場合の5
CKC命令の処理は、そねぞハ、実施例1における処理
と同じである。
5TCKC命令が発行された場合の処理フローは、第2
0図に示すとおりである。点線で囲捷れた部分が、従来
技術に相当する処理である。
VM、 ノ発行する5TCKC命令は、5CKC命令と
同様に、命令実行回路14及びマイクロプログラム23
により、以下のように実行される。
VMモードフラグ26がゝゝ1”、かつ、PSWの非特
権モードフラグ13が00”かつNTV43が11〃の
場合には、線39及び[30ケ継由して。
CKClの値が、5TCKC命令で指定された主記憶装
置25の領域に格納される。
VMモードフラグ26がゝゝ1〃かつ、pswの非将権
モードフラグ13が′X1〃の場合には、線33を継歯
して1割込み回路16が起動され、VMに特権命令例外
が報告される。
VMモードフラグ26が11〃かつ、pswの非特権モ
ードフラグ13が和〃かつNTV13が%011の場合
には、退避クロツクコンノ(レータ21の値が、線37
及び線30會継由して、5TCKC命令で指定された主
記憶装置25の領域に格納される。
VMモードフラグ26が和〃で、非特権モードフラグ1
3が1”、NTVフラグ43か% I nの場合には、
CKClの値管線69及び線30を継由して、5TCK
C命令で指定された主記憶装置25の領域に格納される
VMモードフラグ26が10〃で、非特権モードフラグ
13がゝゝO〃、NTVフラグ43が11 Q l/の
場合には、退避クロックコンパレータ21の値1k。
繰67及び@30を継由して、5TCKC命令で指定さ
れた主記憶装置25の領域に格納される。
VMモードフラグ26が10〃、非特罹モードフラグ1
3がゝゝ1〃の場合は、VMAにより、vMlのタイマ
保持ブロック内の7M3のクロツクコンノ(し−夕のタ
イマ値管読み出す。
VMCPICより、走行VMが7M3から、他VMに切
換わる場合には、NTVフラグ43が10〃であるなら
ば、退避クロックコンパレータタイマ値21 ? VM
sのタイマ保持ブロックに練37及び線60ケ継由して
セットし、NTVフラグ43がSt 1 ttの場合に
は、CKClの値i vMlのタイマ保持ブロックに線
69及びa30に継由してセットする。
さらに、その割込みが末だ発生していない時は、vMl
のタイマ保持ブロック管要求キュー乙に登録する。
CKC割込みの処理は、第26図のフローに従う。
CKClの値がTOD4よりも小さくなった場合には1
割込発生回路16により、CKC割込みの条件力発生し
、マイクロプログラム24により以下の処理が行なわれ
る。
VMモードフラグ26が“0〃又は、NT’Vフラグ4
3が0〃の場合には、線65を継由してプレフイクスV
シフタ11にVMCPのPSAのアトVス全セットして
、VMCPOPSAへ割込む。
VMモードフラグ26が“1〃かつ、NTVフラグ46
が11〃の場合には、VMCPを継由せずに線41継由
でVMsのPSAへ直接割込み。
さらに、EQUフラグ42がtt 1 ttの場合には
、線35〃m由してブレフィクスレジスタ11にVMC
PCIPS’AのアトV7.f設定して、vMCPのP
S’AVc割り込む。
〔発明の効果〕
以上説明したように本発明は、走行中VM専用のクロッ
クコンパレータ機構を設けるものであり、これにより、
以下のような効果がある。
仮想計算機上のオペレーティング・システムは時間に依
存する事象ヲスケジューリングするためにクロックコン
バレータケ使用しており、そのオーダーはたとえば数1
0m5ecであり、頻度が高い。
本発明によればこのようにキュー管検索して、タイマ割
込みの要求が既に登録されているかどうかを調べる必要
がなく、スケジューリングのための去ダ時間が大幅に短
縮される。
さらに割込みの直接実行も可能となる。
従って、VMCPのオーバヘッド管削減できる効果が大
である。
【図面の簡単な説明】
第1図は、従来の計算機システムを表わすブロック図、
第2図は、従来の仮想計算機システム?表わすブロック
図、第6図は、クロックコンパレータの従来処理を示す
ブロック図、第4図Fi1本発明の実施例1及び実施例
乙の説明図、第5図は、本発明の実施例2の説明図、第
6図は、従来より2.3ヲ説明するためのフローチャー
トである。 1:従来よりあるCKCl2;仮想計算機VM、による
タイマ値αのタイマ保持ブロック、3:クロックコンパ
レータ割込み要求キュー、4:TOD。 5 : VMCt”ステム常駐領域、6:vMlのPS
A工177.7 : VM2(DP SA!リア、8 
:、 vMlのPSAエリア、 9 : VM4のPS
Aエリア、10:VMCPのPSAエリア、11:プレ
フイクスレジスタ、12:PSWのEビット、13:P
SWのPビット、14:命令実行回路、15:比較回路
、16:割込み回路、17:ペンディングビット、18
:新設レジスタ、19:新設比較回路。 20:ランチ、21:退避クロックコンパレータタイマ
値、22:PSW、23:マイクロプログラム、24:
マイクロプログラム、25:主記憶装置、26:VMモ
ードフラグ、27:新設レジスタ、28:新設レジスタ
、40:命令レジスタ。 42:EQUフラグ、 43 :NTV7ラグ。 第 3 図 $ 4 図 第 6 図 第 7 図 晃 8 旧 第 q 回 第 to 図 第 ll 層 某lz 回 $15 回 第 7L 図 第 18 圀 第 /7 図

Claims (1)

  1. 【特許請求の範囲】 1、一定時間間隔で加減算されるタイマ(TOD)と該
    TODの値に対し、第1の条件を満たす時、割込み条件
    を発生させる値を有するタイマ(CKC)ヲ持つ実計算
    機、少くも1台のオペレーティングシステム(O8)’
    (im管理する制御プログラム(VMCP ) を持つ
    仮想計算機システム(VMS)において、走行中のO8
    に該CKC’i専有させ、該CKCの値が該TODO値
    に対し第2の条件を満たすとき割込条件を発生させる事
    を特徴とする、仮想計算機システムタイマ制御方式。 2、該割込み条件は、VMCPk継由せず継歯走行中の
    OSに直接割込むものである事ヲ特徴とする特許請求の
    範囲第1項記載の仮想計算機システムタイマ制御方式。 3、VMSにおいて、走行中のOSの仮想CKC全設定
    するための/シフタと、該VMSのVMCPが、走行中
    以外の各O8の仮想CKCの内の最小値または最大値を
    設定するためのレジスタと、両者の値を比較して、所定
    の大小関係を満す方のレジスタの値1cKCに設定する
    事により、該CKCに設定されたレジスタの値がTOD
    O値に対し第2の条件全溝たすとき割込み条件を発生さ
    せる事を特徴とする仮想計算機システムタイマ制御方式
    。 4、特許請求範囲第6項における割込み条件は。 上記cKcKB定されたレジスタの値が走行中のO8の
    仮想CKCi設定するためのレジスタの値であれば= 
    VMCP’ii−継歯せず走行中のOSに直接割込まれ
    、選択されたレジスタの値がVMCPが走行中以外の各
    OSの仮想CKCO内の最小値または、最大値を設定す
    るためのレジスタの値であれば、VMCPK割込まれる
    事を1#徴とする仮想計算機システAKおけるタイマ制
    御方式。 5、%許請求範囲第3項における割込みは、走行中のO
    8の仮想CKC1H設定するためのレジスタの値と、V
    MCPが走行中以外の各O8の仮想CKCの内の最小値
    または、最大値全設定するためのレジスタの値が等しい
    場合には、まずVMCPを継由せずに、走行中のO8に
    直接割込まれ、しかる後に、VMCPに割込まれる事を
    特徴とする仮想計算機システムタイマ制御方式。 6、VMSにおいて、走行中のO8の仮想CKC又はV
    MCPが走行中以外の各OSの仮想CKCの内の最小値
    または最大値を設定するためのレジスタと、該レジスタ
    とCKCのどちらに走行中のO8の仮想CKCが設定さ
    れているかを示す識別機構を設け、走行中のO8の仮想
    CKCと、走行中以外の各OSの仮想CKCの最小値ま
    たは、最大値全比較して、所定の大小関係を満たす方を
    選択して該CKCに設定し、また他方を該レジスタに設
    定し該CKCがTODに対し第2の条件を満たす時、割
    込み条件を発生させる事を特徴とする仮想計算機システ
    ムタイマ制御方式。 2、特許梢求範囲第6項における割込みは、CK Cに
    設定された値が走行中以外のO8の仮想CKCO内の最
    小値または最大値であればVM CPに割込まれ、走行
    中のO8の仮想CKCであれば。 VMCPを継由せずに走行中のOSに直接割込まれる事
    を特徴とする仮想計算機システムタイマ制御方式。 8、特許請求の範囲第6項における割込みは、走行中の
    OSの仮想CKCの値と、走行中以外の各O8の仮想C
    KCの内の最小値または最大値が等しい場合には、まず
    VMCP全継由せ継歯走行中のO8に直接割込まれ、し
    かる後に、VMCPに割込まれる事全特徴とする仮想計
    算機システムタイマ制御方式。
JP58246287A 1983-12-28 1983-12-28 仮想計算機システム Expired - Lifetime JP2581659B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58246287A JP2581659B2 (ja) 1983-12-28 1983-12-28 仮想計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58246287A JP2581659B2 (ja) 1983-12-28 1983-12-28 仮想計算機システム

Publications (2)

Publication Number Publication Date
JPS60140437A true JPS60140437A (ja) 1985-07-25
JP2581659B2 JP2581659B2 (ja) 1997-02-12

Family

ID=17146298

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58246287A Expired - Lifetime JP2581659B2 (ja) 1983-12-28 1983-12-28 仮想計算機システム

Country Status (1)

Country Link
JP (1) JP2581659B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62107341A (ja) * 1985-11-06 1987-05-18 Fujitsu Ltd クロツク制御方式

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54107647A (en) * 1978-02-13 1979-08-23 Hitachi Ltd Data processor
JPS5557953A (en) * 1978-10-24 1980-04-30 Fujitsu Ltd Dispatching control system of virtual computer system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54107647A (en) * 1978-02-13 1979-08-23 Hitachi Ltd Data processor
JPS5557953A (en) * 1978-10-24 1980-04-30 Fujitsu Ltd Dispatching control system of virtual computer system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62107341A (ja) * 1985-11-06 1987-05-18 Fujitsu Ltd クロツク制御方式
JPH0520774B2 (ja) * 1985-11-06 1993-03-22 Fujitsu Ltd

Also Published As

Publication number Publication date
JP2581659B2 (ja) 1997-02-12

Similar Documents

Publication Publication Date Title
EP0093267B1 (en) Method for switching the control of central processing units in a data processing system, and apparatus for initiating the switching of cpu control
EP0464615B1 (en) Microcomputer equipped with DMA controller
US7689809B2 (en) Transparent return to parallel mode by rampoline instruction subsequent to interrupt processing to accommodate slave processor not supported by operating system
JPH0242569A (ja) ベクター処理システムに用いる文脈スイッチング方法及び装置
US7856635B2 (en) Dynamic address windowing on a PCI bus
JPS61107434A (ja) デ−タ処理装置
JPS62243058A (ja) マルチプロセツサシステムの割込制御方法
JPH0212553A (ja) 仮想計算機システム
JP3093673B2 (ja) リネーム・レジスタを割り付ける方法及びプロセッサ
EP0290942B1 (en) Guest machine execution control system for virtual machine system
JPS63307535A (ja) パイプライン制御回路
JPS60140437A (ja) 仮想計算機システムタイマ制御方式
JPS6329868A (ja) Dmaコントロ−ラ
JPS61184643A (ja) 仮想計算機の起動制御方式
JPH0440552A (ja) 時刻機構制御方法
JPH0250259A (ja) ベクタープロセッサによって非同期メモリ管理例外を取り扱う方法及び装置
JPH0567973B2 (ja)
JPS61208133A (ja) 仮想計算機システムにおける状態レジスタ制御装置
JPS62221041A (ja) 仮想計算機システムにおけるデイスパツチ制御装置
JP2864496B2 (ja) 多重処理計算機
JPS62219058A (ja) 共有メモリの排他制御方式
JPS6069745A (ja) デ−タアドレツシング方式
JPS62151942A (ja) タスク切換え方式
JPS61204743A (ja) マイクロ・プロセツサの割込み制御方式
JPH0221613B2 (ja)

Legal Events

Date Code Title Description
EXPY Cancellation because of completion of term