JPS59125450A - Virtual computer control system - Google Patents

Virtual computer control system

Info

Publication number
JPS59125450A
JPS59125450A JP66883A JP66883A JPS59125450A JP S59125450 A JPS59125450 A JP S59125450A JP 66883 A JP66883 A JP 66883A JP 66883 A JP66883 A JP 66883A JP S59125450 A JPS59125450 A JP S59125450A
Authority
JP
Japan
Prior art keywords
virtual machine
virtual
processor
virtual computer
switching
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
JP66883A
Other languages
Japanese (ja)
Other versions
JPH0532771B2 (en
Inventor
Naoya Ono
直哉 大野
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
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP66883A priority Critical patent/JPS59125450A/en
Publication of JPS59125450A publication Critical patent/JPS59125450A/en
Publication of JPH0532771B2 publication Critical patent/JPH0532771B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs

Abstract

PURPOSE:To reduce the switching of virtual computers and to improve the use efficiency of an actual processor by indicating the continuation of the allocation of virtual computers. CONSTITUTION:A virtual computer switching control mechanism 2 decides a virtual computer to be allocated next in a switching opportunity of respective virtual computers. Then, the processor state of the virtual computer to which the actual processor is allocated so far is read out of a processor state register group 3 on the basis of the result of the decision and saved in a virtual computer control table 1 as saved information 14. Then, saved information 14 corresponding to a virtual computer to which the actual processor is allocated newly is fetched from the virtual computer control table 1. Then, it is stored in the processor state register group 3 of the actual processor to perform switching to the virtual computer. Further, the identification number VMID of the new virtual computer is set in a virtual computer identification number register 5 and the state of the virtual computer is updated into ''in execution''.

Description

【発明の詳細な説明】 本発明は、仮想計算機制御方式、特に、仮想計算機シス
テムにおける笑プロセッサと仮想計算機の割当ての1I
tlJ #lIを行なう仮想計算機+HII m方式に
関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a virtual machine control method, and in particular, to a virtual machine control method for allocating processors and virtual machines in a virtual machine system.
This relates to the virtual machine+HII m method that performs tlJ #lI.

一般に、仮想計算機システムとは、一台の計算機システ
ム上で、仮想的に複数個のδ4算機システムを作シ出す
技術であり、この仮想計算機システムにおいては、シス
テム上の各仮想計算機における仮想プロセッサに対して
順次実プロセツサが割シ当てられる。
In general, a virtual computer system is a technology that virtually creates multiple δ4 computer systems on one computer system, and in this virtual computer system, a virtual processor in each virtual computer on the system Real processors are sequentially allocated to the real processors.

それゆえ、実プロセツサが割り当てられているときだけ
、その仮想計算機が実際に処理を実行することができる
Therefore, the virtual machine can actually execute processing only when a real processor is assigned.

仮想計算機の切換え、すなわち、仮想計W機上の仮想プ
ロセッサに対する実プロセツサへの割当ての切換えを行
なうには次のような処理が必要となる。
The following processing is required to switch the virtual machine, that is, to switch the assignment of the virtual processor on the virtual machine W to the real processor.

すなわち、現在実プロセツサを割シ当てられている、す
なわち、現在実行中の仮想計算機のプロセッサ状態は実
プロセツサ上にあるので、これを仮想プロセッサの状態
として仮想計算機に対応した退避エリアに退避(−1こ
の後、新たに実プロセツサを割シ当てる仮想計算機のプ
ロセッサの退避情報、すなわち、仮想プロセッサの状態
を実プロセツサ上にロードし、始めて仮想計算機が実行
可能となる。
In other words, since the processor state of the virtual machine to which a real processor is currently assigned, i.e., which is currently being executed, is on the real processor, this is saved as the state of the virtual processor to the save area corresponding to the virtual machine (- 1. After this, the saved processor information of the virtual machine to which a new real processor is to be assigned, that is, the state of the virtual processor, is loaded onto the real processor, and the virtual machine becomes executable for the first time.

このように、仮想計算機システムにおいては、仮想プロ
セッサの実プロセツサへの割当ての切換えに際して比較
的大きなオーバヘッドを要するので、この仮想計算機の
切換えの回数を不必要に大きくすることは望ましくない
As described above, in a virtual computer system, a relatively large overhead is required when switching the assignment of virtual processors to real processors, so it is undesirable to unnecessarily increase the number of times the virtual machines are switched.

一方、仮想計算機で長時間実行すべき処理が存在しない
場合においても、その仮想計算機に実プロセツサを割シ
講てておくことは、実プロセツサの有効利用という観点
から望ましくない。
On the other hand, even if there is no process to be executed for a long time in a virtual computer, it is not desirable to allocate a real processor to the virtual computer from the viewpoint of effective utilization of the real processor.

従来の仮想計算機制御方式は、仮想計算機ごとにタイム
スライス値を格納する仮想計算機制御テーブルと、実プ
ロセツサで実行中の前記仮想計算機におけるアイドル状
態を検出してアイドル検出信号を出力するプロセス切換
制御機構と、前記仮想計算機が前記実プロセツサを割シ
当てられてから対応する前記タイムスライス値で指示さ
れる指定時間の経過後にタイムスライス切才t1河号を
出力するタイムスライスタイマと、前記アイドル検出信
号が供給されたときおよび前記タイムスライス切れ信号
が供給さnfcときに前記実プロセツサに割り当てるべ
ぎ仮想計算機を決定し切り換えるための仮想針W、機切
換制御機構とを含んで構成される。
Conventional virtual machine control methods include a virtual machine control table that stores time slice values for each virtual machine, and a process switching control mechanism that detects the idle state of the virtual machine running on a real processor and outputs an idle detection signal. a time slice timer that outputs a time slice signal t1 after a specified time indicated by the corresponding time slice value has elapsed since the real processor was allocated to the virtual machine; and the idle detection signal. The present invention includes a virtual hand W for determining and switching a virtual machine to be assigned to the real processor when NFC is supplied and when the time slice expiration signal is supplied, and a machine switching control mechanism.

すなわち、従来の仮想計算機制御方式において、仮想計
算機を切り換える方式としては、仮想計算機、で実行す
べき処理がなくなった時点、すなわち、アイドル状態が
検出された時点で他の仮想計算機に切シ換える方式と、
仮想針!j機で実行すべき処理の有無にはかかわらず一
定時間毎に実プロセツサを仮想計算機に割シ当てる方式
が知られている。
In other words, in conventional virtual machine control methods, the method for switching virtual machines is to switch to another virtual machine when there is no more processing to be executed on the virtual machine, that is, when an idle state is detected. and,
Virtual needle! A method is known in which a real processor is assigned to a virtual machine at fixed intervals, regardless of whether there is a process to be executed on the machine.

しかしながら、アイドル状態を検出した時点で他の実行
可能な仮想計算機に切り換える方式は次のような欠点を
もつ。
However, the method of switching to another executable virtual machine upon detecting an idle state has the following drawbacks.

すなわち、−個の仮想計算機内で複数のプログラムが実
行されている場合には、わずかの時間を待てば他のプロ
グラムが実行可能になる場合が多く、一時的にアイドル
状態になった時点で仮想計算機の切換えを行なうことは
得策でないことが多い〇 一方、機械的に実プロセツサを各仮想計算機に一定時間
割シ当てる方式では、仮想計算機上で単一のプログラム
しか動作していないような場合には、一度その仮想計量
、PA上のプログラムから入出力動作要求がでて、この
プログラムが待ちに入ると、この入出力動作の完了−ま
で仮想計昨機はアイドル状態となる。
In other words, when multiple programs are being executed within - virtual machines, other programs can often be executed after waiting a short period of time; It is often not a good idea to switch computers. On the other hand, with a method that mechanically allocates a real processor to each virtual computer for a fixed period of time, it is difficult to switch computers when only a single program is running on the virtual computer. Once an input/output operation request is issued from a program on the virtual metering PA and this program enters the waiting state, the virtual metering machine remains in an idle state until the input/output operation is completed.

すなわち、一般に、入出力動作は、プロセッサの動作時
間(を比べで極端に低速でらるので、そのままこの仮想
針4様に夾プロセッサを割り当てておくことは実プロセ
ツサを無駄に専有することになる。
In other words, input/output operations are generally extremely slow compared to the processor's operating time, so assigning an extra processor to this virtual needle 4 will wastefully monopolize the real processor. .

すなわち、従来の仮想針切機制御方式は、オーバヘッド
が大きく、実プロセツサの使用効率が低いという欠点が
めった。
That is, the conventional virtual needle cutter control method often has the drawbacks of large overhead and low utilization efficiency of the real processor.

本発明の目的は、オーバヘッドを低減でき実プロセツサ
の使用効率を向上できる仮想計算機制御方式を提供する
ことにある。
An object of the present invention is to provide a virtual machine control method that can reduce overhead and improve the efficiency of using real processors.

すなわち、本発明の目的は、上記の点を鑑みてなされた
ものであり、仮想針n機の切換えが少く、かつ、実プロ
セツサの使用効率も高めた仮想計算機制御方式を提供す
ることにある。
That is, an object of the present invention has been made in view of the above points, and it is an object of the present invention to provide a virtual computer control method that reduces the switching of n virtual machines and increases the efficiency of using real processors.

すなわち、本発明の目的は、たとえば、単一プログラム
で走行する仮想計算機に対しては、指示情報として、仮
想計算機の切換えをセットし、マルチプログラムで走行
する仮想計算機に対しては、仮想計算機の割当ての続行
を指示することにより仮想計算機の切換回数を少く、か
つ、実プロセツサの無駄時間も少くでき仮想計算機の切
換えのオーバヘッドが少く、かつ、実プロセツサの有効
利用を可能にする仮想計算機システムを実現できる仮想
計算機制御方式を提供することにある。
That is, an object of the present invention is, for example, to set virtual machine switching as instruction information for a virtual machine running with a single program, and to set virtual machine switching as instruction information for a virtual machine running with multiple programs. By instructing continuation of allocation, the number of times virtual machines are switched is reduced, and the wasted time of real processors is also reduced.The virtual machine system reduces the overhead of switching virtual machines and makes effective use of real processors. The objective is to provide a virtual computer control method that can be implemented.

本発明の仮想計算機制御方式は、仮想計算機ごとにタイ
ムスライス値および切換か続行かを指示する指示情報を
格納する仮想計算機制御テーブルと、実プロセツサで実
行中の前記仮想計算機におけるアイドル状態全検出して
アイドル検出信号を出力するプロセス切換I11]御機
構と、前記仮想計算機が前記実プロセツサを割シ当てら
れてから対応する前記タイムスライス値で指示される指
定時間の経過後にタイムスライス切れ信号を出力するタ
イムスライスタイマと、前記アイドル検出信号が供給さ
れたときに対応する前記指示情報が続行を指示している
ときおよび前記タイムスライス切れ信号が供給されたと
きに前記実プロセツサに割り尚てるべき仮想計算機を決
定し切、!7mえるための仮想計算機切換制御機構とを
含んで構成される。
The virtual machine control method of the present invention includes a virtual machine control table that stores a time slice value and instruction information for switching or continuing for each virtual machine, and detects all idle states of the virtual machine running on a real processor. a process switching I11 control mechanism that outputs an idle detection signal when the real processor is allocated to the virtual machine, and outputs a time slice expiration signal after a specified time specified by the corresponding time slice value has elapsed since the virtual machine was assigned the real processor; a virtual time slice timer that should be re-allocated to the real processor when the idle detection signal is supplied, the corresponding instruction information instructs to continue, and when the time slice expiration signal is supplied. Decided on the calculator! The system includes a virtual machine switching control mechanism for increasing the number of computers.

すなわち1本発明の仮想計算機制御方式は複数個^仮想
計算機を覚現する仮想計算機システムにおいて、実プロ
セツサに割り当てるべき仮想計算機を決定し、この決定
にもとづき仮想計算機を切り換える仮想計算機切換制御
手段と、前記仮想計算機が実プロセツサを割り当てられ
てから指定時間が経過すると前記仮想計算機切換制御手
段に対してタイムスライス切れ信号全発生するタイムス
ライスタイマと、 実プロセツサで実行中の仮想計算機におけるアイドル状
態を検出するプロセス切換制御手段と、各仮想計算機の
状態情報およびプロセッサ状態としての退避情報を格納
するほかにアイドル状態の検出時における動作を指定す
るだめの指示情報を格納する仮想計算機制御テーブルと
をもち、実プロセツサを割シ当てられて実行中の仮想計
算機においてアイドル状態が検出された場合に実プロセ
ツサを割り当てられている仮想計算機に対応する前記仮
想計算機制御テーブル上の前記指示情報を参照し、その
内容に従って指示情報が切換えを指定している場合には
、前記仮想計算機切換制御機構を起動することにより、
他の仮想計算機への実プロセツサの切換えを行ない、前
記指示情報が続行を指定している場合には、他の仮想計
算機への実プロセツサの割当ての切換えは行わず、前記
タイムスライスタイマの発生するタイムスライス切れ信
号を契機として仮想計算機の切換えを行なうように構成
される。
In other words, the virtual computer control method of the present invention includes, in a virtual computer system that stores a plurality of virtual computers, a virtual computer switching control means that determines a virtual computer to be assigned to a real processor and switches the virtual computers based on this determination; a time slice timer that generates a time slice expiry signal to the virtual machine switching control means when a specified time has elapsed since the virtual machine was assigned a real processor; and a time slice timer that detects an idle state in the virtual machine running on the real processor. a virtual machine control table that stores state information of each virtual machine and save information as a processor state, as well as instruction information for specifying an operation when an idle state is detected; When an idle state is detected in a virtual machine that is being executed and has been assigned a real processor, the instruction information on the virtual machine control table corresponding to the virtual machine that has been assigned a real processor is referred to, and its contents are If the instruction information specifies switching according to the above, by activating the virtual machine switching control mechanism,
If the real processor is switched to another virtual machine and the instruction information specifies to continue, the allocation of the real processor to the other virtual machine is not switched and the time slice timer is generated. The virtual machine is configured to be switched in response to a time slice expiration signal.

すなわち、本発明仮想計算機制御方式は、実行中の仮想
計算機のアイドル状態の検出時に仮想計算機の切換えを
行なうべきか、あるいは切換えを行なわず一定時間が経
過するまで、仮想計算機を割り当てたまま続行するべき
かを示す指示情報を各仮想計算機ごとに保持し、仮想計
算機でのアイドル状態の検出時に、この指示情報に応じ
て、他の仮想計算機への切換えあるいは仮想計算機の続
行を制御するように構成される。
In other words, the virtual machine control method of the present invention determines whether to switch virtual machines when an idle state of a running virtual machine is detected, or to continue assigning virtual machines until a certain period of time elapses without switching. The configuration is configured such that instruction information indicating whether the virtual machine should be used is maintained for each virtual machine, and when an idle state is detected in a virtual machine, switching to another virtual machine or continuation of the virtual machine is controlled according to this instruction information. be done.

次に、本発明の実施例について、図面を参照して構成お
よび動作を説明する。
Next, the configuration and operation of an embodiment of the present invention will be described with reference to the drawings.

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

第1図に示す仮想計算機制御方式においては。In the virtual computer control method shown in FIG.

仮想計算機制御テーブル1は、各仮想計算機に対応した
エントリをもち、各エントリは、対応する仮想計算機が
動作可能かどうかを示す状態情報12と、対応する仮想
計算機のタイムスライス値13a計ssの仮想プロセッ
サへの実プロセツサの割当てが解除された時点でのプロ
セッサ状態である退避情報14に加えて、アイドル状態
の検出時の処理を示す指示情報11を格納するためのも
のである。
The virtual machine control table 1 has an entry corresponding to each virtual machine, and each entry includes status information 12 indicating whether the corresponding virtual machine is operable, and a time slice value 13a of the corresponding virtual machine. In addition to save information 14 which is the state of the processor at the time when the allocation of the real processor to the processor is cancelled, it is used to store instruction information 11 indicating the process to be performed when an idle state is detected.

指示情報11として値1.1″がセットされている場合
には、アイドル状態の検出時に、仮想計算機の切換えを
行なうべきであることを示しているものとする。また、
指示情報11として値101がセントされている場合に
はアイドル状態が検出されても、仮想計算機の切換えを
行なわずに、割当てをそのまま続行して処理を続行すべ
きであることを示しているものとする。
When the value 1.1'' is set as the instruction information 11, it indicates that the virtual machine should be switched when an idle state is detected.
If the value 101 is set as instruction information 11, it indicates that even if an idle state is detected, the allocation should continue without switching the virtual machine and processing should continue. shall be.

また、仮想計算機切換制御機構2は、各仮想計算機の切
換えの契機において、次に実プロセツサを割当てるべき
仮想計算機を決定し、この決定にもとづき、直前まで実
プロセツサを割シ当ててぃた仮想計算機のプロセッサ状
態を、プロセッサ状態レジスタ群3から読み出し、前記
仮想計算機制御テーブル1に退避情報14として退避し
、新たに実プロセツサを割シ当てるべき仮想計算機に対
応した退避情報14を前記仮想計算機制御テーブルlか
ら取シ出し、実プロセツサのプロセッサ状態レジスタ#
3に格納させることによシ、仮想計算機の切換えも行な
う。これとともに、新たに実プロセツサを割シ当てた仮
想計算機を指示する仮想計算機識別番号VMIDを仮想
計算機識別番号レジスタ5に設定し、仮想計算機の状態
も1実行中1に更新する。
In addition, at the time of switching each virtual machine, the virtual machine switching control mechanism 2 determines the next virtual machine to which a real processor should be assigned, and based on this decision, the virtual machine to which a real processor has been assigned until just before is switched. The processor state of the processor is read from the processor state register group 3, and saved as save information 14 in the virtual machine control table 1, and the save information 14 corresponding to the virtual machine to which a new real processor is to be assigned is saved in the virtual machine control table. Extracted from l, processor status register of real processor #
By storing the information in 3, virtual machines can also be switched. At the same time, the virtual machine identification number VMID indicating the virtual machine to which the real processor has been newly assigned is set in the virtual machine identification number register 5, and the state of the virtual machine is also updated to 1 during one execution.

また、このときに、タイムスライスタイマ7の初期設定
も行なう。すなわち、仮想計算機切換制御機構2は仮想
計算機制御テーブル1上の仮想計算機識別番号VMID
に対応するタイムスライス値13をタイムス多イス値設
定信号72を供給することにより、タイムスライスタイ
マ7に設定する。
At this time, the time slice timer 7 is also initialized. That is, the virtual machine switching control mechanism 2 uses the virtual machine identification number VMID on the virtual machine control table 1.
The time slice value 13 corresponding to the time slice value 13 is set in the time slice timer 7 by supplying the time slice value setting signal 72.

タイムスライスタイマ7は、クロック信号によりカウン
トダウンするタイマで、指定された時間が経過すると、
タイムスライス切れ信号71を発生して仮想計算機切換
制御機構2に通知する。
The time slice timer 7 is a timer that counts down based on a clock signal, and when a specified time elapses,
A time slice expiry signal 71 is generated and notified to the virtual machine switching control mechanism 2.

タイムスライスタイマ7からのタイムスライス切れ信号
71は、仮想計算機切換制御機構2に印加され、これが
仮想計算機の切換えの契機として使用される。すなわち
、タイムスライス切れの契機では、これまで実プロセツ
サを駒り蟲てられていた仮想計算機から実プロセツサを
取り上げ、他へ実行可能な仮想計算機に割り当てが竹わ
れる。
A time slice expiration signal 71 from the time slice timer 7 is applied to the virtual machine switching control mechanism 2, and is used as a trigger for switching the virtual machine. That is, when the time slice expires, the real processor is taken away from the virtual machine that has been occupied with the real processor, and allocated to another virtual machine that can execute the real processor.

まだ、第1図に示す実施例においては、仮想計算機上の
プログラムから発生する入出力動作の処理はすべてファ
ームウェアによりなされその処理のために、実行中の仮
想計算機のプロセッサ状態を退避し、入出力動作の処理
のための割箸プログラムの動作環境をロードする等の処
理が不要であるとしている。
However, in the embodiment shown in FIG. 1, all input/output operations generated by programs on the virtual machine are performed by firmware, and for this processing, the processor state of the running virtual machine is saved and input/output operations are performed by the firmware. It is said that there is no need for processing such as loading the operating environment of the disposable chopsticks program for processing the motion.

すなわち、仮想針!機上のプログラムから出された仮想
入出力デバイスへの入出力要求は、仮想計算機のプロセ
ッサ状態を退避することなく、ファームウェアにより、
対応する実デバイスへの入出力要求に変換され、実行さ
れ、入出力完了により実プロセツサに印加される入出力
割込みも、ファームウェアにより、仮想計算機の状態の
退避を行なうことなく、仮想入出力デ/ぐイスの入出力
割込みに変換され−これ金、仮想計算機の状態にも反映
させる。すなわち、仮想計算機の状態を実行可能な状態
とする処理がなされるとともに、仮想計算機の切換えの
契機としても使用される。
Namely, virtual needles! Input/output requests to virtual input/output devices issued by programs on the machine are processed by the firmware without saving the processor state of the virtual machine.
An input/output interrupt that is converted into an input/output request to the corresponding real device, executed, and applied to the real processor upon completion of the input/output is also processed by the firmware as a virtual input/output request without saving the state of the virtual machine. This is converted into an input/output interrupt for the machine and is also reflected in the state of the virtual machine. That is, a process is performed to change the state of the virtual machine to an executable state, and it is also used as a trigger for switching the virtual machine.

この契機で起動された仮想計算機切換制御機構2は、他
に実行可能な仮想計算機がなければ、この仮想計算機に
実プロセツサを割り当てることになる。
The virtual machine switching control mechanism 2 started with this opportunity will allocate a real processor to this virtual machine if there is no other executable virtual machine.

また、当然のことながら、仮想計算機切換制御機構2自
体もノ・−ドウエアあるいはファームウェアにより実現
されておシ、これが動作するのに仮想計算機に与えられ
ていた実プロセツサを取り上げる必要はない。
Furthermore, as a matter of course, the virtual machine switching control mechanism 2 itself is realized by hardware or firmware, and there is no need to use the real processor provided to the virtual machine for this to operate.

また、プロセス切換制御機構4は、仮想計算機内の各プ
ロセスに対するプロセッサの割当てを制御するもので、
仮想計算機内で実行可能なプロセスがなくなったとき、
すなわち、仮想計算機内でプロセッサがアイドル状態に
なったときこれを検出し、アイドル検出信号41を出力
する。このアイドル検出信号41はアンドゲート6の一
方の入力に印加され、他方の入力には、仮想計n機制御
テーブルlからの指示情報11が印加され、その出力は
仮想計算機切換信号61として仮想計′J4.機切換制
御機構2に印加されている。
Furthermore, the process switching control mechanism 4 controls the allocation of processors to each process within the virtual machine.
When there are no more executable processes within the virtual machine,
That is, when the processor becomes idle within the virtual machine, this is detected and the idle detection signal 41 is output. This idle detection signal 41 is applied to one input of the AND gate 6, and the instruction information 11 from the virtual machine n machine control table l is applied to the other input. 'J4. The voltage is applied to the machine switching control mechanism 2.

いま、ある仮想計算機を実行しているとき(こに格納さ
れ、この仮想計算機識別番号VMIDによシアドレスさ
れる仮想計算機制御テーブルlに格納されている指示情
報11の値はアンドゲート6に印加されている。)プロ
セス切換制御機構4がアイドル状態を検出してアイドル
検出信号41を出力すると、アンドゲート6にこのアイ
ドル検出信号41が印加される。
Now, when a certain virtual machine is being executed (the value of the instruction information 11 stored in the virtual machine control table l which is stored here and addressed by this virtual machine identification number VMID) is applied to the AND gate 6. ) When the process switching control mechanism 4 detects an idle state and outputs an idle detection signal 41, this idle detection signal 41 is applied to the AND gate 6.

このとき、仮想計算機制御テーブル1に格納されている
指示情報11のうち実行中の仮想計算機に対応するエン
トリの指示情報11が値111のとき、すなわち、アイ
ドル状態の検出時における仮想計算機の切換えを指示し
ている場合には、アンドゲート6は、仮想計算機切換信
号61として値111f;r出力し、これにより、仮想
計算機切換制御機!2が起動される。
At this time, when the instruction information 11 of the entry corresponding to the running virtual machine among the instruction information 11 stored in the virtual machine control table 1 has a value of 111, that is, when the virtual machine is switched when an idle state is detected, If so, the AND gate 6 outputs the value 111f;r as the virtual machine switching signal 61, thereby causing the virtual machine switching controller! 2 is activated.

起動された仮想計算機切換制御機構2は現在実プロセツ
サを割り尚てられている仮想計算機の状態を待ち状態に
する。
The activated virtual machine switching control mechanism 2 changes the state of the virtual machine to which the real processor is currently allocated to the waiting state.

次に、仮想計算機制御テーブル1の状態情報12をサー
チし7、実行可能な仮想計算機を決定する。
Next, the status information 12 of the virtual machine control table 1 is searched 7 to determine an executable virtual machine.

このあと、これまで実プロセツサを割シ当てられていた
仮想計算機のプロセッサ状態を仮想計算機制御テーブル
1の退避情報14として退避し、次に、決定された仮想
計算機の退避情報14を実プロセツサに戻すことにょシ
、選択された仮想計算機への切換えを完子する。
After this, the processor state of the virtual machine to which the real processor has been assigned so far is saved as the save information 14 in the virtual machine control table 1, and then the saved information 14 of the determined virtual machine is returned to the real processor. Finally, the switch to the selected virtual machine is completed.

プロセス切換制御機構4がアイドル状態を検出したとき
、仮想計算機制御テーブル1の実行中のすなわち実プロ
セツサを割シ当てられている仮想計算機に対応する指示
情報11が、仮想計算機の割当ての続行を指示している
場合、)″なゎち、対応する指示情報11のfl@が1
o′′の鴨合には、アントゲ−)6ii”(J’;i出
カするので、仮想計算機の状態の笈枦、およびこれに伴
tユう仮想計算機の切換えは行なわず、この仮想計n機
は、実プロセツサを割υ当でられた′!まで、アイドル
状態が解除されるのを待っていることになる。
When the process switching control mechanism 4 detects an idle state, the instruction information 11 corresponding to the virtual machine that is being executed, that is, to which a real processor has been assigned in the virtual machine control table 1, instructs to continue the virtual machine assignment. )", the fl@ of the corresponding instruction information 11 is 1.
Since the computer game)6ii''(J'; This means that machine n waits for the idle state to be released until the real processor is assigned υ'!.

指示情報11が仮懇計3f tik t7) @If当
ての続行を指示して(八る場合には、この仮想計算機が
実プロセッ?を取シ上けられるのは、この仮想計を機に
割り当てられたタイトスライス値13が消化されたとき
、すなわち、とのOi想計算機が笑プロセッサを割り当
てられた時点でセットされたタイツ、スライスタイマ7
がタイムスジイス切れ信号71を発生したとき、あるい
は、この仮想肘、p1(寿;ニジも高い優先度をもつ仮
想計算機が実行可能な状態になった場合に限られること
になる。
If the instruction information 11 instructs the continuation of the @If calculation (8), this virtual computer can take over the real processor only if it is assigned to this virtual computer. The tight slice timer 7 is set when the tight slice value 13 is consumed, i.e., when the Oi idea calculator is assigned the processor.
This is limited to when the timeout signal 71 is generated, or when this virtual machine, p1, which has a high priority, becomes executable.

以上、本発明の実施例について説明したが、上述の説明
により明らかなように、本発明の主旨は複数個の仮想計
算機を実現する仮想計算機システムにおいて、実プロセ
ツサに割り当てるべき仮想計算機を決定し、この決定に
もとづき、仮想計算機を切換える仮想計算機切換制御手
段と。
The embodiments of the present invention have been described above, but as is clear from the above description, the gist of the present invention is to determine a virtual machine to be assigned to a real processor in a virtual computer system that implements a plurality of virtual machines, and a virtual computer switching control means for switching virtual computers based on this determination.

前記仮想計算機が実プロセツサを割り当てられてから、
指定時間が経過すると、前記仮想計算機切換制御手段に
対して仮想計算機切換信号を発生するタイムスライスタ
イマと、 実プロセツサで実行中の仮想計算機におけるアイドル状
態を検出するプロセス切換制御手段と、各仮想計算機の
状態情報およびプロセッサ状態としての退避情報を格納
するほかにアイドル状態の検出時における動作を指定す
るための指示情報を格納する仮想計算機制御テーブルと
をもち、実プロセツサを割り当てられて実行中の仮想計
算機においてアイドル状態が検出された場合に、実プロ
セツサを割り当てられている仮想計算機に対応する前記
仮想計算機制御テーブル上の前記指示情報を参照し、そ
の内容に従って、指示情報が切換えを指定している場合
には、前記仮想計算機切換制御機構を起動することによ
り、他の仮想計算機への実プロセツサの切換えを行い、
指示情報が続行を指定している場合には、他の仮想計算
機への実プロセツサの割当ての切換えは行わず、前記タ
イムスライスタイマの発生するタイムスライス切れ信号
を契機として仮想計算機の切換えを行なうことにより、
仮想計算機の切換えのオーバヘッドが少く、かつ、実プ
ロセツサの使用効率も高めた仮想計算機切換制御方式を
実現することにあり、個々の手段の具体的な実現方式に
関しては、本発明の主旨とは直接関係がないので説明を
簡潔圧するために省略しであるが、当業者にとっては攬
々の方式で実現できることが明らかであろう。
After the virtual machine is assigned a real processor,
a time slice timer that generates a virtual machine switching signal to the virtual machine switching control means when a specified time has elapsed; a process switching control means that detects an idle state in a virtual machine running on a real processor; In addition to storing state information and save information as the processor state, it also has a virtual machine control table that stores instruction information for specifying operations when an idle state is detected. When an idle state is detected in a computer, the instruction information on the virtual machine control table corresponding to the virtual computer to which a real processor is assigned is referred to, and the instruction information specifies switching according to the contents. In this case, the real processor is switched to another virtual machine by activating the virtual machine switching control mechanism,
If the instruction information specifies continuation, do not switch the allocation of the real processor to another virtual machine, but switch the virtual machine using the time slice expiration signal generated by the time slice timer as a trigger. According to
The purpose of the present invention is to realize a virtual machine switching control method that reduces the overhead of virtual machine switching and also increases the efficiency of using real processors. Since it is unrelated, it is omitted to simplify the explanation, but it will be obvious to those skilled in the art that it can be realized in any number of ways.

本発明の仮想計算機制御方式は、仮想計算機制御テーブ
ルに指示情報を格納しておくことによシ、アイドル状態
が検出されても指示情報が続行を指示しておれば仮想計
算機の切換を行なわなくさせることができるため、仮想
計算機の切換回数を削減できるので、オーバヘッドを低
減しかつ実プロセツサの使用効率を向上できるという効
果がある。
The virtual machine control method of the present invention stores instruction information in the virtual machine control table, so that even if an idle state is detected, if the instruction information instructs to continue, the virtual machine will not be switched. As a result, the number of times virtual machines are switched can be reduced, which has the effect of reducing overhead and improving the efficiency of using real processors.

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

第1図は本発明の一実施例を示すブロック図である。 1・・・・・・仮想計算機制御テーブル、2・・・・・
・仮想計算機切換制御機構、3・・・・・・プロセッサ
状態レジスタ、4・・・・・・プロセス切換制御機構、
5・・・・・・仮想計算機識別番号レジスタ、6・・・
・・・アンドゲート、7・・・・・・タイムスライスタ
イマ、 11・・・・・・指示情報、12・・・・・・状態情報
、13・・・・・・タイムスライス値、14・・・・・
・退避情報、41・・・・・・アイドル検出信号、61
・・・・・・仮想針n機切換信号、71・°・・°・タ
イムスライス切れ信号、72・・・・・・タイムスライ
ス値設定信号。
FIG. 1 is a block diagram showing one embodiment of the present invention. 1...Virtual computer control table, 2...
- Virtual machine switching control mechanism, 3... Processor status register, 4... Process switching control mechanism,
5...Virtual machine identification number register, 6...
...and gate, 7...time slice timer, 11...instruction information, 12...state information, 13...time slice value, 14.・・・・・・
- Evacuation information, 41...Idle detection signal, 61
. . . Virtual needle n machine switching signal, 71.° . . . ° Time slice end signal, 72 . . . Time slice value setting signal.

Claims (1)

【特許請求の範囲】[Claims] 仮想計算機ごとにタイムスライス値および切換か続行か
を指示する指示情報を格納する仮想計算機制御テーブル
と、実プロセツサで実行中の前記仮想計算機におけるア
イドル状態を検出してアイドル検出信号を出力するプロ
セス切換制御機構と、前記仮想計算機が前記実プロセツ
サを割シ当てられてから対応する前記タイムスライス値
で指示される指定時間の経過後にタイムスライス切れ信
号を出力するタイムスライスタイマと、前記アイドル検
出信号が供給されたときに対応する前記指示情報が続行
を指示しているときおよび前記タイムスライス切れ信号
が供給されたときに前記実プロセツサに割シ当てるべき
仮想計算機を決定し切ヤ換えるだめの仮想計算機切換制
御機構とを含むことを特徴とする仮想計算機制御方式。
A virtual machine control table that stores a time slice value and instruction information for instructing whether to switch or continue for each virtual machine, and a process switch that detects an idle state in the virtual machine running on a real processor and outputs an idle detection signal. a control mechanism; a time slice timer that outputs a time slice expiration signal after a specified time indicated by the corresponding time slice value has elapsed since the real processor was allocated to the virtual computer; A virtual computer for determining and switching a virtual computer to be allocated to the real processor when the corresponding instruction information instructs to continue and when the time slice expiry signal is supplied. A virtual computer control method comprising: a switching control mechanism.
JP66883A 1983-01-06 1983-01-06 Virtual computer control system Granted JPS59125450A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP66883A JPS59125450A (en) 1983-01-06 1983-01-06 Virtual computer control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP66883A JPS59125450A (en) 1983-01-06 1983-01-06 Virtual computer control system

Publications (2)

Publication Number Publication Date
JPS59125450A true JPS59125450A (en) 1984-07-19
JPH0532771B2 JPH0532771B2 (en) 1993-05-17

Family

ID=11480117

Family Applications (1)

Application Number Title Priority Date Filing Date
JP66883A Granted JPS59125450A (en) 1983-01-06 1983-01-06 Virtual computer control system

Country Status (1)

Country Link
JP (1) JPS59125450A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0185378A2 (en) * 1984-12-19 1986-06-25 Hitachi, Ltd. Virtual computer system
JPH0324633A (en) * 1989-06-21 1991-02-01 Matsushita Electric Ind Co Ltd Coordination operation method for operating system
JPH03100831A (en) * 1989-09-14 1991-04-25 Hitachi Ltd Task scheduling method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0185378A2 (en) * 1984-12-19 1986-06-25 Hitachi, Ltd. Virtual computer system
JPH0324633A (en) * 1989-06-21 1991-02-01 Matsushita Electric Ind Co Ltd Coordination operation method for operating system
JPH03100831A (en) * 1989-09-14 1991-04-25 Hitachi Ltd Task scheduling method

Also Published As

Publication number Publication date
JPH0532771B2 (en) 1993-05-17

Similar Documents

Publication Publication Date Title
JP3776449B2 (en) Multitasking low power controller
EP0384635B1 (en) Adaptive job scheduling for multiprocessing systems
JP2011022627A (en) Computer system, virtual machine monitor, and scheduling method for the virtual machine monitor
JPH0776894B2 (en) Clock signal control method for processor and information processing system
US20110078702A1 (en) Multiprocessor system
US20120030675A1 (en) Computer system
EP0362880B1 (en) Process for partially swapping real storage areas used by a program between a real storage and an auxiliary storage
US20090241112A1 (en) Recording medium recording virtual machine control program and virtual machine system
KR101673247B1 (en) Processor with assignable general purpose register set
CN109766168B (en) Task scheduling method and device, storage medium and computing equipment
JPH06243112A (en) Multiprocessor device
JPS59125450A (en) Virtual computer control system
JP2001117786A (en) Process scheduling device and process scheduling method
EP0049521A2 (en) Information processing system
EP0223463B1 (en) Multiprocessor data processing system
JPS603229B2 (en) Information processing method
JPH0612395A (en) Task allocating method in multiprocessor system
KR100728899B1 (en) High Performance Embedded Processor with Multiple Register Sets and Hardware Context Manager
JP2000322277A (en) Task management device
US20210149705A1 (en) Method of accessing device in virtual environment
JP2002312302A (en) Peripheral device
JPH0644234B2 (en) Task management device
JPS6152761A (en) Arithmetic unit
JPH07182168A (en) Arithmetic unit and its control method
JPS6126095B2 (en)