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

仮想計算機方式

Info

Publication number
JP2765411B2
JP2765411B2 JP4319755A JP31975592A JP2765411B2 JP 2765411 B2 JP2765411 B2 JP 2765411B2 JP 4319755 A JP4319755 A JP 4319755A JP 31975592 A JP31975592 A JP 31975592A JP 2765411 B2 JP2765411 B2 JP 2765411B2
Authority
JP
Japan
Prior art keywords
instruction
processor
virtual machine
exception
running
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
Application number
JP4319755A
Other languages
English (en)
Other versions
JPH06168146A (ja
Inventor
敦 中島
八穂子 中川
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
Original Assignee
Hitachi 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 filed Critical Hitachi Ltd
Priority to JP4319755A priority Critical patent/JP2765411B2/ja
Priority to US08/159,237 priority patent/US5511217A/en
Publication of JPH06168146A publication Critical patent/JPH06168146A/ja
Application granted granted Critical
Publication of JP2765411B2 publication Critical patent/JP2765411B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、仮想計算機方式に関す
るもので、特に複数のOSが走行するスーパーコンピュ
ータの仮想計算機システムに係わる。
【0002】
【従来の技術】仮想計算機システムは、1台の実計算機
上に論理的な計算機である仮想計算機を複数台生成し、
各々の仮想計算機のもとで1つのオペレーティング・シ
ステム(Operating System,以下OS
と称する。)の走行を可能とする。この仮想計算機シス
テムにおいて、仮想計算機の制御を司るプログラムが仮
想計算機モニタであり、この仮想計算機モニタは仮想計
算機のスケジューリング処理や、仮想計算機上のOSが
発行した命令のうち直接実行できない命令のシミュレー
ション処理等を行う。
【0003】一方、スカラ演算及び汎用演算を高速に処
理するスカラプロセッサと、ベクトル演算を高速に処理
するベクトルプロセッサからなるスーパーコンピュータ
がある。スカラプロセッサとベクトルプロセッサは並列
に動作可能であることを特徴とする。スカラプロセッサ
は特定のスカラ命令を実行することにより、ベクトルプ
ロセッサにおけるベクトル演算処理の開始を指示する
(すなわち、ベクトルプロセッサの起動を行う)。ま
た、ベクトルプロセッサは、演算処理終了により終了割
込み保留状態になり、スカラプロセッサに該演算処理終
了を通知する。
【0004】スーパーコンピュータは主に科学技術計算
を高速に処理する計算機として使用されているが、汎用
コンピュータとしての用途も兼ね備えている。また、昨
今の傾向は、スカラプロセッサとベクトルプロセッサの
対を1つの単位として、これを複数台結合したマルチプ
ロセッサ構成をとることが主流となってきている。この
ため、スーパーコンピュータ上で仮想計算機システムを
運用し複数のOSを並列に走行することにより、計算機
資源の有効活用を図りたいという強い要求がある。
【0005】スーパーコンピュータ上で仮想計算機シス
テムを運用する際の技術としては、特開昭64−545
42号公報「仮想計算機方式」にて、1台の仮想計算機
上のOSでベクトルプロセッサ(前記公報ではベクトル
ユニットと呼んでいる)を専有し複数の仮想計算機上の
OSでスカラプロセッサ(前記公報ではスカラユニット
と呼んでいる)を共有する仮想計算機方式が開示されて
いる。しかし、前記公報に限らず、従来、ベクトルプロ
セッサを複数の仮想計算機上のOSで共有可能とする仮
想計算機方式は開示されていない。
【0006】
【発明が解決しようとする課題】ベクトルプロセッサを
複数の仮想計算機上のOSで共有可能とする仮想計算機
方式を実現するために行った本発明者の検討によれば、
具体的に次の課題がある。
【0007】(1)第1の課題は、仮想計算機モニタに
よってベクトルプロセッサの終了割込み処理のシミュレ
ーションを行った場合、ベクトルプロセッサを起動した
OSがベクトルプロセッサの状態判定を誤る可能性があ
るという問題を解決することである。
【0008】仮想計算機モニタによってベクトルプロセ
ッサの終了割込み処理のシミュレーションを行う機能
は、ベクトルプロセッサの使用効率を高める上で必要で
ある。なぜなら、ベクトルプロセッサが終了割込み保留
状態になると、以後スカラプロセッサがこの保留状態を
検出し終了割込み処理を行い該状態を解除するまで、新
たな起動が不可能となる。一般的にOSは、ベクトルプ
ロセッサを専有する環境でスカラプロセッサとベクトル
プロセッサとの並列動作性を高めることを目的としてい
るため、ベクトルプロセッサの演算処理の終了を常に見
張っている訳ではない。ベクトルプロセッサを起動した
OSが、ベクトルプロセッサの演算が終了した後長時間
終了割込み処理を実行しない場合、このOS以外のOS
はベクトルプロセッサを起動できず、ベクトルプロセッ
サの使用効率は低下してしまう。そこで、仮想計算機モ
ニタによってベクトルプロセッサの終了割込み処理のシ
ミュレーションを行い、ベクトルプロセッサにおいて新
たな起動が可能な状態を極力多くすることが必要とな
る。
【0009】しかし、現状のスカラプロセッサの機能に
は、仮想計算機モニタが前記シミュレーションを行い終
了割込み保留状態の解除を行ったことを、ベクトルプロ
セッサを起動したOSに通知する手段がない。このた
め、該OSがベクトルプロセッサの状態をテストした場
合、終了割込み保留状態と判定するべきところを、該終
了割込み保留状態が解除された状態と判定してしまう。
【0010】(2)第2の課題は、ベクトルプロセッサ
が有する制御情報及び演算初期値を保持するレジスタの
退避回復に関することである。
【0011】前述のように、従来の仮想計算機システム
において1つの仮想計算機上のOSがベクトルプロセッ
サを専有する場合は、ベクトルプロセッサが有する制御
情報及び演算初期値を保持するレジスタの退避回復は不
要である。しかし、複数の仮想計算機上のOSがベクト
ルプロセッサを共有する仮想計算機システムでは、ベク
トルプロセッサが有する制御情報及び演算初期値を保持
するレジスタの退避回復が必要であり、該退避回復をど
の時点で行うかが問題となる。
【0012】スカラプロセッサが有する資源の退避回復
のように、実計算機上で走行するOSが切り替わるとき
に行う方式とすると、ベクトルプロセッサが演算処理を
行っている間は、ベクトルプロセッサを起動したOS以
外のOSは実計算機上で走行できないことになり、シス
テム全体の効率を低下させる恐れがある。また、ベクト
ルプロセッサが有する制御情報及び演算初期値を保持す
るレジスタの情報量は非常に多く、退避回復に要する時
間が大きいため、退避回復の回数は必要最小限にするこ
とが望ましい。
【0013】本発明の目的は、第1の課題及び第2の課
題を解決し、仮想計算機システムにおいてシステム全体
の効率を高めるような、ハードウェアの機能を提供する
ことにある。
【0014】
【課題を解決するための手段】上述した課題を解決する
ために、第1のプロセッサ(スカラプロセッサ)と第2
のプロセッサ(ベクトルプロセッサ)を有し、前記第2
のプロセッサが有する制御情報及び演算初期値を前記第
1のプロセッサが参照・更新する手段と、前記第2のプ
ロセッサによる演算処理開始を前記第1のプロセッサが
指示する(ベクトルプロセッサを起動する)手段と、前
記第2のプロセッサの状態を前記第1のプロセッサがテ
ストする手段と、前記第2のプロセッサによる演算処理
終了を前記第1のプロセッサに通知する手段を有する計
算機上で、仮想計算機モニタによる管理のもと複数のオ
ペレーティングシステム(OS)が走行する仮想計算機
システムであって、前記第1のプロセッサは、前記仮想
計算機モニタにより設定されるインタセプション・フラ
グなるフラグを有し、前記仮想計算機モニタにより選択
された任意のOSが前記第1のプロセッサで走行する
間、該フラグの値の真偽如何により、参照・更新手段あ
るいは指示手段あるいはテスト手段の行使を指示する命
令に於いて例外を発生し、該命令の実行を抑止すると同
時に、走行中であるOSの走行を中断し仮想計算機モニ
タによる該命令の実行を要求する機能を有する。
【0015】
【作用】
(1)スカラプロセッサとベクトルプロセッサを有する
スーパーコンピュータ上で、複数のオペレーティングシ
ステム(OS)が走行する仮想計算機システムにおい
て、仮想計算機モニタは、ベクトルプロセッサを使用す
る可能性のあるOSの走行を開始する際、スカラプロセ
ッサが有するインタセプション・フラグの値を予め1ま
たは0に設定する。一方、スカラプロセッサは、ベクト
ルプロセッサの状態をテストする命令を実行する際、前
記インタセプション・フラグをテストする。該テストの
結果、インタセプション・フラグが1ならば、スカラプ
ロセッサは前記ベクトルプロセッサの状態をテストする
命令に於いて例外を発生し、該命令の実行を抑止すると
同時に、現在走行中のOSの走行を中断し、仮想計算機
モニタによる該命令のシミュレーションの実行を要求す
る。また、前記テストの結果、インタセプション・フラ
グが0ならば、スカラプロセッサは前記命令をそのまま
実行し、現在走行中のOSの走行を継続する。
【0016】以上のようにして、仮想計算機モニタによ
ってベクトルプロセッサの終了割込みのシミュレーショ
ンを行った場合に発生する、ベクトルプロセッサを起動
したOSがベクトルプロセッサの状態判定を誤るという
問題を解決することができる。(第1の課題の解決) (2)スカラプロセッサとベクトルプロセッサを有する
スーパーコンピュータ上で、複数のオペレーティングシ
ステム(OS)が走行する仮想計算機システムにおい
て、仮想計算機モニタは、ベクトルプロセッサを使用す
る可能性のあるOSの走行を開始する際、スカラプロセ
ッサが有するインタセプション・フラグの値を予め1ま
たは0に設定する。一方、スカラプロセッサは、ベクト
ルプロセッサが有する制御情報及び演算初期値を保持す
るレジスタを参照・更新する命令、あるいはベクトルプ
ロセッサによる演算処理開始を指示する命令(ベクトル
プロセッサを起動する命令)のいずれかを実行する際、
前記インタセプション・フラグをテストする。該テスト
の結果、インタセプション・フラグが1ならば、スカラ
プロセッサは前記ベクトルプロセッサが有する制御情報
及び演算初期値を保持するレジスタを参照・更新する命
令、及びベクトルプロセッサによる演算処理開始を指示
する命令(ベクトルプロセッサを起動する命令)に於い
て例外を発生し、該命令の実行を抑止すると同時に、現
在走行中のOSの走行を中断し、仮想計算機モニタによ
る該命令のシミュレーションの実行を要求する。また、
前記テストの結果、インタセプション・フラグが0なら
ば、スカラプロセッサは前記命令をそのまま実行し、現
在走行中のOSの走行を継続する。
【0017】以上のようにして、仮想計算機モニタに対
して、ベクトルプロセッサが有する制御情報及び演算初
期値を保持するレジスタの、退避回復の契機を提供する
ことができる。(課題2の解決)
【0018】
【実施例】図1は、本発明を適用したスーパーコンピュ
ータの概念図である。図1において、1はスカラ演算を
処理するスカラプロセッサ(SP)、2はベクトル演算
を処理するベクトルプロセッサ(VP)、3はスカラプ
ロセッサ1及びベクトルプロセッサ2の指示に従って主
記憶装置4(MS)の参照あるいは更新の制御を行う記
憶制御装置(SC)である。
【0019】スカラプロセッサ1は、本発明によって新
たにインタセプション・フラグ7を具備し機能を拡張し
たスカラ命令実行回路6と、スカラ命令実行において例
外が発生した場合のプログラム割込み処理あるいはベク
トルプロセッサ2の終了割込み処理を行う割込み実行回
路5を有する。ここで割込み処理とは、割込み要因ごと
に定められた主記憶装置4の領域へ現PSW(Program
Status Word)及び割込み要因の情報を格納し、割込み
要因ごとに定められた主記憶装置4の領域の値を新PS
Wとして設定する動作を示す。このため割込み実行回路
5は、割込み要因ごとに処理ステップを持ち、発生した
割込み要因に従って対応する処理ステップを実行する。
【0020】ベクトルプロセッサ2はベクトル命令の処
理を行うベクトル命令実行回路9を有し、該ベクトル命
令実行回路9はベクトルプロセッサ制御情報を保持する
レジスタ10とベクトル演算の初期値を保持するレジス
タ11を有する。スカラ命令実行回路6が有するレジス
タのデータあるいは主記憶装置4のデータを、レジスタ
10あるいはレジスタ11に設定するスカラ命令を、セ
ットアップ命令と呼ぶ。また、ベクトル命令実行回路9
に対して、主記憶装置4にあるベクトル演算命令の処理
開始を指示する(ベクトルプロセッサ2の起動を行う)
スカラ命令を、EXVP(Execute Vector Processin
g)命令と呼ぶ。
【0021】ベクトルプロセッサ2は、図2に示すよう
に非動作中・動作中・終了割込み保留中の3種類の状態
を持ち、該状態はベクトル命令実行回路9からスカラ命
令実行回路6に送られている。非動作中の状態のとき、
スカラプロセッサ1による起動が可能であり、該起動に
よってベクトルプロセッサ2は動作中の状態に遷移し、
ベクトル演算命令の処理終了をもって終了割込み保留中
の状態へと遷移する。スカラ命令実行回路6は、PSW
の特定ビット(終了割込みマスク)による制御のもと
で、ベクトル命令実行回路9から送られる該終了割込み
保留中の状態を検出し、割込み実行回路5に終了割込み
発生を報告する。割込み実行回路5は、該終了割込み報
告に従って終了割込み処理のステップを実行し、該ステ
ップの中でベクトルプロセッサ2の終了割込み保留中の
状態を解除し、ベクトルプロセッサ2を非動作中の状態
へと遷移させる。ベクトルプロセッサ2の状態を判定す
るスカラ命令を、TVP(Test Vector Processing)命
令と呼ぶ。
【0022】一方、主記憶装置4には、仮想計算機(V
M)の制御プログラムである仮想計算機モニタ12があ
る。仮想計算機モニタ12がスカラプロセッサ1におい
て走行中にSIE(Start Interpretive Execution)命
令なる命令を実行することにより、スカラプロセッサ1
はIE(Interpretive Execution)モードとなり、仮想
計算機(VM)がスカラプロセッサ1において走行を開
始する。SIE命令は、仮想計算機起動情報14と仮想
計算機退避情報15を有する状態記述子13(SD)を
オペランドとする。SIE命令実行時、スカラ命令実行
回路6は、仮想計算機起動情報14の内容にしたがって
スカラプロセッサ1の初期化を行い、スカラプロセッサ
1をIEモードとして、仮想計算機の命令実行を開始す
る。仮想計算機上では処理できない命令が出現した場
合、スカラ命令実行回路6は、該命令実行を抑止し、仮
想計算機の状態及び中断の原因を仮想計算機退避情報1
5に格納した上で、スカラプロセッサ1を非IEモード
として、仮想計算機モニタの命令実行を開始する。この
場合にスカラ命令実行回路6が行う前記一連の動作をイ
ンタセプションと呼ぶ。
【0023】図3に、スカラ命令実行回路6の詳細な構
成を示す。命令解読回路16は、主記憶装置4から読み
出したスカラ命令を解読し制御線19に演算制御情報を
出力する。演算制御回路18は、演算制御情報に従って
データパスの制御及び演算器の動作制御等の演算制御を
行う。特にEXVP命令の場合、演算制御回路18は制
御線21にベクトルプロセッサ2の起動信号を出力す
る。TVP命令の場合、演算制御回路18は、ベクトル
命令実行回路9から制御線36を通じて送られるベクト
ルプロセッサ2の状態情報に基づいて、ベクトルプロセ
ッサ2の状態を判定する。ベクトル命令実行回路9が制
御線36に終了割込み保留中の状態情報を出力すると、
演算制御回路18はPSWの特定のビット(終了割込み
マスク)による制御のもとで、演算制御を抑止すると同
時に制御線37を通じて割込み実行回路5へ終了割込み
発生を報告する。
【0024】また、演算制御回路18はインタセプショ
ンの動作制御も行う。例外検出回路17は、演算制御情
報に基づいてプログラム割込み要因となる例外の検出を
行い、例外を検出した場合は例外を発生した命令の情報
を保持し、制御線20に例外発生信号を出力し、演算制
御回路18で行われている演算制御を抑止すると同時
に、割込み実行回路5へ例外発生を報告する。例外を発
生した命令の情報は、制御線35を通じて割込み実行回
路5へ送られる。特にEXVP命令で例外が発生した場
合、制御線21に出力されるベクトルプロセッサ2の起
動信号は抑止される。なお、IEモードフラグ22は、
IEモードの間1となるフラグであり、値の設定は演算
制御回路18が制御線40を通じて行う。
【0025】図4に例外検出回路17の詳細な構成を示
す。従来の例外検出部30は演算制御情報に基づいてプ
ログラム割込み要因となる例外の検出を行い、例外を検
出した場合は、例外発生を表す制御線38に1を出力す
る。バッファ34は、例外を発生した命令の情報を保持
する。
【0026】本実施例において、例外検出回路17は、
条件付きインタセプション検出回路31とOR回路33
を新たに具備する。条件付きインタセプション検出回路
31は、インタセプション・フラグ7が1かつIEモー
ドフラグ22が1かつ制御線19にEXVP命令・TV
P命令・セットアップ命令のいずれかの演算制御情報が
出力されたとき、制御線39に1を出力する。OR回路
33は、制御線38と制御線39に出力される値の論理
和が1となるとき、制御線20に例外発生信号を出力す
る。インタセプション・フラグ7の値の設定は、IEモ
ードフラグ22同様、演算制御回路18が制御線40を
通じて行う。IEモードフラグ22の値は制御線41を
通じて、そしてインタセプション・フラグ7の値は制御
線42を通じて、それぞれ例外検出回路17と割込み実
行回路5へ送られる。この構成によって、例外検出回路
17は、インタセプション・フラグ7の値が1でかつI
Eモードフラグ22の値が1の時、制御線19にセット
アップ命令あるいはEXVP命令あるいはTVP命令の
いずれかの命令の演算制御情報が出力されると、制御線
20に例外発生信号を出力する機能を持つ。
【0027】一方、本発明により、割込み実行回路5は
図5に示すステップを新たに具備し、制御線20に例外
発生信号が出力されたとき、演算制御回路18にインタ
セプションの実行を指示するかあるいはプログラム割込
み処理を行うかいずれかを選択する機能を有する。すな
わち、仮想計算機がスカラプロセッサ1において走行中
(IEモードフラグ22は1)でインタセプション・フ
ラグ7が1の時、命令解読回路16がセットアップ命令
あるいはEXVP命令あるいはTVP命令のいずれかの
命令を解読し、制御線19に該命令の演算制御情報を出
力すると、例外検出回路17は制御線20に例外発生信
号を出力し演算制御回路18における該命令の演算制御
を抑止する。割込み実行回路5は、この例外発生信号を
受け取ると、制御線35から送られる情報に基づいて、
例外を発生した命令がセットアップ命令あるいはEXV
P命令あるいはTVP命令のいずれかであるか否かの判
定を行う。該判定が否定的であるとき、プログラム割込
み処理を行う。該判定が肯定的であるとき、IEモード
フラグ22及びインタセプション・フラグ7がいずれも
1であるか否かの判定を行う。該判定が否定的であると
き、プログラム割込み処理を行う。該判定が肯定的であ
るとき、制御線23を通じて演算制御回路18にインタ
セプションの実行を指示する。
【0028】このようにして、本発明によりスカラプロ
セッサ1は、仮想計算機が走行中インタセプション・フ
ラグ7の値によって、セットアップ命令あるいはEXV
P命令あるいはTVP命令でインタセプションを実行す
る機能を実現する。インタセプションの対象となる命令
の検出を例外検出の形で行うことにより、命令解読回路
16における命令解読から演算制御回路18における演
算制御開始までの間に処理を追加することなく、従来の
命令処理性能を保ちながら前記機能の実現を可能として
いる。
【0029】まず、前記第1の課題の解決について説明
する。
【0030】例えば、第1のOSがスカラプロセッサ1
で走行中にベクトルプロセッサ2を起動し、仮想計算機
モニタ12がベクトルプロセッサ2の終了割込み処理の
シミュレーションを行ったと仮定する。仮想計算機モニ
タ12はベクトルプロセッサ2の終了割込み処理のシミ
ュレーションを行った後、第1のOSの走行を開始する
場合はインタセプション・フラグ7を1とする。第1の
OSがスカラプロセッサ1で走行中(IEモードフラグ
22は1)、命令解読回路16がTVP命令を解読する
と、演算制御回路18は該命令の演算制御を抑止し、イ
ンタセプションを実行する。仮想計算機モニタ12は、
仮想計算機退避情報15に格納された情報から、該イン
タセプションの原因が第1のOSにおけるTVP命令の
出現であることを検知すると、該命令のシミュレーショ
ンを実行し、シミュレーションによって得られたベクト
ルプロセッサ2の状態を仮想計算機起動情報14に格納
し、インタセプション・フラグ7を0として、スカラプ
ロセッサ1における第1のOSの走行を開始する。これ
により、仮想計算機モニタ12がベクトルプロセッサ2
の終了割込み処理のシミュレーションを行ったとして
も、第1のOSがベクトルプロセッサ2の状態判定を正
しく実行することができる。また、第1のOSがTVP
命令でインタセプションを発生した後は、第1のOSが
TVP命令を直接実行することが可能となり、仮想計算
機モニタ12の介在によるオーバーヘッドを最小限に抑
えている。一方、仮想計算機モニタ12がベクトルプロ
セッサ2の終了割込み処理のシミュレーションを行った
後で第1のOS以外の第2のOSの走行を開始する場
合、仮想計算機モニタ12はインタセプション・フラグ
7を0とする。これにより、仮想計算機モニタ12がベ
クトルプロセッサ2の終了割込み処理のシミュレーショ
ンを行ったとしても、第2のOSの走行に影響が及ぶこ
とはない。
【0031】次に、前記第2の課題の解決について説明
する。
【0032】例えば、第1のOSがベクトルプロセッサ
2を起動した後、第2のOSがスカラプロセッサ1上で
走行すると仮定する。仮想計算機モニタ12は、第2の
OSの走行に先立ちインタセプション・フラグ7を1と
する。第2のOSがスカラプロセッサ1で走行中(IE
モードフラグ22は1)、命令解読回路16がセットア
ップ命令あるいはEXVP命令のいずれかの命令を解読
すると、演算制御回路18は該命令の演算制御を抑止
し、インタセプションを実行する。仮想計算機モニタ1
2は、仮想計算機退避情報15に格納された情報から該
インタセプションの原因が第2のOSにおけるセットア
ップ命令あるいはEXVP命令の出現であることを検知
すると、ベクトルプロセッサ制御情報を保持するレジス
タ10とベクトル演算の初期値を保持するレジスタ11
の退避回復を実行する。これにより、第2のOSは、ベ
クトルプロセッサ2の状態に関係なく、セットアップ命
令あるいはEXVP命令のいずれかが命令解読回路16
で解読されるまでスカラプロセッサ1上で走行すること
が可能となる。一方、第2のOSがスカラプロセッサ1
上で走行中に命令解読回路16がセットアップ命令ある
いはEXVP命令のいずれの命令も解読せず、なおかつ
第2のOSの走行後仮想計算機モニタ12が第1のOS
の走行を開始する場合(この場合退避回復は不要であ
る)、仮想計算機モニタ12はインタセプション・フラ
グ7を0とする。第1のOSの走行中、スカラ命令実行
回路6はセットアップ命令あるいはEXVP命令をその
まま実行する。 これにより、不要な退避回復を削減す
ることが可能となる。
【0033】本実施例では、第1のOSと第2のOSの
2つのOSがベクトルプロセッサを共有する例を示した
が、OSの数が3つ以上であっても良いことは明らかで
ある。
【0034】また、スーパーコンピュータは、1台のス
カラプロセッサ1と1台のベクトルプロセッサ2を有す
るとしたが、スカラプロセッサ1とベクトルプロセッサ
2の対を複数台結合したマルチプロセッサ構成において
も、本発明が適用できることは明らかである。さらに、
スーパーコンピュータに限らず、類似した構成の計算機
に本発明が適用できることは明らかである。
【0035】
【発明の効果】本発明によって、複数のOSがベクトル
プロセッサを共有する仮想計算機システムにおいて、仮
想計算機モニタによるベクトルプロセッサの終了割込み
処理のシミュレーションが可能となり、ベクトルプロセ
ッサの使用効率を高めることができる。また、仮想計算
機モニタに対して、ベクトルプロセッサが有する制御情
報及び演算初期値を保持するレジスタの退避回復の契機
を提供することが可能となり、システム全体の効率を高
めることができる。加えて、ハードウェアの機能拡張
は、命令処理性能を低下させることなく実現している。
【図面の簡単な説明】
【図1】本発明を適用したスーパーコンピュータの概念
図である。
【図2】ベクトルプロセッサの状態遷移図である。
【図3】本発明を適用したスカラ命令実行回路の詳細な
構成である。
【図4】本発明を適用した例外検出回路の詳細な構成で
ある。
【図5】制御線20に例外発生信号が出力された時に割
込み実行回路が行う処理のフローチャートである。
【符号の説明】
1…スカラプロセッサ、 2…ベクトルプロセッサ、 3…記憶制御装置、 4…主記憶装置、 7…インタセプション・フラグ、 12…仮想計算機モニタ。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 9/46 G06F 15/16 G06F 17/16

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】第1のプロセッサと第2のプロセッサを有
    する計算機上で、仮想計算機モニタによる管理のもと複
    数のオペレーティングシステム(OS)が走行する仮想
    計算機システムにおいて、 前記第2のプロセッサが保持する制御情報及び演算初期
    値を前記第1のプロセッサが参照・更新する手段と、前
    記第2のプロセッサによる演算処理開始を前記第1のプ
    ロセッサが指示する手段と、前記第2のプロセッサの状
    態を前記第1のプロセッサがテストする手段と、前記第
    2のプロセッサによる演算処理終了を前記第1のプロセ
    ッサに通知する手段とを有すると共に、 前記第1のプロセッサは、前記仮想計算機モニタにより
    設定され、特定命令実行時に例外を発生するか否かを示
    インタセプション・フラグ、前記仮想計算機モニタ
    により選択された任意のOSが前記第1のプロセッサで
    走行する間、前記インタセプション・フラグの値が例外
    の発生を示している場合に、前記参照・更新手段あるい
    は前記指示手段あるいは前記テスト手段の行使を指示す
    る命令に於いて例外を発生し、該命令の実行を直前で抑
    止する手段と該手段による命令実行の抑止後、走行中
    であるOSの走行を中断し、前記仮想計算機モニタによ
    前記命令の実行を要求する手段とを有することを特徴
    とする仮想計算機システム
  2. 【請求項2】請求項1記載の仮想計算機システムにおい
    て、 前記第1のプロセッサは、命令実行において例外が発生
    した場合、前記インタセプション・フラグの値の判定
    び例外を発生した命令が前記参照・更新手段あるいは前
    記指示手段あるいは前記テスト手段の行使を指示する命
    令であるか否かの判定を行い、前者の判定結果が例外の
    発生を示しかつ後者の判定結果が肯定的であるとき、前
    記第1のプロセッサで走行中のOSの走行を中断し
    記仮想計算機モニタの走行を開始する手段を有すること
    を特徴とする仮想計算機システム
  3. 【請求項3】請求項1または2記載の仮想計算機システ
    において、前記 第1のプロセッサはスカラプロセッサであり、前記
    第2のプロセッサはベクトルプロセッサであることを特
    徴とする仮想計算機システム
  4. 【請求項4】第1のプロセッサと第2のプロセッサを有
    する計算機上で、仮想計算機モニタによる管理のもと複
    数のオペレーティングシステム(OS)が走行する仮想
    計算機システムにおいて、前記第1のプロセッサは、 前記第2のプロセッサが保持
    する制御情報及び演算初期値を参照・更新する命令、前
    記第2のプロセッサの状態をテストする命令、前記第2
    のプロセッサによる演算処理開始を指示する命令を含む
    命令群を実行する手段と、 前記仮想計算機モニタにより設定されるインタセプショ
    ン状態を保持する手段、 任意のOSが前記第1のプロセッサで走行中、該インタ
    セプション状態に応じて、各前記命令に於いて例外を発
    生し、各前記命令の実行を抑止する手段と、 命令実行中に例外が発生すると前記インタセプション状
    態の判定及び例外を発生した命令が前記参照・更新命令
    又は前記テスト命令又は前記指示命令であるか否かの判
    定を行い、前者の判定結果が例外の発生を示しかつ後者
    の判定結果が肯定的であるとき、前記 OSの走行を中断
    し、前記仮想計算機モニタによる当該命令の実行を要求
    する手段を有することを特徴とする仮想計算機システ
    ム。
JP4319755A 1992-11-30 1992-11-30 仮想計算機方式 Expired - Lifetime JP2765411B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP4319755A JP2765411B2 (ja) 1992-11-30 1992-11-30 仮想計算機方式
US08/159,237 US5511217A (en) 1992-11-30 1993-11-30 Computer system of virtual machines sharing a vector processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4319755A JP2765411B2 (ja) 1992-11-30 1992-11-30 仮想計算機方式

Publications (2)

Publication Number Publication Date
JPH06168146A JPH06168146A (ja) 1994-06-14
JP2765411B2 true JP2765411B2 (ja) 1998-06-18

Family

ID=18113815

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4319755A Expired - Lifetime JP2765411B2 (ja) 1992-11-30 1992-11-30 仮想計算機方式

Country Status (2)

Country Link
US (1) US5511217A (ja)
JP (1) JP2765411B2 (ja)

Families Citing this family (122)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327653B1 (en) * 1995-11-07 2001-12-04 Samsung Electronics Co., Ltd. Technique for easily changing operating systems of a digital computer system using at least two pushbuttons
US5734910A (en) * 1995-12-22 1998-03-31 International Business Machines Corporation Integrating multi-modal synchronous interrupt handlers for computer system
KR100280285B1 (ko) 1996-08-19 2001-02-01 윤종용 멀티미디어 신호에 적합한 멀티미디어 프로세서
US5996058A (en) * 1996-08-19 1999-11-30 Samsung Electronics Company, Ltd. System and method for handling software interrupts with argument passing
US5862308A (en) * 1996-12-03 1999-01-19 Bull Hn Information Systems Inc. Fault intercept and resolution process independent of operating system
US5850556A (en) * 1996-12-26 1998-12-15 Cypress Semiconductor Corp. Interruptible state machine
US6075938A (en) * 1997-06-10 2000-06-13 The Board Of Trustees Of The Leland Stanford Junior University Virtual machine monitors for scalable multiprocessors
US6496847B1 (en) * 1998-05-15 2002-12-17 Vmware, Inc. System and method for virtualizing computer systems
US8631066B2 (en) * 1998-09-10 2014-01-14 Vmware, Inc. Mechanism for providing virtual machines for use by multiple users
US7516453B1 (en) * 1998-10-26 2009-04-07 Vmware, Inc. Binary translator with precise exception synchronization mechanism
JP2000151641A (ja) * 1998-11-13 2000-05-30 Sony Corp 伝送制御方法及び伝送装置
US6820051B1 (en) * 1999-02-19 2004-11-16 Texas Instruments Incorporated Software emulation monitor employed with hardware suspend mode
US7082615B1 (en) 2000-03-31 2006-07-25 Intel Corporation Protecting software environment in isolated execution
US7194634B2 (en) * 2000-03-31 2007-03-20 Intel Corporation Attestation key memory device and bus
US7356817B1 (en) 2000-03-31 2008-04-08 Intel Corporation Real-time scheduling of virtual machines
US7013484B1 (en) 2000-03-31 2006-03-14 Intel Corporation Managing a secure environment using a chipset in isolated execution mode
US7089418B1 (en) 2000-03-31 2006-08-08 Intel Corporation Managing accesses in a processor for isolated execution
US7013481B1 (en) 2000-03-31 2006-03-14 Intel Corporation Attestation key memory device and bus
US6934817B2 (en) * 2000-03-31 2005-08-23 Intel Corporation Controlling access to multiple memory zones in an isolated execution environment
US7073071B1 (en) 2000-03-31 2006-07-04 Intel Corporation Platform and method for generating and utilizing a protected audit log
US6990579B1 (en) 2000-03-31 2006-01-24 Intel Corporation Platform and method for remote attestation of a platform
US6996710B1 (en) 2000-03-31 2006-02-07 Intel Corporation Platform and method for issuing and certifying a hardware-protected attestation key
US7111176B1 (en) 2000-03-31 2006-09-19 Intel Corporation Generating isolated bus cycles for isolated execution
US6769058B1 (en) 2000-03-31 2004-07-27 Intel Corporation Resetting a processor in an isolated execution environment
US6760441B1 (en) 2000-03-31 2004-07-06 Intel Corporation Generating a key hieararchy for use in an isolated execution environment
US6957332B1 (en) * 2000-03-31 2005-10-18 Intel Corporation Managing a secure platform using a hierarchical executive architecture in isolated execution mode
US6976162B1 (en) * 2000-06-28 2005-12-13 Intel Corporation Platform and method for establishing provable identities while maintaining privacy
US7389427B1 (en) 2000-09-28 2008-06-17 Intel Corporation Mechanism to secure computer output from software attack using isolated execution
US7793111B1 (en) 2000-09-28 2010-09-07 Intel Corporation Mechanism to handle events in a machine with isolated execution
US7215781B2 (en) * 2000-12-22 2007-05-08 Intel Corporation Creation and distribution of a secret value between two devices
US7035963B2 (en) * 2000-12-27 2006-04-25 Intel Corporation Method for resolving address space conflicts between a virtual machine monitor and a guest operating system
US7818808B1 (en) * 2000-12-27 2010-10-19 Intel Corporation Processor mode for limiting the operation of guest software running on a virtual machine supported by a virtual machine monitor
US6907600B2 (en) 2000-12-27 2005-06-14 Intel Corporation Virtual translation lookaside buffer
US7225441B2 (en) 2000-12-27 2007-05-29 Intel Corporation Mechanism for providing power management through virtualization
US7117376B2 (en) * 2000-12-28 2006-10-03 Intel Corporation Platform and method of creating a secure boot that enforces proper user authentication and enforces hardware configurations
US7076633B2 (en) * 2001-03-28 2006-07-11 Swsoft Holdings, Ltd. Hosting service providing platform system and method
US7096497B2 (en) * 2001-03-30 2006-08-22 Intel Corporation File checking using remote signing authority via a network
US20020144121A1 (en) * 2001-03-30 2002-10-03 Ellison Carl M. Checking file integrity using signature generated in isolated execution
US7191440B2 (en) * 2001-08-15 2007-03-13 Intel Corporation Tracking operating system process and thread execution and virtual machine execution in hardware or in a virtual machine monitor
US6941105B1 (en) * 2001-10-24 2005-09-06 Novell, Inc. System and method to reduce the time and complexity of information technology classroom setup
US7024555B2 (en) 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment
US6961806B1 (en) 2001-12-10 2005-11-01 Vmware, Inc. System and method for detecting access to shared structures and for maintaining coherence of derived structures in virtualized multiprocessor systems
US7103771B2 (en) * 2001-12-17 2006-09-05 Intel Corporation Connecting a virtual token to a physical token
US20030126454A1 (en) * 2001-12-28 2003-07-03 Glew Andrew F. Authenticated code method and apparatus
US7308576B2 (en) * 2001-12-31 2007-12-11 Intel Corporation Authenticated code module
US20030126453A1 (en) * 2001-12-31 2003-07-03 Glew Andrew F. Processor supporting execution of an authenticated code instruction
US7480806B2 (en) * 2002-02-22 2009-01-20 Intel Corporation Multi-token seal and unseal
US7631196B2 (en) * 2002-02-25 2009-12-08 Intel Corporation Method and apparatus for loading a trustable operating system
US7124273B2 (en) * 2002-02-25 2006-10-17 Intel Corporation Method and apparatus for translating guest physical addresses in a virtual machine environment
US7698360B2 (en) * 2002-02-26 2010-04-13 Novell, Inc. System and method for distance learning
US7331791B2 (en) * 2002-03-05 2008-02-19 Novell, Inc. System and method for evaluating a person's information technology skills
US7028149B2 (en) * 2002-03-29 2006-04-11 Intel Corporation System and method for resetting a platform configuration register
US7069442B2 (en) * 2002-03-29 2006-06-27 Intel Corporation System and method for execution of a secured environment initialization instruction
US20030191943A1 (en) * 2002-04-05 2003-10-09 Poisner David I. Methods and arrangements to register code
US20030196096A1 (en) * 2002-04-12 2003-10-16 Sutton James A. Microcode patch authentication
US7058807B2 (en) * 2002-04-15 2006-06-06 Intel Corporation Validation of inclusion of a platform within a data center
US7076669B2 (en) * 2002-04-15 2006-07-11 Intel Corporation Method and apparatus for communicating securely with a token
US20030196100A1 (en) * 2002-04-15 2003-10-16 Grawrock David W. Protection against memory attacks following reset
US7127548B2 (en) 2002-04-16 2006-10-24 Intel Corporation Control register access virtualization performance improvement in the virtual-machine architecture
US7139890B2 (en) * 2002-04-30 2006-11-21 Intel Corporation Methods and arrangements to interface memory
US20030229794A1 (en) * 2002-06-07 2003-12-11 Sutton James A. System and method for protection against untrusted system management code by redirecting a system management interrupt and creating a virtual machine container
US6820177B2 (en) 2002-06-12 2004-11-16 Intel Corporation Protected configuration space in a protected environment
US7142674B2 (en) * 2002-06-18 2006-11-28 Intel Corporation Method of confirming a secure key exchange
US7343590B2 (en) * 2002-06-25 2008-03-11 Hewlett-Packard Development Company, L.P. System and method for increasing OS idle loop performance in a simulator
US7392415B2 (en) * 2002-06-26 2008-06-24 Intel Corporation Sleep protection
US20040003321A1 (en) * 2002-06-27 2004-01-01 Glew Andrew F. Initialization of protected system
US7124327B2 (en) 2002-06-29 2006-10-17 Intel Corporation Control over faults occurring during the operation of guest software in the virtual-machine architecture
US6996748B2 (en) 2002-06-29 2006-02-07 Intel Corporation Handling faults associated with operation of guest software in the virtual-machine architecture
US7296267B2 (en) * 2002-07-12 2007-11-13 Intel Corporation System and method for binding virtual machines to hardware contexts
US7165181B2 (en) * 2002-11-27 2007-01-16 Intel Corporation System and method for establishing trust without revealing identity
US20040117532A1 (en) * 2002-12-11 2004-06-17 Bennett Steven M. Mechanism for controlling external interrupts in a virtual machine system
US7073042B2 (en) * 2002-12-12 2006-07-04 Intel Corporation Reclaiming existing fields in address translation data structures to extend control over memory accesses
US20040117318A1 (en) * 2002-12-16 2004-06-17 Grawrock David W. Portable token controlling trusted environment launch
US7318141B2 (en) 2002-12-17 2008-01-08 Intel Corporation Methods and systems to control virtual machines
US7793286B2 (en) * 2002-12-19 2010-09-07 Intel Corporation Methods and systems to manage machine state in virtual machine operations
US7900017B2 (en) * 2002-12-27 2011-03-01 Intel Corporation Mechanism for remapping post virtual machine memory pages
US20040128345A1 (en) * 2002-12-27 2004-07-01 Robinson Scott H. Dynamic service registry
US20040128465A1 (en) * 2002-12-30 2004-07-01 Lee Micheil J. Configurable memory bus width
US7076802B2 (en) * 2002-12-31 2006-07-11 Intel Corporation Trusted system clock
US7130949B2 (en) * 2003-05-12 2006-10-31 International Business Machines Corporation Managing input/output interruptions in non-dedicated interruption hardware environments
US7415708B2 (en) * 2003-06-26 2008-08-19 Intel Corporation Virtual machine management using processor state information
US9020801B2 (en) 2003-08-11 2015-04-28 Scalemp Inc. Cluster-based operating system-agnostic virtual computing system
US20050044292A1 (en) * 2003-08-19 2005-02-24 Mckeen Francis X. Method and apparatus to retain system control when a buffer overflow attack occurs
US7287197B2 (en) * 2003-09-15 2007-10-23 Intel Corporation Vectoring an interrupt or exception upon resuming operation of a virtual machine
US7424709B2 (en) 2003-09-15 2008-09-09 Intel Corporation Use of multiple virtual machine monitors to handle privileged events
US7739521B2 (en) * 2003-09-18 2010-06-15 Intel Corporation Method of obscuring cryptographic computations
US7610611B2 (en) * 2003-09-19 2009-10-27 Moran Douglas R Prioritized address decoder
US7177967B2 (en) * 2003-09-30 2007-02-13 Intel Corporation Chipset support for managing hardware interrupts in a virtual machine system
US20050080934A1 (en) 2003-09-30 2005-04-14 Cota-Robles Erik C. Invalidating translation lookaside buffer entries in a virtual machine (VM) system
US7237051B2 (en) 2003-09-30 2007-06-26 Intel Corporation Mechanism to control hardware interrupt acknowledgement in a virtual machine system
US7366305B2 (en) * 2003-09-30 2008-04-29 Intel Corporation Platform and method for establishing trust without revealing identity
US7636844B2 (en) * 2003-11-17 2009-12-22 Intel Corporation Method and system to provide a trusted channel within a computer system for a SIM device
US20050108171A1 (en) * 2003-11-19 2005-05-19 Bajikar Sundeep M. Method and apparatus for implementing subscriber identity module (SIM) capabilities in an open platform
US20050108534A1 (en) * 2003-11-19 2005-05-19 Bajikar Sundeep M. Providing services to an open platform implementing subscriber identity module (SIM) capabilities
US8156343B2 (en) 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
US8037314B2 (en) * 2003-12-22 2011-10-11 Intel Corporation Replacing blinded authentication authority
US20050152539A1 (en) * 2004-01-12 2005-07-14 Brickell Ernie F. Method of protecting cryptographic operations from side channel attacks
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
US20050216920A1 (en) * 2004-03-24 2005-09-29 Vijay Tewari Use of a virtual machine to emulate a hardware device
US7356735B2 (en) 2004-03-30 2008-04-08 Intel Corporation Providing support for single stepping a virtual machine in a virtual machine environment
US7620949B2 (en) * 2004-03-31 2009-11-17 Intel Corporation Method and apparatus for facilitating recognition of an open event window during operation of guest software in a virtual machine environment
US7490070B2 (en) 2004-06-10 2009-02-10 Intel Corporation Apparatus and method for proving the denial of a direct proof signature
US20050288056A1 (en) * 2004-06-29 2005-12-29 Bajikar Sundeep M System including a wireless wide area network (WWAN) module with an external identity module reader and approach for certifying the WWAN module
US7305592B2 (en) * 2004-06-30 2007-12-04 Intel Corporation Support for nested fault in a virtual machine environment
US7840962B2 (en) * 2004-09-30 2010-11-23 Intel Corporation System and method for controlling switching between VMM and VM using enabling value of VMM timer indicator and VMM timer value having a specified time
US8146078B2 (en) 2004-10-29 2012-03-27 Intel Corporation Timer offsetting mechanism in a virtual machine environment
US8924728B2 (en) * 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US20060136664A1 (en) * 2004-12-16 2006-06-22 Trika Sanjeev N Method, apparatus and system for disk caching in a dual boot environment
US8533777B2 (en) * 2004-12-29 2013-09-10 Intel Corporation Mechanism to determine trust of out-of-band management agents
US7395405B2 (en) * 2005-01-28 2008-07-01 Intel Corporation Method and apparatus for supporting address translation in a virtual machine environment
US20060212840A1 (en) * 2005-03-16 2006-09-21 Danny Kumamoto Method and system for efficient use of secondary threads in a multiple execution path processor
US8635612B2 (en) * 2005-04-29 2014-01-21 Microsoft Corporation Systems and methods for hypervisor discovery and utilization
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
US8490117B1 (en) 2006-10-23 2013-07-16 Adobe Systems Incorporated Bridging script engines
US7614003B2 (en) * 2006-10-23 2009-11-03 Adobe Systems Incorporated Rendering hypertext markup language content
US8020089B1 (en) 2006-10-23 2011-09-13 Adobe Systems Incorporated Rendering hypertext markup language content
US7533207B2 (en) * 2006-12-06 2009-05-12 Microsoft Corporation Optimized interrupt delivery in a virtualized environment
US9405347B2 (en) * 2009-02-26 2016-08-02 Microsoft Technology Licensing, Llc Power-saving operating system for virtual environment
US20150089655A1 (en) * 2013-09-23 2015-03-26 Electronics And Telecommunications Research Institute System and method for detecting malware based on virtual host
GB2519108A (en) * 2013-10-09 2015-04-15 Advanced Risc Mach Ltd A data processing apparatus and method for controlling performance of speculative vector operations
CN108897601A (zh) * 2018-06-29 2018-11-27 郑州云海信息技术有限公司 一种基于虚拟化的fpga使用方法、系统及相关装置
CN115993949B (zh) * 2023-03-21 2023-07-14 苏州浪潮智能科技有限公司 一种面向多核处理器的向量数据的处理方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6224366A (ja) * 1985-07-03 1987-02-02 Hitachi Ltd ベクトル処理装置
US4722049A (en) * 1985-10-11 1988-01-26 Unisys Corporation Apparatus for out-of-order program execution
US5291581A (en) * 1987-07-01 1994-03-01 Digital Equipment Corporation Apparatus and method for synchronization of access to main memory signal groups in a multiprocessor data processing system
US5123095A (en) * 1989-01-17 1992-06-16 Ergo Computing, Inc. Integrated scalar and vector processors with vector addressing by the scalar processor
US5249293A (en) * 1989-06-27 1993-09-28 Digital Equipment Corporation Computer network providing transparent operation on a compute server and associated method
US5276881A (en) * 1990-06-25 1994-01-04 Hewlett-Packard Company ANDF producer using the HPcode-Plus compiler intermediate language
EP0463238A1 (en) * 1990-06-25 1992-01-02 Dsm N.V. Polyamide composition and its use
JP2640871B2 (ja) * 1990-10-20 1997-08-13 富士通株式会社 仮想計算機システム
US5285528A (en) * 1991-02-22 1994-02-08 International Business Machines Corporation Data structures and algorithms for managing lock states of addressable element ranges

Also Published As

Publication number Publication date
US5511217A (en) 1996-04-23
JPH06168146A (ja) 1994-06-14

Similar Documents

Publication Publication Date Title
JP2765411B2 (ja) 仮想計算機方式
US5386565A (en) Method and system for controlling/monitoring computer system having plural operating systems to run thereon
US5187802A (en) Virtual machine system with vitual machine resetting store indicating that virtual machine processed interrupt without virtual machine control program intervention
JPH0212553A (ja) 仮想計算機システム
JPS58191046A (ja) Cpu制御方法
KR920003044B1 (ko) 가상 머신 시스템용의 게스트 머신 실행 제어 시스템
US20100332905A1 (en) Program execution device and method for controlling the same
JP2823230B2 (ja) 処理の継続実行方法
JP2778717B2 (ja) データ処理ユニット
JPH1049373A (ja) パイプライン・デジタル・プロセッサにおいて多重で高精度の事象を操作する方法と装置
JPH0668725B2 (ja) データ処理システムにおける割込条件に応答する装置及び非同期割込条件に応答する方法
JPS6376028A (ja) 仮想計算機システムにおける命令ステツプ実行制御方式
JP2705121B2 (ja) 電子計算機システム
JP2970082B2 (ja) 仮想クラスタ間通信処理装置
JPH09282196A (ja) 複合論理プロセッサシステムのプログラム走行制御方式
JPS62267869A (ja) ベクトル・プロセツサにおける演算例外時の処理方式
JPS60163134A (ja) 仮想計算機システム
JPS6116338A (ja) 仮想計算機システムにおける割込み処理方式
CN113918272A (zh) 分离式虚拟机及其虚拟机架构、构建方法和优化方法
JPH03158936A (ja) プログラムのテスト方法
JP3102381B2 (ja) タスクデバッグ装置、タスクデバッグ方法及びその記録媒体
JP2878037B2 (ja) プロセッサの停止方式
JPH0452759A (ja) ベクトル命令多重処理方式
JP2001125804A (ja) 割り込み処理制御装置および方法
JPS6220035A (ja) 仮想計算機システム制御方式