JP4730386B2 - 仮想計算機装置、計算資源活用方法、および、プログラム - Google Patents
仮想計算機装置、計算資源活用方法、および、プログラム Download PDFInfo
- Publication number
- JP4730386B2 JP4730386B2 JP2008049049A JP2008049049A JP4730386B2 JP 4730386 B2 JP4730386 B2 JP 4730386B2 JP 2008049049 A JP2008049049 A JP 2008049049A JP 2008049049 A JP2008049049 A JP 2008049049A JP 4730386 B2 JP4730386 B2 JP 4730386B2
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- cpu
- calculation
- physical
- guest
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
このように、仮想計算機装置では、ゲストOSから、物理計算機に備わっている計算資源を十分に活用できないという問題があった。
物理計算機の仮想化制御プログラムにより制御される仮想計算機上に、認識可能なプロセッサ数に制限のある基本ソフトウェアを動作させる仮想計算機装置であって、
前記仮想計算機は、前記基本ソフトウェアによって認識されて計算を行う仮想プロセッサと、当該仮想プロセッサから独立して独自に計算を行う仮想計算ユニットとを備え、
前記基本ソフトウェアは、前記仮想計算ユニットにアクセスし、前記仮想プロセッサを使用しない所望の計算を行わせるユニット制御プログラムを備え、
前記仮想化制御プログラムは、前記仮想計算ユニットが計算を行う際に仲介し、前記物理計算機が備える物理プロセッサのうち、前記仮想プロセッサに対応しない物理プロセッサに、当該計算を行わせる、
ことを特徴とする。
物理計算機のハイパーバイザにより制御される仮想計算機上に、認識可能なCPU数に制限のあるゲストOSを動作させる仮想計算機装置であって、
前記仮想計算機は、前記ゲストOSによって認識されて計算を行う仮想CPUと、当該仮想CPUから独立して独自に計算を行う仮想計算デバイスとを備え、
前記ゲストOSは、前記仮想計算デバイスにアクセスし、前記仮想CPUを使用しない所望の計算を行わせるドライバを備え、
前記ハイパーバイザは、前記仮想計算デバイスが計算を行う際に仲介し、前記物理計算機が備える物理CPUのうち、前記仮想CPUに対応しない物理CPUに、当該計算を行わせる、
ことを特徴とする。
物理計算機のハイパーバイザにより制御される仮想計算機上に、認識可能なCPU数に制限のあるゲストOSを動作させる仮想計算機装置における計算資源活用方法であって、
前記仮想計算機は、仮想CPU、及び、仮想計算デバイスを備え、前記ゲストOSは、ドライバを備えており、
前記仮想CPUが、前記ゲストOSによって認識されて計算を行うステップと、
前記仮想計算デバイスが、前記仮想CPUから独立して独自に計算を行うステップと、
前記ドライバが、前記仮想計算デバイスにアクセスし、前記仮想CPUを使用しない所望の計算を行わせるステップと、
前記ハイパーバイザが、前記仮想計算デバイスが計算を行う際に仲介し、前記物理計算機が備える物理CPUのうち、前記仮想CPUに対応しない物理CPUに、当該計算を行わせるステップと、
を備えることを特徴とする。
コンピュータを、ハイパーバイザ、仮想計算機、及び、認識可能なCPU数に制限のあるゲストOSとして機能させるプログラムであって、
前記仮想計算機は、前記ゲストOSによって認識されて計算を行う仮想CPUと、当該仮想CPUから独立して独自に計算を行う仮想計算デバイスとを備え、
前記ゲストOSは、前記仮想計算デバイスにアクセスし、前記仮想CPUを使用しない所望の計算を行わせるドライバを備え、
前記ハイパーバイザは、前記仮想計算デバイスが計算を行う際に仲介し、前記コンピュータが備える物理CPUのうち、前記仮想CPUに対応しない物理CPUに、当該計算を行わせる、
ことを特徴とする。
図1は、本発明の第1の実施形態に係る仮想計算機装置の概要構成を示す模式図である。以下、本図を参照して説明する。
図2は、本発明の第2の実施形態に係る仮想計算機装置の具体的な構成を示す模式図である。以下、本図を参照して説明する。
具体的に物理マシン210は、内部に、複数の物理CPU211を有している。なお、発明の理解を容易にするために、図2からは、他の計算機資源について省略している。
そして、ゲストOS240の内部には、仮想計算機デバイス232を制御するためのドライバ241が含まれている。つまり、ゲストOS240は、仮想計算デバイス232を、実体のあるデバイスとして認識している。そして、その仮想計算デバイス232を制御するために、ドライバ241がゲストOS240に備わっている。
このドライバ241は、ゲストOS240が認識している仮想CPU231以外の計算リソースを使用する際に、呼び出されて使用される。
なお、このときの実行モードは、特権的な命令が実行されない制限されたものとなっており、安全性が確保されている。
その際、コードCDの最終行には、計算終了をハイパーバイザ220へ伝えるための命令、若しくは、制御をハイパーバイザ220へ戻すコードが存在している。そして、物理CPU211がそのような命令を実行することにより、ハイパーバイザ220は、計算終了を認識することができるようになっている。なお、コードが不正なものであった場合には、物理CPU211における例外処理の発生やタイムアウトの検出などの方法により、計算の失敗が検出され、その失敗がハイパーバイザ220に通知されるようになっている。
なお、このメモリ領域の共有は、仮想計算デバイス232の一態様である。つまり、仮想計算デバイス232は、メモリ領域の共有を行わなくとも、計算を行うことができる。
上述した実施形態(特に、第2の実施形態)では、コード及びデータを、同時に仮想計算デバイス232に渡す場合について説明したが、同じ計算を繰り返し行わせる場合等では、2回目以降に、データのみを渡すようにしてもよい。
例えば、1回目にコード及びデータを仮想計算デバイス232に渡した際に、そのコードにて、仮想計算デバイス232を初期化する。そして、2回目以降は、コードだけを渡せば、仮想計算デバイス232が計算できるようにする。
また、物理CPU211の内部に複数のコアが形成されている場合に、仮想計算デバイス232をコア毎に割り付けてもよい。
そして、このプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行することができる。
110 物理計算機
120 仮想化制御プログラム
130 仮想計算機
140 基本ソフトウェア
200 仮想計算機装置
210 仮想マシン
220 ハイパーバイザ
230 仮想マシン
240 ゲストOS
250 プロセス
Claims (7)
- 物理計算機の仮想化制御プログラムにより制御される仮想計算機上に、認識可能なプロセッサ数に制限のある基本ソフトウェアを動作させる仮想計算機装置であって、
前記仮想計算機は、前記基本ソフトウェアによって認識されて計算を行う仮想プロセッサと、当該仮想プロセッサから独立して独自に計算を行う仮想計算ユニットとを備え、
前記基本ソフトウェアは、前記仮想計算ユニットにアクセスし、前記仮想プロセッサを使用しない所望の計算を行わせるユニット制御プログラムを備え、
前記仮想化制御プログラムは、前記仮想計算ユニットが計算を行う際に仲介し、前記物理計算機が備える物理プロセッサのうち、前記仮想プロセッサに対応しない物理プロセッサに、当該計算を行わせる、
ことを特徴とする仮想計算機装置。 - 物理計算機のハイパーバイザにより制御される仮想計算機上に、認識可能なCPU(Central Processing Unit)数に制限のあるゲストOS(Operating System)を動作させる仮想計算機装置であって、
前記仮想計算機は、前記ゲストOSによって認識されて計算を行う仮想CPUと、当該仮想CPUから独立して独自に計算を行う仮想計算デバイスとを備え、
前記ゲストOSは、前記仮想計算デバイスにアクセスし、前記仮想CPUを使用しない所望の計算を行わせるドライバを備え、
前記ハイパーバイザは、前記仮想計算デバイスが計算を行う際に仲介し、前記物理計算機が備える物理CPUのうち、前記仮想CPUに対応しない物理CPUに、当該計算を行わせる、
ことを特徴とする仮想計算機装置。 - 前記物理計算機は、複数の前記物理CPUを備えており、
前記ゲストOSは、前記物理CPUの総数よりも少ない数の前記仮想CPUを認識しており、
前記ハイパーバイザは、前記仮想計算デバイスが行う計算を仲介する際に、前記ゲストOSが認識している前記仮想CPUに対応する前記物理CPUとは異なる前記物理CPUに、計算を行わせる、
ことを特徴とする請求項2に記載の仮想計算機装置。 - 前記ドライバは、コード及びデータを伴って前記仮想計算デバイスにアクセスし、
前記ハイパーバイザは、前記仮想計算デバイスから前記コード及び前記データを取得すると、前記物理CPUに当該コード及びデータに基づいた計算を実行させる、
ことを特徴とする請求項2又は3に記載の仮想計算機装置。 - 前記仮想計算デバイスは、内部に自己のCPU及びメモリを構成するように振る舞い、
前記ハイパーバイザは、仮想計算機のメモリ中のコードを、前記仮想計算デバイスの前記CPUから参照できるように前記仮想計算デバイスの前記メモリのテーブルを変更する、
ことを特徴とする請求項4に記載の仮想計算機装置。 - 物理計算機のハイパーバイザにより制御される仮想計算機上に、認識可能なCPU数に制限のあるゲストOSを動作させる仮想計算機装置における計算資源活用方法であって、
前記仮想計算機は、仮想CPU、及び、仮想計算デバイスを備え、前記ゲストOSは、ドライバを備えており、
前記仮想CPUが、前記ゲストOSによって認識されて計算を行うステップと、
前記仮想計算デバイスが、前記仮想CPUから独立して独自に計算を行うステップと、
前記ドライバが、前記仮想計算デバイスにアクセスし、前記仮想CPUを使用しない所望の計算を行わせるステップと、
前記ハイパーバイザが、前記仮想計算デバイスが計算を行う際に仲介し、前記物理計算機が備える物理CPUのうち、前記仮想CPUに対応しない物理CPUに、当該計算を行わせるステップと、
を備えることを特徴とする計算資源活用方法。 - コンピュータを、ハイパーバイザ、仮想計算機、及び、認識可能なCPU数に制限のあるゲストOSとして機能させるプログラムであって、
前記仮想計算機は、前記ゲストOSによって認識されて計算を行う仮想CPUと、当該仮想CPUから独立して独自に計算を行う仮想計算デバイスとを備え、
前記ゲストOSは、前記仮想計算デバイスにアクセスし、前記仮想CPUを使用しない所望の計算を行わせるドライバを備え、
前記ハイパーバイザは、前記仮想計算デバイスが計算を行う際に仲介し、前記コンピュータが備える物理CPUのうち、前記仮想CPUに対応しない物理CPUに、当該計算を行わせる、
ことを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008049049A JP4730386B2 (ja) | 2008-02-29 | 2008-02-29 | 仮想計算機装置、計算資源活用方法、および、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008049049A JP4730386B2 (ja) | 2008-02-29 | 2008-02-29 | 仮想計算機装置、計算資源活用方法、および、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009205566A JP2009205566A (ja) | 2009-09-10 |
JP4730386B2 true JP4730386B2 (ja) | 2011-07-20 |
Family
ID=41147728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008049049A Expired - Fee Related JP4730386B2 (ja) | 2008-02-29 | 2008-02-29 | 仮想計算機装置、計算資源活用方法、および、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4730386B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5310617B2 (ja) * | 2010-03-19 | 2013-10-09 | 富士通株式会社 | 通信装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003167747A (ja) * | 2001-11-29 | 2003-06-13 | Mitsubishi Electric Corp | モジュール実行方式及びモジュール実行方法 |
JP2006309754A (ja) * | 2005-04-28 | 2006-11-09 | Hewlett-Packard Development Co Lp | ファームウェアを介して仮想デバイスアクセスを提供する方法 |
JP2007299386A (ja) * | 2006-04-28 | 2007-11-15 | Hewlett-Packard Development Co Lp | マルチパーティションコンピュータシステムのi/oデバイスを制御するためのシステム |
-
2008
- 2008-02-29 JP JP2008049049A patent/JP4730386B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003167747A (ja) * | 2001-11-29 | 2003-06-13 | Mitsubishi Electric Corp | モジュール実行方式及びモジュール実行方法 |
JP2006309754A (ja) * | 2005-04-28 | 2006-11-09 | Hewlett-Packard Development Co Lp | ファームウェアを介して仮想デバイスアクセスを提供する方法 |
JP2007299386A (ja) * | 2006-04-28 | 2007-11-15 | Hewlett-Packard Development Co Lp | マルチパーティションコンピュータシステムのi/oデバイスを制御するためのシステム |
Also Published As
Publication number | Publication date |
---|---|
JP2009205566A (ja) | 2009-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9798565B2 (en) | Data processing system and method having an operating system that communicates with an accelerator independently of a hypervisor | |
JP5018252B2 (ja) | デバイス割り当て変更方法 | |
JP6381956B2 (ja) | 動的仮想マシンサイジング | |
EP2519877B1 (en) | Hypervisor-based isolation of processor cores | |
US11093297B2 (en) | Workload optimization system | |
US9454397B2 (en) | Data processing systems | |
JP2011100431A (ja) | 仮想マシン制御装置及び仮想マシン制御方法 | |
JP2015503784A (ja) | グラフィックス処理部における仮想マシン間の移行 | |
US9959134B2 (en) | Request processing using VM functions | |
KR20160033517A (ko) | 인터럽트 컨트롤러를 위한 하이브리드 가상화 방법 | |
JP2008186175A (ja) | オペレーティングシステムの起動制御方法及び情報処理装置 | |
JP2009217608A (ja) | 仮想計算機システム及びその制御方法 | |
WO2019028682A1 (zh) | 一种多系统共享内存的管理方法及装置 | |
US20170293510A1 (en) | System and Method for Coordinating Use of Multiple Coprocessors | |
WO2018040845A1 (zh) | 一种计算资源调度方法及装置 | |
US20090241112A1 (en) | Recording medium recording virtual machine control program and virtual machine system | |
US20150186180A1 (en) | Systems and methods for affinity dispatching based on network input/output requests | |
US20160011895A1 (en) | Virtual machine context management | |
JP4730386B2 (ja) | 仮想計算機装置、計算資源活用方法、および、プログラム | |
JP2009266027A (ja) | 情報処理装置および制御方法 | |
JP2001236237A (ja) | マルチos構成方法 | |
KR20130104958A (ko) | 다중 운영체제들을 실행하는 장치 및 방법 | |
US20120284711A1 (en) | Method and Arrangement for Configuring a Resource for a Virtual Runtime Environment | |
JP7196439B2 (ja) | 仮想化環境におけるデバイスへのアクセス方法 | |
JP5637934B2 (ja) | 仮想化装置、仮想化装置制御方法、仮想化装置制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100820 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100831 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101221 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110210 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110322 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110404 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140428 Year of fee payment: 3 |
|
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 |