JPH0784884A - Virtual computer system - Google Patents

Virtual computer system

Info

Publication number
JPH0784884A
JPH0784884A JP5225872A JP22587293A JPH0784884A JP H0784884 A JPH0784884 A JP H0784884A JP 5225872 A JP5225872 A JP 5225872A JP 22587293 A JP22587293 A JP 22587293A JP H0784884 A JPH0784884 A JP H0784884A
Authority
JP
Japan
Prior art keywords
level
address translation
virtual
virtual computer
translation buffer
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
JP5225872A
Other languages
Japanese (ja)
Inventor
Takahiko Shoyama
貴彦 庄山
Masayuki Sugioka
雅行 杉岡
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
Hitachi Computer Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Computer Engineering 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 Hitachi Ltd, Hitachi Computer Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP5225872A priority Critical patent/JPH0784884A/en
Publication of JPH0784884A publication Critical patent/JPH0784884A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To immediately discriminate the level of a virtual computer in processing by providing a current execution level managing means which holds the current execution level of the virtual computer at all times. CONSTITUTION:This system is equipped with a current level discriminating device (CVML and current execution level managing means) which holds the execution level of the virtual computer (OS) which currently runs. Then the state of the virtual computer system is changed from a process state by the OS which currently runs to a process state by another OS which is different in level, an entry (discrimination information entry) of a VMID stack 104 where discrimination information regarding the transition OS is already registered is made effective and selected by using a VMID stack selecting circuit 103 if the discrimination information is registered, but when the information is not registered yet, a VM identifier and its execution level corresponding to the OS as the destination of the transition are newly registered in a VMIDS (VM identifier storage filed) 105 and a VML (execution level storage field) 106.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は仮想計算機システムに係
り、特に、3レベル以上の仮想計算機の制御を同時に行
う仮想計算機システムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a virtual computer system, and more particularly to a virtual computer system for simultaneously controlling virtual computers of three or more levels.

【0002】[0002]

【従来の技術】従来より、単一の実計算機上で仮想計算
機制御プログラム(Virtual MachineControl Program,
以後、“VMCP”と略記する)を動作させ、VMC
Pの制御下で複数のオペレーティングシステム(OS)
を同時実行させることにより、複数の仮想計算機を構築
する仮想計算機システムが知られている。
2. Description of the Related Art Conventionally, a virtual machine control program (Virtual Machine Control Program,
(Hereinafter abbreviated as “VMCP”)
Multiple operating systems (OS) under control of P
There is known a virtual computer system that constructs a plurality of virtual computers by simultaneously executing.

【0003】一般に、仮想記憶方式を用いる情報処理装
置においては、仮想計算機から仮想記憶上の命令やデー
タに対するアクセスを行う際に指定される論理アドレス
を、実計算機に設けられている主記憶上の絶対アドレス
(以後、“物理アドレス”と記述する)に変換しなけれ
ばならない。そこで、上記従来の仮想計算機システムで
は、実計算機上で動作中のVMCP(以後、“LEVEL-
OS”と記述する)が、LEVEL-OS上の仮想アドレス
空間における論理アドレス(以後、“LEVEL-論理アド
レス”と記述する)と物理アドレスとの対応関係を示す
アドレス変換テーブル(以後、“LEVEL-変換テーブ
ル”と記述する)の管理を行って仮想アドレス空間を生
成するとともに、LEVEL-OSにおける仮想アドレス空
間上で下位レベルの仮想計算機のOS(以後、“LEVEL-
OS”と記述する)を動作させている。そして、LEVE
L-OSは、LEVEL-OS上の仮想アドレス空間におけ
る論理アドレス(以後、“LEVEL-論理アドレス”と記
述する)とLEVEL-論理アドレスとの対応関係を示すア
ドレス変換テーブル(以後、“LEVEL-変換テーブル”
と記述する)の管理を行って仮想アドレス空間を生成し
ている。すなわち、LEVEL-論理アドレスと物理アドレ
スとの変換を行うためには、LEVEL-変換テーブルおよ
びLEVEL-変換テーブルの2組のアドレス変換テーブル
を用いてアドレス変換を行う必要があった。例えば、I
BM社発行の“IBM System/370 Extended Architecture
Interpretive Execution”(SA22-7095)において、この
2段階のアドレス変換をハードウェアにより実現する方
法が紹介されている。
Generally, in an information processing apparatus using a virtual memory system, a logical address designated when a virtual computer accesses an instruction or data in the virtual memory is stored in a main memory provided in a real computer. It must be converted to an absolute address (hereinafter referred to as "physical address"). Therefore, in the above-mentioned conventional virtual computer system, a VMCP (hereinafter referred to as "LEVEL-
"OS") is an address conversion table (hereinafter "LEVEL-") showing the correspondence between a logical address in the virtual address space on LEVEL-OS (hereinafter "LEVEL-logical address") and a physical address. A virtual address space is generated by managing a "translation table"), and the OS of a virtual computer at a lower level on the virtual address space in the LEVEL-OS (hereinafter, "LEVEL-OS").
OS) and run LEVE.
The L-OS is an address conversion table (hereinafter referred to as “LEVEL-conversion”) showing a correspondence relationship between a logical address in the virtual address space on the LEVEL-OS (hereinafter referred to as “LEVEL-logical address”) and a LEVEL-logical address. table"
Is described) and a virtual address space is generated. That is, in order to perform the conversion between the LEVEL-logical address and the physical address, it is necessary to perform the address conversion using the two sets of address conversion tables of the LEVEL-conversion table and the LEVEL-conversion table. For example, I
"IBM System / 370 Extended Architecture" issued by BM
In "Interpretive Execution" (SA22-7095), a method of realizing this two-stage address conversion by hardware is introduced.

【0004】上述したアドレス変換テーブルを用いて得
られたアドレス変換情報(個別の論理アドレスに対応す
る物理アドレスの情報)は、アドレス変換バッファ(Tr
anslation Lookaside Buffer,以後、“TLB”と記述
する)に登録される。TLBに関連する従来技術は、特
公昭61-22825号公報,特公昭 58-8073号公報,特開平1-
163838号公報などにおいて開示されている。
The address translation information (physical address information corresponding to each individual logical address) obtained by using the above-mentioned address translation table is stored in the address translation buffer (Tr.
anslation Lookaside Buffer, hereinafter referred to as "TLB"). Prior arts related to TLB are disclosed in Japanese Patent Publication No. Sho 61-22825, Japanese Patent Publication No. 58-8073, and Japanese Unexamined Patent Publication No.
It is disclosed in Japanese Patent No. 163838.

【0005】特公昭61-22825号公報における仮想計算機
システムでは、単一のTLB上に、LEVEL-OSに関す
るエントリ(LEVEL-論理アドレスと物理アドレスとの
対応を示すアドレス変換情報)と、現在走行中のLEVEL-
OSに関するエントリ(LEVEL-論理アドレスと物理
アドレスとの対応を示すアドレス変換情報)の2種類の
エントリのみを保持している。また、特公昭 58-8073号
公報における仮想計算機システムでは、上記TLBのフ
ィールドを拡張して、アドレス変換情報に対して当該ア
ドレス変換情報がLEVEL-OSまたは複数のLEVEL-O
Sのいずれに関するものであるのかを識別するための仮
想計算機識別子(以後、“VM識別子”と記述する)を付
加することにより、TLB上にLEVEL-OSおよび複数
のLEVEL-OSの2種類以上のエントリを同時に保持す
ることを可能としている。さらに、特開平1-163838号公
報における仮想計算機システムでは、TLB中にアドレ
ス変換情報を保持しているか否かを識別する手段を設け
ることによって、TLBに係わる制御を効率的に行うこ
とを可能としている。
In the virtual computer system disclosed in Japanese Patent Publication No. Sho 61-22825, an entry (LEVEL-address conversion information indicating correspondence between a logical address and a physical address) related to the LEVEL-OS is currently running on a single TLB. LEVEL-
Only two types of entries of the OS-related entries (LEVEL-address conversion information indicating the correspondence between the logical address and the physical address) are held. In the virtual computer system disclosed in Japanese Patent Publication No. 58-8073, the TLB field is expanded so that the address translation information is LEVEL-OS or a plurality of LEVEL-Os.
By adding a virtual machine identifier (hereinafter referred to as “VM identifier”) for identifying which one of the S is related to LEVEL-OS and two or more LEVEL-OSs on the TLB. It is possible to hold entries at the same time. Further, in the virtual computer system disclosed in Japanese Patent Laid-Open No. 1-163838, by providing a means for identifying whether or not the address translation information is held in the TLB, it is possible to efficiently perform the control related to the TLB. There is.

【0006】ところで近年では、LEVEL-OS(VMC
P)の制御下で動作する仮想計算機であるLEVEL-OS
の一種としてVMCPを使用することにより、LEVEL-
OS(VMCP)の制御下で仮想計算機すなわちLEVEL-
OSをさらに動作させる技術が、例えば特開平 4-856
42号公報において開示されている。
By the way, in recent years, LEVEL-OS (VMC
LEVEL-OS which is a virtual machine operating under control of P)
By using VMCP as a type of LEVEL-
Under the control of OS (VMCP), a virtual machine, namely LEVEL-
A technique for further operating the OS is disclosed in, for example, Japanese Patent Laid-Open No. 4-856.
No. 42 publication.

【0007】[0007]

【発明が解決しようとする課題】上述した特公昭 58-80
73号公報や特開平1-163838号公報における仮想計算機シ
ステムでは、TLB上にLEVEL-OSおよび複数のLEVE
L-OSに関する2種類以上のエントリ(アドレス変換
情報)を同時に保持することを可能としている。しかし
ながら、LEVEL-OS(VMCP)の制御下で仮想計算
機すなわちLEVEL-OSがさらに動作している場合に、
TLBに登録されているアドレス変換情報をどのように
処理するのかについては考慮されていなかった。
[Problems to be Solved by the Invention] Japanese Patent Publication No. 58-80
In the virtual computer system disclosed in Japanese Patent Laid-Open No. 73 or Japanese Patent Laid-Open No. 1-163838, a LEVEL-OS and a plurality of LEVEs are installed on the TLB.
It is possible to simultaneously hold two or more types of entries (address translation information) related to the L-OS. However, when the virtual machine, that is, LEVEL-OS is further operating under the control of LEVEL-OS (VMCP),
No consideration was given to how to process the address translation information registered in the TLB.

【0008】例えば、OSが当該OSに関するすべての
アドレス変換情報を無効化する場合には、TLBに登録
されているすべてのエントリを無効とするパージTLB
命令(以後、“PTLB命令”と記述する)を発行す
る。このとき、PTLB命令を発行したのがLEVEL-O
Sであれば、TLB上の当該LEVEL-OSに対応するエ
ントリのみを無効とする。また、PTLB命令を発行し
たのがLEVEL-OSであれば、TLB上のLEVEL-OS
を含むすべてのエントリを無効とする。これは、LEVEL-
論理アドレスと物理アドレスとの個別的な対応関係を
示すアドレス変換情報は、LEVEL-変換テーブルおよび
LEVEL-変換テーブルを参照して生成されるので、LEVE
L-論理アドレスを無効化すれば、LEVEL-OSの制御
下で動作する仮想計算機であるLEVEL-OSにおける仮
想アドレス空間を示すLEVEL-論理アドレスも無効にし
なければならないからである。このようにTLBの内容
を矛盾がないように書き換えることで、上記従来の仮想
計算機システムの正常動作が保証されていた。
For example, when the OS invalidates all address translation information relating to the OS, the purge TLB that invalidates all the entries registered in the TLB.
An instruction (hereinafter referred to as "PTLB instruction") is issued. At this time, the LEVEL-O issued the PTLB instruction.
If S, only the entry corresponding to the LEVEL-OS on the TLB is invalidated. If the LEVEL-OS issued the PTLB command, the LEVEL-OS on the TLB is issued.
Invalidate all entries including. This is LEVEL-
Address conversion information that indicates the individual correspondence between logical addresses and physical addresses is provided in the LEVEL-conversion table and
LEVEL-Because it is generated by referring to the conversion table, LEVE
This is because if the L-logical address is invalidated, the LEVEL-logical address indicating the virtual address space in the LEVEL-OS which is a virtual computer operating under the control of the LEVEL-OS must also be invalidated. By thus rewriting the contents of the TLB so that there is no contradiction, the normal operation of the conventional virtual computer system is guaranteed.

【0009】しかしながら、LEVEL-OSとしてVMC
Pが使用され、その制御下で動作中のLEVEL-OSに対
応するエントリ(アドレス変換情報)がTLBに登録さ
れていた場合には、LEVEL-OS(VMCP)がPTL
B命令を発行するとTLBにおける当該LEVEL-OSに
対応するエントリのみが無効とされ、当該LEVEL-OS
の制御下で動作中のLEVEL-OSに対応するエントリは
有効のままとなってしまうため、PTLB命令が実行さ
れた後のTLBの内容が矛盾して、仮想計算機システム
の正常動作を保証することができないという問題点があ
った。
However, VMC as LEVEL-OS
When P is used and the entry (address translation information) corresponding to the LEVEL-OS operating under the control is registered in the TLB, the LEVEL-OS (VMCP) is the PTL.
Issuing the B command invalidates only the entry corresponding to the LEVEL-OS in the TLB, and the LEVEL-OS in question
Since the entry corresponding to the LEVEL-OS operating under the control of the above will remain valid, the content of the TLB after the PTLB instruction is executed is inconsistent and the normal operation of the virtual computer system is guaranteed. There was a problem that I could not do it.

【0010】したがって本発明の目的は、上記の問題点
を解決して、LEVEL-OSの制御下で一以上のLEVEL-
OSを(さらには一以上のLEVEL-OS,LEVEL-OS
を)動作させる場合に、当該LEVEL-OS(LEVEL-O
S,LEVEL-OS)に対応するエントリ(アドレス変換
情報)を混在させて保持できるTLBを設け、上記PT
LB命令などのTLBに係わる処理を実行してもTLB
の内容が矛盾しないように仮想計算機システムの正常動
作を保証し、従来と同様にLEVEL-OS,LEVEL-OS
に対応するエントリのみがTLBに登録されている場合
に、従来と同様の処理性能を維持する仮想計算機システ
ムを提供することにある。
Therefore, an object of the present invention is to solve the above problems and to provide one or more LEVEL- under the control of LEVEL-OS.
OS (more than one LEVEL-OS, LEVEL-OS
When operating the LEVEL-OS (LEVEL-O)
S, LEVEL-OS) is provided with a TLB capable of holding a mixture of entries (address conversion information) corresponding to
Even if the TLB-related processing such as the LB instruction is executed, the TLB is
The normal operation of the virtual computer system is guaranteed so that the contents of the LEVEL-OS and LEVEL-OS are not changed.
It is an object of the present invention to provide a virtual computer system that maintains the same processing performance as in the past when only the entry corresponding to is registered in the TLB.

【0011】[0011]

【課題を解決するための手段】[Means for Solving the Problems]

(1) 上記の目的を達成するため、本発明の仮想計算機シ
ステムは、実計算機上または仮想計算機上に1レベル以
上にわたって生成された複数の前記仮想計算機をそれぞ
れ制御する仮想計算機制御手段を有する仮想計算機シス
テムにおいて、前記実計算機の制御を行う制御装置によ
って読み書きされ、いずれのレベルの前記仮想計算機が
前記実計算機上で現在処理されているのかを示す現実行
レベルを常に保持する現実行レベル管理手段を具備する
構成としたものである。
(1) In order to achieve the above object, the virtual computer system of the present invention has a virtual computer control means for controlling a plurality of the virtual computers generated over one level or more on a real computer or a virtual computer. In a computer system, a current execution level management means for always holding a current execution level that is read and written by a control device that controls the real computer and indicates which level of the virtual computer is currently being processed on the real computer. It is configured to include.

【0012】(2) そして、(1) の構成に加えて、前記制
御装置によって読み書きされ、前記実計算機上に同時に
存在する前記仮想計算機の各々について、前記仮想計算
機を識別する識別子とその実行レベルからなる識別情報
エントリを保持する識別情報保持手段と、前記制御装置
による読み書きの対象とする前記識別情報エントリを選
択する識別情報選択手段とを具備する構成としたもので
ある。
(2) In addition to the configuration of (1), an identifier for identifying the virtual computer and its execution level for each of the virtual computers that are read and written by the control device and simultaneously exist on the real computer. And an identification information selection unit that selects the identification information entry to be read and written by the control device.

【0013】(3) また、さらに(2) の構成に加えて、前
記制御装置からの指示で動作するアドレス変換バッファ
制御装置によって読み書きされ、前記識別子,前記仮想
計算機上で指定される論理アドレス,前記論理アドレス
に対応する前記実計算機上の物理アドレスの三者からな
るアドレス変換情報と前記アドレス変換情報の有効性を
示す登録済フラグとからなるアドレス変換バッファエン
トリを、前記仮想計算機の各々について一以上保持する
アドレス変換バッファと、前記アドレス変換バッファ制
御装置による読み書きの対象とする前記アドレス変換バ
ッファエントリを選択するアドレス変換バッファ選択手
段とを具備する構成としたものである。
(3) Further, in addition to the configuration of (2), the identifier, the logical address designated on the virtual computer, which is read and written by the address translation buffer control device which operates according to an instruction from the control device, An address translation buffer entry consisting of address translation information consisting of three of the physical addresses on the real computer corresponding to the logical address and a registered flag indicating the validity of the address translation information is provided for each of the virtual computers. The above-mentioned address translation buffer and the address translation buffer selection means for selecting the address translation buffer entry to be read and written by the address translation buffer control device are provided.

【0014】(4) また、(1) の構成に加えて、前記制御
装置からの指示で動作するアドレス変換バッファ制御装
置によって読み書きされ、前記識別子,前記仮想計算機
上で指定される論理アドレス,前記論理アドレスに対応
する前記実計算機上の物理アドレス,前記識別子で示さ
れる前記仮想計算機の実行レベルの四者からなるアドレ
ス変換・実行レベル情報と前記アドレス変換・実行レベ
ル情報の有効性を示す登録済フラグとからなるアドレス
変換バッファエントリを、前記仮想計算機の各々につい
て一以上保持するアドレス変換バッファと、前記アドレ
ス変換バッファ制御装置による読み書きの対象とする前
記アドレス変換バッファエントリを選択するアドレス変
換バッファ選択手段とを具備する構成としたものであ
る。
(4) In addition to the configuration of (1), the identifier, the logical address specified on the virtual computer, which is read and written by the address translation buffer control device which operates according to an instruction from the control device, A physical address on the real computer corresponding to a logical address, address translation / execution level information consisting of four execution levels of the virtual computer indicated by the identifier, and registered indicating the validity of the address translation / execution level information. An address translation buffer that holds one or more address translation buffer entries each of which includes a flag, and an address translation buffer selection unit that selects the address translation buffer entry to be read and written by the address translation buffer controller. And is configured to include.

【0015】[0015]

【作用】上記構成に基づく作用を説明する。The operation based on the above configuration will be described.

【0016】(1) 本発明の仮想計算機システムでは、実
計算機上または仮想計算機上に1レベル以上にわたって
生成された複数の前記仮想計算機をそれぞれ制御する仮
想計算機制御手段を有する仮想計算機システムにおい
て、前記実計算機の制御を行う制御装置によって読み書
きされ、いずれのレベルの前記仮想計算機が前記実計算
機上で現在処理されているのかを示す現実行レベルを常
に保持する現実行レベル管理手段を具備する構成とした
ため、制御装置は、どのような時点においても現実行レ
ベル管理手段を参照することにより、処理中の仮想計算
機のレベル(現実行レベル)を即座に識別することがで
きる。
(1) In the virtual computer system of the present invention, in the virtual computer system having virtual computer control means for controlling each of the plurality of virtual computers generated over one level or more on the real computer or the virtual computer, A configuration comprising a current execution level management means for always holding a current execution level which is read and written by a control device for controlling a real computer and indicates which level of the virtual computer is currently being processed on the real computer; Therefore, the control device can immediately identify the level (current execution level) of the virtual computer being processed by referring to the current execution level management means at any time.

【0017】(2) そして、(1) の構成に加えて、前記制
御装置によって読み書きされ、前記実計算機上に同時に
存在する前記仮想計算機の各々について、前記仮想計算
機を識別する識別子とその実行レベルからなる識別情報
エントリを保持する識別情報保持手段と、前記制御装置
による読み書きの対象とする前記識別情報エントリを選
択する識別情報選択手段とを具備する構成としたため、
識別情報選択手段を用いて識別情報保持手段を参照し、
上記によって現実行レベル管理手段を用いて識別された
現実行レベルと一致する実行レベルに対応する識別子を
得ることにより、処理中の仮想計算機を特定することが
できる。
(2) In addition to the configuration of (1), an identifier for identifying the virtual computer and its execution level for each of the virtual computers that are read and written by the control device and are simultaneously present on the real computer. Since it is configured to include an identification information holding unit that holds an identification information entry consisting of, and an identification information selection unit that selects the identification information entry to be read and written by the control device,
Referring to the identification information holding means using the identification information selection means,
By obtaining the identifier corresponding to the execution level that matches the current execution level identified by the current execution level management means as described above, it is possible to specify the virtual computer being processed.

【0018】(3) また、さらに(2) の構成に加えて、前
記制御装置からの指示で動作するアドレス変換バッファ
制御装置によって読み書きされ、前記識別子,前記仮想
計算機上で指定される論理アドレス,前記論理アドレス
に対応する前記実計算機上の物理アドレスの三者からな
るアドレス変換情報と前記アドレス変換情報の有効性を
示す登録済フラグとからなるアドレス変換バッファエン
トリを、前記仮想計算機の各々について一以上保持する
アドレス変換バッファと、前記アドレス変換バッファ制
御装置による読み書きの対象とする前記アドレス変換バ
ッファエントリを選択するアドレス変換バッファ選択手
段とを具備する構成としたため、上記によって特定され
た処理中の仮想計算機(例えばLEVEL-OS)につい
て、対応する一以上のアドレス変換バッファエントリ
(すなわち、識別子がLEVEL-OSを示すエントリ)の
選択およびこれに対する読み書きや無効化などの処理を
自動的に行うとともに、処理中の仮想計算機(LEVEL-
OS)上に生成されている仮想計算機(LEVEL-OS,
LEVEL-OS,……)についても、同様にアドレス変換
バッファエントリ(すなわち、識別子がLEVEL-OS,
LEVEL-OS,……を示すエントリ)の選択およびこれ
に対する読み書きや無効化などの処理を自動的に行っ
て、アドレス変換バッファの内容が矛盾しないように仮
想計算機システムの正常動作を保証することができる。
また、処理中の仮想計算機(LEVEL-OS)上に仮想計
算機が生成されていない場合(すなわち、LEVEL-O
S,LEVEL-OSに対応するアドレス変換バッファエン
トリのみが登録されている場合)には、従来と同様の処
理性能を維持することができる。
(3) Further, in addition to the configuration of (2), the identifier, the logical address specified on the virtual computer, which is read and written by the address translation buffer control device which operates according to an instruction from the control device, An address translation buffer entry consisting of address translation information consisting of three of the physical addresses on the real computer corresponding to the logical address and a registered flag indicating the validity of the address translation information is provided for each of the virtual computers. Since the address translation buffer is held and the address translation buffer selection means for selecting the address translation buffer entry to be read and written by the address translation buffer control device is provided, the virtual machine under processing specified by the above For a computer (eg LEVEL-OS), one or more corresponding ads Scan conversion buffer entry (i.e., identifier entry indicating LEVEL-OS) with automatically performs processes such as selection and read-write and invalidate to this, the in process virtual machine (LEVEL-
Virtual machine (LEVEL-OS, which is created on the OS)
Similarly, for LEVEL-OS, ..., the address translation buffer entry (that is, the identifier is LEVEL-OS,
LEVEL-OS, etc.) is automatically selected, and processing such as reading, writing, and invalidation is automatically performed to ensure normal operation of the virtual computer system so that the contents of the address translation buffer are not inconsistent. it can.
In addition, when the virtual machine is not created on the virtual machine (LEVEL-OS) being processed (that is, LEVEL-O)
In the case where only the address translation buffer entry corresponding to S and LEVEL-OS is registered), the processing performance similar to the conventional one can be maintained.

【0019】(4) また、(1) の構成に加えて、前記制御
装置からの指示で動作するアドレス変換バッファ制御装
置によって読み書きされ、前記識別子,前記仮想計算機
上で指定される論理アドレス,前記論理アドレスに対応
する前記実計算機上の物理アドレス,前記識別子で示さ
れる前記仮想計算機の実行レベルの四者からなるアドレ
ス変換・実行レベル情報と前記アドレス変換・実行レベ
ル情報の有効性を示す登録済フラグとからなるアドレス
変換バッファエントリを、前記仮想計算機の各々につい
て一以上保持するアドレス変換バッファと、前記アドレ
ス変換バッファ制御装置による読み書きの対象とする前
記アドレス変換バッファエントリを選択するアドレス変
換バッファ選択手段とを具備する構成としたため、上記
によって現実行レベル管理手段を用いて識別された現実
行レベルと一致する実行レベルを含む一以上のアドレス
変換バッファエントリを、処理中の仮想計算機に対応す
るものとして選択し、これに対する読み書きや無効化な
どの処理を行うことができる。また、上記によって特定
された処理中の仮想計算機(例えばLEVEL-OS)につ
いて、対応する一以上のアドレス変換バッファエントリ
(すなわち、識別子がLEVEL-OSを示すエントリ)の
選択およびこれに対する読み書きや無効化などの処理を
自動的に行うとともに、処理中の仮想計算機(LEVEL-
OS)上に生成されている仮想計算機(LEVEL-OS,
LEVEL-OS,……)についても、同様にアドレス変換
バッファエントリ(すなわち、識別子がLEVEL-OS,
LEVEL-OS,……を示すエントリ)の選択およびこれ
に対する読み書きや無効化などの処理を自動的に行っ
て、アドレス変換バッファの内容が矛盾しないように仮
想計算機システムの正常動作を保証することができる。
また、処理中の仮想計算機(LEVEL-OS)上に仮想計
算機が生成されていない場合(すなわち、LEVEL-O
S,LEVEL-OSに対応するアドレス変換バッファエン
トリのみが登録されている場合)には、従来と同様の処
理性能を維持することができる。
(4) In addition to the configuration of (1), the identifier, the logical address specified on the virtual computer, which is read and written by the address translation buffer controller that operates according to an instruction from the controller, A physical address on the real computer corresponding to a logical address, address translation / execution level information consisting of four execution levels of the virtual computer indicated by the identifier, and registered indicating the validity of the address translation / execution level information. An address translation buffer that holds one or more address translation buffer entries each of which includes a flag, and an address translation buffer selection unit that selects the address translation buffer entry to be read and written by the address translation buffer controller. Since the configuration is provided with, One or more address translation buffer entries containing execution levels that match the current execution level identified using the management means are selected as those that correspond to the virtual machine that is being processed, and processing such as read / write or invalidation for this is selected. It can be carried out. Further, for the virtual machine under processing (for example, LEVEL-OS) specified above, selection of one or more corresponding address translation buffer entries (that is, an entry whose identifier indicates LEVEL-OS) and reading / writing or invalidation thereof Etc. is automatically performed and the virtual machine (LEVEL-
Virtual machine (LEVEL-OS, which is created on the OS)
Similarly, for LEVEL-OS, ..., the address translation buffer entry (that is, the identifier is LEVEL-OS,
LEVEL-OS, etc.) is automatically selected, and processing such as reading, writing, and invalidation is automatically performed to ensure normal operation of the virtual computer system so that the contents of the address translation buffer are not inconsistent. it can.
In addition, when the virtual machine is not created on the virtual machine (LEVEL-OS) being processed (that is, LEVEL-O)
In the case where only the address translation buffer entry corresponding to S and LEVEL-OS is registered), the processing performance similar to the conventional one can be maintained.

【0020】[0020]

【実施例】以下、本発明の仮想計算機システムの一実施
例を、いくつかの図面を用いて詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of a virtual computer system of the present invention will be described in detail below with reference to some drawings.

【0021】図1は、本発明の仮想計算機システムの一
実施例の構成を示す機能ブロック図である。同図中、1
01は接続された他の装置の制御および管理,データ転
送,データの加工などを行う制御装置(CU)、102
は現在走行しているOS(仮想計算機)の実行レベルを
保持する実行レベル識別装置(CVML,現実行レベル
管理手段)、104はVM識別子(識別名称)の管理を
行うVMIDスタック(識別情報保持手段)、103は
VMIDスタック104におけるどのエントリ(識別情
報エントリ)に対して読み書きを行うかを指定するVM
IDスタック選択回路(識別情報選択手段)、109は
アドレス変換バッファ(TLB)、108はTLB10
9におけるどのエントリ(アドレス変換バッファエント
リ)に対して読み書きを行うかを指定するアドレス変換
バッファ選択回路(TLB選択回路,アドレス変換バッ
ファ選択手段)、107はTLB選択回路108の制御
および管理とTLB109に対するデータの読み書きを
行うアドレス変換バッファ制御装置(TLB制御装置)
である。
FIG. 1 is a functional block diagram showing the configuration of an embodiment of the virtual computer system of the present invention. 1 in the figure
01 is a control unit (CU) for controlling and managing other connected devices, data transfer, data processing, and the like, 102
Is an execution level identification device (CVML, current execution level management means) that holds the execution level of the currently running OS (virtual computer), and 104 is a VMID stack (identification information holding means) that manages the VM identifier (identification name). ), 103 is a VM that specifies which entry (identification information entry) in the VMID stack 104 to read / write.
ID stack selection circuit (identification information selection means), 109 is an address translation buffer (TLB), and 108 is TLB10.
9, an address translation buffer selection circuit (TLB selection circuit, address translation buffer selection means) for designating which entry (address translation buffer entry) in 9 is to be read or written, and 107 controls and manages the TLB selection circuit 108 and TLB 109. Address translation buffer controller (TLB controller) for reading and writing data
Is.

【0022】CVML102における現実行レベルは、
各々の実行レベルのOSに遷移が行われるときに、当該
OSの実行レベルに対応する値が設定される。VMID
スタック104における各エントリは、OSを特定する
VM識別子が記録されるVM識別子格納フィールド(V
MIDS)105と、当該OSの実行レベルが記録され
る実行レベル格納フィールド(VML)106から構成
される。TLB109における各エントリは、当該エン
トリに記録されたデータが有効であるか否かを示す登録
済フラグ(V)110、OSを特定するVM識別子が記
録されるVM識別子格納フィールド(VMIDT)11
1、当該OS上の仮想アドレス空間における論理アドレ
スが記録される論理アドレス格納フィールド(LA)1
12、論理アドレスに対応する実計算機上の物理アドレ
スが記録される物理アドレス格納フィールド(PA)1
13から構成され、各フィールドの内容は、アドレス変
換が行われたときに登録または更新される。また、TL
B109中のVMIDT111には、VMIDスタック
選択回路103によって選択されたVMIDS105の
内容が格納され、通常のアドレス変換が行われる場合に
は、現在走行しているOSに対応するエントリがTLB
選択回路108によって選択されている。
The current execution level in CVML 102 is
When a transition is made to the OS of each execution level, a value corresponding to the execution level of the OS is set. VMID
Each entry in the stack 104 has a VM identifier storage field (V
MIDS) 105 and an execution level storage field (VML) 106 in which the execution level of the OS is recorded. Each entry in the TLB 109 has a registered flag (V) 110 indicating whether or not the data recorded in the entry is valid, and a VM identifier storage field (VMIDT) 11 in which a VM identifier specifying the OS is recorded.
1. A logical address storage field (LA) 1 in which a logical address in the virtual address space on the OS is recorded
12, a physical address storage field (PA) 1 in which the physical address on the real computer corresponding to the logical address is recorded
The contents of each field are registered or updated when the address conversion is performed. Also, TL
The VMIDT 111 in B109 stores the contents of the VMIDS 105 selected by the VMID stack selection circuit 103, and when normal address translation is performed, the entry corresponding to the currently running OS is TLB.
It is selected by the selection circuit 108.

【0023】図2および図3は、図1の仮想計算機シス
テムにおけるPTLB命令の処理を示す説明図であり、
図2は全体の処理フローを、図3は共通の処理フロー
を、それぞれ表わしている。PTLB命令が発行される
と、ステップ200でCU101がCVML102を参
照して現在のOSすなわちPTLB命令を発行したOS
のレベルを識別し、そのレベルに応じて分岐する。な
お、本実施例ではLEVEL-OS,LEVEL-OS,LEVEL-
OSの3レベルのOSが同時に実行されているものと
する。
2 and 3 are explanatory views showing the processing of the PTLB instruction in the virtual computer system of FIG.
FIG. 2 shows an overall processing flow, and FIG. 3 shows a common processing flow. When the PTLB instruction is issued, the CU 101 refers to the CVML 102 in step 200, and the current OS, that is, the OS that issued the PTLB instruction.
Identify the level of and branch according to that level. In this embodiment, LEVEL-OS, LEVEL-OS, LEVEL-OS
It is assumed that three levels of OS, OS, are being executed at the same time.

【0024】(1) PTLB命令を発行したOSがLEVEL-
OSであった場合 この場合には、ステップ200からステップ211に分
岐する。ステップ211では、CU101からの指示に
より、TLB109におけるすべてのTLBエントリ
(アドレス変換バッファエントリ)を、TLBCU10
7がTLB選択回路108を用いて順次選択し、V11
0をリセットする。これによってすべてのTLBエント
リの無効化が行われる。
(1) The OS that issued the PTLB instruction is LEVEL-
In the case of OS In this case, the process branches from step 200 to step 211. In step 211, all the TLB entries (address translation buffer entries) in the TLB 109 are transferred to the TLBCU 10 according to an instruction from the CU 101.
7 sequentially uses the TLB selection circuit 108 to select V11.
Reset 0. This invalidates all TLB entries.

【0025】(2) PTLB命令を発行したOSがLEVEL-
OSであった場合 この場合には、ステップ200からステップ221に分
岐する。ステップ221では、VMIDスタック選択回
路103を用いてVMIDスタック104におけるすべ
ての有効なエントリ(識別情報エントリ)を選択し、V
ML106を検索することによってTLB109中にLE
VEL-OSのアドレス変換情報が登録されているかどう
かを識別し、この結果に応じて分岐する。
(2) The OS that issued the PTLB instruction is LEVEL-
In the case of OS In this case, the process branches from step 200 to step 221. In step 221, all valid entries (identification information entries) in the VMID stack 104 are selected using the VMID stack selection circuit 103, and V
LE in TLB109 by searching ML106
It is identified whether or not the address translation information of VEL-OS is registered, and the process branches depending on the result.

【0026】(2)-a TLB109中にLEVEL-OSのア
ドレス変換情報が登録されていない場合 この場合には、ステップ221からステップ231に分
岐する。ステップ231では、図3にその詳細を示す共
通処理Aが行われる。共通処理Aのステップ301にお
いて、CU101は、VMIDスタック選択回路103
を用いてVMIDスタック104のエントリ(識別情報
エントリ)の中から現在走行中のLEVEL-OSに対応す
るエントリを選択し、当該エントリ中のVMIDS10
5に登録されているVM識別子をTLBCU107に報
告させる。そしてステップ302において、CU101
からの指示に応じて、TLBCU107は、TLB選択
回路108を用いて上記によって報告されたVM識別子
が登録されているVMIDT111を含むすべてのエン
トリを選択し、当該エントリ中のV110をリセットす
る。これによって、現在走行中のLEVEL-OSに対応す
るアドレス変換情報のみの無効化が行われる。
(2) -a When the LEVEL-OS address translation information is not registered in the TLB 109 In this case, the process branches from step 221 to step 231. In step 231, a common process A whose details are shown in FIG. 3 is performed. In step 301 of the common processing A, the CU 101 determines that the VMID stack selection circuit 103
Is used to select an entry corresponding to the currently running LEVEL-OS from the entries (identification information entries) of the VMID stack 104, and the VMIDS 10 in the entry is selected.
The VM identifier registered in 5 is reported to the TLBCU 107. Then, in step 302, the CU 101
In response to the instruction from the TLBCU 107, the TLBCU 107 selects all the entries including the VMIDT 111 in which the VM identifier reported above is registered using the TLB selection circuit 108, and resets the V110 in the entry. As a result, only the address translation information corresponding to the currently running LEVEL-OS is invalidated.

【0027】(2)-b TLB109中にLEVEL-OSのア
ドレス変換情報が登録されている場合 この場合には、ステップ221からステップ222に分
岐する。ステップ222では、現在走行中のLEVEL-O
Sについて前述した共通処理Aが行われる。ステップ2
23において、CU101は、VMIDスタック選択回
路103を用いてVMIDスタック104のエントリ
(識別情報エントリ)の中から現在走行中のLEVEL-O
S(VMCP)の制御下にあるLEVEL-OSに対応する
エントリのひとつを選択し、当該エントリ中のVMID
S105に登録されているVM識別子をTLBCU10
7に報告させる。ステップ224において、CU101
からの指示に応じて、TLBCU107は、TLB選択
回路108を用いて上記によって報告されたVM識別子
が登録されているVMIDT111を含むすべてのエン
トリを選択し、当該エントリ中のV110をリセットす
る。これによって、現在走行中のLEVEL-OS(VMC
P)の制御下にあるLEVEL-OSのひとつに対応するア
ドレス変換情報のみの無効化が行われる。ステップ22
5において、CU101は、VMIDスタック選択回路
103を用いてVMIDスタック104中のVML10
6を検索することにより、他のLEVEL-OSが現在走行
中のLEVEL-OS(VMCP)の制御下に存在するか否
かを判別して、存在する場合にはステップ223に戻っ
て当該LEVEL-OSに対応するアドレス変換情報の無効
化を行う。これによって、現在走行中のLEVEL-OS
(VMCP)の制御下にあるLEVEL-OSのすべてに対
応するアドレス変換情報の無効化が行われる。
(2) -b When the LEVEL-OS address conversion information is registered in the TLB 109 In this case, the process branches from step 221 to step 222. In step 222, LEVEL-O currently running
The common process A described above is performed for S. Step two
At 23, the CU 101 uses the VMID stack selection circuit 103 to select the LEVEL-O currently running from among the entries (identification information entries) of the VMID stack 104.
Select one of the entries corresponding to LEVEL-OS under the control of S (VMCP), and select the VMID in the entry.
The VM identifier registered in S105 is set to TLBCU10.
Report to 7. In step 224, the CU 101
In response to the instruction from the TLBCU 107, the TLBCU 107 selects all the entries including the VMIDT 111 in which the VM identifier reported above is registered using the TLB selection circuit 108, and resets the V110 in the entry. As a result, the LEVEL-OS (VMC currently running)
Only the address translation information corresponding to one of the LEVEL-OSs under the control of P) is invalidated. Step 22
5, the CU 101 uses the VMID stack selection circuit 103 to set the VML 10 in the VMID stack 104.
By retrieving 6, it is determined whether or not another LEVEL-OS is under the control of the LEVEL-OS (VMCP) currently running, and if it is present, the process returns to step 223 and the LEVEL-OS concerned is returned. The address translation information corresponding to the OS is invalidated. As a result, the LEVEL-OS currently running
The address translation information corresponding to all LEVEL-OSs under the control of (VMCP) is invalidated.

【0028】(3) PTLB命令を発行したOSがLEVEL-
OSであった場合 この場合には、ステップ200からステップ231に分
岐する。ステップ231では、現在走行中のLEVEL-O
Sについて前述した共通処理Aが行われる。
(3) The OS that issued the PTLB instruction is LEVEL-
In the case of OS In this case, the process branches from step 200 to step 231. In step 231, the LEVEL-O currently running
The common process A described above is performed for S.

【0029】図4は、図1中のVMIDスタック104
に識別情報エントリを登録する処理を示す説明図であ
る。同図において、初期状態(例えば、電源投入の直後
など)の仮想計算機システムでは、必ずLEVEL-OSが
起動される。このときCU101は、VMIDスタック
104における有効なVMIDスタックエントリはただ
ひとつのLEVEL-OSのみであると認識して、当該VM
IDスタックエントリに対応するVMIDS150およ
びVML106に、LEVEL-OSであることを表わすV
M識別子およびその実行レベル“1”を格納する。これ
が、図中の“Start”時点におけるVMIDスタッ
ク104の状態である。
FIG. 4 shows the VMID stack 104 shown in FIG.
FIG. 5 is an explanatory diagram showing a process of registering an identification information entry in the. In the figure, the LEVEL-OS is always activated in the virtual computer system in the initial state (for example, immediately after power-on). At this time, the CU 101 recognizes that the valid VMID stack entry in the VMID stack 104 is only one LEVEL-OS, and the VM concerned.
The VMIDS 150 and the VML 106 corresponding to the ID stack entry have V indicating that they are LEVEL-OS.
The M identifier and its execution level “1” are stored. This is the state of the VMID stack 104 at the "Start" point in the figure.

【0030】仮想計算機システムの状態が、現在走行し
ているOS(例えば、LEVEL-OS)による処理状態か
らレベルの異なる他のOS(例えば、LEVEL-OS)に
よる処理状態に遷移が行われるときには、ステップ40
0において、CU101はこれから遷移しようとするO
S(LEVEL-OS)に関する識別情報がVMIDスタッ
ク10におけるエントリ(識別情報エントリ)にすでに
登録されているか否かを判別し、すでに登録されている
場合には、当該エントリを有効としてVMIDスタック
選択回路103を用いて選択する。また、まだ登録され
ていない場合には、これから遷移しようとするOS(LE
VEL-OS)に対応するVM識別子およびその実行レベ
ル(“2”)を、VMIDS105およびVML106
に新たに登録する。
When the state of the virtual computer system transits from the processing state by the currently running OS (for example, LEVEL-OS) to the processing state by another OS of different level (for example, LEVEL-OS), Step 40
At 0, the CU 101 is about to transition O
It is determined whether or not the identification information regarding S (LEVEL-OS) is already registered in the entry (identification information entry) in the VMID stack 10, and if it is already registered, the VMID stack selection circuit is considered to be valid. Select using 103. If it is not registered yet, the OS (LE
VMIDS 105 and VML 106 for the VM identifier and its execution level (“2”) corresponding to VEL-OS).
Register anew to.

【0031】以上のように本実施例によれば、複数のレ
ベルの仮想計算機についてのアドレス変換情報がTLB
に登録されている場合でも、処理中の仮想計算機に対応
するエントリ(アドレス変換バッファエントリ)のみを
選択して、これに対してPTLB命令を実行することが
できる。また、処理中の仮想計算機上に生成されている
仮想計算機についても、同様に対応するエントリを選択
して、これに対してPTLB命令を実行することができ
る。したがって、PTLB命令による無効化の必要のな
いエントリに対する処理を回避して、仮想計算機システ
ムの性能を向上させることができる。
As described above, according to the present embodiment, the address translation information regarding virtual machines of a plurality of levels is TLB.
Even if it is registered in, the entry (address translation buffer entry) corresponding to the virtual machine being processed can be selected and the PTLB instruction can be executed for it. Further, also for the virtual machine created on the virtual machine being processed, the corresponding entry can be similarly selected and the PTLB instruction can be executed for this. Therefore, it is possible to improve the performance of the virtual computer system by avoiding the processing for the entry that does not need to be invalidated by the PTLB instruction.

【0032】なお、本実施例ではPTLB命令の処理に
ついてのみ説明を行ったが、アドレス変換バッファエン
トリの読み書きに関する他の命令についても、同様の効
果を得ることができる。また、本実施例ではVMIDス
タック104とTLB109が独立して設けられている
構成について説明したが、TLB109中にVMIDス
タック104におけるVML106の情報を含めること
で、VMIDスタック104を設けない構成とすること
もできる。
Although only the processing of the PTLB instruction has been described in the present embodiment, the same effect can be obtained with other instructions relating to reading and writing of the address translation buffer entry. Although the VMID stack 104 and the TLB 109 are independently provided in this embodiment, the VMID stack 104 is not provided by including the information of the VML 106 in the VMID stack 104 in the TLB 109. You can also

【0033】[0033]

【発明の効果】【The invention's effect】

(1) 以上詳しく説明したように、本発明の仮想計算機シ
ステムによれば、実計算機上または仮想計算機上に1レ
ベル以上にわたって生成された複数の前記仮想計算機を
それぞれ制御する仮想計算機制御手段を有する仮想計算
機システムにおいて、前記実計算機の制御を行う制御装
置によって読み書きされ、いずれのレベルの前記仮想計
算機が前記実計算機上で現在処理されているのかを示す
現実行レベルを常に保持する現実行レベル管理手段を具
備する構成としたため、制御装置は、どのような時点に
おいても現実行レベル管理手段を参照することにより、
処理中の仮想計算機のレベル(現実行レベル)を即座に
識別することができるという効果が得られる。
(1) As described in detail above, according to the virtual computer system of the present invention, the virtual computer control means for controlling the plurality of virtual computers generated over one level or more on the real computer or the virtual computer is provided. In a virtual computer system, a current execution level management that is always read and written by a control device that controls the real computer and that always holds a current execution level indicating which level of the virtual computer is currently being processed on the real computer. Since the control device is configured to include the means, the control device can refer to the current execution level management means at any time,
The effect is that the level of the virtual machine being processed (current execution level) can be immediately identified.

【0034】(2) そして、(1) の構成に加えて、前記制
御装置によって読み書きされ、前記実計算機上に同時に
存在する前記仮想計算機の各々について、前記仮想計算
機を識別する識別子とその実行レベルからなる識別情報
エントリを保持する識別情報保持手段と、前記制御装置
による読み書きの対象とする前記識別情報エントリを選
択する識別情報選択手段とを具備する構成としたため、
識別情報選択手段を用いて識別情報保持手段を参照し、
上記によって現実行レベル管理手段を用いて識別された
現実行レベルと一致する実行レベルに対応する識別子を
得ることにより、処理中の仮想計算機を特定することが
できるという効果が得られる。
(2) Then, in addition to the configuration of (1), an identifier for identifying the virtual computer and its execution level for each of the virtual computers that are read and written by the control device and simultaneously exist on the real computer. Since it is configured to include an identification information holding unit that holds an identification information entry consisting of, and an identification information selection unit that selects the identification information entry to be read and written by the control device,
Referring to the identification information holding means using the identification information selection means,
By obtaining the identifier corresponding to the execution level that matches the current execution level identified by using the current execution level management means as described above, it is possible to specify the virtual computer being processed.

【0035】(3) また、さらに(2) の構成に加えて、前
記制御装置からの指示で動作するアドレス変換バッファ
制御装置によって読み書きされ、前記識別子,前記仮想
計算機上で指定される論理アドレス,前記論理アドレス
に対応する前記実計算機上の物理アドレスの三者からな
るアドレス変換情報と前記アドレス変換情報の有効性を
示す登録済フラグとからなるアドレス変換バッファエン
トリを、前記仮想計算機の各々について一以上保持する
アドレス変換バッファと、前記アドレス変換バッファ制
御装置による読み書きの対象とする前記アドレス変換バ
ッファエントリを選択するアドレス変換バッファ選択手
段とを具備する構成としたため、上記によって特定され
た処理中の仮想計算機(例えばLEVEL-OS)につい
て、対応する一以上のアドレス変換バッファエントリ
(すなわち、識別子がLEVEL-OSを示すエントリ)の
選択およびこれに対する読み書きや無効化などの処理を
自動的に行うとともに、処理中の仮想計算機(LEVEL-
OS)上に生成されている仮想計算機(LEVEL-OS,
LEVEL-OS,……)についても、同様にアドレス変換
バッファエントリ(すなわち、識別子がLEVEL-OS,
LEVEL-OS,……を示すエントリ)の選択およびこれ
に対する読み書きや無効化などの処理を自動的に行っ
て、アドレス変換バッファの内容が矛盾しないように仮
想計算機システムの正常動作を保証することができると
いう効果が得られる。また、処理中の仮想計算機(LEVE
L-OS)上に仮想計算機が生成されていない場合(す
なわち、LEVEL-OS,LEVEL-OSに対応するアドレ
ス変換バッファエントリのみが登録されている場合)に
は、従来と同様の処理性能を維持することができるとい
う効果が得られる。
(3) Further, in addition to the configuration of (2), the identifier, the logical address specified on the virtual computer, which is read and written by the address translation buffer control device which operates according to an instruction from the control device, An address translation buffer entry consisting of address translation information consisting of three of the physical addresses on the real computer corresponding to the logical address and a registered flag indicating the validity of the address translation information is provided for each of the virtual computers. Since the address translation buffer is held and the address translation buffer selection means for selecting the address translation buffer entry to be read and written by the address translation buffer control device is provided, the virtual machine under processing specified by the above For a computer (eg LEVEL-OS), one or more corresponding ads Scan conversion buffer entry (i.e., identifier entry indicating LEVEL-OS) with automatically performs processes such as selection and read-write and invalidate to this, the in process virtual machine (LEVEL-
Virtual machine (LEVEL-OS, which is created on the OS)
Similarly, for LEVEL-OS, ..., the address translation buffer entry (that is, the identifier is LEVEL-OS,
LEVEL-OS, etc.) is automatically selected, and processing such as reading, writing, and invalidation is automatically performed to ensure normal operation of the virtual computer system so that the contents of the address translation buffer are not inconsistent. The effect of being able to be obtained is obtained. In addition, the virtual machine (LEVE
If a virtual machine is not created on the L-OS) (that is, only the LEVEL-OS and the address translation buffer entry corresponding to the LEVEL-OS is registered), the same processing performance as the conventional one is maintained. The effect of being able to do is obtained.

【0036】(4) また、(1) の構成に加えて、前記制御
装置からの指示で動作するアドレス変換バッファ制御装
置によって読み書きされ、前記識別子,前記仮想計算機
上で指定される論理アドレス,前記論理アドレスに対応
する前記実計算機上の物理アドレス,前記識別子で示さ
れる前記仮想計算機の実行レベルの四者からなるアドレ
ス変換・実行レベル情報と前記アドレス変換・実行レベ
ル情報の有効性を示す登録済フラグとからなるアドレス
変換バッファエントリを、前記仮想計算機の各々につい
て一以上保持するアドレス変換バッファと、前記アドレ
ス変換バッファ制御装置による読み書きの対象とする前
記アドレス変換バッファエントリを選択するアドレス変
換バッファ選択手段とを具備する構成としたため、上記
によって現実行レベル管理手段を用いて識別された現実
行レベルと一致する実行レベルを含む一以上のアドレス
変換バッファエントリを、処理中の仮想計算機に対応す
るものとして選択し、これに対する読み書きや無効化な
どの処理を行うことができるという効果が得られる。ま
た、上記によって特定された処理中の仮想計算機(例え
ばLEVEL-OS)について、対応する一以上のアドレス
変換バッファエントリ(すなわち、識別子がLEVEL-O
Sを示すエントリ)の選択およびこれに対する読み書き
や無効化などの処理を自動的に行うとともに、処理中の
仮想計算機(LEVEL-OS)上に生成されている仮想計
算機(LEVEL-OS,LEVEL-OS,……)について
も、同様にアドレス変換バッファエントリ(すなわち、
識別子がLEVEL-OS,LEVEL-OS,……を示すエン
トリ)の選択およびこれに対する読み書きや無効化など
の処理を自動的に行って、アドレス変換バッファの内容
が矛盾しないように仮想計算機システムの正常動作を保
証することができるという効果が得られる。また、処理
中の仮想計算機(LEVEL-OS)上に仮想計算機が生成
されていない場合(すなわち、LEVEL-OS,LEVEL-
OSに対応するアドレス変換バッファエントリのみが登
録されている場合)には、従来と同様の処理性能を維持
することができるという効果が得られる。
(4) Further, in addition to the configuration of (1), the identifier, the logical address designated on the virtual machine, and the logical address read and written by the address translation buffer controller which operates according to an instruction from the controller, A physical address on the real computer corresponding to a logical address, address translation / execution level information consisting of four execution levels of the virtual computer indicated by the identifier, and registered indicating the validity of the address translation / execution level information. An address translation buffer that holds one or more address translation buffer entries each of which includes a flag, and an address translation buffer selection unit that selects the address translation buffer entry to be read and written by the address translation buffer controller. Since the configuration is provided with, One or more address translation buffer entries containing execution levels that match the current execution level identified using the management means are selected as those that correspond to the virtual machine that is being processed, and processing such as read / write or invalidation for this is selected. The effect that it can be obtained is obtained. Also, for the virtual machine under processing (for example, LEVEL-OS) identified by the above, one or more corresponding address translation buffer entries (that is, the identifier is LEVEL-O).
(The entry indicating S) and the processing such as reading, writing, and invalidation for the same are automatically performed, and the virtual machines (LEVEL-OS, LEVEL-OS) generated on the virtual machine (LEVEL-OS) being processed , ...) similarly for the address translation buffer entry (ie,
The virtual computer system is normally operated so that the contents of the address translation buffer are not inconsistent by automatically performing processing such as selection of an entry whose identifier is LEVEL-OS, LEVEL-OS, ... The effect is that the operation can be guaranteed. Also, when no virtual machine is created on the virtual machine (LEVEL-OS) being processed (that is, LEVEL-OS, LEVEL-OS).
In the case where only the address translation buffer entry corresponding to the OS is registered), it is possible to maintain the same processing performance as the conventional one.

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

【図1】本発明の仮想計算機システムの一実施例の構成
を示す機能ブロック図である。
FIG. 1 is a functional block diagram showing the configuration of an embodiment of a virtual computer system of the present invention.

【図2】図1の仮想計算機システムにおけるPTLB命
令の全体処理を示す説明図である。
FIG. 2 is an explanatory diagram showing the overall processing of a PTLB instruction in the virtual computer system of FIG.

【図3】図1の仮想計算機システムにおけるPTLB命
令の共通処理を示す説明図である。
FIG. 3 is an explanatory diagram showing common processing of PTLB instructions in the virtual machine system of FIG.

【図4】図1中のVMIDスタックに識別情報エントリ
を登録する処理を示す説明図である。
FIG. 4 is an explanatory diagram showing a process of registering an identification information entry in a VMID stack shown in FIG.

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

101 制御装置(CU) 102 実行レベル識別装置(CVML,現実行レベル
管理手段) 103 VMIDスタック選択回路(識別情報選択手
段) 104 VMIDスタック(識別情報保持手段) 107 アドレス変換バッファ制御装置(TLB制御装
置) 108 アドレス変換バッファ選択回路(TLB選択回
路,アドレス変換バッファ選択手段) 109 アドレス変換バッファ(TLB)
101 Control Unit (CU) 102 Execution Level Identification Unit (CVML, Current Execution Level Management Means) 103 VMID Stack Selection Circuit (Identification Information Selection Means) 104 VMID Stack (Identification Information Holding Means) 107 Address Translation Buffer Control Unit (TLB Control Equipment) ) 108 address translation buffer selection circuit (TLB selection circuit, address translation buffer selection means) 109 address translation buffer (TLB)

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 実計算機上または仮想計算機上に1レベ
ル以上にわたって生成された複数の前記仮想計算機をそ
れぞれ制御する仮想計算機制御手段を有する仮想計算機
システムにおいて、 前記実計算機の制御を行う制御装置によって読み書きさ
れ、いずれのレベルの前記仮想計算機が前記実計算機上
で現在処理されているのかを示す現実行レベルを常に保
持する現実行レベル管理手段を具備する構成としたこと
を特徴とする仮想計算機システム。
1. A virtual computer system having virtual computer control means for controlling a plurality of the virtual computers generated on one or more levels on a real computer or a virtual computer, wherein a controller for controlling the real computer is used. A virtual machine system characterized by comprising a current execution level management means for always holding a current execution level which is read and written and which level of the virtual machine is currently being processed on the real computer. .
【請求項2】 前記制御装置によって読み書きされ、前
記実計算機上に同時に存在する前記仮想計算機の各々に
ついて、前記仮想計算機を識別する識別子とその実行レ
ベルからなる識別情報エントリを保持する識別情報保持
手段と、 前記制御装置による読み書きの対象とする前記識別情報
エントリを選択する識別情報選択手段とを具備する構成
としたことを特徴とする請求項1記載の仮想計算機シス
テム。
2. An identification information holding unit which holds an identification information entry, which is read and written by the control device and which simultaneously exists on the real computer, for each virtual computer, the identification information including an identifier for identifying the virtual computer and its execution level. 2. The virtual computer system according to claim 1, further comprising: an identification information selection unit that selects the identification information entry to be read and written by the control device.
【請求項3】 前記制御装置からの指示で動作するアド
レス変換バッファ制御装置によって読み書きされ、前記
識別子,前記仮想計算機上で指定される論理アドレス,
前記論理アドレスに対応する前記実計算機上の物理アド
レスの三者からなるアドレス変換情報と前記アドレス変
換情報の有効性を示す登録済フラグとからなるアドレス
変換バッファエントリを、前記仮想計算機の各々につい
て一以上保持するアドレス変換バッファと、 前記アドレス変換バッファ制御装置による読み書きの対
象とする前記アドレス変換バッファエントリを選択する
アドレス変換バッファ選択手段とを具備する構成とした
ことを特徴とする請求項2記載の仮想計算機システム。
3. The identifier, a logical address specified on the virtual computer, which is read and written by an address translation buffer control device which operates according to an instruction from the control device,
An address translation buffer entry consisting of address translation information consisting of three of the physical addresses on the real computer corresponding to the logical address and a registered flag indicating the validity of the address translation information is provided for each of the virtual computers. 3. An address translation buffer for holding the above, and an address translation buffer selection means for selecting the address translation buffer entry to be read and written by the address translation buffer control device. Virtual computer system.
【請求項4】 前記制御装置からの指示で動作するアド
レス変換バッファ制御装置によって読み書きされ、前記
識別子,前記仮想計算機上で指定される論理アドレス,
前記論理アドレスに対応する前記実計算機上の物理アド
レス,前記識別子で示される前記仮想計算機の実行レベ
ルの四者からなるアドレス変換・実行レベル情報と前記
アドレス変換・実行レベル情報の有効性を示す登録済フ
ラグとからなるアドレス変換バッファエントリを、前記
仮想計算機の各々について一以上保持するアドレス変換
バッファと、 前記アドレス変換バッファ制御装置による読み書きの対
象とする前記アドレス変換バッファエントリを選択する
アドレス変換バッファ選択手段とを具備する構成とした
ことを特徴とする請求項1記載の仮想計算機システム。
4. The identifier, a logical address specified on the virtual computer, which is read and written by an address translation buffer control device which operates according to an instruction from the control device,
A physical address on the real computer corresponding to the logical address, address translation / execution level information consisting of four execution levels of the virtual computer indicated by the identifier, and registration indicating the validity of the address translation / execution level information. Address translation buffer entry consisting of an address flag and one or more address translation buffer entries for each of the virtual machines, and address translation buffer selection for selecting the address translation buffer entry to be read and written by the address translation buffer controller. The virtual computer system according to claim 1, wherein the virtual computer system comprises a means.
JP5225872A 1993-09-10 1993-09-10 Virtual computer system Pending JPH0784884A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5225872A JPH0784884A (en) 1993-09-10 1993-09-10 Virtual computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5225872A JPH0784884A (en) 1993-09-10 1993-09-10 Virtual computer system

Publications (1)

Publication Number Publication Date
JPH0784884A true JPH0784884A (en) 1995-03-31

Family

ID=16836180

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5225872A Pending JPH0784884A (en) 1993-09-10 1993-09-10 Virtual computer system

Country Status (1)

Country Link
JP (1) JPH0784884A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008140116A (en) * 2006-12-01 2008-06-19 Nec Corp Partition-context control device and method, and computer
JP2010244584A (en) * 2010-08-04 2010-10-28 Renesas Electronics Corp Semiconductor device, bus interface device, and computer system
JP2012119012A (en) * 2012-02-17 2012-06-21 Renesas Electronics Corp Processor, bus interface device and computer system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008140116A (en) * 2006-12-01 2008-06-19 Nec Corp Partition-context control device and method, and computer
JP2010244584A (en) * 2010-08-04 2010-10-28 Renesas Electronics Corp Semiconductor device, bus interface device, and computer system
JP2012119012A (en) * 2012-02-17 2012-06-21 Renesas Electronics Corp Processor, bus interface device and computer system

Similar Documents

Publication Publication Date Title
JP2825550B2 (en) Multiple virtual space address control method and computer system
RU2461870C2 (en) Method and apparatus for address translation
US7509475B2 (en) Virtual machine control method and virtual machine system having host page table address register
US4733350A (en) Improved purge arrangement for an address translation control system
EP0550286A2 (en) 2-Level multi-processor synchronization protocol
EP0619899B1 (en) Software control of hardware interruptions
JPH0555901B2 (en)
JPH0784884A (en) Virtual computer system
JP2005512192A (en) How to synchronize cache memory with main memory
JPH07120318B2 (en) Apparatus and method for protecting main memory unit with access and defective logic signals
JPH0650480B2 (en) Multiple virtual memory system and address controller
KR20180103977A (en) Memory address translation management
JPS63240653A (en) Translation between memory management unit and virtual-real address
JPH11259362A (en) Method and device for controlling cache memory
JP2540959B2 (en) Information processing device
JPS6129070Y2 (en)
JPS589452B2 (en) Firmware broom
JPS588073B2 (en) address translation device
JPS63286944A (en) Address translation buffer invalidation method
JPH04363738A (en) Cache memory device
JPS6367213B2 (en)
JPH0281241A (en) Data processor
JPS6010336B2 (en) Address comparison method
JPS6341102B2 (en)
JPS62222343A (en) virtual computer system