JP2705121B2 - Electronic computer system - Google Patents
Electronic computer systemInfo
- Publication number
- JP2705121B2 JP2705121B2 JP63170071A JP17007188A JP2705121B2 JP 2705121 B2 JP2705121 B2 JP 2705121B2 JP 63170071 A JP63170071 A JP 63170071A JP 17007188 A JP17007188 A JP 17007188A JP 2705121 B2 JP2705121 B2 JP 2705121B2
- Authority
- JP
- Japan
- Prior art keywords
- per
- virtual machine
- vmcp
- instruction
- 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.)
- Expired - Lifetime
Links
Landscapes
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数の仮想計算機を動作させる電子計算機
システムに係り、特に、命令事象記録機構を効率良く制
御して、仮想計算機のテスト/デバッグを効率的に行う
のに好適な電子計算機システムに関するものである。Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an electronic computer system for operating a plurality of virtual computers, and in particular, to test / debug a virtual computer by efficiently controlling an instruction event recording mechanism. The present invention relates to a computer system suitable for efficiently performing the above.
仮想計算機システムを動作させている電子計算機の従
来例としては、米国インターナショナル・ビシネス・マ
シンズ・コーポレーション社(IBM)370/XAアーキテク
チャの計算機が挙げられる。この計算機では命令の実行
事象を記録するために命令事象記録機構(Program Even
t Recorder:PER)が、計算機の命令を処理する命令プロ
セッサに1つ備えられている。A conventional example of an electronic computer running a virtual computer system is a computer of International Business Machines Corporation (IBM) 370 / XA architecture in the United States. In this computer, an instruction event recording mechanism (Program Even) is used to record an instruction execution event.
t Recorder: PER) is provided in an instruction processor that processes computer instructions.
このシステム上で仮想計算機システムを実現する場合
には、仮想計算機の命令の実行は、固定小数点演算命
令,浮動小数点演算命令,論理演算命令,分岐命令等の
通常命令は、実際に計算機上で直接実行される。また、
計算機の制御に重大な影響を及ぼす特権命令,もしくは
入出力命令は、仮想計算機制御プログラム(以下、VMCP
と記載)によるソフトウェアシミュレーションによって
仮想的に実行される。しかし、この方式では、ソフトウ
ェアシミュレーションによるオーバヘッドが大きく、仮
想計算機の性能低下が問題となった。When implementing a virtual machine system on this system, the execution of the virtual machine instructions is performed by directly executing ordinary instructions such as fixed-point operation instructions, floating-point operation instructions, logical operation instructions, and branch instructions on the computer. Be executed. Also,
Privileged instructions or I / O instructions that have a significant effect on computer control are executed by a virtual machine control program (VMCP).
Virtual simulation). However, in this method, the overhead due to software simulation is large, and the performance of the virtual machine is reduced.
この問題を解決するために計算機に、計算機を制御す
るプログラム状態語PSW(Program Status Word)、制御
レジスタ、タイマ等のシステム資源を、実際の計算機
(実計算機)用と実計算機上で動作するVMCPによって作
成される仮想計算機用との2つ設け、仮想計算機用のシ
ステム資源を用い仮想計算機の命令を直接実行する命令
直接実行機構が開発された。To solve this problem, system resources such as a program status word (PSW) for controlling the computer, control registers, and timers, which control the computer, are provided to the computer for the actual computer (real computer) and for the VMCP operating on the real computer. And an instruction direct execution mechanism for directly executing instructions of the virtual computer using system resources for the virtual computer.
この命令直接実行機構では、VMCPが仮想計算機を制御
する場合に特定の事象が仮想計算機で発生した場合、仮
想計算機の動作を中止し、命令の実行制御をVMCP側へ戻
す機能(インタセプションと呼ぶ)がサポートされてい
る。ここで、インタセプションの発生する特定の事象と
は、割込みや特権命令の実行等をいう。In the instruction direct execution mechanism, when a specific event occurs in the virtual machine when the VMCP controls the virtual machine, the function of stopping the operation of the virtual machine and returning the execution control of the instruction to the VMCP side (called an interception). ) Is supported. Here, the specific event in which the interception occurs refers to an interruption, execution of a privileged instruction, or the like.
上記命令直接実行機構上にPER機構を有しており、そ
のPER機構は、前述したシステム資源と同じく、実計算
機用と仮想計算機用にそれぞれ1つずつPER機構を割当
てる。これにより、VPCPが動作中には実計算機のPER
(ホストPER)機構が動作し、仮想計算機が動作中には
仮想計算機用のPER(ゲストPER)機構が動作する。A PER mechanism is provided on the instruction direct execution mechanism. The PER mechanism allocates one PER mechanism to each of a real computer and a virtual computer, as in the case of the system resources described above. As a result, the PER of the actual computer is
The (host PER) mechanism operates, and while the virtual machine is operating, the PER (guest PER) mechanism for the virtual machine operates.
上記従来技術では、仮想計算機上で動作するプログラ
ムのテスト/デバック時に仮想計算機にアドレスストッ
プ/ストアストップを行う場合、仮想計算機のPER機構
に対してアドレスストップまたはストアストップを行う
主記憶装置上のアドレスをセットしてRER機構を動作さ
せる必要がある。According to the above-mentioned prior art, when performing an address stop / store stop on a virtual machine at the time of test / debug of a program operating on the virtual machine, an address on a main storage device that performs an address stop or a store stop on a PER mechanism of the virtual machine. Must be set to operate the RER mechanism.
しかし、仮想計算機用PER機構は、仮想計算機が動作
中はVMCPが制御することが不可能であり、仮想計算機上
のプログラムから仮想計算機用PER機構の制御を行うこ
とができるので、VMCPが設定したPER機構の内容とは相
違が生ずる可能性がある。これを防止するためには、PE
R機構を制御するための命令が仮想計算機上で実行され
た場合にインタセプションを発生させ、該命令をチェッ
クする必要がある。ここでの大きな問題は、PER機構の
制御に関係する事象をインタセプションすると、プログ
ラム状態語全体を変更する命令(LPSW),PSWのシステム
マスクを変更する命令(STNSM,STOSM)の実行、全割込
み事象,制御レジスタを更新する命令(LCTL)の実行に
ついてインタセプションを発生させる必要となることで
ある。However, the virtual machine PER mechanism cannot be controlled by the VMCP while the virtual machine is operating, and the virtual machine PER mechanism can be controlled from a program on the virtual machine. There may be differences from the contents of the PER mechanism. To prevent this, PE
When an instruction for controlling the R mechanism is executed on a virtual machine, it is necessary to generate an interception and check the instruction. The major problem here is that when an event related to the control of the PER mechanism is intercepted, an instruction to change the entire program status word (LPSW), an instruction to change the system mask of PSW (STNSM, STOSM), and all interrupts are executed. It is necessary to generate an interception for the execution of the event (LCTL) for updating the control register.
そして、上記の事象は頻繁に発生するものであり、上
記の事象を全てインタセプトすることは、性能上,非常
に重大な問題を引き起こす。The above-mentioned events occur frequently, and intercepting all the above-mentioned events causes a very serious problem in performance.
本発明の目的は、このような従来の問題を解決し、仮
想計算機の動作中に、インタセプションをすることな
く、VMCP側から仮想計算機のPER機構を制御可能とし、
アドレスストップ/ストアストップ等のテストデバック
が行え、処理性能を向上させる電子計算機システムを提
供することにある。An object of the present invention is to solve such a conventional problem and to enable the VMCP side to control the PER mechanism of the virtual machine without performing interception during the operation of the virtual machine,
An object of the present invention is to provide an electronic computer system capable of performing test debugging such as address stop / store stop and improving processing performance.
上記目的を達成するため、本発明の電子計算機システ
ムは、(1)第3図に示すように、仮想計算機の動作時
には、この仮想計算機用のプログラム状態語PSWのPER制
御ビットRに従って仮想計算機用のPER機構を動作さ
せ、VMCPの動作時には、このVMCP用のプログラム状態語
PSWのPER制御ビットRに従ってVMCP用のPER機構を動作
させる第1の手段(ラッチ10、マルチプレクサ1)と、
仮想計算機の動作時、少なくともVMCPによる仮想計算機
のテストデバッグ時にVMCPから送出されるアドレスステ
ップもしくはストアストップ命令を含む、VMCPからPER
機構を制御するための所定の命令が指示されれば、仮想
計算機用のPER制御ビットRとは無関係に仮想計算機用
のPER機構を動作させる制御ビットPsをセットする手段
(ラッチ20、および、第4図のラッチ21、読み出し回路
22、ANDゲート23)と、制御ビットPsに従い第1の手段
に加えて仮想計算機用のPER機構を動作させ、この仮想
計算機用のPER機構で検出されたプログラム事象をVMCP
に送出させる第2の手段(ORゲート19、マルチプレクサ
1)とを設けたことを特徴とする。In order to achieve the above object, the computer system of the present invention comprises the following steps: (1) As shown in FIG. 3, when the virtual machine is operating, the virtual machine operates according to the PER control bit R of the program status word PSW for the virtual machine. When the VMCP is operating, the program status word for this VMCP is activated.
First means (latch 10, multiplexer 1) for operating the PER mechanism for VMCP according to the PER control bit R of the PSW;
During operation of the virtual machine, at least the address step or the store stop instruction sent from VMCP at the time of test debugging of the virtual machine by VMCP.
Means for setting a control bit Ps for operating the PER mechanism for the virtual machine independently of the PER control bit R for the virtual machine when a predetermined instruction for controlling the mechanism is instructed (the latch 20 and the second Latch 21 of FIG. 4, readout circuit
22, an AND gate 23) and, in addition to the first means, the PER mechanism for the virtual machine is operated in accordance with the control bit Ps, and the program event detected by the PER mechanism for the virtual machine is transmitted to the VMCP.
And second means (OR gate 19, multiplexer 1).
また、(2)第4図に示すように、上記制御ビットPs
をセットする手段は、仮想計算機を動作させる命令が実
行された時、主記憶装置800内の特定の場所に格納され
た所定の命令(Ps801)を読み出す手段(読み出し回路2
2)と、この読み出した所定の命令(Ps801)をラッチし
て第2の手段に送出する手段(ラッチ20、ORゲート19)
とからなることを特徴とする。(2) As shown in FIG. 4, the control bit Ps
Means for reading a predetermined instruction (Ps801) stored in a specific location in the main storage device 800 when an instruction to operate the virtual machine is executed.
2) and means for latching the read predetermined instruction (Ps801) and sending it to the second means (latch 20, OR gate 19)
And characterized by the following.
また、(3)第7図に示すように、仮想計算機の動作
をPER機構とは別に監視し、特定の事象の発生時、仮想
計算機の動作を中止させてVMCPに制御を戻すインタセプ
ションを行うと共に、このインタセプションと、制御ビ
ットPsに従ってのPER機構によるプログラム事象の検出
とが同時に発生した場合、その旨をVMCPに通知する手段
(制御語(IC)702、表示部(IS)703、制御装置200)
を設けたことを特徴とする。(3) As shown in FIG. 7, the operation of the virtual machine is monitored separately from the PER mechanism, and when a specific event occurs, the operation of the virtual machine is stopped and control is returned to VMCP. In addition, when this interception and the detection of a program event by the PER mechanism according to the control bit Ps occur at the same time, a means for notifying the fact to the VMCP (control word (IC) 702, display unit (IS) 703, control Equipment 200)
Is provided.
また、(4)第5図に示すように、VMCPからの所定の
命令内に付与された、PER機構の管理領域を物理アドレ
ス610もしくは論理アドレス609のいずれで指定するかを
示す識別情報(制御レジスタ(M)402の「V」)を読
み取り、この識別情報に基づき、PER機構300で必要とす
る主記憶装置のアドレスを特定する手段(マルチプレク
サ601)を設けたことを特徴とする。Also, (4) as shown in FIG. 5, identification information (control information) indicating whether the management area of the PER mechanism is designated by the physical address 610 or the logical address 609, which is given in a predetermined instruction from the VMCP. A means (multiplexer 601) for reading the "V" of the register (M) 402 and specifying the address of the main storage device required by the PER mechanism 300 based on the identification information is provided.
本発明においては、仮想計算機から仮想計算機制御プ
ログラム(VMCP)へ報告される命令の実行事象を、該仮
想計算機のプログラムの流れを制御するための制御語
(PSW)中の命令事象記録装置(PER機構)の動作を制御
する記録制御情報に従って記録するかを決定する第1の
動作と、該記録制御情報の値に無関係に記録する第2の
動作をVMCPが指示する動作制御情報(ビット)に応答し
て切換える。In the present invention, the execution event of an instruction reported from a virtual machine to a virtual machine control program (VMCP) is stored in an instruction event recording device (PER) in a control word (PSW) for controlling the flow of a program of the virtual machine. The first operation for determining whether to perform recording in accordance with the recording control information for controlling the operation of the mechanism and the second operation for recording regardless of the value of the recording control information are included in the operation control information (bit) designated by the VMCP. Switch in response.
これにより、仮想計算機のPSWの更新命令や割込みに
関する事象をインタセプションする必要がなくなり、ア
ドレスストップ/ストアストップ機能使用時の仮想計算
機の性能劣化を防ぐことができる。また、仮想計算機の
動作中、動作制御情報(ビット)によって、VMCP側から
仮想計算機のPER機構を動作させることができるので、
制御レジスタの更新についてのみチェックすれば、アド
レスストップ処理が可能となる。As a result, there is no need to intercept a PSW update instruction or an event related to an interrupt of the virtual machine, and it is possible to prevent performance degradation of the virtual machine when the address stop / store stop function is used. Also, during the operation of the virtual machine, the PER mechanism of the virtual machine can be operated from the VMCP side by the operation control information (bit).
Checking only the update of the control register enables the address stop processing.
以下、本発明の一実施例を、図面により詳細に説明す
る。Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
第2図は、本発明の原理的説明をするための電子計算
機システムの概念図である。以下、図面符号中,Hはホス
ト、Gはゲストを示すものとする。FIG. 2 is a conceptual diagram of an electronic computer system for explaining the principle of the present invention. Hereinafter, in the reference numerals of the drawings, H indicates a host and G indicates a guest.
電子計算機内には、実(ホスト)および仮想(ゲス
ト)の命令実行ユニット100H,100Gと、制御装置200H,20
0Gが存在する。これに対して、各々の命令実行ユニット
で発生するプログラム事象を監視するPER機構はシステ
ムに1つである。これは、仮想計算機制御プログラム
(VMCP)が動作中には仮想計算機は停止しており、ま
た、この逆に仮想計算機が動作中にはVMCPは動作しない
ため、PER機構は1台でもこの2つの状態に対応するこ
とができる。The computer includes real (host) and virtual (guest) instruction execution units 100H, 100G, and control devices 200H, 20G.
There is 0G. In contrast, the system has one PER mechanism that monitors program events occurring in each instruction execution unit. This is because the virtual machine is stopped while the virtual machine control program (VMCP) is running, and conversely, the VMCP does not work while the virtual machine is running, so even if only one PER mechanism Can respond to conditions.
このため、PER機構300にプログラム事象や命令やデー
タのアドレスを伝える信号線15には、ホストの命令実行
事象を伝える信号線15Hおよびゲストの命令実行事象を
伝える信号線15Gのいずれか一方を、マルチプレクサ1
によって選択された情報が与えられる。このマルチプレ
クサ1は、計算機システム上でVMCPが動作しているか、
または仮想計算機が動作しているかを示すラッチ10によ
って制御される。このラッチ10がON状態,すなわち仮想
計算機が動作中の場合は、マルチプレクサ1はゲスト命
令実行ユニット100G側からの信号15Gを選択し、上記ラ
ッチ10がOFF状態、すなわちVMCPが動作中の場合は、ホ
スト命令実行ユニット100Hよりの信号15Hを選択し、PER
機構300へ伝える。For this reason, the signal line 15 for transmitting the address of a program event, an instruction, or data to the PER mechanism 300 includes one of a signal line 15H for transmitting a host instruction execution event and a signal line 15G for transmitting a guest instruction execution event. Multiplexer 1
Gives the selected information. This multiplexer 1 determines whether VMCP is operating on the computer system,
Alternatively, it is controlled by a latch 10 indicating whether the virtual machine is operating. When the latch 10 is ON, that is, when the virtual machine is operating, the multiplexer 1 selects the signal 15G from the guest instruction execution unit 100G. When the latch 10 is OFF, that is, when the VMCP is operating, Select the signal 15H from the host instruction execution unit 100H and set PER
Tell the mechanism 300.
次にPER機構300によって検出されたプログラム事象は
信号線17によって制御装置へ伝えられるが、この時、ホ
スト側の制御装置200Hへ報告するか、ゲスト側の制御装
置200Gへ報告するかはマルチプレクサ2によって行われ
る。ここで、マルチプレクサ2の制御は、仮想計算機も
しくはVMCPの動作を示すラッチ10および、VMCPが仮想計
算機のPER機構300を制御するためのラッチ20によって制
御される。VMCPがアドレスストップ等の指定がなく、仮
想計算機のPER機構300を意識する必要がない場合は、ラ
ッチ10の値は、反転されORゲート3へ入力され、マルチ
プレクサ2を制御する。ここで、ラッチ10は、仮想計算
機の動作でON,VMCPの動作でOFFであるので、VMCPが動作
中はゲート3はONとなり、これによりマルチプレクサ2
は、ホストの制御装置200Hを選択し、信号線17Hを通し
てプログラム事象が連絡される。また、仮想計算機が動
作中はゲストの制御装置200Gへ事象が連絡される。Next, the program event detected by the PER mechanism 300 is transmitted to the controller via the signal line 17. At this time, the multiplexer 2 determines whether to report to the host-side controller 200H or to the guest-side controller 200G. Done by Here, the control of the multiplexer 2 is controlled by a latch 10 indicating the operation of the virtual machine or the VMCP and a latch 20 for the VMCP to control the PER mechanism 300 of the virtual machine. When the VMCP does not specify an address stop or the like and does not need to be aware of the PER mechanism 300 of the virtual machine, the value of the latch 10 is inverted and input to the OR gate 3 to control the multiplexer 2. Here, since the latch 10 is ON during the operation of the virtual machine and OFF during the operation of VMCP, the gate 3 is turned ON during the operation of VMCP.
Selects the control device 200H of the host, and the program event is communicated through the signal line 17H. Further, while the virtual machine is operating, an event is communicated to the guest control device 200G.
これに対して、アドレスストップ等の処理で、VMCPが
仮想計算機のPER機構を制御する場合は、ラッチ20をON
とするので、これにより、ORゲート3は常にON上とな
り、仮想計算機の動作に係わらず、PER機構300で検出さ
れるプログラム事象は全てホストの制御装置へ報告さ
れ、VMCPによって処理を行うことを可能としている。On the other hand, when the VMCP controls the PER mechanism of the virtual machine in processing such as address stop, the latch 20 is turned on.
As a result, the OR gate 3 is always turned ON, and all program events detected by the PER mechanism 300 are reported to the host control device regardless of the operation of the virtual machine, and processing is performed by the VMCP. It is possible.
また、ラッチ20の情報は信号線7によってPER機構300
に入力され、仮想計算機のPER制御ビットには係わりな
く、プログラム事象を獲えることを可能としている。The information of the latch 20 is transmitted by the signal line 7 to the PER mechanism 300.
To enable program events to be captured regardless of the PER control bit of the virtual machine.
第1図は、本発明の一実施例を示す電子計算機システ
ムの全体構成図である。第2図では、仮想計算機用の命
令直接実行機構を端的に説明するためにホスト用とゲス
ト用にそれぞれ命令実行ユニットと制御装置があるよう
に説明したが、実際は、命令実行ユニットおよび制御装
置は1つであり、これらの装置が、ホスト用のシステム
資源とゲスト用の資源を分けて使用することによって見
かけ上、各々個別に装置があるように見せかける。ここ
でシステム資源とは、プログラムの流れを制御するPSW,
制御レジスタ,タイマ等のハードウェア資源である。FIG. 1 is an overall configuration diagram of a computer system showing one embodiment of the present invention. In FIG. 2, the instruction direct execution mechanism for the virtual machine is described in such a manner that there is an instruction execution unit and a control device for the host and for the guest, respectively. One of these devices is to use the system resources for the host and the resources for the guest separately, so that each of them appears to be an individual device. Here, the system resources are PSW, which controls the flow of the program,
Hardware resources such as control registers and timers.
本電子計算機システムは、命令実行ユニット100,制御
装置200,PER機構300,ホスト資源400H,ゲスト資源400G,
記録制御切換え回路500,資源切換え部501,仮想計算機制
御プログラム(VMCP)や仮想計算機(VM)が動作する主
記憶装置800から構成される。The computer system includes an instruction execution unit 100, a controller 200, a PER mechanism 300, a host resource 400H, a guest resource 400G,
It comprises a recording control switching circuit 500, a resource switching unit 501, a virtual computer control program (VMCP) and a main storage device 800 on which a virtual computer (VM) operates.
命令実行ユニット100が、VMCP802(ホストのプログラ
ム)を実行する場合には、その旨を資源切換え部501に
制御信号として送ることによって、ホスト資源400Hが選
択されて命令実行ユニット10の資源として利用される。
また、命令実行ユニット100が仮想計算機(VM)803のプ
ログラムを実行する場合には、その旨を資源切換え部50
1に制御信号として送り、ゲスト資源400Gを選択し、実
行する。さらに、このときにプログラムの事象を記録す
るためのPER機構300を動作させる場合は、PER機構300に
対してPER機構300を制御するための情報をホスト資源40
0Hまたはゲスト資源400Gから選択する必要がある。その
場合には、命令実行ユニット100が実行するプログラム
の種別によって記録制御切換え回路500によってその2
つの資源のうち、ホスト資源400Hまたはゲスト資源400G
が選択されてPER機構300に入力される。そのPER機構300
で発生したプログラムの実行事象は制御線17を通した制
御装置200に送られる。その結果が命令実行ユニット100
に反映される。When the instruction execution unit 100 executes the VMCP 802 (host program), the fact is transmitted as a control signal to the resource switching unit 501, so that the host resource 400H is selected and used as the resource of the instruction execution unit 10. You.
Further, when the instruction execution unit 100 executes the program of the virtual machine (VM) 803, the resource switching unit 50
1 is sent as a control signal to select and execute the guest resource 400G. Further, at this time, when operating the PER mechanism 300 for recording an event of the program, information for controlling the PER mechanism 300 is transmitted to the host resource 40 for the PER mechanism 300.
It is necessary to select from 0H or guest resource 400G. In that case, the recording control switching circuit 500 performs the second operation depending on the type of the program executed by the instruction execution unit 100.
Host resource 400H or guest resource 400G
Is selected and input to the PER mechanism 300. The PER mechanism 300
Is executed is sent to the control device 200 via the control line 17. The result is the instruction execution unit 100
Is reflected in
第3図は、第1図における記録制御切換え回路500の
具体的な回路構成例を示す図である。FIG. 3 is a diagram showing a specific circuit configuration example of the recording control switching circuit 500 in FIG.
本記録制御切換え回路500は、ラッチ10,20、マルチプ
レクサ1、ORゲート19等によって構成される。また、ホ
スト資源400Hおよびゲスト資源400Gは、マルチプレクサ
12によって選択され、命令実行ユニット100で使用され
る。このマルチプレクサ12は前述したように、仮想計算
機およびVMCPの動作を示すラッチ10によって制御され
る。The recording control switching circuit 500 includes latches 10 and 20, a multiplexer 1, an OR gate 19, and the like. The host resource 400H and the guest resource 400G are connected to a multiplexer.
12 and used by the instruction execution unit 100. As described above, this multiplexer 12 is controlled by the latch 10 indicating the operation of the virtual machine and the VMCP.
まず、VMCPがPER機構300を使用する場合はホスト資源
400Hが選択される。ここで、PER機構300を制御するホス
ト資源400Hには、ホストPSW(HPSW)中のPER制御ビット
R,次の命令のアドレスを示すNiAおよび制御レジスタM,
S,Eがある。制御レジスタMは、(i)分岐成功事象,
(ii)命令読み出し事象,(iii)主記憶更新事象,(i
v)汎用レジスタ更新事象等のプログラム事象のうち有
効とする事象を選択するためのマスクレジスタである。
制御レジスタSとEは、PER機構300によって監視を行う
監視領域の主記憶装置上の開始アドレスおよび終了アド
レスを格納する。これらのPER機構300を制御する情報
は、信号線15H,信号線15を通りPER機構300へ入力され
る。また、命令実行ユニット100より命令の実行に関す
る情報が信号線16によって入力される。PER機構300では
この情報を基にしてプログラム事象を獲え、信号線17に
より制御装置200へ報告する。First, if VMCP uses the PER mechanism 300, host resources
400H is selected. Here, the host resource 400H that controls the PER mechanism 300 includes a PER control bit in the host PSW (HPSW).
R, NiA indicating the address of the next instruction and control register M,
There are S and E. The control register M stores (i) a branch success event,
(Ii) instruction read event, (iii) main memory update event, (i
v) A mask register for selecting a valid event among program events such as a general-purpose register update event.
The control registers S and E store the start address and the end address of the monitoring area to be monitored by the PER mechanism 300 on the main storage device. Information for controlling the PER mechanism 300 is input to the PER mechanism 300 through the signal line 15H and the signal line 15. Further, information relating to the execution of the instruction is input from the instruction execution unit 100 via the signal line 16. The PER mechanism 300 captures a program event based on this information and reports it to the control device 200 via the signal line 17.
仮想計算機がPER機構300を使用する場合も、基本的に
は上記VMCPの場合と同様である。但し、第2図でも説明
したように、VMCP側から仮想計算機のPER機構を制御す
るために仮想計算機のPSW(ゲストPSW:GPSW)中のPER制
御ビットRは、そのままPER機構300の制御には用いられ
ず、VMCPが仮想計算機のPER機構を制御するために設け
た制御ビットPs(ラッチ20)とORゲート19によって論理
和がとられPER機構300へ送られる。従って、制御ビット
PsがON状態であれば、GPSWのPER制御ビットRの状態に
係わらず、PER機構300を有効とすることができる。該制
御ビットPsはVMCPのみが操作することが可能であり、信
号線18によって命令実行ユニット100より制御される。The case where the virtual machine uses the PER mechanism 300 is basically the same as the case of the VMCP. However, as described in FIG. 2, the PER control bit R in the virtual machine PSW (guest PSW: GPSW) is used as it is for controlling the PER mechanism 300 in order to control the PER mechanism of the virtual machine from the VMCP side. Not used, and the logical sum of the control bit Ps (latch 20) provided by the VMCP for controlling the PER mechanism of the virtual machine and the OR gate 19 is sent to the PER mechanism 300. Therefore, the control bit
If Ps is in the ON state, the PER mechanism 300 can be made effective regardless of the state of the PER control bit R of the GPSW. The control bit Ps can be operated only by the VMCP, and is controlled by the instruction execution unit 100 via the signal line 18.
第4図は、上記制御ビットPsの生成方式を説明するた
めの図である。FIG. 4 is a diagram for explaining a method of generating the control bits Ps.
主記憶装置800中のある特定の場所に格納された仮想
計算機実行時のPER制御ビット(Ps)801は、仮想計算機
を動作させる命令が実行された時に読み出し回路22によ
り主記憶装置800中より読み出され、ラッチ20へセット
される。ただし、この時,計算機のモデルによってはシ
ステム中にVMCP側から仮想計算機のPER機構を操作する
ための制御機構が組み込まれていない場合があるので、
その制御機構が組み込まれていることを示すラッチ21と
読み出し回路22とがANDゲート23によって論理積が取ら
れラッチ20へセットされる。The PER control bit (Ps) 801 at the time of execution of the virtual machine stored in a specific location in the main storage device 800 is read from the main storage device 800 by the readout circuit 22 when an instruction to operate the virtual machine is executed. And set to latch 20. However, at this time, depending on the model of the computer, the control mechanism for operating the PER mechanism of the virtual machine from the VMCP side may not be incorporated in the system.
The AND gate 23 calculates the logical product of the latch 21 and the read circuit 22 indicating that the control mechanism is incorporated, and sets the logical product in the latch 20.
このラッチ20の情報は、GPSWのPER制御ビットRとOR
ゲート19によって論理和がとられ、マルチプレクサ1を
通してPER機構300へ入力される。The information of the latch 20 is ORed with the PER control bit R of GPSW.
The logical sum is obtained by the gate 19 and input to the PER mechanism 300 through the multiplexer 1.
これに対して、HPSWのPER制御ビットRはそのままマ
ルチプレクサ1を経てPER機構300へ入力される。このマ
ルチプレクサ1は、前述した通り、仮想計算機とVMCPの
動作を示すラッチ10によって制御される。On the other hand, the PER control bit R of the HPSW is input to the PER mechanism 300 via the multiplexer 1 as it is. As described above, the multiplexer 1 is controlled by the latch 10 indicating the operation of the virtual machine and the VMCP.
第5図は、PER機構300へ入力されるアドレス情報に関
する説明図である。FIG. 5 is an explanatory diagram relating to the address information input to the PER mechanism 300.
PSW401中の,次に実行すべき命令の論理アドレスNiA
や、命令実行ユニット100内で作成されるデータの論理
アドレスは信号線605,606を通り、アドレス変換機構602
を経て、信号線608を通り、命令フェッチやデータの読
み込み/書き出しを行うバッファユニット101へ送られ
る。この時、アドレス変換機構602は、PSW401中のアド
レス変換制御ビットTによって制御され、この制御ビッ
トTがONの場合は論理アドレスから物理アドレスへと変
換される。また、上記制御ビットTがOFFの場合は物理
アドレスへの変換は行われず、論理アドレスを物理アド
レスとして出力する。Logical address NiA of the next instruction to be executed in PSW401
Alternatively, the logical address of data created in the instruction execution unit 100 passes through signal lines 605 and 606, and the address translation mechanism 602
Through the signal line 608 to the buffer unit 101 which performs instruction fetch and data read / write. At this time, the address conversion mechanism 602 is controlled by an address conversion control bit T in the PSW 401, and when the control bit T is ON, a logical address is converted to a physical address. When the control bit T is OFF, the conversion to the physical address is not performed, and the logical address is output as the physical address.
PER機構300は、PER事象をチェックする場合に主記憶
装置800のアドレスを必要とするが、この場合、アドレ
ス変換機構602を通過する前の論理アドレス609と、通過
後の物理アドレス610をマルチプレクサ601によって選択
し、PER機構300へ入力する。このマルチプレクサ601
は、制御レジスタ(M)402中に新たに設けたアドレス
選択ビットVによって制御される。マルチプレクサ601
は、その制御ビットVがON,すなわちPER機構300による
監視領域の開始アドレスおよび終了アドレスを格納する
制御レジスタ(S)403および(E)404を、論理アドレ
スとして取扱うことを要求した場合、論理アドレス609
を選択する。また、上記制御ビットVがOFF,すなわちPE
R事象の監視領域を物理アドレスで指定してある場合
は、アドレス変換終了後の物理アドレス610が選択され
る。When checking the PER event, the PER mechanism 300 needs the address of the main storage device 800. In this case, the logical address 609 before passing through the address translation mechanism 602 and the physical address 610 after passing are converted into a multiplexer 601. And input to the PER mechanism 300. This multiplexer 601
Is controlled by an address selection bit V newly provided in the control register (M) 402. Multiplexer 601
When the control bit V is ON, that is, when requesting that the control registers (S) 403 and (E) 404 storing the start address and end address of the monitoring area by the PER mechanism 300 be treated as a logical address, 609
Select Also, the control bit V is OFF, that is, PE
When the monitoring area of the R event is specified by the physical address, the physical address 610 after the end of the address conversion is selected.
制御レジスタ(M)402中のアドレス選択ビットV
は、第6図に示すADSTOPコマンドのV/Rオペランドによ
って指定される。第6図の例では、Iはアドレスストッ
プの指定、Sはストアストップの指定、Vは論理アドレ
スの指定、Rは物理アドレスの指定を示している。従っ
て、アドレスストップの場合は、「IV」または「IR」と
「停止アドレス」,「OFF」により指定される。また、
ストアストップの場合は、「SV」または「SR」と「先頭
アドレス」,「最終アドレス/バイト数」,「OFF」に
より指定される。Address selection bit V in control register (M) 402
Is specified by the V / R operand of the ADSTOP command shown in FIG. In the example of FIG. 6, I indicates designation of an address stop, S indicates designation of a store stop, V indicates designation of a logical address, and R indicates designation of a physical address. Therefore, in the case of an address stop, it is designated by "IV" or "IR", "stop address", and "OFF". Also,
In the case of a store stop, it is specified by "SV" or "SR", "start address", "end address / byte number", and "OFF".
第7図は、プログラム事象発生時の制御装置200の動
作について説明した図である。FIG. 7 is a diagram for explaining the operation of the control device 200 when a program event occurs.
PER機構300から発生したプログラム事象は信号線17を
通り制御装置200へ送られる。制御装置200では、該プロ
グラム事象の報告について、その処置をいかに行うかを
決定する機能を有する。このため、制御装置200では、G
PSW401GのPER制御ビットR,VMCPから仮想計算機のPER機
構を制御するための制御ビットPsの他、PER事象を割込
みによって仮想計算機上のプログラムに報告するか又は
インタセプションによってVMCPへ報告するかを制御する
制御語(IC)702を入力する。また、PER機構とは別に、
制御装置200では、仮想計算機の動作を監視し、仮想計
算機の動作の結果によってインタセプションを発生させ
る機構が具備されている。このため、プログラム事象と
インタセプションが同時に発生することがあり、該事象
をVMCPへ報告するための表示部(IS)703が備えられて
いる。The program event generated from the PER mechanism 300 is sent to the control device 200 via the signal line 17. The control device 200 has a function of determining how to perform the processing for the report of the program event. Therefore, in the control device 200, G
In addition to the control bit Ps for controlling the PER mechanism of the virtual machine from the PER control bit R and VMCP of the PSW401G, it controls whether the PER event is reported to the program on the virtual machine by interruption or reported to VMCP by interception. The control word (IC) 702 to be input is input. Also, apart from the PER mechanism,
The control device 200 has a mechanism for monitoring the operation of the virtual machine and generating an interception according to the result of the operation of the virtual machine. For this reason, a program event and an interception may occur simultaneously, and a display unit (IS) 703 for reporting the event to the VMCP is provided.
制御装置200は、以上の情報を総合判断し、命令実行
ユニット100に対して、割込みを発生させることを要求
する信号31と、インタセプションを発生させることを要
求する信号30を送信する。The control device 200 comprehensively judges the above information, and sends the instruction execution unit 100 a signal 31 requesting generation of an interrupt and a signal 30 requesting generation of an interception.
次にインタセプションを制御するための制御語(制御
ビット)ICおよび,PER事象とインタセプションが同時に
発生したことを示す表示語(表示部)ISについて、第8
図,第9図により説明する。Next, a control word (control bit) IC for controlling the interception and a display word (display section) IS indicating that the PER event and the interception have occurred at the same time are described in the eighth section.
This will be described with reference to FIGS.
第8図は、インタセプションについて制御を行うため
の制御語(IC)702の構成図である。FIG. 8 is a configuration diagram of a control word (IC) 702 for controlling the interception.
該制御語702はインタセプションを発生させるか否か
を制御する制御ビットの集合である。この制御ビットは
それぞれのビット位置nを用いてIC(n)で表すことに
する。The control word 702 is a set of control bits for controlling whether or not to generate an interception. The control bits will be represented by IC (n) using the respective bit positions n.
上記制御語702中でPER事象の処理について関連するフ
ィールドは、仮想計算機上で命令例外が発生した場合に
インタセプトを要求するIC(0),特権命令例外のイン
タセプトを要求するIC(1),命令例外,特権命令例
外,無条件に命令インタセプションとなる命令の実行を
除いた、PER事象等のプログラム割込みのインタセプシ
ョンを要求するIC(2)および,TS,CS,CDS命令実行時に
コンディションコードCCが“1"であった場合のインタセ
プションを要求するIC(4),(5),(6)がある。
ここで、そのビットがONであれば、当該事象が発生した
場合はインタセプションを発生させ、VMCPに対して制御
を渡すことを要求する。また、上記ビットがOFFである
場合は、インタセプションを発生させず、処理を仮想計
算機へ任せる。The fields related to the processing of the PER event in the control word 702 are IC (0) for requesting interception when an instruction exception occurs on the virtual machine, IC (1) for requesting interception of privileged instruction exception, and instruction IC (2) that requests interception of program interrupts such as PER events, excluding exceptions, privileged instruction exceptions, and execution of instructions that unconditionally cause instruction interception, and condition code CC when executing TS, CS, and CDS instructions There are ICs (4), (5), and (6) that request an interception when is "1".
Here, if the bit is ON, an interception is generated when the event occurs, and a request is made to pass control to the VMCP. If the above bit is OFF, no interception occurs, and the processing is left to the virtual machine.
第9図は、上記表示語(IS)703の構成例を示す図で
ある。これは、PER事象とインタセプションが同時に発
生したことを示すものであり、表示語703中のIfビット
がONの場合、2つの事象が同時に発生したことを表示す
る。FIG. 9 is a diagram showing a configuration example of the display word (IS) 703. This indicates that the PER event and the interception have occurred at the same time. When the If bit in the display word 703 is ON, it indicates that two events have occurred at the same time.
また、第10図では、第7図で説明した、PER事象に関
する制御装置200のマイクロプログラムの動作について
の説明図であり、本図はそれぞれ枝番(a),(b),
(c),(d)に分けて示してある。FIG. 10 is an explanatory diagram of the operation of the microprogram of the control device 200 relating to the PER event described in FIG. 7, and FIG. 10 shows branch numbers (a), (b), and (b), respectively.
(C) and (d) are shown separately.
まず、命令の実行が開始されると、該命令が無条件イ
ンタセプションを起こす命令か否かをチェックする(ス
テップ1000)。無条件インタセプションを起こす命令で
あれば、インタセプションコードCODEに無条件インタセ
プションが発生したことを示すコード“04"を設定する
(ステップ1001)。ここで、該インタセプションとPER
事象が同時に発生したか否かをチェックする(ステップ
1002)。PER事象が同時に発生していれば、その事象を
表示するための表示ビットIfをONとする(ステップ100
3)。また、PER事象が発生していなければ、IfをOFFと
し(ステップ1004)、インタセプション処理へ移行(ス
テップ1034)する(第10図(d)参照)。First, when execution of an instruction is started, it is checked whether the instruction is an instruction causing an unconditional interception (step 1000). If the instruction causes an unconditional interception, a code "04" indicating that an unconditional interception has occurred is set in the interception code CODE (step 1001). Where the interception and PER
Check if events occurred simultaneously (step
1002). If the PER event has occurred at the same time, the display bit If for displaying the event is turned ON (step 100).
3). If the PER event has not occurred, If is turned OFF (step 1004), and the process proceeds to the interception process (step 1034) (see FIG. 10 (d)).
次に、無条件インタセプションを起こす命令でなけれ
ば、命令例外インタセプションを起こす命令か否かをチ
ェックする(ステップ1005)。ここで、命令例外インタ
セプションを起こす命令である場合は、PER事象が同時
に発生しているか否かをチェックする(ステップ100
7)。そして、命令例外インタセプションを制御するIC
(0)をチェックし(ステップ1008)、PER事象が同時
に発生している場合、該ビットがOFFであれば、プログ
ラム割込み(PER割込み)のインタセプションコードを
セットする(ステップ1009)。ここで、PER事象が発生
したことは、インタセプションコードCODEで表示されて
いるので、IfはOFFのままとする(ステップ10010)。こ
れに対して、IC(0)がONの場合、つまり、命令例外の
インタセプション要求を行った場合は、インタセプショ
ンコードCODEに、命令例外インタセプションが発生した
ことを示すコード“44"をセットし(ステップ1011)、
かつ、PER事象が同時に発生したことを示す表示ビットI
fをONとする(ステップ1012)。この後、インタセプシ
ョン処理へ移行する(ステップ1034)。Next, if the instruction does not cause an unconditional interception, it is checked whether or not the instruction causes an instruction exception interception (step 1005). Here, if the instruction causes an instruction exception interception, it is checked whether or not a PER event has occurred simultaneously (step 100).
7). And an IC that controls instruction exception interception
(0) is checked (step 1008), and if the PER event is occurring simultaneously, if this bit is OFF, the interception code of the program interrupt (PER interrupt) is set (step 1009). Here, since the occurrence of the PER event is indicated by the interception code CODE, If is kept OFF (step 10010). On the other hand, when IC (0) is ON, that is, when an instruction exception interception request is made, a code “44” indicating that an instruction exception interception has occurred is set in the interception code CODE. (Step 1011)
And an indication bit I indicating that a PER event has occurred simultaneously.
f is turned ON (step 1012). Thereafter, the process proceeds to an interception process (step 1034).
また、命令例外インタセプションを起こす命令の時
に、PER事象が同時に発生していない場合は(ステップ1
007)、まず、命令例外インタセプションを要求するIC
(0)をチェック(ステップ1013)、IC(0)がOFFで
あれば、インタセプションを発生させる必要がないの
で、仮想計算機側へその処理を任せる(ステップ101
4)。IC(0)がONであれば、命令例外インタセプショ
ンのコード“44"をCODEへセットし(ステップ1015)、I
fをOFFとして(ステップ1015−1)、インタセプション
処理へ移行する(ステップ1034)。If the PER event does not occur at the same time as the instruction causing the instruction exception interception (step 1
007) First, an IC that requests instruction exception interception
(0) is checked (step 1013), and if IC (0) is OFF, there is no need to generate an interception, so the processing is left to the virtual machine side (step 101).
Four). If IC (0) is ON, the code "44" of the instruction exception interception is set to CODE (step 1015).
f is turned off (step 1015-1), and the process proceeds to the interception process (step 1034).
上記ステップ1005において、命令例外インタセプショ
ンを起こす命令でない場合は、条件付きインタセプショ
ンを起こす命令か否かをチェックし(ステップ1006)、
条件付きインタセプションを起こす命令である場合は、
第10図(b)に示す処理を行い、条件付きインタセプシ
ョンを起こす命令でない場合は、後述第10図(c)に示
す処理を行う。If it is determined in step 1005 that the instruction does not cause an instruction exception interception, it is checked whether the instruction causes a conditional interception (step 1006).
If the instruction causes a conditional interception,
The processing shown in FIG. 10 (b) is performed. If the instruction does not cause a conditional interception, the processing shown in FIG. 10 (c) is performed.
第10図(b)では、条件付きインタセプションを起こ
す命令の時の処理概要を示す。FIG. 10 (b) shows an outline of processing at the time of an instruction causing a conditional interception.
条件付きインタセプションとは、命令の実行を直接ハ
ードウェアにまかせるか、または、VMCPの介入によって
ソフトウェアシミュレーションを行うかを制御できる命
令を実行したときに発生するインタセプションである。The conditional interception is an interception that occurs when an instruction that can control whether execution of an instruction is directly left to hardware or software simulation is performed by intervention of VMCP is executed.
条件付きインタセプションを発生させる命令には、シ
ステムの状態を変更する命令,タイマ制御に関する命
令,資源のシリアライゼーションに用いられる命令等が
ある。これらの命令のインタセプションの制御は、第8
図のIC702の各々のビットによって行われる。The instructions for generating the conditional interception include an instruction to change the state of the system, an instruction related to timer control, an instruction used for serialization of resources, and the like. The control of the interception of these instructions
This is performed by each bit of the IC 702 in the figure.
まず、シリアライゼーションを行うためのTS命令,CS
命令,CDS命令を実行し該命令のコンディションコードが
“1"である場合(これは命令の操作が失敗したことを示
す)をチェックする(ステップ1016)。この条件と合致
し、インタセプションを発生させる場合は、さらに、こ
の時、PER事象が同時に発生しているか否かをチェック
する(ステップ1017)。ここで、PER事象が同時に発生
していれば、TS命令,CS命令,CDS命令でコンディション
コードが“1"となり、かつ、PER機構によるプログラム
割込みが同時に発生したことを示す命令およびプログラ
ム割込みインタセプションコード“12"をCODEへセット
する(ステップ1018)。First, TS instruction for performing serialization, CS
An instruction and a CDS instruction are executed, and if the condition code of the instruction is "1" (this indicates that the operation of the instruction has failed), it is checked (step 1016). If this condition is met and an interception is to be generated, it is further checked whether or not PER events are simultaneously occurring at this time (step 1017). Here, if the PER event occurs simultaneously, the instruction code indicating that the condition code becomes "1" by the TS instruction, CS instruction, and CDS instruction, and the program interrupt by the PER mechanism and the program interrupt interception The code "12" is set in CODE (step 1018).
また、PER事象が同時に発生していなければ(ステッ
プ1017)、インタセプションコードCODEを“04"とし
(ステップ1019)、PER事象が同時に発生していないの
で、IfをOFFする(ステップ1020)。If the PER event has not occurred simultaneously (step 1017), the interception code CODE is set to "04" (step 1019), and if the PER event has not occurred simultaneously, If is turned off (step 1020).
この後、インタセプション処理へ移行する(ステップ
1034)。Then, the process proceeds to the interception process (step
1034).
また、条件付きインタセプションを発生させる命令に
おいて、TS命令,CS命令,CDS命令等のシリアライゼーシ
ョンを行う以外の命令が実行された場合、インタセプシ
ョン条件が成立するか否かをチェックする(ステップ10
21)。条件が成立しなければ、該命令を直接実行し(ス
テップ1022)、条件が成立すれば、ステップ1016からス
テップ1023へ移行し、インタセプションコードCODEを
“04"とし、さらに、この時PER事象が同時に発生してい
るか否かをチェックする(ステップ1024)。ここで、PE
R事象が同時に発生している場合は、PERによるプログラ
ム割込みが同時に発生したことを示す表示ビットIfをON
とし(ステップ1025)、インタセプション処理へ移行す
る(ステップ1034)。PER事象が同時に発生していない
場合は、IfをOFFとし(ステップ1026)、インタセプシ
ョン処理へ移行する(ステップ1034)。If an instruction other than that for performing serialization, such as a TS instruction, a CS instruction, or a CDS instruction, is executed in an instruction for generating a conditional interception, it is checked whether the interception condition is satisfied (step 10).
twenty one). If the condition is not satisfied, the instruction is directly executed (step 1022). If the condition is satisfied, the process proceeds from step 1016 to step 1023, where the interception code CODE is set to "04". It is checked whether they have occurred simultaneously (step 1024). Where PE
If the R event occurs simultaneously, turn on the display bit If indicating that the program interrupt by PER has occurred at the same time.
(Step 1025), and the process proceeds to the interception process (step 1034). If the PER event has not occurred at the same time, the OFF and I f (step 1026), the process proceeds to interception process (step 1034).
第10図(c)は、無条件インタセプションも,命令例
外インタセプション以外のインタセプションも,条件付
きインタセプションも発生しない場合の実行に関する処
理である。FIG. 10 (c) shows processing relating to execution when neither unconditional interception, interception other than instruction exception interception, or conditional interception occurs.
まず、この場合VMCPから仮想計算機のPER機構を制御
するための制御ビットPsをチェックし(ステップ102
7)、該ビットがONの場合、このインタセプションとPER
事象が同時に発生したかをチェックし(ステップ102
8)、PER事象が同時に発生したときは、PERのプログラ
ム割込みが発生したことを示すインタセプションコード
“08"をセットする(ステップ1029)。また、PER事象な
しのときは、該命令を直接実行する(ステップ1029−
1)。First, in this case, the control bit Ps for controlling the PER mechanism of the virtual machine is checked from the VMCP (step 102).
7) If this bit is ON, this interception and PER
Check whether the events occurred simultaneously (step 102
8) If the PER events occur simultaneously, set an interception code "08" indicating that a PER program interrupt has occurred (step 1029). If there is no PER event, the instruction is directly executed (step 1029-
1).
上記制御ビットPsがOFFの場合も(ステップ1027)、
同様にPER事象が同時に発生したかをチェックし(ステ
ップ1030)、PER事象が同時に発生した場合は、さらにP
ER事象をインタセプトするか否かを制御するための制御
フラグIC(2)をチェックし(ステップ1031)、該ビッ
トがOFFであれば、仮想計算機にその事象を報告する
(ステップ1032)。また、IC(2)がONであれば、イン
タセプションコードCODEにPER事象が発生したことを示
すためのプログラム割込みインタセプションのコード
“08"をセットする(ステップ1033)。この後、インタ
セプション処理へ移行する(ステップ1034)。また、ス
テップ1030において、PER事象なしのときは、該命令を
直接実行する(ステップ1033−1)。Even if the control bit P s is OFF (step 1027),
Similarly, it is checked whether or not PER events have occurred simultaneously (step 1030).
The control flag IC (2) for controlling whether or not to intercept the ER event is checked (step 1031). If the bit is OFF, the event is reported to the virtual machine (step 1032). If the IC (2) is ON, the program interruption interception code "08" for indicating that the PER event has occurred is set in the interception code CODE (step 1033). Thereafter, the process proceeds to an interception process (step 1034). In step 1030, when there is no PER event, the instruction is directly executed (step 1033-1).
以上の実施例の動作により、仮想計算機のアドレスス
トップを行う場合、仮想計算機のPER機構を制御する制
御ビットPsをONとすることによって、仮想計算機のPSW
の更新が行われる命令および事象に関してインタセプシ
ョンを発生させる必要がなくなった。ここで、PSW更新
命令や割込み事象は、仮想計算機の動作中に頻繁に発生
するものであり、この事象をVMCPによるソフトウェアシ
ミュレーションによらず直接実行できることは、システ
ムの性能上,非常に大きな利点である。When the address of the virtual machine is stopped by the operation of the above embodiment, the control bit Ps for controlling the PER mechanism of the virtual machine is turned ON, and the PSW of the virtual machine is turned on.
It is no longer necessary to generate an interception for the instructions and events that cause the update of the. Here, the PSW update instruction and the interrupt event frequently occur during the operation of the virtual machine. The fact that this event can be directly executed without using software simulation by VMCP is a very great advantage in terms of system performance. is there.
以上説明したように、本発明によれば、仮想計算機の
動作中に、インタセプションを発生することなく、VMCP
側から仮想計算機のPER機構を直接制御可能となり、ア
ドレスストップ/ストアストップ等のテストデバック
も、PSWのシステムマスク部を更新する命令および割込
み事象に関してインタセプションを発生させずに行える
ようになる。As described above, according to the present invention, during operation of a virtual machine, VMCP is performed without generating interception.
The PER mechanism of the virtual machine can be directly controlled from the side, and test debugging such as address stop / store stop can be performed without generating an interception for an instruction for updating the system mask portion of the PSW and an interrupt event.
【図面の簡単な説明】 第1図は本発明の一実施例を示す電子計算機システムの
全体構成図、第2図は本発明の原理的説明図、第3図は
第1図における記録制御切換え回路の具体的構成例を示
す図、第4図は仮想計算機のPER機構の制御ビットの生
成方式を説明するための図、第5図はPER機構でのアド
レスチェック方式の概念図、第6図はアドレスチェック
方式を制御するVMCPコマンドの例を示す図、第7図はPE
R事象を制御するための制御装置の動作説明図、第8
図,第9図はPER機構の制御情報の説明図、第10図は制
御装置内のマイクロプログラムの概要図である。 100:命令実行ユニット、200:制御装置、300:PER機構、4
00H:ホスト資源、400G:ゲスト資源、500:記録制御切換
え回路、501:資源切換え部、800:主記憶装置、801:制御
ビット、802:仮想計算機制御プログラム、803:仮想計算
機、10:仮想計算機が動作していることを表示するラッ
チ、20:VMCPから仮想計算機のPER機構を制御するための
制御ラッチ。BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is an overall configuration diagram of an electronic computer system showing one embodiment of the present invention, FIG. 2 is a principle explanatory diagram of the present invention, and FIG. 3 is a recording control switching in FIG. FIG. 4 is a diagram showing a specific configuration example of a circuit, FIG. 4 is a diagram for explaining a control bit generation method of a PER mechanism of a virtual machine, FIG. Fig. 7 shows an example of a VMCP command for controlling the address check method.
Operation explanatory view of the control device for controlling the R event, FIG.
FIG. 9 is an explanatory diagram of control information of the PER mechanism, and FIG. 10 is a schematic diagram of a microprogram in the control device. 100: instruction execution unit, 200: control unit, 300: PER mechanism, 4
00H: host resource, 400G: guest resource, 500: recording control switching circuit, 501: resource switching unit, 800: main memory, 801: control bit, 802: virtual computer control program, 803: virtual computer, 10: virtual computer Latch indicating that is operating, 20: Control latch for controlling the PER mechanism of the virtual machine from VMCP.
───────────────────────────────────────────────────── フロントページの続き (72)発明者 清野 聡 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所システム開発研究所 内 (72)発明者 梅野 英典 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所システム開発研究所 内 (72)発明者 原口 政敏 神奈川県横浜市戸塚区戸塚町5030番地 株式会社日立製作所ソフトウエア工場内 (72)発明者 澤本 英雄 神奈川県秦野市堀山下1番地 株式会社 日立製作所神奈川工場内 (72)発明者 塩川 鎮雄 東京都千代田区内幸町1丁目1番6号 日本電信電話株式会社内 (72)発明者 小池 夫澄 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内 (72)発明者 伊藤 行雄 東京都府中市日新町1丁目10番地 日本 電気株式会社内 (56)参考文献 特開 昭62−114042(JP,A) ──────────────────────────────────────────────────続 き Continuing on the front page (72) Inventor Satoshi Seino 1099 Ozenji Temple, Aso-ku, Kawasaki City, Kanagawa Prefecture Inside Hitachi, Ltd.System Development Laboratory Co., Ltd. (72) Hidenori Umeno 1099 Ozenji Temple, Aso-ku, Kawasaki City, Kanagawa Prefecture Hitachi Systems Development Laboratory (72) Inventor Masatoshi Haraguchi 5030 Totsuka-cho, Totsuka-ku, Yokohama-shi, Kanagawa Prefecture Inside the Hitachi, Ltd.Software Factory (72) Inventor Hideo Sawamoto 1-Horiyamashita, Hadano-shi, Kanagawa Prefecture Hitachi, Ltd. (72) Inventor Norio Shiokawa 1-1-6 Uchisaiwaicho, Chiyoda-ku, Tokyo Nippon Telegraph and Telephone Corporation (72) Inventor Kosumi Koike 1015 Kamikodanaka, Nakahara-ku, Kawasaki City, Kanagawa Prefecture Fujitsu Limited (72) Inventor Yukio Ito 1-10-10 Nissincho, Fuchu-shi, Tokyo Japan Electric Co., Ltd. (56) References JP-A-62-114042 (JP, A)
Claims (4)
グラム(VMCP)の制御に基づき動作させると共に、上記
VMCPおよび上記仮想計算機の動作時のプログラム事象を
監視する命令事象記録機構(PER機構)を具備する電子
計算機システムにおいて、 上記仮想計算機の動作時には該仮想計算機用のプログラ
ム状態語PSWのPER制御ビットRに従って仮想計算機用の
PER機構を動作させ、上記VMCPの動作時には該VMCP用の
プログラム状態語PSWのPER制御ビットRに従ってVMCP用
のPER機構を動作させる第1の手段と、 上記仮想計算機の動作時、少なくとも上記VMCPによる上
記仮想計算機のテストデバッグ時に上記VMCPから指示さ
れるアドレスストップ命令もしくはストアストップ命令
を含む上記VMCPから上記PER機構を制御するための所定
の命令が指示されれば、上記仮想計算機用のPER制御ビ
ットRとは無関係に上記仮想計算機用のPER機構を動作
させる制御ビットPsをセットする手段と、上記制御ビッ
トPsに従い上記第1の手段に加えて上記仮想計算機用の
PER機構を動作させ、該仮想計算機用のPER機構で検出さ
れた上記プログラム事象を上記VMCPに送出させる第2の
手段と を設けたことを特徴とする電子計算機システム。A plurality of virtual machines operating under control of a virtual machine control program (VMCP);
In an electronic computer system provided with a VMCP and an instruction event recording mechanism (PER mechanism) for monitoring a program event during operation of the virtual machine, a PER control bit R of a program status word PSW for the virtual machine when the virtual machine is operating According to the virtual machine for
A first means for operating a PER mechanism and operating the PER mechanism for VMCP in accordance with the PER control bit R of the program status word PSW for the VMCP during the operation of the VMCP; At the time of test debugging of the virtual machine, if a predetermined command for controlling the PER mechanism is specified from the VMCP including an address stop instruction or a store stop instruction specified by the VMCP, a PER control bit for the virtual machine Means for setting a control bit Ps for operating the PER mechanism for the virtual machine irrespective of R; in addition to the first means in addition to the first means according to the control bit Ps,
And a second means for operating the PER mechanism and sending the program event detected by the PER mechanism for the virtual machine to the VMCP.
いて、上記制御ビットPsをセットする手段は、上記仮想
計算機を動作させる命令が実行された時、主記憶装置内
の特定の場所に格納された上記所定の命令を読み出す手
段と、該読み出した上記所定の命令をラッチして上記第
2の手段に送出する手段とからなることを特徴とする電
子計算機システム。2. The computer system according to claim 1, wherein said means for setting said control bit Ps is stored in a specific location in a main memory when an instruction to operate said virtual machine is executed. An electronic computer system comprising: means for reading the predetermined instruction; and means for latching the read predetermined instruction and sending the latched instruction to the second means.
に記載の電子計算機システムにおいて、上記仮想計算機
の動作を上記PER機構とは別に監視し、特定の事象の発
生時、上記仮想計算機の動作を中止させて上記VMCPに制
御を戻すインタセプションを行うと共に、上記インタセ
プションと上記制御ビットPsに従っての上記PER機構に
よるプログラム事象の検出とが同時に発生した場合、そ
の旨を上記VMCPに通知する手段を設けたことを特徴とす
る電子計算機システム。3. The electronic computer system according to claim 1, wherein the operation of the virtual computer is monitored separately from the PER mechanism, and when a specific event occurs, the virtual computer is monitored. When the interception is performed to return the control to the VMCP by suspending the operation of the above, and when the interception and the detection of the program event by the PER mechanism according to the control bit Ps occur simultaneously, the fact is notified to the VMCP. An electronic computer system characterized by comprising means for performing.
電子計算機システムにおいて、上記VMCPからの上記所定
の命令内に付与された、上記PER機構の管理領域を物理
アドレスもしくは論理アドレスのいずれで指定するかを
示す識別情報を読み取り、該識別情報に基づき、上記PE
R機構で必要とする主記憶装置のアドレスを特定する手
段を設けたことを特徴とする電子計算機システム。4. The computer system according to claim 1, wherein the management area of the PER mechanism provided in the predetermined command from the VMCP is a physical address or a logical address. The identification information indicating which is designated is read, and based on the identification information, the PE
An electronic computer system comprising means for specifying an address of a main storage device required by an R mechanism.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63170071A JP2705121B2 (en) | 1988-07-08 | 1988-07-08 | Electronic computer system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63170071A JP2705121B2 (en) | 1988-07-08 | 1988-07-08 | Electronic computer system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0219937A JPH0219937A (en) | 1990-01-23 |
| JP2705121B2 true JP2705121B2 (en) | 1998-01-26 |
Family
ID=15898098
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63170071A Expired - Lifetime JP2705121B2 (en) | 1988-07-08 | 1988-07-08 | Electronic computer system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2705121B2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03217949A (en) * | 1990-01-23 | 1991-09-25 | Hitachi Ltd | computer system |
| US7685635B2 (en) * | 2005-03-11 | 2010-03-23 | Microsoft Corporation | Systems and methods for multi-level intercept processing in a virtual machine environment |
| US8327353B2 (en) | 2005-08-30 | 2012-12-04 | Microsoft Corporation | Hierarchical virtualization with a multi-level virtualization mechanism |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62114042A (en) * | 1985-11-13 | 1987-05-25 | Fujitsu Ltd | Program event recording control method |
-
1988
- 1988-07-08 JP JP63170071A patent/JP2705121B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0219937A (en) | 1990-01-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5511217A (en) | Computer system of virtual machines sharing a vector processor | |
| US5187802A (en) | Virtual machine system with vitual machine resetting store indicating that virtual machine processed interrupt without virtual machine control program intervention | |
| US6988264B2 (en) | Debugging multiple threads or processes | |
| US7020871B2 (en) | Breakpoint method for parallel hardware threads in multithreaded processor | |
| US5113521A (en) | Method and apparatus for handling faults of vector instructions causing memory management exceptions | |
| US4494189A (en) | Method and means for switching system control of CPUs | |
| US5555414A (en) | Multiprocessing system including gating of host I/O and external enablement to guest enablement at polling intervals | |
| US5043867A (en) | Exception reporting mechanism for a vector processor | |
| US12014199B1 (en) | Virtualization extension modules | |
| JPH03217949A (en) | computer system | |
| JPS6258341A (en) | I/O interrupt processing method | |
| US10049064B2 (en) | Transmitting inter-processor interrupt messages by privileged virtual machine functions | |
| KR920003044B1 (en) | Control system for guest execution of virtual computer system | |
| KR102811227B1 (en) | System and method for handling exception occurrence events | |
| US20130268804A1 (en) | Synchronous software interface for an accelerated compute engine | |
| JP2705121B2 (en) | Electronic computer system | |
| JP2823230B2 (en) | How to continue processing | |
| JPH1049373A (en) | Method and device for operating multiplex and highly accurate event for pipeline digital processor | |
| US5813039A (en) | Guest execution control system, method and computer process for a virtual machine system | |
| JPH09282196A (en) | Program run control method for complex logic processor system. | |
| JP3503504B2 (en) | Debug processing system, computer and debug processing method | |
| JPS6376028A (en) | Instruction step execution control method in virtual computer system | |
| JPH0646380B2 (en) | Information processing equipment | |
| JP2550708B2 (en) | Debug method | |
| CN118860762A (en) | Simulation system and method based on digital signal processor |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071009 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081009 Year of fee payment: 11 |
|
| EXPY | Cancellation because of completion of term | ||
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081009 Year of fee payment: 11 |