JPH0348938A - 仮想計算機方式 - Google Patents

仮想計算機方式

Info

Publication number
JPH0348938A
JPH0348938A JP18546289A JP18546289A JPH0348938A JP H0348938 A JPH0348938 A JP H0348938A JP 18546289 A JP18546289 A JP 18546289A JP 18546289 A JP18546289 A JP 18546289A JP H0348938 A JPH0348938 A JP H0348938A
Authority
JP
Japan
Prior art keywords
virtual machine
virtual
computer
queue
real
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
JP18546289A
Other languages
English (en)
Inventor
Yasushi Yokoyama
康 横山
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP18546289A priority Critical patent/JPH0348938A/ja
Publication of JPH0348938A publication Critical patent/JPH0348938A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は仮想計算機方式に関し、特に実プロセツサ上で
複数の仮想計算機を実現する仮想計算機方式に関する。
(従来の技術〕 近年、ディジタル電子計算機の応用分野が飛躍的拡大を
遂げるに伴い、大規模な記憶空間が必要となり、実際の
主記憶装置の空間量を意識せずに記憶空間を拡大できる
仮想記憶方式が利用され、さらにこの仮想記憶方式の延
長として、一つの実計算機上で複数の計算機を実現する
仮想計算機方式が実用化されるに至った。
仮想計算機方式では、主記憶や入出力装置は勿論、中央
処理装置も含む全てのハードウェア資源を複数の計算機
間で恰も共有しているように、複数のオペレーティング
システム(以下に、O8と称す)が一つの実計算機ハー
ドウェア(ペア・マシン=BARE MACHINE、
以下に、BMと称す)の上で見掛は上同時に走行するこ
とが可能でアシ、稼働中のシステムのサービスを停止す
ることなく、新しく開発されるシステムのデバグやテス
トの実施、或いはハードウェア資源の使用効率を高めて
実ハードウェアの実質コストの低下を可能にするなどの
効果があることから脚光を浴びるようになった・ 第4図は従来の仮想計算機方式によるデータ処理装置の
一例を示す制御構造図である。
従来の仮想計算機方式によるデータ処理装置の制御構造
は、第4図のようになっている。すなわち、BM上で動
作するBM−O8のもとに一つの7Mプロセスがあり、
各仮想計算機(パーチャル・マシン=N’IRTLAL
 MkCHINE、 以下K、VMと称す)のソフトウ
ェア・シミュレーション処理を行う。ソフトウェア・シ
ミュレーシ舊ン処理とは、VM上で直接実行すると不都
合の起きる命令(例えば、入出力命令、システム制御命
令、構成制御命令等)の実行をソフトウェアでシミュレ
ーションするものである。また、各VM毎に一つのvp
プロセスがあシ、EXECVP命令によりVMを実行す
る。即ち、VMは、BM上の一つの命令であるEXEC
VP命令の中に閉じ込められている。
そして、これらの7MプロセスとvPプロセスとは、他
のユーザジョブであるBM  JOBと同様にBM上の
B M−OSのもとで動作する一つのジョブとなってい
る。
〔発明が解決しようとする課題〕
上述した従来の仮想計算機方式は、各VMのソフトウェ
ア・シミュレーション処理に際して生じるオーバヘッド
ロスが太きいという欠点を有している。
また、従来の仮想計算機方式は、新しいアーキテクチャ
のVMの実現を追加するたびに、それに合わせたソフト
ウェア・シミュレーシ1ン処理の変更や追加を行わねば
ならず、稼働中のシステムのサービスを停止することな
く、新しく開発されるシステムのデバッグやテストを実
施するというニーズに応じることが困難であるという欠
点を有している。
〔課題を解決するための手段〕
本発明の仮想計算機方式は、実計算機ハードウェア上で
複数の仮想計算機を実現する仮想計算機方式において、 該仮想計算機を識別する仮想計算機番号と、該仮想計算
機に実行可能なプロセスが存在しないアイドル状態であ
ることを表示する仮想計算機状態語と、 該仮想計算機を活性化する第一の手段と、該仮想計算機
の前記仮想計算機番号および前記仮想計算機状態語並び
に仮想計算機制御ブロックの先頭番地を含む実行可能な
仮想計算機エントリーと、 前記第一の手段により活性化された複数の実行可能な前
記仮想計算機エン) IJ−を前記実計算機ハードウェ
ア上で実行が許される順序に繋げておく待ち行列と、 一定時間間隔で割り込みを発生する計時手段と、前記計
時手段からの割少込みにより、前記実計算機ハードウェ
ア上で実行中の該仮想計算機の実行を中断して、この該
仮想計算機の前記仮想計算機エンドvを前記待ち行列の
最後尾に繋ぎ、更に前記待ち行列の先頭から実行可能な
前記仮想計算機エン) IJ−の前記仮想計算機状態語
を検査してアイドル状態でない前記仮想計算機エントリ
ーを発見して前記待ち行列から外し、この前記仮想計算
機エントリーの核仮想計算機を前記実計算機ハードウェ
ア上で実行に移す第二の手段と、前記実計算機ハードウ
ェア上で実行中の該仮想計算機がアイドル状態に陥った
ときに、直ちにこの該仮想計算機の前記仮想計算機エン
) IJを前記待ち行列の最後尾に繋ぎ、東にこの前記
仮想計算機エントリーの前記仮想計算機状態語をアイド
ル状態にするとともに前記計時手段の割)込み時間間隔
の起点を修正し、更に前記待ち行列の先頭から実行可能
な前記仮想計算機エントリーの前記仮想計算機状態語を
検査してアイドル状態でない前記仮想計算機エントリー
を発見して前記待ち行列から外し、この前記仮想計算機
エン) IJ−の該仮想計算機を前記実計算機ハードウ
ェア上で実行に移す第三の手段と、 を有して構成されている。
〔実施例〕
次に本発明の実施例について図面を参照して説明する。
第1図は本発明の仮想計算機方式の一実施例を示すブロ
ック図である。また、第2図(イ)、(ロ)は本実施例
のVMディスパッチ機構の動作の一例を示すフローチャ
ートである。
第1図に示すように、本実施例は、主記憶(メインメモ
リ)l、VMディスバッチ機構2、VMディスパッチタ
イマ3を有している。
そして、主記憶IVCは、仮想計算機の活性化命令(図
示せず)により活性化された仮想計算機の仮想計算機番
号vM#と仮想計算機制御ブロックの先頭番地VMCB
Pと次へのポインタNLと仮想計算機状態語VMSTと
を含む待ち行列の仮想計算機エントリ102,103,
104、及びこれらの待ち行列の先頭を指示する先頭指
示ポインタ101、これらの待ち行列にその先頭番地を
有する各仮想計算機の仮想計算機制御ブロック112,
113゜114が存在する。
そこで、第2図(イ)、(ロ)に示すように、実計算機
上で仮想計算機の活性化命令(図示せず)が発行される
と、先ずVMディスパッチ機構2が起動されて実計算機
上で何れかの仮想計算機が実行されているかどうかが検
査される。(ステップ81゜82.89) 実計算機上で何れの仮想計算機も実行されていなければ
、該当の仮想計算機は直ちに実計算機上で実行に移され
る。(ステップ812)−万、何れかの仮想計算機が実
行されていれば、待ち行列の最後尾に繋ぐだけで、実計
算機上で実行中の仮想計算機はそのまま実行状態にある
(ステップ510) このようにして、幾つかの活性化された仮想計算機は、
実行可能な仮想計算機エントリーの形で実計算機上で実
行が許される順序KVM待ち行列に繋げられる。
第1図に実行可能な仮想計算機エン) IJ−をVM待
ち行列に繋げた様子を示している。実行可能な仮想計算
機エントリーKVi、仮想計算機を識別する仮想計算機
番号vM#と、仮想計算機に実行可能なプロセスが存在
しないアイドル状態であることを表示する仮想計算機状
態語VMSTと、仮想計算機制御ブロックの先頭番地V
MCBPとを含んでいる。
この状態で、各仮想計算機が均等に実計算機ハードウェ
ア上で実行に移されるために、VMディスパッチタイマ
3は、一定時間間隔で割り込みを発生し、この割り込み
によってVMディスパッチ機構2は以下の操作を行う。
(ステップ83)■ 実計算機上で実行中の仮想計算機
の実行を中断する。(ステップs4) ■ その仮想計算機をVM待ち行列の最後尾に繋ぐ。(
ステップ8s) ■ VM待ち行列の先頭から実行可能な仮想計算機エン
) IJ−の仮想計算機状態語を検査してアイドル状態
でない仮想計算機エントリーを発見する。(ステップ8
6,87,811)■ 発見した仮想計算機エントリー
をVM待ち行列から外し、対応する仮想計算機を実計算
機ハードウェア上で実行に移す。(ステップ88.51
2) 一方、現在実計算機上で実行中の仮想計算機が実行可能
なプロセスが存在しないアイドル状態に陥ったときに、
システムとしてのスループットを向上させるためには、
VMディスバッチタイマ3の割り込み以前であっても直
ちに実計算機ノ・−ドウエアを他の仮想計算機に明は渡
すのが良い。このような場合に、vMディスバッチ機構
2は以下の操作を行う。(ステップS1) ■ 実行可能なプロセスが存在しない状態(アイドル状
態)K陥った仮想計算機を実行可能な仮想計算機エン)
 IJ−によってVM待ち行列の最後尾に繋ぐ。(ステ
ップ513)■ その仮想計算機の仮想計算機エン) 
IJ−にある仮想計算機状態語VMSTをアイドル状態
にする。(ステップ514) ■ 同時KVMディスパッチタイマ30割り込み時間間
隔の起点を修正する。(ステップ515) ■ VM待ち行列の先頭から実行可能な仮想計算機エン
トリーの仮想計算機状態語を検査してアイドル状態でな
いエントリーを発見する。
(ステップ816,817,820) ■ 発見した仮想計算機エントリーをVM待ち行列から
外し、対応する仮想計算機を実計算機ハードウェア上で
実行に移す。(ステップ818.819) 次に1第3図は本実施例を適用したデータ処理装置の一
例を示す制御構造図である。第3図の制御構造は、第4
図に示す従来の制御構造と比較すると、実計算機ハード
ウェアBMの上に各vPプロセスがじかに乗っており、
実計算機全体を制御するBM−OSが存在していない。
これは、以上説明した制御方法を採ることにより、各仮
想計算機が実計算機を時分割で完全に占有することが出
来るからであ夛、この目的のために、主記憶空間や外部
記憶装置、入出力装置等は、各仮想計算機ごとに予め排
他的に割9付けちれている。
〔発明の効果〕
以上説明したように、本発明の仮想計算機方式は、各仮
想計算機が動作する際に、7Mプロセスがソフトウェア
・シミュレーション処理を行う必要がなく、更に実計算
機上でアイドル状態に陥った仮想計算機により、実計算
機が占領されることがなくなるので、オーバヘッドロス
が生じないという効果を有している。
更に1本発明の仮想計算機方式は、新しいアーキテクチ
ャのVMの実現を追加するたびに、それに合わせたソフ
トウェア・シミュレーション処理の変更や追加を行う必
要も無くなるので、稼働中のシステムのサービスを停止
することなく、新しく開発されるシステムのデバグやテ
ストを実施するというニーズに応じることが容易になる
という効果を有している。
【図面の簡単な説明】
第1図は本発明の仮想計算機方式の一実施例を示すブロ
ック図、第2図(イ)、(ロ)は本実施例のVMディス
パッチ機構の動作の一例を示すフローチャート、第3図
は本実施例を適用したデータ処理装置の一例を示す制御
構造図、第4図は従来の仮想計算機方式によるデータ処
理装置の一例を示す制御構造図である。 1・・・主記憶、2・・・VMディスパッチ機構、3・
・・VMディスバッチタイマ、101・・・先頭指示ボ
イ/り、102,103,104・・・仮想計算機エン
ド1ハ112.113,114・・・仮想計算機制御ブ
ロック。

Claims (1)

  1. 【特許請求の範囲】 実計算機ハードウェア上で複数の仮想計算機を実現する
    仮想計算機方式において、 該仮想計算機を識別する仮想計算機番号と、該仮想計算
    機に実行可能なプロセスが存在しないアイドル状態であ
    ることを表示する仮想計算機状態語と、 該仮想計算機を活性化する第一の手段と、 該仮想計算機の前記仮想計算機番号および前記仮想計算
    機状態語並びに仮想計算機制御ブロックの先頭番地を含
    む実行可能な仮想計算機エントリーと、 前記第一の手段により活性化された複数の実行可能な前
    記仮想計算機エントリーを前記実計算機ハードウェア上
    で実行が許される順序に繋げておく待ち行列と、 一定時間間隔で割り込みを発生する計時手段と、前記時
    計手段からの割り込みにより、前記実計算機ハードウェ
    ア上で実行中の該仮想計算機の実行を中断して、この該
    仮想計算機の前記仮想計算機エントリを前記待ち行列の
    最後尾に繋ぎ、更に前記待ち行列の先頭から実行可能な
    前記仮想計算機エントリーの前記仮想計算機状態語を検
    査してアイドル状態でない前記仮想計算機エントリーを
    発見して前記待ち行列から外し、この前記仮想計算機エ
    ントリーの該仮想計算機を前記実計算機ハードウェア上
    で実行に移す第二の手段と、 前記実計算機ハードウェア上で実行中の該仮想計算機が
    アイドル状態に陥ったときに、直ちにこの該仮想計算機
    の前記仮想計算機エントリを前記持ち行列の最後尾に繋
    ぎ、更にこの前記仮想計算機エントリーの前記仮想計算
    機状態語をアイドル状態にするとともに前記計時手段の
    割り込み時間間隔の起点を修正し、更に前記待ち行列の
    先頭から実行可能な前記仮想計算機エントリーの前記仮
    想計算機状態語を検査してアイドル状態でない前記仮想
    計算機エントリーを発見して前記待ち行列から外し、こ
    の前記仮想計算機エントリーの該仮想計算機を前記実計
    算機ハードウェア上で実行に移す第三の手段と、 を有することを特徴とする仮想計算機方式。
JP18546289A 1989-07-17 1989-07-17 仮想計算機方式 Pending JPH0348938A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP18546289A JPH0348938A (ja) 1989-07-17 1989-07-17 仮想計算機方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18546289A JPH0348938A (ja) 1989-07-17 1989-07-17 仮想計算機方式

Publications (1)

Publication Number Publication Date
JPH0348938A true JPH0348938A (ja) 1991-03-01

Family

ID=16171212

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18546289A Pending JPH0348938A (ja) 1989-07-17 1989-07-17 仮想計算機方式

Country Status (1)

Country Link
JP (1) JPH0348938A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007520825A (ja) * 2004-02-04 2007-07-26 インテル・コーポレーション 待機状態にあるプロセッサ実行リソースの共有

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007520825A (ja) * 2004-02-04 2007-07-26 インテル・コーポレーション 待機状態にあるプロセッサ実行リソースの共有
JP2012104140A (ja) * 2004-02-04 2012-05-31 Intel Corp 待機状態にあるプロセッサ実行リソースの共有
US8984517B2 (en) 2004-02-04 2015-03-17 Intel Corporation Sharing idled processor execution resources

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
US6892261B2 (en) Multiple operating system control method
JPH0695898A (ja) 仮想計算機の制御方法および仮想計算機システム
JP5673672B2 (ja) マルチコアプロセッサシステム、制御プログラム、および制御方法
KR970016979A (ko) 다중 처리 시스템에서 타스크의 큐잉 시스템 및 방법
US7111200B2 (en) Apparatus and method for debugging a logical partition
JPH06242987A (ja) コンピュータ装置においてマイクロプロセッサの正常な処理の引継ぎをホストプロセッサが実行する方法および装置
CN109766168B (zh) 任务调度方法和装置、存储介质以及计算设备
EP0290942A2 (en) Guest machine execution control system for virtual machine system
JP3644042B2 (ja) マルチタスク処理装置
JPH10283304A (ja) 割り込み要求を処理する方法及びシステム
JPH0348938A (ja) 仮想計算機方式
JPH10260850A (ja) 仮想計算機システム
JPH11184828A (ja) マルチプロセッサシステムのテスト方式
JPH0375832A (ja) 仮想計算機制御方式
JPH09282196A (ja) 複合論理プロセッサシステムのプログラム走行制御方式
JPH0433130A (ja) マルチチップ構成方法
JP2581327B2 (ja) 仮想計算機の入出力割込み処理方式
JP2003005987A (ja) エミュレーション装置
JPS5958553A (ja) 統合型仮想計算機のディスパッチ制御方式
US20030225817A1 (en) Concurrent execution of kernel work and non-kernel work in operating systems with single-threaded kernel
JPH1153327A (ja) マルチプロセッサシステム
JP3022398B2 (ja) 仮想計算機方式
JPH07141210A (ja) 仮想計算機処理装置
JP2022055002A (ja) 情報処理装置、情報処理方法および情報処理プログラム