JP4295783B2 - 計算機、仮想デバイスの制御方法 - Google Patents
計算機、仮想デバイスの制御方法 Download PDFInfo
- Publication number
- JP4295783B2 JP4295783B2 JP2006335803A JP2006335803A JP4295783B2 JP 4295783 B2 JP4295783 B2 JP 4295783B2 JP 2006335803 A JP2006335803 A JP 2006335803A JP 2006335803 A JP2006335803 A JP 2006335803A JP 4295783 B2 JP4295783 B2 JP 4295783B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- physical
- nic
- information
- virtual device
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
Description
また、特許文献2では、前記共有方式において、仮想デバイスの使用状況を監視してメモリのページテーブルの最適化を行う方式が示されている。
そのため、共有方式と占有方式を混在したシステムを構成することが重要になってくる。
特許文献2においても同様に、変更後の制御方式を決定することができなかった。
本発明は、このような問題点に鑑みてなされたものであり、仮想計算機における仮想デバイスの制御に関して、共有方式と占有方式を含む複数の制御方式を適切に切り替えることを目的とする。
計算機は、処理部と記憶部により構成され、複数の仮想計算機と複数の物理デバイスを管理し、物理デバイスを仮想的なデバイスである仮想デバイスとして仮想計算機に割り当て、仮想デバイスと物理デバイスを一対一で対応させる占有方式と、複数の仮想デバイスを1つの物理デバイスに対応させる共有方式と、を含む複数の制御方式のいずれかで仮想デバイスを管理する管理部を備えている。
そして、管理部は、状態情報を参照して仮想デバイスの使用状態が変わったと判定した場合、構成情報を参照して制御方式に応じて利用可能な物理デバイスの中から、ハードウェア仕様、識別子、アドレス空間の少なくともいずれか1つ以上の情報に基づいて当該仮想デバイスと互換性のある物理デバイスを選択して対応関係情報において対応付けを行い、その仮想デバイスの制御方式を変更する。
その他の手段については後述する。
なお、デバイスとは、本実施形態においては、SCSIカード、NICおよび入出力装置のことを指すものとするが、他の実施形態を実現する場合は、それら以外に、それらと同質の装置(その他の周辺機器接続装置やネットワーク接続装置など)のことを指すこともあるものとする。
デバイスの機能を果たすために、通常は現用系の役割を持つデバイスを使用する。
待機系のデバイスは、デバイスが故障していないことを確認するために少数のアクセスを行う以外は、使用しない。
そして、現用系のデバイスが故障した場合には、仮想計算機上で稼動するOSは待機系として定義されたデバイスを代替のデバイスとして使用する。
はじめに、第1実施形態について説明する。まず、仮想計算機システムを稼動させる計算機10の構成の一例に関して、図1を参照して説明する。図1は、計算機10などの構成図である。
ノースブリッジ203は、メモリ204(記憶部)およびIO(Input/Output)ブリッジ205と接続し、CPU201とメモリ204との間で行われるデータ転送、メモリ204とIOブリッジ205との間で行われるデータ転送の制御を実行する。ノースブリッジ203は、たとえば、情報通信制御用のLSI(Large Scale Integration)チップにより実現することができる。
IOデバイスの例として、ここでは、外部記憶装置210と接続するためのSCSIカード207(周辺機器)、ネットワークと接続するためのNIC(Network Interface Card)208(ネットワーク接続装置)、および、キーボードやディスプレイなどと接続するための入出力装置209(周辺機器)を挙げている。
また、メモリ204およびIOデバイス(SCSIカード207、NIC208など)は、それぞれ計算機10上で一意なアドレス空間(アドレスとして利用可能なメモリ領域)を持つ。CPU201はデータ転送先のアドレスを指定してデータ転送命令を発行する。メモリ204およびIOデバイスは、それぞれ指定されたアドレスに対応したデータの転送を実行する。
ハイパバイザ11(管理部)は、主に計算機10上で動作するファームウェアもしくはミドルウェアなどのプログラムとして実装され(つまり、CPU201とメモリ204によって実現され)、前記計算機10の制御、および仮想計算機12(12−1〜12−3)の制御を管理し、単一の計算機10の資源を分割して論理的に複数の仮想計算機12に割り当てる。ハイパバイザ11は、オペレーティングシステム(以下OSと呼ぶ。)よりも下位層のプログラムとして実行されるため、計算機10の起動時に、BIOS(Basic Input/Output System)などのシステム初期化プログラムの実行後に、OSなどを介さずに直接実行される。
第1実施形態においては、NIC208の冗長化の場合を例にとり、以降ではIOデバイスの例としてNIC208を用いて説明を行う。また、IOバス206の例として、PCIを用いて説明を行う。
また、ハイパバイザ11は仮想NIC制御部111(111−1〜111−2)を有し、仮想計算機12上の仮想NIC121の機能をプログラム上で実行(実現)することができる。仮想NIC制御部111は、図6で後述する複数の方式によってNIC制御を実行する。
物理NIC101を使用したデータ転送命令の制御方式の詳細については後述する。
具体的には、計算機10が有する物理NIC101のハードウェア(仕様)構成情報の管理と、仮想計算機12のシステム構成の管理と、前記仮想計算機12上の仮想NIC121と前記物理NIC101の割り当て管理とを行う。
図3は、物理NIC状態管理部113の構成例を示した図である。
物理NIC情報収集部304は、ハイパバイザ11が計算機10上で起動した時点で実行され、BIOSなどにより物理NIC101に割り当てられたコンフィグレーション空間を介して構成情報を収集し、物理NIC一覧301を作成する。
物理NIC一覧301の構成の一例を、図4を用いて説明する。図4は、物理NIC一覧301の構成例を示した図である。
仮想NIC一覧302のテーブルの項目は物理NIC一覧301と同一であるので、重複説明を省略する。
物理・仮想NICマッピング一覧303の構成の一例を、図5を用いて説明する。図5は、物理・仮想NICマッピング一覧303の構成例を示した図である。
なお、本実施形態では冗長構成を前提とした状態表現を用いて説明しているが、これに限定されるものではなく、他の状況を表す状態表現、あるいはアクセス頻度などの、より汎用的な状態表現を用いてもよい。
仮想計算機システムの構成例を図6に示す。なお、ハイパバイザ11における「仮想NIC実行機能」は、図2の仮想NIC制御部111のことを示している。
それぞれのOS13が仮想NIC121「A」、「C」、「E」において障害を検知すると、前記OS13はそれぞれペアリングされた仮想NIC「B」、「D」、「F」を使用してデータ送信を行うように変更する。
図7は、一般的な計算機10上でNIC208へのアクセスにメモリマップトIO(以下、MMIOと呼ぶ)を使用した場合の、NIC(NIC101および仮想NIC121)の制御方法を示す。
仮想NIC処理実行部811および物理NICデバイスドライバ813は、ハイパバイザ11上で動作するプログラムである。仮想レジスタ812は、ハイパバイザが管理するメモリ204中の領域に確保されたデータの格納領域である。
物理NICデバイスドライバ813は、物理NIC101ごとに1つずつ存在し、一般的なOSのデバイスドライバ機能と同様に物理NIC101に対する制御を実行する。
また、物理NICデバイスドライバ813を介することにより、仮想計算機12上の仮想NIC121と物理NIC101が異なるコマンド仕様を持っている場合も、物理NICデバイスドライバ813でその差異を吸収することにより柔軟に対応できる。
アドレスを変換するハードウェアの例としては、Intel(登録商標)が提唱する「Virtualization Technology for Direct I/O」仕様に準拠したハードウェアなどが考えられるが、前記の様なハードウェアが存在しない場合は、デバイス(物理NIC101)を占有方式とするために間接占有方式を用いる。
仮想計算機12上のOS13は、前記MMIOアドレス1を使用してメモリ空間を介するIOデバイスの制御命令を発行する。
物理NIC101が起こした割り込み処理は、ハイパバイザ11がトラップし、必要に応じてデバイス識別子を仮想計算機12上のデバイス識別子に変換して仮想計算機12に送信する。
NICへのデータ転送要求は、OS13から直接物理NIC101に転送される。
ハイパバイザ11は、アドレス変換を一切行う必要が無く、MMIOアドレス2へのアクセスの検知を行わない。
物理NIC101が起こした割り込み処理については、図8(B)と同一の方式のほかに、CPU201が特定の仮想計算機12と一対一で割り付けられている場合には割り込み処理をハイパバイザ11でトラップせずに直接仮想計算機12上に送信する方式を用いてもよい。
また、(B)は、仮想計算機12が物理NIC101へアクセスするのにハイパバイザ11によるアドレス変換だけが必要となり、処理速度はこの3つの方式の中で中程度である。
すなわち、それぞれの方式には、構成の柔軟性と動作(処理)速度に対するトレードオフの関係が成り立っている。
図9は、仮想NIC121の状態管理を行う仮想NIC状態管理部114の構成例などを示す図である。
NICのコマンドの一例を図10を用いて示す。コマンドはメモリ204中にデータとして格納される。
コマンドには、初期化、アドレス設定などのNICの設定を更新するコマンドや、実際のデータの送信・受信を実行するコマンドなどがある。
コマンド履歴・統計部903は、前記のハイパバイザ11が読み取ったコマンドのコマンド名1002を解析して記録処理を決定する。
前記コマンドがNICの設定を変更するコマンドである場合、コマンドとして読み取ったデータ列をそのままコマンド履歴・統計情報901の履歴領域1001にコピーする。
コマンドが送受信のコマンドであった場合、コマンド履歴・統計部903は統計情報のカウンタ(使用頻度)をインクリメントする。カウンタは図11に示すようにコマンド名と実行回数のカウンタで構成される。
カウンタは一定時間でクリアされる。このようにすることで、単位時間当たりのコマンドの実行回数を記録することができる。
処理切り替えポリシー902は、1つの対象状態1201、1つ以上の判定対象1202および判定条件1203の組、1つのポリシー適用後状態1204および1つのポリシー適用後処理方式1205で構成される。
判定対象1202は、本ポリシーの実行を判定するために参照する管理情報を示す。たとえば、「コマンド履歴情報901−1」「コマンド統計情報901−2」、仮想NIC一覧302の「デバイス搭載位置403」「MMIOアドレス404」などである。
(1)コマンド履歴情報
コマンド履歴情報901−1のコマンド命令種類(図10のコマンド名1002の種類)を参照する。複数のコマンド命令種類の列を、判定条件1203に記載されるコマンド命令種類の列と比較し、コマンド列が一致した場合に判定条件1203に合致すると判断する。
図11のコマンド統計情報901−2のカウンタを判定条件1203の値と比較し、一定のしきい値を超えた場合、もしくは下回った場合に判定条件1203に合致すると判断する。
たとえば、デバイス搭載位置(403)/MMIOアドレス(404)が計算機10上で一意なことである。条件を満たしたときに判定条件に合致すると判断する。
なお、以下の手順において、管理者は、GUIまたはコマンドラインなどのインターフェースを使用して、仮想計算機12の構成情報を入力する。
次に、管理者は、ステップ1301において定義された仮想計算機12が有する1つ以上の仮想NIC121(機能)を定義する(ステップ1302)。
ハイパバイザ11が自動生成する場合(ステップ1303でYes)、ハイパバイザ11は定義順などに従って自動的にそれらの値を生成する(ステップ1304)。
ハイパバイザ11が自動生成しない場合(ステップ1303でNo)、管理者は、ユーザインターフェースなどを用いてそれらの値を入力する(ステップ1305)。
ハイパバイザ11が自動生成する場合(ステップ1306でYes)、ハイパバイザ11は自動的に規定値を使用する方式などによって生成する(ステップ1307)。
ハイパバイザ11が自動生成しない場合(ステップ1306でNo)、管理者は、ユーザインターフェースなどを用いて所定のリストから選択する方式などにより入力を行う(ステップ1308)。
ハイパバイザ11が自動で対応付けする場合(ステップ1309でYes)、ハイパバイザ11の物理NIC割り当て部305は、後述する方式に従って所定の条件に合致する物理NIC101を仮想NIC121に割り当て、項目を設定、つまり対応付けを生成する(ステップ1310)。
ハイパバイザ11が自動生成しない場合(ステップ1309でNo)、管理者は、ユーザインターフェースなどを用いて対応付けを入力する(ステップ1311)。
このようにして、仮想NIC一覧302および物理・仮想NICマッピング一覧303が作成される。
NIC用途変更管理部904は、特定の仮想NIC121と対応付けられており、本手順を実行する契機としては、前記仮想NIC121のコマンド履歴・統計部903がコマンド履歴情報901−1を更新したとき、コマンド統計情報901−2のカウンタをクリアする直前、あるいは一定の時間間隔で実行するときなどが考えられる。
条件が成立しているポリシーが存在しない場合(ステップ1402でNo)、処理を終了する(ステップ1402)。
その後、再びステップ1401に戻り、ステップ1401以降の処理を繰り返す。
このようにして、NIC用途変更管理部904などによってポリシーを実行することができる。
以降の説明では、前記入力パラメータで一意に識別された仮想NIC121を仮想NIC(A)と呼ぶ。
なお、前記ステップ1401〜1403の実行後にも物理NIC使用方式506が決定しなかった場合、ハイパバイザ11の実装により定めた初期値などを強制的に使用してもよい。本実施形態では、初期値として共有方式を使用することとして説明を行う。
互換性の確認方法は、物理NIC使用方式506、デバイス搭載位置403、および、図7中の各種アドレス空間などに依存する。互換性の確認方法の一例のフローチャートを図16に示す。図16は、仮想NICと互換性のある物理NICの選択手順を示したフローチャートである。図16での動作主体は物理NIC割り当て部305である。
なお、以降では、仮想NIC(A)と互換性を比較する物理NIC101を物理NIC(B)と呼ぶ。
ステップ1604の後も、同様に、ステップ1606以降の処理に進む。
このようにして、仮想NIC121に対して物理NIC101を割り当てることができる。
また、物理NIC割り当て部305は、割り込みハンドラを設定し(ステップ1708)、必要に応じて、計算機10のハードウェアに対して仮想計算機12と物理NIC101の所有関係の(定義)情報(定義テーブルなど。不図示)を更新する(ステップ1709)。
このようにして、物理NIC101を初期化することができる。
第一の動作例として、仮想計算機12上の現用系NICに障害が発生し、現用系NICから待機系NICに動作が変更された場合に、物理NIC101を共有方式から直接占有方式に変更する制御手順の例について、図18のシーケンスを用いて説明する。図18は、共有方式から直接占有方式に変更する場合のハイパバイザ11の動作例のシーケンスである。また、本動作例において、処理切り替えポリシー902として図12に示した例を用いる。
仮想NIC「A」は物理NIC「a」に対して直接占有方式で割り当てられており、仮想NIC「A」に対するNIC制御のコマンド命令はハイパバイザ11を経由することなく物理NIC「a」に転送される。
ただし、ステップ1802は仮想計算機12−1上で実行された動作であり、ハイパバイザ11は前記切り替えの発生を直接的に検知することはできない。
また、ステップ1804の後も、ステップ1803と同様の処理が行われる(ステップ1804−2)。
NIC用途変更管理部904は、待機系の仮想NIC「B」における単位時間当たりの送信パケット数が一定値を超えたことなどを検知すると、ポリシーを適用して物理・仮想NICマッピング情報303の冗長化状態504、および物理NIC使用方式506を変更する(ステップ1806)。
物理NIC「b」はデバイス識別番号(MACアドレス401)が仮想NICと物理NICで一致し、なおかつ仮想NIC「B」のMMIOアドレス404が計算機10上のすべての物理NIC101上で一意であるため、互換性があると確認され(図15のステップ1506でYes)、物理NIC「b」が選択される(物理NICの対応付けが行われる)(ステップ1808)。
このようにして、上記手順により、直接占有方式の高速な実装方式によって、物理NIC「b」を占有的に仮想NIC「B」に割り当てることが実現される。
第二の動作例として、仮想計算機12上の現用系NICに障害が発生し、待機系NICに動作が変更された場合に、物理NIC101を間接占有方式に変更する制御手順の例について、図19を用いて説明する。図19は、共有方式から間接占有方式に変更する場合のハイパバイザ11の動作例のシーケンスである。
物理NIC割り当て部305は、前記条件で再び互換性のあるデバイスを検索する。物理NIC「b」はモデル名が仮想NIC「D」と同一であり、互換性があると確認されて間接占有方式用のデバイスとして選択される(ステップ1911)。
このように、上記手順により、直接占有方式が実行不可能なシステム構成である場合も、定められた手順に従って物理NIC101を仮想NIC121に対して占有的に割り当てるように処理方式を変更することができる。
[第2実施形態]
更新通知の例としてはデバイスのホットプラグの既存の方式を用いることができるため、詳細については省略する。
また、ステップ1510における物理・仮想NICマッピング一覧303の更新時に、仮想NIC121の各種アドレスおよびデバイス搭載位置403を物理NIC101の値に更新する。
これにより、仮想NIC121のデバイス搭載位置403、および、MMIOアドレス404などの各種アドレス空間が更新されたことが仮想計算機12上のOS13に通知されるため、間接占有方式ではなく、高速な直接転送方式を用いることができる。
たとえば、本実施形態では、NICを例に挙げて説明したが、その他に、SCSIカードなどの別のデバイスにも同様に本発明を適用することができる。
また、ハイパバイザは、仮想デバイスの制御方式を変更するとき、その仮想デバイスのそのときの使用状態を、計算機の表示部(不図示)に表示させるようにしてもよい。
その他、ハードウェアやフローチャートなどの具体的な構成について、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
11 ハイパバイザ
12 仮想計算機
13 オペレーティングシステム(OS)
101 物理NIC
111 仮想NIC制御部
121 仮想NIC
113 物理NIC状態管理部
114 仮想NIC状態管理部
115 処理部
201 CPU
204 メモリ
207 SCSIカード
208 NIC
209 入出力装置
210 外部記憶装置
301 物理NIC一覧
302 仮想NIC一覧
303 物理・仮想NICマッピング一覧
305 物理NIC割り当て部
401 MACアドレス
402 モデル名
403 デバイス搭載位置
404 MMIOアドレス
405 IOアドレス
501 仮想計算機番号
502 仮想NIC識別子
503 冗長構成
504 冗長化状態
505 物理NIC識別子
506 物理NIC使用方式
701 MMIOアドレス
702 レジスタ
703 PCIコンフィグレーションレジスタ
801 エミュレーション部
802 アドレス変換部
811 仮想NIC処理実行部
812 仮想レジスタ
813 物理NICデバイスドライバ
901 コマンド履歴・統計情報
902 処理切り替えポリシー
903 コマンド履歴・統計部
904 NIC用途変更管理部
Claims (9)
- 自身が有する処理部と記憶部を含むリソースの機能を分割することで、複数の仮想計算機を実現し、さらに周辺機器接続装置あるいはネットワーク接続装置である物理デバイスを複数搭載する計算機であって、
前記処理部と前記記憶部により構成され、前記複数の仮想計算機と前記複数の物理デバイスを管理し、前記物理デバイスを仮想的なデバイスである仮想デバイスとして前記仮想計算機に割り当て、仮想デバイスと物理デバイスを一対一で対応させる占有方式と、複数の仮想デバイスを1つの物理デバイスに対応させる共有方式と、を含む複数の制御方式のいずれかで前記仮想デバイスを管理する管理部を備え、
前記管理部は、
前記仮想デバイスが現在使用中の状態である活性状態か、現在ほとんどあるいはまったく使用されていない状態である非活性状態のうち、いずれかの使用状態に関する情報を保持する状態情報と、
前記物理デバイスと前記仮想デバイスに関して、それぞれのアドレス空間を含む構成に関する情報を保持する構成情報と、
前記仮想デバイスと前記物理デバイスの対応関係に関する情報を保持する対応関係情報と、
を有し、
前記状態情報を参照して前記仮想デバイスの使用状態が変わったと判定した際、
前記構成情報および前記対応関係情報を参照して、当該仮想デバイスの制御方式に対応する物理デバイスを検索し、
前記検索した物理デバイスのうち、ハードウェア仕様、識別子、アドレス空間の少なくともいずれか1つ以上の情報に基づいて、互換性のある物理デバイスの有無を判断し、
前記互換性のある物理デバイスが有る場合、
前記互換性のある一つの物理デバイスを選択し、
前記対応関係情報において前記仮想デバイスと前記互換性のある一つの物理デバイスとを関係付け、
前記互換性のある物理デバイスが無い場合、
前記対応関係情報に含まれる当該仮想デバイスの制御方式を変更し、
当該変更後の制御方式に対応する物理デバイスが、互換性のある物理デバイスとなるとき、前記対応関係情報において前記仮想デバイスと当該変更後の制御方式に対応する物理デバイスとを関係付ける
ことを特徴とする計算機。 - 前記管理部は、
前記仮想デバイスが前記活性状態と非活性状態のいずれの使用状態なのかを判定するための前記仮想デバイスの使用状況に関する判定条件、および、前記仮想デバイスがその判定条件を満たしたときに適用する前記制御方式の情報、を保持する判定条件情報と、を、さらに有し、
前記状態情報および前記判定条件情報を参照して前記仮想デバイスの使用状態が変わったと判定する
ことを特徴とする請求項1に記載の計算機。 - 前記判定条件は、前記仮想計算機から前記仮想デバイスに対して与えられるコマンドの種類に関する情報であることを特徴とする請求項2に記載の計算機。
- 前記判定条件は、前記仮想デバイスの使用頻度に関するしきい値であることを特徴とする請求項2に記載の計算機。
- 前記管理部は、
新たに選択された仮想デバイスに関する設定を記憶し、その仮想デバイスの制御方式に基づいて前記物理デバイスの設定を初期化し、その仮想デバイスに関して記憶した設定を前記物理デバイスに複製して適用する
ことを特徴とする請求項1または請求項2に記載の計算機。 - 前記占有方式は、前記仮想計算機が前記仮想デバイスに対して与えたコマンドを前記物理デバイスに直接送信することができる直接占有方式と、前記仮想計算機が前記仮想デバイスに対して与えたコマンドを前記管理部がアドレス変換してから前記物理デバイスに転送する間接占有方式と、の2種類ある
ことを特徴とする請求項1または請求項2に記載の計算機。 - 前記管理部は、
前記構成情報を参照して前記仮想デバイスと互換性のある物理デバイスがないと判定した場合、前記仮想計算機におけるオペレーティングシステムに対して、前記仮想デバイスに対する制御ソフトウェアであるデバイスドライバの設定更新要求を送信することで、その仮想計算機に前記直接占有方式を実現させる
ことを特徴とする請求項6に記載の計算機。 - 前記管理部は、
前記仮想デバイスの制御方式を変更するとき、その仮想デバイスに関するその変更前あるいは変更後の少なくともいずれかの使用状態を、前記計算機の表示部に表示させる
ことを特徴とする請求項1または請求項2に記載の計算機。 - 自身が有する処理部と記憶部を含むリソースの機能を分割することで、複数の仮想計算機を実現し、さらに周辺機器接続装置あるいはネットワーク接続装置である物理デバイスを複数搭載する計算機による仮想デバイスの制御方法であって、
前記計算機は、
前記処理部と前記記憶部により構成され、前記複数の仮想計算機と前記複数の物理デバイスを管理し、前記物理デバイスを仮想的なデバイスである仮想デバイスとして前記仮想計算機に割り当て、仮想デバイスと物理デバイスを一対一で対応させる占有方式と、複数の仮想デバイスを1つの物理デバイスに対応させる共有方式と、を含む複数の制御方式のいずれかで前記仮想デバイスを管理する管理部を備えており、
前記管理部は、
前記仮想デバイスが現在使用中の状態である活性状態か、現在ほとんどあるいはまったく使用されていない状態である非活性状態のうち、いずれかの使用状態に関する情報を保持する状態情報と、
前記物理デバイスと前記仮想デバイスに関して、それぞれのアドレス空間を含む構成に関する情報を保持する構成情報と、
前記仮想デバイスと前記物理デバイスの対応関係に関する情報を保持する対応関係情報と、
を有しており、
前記状態情報を参照して前記仮想デバイスの使用状態が変わったと判定した際、
前記構成情報および前記対応関係情報を参照して、当該仮想デバイスの制御方式に対応する物理デバイスを検索し、
前記検索した物理デバイスのうち、ハードウェア仕様、識別子、アドレス空間の少なくともいずれか1つ以上の情報に基づいて、互換性のある物理デバイスの有無を判断し、
前記互換性のある物理デバイスが有る場合、
前記互換性のある一つの物理デバイスを選択し、
前記対応関係情報において前記仮想デバイスと前記互換性のある一つの物理デバイスとを関係付け、
前記互換性のある物理デバイスが無い場合、
前記対応関係情報に含まれる当該仮想デバイスの制御方式を変更し、
当該変更後の制御方式に対応する物理デバイスが、互換性のある物理デバイスとなるとき、前記対応関係情報において前記仮想デバイスと当該変更後の制御方式に対応する物理デバイスとを関係付ける
ことを特徴とする仮想デバイスの制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006335803A JP4295783B2 (ja) | 2006-12-13 | 2006-12-13 | 計算機、仮想デバイスの制御方法 |
US11/955,761 US8291425B2 (en) | 2006-12-13 | 2007-12-13 | Computer, control method for virtual device, and program thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006335803A JP4295783B2 (ja) | 2006-12-13 | 2006-12-13 | 計算機、仮想デバイスの制御方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008146566A JP2008146566A (ja) | 2008-06-26 |
JP2008146566A5 JP2008146566A5 (ja) | 2008-08-21 |
JP4295783B2 true JP4295783B2 (ja) | 2009-07-15 |
Family
ID=39585645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006335803A Expired - Fee Related JP4295783B2 (ja) | 2006-12-13 | 2006-12-13 | 計算機、仮想デバイスの制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8291425B2 (ja) |
JP (1) | JP4295783B2 (ja) |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8214467B2 (en) * | 2007-12-14 | 2012-07-03 | International Business Machines Corporation | Migrating port-specific operating parameters during blade server failover |
JP5164628B2 (ja) | 2008-03-24 | 2013-03-21 | 株式会社日立製作所 | ネットワークスイッチ装置、サーバシステム及びサーバシステムにおけるサーバ移送方法 |
US8103810B2 (en) * | 2008-05-05 | 2012-01-24 | International Business Machines Corporation | Native and non-native I/O virtualization in a single adapter |
US20100011230A1 (en) * | 2008-07-08 | 2010-01-14 | Olaf Mater | Link aggregation with dynamic bandwidth management to reduce power consumption |
JP5180729B2 (ja) * | 2008-08-05 | 2013-04-10 | 株式会社日立製作所 | 計算機システム及びバス割当方法 |
US8910169B2 (en) | 2008-09-30 | 2014-12-09 | Intel Corporation | Methods and systems to perform a computer task in a reduced power consumption state |
US8117346B2 (en) * | 2008-10-03 | 2012-02-14 | Microsoft Corporation | Configuration space virtualization |
JP5352848B2 (ja) * | 2008-11-28 | 2013-11-27 | 株式会社日立製作所 | 仮想計算機の制御方法及び計算機装置 |
JP4918112B2 (ja) * | 2009-03-31 | 2012-04-18 | 株式会社エヌ・ティ・ティ・ドコモ | 情報処理装置および制御方法 |
JP5074457B2 (ja) * | 2009-06-04 | 2012-11-14 | 株式会社日立製作所 | 計算機システム、スイッチ切り替え方法及びpciスイッチ |
US8180877B2 (en) * | 2009-06-04 | 2012-05-15 | International Business Machines Corporation | Logically partitioned system having subpartitions with flexible network connectivity configuration |
EP2472396A1 (en) * | 2009-10-01 | 2012-07-04 | Mitsubishi Electric Corporation | Computer device |
US8713139B1 (en) * | 2009-10-29 | 2014-04-29 | Hewlett-Packard Development Company, L.P. | Automatic fixup of network configuration on system image move |
JP2011118578A (ja) * | 2009-12-02 | 2011-06-16 | Renesas Electronics Corp | 情報処理装置 |
US8572610B2 (en) * | 2009-12-09 | 2013-10-29 | General Electric Company | Patient monitoring system and method of safe operation with third party parameter applications |
US8898663B2 (en) * | 2009-12-16 | 2014-11-25 | Symantec Corporation | Storage visibility in virtual environments |
JP5282046B2 (ja) * | 2010-01-05 | 2013-09-04 | 株式会社日立製作所 | 計算機システム及びその可用化方法 |
JP5477047B2 (ja) * | 2010-02-25 | 2014-04-23 | 富士通株式会社 | 情報処理装置、仮想計算機接続方法、プログラム及び記録媒体 |
JP2011203810A (ja) * | 2010-03-24 | 2011-10-13 | Hitachi Ltd | サーバ、計算機システム及び仮想計算機管理方法 |
WO2011135637A1 (en) * | 2010-04-30 | 2011-11-03 | Hitachi,Ltd. | Computer system and control method thereof |
DE102010029346A1 (de) * | 2010-05-27 | 2011-12-01 | Robert Bosch Gmbh | Verfahren zum Verarbeiten von Nachrichten |
US9396000B2 (en) | 2010-06-25 | 2016-07-19 | Intel Corporation | Methods and systems to permit multiple virtual machines to separately configure and access a physical device |
US8458699B2 (en) | 2010-11-18 | 2013-06-04 | Hewlett-Packard Development Company, L.P. | Methods, systems, and apparatus to prioritize computing devices for virtualization |
US9009509B2 (en) | 2011-02-04 | 2015-04-14 | Panasonic Intellectual Property Corporation Of America | Virtual computer system, device sharing control method, computer-readable recording medium, and integrated circuit |
JP5585844B2 (ja) * | 2011-03-25 | 2014-09-10 | 株式会社日立製作所 | 仮想計算機の制御方法及び計算機 |
US20140344419A1 (en) * | 2011-05-13 | 2014-11-20 | Hitachi, Ltd. | Computer system, method of controlling network interface |
US8761187B2 (en) * | 2011-06-14 | 2014-06-24 | Futurewei Technologies, Inc. | System and method for an in-server virtual switch |
JPWO2012176278A1 (ja) * | 2011-06-21 | 2015-02-23 | 富士通株式会社 | 情報処理装置、仮想マシン制御方法およびプログラム |
US9210098B2 (en) | 2012-02-13 | 2015-12-08 | International Business Machines Corporation | Enhanced command selection in a networked computing environment |
US8838799B2 (en) * | 2012-02-13 | 2014-09-16 | International Business Machines Corporation | Command management in a networked computing environment |
US9154451B2 (en) * | 2012-08-21 | 2015-10-06 | Advanced Micro Devices, Inc. | Systems and methods for sharing devices in a virtualization environment |
US9065678B2 (en) * | 2012-10-24 | 2015-06-23 | Cisco Technology, Inc. | System and method for pinning virtual machine adapters to physical adapters in a network environment |
JP5917441B2 (ja) * | 2013-06-03 | 2016-05-11 | 株式会社日立製作所 | 仮想計算機システム、sr−iov対応デバイスの制御方法 |
US9246752B2 (en) * | 2013-06-18 | 2016-01-26 | International Business Machines Corporation | Ensuring health and compliance of devices |
US9608842B2 (en) | 2013-12-13 | 2017-03-28 | Intel Corporation | Providing, at least in part, at least one indication that at least one portion of data is available for processing |
US9753883B2 (en) * | 2014-02-04 | 2017-09-05 | Netronome Systems, Inc. | Network interface device that maps host bus writes of configuration information for virtual NIDs into a small transactional memory |
US9537822B2 (en) * | 2014-07-30 | 2017-01-03 | Dell Products, L.P. | UEFI and operating system driver methods for updating MAC address in LAN-based NIC |
JP6278868B2 (ja) * | 2014-08-28 | 2018-02-14 | 三菱電機株式会社 | 通信制御装置および計算装置 |
CN105518620B (zh) | 2014-10-31 | 2019-02-01 | 华为技术有限公司 | 一种网卡配置方法及资源管理中心 |
US9537801B1 (en) * | 2015-01-31 | 2017-01-03 | Netronome Systems, Inc. | Distributed packet ordering system having separate worker and output processors |
CN106572047A (zh) * | 2015-10-09 | 2017-04-19 | 东软集团股份有限公司 | 物理网络安全设备及其控制方法 |
WO2017068770A1 (ja) * | 2015-10-22 | 2017-04-27 | 日本電気株式会社 | コンピュータ、デバイス割当管理方法及びプログラム記録媒体 |
US10469399B2 (en) | 2015-12-29 | 2019-11-05 | International Business Machines Corporation | Managing remote device based on physical state of a management device |
US10152344B2 (en) * | 2016-08-18 | 2018-12-11 | Red Hat Israel, Ltd. | Coupling a network interface card (NIC) of a host system to a virtual machine |
CN108023837B (zh) * | 2016-10-31 | 2020-11-20 | 鸿富锦精密电子(天津)有限公司 | 虚拟网络交换机系统及其建立方法 |
US10263832B1 (en) * | 2016-12-29 | 2019-04-16 | Juniper Networks, Inc. | Physical interface to virtual interface fault propagation |
US10496531B1 (en) * | 2017-04-27 | 2019-12-03 | EMC IP Holding Company LLC | Optimizing virtual storage groups by determining and optimizing associations between virtual devices and physical devices |
JP7007549B2 (ja) | 2017-05-19 | 2022-01-24 | 富士通株式会社 | 情報処理システム、管理装置、及び、情報処理システムの制御方法 |
US10747872B1 (en) * | 2017-09-27 | 2020-08-18 | Fireeye, Inc. | System and method for preventing malware evasion |
US20190334862A1 (en) * | 2018-04-27 | 2019-10-31 | Microsoft Technology Licensing, Llc | Seamless Network Characteristics For Hardware Isolated Virtualized Environments |
US20190114195A1 (en) * | 2018-08-22 | 2019-04-18 | Intel Corporation | Virtual device composition in a scalable input/output (i/o) virtualization (s-iov) architecture |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS588073B2 (ja) * | 1977-01-28 | 1983-02-14 | 株式会社日立製作所 | アドレス変換装置 |
JPH0792761B2 (ja) * | 1985-07-31 | 1995-10-09 | 株式会社日立製作所 | 仮想計算機システムの入出力制御方法 |
JPH0758469B2 (ja) * | 1988-06-17 | 1995-06-21 | 日本電気株式会社 | 仮想計算機システムの構成変更方式 |
JPH08235099A (ja) * | 1995-02-27 | 1996-09-13 | Hitachi Ltd | 仮想計算機システム |
US6125411A (en) * | 1995-09-13 | 2000-09-26 | Hitachi, Ltd. | System storing plural I/O arrangement information wherein each I/O arrangement information corresponding to each operating system is created in response to more than two operating systems |
US6725289B1 (en) * | 2002-04-17 | 2004-04-20 | Vmware, Inc. | Transparent address remapping for high-speed I/O |
JP4119239B2 (ja) * | 2002-12-20 | 2008-07-16 | 株式会社日立製作所 | 計算機資源割当方法、それを実行するための資源管理サーバおよび計算機システム |
US7467381B2 (en) * | 2003-12-16 | 2008-12-16 | Intel Corporation | Resource partitioning and direct access utilizing hardware support for virtualization |
US7546398B2 (en) * | 2006-08-01 | 2009-06-09 | International Business Machines Corporation | System and method for distributing virtual input/output operations across multiple logical partitions |
-
2006
- 2006-12-13 JP JP2006335803A patent/JP4295783B2/ja not_active Expired - Fee Related
-
2007
- 2007-12-13 US US11/955,761 patent/US8291425B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20080162800A1 (en) | 2008-07-03 |
US8291425B2 (en) | 2012-10-16 |
JP2008146566A (ja) | 2008-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4295783B2 (ja) | 計算機、仮想デバイスの制御方法 | |
US11068355B2 (en) | Systems and methods for maintaining virtual component checkpoints on an offload device | |
US20200278880A1 (en) | Method, apparatus, and system for accessing storage device | |
US9218195B2 (en) | Vendor-independent resource configuration interface for self-virtualizing input/output device | |
US9612966B2 (en) | Systems, methods and apparatus for a virtual machine cache | |
EP2577450B1 (en) | Virtual machine migration techniques | |
JP5305848B2 (ja) | データ処理システム内で入出力(i/o)仮想化を管理するための方法およびデータ処理システムならびにコンピュータ・プログラム | |
JP5352132B2 (ja) | 計算機システム及びそのi/o構成変更方法 | |
JP4295184B2 (ja) | 仮想計算機システム | |
US7844746B2 (en) | Accessing an effective address and determining whether the effective address is associated with remotely coupled I/O adapters | |
JP5272709B2 (ja) | アドレス割当方法、コンピュータ、物理マシン、プログラム、及びシステム | |
WO2021000689A1 (zh) | 虚拟机迁移的方法以及装置 | |
US20110004708A1 (en) | Computer apparatus and path management method | |
US20130326177A1 (en) | Computer system, virtualization mechanism, and control method for computer system | |
JP2011517497A (ja) | Pcieのsr−iov機能をレガシー機能として現出するように変換するシステム及び方法 | |
US20100100892A1 (en) | Managing hosted virtualized operating system environments | |
CN112306624A (zh) | 一种信息处理方法、物理机和pcie设备 | |
US20100275203A1 (en) | Storage management system and storage management method in virtualization environment | |
JP2004234114A (ja) | 計算機システム、計算機装置、オペレーティングシステムの移送方法及びプログラム | |
US11922072B2 (en) | System supporting virtualization of SR-IOV capable devices | |
JP4660362B2 (ja) | 計算機システム | |
CN113312141B (zh) | 用于卸载串行端口模拟的计算机系统、存储介质和方法 | |
US7266631B2 (en) | Isolation of input/output adapter traffic class/virtual channel and input/output ordering domains | |
US9110731B1 (en) | Hard allocation of resources partitioning | |
WO2016110951A1 (ja) | 計算機システム、ライセンス管理方法、及び、管理計算機 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080707 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080707 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081021 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081104 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081222 |
|
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: 20090407 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090410 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120417 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120417 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130417 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140417 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |