JP5352848B2 - 仮想計算機の制御方法及び計算機装置 - Google Patents
仮想計算機の制御方法及び計算機装置 Download PDFInfo
- Publication number
- JP5352848B2 JP5352848B2 JP2008304492A JP2008304492A JP5352848B2 JP 5352848 B2 JP5352848 B2 JP 5352848B2 JP 2008304492 A JP2008304492 A JP 2008304492A JP 2008304492 A JP2008304492 A JP 2008304492A JP 5352848 B2 JP5352848 B2 JP 5352848B2
- Authority
- JP
- Japan
- Prior art keywords
- physical
- virtual
- interrupt
- cpu
- emulator
- 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 - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
図1は、本発明の第1実施形態を示し、仮想計算機システムを動作させる物理計算機1の構成を示す。物理計算機1は、仮想化支援機能であるVT−x又はAMD−Vに対応したx86(またはIA−32)互換のCPU(またはプロセッサ)60を2つ以上(または2ソケット以上)有し、これらのCPU60−1〜60−nはFSB(Front Side Bus)等に代表されるCPU間インターフェース140を介してノースブリッジ120(またはメモリコントローラ)に接続される。1番目のCPUであるCPU60−1は、起動直後から動作を開始するBSP(Boot Strap Processor)であり、2番目以降のCPUであるCPU60−2〜60−nは、BSPの指示を受けてから動作を開始するAP(Application Processor)である。なお、以下の説明では個々のCPUを60−1〜60−nとし、CPUの総称をCPU60とする。
次に、物理計算機1上で仮想計算機30を実現するソフトウェアの構成の主要部と、制御対象となるハードウェア要素について、図2を参照しながら詳述する。
次に、ゲスト(ゲストOS40またはゲストOS40上で稼動するアプリケーション50の総称)の動作に合わせてVMM20が行う割り込み伝達処理の一例について、以下、フローチャートを参照しながら説明する。
図10A〜図10Cは、VMM20上でゲストを実行するときの全体的な処理を示すフローチャートである。本フローチャートは複数のCPU60の利用を前提としており、各CPU60は、本フローチャートに従って独立して動作する。なお、図10Aは、処理の全体を示すフローチャートを示し、図10B、図10Cは図10Aの要因判定処理の詳細を示すフローチャートで、図10Bが要因判定処理の前半を示し、図10Cが要因判定処理の後半を示す。
上記図10AのS1030及び図10BのS1180でVMM20が行うACT処理の詳細に関して、図11A及び図11Bを用いて説明する。
上記図10BのS1230で行う占有で割り当てられた物理I/Oデバイス170の割り込みの宛先をExclusiveのCPU60に変更する処理に関して、図13を用いて説明する。
上記図10CのS1300でVMM20が行う新規仮想割り込みの伝達処理に関して、図18を用いて説明する。
以上に示した実施形態によれば、割り込み横取りフラグ71が有効であるShareのCPU60と、割り込み横取りフラグ71が無効であるExclusiveのCPU60を組み合わせて使用し、物理I/Oデバイス170の利用形態と、物理I/Oデバイス170の割り込み宛先CPU60の利用形態に応じて、割り込みパラメータ220を変更することで、仮想計算機30が占有I/Oデバイス170とExclusiveのCPU60で構成される場合の割り込み伝達オーバヘッドを廃し、共有I/Oデバイス170の割り込みに対しては必ずエミュレータ310を実行できる。これにより、x86互換計算機でポートされている標準機能のみを用いて、占有I/Oデバイス170の割り込みオーバヘッドの削減と、共有I/Oデバイスに必要なエミュレータ310の実行の両立を実現できる。
以下では、本発明を、ノースブリッジ120で割り込みパラメータを差し替える割り込みリマップ機能と組み合わせる実施形態を説明する。以下では、添付図面に基づいて第1実施形態1との違いを説明する。
第2の実施形態のハードウェア構成は図19に示すように、ノースブリッジ120に関連する要素のみが前記第1実施形態と異なる。ノースブリッジ120は、IntelのVT−d又はAMDのIOMMUに対応しており、割り込みパラメータを差し替える機能である割り込みリマップ機能100が搭載される。
図20で示すようにソフトウェア構成及び制御対象のハードウェア要素は、図20に示すように、物理計算機1及びVMM20の、割り込みリマップ機能に関連する要素のみが前記第1実施形態と異なる。
次に、ゲストの動作に合わせてVMMが行う割り込み伝達処理の一例について、以下、フローチャートを参照しながら説明する。
前記第1実施形態の図10A〜図10Cは、VMM20上でゲストを実行するときの全体的な処理を示すフローチャートであり、本第2実施形態にも適用することができる。本フローチャートは、物理I/Oデバイス170の割り込みの宛先を変更するS1230とS1250を除いて前記第1実施形態と同一である。
前記第1実施形態の図10A、図10BのS1030及び1180で行うACT処理に関して、前記第1実施形態の図11A、図11Bを用いて説明する。本フローチャートを本第2実施形態に適用する際には、物理I/Oデバイス170の割り込みの宛先を変更するS1430とS1440とS1001を除いて前記第1実施形態と同一である。
上記図10BのS1230で行う占有で割り当てられた物理I/Oデバイスの割り込みの宛先をExclusiveのCPUに変更する処理に関して、前記第1実施形態の図13を本第2実施形態に適用する例を説明する。
上記図10CのS1300で行う新規仮想割り込みは前記第1実施形態と同一であるため説明を省略する。
以上に示した第2の実施形態によれば、割り込み横取りフラグ71が有効であるShareのCPUと、割り込み横取りフラグが無効であるExclusiveのCPUを組み合わせて使用し、I/Oデバイス170の利用形態とI/Oデバイス170の割り込み宛先CPUの利用形態に応じて、割り込みリマップ表400を変更することで、仮想計算機30が占有I/Oデバイス1700とExclusiveのCPU60で構成される場合の割り込み伝達オーバヘッドを廃し、共有I/Oデバイス170の割り込みに対しては必ずエミュレータ310を実行できる。
20 VMM
30 仮想計算機
40 OS
50 AP(アプリケーション)
60 CPU
61 割り込み横取りフラグ
70 LAPIC
80 IOAPIC
90 PIC
100 割り込みリマップ機能
110 メモリ
120 ノースブリッジ
140 CPU間インターフェース
150 コンソール
170 物理I/Oデバイス
220 割り込みパラメータ
230 宛先
240 ベクタ
280 リマップID
300 割り込みハンドラ
310 エミュレータ
320 PICエミュレータ
330 APICエミュレータ
340 I/Oエミュレータ
350 CPU割当時間管理部
360 物理割り込み宛先管理部
370 ACT/DEACT部
380 コンソール制御部
390 物理割り込み受信部
400 割り込みリマップ表
410 リソース管理表
420 物理CPU管理表
430 物理I/Oデバイス管理表
440 仮想CPU管理表
450 仮想I/Oデバイス管理表
460 割当仮入力表
470 仮想PICレジスタ
480 仮想LAPICレジスタ
490 仮想割り込みパラメータ
Claims (10)
- 複数の物理CPUと、物理メモリとを備えた物理計算機で仮想計算機を提供する仮想化部を実行し、前記仮想化部は所定のエミュレータを含んで前記仮想計算機上でOSを稼動させる仮想計算機の制御方法であって、
前記物理計算機は1つ以上の物理I/Oデバイスを含み、
前記仮想化部は、前記仮想計算機に1つ以上の仮想CPUと1つ以上の仮想I/Oデバイスを提供し、
前記物理CPUは、VT−x又はAMD−Vに対応したx86互換の物理CPUで構成されて、前記物理CPUはマスク可能割り込みの受信時に前記エミュレータを実行させる割り込み横取り機能としてExternal Interrupt Exiting又はIntercept INTRを有し、
前記物理CPUは、前記仮想計算機の割り込み受信時に実行される割り込みハンドラを設定可能な物理CPUであり、
前記物理CPUのうち少なくとも1つの第一の物理CPUで前記割り込み受信時に前記OSを実行させるステップと、
前記物理CPUのうち少なくとも1つの第二の物理CPUで前記割り込み受信時に前記エミュレータを実行させるステップと、
を含み、
前記仮想化部が、前記仮想計算機を構成する前記仮想I/Oデバイスに対して前記物理I/Oデバイスが単一の仮想計算機によって直接利用される第1の形態または前記仮想計算機を構成する前記仮想I/Oデバイスに対して前記物理I/Oデバイスが前記エミュレータによって複数の仮想計算機で間接利用される第2の形態で割り当てるステップと、
前記仮想化部が、前記仮想計算機を構成する前記仮想CPUに対して前記物理CPUが割り込み受信時にOSを実行する第3の形態または前記仮想計算機を構成する前記仮想CPUに対して前記物理CPUが割り込み受信時に前記エミュレータを実行する第4の形態で割り当てるステップと、
少なくとも1つの前記物理CPUで前記割り込み横取り機能を無効化するステップと、
少なくとも1つの前記物理CPUで前記割り込み横取り機能を有効化するステップと、を含み、
前記物理CPUのうち少なくとも1つの前記第一の物理CPUで前記割り込み受信時に前記OSを実行させるステップは、
前記仮想計算機を構成する前記仮想I/Oデバイスに対して前記物理I/Oデバイスが単一の仮想計算機による直接利用を許す第1の形態で割り当てられ、かつ当該仮想計算機を構成する仮想CPUに対して前記物理CPUが割り込み受信時にOSを実行する第3の形態で割り当てられている場合に、当該物理I/Oデバイスからの割り込みを、前記割り込み横取り機能を無効化した前記物理CPUで受け取ってOSを実行させ、
前記物理CPUのうち少なくとも1つの前記第二の物理CPUで前記割り込み受信時に前記エミュレータを実行させるステップは、
前記仮想計算機を構成する前記仮想I/Oデバイスに対して前記物理I/Oデバイスが前記エミュレータによって複数の仮想計算機で間接利用する第2の形態で割り当てられているか、或いは前記仮想計算機を構成する前記仮想CPUに対して前記物理CPUが割り込み受信時に前記エミュレータを実行する第4の形態で割り当てられている場合に、当該物理I/Oデバイスからの割り込みを、前記割り込み横取り機能を有効化した物理CPUで受け取って前記エミュレータを実行させることを特徴とする仮想計算機の制御方法。 - 請求項1に記載の仮想計算機の制御方法であって、
前記物理計算機は、前記物理I/Oデバイスの割り込みの宛先となる物理CPUを規定するモジュールを有し、
前記物理CPUのうち少なくとも1つの前記第一の物理CPUで前記割り込み受信時に前記OSを実行させるステップは、
前記仮想計算機を構成する仮想I/Oデバイスに対して物理I/Oデバイスが前記第1の形態で割り当てられ、かつ前記OSが当該仮想I/Oデバイスの割り込みの宛先を前記モジュールを参照して変更し、かつ前記宛先に指定された仮想CPUに対して物理CPUが前記第3の形態で割り当てられている場合に、当該物理I/Oデバイスの割り込みの宛先を当該物理CPUに変更することを特徴とする仮想計算機の制御方法。 - 請求項1に記載の仮想計算機の制御方法であって、
前記物理CPUは、マスク可能割り込みの受信時に実行される割り込みハンドラを設定可能なCPUであり、
前記物理CPUのうち少なくとも1つの第二の物理CPUで前記割り込み受信時に前記エミュレータを実行させるステップは、
前記仮想計算機を構成する仮想I/Oデバイスに対して物理I/Oデバイスが前記第2の形態で割り当てられ、かつ当該仮想I/Oデバイスの割り込みの宛先となる仮想CPUに対して、前記物理CPUが前記第3の形態で割り当てられている場合に、当該物理I/Oデバイスからの割り込みを受信した前記エミュレータに、当該物理CPUに対してマスク可能な物理割り込みを送信させることを特徴とする仮想計算機の制御方法。 - 請求項1に記載の仮想計算機の制御方法であって、
前記物理CPUは、マスク不能割り込みの受信時に前記エミュレータを実行可能なCPUであり、
前記物理CPUのうち少なくとも1つの前記第一の物理CPUで前記割り込み受信時に前記OSを実行させるステップは、
前記第3の形態で割り当てられた前記物理CPUに前記エミュレータを実行させる場合に、当該物理CPUに対してマスク不能割り込みを送信することを特徴とする仮想計算機の制御方法。 - 複数の物理CPUとメモリと1つ以上の物理I/Oデバイスを有し、前記物理I/Oデバイスの割込みの宛先を設定可能な計算機装置であって、
前記物理I/Oデバイスは、前記割り込みを伝達する物理CPUの識別子を格納する割り込み先格納部と、
仮想CPUと仮想I/Oデバイスを生成して1つ以上のOSを稼動させる仮想計算機を提供する仮想化部と、を備え、
前記物理CPUは、VT−x又はAMD−Vに対応したx86互換の物理CPUであって、かつ、マスク可能割り込みの受信時に前記エミュレータを機能させる割り込み横取り機能としてExternal Interrupt Exiting 又は Intercept INTRを有し、
前記仮想化部は、
所定の処理を代行するエミュレータと、
前記物理CPUの仮想CPUに対する割当形態として、割り込み受信時にOSコードを実行させる第3の形態又は、前記割り込み受信時に前記エミュレータを実行させる第4の形態を前記物理CPU毎に保持する第1の情報と、
前記仮想CPUと物理CPUとの対応関係を保持する第2の情報と、
前記各物理I/Oデバイスの割当形態として、単一仮想計算機による直接利用を許す第1の形態又は、前記エミュレータによって複数の仮想計算機で間接利用する第2の形態 を保持する第3の情報と、
前記仮想I/Oデバイスと物理I/Oデバイスとの対応関係を保持する第4の情報と、を有し、
前記エミュレータは、
仮想割り込みコントローラとして仮想PIC及び仮想APICを含み、
前記OSが前記仮想PICを使用中の場合に、前記仮想計算機に割り当てられた物理I/Oデバイスの割り込み宛先を、前記第4の形態で割り当てられた物理CPUに設定し、
前記OSが前記仮想APICを使用中で、かつ前記仮想I/Oデバイスに対して物理I/Oデバイスが前記第2の形態で割り当てられている場合に、当該物理I/Oデバイスの割り込み宛先を、前記第4の形態で割り当てられた物理CPUに設定し、
前記OSが前記仮想APICを使用中で、かつ前記仮想I/Oデバイスに対して物理I/Oデバイスが前記第1の形態で割り当てられ、かつ当該仮想I/Oデバイスの割り込みの宛先の仮想CPUに対して物理CPUが前記第3の形態で割り当てられている場合に、当該物理I/Oデバイスの割り込みの宛先を、当該物理CPUに設定し、
前記OSが前記仮想APICを使用中で、かつ前記仮想I/Oデバイスに対して物理I/Oデバイスが前記第1の形態で割り当てられ かつ 当該仮想I/Oデバイスの割り込みの宛先の仮想CPUに対して物理CPUが前記第4の形態で割り当てられている場合に、当該物理I/Oデバイスの割り込みの宛先を、前記第4の形態で割り当てられた物理CPUに設定することを特徴とする計算機装置。 - 請求項5に記載の計算機装置であって、
前記仮想計算機を構成する仮想CPUと仮想I/Oデバイスに対する物理CPUと物理I/Oデバイスの対応関係を受け付けるインターフェースをさらに有し、
前記インターフェースは、
前記仮想計算機を構成する仮想CPUの数を受け付け、
前記仮想CPUに対する物理CPUの割当形態として、前記第3の形態と第4の形態の何れか一方を受け付け、
前記仮想I/Oデバイスに対する物理I/Oデバイスの割当形態として、前記第1の形態と第2の形態の何れか一方を受け付けることを特徴とする計算機装置。 - 請求項5に記載の計算機装置であって、
前記エミュレータは、
前記物理CPUの全てが前記第3の形態に設定された場合に異常と判定することを特徴とする計算機装置。 - 請求項5に記載の計算機装置であって、
前記エミュレータは、
前記仮想計算機を構成する仮想I/Oデバイスに対して物理I/Oデバイスが前記第1の形態で割り当てられ、かつ前記OSが当該仮想I/Oデバイスの割り込みの宛先を変更し、かつ前記宛先に指定された仮想CPUに対して前記物理CPUが前記第3の形態で割り当てられている場合に、当該物理I/Oデバイスの割り込みの宛先を 当該物理CPUに設定することを特徴とする計算機装置。 - 請求項5に記載の計算機装置であって、
前記物理CPUは、マスク可能割り込みの受信時に実行されるコードを設定可能なCPUであり、
前記エミュレータは、
前記仮想計算機を構成する仮想I/Oデバイスに対して物理I/Oデバイスが前記第2の形態で割り当てられ、かつ当該仮想I/Oデバイスに関する割り込みの宛先の仮想CPUに対して物理CPUが前記第3の形態で割り当てられている場合に、当該物理I/Oデバイスの割り込みを受信したときに、当該物理CPUに対してマスク可能な物理割り込みを送信することを特徴とする計算機装置。 - 請求項5に記載の計算機装置であって、
前記物理CPUは、マスク不能割り込みの受信時にエミュレータを実行可能なCPUであり、
前記エミュレータは、
前記第3の形態で割り当てられた前記物理CPUに当該エミュレータを実行させる場合に、当該物理CPUに対してマスク不能割り込みを送信することを特徴とする計算機装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008304492A JP5352848B2 (ja) | 2008-11-28 | 2008-11-28 | 仮想計算機の制御方法及び計算機装置 |
US12/624,827 US8516479B2 (en) | 2008-11-28 | 2009-11-24 | Virtual machine system and method for controlling interrupt thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008304492A JP5352848B2 (ja) | 2008-11-28 | 2008-11-28 | 仮想計算機の制御方法及び計算機装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010128911A JP2010128911A (ja) | 2010-06-10 |
JP5352848B2 true JP5352848B2 (ja) | 2013-11-27 |
Family
ID=42223616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008304492A Expired - Fee Related JP5352848B2 (ja) | 2008-11-28 | 2008-11-28 | 仮想計算機の制御方法及び計算機装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8516479B2 (ja) |
JP (1) | JP5352848B2 (ja) |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9378108B2 (en) * | 2007-03-22 | 2016-06-28 | Invention Science Fund I, Llc | Implementing performance-dependent transfer or execution decisions from service emulation indications |
US8495708B2 (en) * | 2007-03-22 | 2013-07-23 | The Invention Science Fund I, Llc | Resource authorizations dependent on emulation environment isolation policies |
US8438609B2 (en) * | 2007-03-22 | 2013-05-07 | The Invention Science Fund I, Llc | Resource authorizations dependent on emulation environment isolation policies |
US9558019B2 (en) | 2007-03-22 | 2017-01-31 | Invention Science Fund I, Llc | Coordinating instances of a thread or other service in emulation |
US20080235000A1 (en) * | 2007-03-22 | 2008-09-25 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Implementing security control practice omission decisions from service emulation indications |
US20080235001A1 (en) * | 2007-03-22 | 2008-09-25 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Implementing emulation decisions in response to software evaluations or the like |
US20080234998A1 (en) * | 2007-03-22 | 2008-09-25 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Coordinating instances of a thread or other service in emulation |
US8874425B2 (en) | 2007-03-22 | 2014-10-28 | The Invention Science Fund I, Llc | Implementing performance-dependent transfer or execution decisions from service emulation indications |
US9378062B2 (en) * | 2009-06-18 | 2016-06-28 | Microsoft Technology Licensing, Llc | Interface between a resource manager and a scheduler in a process |
US9274851B2 (en) | 2009-11-25 | 2016-03-01 | Brocade Communications Systems, Inc. | Core-trunking across cores on physically separated processors allocated to a virtual machine based on configuration information including context information for virtual machines |
US8576703B2 (en) | 2010-03-19 | 2013-11-05 | Brocade Communications Systems, Inc. | Synchronization of multicast information using bicasting |
US9135031B1 (en) * | 2010-04-28 | 2015-09-15 | Netapp, Inc. | System and method for determining storage resources of a virtual machine in a virtual server environment |
US8468284B2 (en) * | 2010-06-23 | 2013-06-18 | International Business Machines Corporation | Converting a message signaled interruption into an I/O adapter event notification to a guest operating system |
US8572635B2 (en) * | 2010-06-23 | 2013-10-29 | International Business Machines Corporation | Converting a message signaled interruption into an I/O adapter event notification |
US8819680B2 (en) | 2010-06-25 | 2014-08-26 | Panasonic Intellectual Property Corporation Of America | Computer system for controlling the execution of virtual machines |
US9104619B2 (en) | 2010-07-23 | 2015-08-11 | Brocade Communications Systems, Inc. | Persisting data across warm boots |
US8762994B2 (en) * | 2010-08-26 | 2014-06-24 | Intel Corporation | Power-optimized interrupt delivery |
JP5945543B2 (ja) * | 2010-09-15 | 2016-07-05 | オラクル・インターナショナル・コーポレイション | ミドルウェアマシン環境を含むシステム |
US8856460B2 (en) | 2010-09-15 | 2014-10-07 | Oracle International Corporation | System and method for zero buffer copying in a middleware environment |
US9185054B2 (en) | 2010-09-15 | 2015-11-10 | Oracle International Corporation | System and method for providing zero buffer copying in a middleware machine environment |
US20120072638A1 (en) * | 2010-09-16 | 2012-03-22 | Unisys Corp. | Single step processing of memory mapped accesses in a hypervisor |
CN101976201B (zh) * | 2010-10-22 | 2013-07-24 | 北京航空航天大学 | 基于cpu亲和力的虚拟cpu动态绑定方法 |
EP2637103A1 (en) * | 2010-11-05 | 2013-09-11 | Fujitsu Limited | Disconnect program, embedding program, disconnect method, and embedding method |
WO2012060010A1 (ja) * | 2010-11-05 | 2012-05-10 | 富士通株式会社 | 情報処理装置,情報処理装置の時刻設定方法,及び情報処理装置の時刻設定プログラム,並びに監視装置 |
US8677355B2 (en) | 2010-12-17 | 2014-03-18 | Microsoft Corporation | Virtual machine branching and parallel execution |
JP5585844B2 (ja) * | 2011-03-25 | 2014-09-10 | 株式会社日立製作所 | 仮想計算機の制御方法及び計算機 |
US8499112B2 (en) | 2011-08-16 | 2013-07-30 | Hitachi, Ltd. | Storage control apparatus |
US9143335B2 (en) | 2011-09-16 | 2015-09-22 | Brocade Communications Systems, Inc. | Multicast route cache system |
US8910158B2 (en) | 2011-12-14 | 2014-12-09 | Intel Corporation | Virtualizing interrupt priority and delivery |
CN104137088A (zh) | 2012-02-23 | 2014-11-05 | 三菱电机株式会社 | 计算机、访问管理方法以及访问管理程序 |
US9594703B2 (en) * | 2012-03-29 | 2017-03-14 | Intel Corporation | Architecture and method for managing interrupts in a virtualized environment |
US8959623B2 (en) * | 2012-05-25 | 2015-02-17 | Ca, Inc. | Protecting virtual machine console from misuse, hijacking or eavesdropping in cloud environments |
US9990217B2 (en) * | 2012-05-31 | 2018-06-05 | Red Hat, Inc. | Hypervisor printer emulation for virtual machines |
US20140007097A1 (en) * | 2012-06-29 | 2014-01-02 | Brocade Communications Systems, Inc. | Dynamic resource allocation for virtual machines |
US10581763B2 (en) | 2012-09-21 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | High availability application messaging layer |
US9967106B2 (en) | 2012-09-24 | 2018-05-08 | Brocade Communications Systems LLC | Role based multicast messaging infrastructure |
US9203690B2 (en) | 2012-09-24 | 2015-12-01 | Brocade Communications Systems, Inc. | Role based multicast messaging infrastructure |
US9170956B2 (en) | 2013-02-07 | 2015-10-27 | Texas Instruments Incorporated | System and method for virtual hardware memory protection |
US10331589B2 (en) * | 2013-02-13 | 2019-06-25 | Red Hat Israel, Ltd. | Storing interrupt location for fast interrupt register access in hypervisors |
US9778943B2 (en) | 2013-05-28 | 2017-10-03 | Red Hat Israel, Ltd. | Timer based virtual processor scheduling and suspension on physical processor for use of physical processor by other processing |
JP6040101B2 (ja) * | 2013-05-31 | 2016-12-07 | 株式会社日立製作所 | ストレージ装置の制御方法、ストレージ装置及び情報処理装置 |
WO2015056332A1 (ja) * | 2013-10-17 | 2015-04-23 | 株式会社日立製作所 | ストレージ装置及び制御方法 |
CN103699428A (zh) * | 2013-12-20 | 2014-04-02 | 华为技术有限公司 | 一种虚拟网卡中断亲和性绑定的方法和计算机设备 |
US9323576B2 (en) * | 2014-02-04 | 2016-04-26 | The Boeing Company | Removal of idle time in virtual machine operation |
JP2017518589A (ja) * | 2014-06-20 | 2017-07-06 | 華為技術有限公司Huawei Technologies Co.,Ltd. | 仮想化プラットホームによって割込みを処理する方法および関連デバイス |
US9772868B2 (en) | 2014-09-16 | 2017-09-26 | Industrial Technology Research Institute | Method and system for handling interrupts in a virtualized environment |
US9619349B2 (en) | 2014-10-14 | 2017-04-11 | Brocade Communications Systems, Inc. | Biasing active-standby determination |
WO2016092667A1 (ja) * | 2014-12-11 | 2016-06-16 | 株式会社日立製作所 | 計算機及び割込み制御方法 |
US10049064B2 (en) | 2015-01-29 | 2018-08-14 | Red Hat Israel, Ltd. | Transmitting inter-processor interrupt messages by privileged virtual machine functions |
US20180067780A1 (en) * | 2015-06-30 | 2018-03-08 | Hitachi, Ltd. | Server storage system management system and management method |
US10055136B2 (en) * | 2015-07-29 | 2018-08-21 | Red Hat Israel, Ltd. | Maintaining guest input/output tables in swappable memory |
US20180189109A1 (en) * | 2015-10-30 | 2018-07-05 | Hitachi, Ltd. | Management system and management method for computer system |
US11409551B2 (en) * | 2017-02-27 | 2022-08-09 | Red Hat, Inc. | Emulating VPID correctly for a nested hypervisor |
US11275600B2 (en) | 2017-11-14 | 2022-03-15 | TidalScale, Inc. | Virtualized I/O |
CN108123850B (zh) * | 2017-12-25 | 2020-04-24 | 上海交通大学 | 针对中断持有者抢占问题的综合调度方法及装置 |
JP6974254B2 (ja) * | 2018-05-18 | 2021-12-01 | ルネサスエレクトロニクス株式会社 | データ処理装置 |
CN110750354B (zh) * | 2018-07-24 | 2023-01-10 | 中国移动通信有限公司研究院 | 一种vCPU资源分配方法、装置和计算机可读存储介质 |
BR112021016093A2 (pt) | 2019-02-14 | 2021-10-26 | International Business Machines Corporation | Interrupção dirigida para virtualização de multiníveis |
TWI759677B (zh) | 2019-02-14 | 2022-04-01 | 美商萬國商業機器公司 | 用於具有回退之經引導中斷虛擬化之方法、電腦系統及電腦程式產品 |
TWI727607B (zh) * | 2019-02-14 | 2021-05-11 | 美商萬國商業機器公司 | 用於具有中斷表之經引導中斷虛擬化之方法、電腦系統及電腦程式產品 |
WO2020164935A1 (en) | 2019-02-14 | 2020-08-20 | International Business Machines Corporation | Directed interrupt virtualization with running indicator |
US11106481B2 (en) * | 2019-04-19 | 2021-08-31 | Red Hat, Inc. | Safe hyper-threading for virtual machines |
US11809888B2 (en) | 2019-04-29 | 2023-11-07 | Red Hat, Inc. | Virtual machine memory migration facilitated by persistent memory devices |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0619747B2 (ja) | 1984-01-18 | 1994-03-16 | 株式会社日立製作所 | I/o命令実行方法、i/o割込処理方法およびそれらを用いた計算機システム |
JP3065053B2 (ja) * | 1998-01-06 | 2000-07-12 | セイコーエプソン株式会社 | 機器監視システム、ローカル監視装置、統合監視装置、機器監視方法、及び、プログラムを格納したコンピュータ可読媒体 |
JP3546694B2 (ja) * | 1998-03-31 | 2004-07-28 | 日本電気株式会社 | マルチスレッド計算機システム及びマルチスレッド実行制御方法 |
US7467381B2 (en) * | 2003-12-16 | 2008-12-16 | Intel Corporation | Resource partitioning and direct access utilizing hardware support for virtualization |
US7805557B2 (en) * | 2005-07-12 | 2010-09-28 | Arm Limited | Interrupt controller and method for handling interrupts |
US20090106754A1 (en) * | 2005-12-10 | 2009-04-23 | Benjamin Liu | Handling a device related operation in a virtualization enviroment |
US8286162B2 (en) * | 2005-12-30 | 2012-10-09 | Intel Corporation | Delivering interrupts directly to a virtual processor |
US7613847B2 (en) * | 2006-05-16 | 2009-11-03 | Hewlett-Packard Development Company, L.P. | Partially virtualizing an I/O device for use by virtual machines |
US7464211B2 (en) * | 2006-09-14 | 2008-12-09 | International Business Machines Corporation | Method of detecting and recovering a lost system management interrupt (SMI) in a multiprocessor (MP) environment |
JP4295783B2 (ja) * | 2006-12-13 | 2009-07-15 | 株式会社日立製作所 | 計算機、仮想デバイスの制御方法 |
US7853744B2 (en) * | 2007-05-23 | 2010-12-14 | Vmware, Inc. | Handling interrupts when virtual machines have direct access to a hardware device |
US8527673B2 (en) * | 2007-05-23 | 2013-09-03 | Vmware, Inc. | Direct access to a hardware device for virtual machines of a virtualized computer system |
-
2008
- 2008-11-28 JP JP2008304492A patent/JP5352848B2/ja not_active Expired - Fee Related
-
2009
- 2009-11-24 US US12/624,827 patent/US8516479B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010128911A (ja) | 2010-06-10 |
US20100138208A1 (en) | 2010-06-03 |
US8516479B2 (en) | 2013-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5352848B2 (ja) | 仮想計算機の制御方法及び計算機装置 | |
JP5493125B2 (ja) | 仮想化方法及び計算機 | |
EP2831732B1 (en) | System and method for supporting live migration of virtual machines in an infiniband network | |
JP4961459B2 (ja) | 仮想計算機システムおよび仮想計算機システムにおける制御方法 | |
JP5748349B2 (ja) | 仮想計算機の制御方法及び仮想計算機システム | |
US9397954B2 (en) | System and method for supporting live migration of virtual machines in an infiniband network | |
EP2519877B1 (en) | Hypervisor-based isolation of processor cores | |
US11403086B2 (en) | System and method for upgrading operating system of a container using an auxiliary host | |
US7945436B2 (en) | Pass-through and emulation in a virtual machine environment | |
US8091086B1 (en) | System and method for virtualization using an open bus hypervisor | |
US20090007112A1 (en) | Method for controlling a virtual machine and a virtual machine system | |
US20050091365A1 (en) | Interposing a virtual machine monitor and devirtualizing computer hardware | |
NO340567B1 (no) | Hierarkisk virtualisering med en flernivå virtualiseringsmekanisme | |
US9342347B1 (en) | Hardware dedication for virtual machines and virtual environments | |
KR20070100367A (ko) | 하나의 가상 머신에서 다른 가상 머신으로 메모리를동적으로 재할당하기 위한 방법, 장치 및 시스템 | |
US20170102963A1 (en) | Method for Processing Interrupt by Virtualization Platform, and Related Device | |
CN109656675B (zh) | 总线设备、计算机设备及实现物理主机云存储的方法 | |
KR20210154769A (ko) | 마이크로 커널에 기반한 확장 가능 하이퍼바이저 | |
KR101077908B1 (ko) | 서버 가상화 장치 | |
CN116166371A (zh) | 虚拟机的迁移方法、装置、设备及存储介质 | |
WO2024008066A1 (zh) | 一种基于云计算技术的服务器以及云系统 | |
US20240126580A1 (en) | Transparently providing virtualization features to unenlightened guest operating systems | |
US20240211288A1 (en) | Hierarchical virtualization | |
Evens | A comparison of containers and virtual machines for use with NFV | |
WO2024081072A1 (en) | Transparently providing virtualization features to unenlightened guest operating systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111026 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120309 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130528 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130716 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130730 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130805 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |