JPH10312298A - Virtual computer system - Google Patents

Virtual computer system

Info

Publication number
JPH10312298A
JPH10312298A JP13603697A JP13603697A JPH10312298A JP H10312298 A JPH10312298 A JP H10312298A JP 13603697 A JP13603697 A JP 13603697A JP 13603697 A JP13603697 A JP 13603697A JP H10312298 A JPH10312298 A JP H10312298A
Authority
JP
Japan
Prior art keywords
idle
activation event
semaphore
state
control
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
JP13603697A
Other languages
Japanese (ja)
Other versions
JP3022398B2 (en
Inventor
Kenichi Suzuki
健一 鈴木
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 JP9136036A priority Critical patent/JP3022398B2/en
Publication of JPH10312298A publication Critical patent/JPH10312298A/en
Application granted granted Critical
Publication of JP3022398B2 publication Critical patent/JP3022398B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)

Abstract

PROBLEM TO BE SOLVED: To speed up the activation processing of idle VP by reporting an event to an idle semaphore which a VP activation event report cell corresponding to the VM shows if the VM in an idle state in the same VM exists when a process which can be executed in the VM(virtual computer) is newly generated. SOLUTION: The idle semaphore by which the VP(virtual processor) process 12 corresponding to the virtual processor becomes a waiting state when the virtual processor becomes in the idle state is provided. The address of the idle semaphore is provided as the VP activation event report cell 7. A VP activation event report means 11 reports the activation event of the virtual processor to the idle semaphore 4 which the VP activation event report cell 7 corresponding to the virtual processor shows with a control micro program 10 if the virtual processor in the idle state in the same VM exists when the process which can be executed is newly generated in the VM.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は仮想計算機のシステ
ムに関し、特に仮想計算機上の仮想プロセッサの活性化
を促す事象の報告の方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a virtual machine system, and more particularly, to a method for reporting an event prompting activation of a virtual processor on a virtual machine.

【0002】[0002]

【従来の技術】仮想計算機システムは、1つの計算機上
で複数の計算機を実現することを可能にするものであ
る。これは、仮想計算機(Virtual Machi
ne、以下「VM」という)上の仮想プロセッサ(以下
「VP」)を、時分割で実計算機(Bare Mach
ine、以下「BM」という)上の実プロセッサ(以下
「BP」という)に割り当てることや、BM上の諸資源
を時分割的、空間分割的にVMに割り当てることで、1
台の実計算機上で複数の計算機を見かけ上同時に動作可
能にしている。
2. Description of the Related Art A virtual computer system makes it possible to realize a plurality of computers on one computer. This is a virtual machine (Virtual Machine)
ne, hereinafter referred to as “VM”), and a virtual processor (hereinafter referred to as “VP”) is time-shared by a real computer (Bare Mach).
Ine, hereinafter referred to as “BM”), by allocating to a real processor (hereinafter, referred to as “BP”), and by allocating various resources on the BM to the VM in a time-sharing and space-sharing manner,
A plurality of computers can be apparently operated simultaneously on one real computer.

【0003】またBM上のBPがマルチプロセッサ構成
であることはもちろん、VM上のVPが、BPよりもプ
ロセッサ台数が多いマルチプロセッサ構成とすることも
可能である。
In addition to the BP on the BM having a multiprocessor configuration, the VP on the VM may have a multiprocessor configuration having a larger number of processors than the BP.

【0004】図5に示したブロック図を参照して説明す
ると、オペレーティングシステムのファームウェア化が
進んだ仮想計算機システムのプロセッサ資源の割り当て
は、VPをBM上のプロセスであるVPプロセス12に
対応させ、このVPプロセス12が時分割で実プロセッ
サ9を得ることにより実現されている。
Referring to the block diagram shown in FIG. 5, the assignment of processor resources of a virtual machine system in which the operating system has been turned into firmware is performed by associating a VP with a VP process 12, which is a process on a BM. This VP process 12 is realized by obtaining the real processor 9 by time sharing.

【0005】このVPプロセス12は、普通のプロセス
14と同様に、プロセス固有の優先順位でディスパッチ
ングされる。
[0005] The VP process 12 is dispatched in a priority order unique to the process, similarly to the ordinary process 14.

【0006】次に、BPに割り当てられたVPプロセス
が、VM上のプロセスを実行する方法を、図7に示した
フローチャートを参照して説明していく。
Next, a method of executing a process on a VM by a VP process assigned to a BP will be described with reference to a flowchart shown in FIG.

【0007】BPに割り当てられたVPプロセス12で
は、VP起動命令(以下「EXECVP命令」という)
(ステップS41)を実行することで、EXECVP命
令開始処理(ステップS45)で、BMからVMの切り
替えが行われ、VM内のプロセスの取り込みが行われた
後、VM内のプロセスの実行(ステップS80)、すな
わちVM上でのSW命令の実行が行われる。
In the VP process 12 assigned to the BP, a VP activation command (hereinafter referred to as an "EXECVP command")
By executing (Step S41), the VP is switched from the BM to the VM in the EXECVP instruction start process (Step S45), the process in the VM is fetched, and the process in the VM is executed (Step S80). ), That is, the execution of the SW instruction on the VM is performed.

【0008】このように、VPプロセスが時分割でBP
を得て、VPプロセス内でEXECVP命令を実行する
ことで、VM上のプロセスを動作させ、見かけ上複数の
計算機が動作させることが可能になっている。
As described above, the VP process is time-divisionally
Then, by executing the EXECVP instruction in the VP process, the process on the VM is operated, and apparently a plurality of computers can be operated.

【0009】このような仮想計算機システムにおいて、
あるVM上のVPで実行可能なプロセスが存在しなくな
った場合(ステップS81)、VPは遊休状態(以下
「アイドル状態」という)となるため、BPを有効利用
するため、EXECVP命令を終了し(ステップS5
0)、同一VM内で新たに実行可能なプロセスが現れる
まで、該VPに対応するVPプロセス12を、BM上の
アイドルセマフォ4(図5参照)にて、実行待機状態
(以下「ウェイト状態」という)として(ステップS6
1)、VPが再び活性化されるのを待ち合わせる。
In such a virtual computer system,
When there is no longer any process that can be executed by the VP on a certain VM (step S81), the VP enters an idle state (hereinafter referred to as an “idle state”), and the EXECVP instruction is terminated to effectively use the BP ( Step S5
0), until a new executable process appears in the same VM, the VP process 12 corresponding to the VP is placed in the idle semaphore 4 (see FIG. 5) on the BM in an execution standby state (hereinafter referred to as a “wait state”). (Step S6
1) Wait for the VP to be activated again.

【0010】その後、VM上で新たに実行可能なプロセ
スが生成された場合について、図6のフローチャートを
参照して説明すると、同一VM内にアイドル状態のVP
が存在する場合(ステップS47)は、該VPを活性化
する必要がある。VPの活性化とは、VPプロセスをウ
ェイト状態から実行可能状態(以下「レディ状態」とい
う)にして、再び該プロセスが時分割でBPに割り当て
可能な状態にすることをいう。
Subsequently, a case where a newly executable process is generated on the VM will be described with reference to a flowchart of FIG.
Is present (step S47), the VP needs to be activated. Activation of a VP means that the VP process is changed from a wait state to an executable state (hereinafter, referred to as a “ready state”), and the process is again allocated to a BP in a time sharing manner.

【0011】このVPの活性化は、BPの複数のVPに
割り当てる資源管理を一元管理する目的で、BM上で動
作するVMモニタ3と称するソフトウェアプログラムが
介在している。
The activation of the VP involves a software program called a VM monitor 3 operating on the BM for the purpose of centrally managing resources allocated to a plurality of VPs of the BP.

【0012】このためVM制御マイクロプログラム10
は、VPプロセス12上で実行しているEXECVP命
令の終了(ステップS50)を行い、VMモニタ3に制
御を移す。
Therefore, the VM control microprogram 10
Terminates the EXECVP command executed on the VP process 12 (step S50), and transfers control to the VM monitor 3.

【0013】VMモニタ3はEXECVP命令の終了コ
ードによりVPの活性化の必要を知り、アイドルセマフ
ォ4に対してVP活性化の事象を報告する(ステップS
44)ことで、アイドルVPの活性化を行う。
The VM monitor 3 knows that the VP needs to be activated from the end code of the EXECVP instruction, and reports the VP activation event to the idle semaphore 4 (step S).
44) Then, the idle VP is activated.

【0014】該事象の報告により、アイドルセマフォ4
でウェイト状態のVPプロセス12が、ウェイト状態か
らレディ状態になることで、再び時分割でBPを得るこ
とが可能になり、VPプロセス12が実プロセッサ9を
得ると再びEXECVP命令の実行が行われ、新たに生
成されたVM内のプロセスを取り込み、VM内プロセス
の実行を行う。
By reporting the event, the idle semaphore 4
When the VP process 12 in the wait state changes from the wait state to the ready state, the BP can be obtained again in a time-division manner. When the VP process 12 obtains the real processor 9, the EXECVP instruction is executed again. , Fetches the newly generated process in the VM, and executes the process in the VM.

【0015】また、EXECVP命令の終了(ステップ
S50)を行った、VPプロセス12が実プロセッサ9
から追い出され、レディ状態となった場合は、該プロセ
ス12は実プロセッサ9が得られ次第、再びVM内のプ
ロセスを実行していく(ステップS52)。
Further, the VP process 12 which has finished the EXECVP instruction (step S50) executes
If the real processor 9 is obtained, the process 12 executes the process in the VM again as soon as the real processor 9 is obtained (step S52).

【0016】[0016]

【発明が解決しようとする課題】上述したように従来の
仮想計算機システムでは、アイドルVPの活性化処理に
おいて、VMモニタの介在によりEXECVP命令の終
了が伴い、実行時間が長いロールイン・ロールアウト動
作が行われてしまうために、大きなオーバヘッド処理が
存在し、性能が極めて低下してしまうという問題点を有
している。
As described above, in the conventional virtual machine system, in the activation processing of the idle VP, the execution of the roll-in / roll-out operation having a long execution time is accompanied by the end of the EXECVP instruction due to the intervention of the VM monitor. Is performed, there is a problem that large overhead processing is present and the performance is extremely deteriorated.

【0017】したがって、本発明は、上記問題点に鑑み
てなされたものであって、その目的は、アイドルVPの
活性化処理において、VMモニタの介在を無くし、EX
ECVP命令の終了処理によるオーバヘッド処理を削減
することで、アイドルVPの活性化処理を高速化できる
ようにした仮想計算機方式を提供することにある。
Accordingly, the present invention has been made in view of the above problems, and has as its object to eliminate the intervention of a VM monitor in an idle VP activation process, and
An object of the present invention is to provide a virtual computer system capable of speeding up an idle VP activation process by reducing an overhead process due to an end process of an ECVP instruction.

【0018】[0018]

【課題を解決するための手段】前記目的を達成するた
め、本発明の仮想計算機方式は、仮想プロセッサがアイ
ドル状態になったことで、該仮想プロセッサに対応する
VPプロセスがウェイト状態となるアイドルセマフォの
アドレスをVP活性化事象報告セルとして設け、仮想計
算機内で新たに実行可能なプロセスが発生した際、同一
仮想計算機内でアイドル状態の仮想プロセッサが存在す
る場合に、該仮想プロセッサに対応するVP活性化事象
報告セルが指し示すアイドルセマフォに対し、VM制御
マイクロプログラムが、該仮想プロセッサの活性化事象
の報告を行う、VP活性化事象報告手段を有することを
特徴とする。
In order to achieve the above object, a virtual computer system according to the present invention provides an idle semaphore in which a VP process corresponding to a virtual processor enters a wait state when the virtual processor enters an idle state. Is provided as a VP activation event report cell, and when a newly executable process occurs in the virtual machine, if there is an idle virtual processor in the same virtual machine, the VP corresponding to the virtual processor A VM control microprogram has a VP activation event reporting unit for reporting an activation event of the virtual processor to an idle semaphore indicated by the activation event report cell.

【0019】[0019]

【発明の実施の形態】本発明の実施の形態について以下
に説明する。本発明は、その好ましい実施の形態におい
て、VPがアイドル状態になったことで、該VPに対応
するVPプロセスがウェイト状態となるアイドルセマフ
ォのアドレスを、VM制御ブロック内にVP活性化事象
報告セルとして有する。
Embodiments of the present invention will be described below. In a preferred embodiment of the present invention, when a VP enters an idle state, an address of an idle semaphore at which a VP process corresponding to the VP enters a wait state is stored in a VM control block in a VP activation event report cell. As

【0020】また、VM内で新たに実行可能なプロセス
が発生した際、同一VM内でアイドル状態のVPが存在
する場合に、該VPに対応するVP活性化事象報告セル
が指し示すアイドルセマフォに対し、VM制御マイクロ
プログラムにより直接事象の報告を行う、VP活性化事
象報告手段を有する。
When a newly executable process occurs in the VM and an idle VP exists in the same VM, the idle semaphore indicated by the VP activation event report cell corresponding to the VP VP activation event reporting means for reporting an event directly by the VM control microprogram.

【0021】VM制御ブロック内にVP活性化事象報告
セルを設けることで、VPプロセスがウェイト状態にな
っているアイドルセマフォのアドレスを、VM制御マイ
クロプログラムから認識可能にし、該プログラム内のV
P活性化事象報告手段により直接BMのアイドルセマフ
ォに事象の報告をすることができるようにしたものであ
る。
By providing a VP activation event report cell in the VM control block, the address of the idle semaphore in which the VP process is in the wait state can be recognized from the VM control microprogram, and the V
An event can be reported directly to the idle semaphore of the BM by the P activation event reporting means.

【0022】[0022]

【実施例】次に、本発明の実施例について図面を参照し
て説明する。
Next, embodiments of the present invention will be described with reference to the drawings.

【0023】図1は、本発明の仮想計算機システムの一
実施例における実主記憶と実プロセッサ(BP)を示す
図である。図2は、本発明の一実施例における、実主記
憶におけるVP活性化事象報告セルとアイドルセマフォ
とVPプロセスの詳細の関係を示す図、図3は、本発明
の一実施例における、アイドルVPの活性化処理を示す
フローチャート、図4は、本発明の一実施例における、
VP活性化事象報告手段の詳細を示したフローチャート
である。
FIG. 1 is a diagram showing a real main memory and a real processor (BP) in one embodiment of the virtual machine system of the present invention. FIG. 2 is a diagram showing a detailed relationship between a VP activation event report cell, an idle semaphore, and a VP process in a real main memory according to an embodiment of the present invention, and FIG. 3 is an idle VP according to an embodiment of the present invention. FIG. 4 is a flowchart showing the activation processing of FIG.
5 is a flowchart showing details of VP activation event reporting means.

【0024】実主記憶1内には、計算機の資源の管理等
を行うSW(ソフトウェア)プログラムであるオペレー
ティングシステム2と、アイドルセマフォ4と、VM制
御構造体5と、プロセス毎のプロセス情報を持つプロセ
ス制御ブロック15と、を含む。
The real main memory 1 has an operating system 2, which is an SW (software) program for managing computer resources, an idle semaphore 4, a VM control structure 5, and process information for each process. A process control block 15.

【0025】実プロセッサ9内には、VM制御に特化し
たマイクロプログラムであるVM制御マイクロプログラ
ム10を含む。
The real processor 9 includes a VM control microprogram 10 which is a microprogram specialized for VM control.

【0026】実プロセッサ9上で動作可能なプロセスが
存在する場合は、対応するプロセス制御ブロック15か
らプロセス情報が実プロセッサ9上に取り込まれ、プロ
セス14(いわゆる通常のプロセス)またはVPプロセ
ス12が実行状態となる。
If there is a process operable on the real processor 9, the process information is fetched from the corresponding process control block 15 onto the real processor 9, and the process 14 (so-called normal process) or the VP process 12 is executed. State.

【0027】また、実プロセッサ9上で実行中のプロセ
スが、コンテスト動作などにより、実プロセッサ9から
追い出される場合は、実プロセッサ9上のソフトウェア
ビジブルなレジスタの内容等がプロセス制御ブロック1
5に吐き出される。
When a process being executed on the real processor 9 is expelled from the real processor 9 by a contest operation or the like, the contents of the software-visible registers on the real processor 9 are stored in the process control block 1.
It is exhaled to 5.

【0028】このプロセス制御ブロック15内には現在
状態移入時間16が存在し、プロセス14またはVPプ
ロセス12の状態が変化した時の時刻が格納される。
In the process control block 15, there is a current state transfer time 16, and the time when the state of the process 14 or the VP process 12 changes is stored.

【0029】オペレーティングシステム2内には、VM
制御に特化したSW(ソフトウェア)プログラムである
VMモニタ3が含まれている。
The operating system 2 has a VM
A VM monitor 3, which is a SW (software) program specialized for control, is included.

【0030】アイドルセマフォ4はVP毎に用意され、
VPがアイドル状態になった場合、対応するVPプロセ
ス12が該セマフォでウェイト状態になる。
An idle semaphore 4 is prepared for each VP,
When a VP enters an idle state, the corresponding VP process 12 enters a wait state at the semaphore.

【0031】VM制御構造体5は複数のVMを制御する
ために、VMモニタ3やVM制御マイクロプログラム1
0が参照、更新を行う制御構造体である。VM制御ブロ
ック群6はVM単位の制御に関係するもの、VP制御ブ
ロック群8はVP単位の制御に関係するものでVM毎に
存在する。
The VM control structure 5 includes a VM monitor 3 and a VM control microprogram 1 for controlling a plurality of VMs.
0 is a control structure for performing reference and update. The VM control block group 6 relates to control in units of VM, and the VP control block group 8 relates to control in units of VP, and exists for each VM.

【0032】VP活性化事象報告セル7は、VP毎に対
応するアイドルセマフォ4のアドレスを格納している
(図2参照)。
The VP activation event report cell 7 stores the address of the idle semaphore 4 corresponding to each VP (see FIG. 2).

【0033】VP状態表示語13は、VPのプロセッサ
状態を示すもので、VM上で新たなプロセスが発生した
ときにアイドルVPをサーチするために利用される。
The VP status indicator word 13 indicates the processor status of the VP, and is used to search for an idle VP when a new process occurs on the VM.

【0034】VP活性化事象報告手段11は、VM制御
マイクロプログラム10の一部であり、VP状態表示語
13とVP活性化事象報告セル7等を利用し、アイドル
セマフォ4に、アイドルVPの活性化のための事象を報
告するものである。
The VP activation event reporting means 11 is a part of the VM control microprogram 10 and uses the VP status indicatory word 13 and the VP activation event report cell 7 and the like to cause the idle semaphore 4 to activate the idle VP. It reports the events for conversion.

【0035】以上のような構成における、アイドルVP
の活性化動作は、以下のステップで行われる。
In the above configuration, the idle VP
Is performed in the following steps.

【0036】VP活性化事象報告セル群7は、VM初期
化時に、VMモニタ3により、アイドルセマフォ4を指
し示すアドレスがVP毎に格納される。このアドレス
は、BM上の論理アドレスでも絶対アドレスでもよい
が、高速化の意味ではアドレス変換を伴わない絶対アド
レスを設定した方が望ましい。
In the VP activation event report cell group 7, an address indicating the idle semaphore 4 is stored for each VP by the VM monitor 3 when the VM is initialized. This address may be a logical address on the BM or an absolute address, but in terms of speeding up, it is desirable to set an absolute address without address conversion.

【0037】VPが、BPを得て、VM内のプロセスを
実行して行き、VM内で実行可能なプロセスが無くな
り、VPがアイドル状態になる場合、EXECVP命令
を終了し、該VPに対応するVPプロセス12はアイド
ルセマフォ4でウェイト状態となる(図7のS61)。
When the VP obtains the BP, executes the process in the VM, and there is no executable process in the VM, and when the VP enters an idle state, the VP terminates the EXECVP instruction and responds to the VP. The VP process 12 enters a wait state in the idle semaphore 4 (S61 in FIG. 7).

【0038】VM制御マイクロプログラム11は、該プ
ロセスの状態がウェイト状態となった時の時刻を、プロ
セス制御ブロック15内の現在状態移入時間16に格納
する。
The VM control microprogram 11 stores the time when the state of the process becomes the wait state in the current state transfer time 16 in the process control block 15.

【0039】その後、VM内で新たな実行可能プロセス
が生成された場合の動作を、図3を参照して説明する。
Thereafter, an operation when a new executable process is generated in the VM will be described with reference to FIG.

【0040】VM内で新たな実行可能プロセスが生成さ
れると(ステップS53)、VM制御マイクロプログラ
ム10がVP活性化事象報告手段11に制御を移す(ス
テップS51)。
When a new executable process is created in the VM (Step S53), the VM control microprogram 10 transfers control to the VP activation event reporting means 11 (Step S51).

【0041】VP活性化事象報告手段11の処理の詳細
を図4を用いて説明すると、新たな実行可能プロセスが
生成されたVMに対応するVP制御ブロック群8内の全
VP状態表示語13を検索する(ステップS71)。
The details of the processing of the VP activation event reporting means 11 will be described with reference to FIG. 4. When all the VP status display words 13 in the VP control block group 8 corresponding to the VM in which the new executable process has been generated are described. Search (step S71).

【0042】この検索で、アイドル状態のVPが1つも
存在しない場合には、VP活性化事象報告手段11は処
理を終了し、VM内のプロセスの実行を再開する(図3
のステップS52)。
If there is no idle VP in this search, the VP activation event reporting means 11 terminates the processing and resumes the execution of the process in the VM (FIG. 3).
Step S52).

【0043】該検索(ステップS71)でアイドル状態
のVPが存在する場合には、アイドルVPが1台のみで
あれば、そのVPを活性化対象とし、複数のアイドルV
Pが存在する場合には(ステップS73)、複数のVP
プロセスに対応するプロセス制御ブロック15内の現在
状態移入時間16を全て読み出し、最も古い時刻が格納
されているVPプロセスに対応するVPを活性化対象と
する(ステップS74)。
When there is an idle VP in the search (step S71), if there is only one idle VP, the VP is set as an activation target and a plurality of idle VPs are set.
If P exists (step S73), a plurality of VPs
All the current state transfer times 16 in the process control block 15 corresponding to the process are read, and the VP corresponding to the VP process in which the oldest time is stored is set as an activation target (step S74).

【0044】活性化対象のVPが決定すると、該VPの
VP状態表示語13をアイドル状態から実行状態へVP
のプロセッサ状態を変更する(ステップS75)。
When the VP to be activated is determined, the VP state display word 13 of the VP is changed from the idle state to the execution state.
Is changed (step S75).

【0045】次に、活性化対象のVPに対応するVP活
性化事象報告セル7を取り出し、事象の報告先であるア
イドルセマフォ4のアドレスを得る(ステップS7
6)。
Next, the VP activation event report cell 7 corresponding to the VP to be activated is taken out, and the address of the idle semaphore 4 to which the event is reported is obtained (step S7).
6).

【0046】このアドレスが指し示すセマフォ4に対し
てVP活性化の事象を報告する(ステップS77)。こ
れにより、該セマフォ4でウェイト状態となっているV
Pプロセス12がレディ状態となり、アイドルVPの活
性化が行われる。
A VP activation event is reported to semaphore 4 indicated by this address (step S77). As a result, V in the semaphore 4 in the wait state
The P process 12 enters the ready state, and the idle VP is activated.

【0047】実行可能状態となったVPプロセス12
は、時分割で実プロセッサ9に割り当てられ次第、VM
内のプロセスを取り込み実行していく。
The VP process 12 in the executable state
Is assigned to the real processor 9 in a time-sharing manner,
The process inside is taken in and executed.

【0048】またVP活性化事象報告手段11により、
アイドルVPの活性化を行ったVPプロセス12は、E
XECVP命令の終了は行われず、VM内のプロセスの
実行が継続して行われる(ステップS52)。
Also, the VP activation event reporting means 11
The VP process 12 that has activated the idle VP is
The XECVP instruction is not terminated, and the execution of the process in the VM continues (step S52).

【0049】[0049]

【発明の効果】以上説明したように本発明によれば、ア
イドルセマフォのアドレスをVM制御ブロック内に、V
P活性化事象報告セルとして設け、VM内で新たに実行
可能なプロセスが発生した際、同一VM内でアイドル状
態のVPが存在する場合に、該VPに対応するVP活性
化事象報告セルが指し示すアイドルセマフォに対し、事
象の報告を行うVP活性化事象報告手段を設けることに
より、VMモニタの介入が無くなり、オーバヘッドを伴
わずアイドルVPの活性化処理を高速に行うことができ
る。
As described above, according to the present invention, the address of the idle semaphore is stored in the VM control block.
Provided as a P activation event report cell, when a newly executable process occurs in the VM, if there is an idle VP in the same VM, the VP activation event report cell corresponding to the VP indicates By providing the VP activation event reporting means for reporting an event to the idle semaphore, the intervention of the VM monitor is eliminated, and the idle VP activation process can be performed at high speed without overhead.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施例を示すブロック図である。FIG. 1 is a block diagram showing one embodiment of the present invention.

【図2】本発明の一実施例のVP活性化事象報告セル群
とアイドルセマフォの詳細の関係を示すブロック図であ
る。
FIG. 2 is a block diagram showing a detailed relationship between a VP activation event report cell group and an idle semaphore according to an embodiment of the present invention.

【図3】本発明の一実施例の動作を示すフローチャート
である。
FIG. 3 is a flowchart showing the operation of one embodiment of the present invention.

【図4】本発明の一実施例のVP活性化事象報告手段の
詳細を示すフローチャートである。
FIG. 4 is a flowchart showing details of VP activation event reporting means according to one embodiment of the present invention.

【図5】従来例を示すブロック図である。FIG. 5 is a block diagram showing a conventional example.

【図6】従来例を示すフローチャートである。FIG. 6 is a flowchart showing a conventional example.

【図7】従来例、本発明の一実施例の共通部のフローチ
ャートである。
FIG. 7 is a flowchart of a common part of a conventional example and one embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1 実主記憶 2 オペレーティングシステム 3 VMモニタ 4 アイドルセマフォ 5 VM制御構造体 6 VM制御ブロック群 7 VP活性化事象報告セル群 8 VP制御ブロック群 9 実プロセッサ 10 VM制御マイクロプログラム 11 VP活性化事象報告手段 12 VPプロセス 13 VP状態表示語 14 プロセス 15 プロセス制御ブロック 16 現在状態移入時間 DESCRIPTION OF SYMBOLS 1 Real main memory 2 Operating system 3 VM monitor 4 Idle semaphore 5 VM control structure 6 VM control block group 7 VP activation event report cell group 8 VP control block group 9 Real processor 10 VM control microprogram 11 VP activation event report Means 12 VP process 13 VP status display word 14 Process 15 Process control block 16 Current status entry time

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】仮想プロセッサがアイドル状態になったこ
とで、該仮想プロセッサに対応するVPプロセスがウェ
イト状態となるアイドルセマフォのアドレスをVP活性
化事象報告セルとして設け、 仮想計算機内で新たに実行可能なプロセスが発生した
際、同一仮想計算機内でアイドル状態の仮想プロセッサ
が存在する場合に、該仮想プロセッサに対応するVP活
性化事象報告セルが指し示すアイドルセマフォに対し、
VM制御マイクロプログラムが、該仮想プロセッサの活
性化事象の報告を行う、VP活性化事象報告手段を有す
ることを特徴とする仮想計算機方式。
When a virtual processor enters an idle state, an address of an idle semaphore at which a VP process corresponding to the virtual processor enters a wait state is provided as a VP activation event report cell and newly executed in the virtual machine. When a possible process occurs, if there is an idle virtual processor in the same virtual machine, the idle semaphore indicated by the VP activation event report cell corresponding to the virtual processor
A virtual computer system comprising a VP activation event reporting means, wherein the VM control microprogram reports an activation event of the virtual processor.
【請求項2】主記憶部が、仮想プロセッサ(「VP」と
いう)毎に用意され、VPがアイドル状態になった場
合、対応するVPプロセスが該セマフォによりウェイト
状態とされるアイドルセマフォと、 複数の仮想計算機(「VM」という)を制御するため
に、VMモニタやVM制御マイクロプログラムが参照、
更新を行う制御構造体であって、VP毎に対応するアイ
ドルセマフォのアドレスを格納しているVP活性化事象
報告セルを含むVM制御ブロック群、及びVPのプロセ
ッサ状態を示すVP状態表示語を含むVP制御ブロック
群、を含むVM制御構造体と、 プロセス毎のプロセス情報を持つプロセス制御ブロック
と、 を含み、 前記VM制御マイクロプログラムが、前記VP状態表示
語と前記VP活性化事象報告セル等を利用し、アイドル
セマフォに、アイドルVPの活性化のための事象を報告
するVP活性化事象報告手段を含み、 VPプロセスが、実プロセッサを得て、VM内のプロセ
スを実行して行き、VM内で実行可能なプロセスが無く
なり、VPがアイドル状態になる場合、所定命令を終了
し、該VPに対応するVPプロセスがアイドルセマフォ
でウェイト状態となり、 その後、VM内で新たな実行可能プロセスが生成された
時、前記VM制御マイクロプログラムは、前記VP活性
化事象報告手段に制御を移し、 VP状態表示語を参照してアイドル状態のVPを探索し
て活性化対象のVPを決定し、 該VPのVP状態表示語をアイドル状態から実行状態へ
VPのプロセッサ状態を変更し、活性化対象のVPに対
応するVP活性化事象報告セルを取り出し、事象の報告
先であるアイドルセマフォのアドレスを得、該アドレス
が指し示すセマフォに対してVP活性化の事象を報告
し、これにより、該セマフォでウェイト状態となってい
るVPプロセスがレディ状態となり、アイドルVPの活
性化を行う、ことを特徴とする仮想計算機方式。
2. A main storage unit is provided for each virtual processor (hereinafter referred to as "VP"). When a VP enters an idle state, a corresponding VP process is placed in a wait state by the semaphore. VM control or VM control microprogram to control the virtual machine (referred to as "VM")
A control structure for updating, which includes a VM control block group including a VP activation event report cell storing an address of an idle semaphore corresponding to each VP, and a VP status indicator word indicating a processor status of the VP. A VM control structure including a VP control block group; and a process control block having process information for each process, wherein the VM control microprogram stores the VP status display word, the VP activation event report cell, and the like. Utilizing an idle semaphore and including a VP activation event reporting means for reporting an event for activating an idle VP, wherein the VP process obtains a real processor, executes a process in the VM, and executes a process in the VM. When there is no process that can be executed by the VP and the VP enters an idle state, the predetermined instruction is terminated, and the VP process corresponding to the VP is idle. When a new executable process is created in the VM after that, the VM control microprogram transfers control to the VP activation event reporting means, and refers to the VP status indicator word to enter an idle state. A VP to be activated is determined by searching for a VP in a state, a VP state indicator word of the VP is changed from an idle state to a running state, and a VP activation event corresponding to the VP to be activated is changed. The report cell is taken out, the address of the idle semaphore to which the event is reported is obtained, and the VP activation event is reported to the semaphore indicated by the address. A virtual computer system characterized by being in a ready state and activating an idle VP.
JP9136036A 1997-05-09 1997-05-09 Virtual computer system Expired - Lifetime JP3022398B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9136036A JP3022398B2 (en) 1997-05-09 1997-05-09 Virtual computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9136036A JP3022398B2 (en) 1997-05-09 1997-05-09 Virtual computer system

Publications (2)

Publication Number Publication Date
JPH10312298A true JPH10312298A (en) 1998-11-24
JP3022398B2 JP3022398B2 (en) 2000-03-21

Family

ID=15165689

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9136036A Expired - Lifetime JP3022398B2 (en) 1997-05-09 1997-05-09 Virtual computer system

Country Status (1)

Country Link
JP (1) JP3022398B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7496494B2 (en) 2002-09-17 2009-02-24 International Business Machines Corporation Method and system for multiprocessor emulation on a multiprocessor host system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7496494B2 (en) 2002-09-17 2009-02-24 International Business Machines Corporation Method and system for multiprocessor emulation on a multiprocessor host system
US7844446B2 (en) 2002-09-17 2010-11-30 International Business Machines Corporation Method and system for multiprocessor emulation on a multiprocessor host system

Also Published As

Publication number Publication date
JP3022398B2 (en) 2000-03-21

Similar Documents

Publication Publication Date Title
US7290261B2 (en) Method and logical apparatus for rename register reallocation in a simultaneous multi-threaded (SMT) processor
EP0106669B1 (en) Operating system supervisor
JP2629278B2 (en) Virtual computer system
EP2182438A1 (en) Virtual machine control method and virtual machine system
JPH0695898A (en) Control method for virtual computer and virtual computer system
JPH0430053B2 (en)
JP2000330806A (en) Computer system
JPS6040067B2 (en) Distributed control multiprocessing system
JPS5955565A (en) Multi-firmware system
JPH0594317A (en) Input output interrupt processing system of virtual machine
JPH06243112A (en) Multiprocessor device
JP3022398B2 (en) Virtual computer system
JPS59167756A (en) Dispatch control system of virtual computer
JPS6349945A (en) Process roll-in system for data processor
JPS61184643A (en) Starting control system for virtual computer
JPH09282196A (en) Program run control system for complex logic processor system
JPS6097440A (en) Virtual multiprocessor device
JPH11184828A (en) Test system for multiprocessor system
JPS6314241A (en) Memory expansion system
JPS603229B2 (en) Information processing method
JPS62221041A (en) Dispatch controller in virtual computer system
JP2001229038A (en) Multi-operating computer system
JPS62125437A (en) Control method for additional processor
JPH1153327A (en) Multiprocessor system
JPH0444131A (en) Device and method for execution of inter-processor communication in plural os running systems

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19991214