JP2010204962A - 情報処理システム - Google Patents
情報処理システム Download PDFInfo
- Publication number
- JP2010204962A JP2010204962A JP2009049838A JP2009049838A JP2010204962A JP 2010204962 A JP2010204962 A JP 2010204962A JP 2009049838 A JP2009049838 A JP 2009049838A JP 2009049838 A JP2009049838 A JP 2009049838A JP 2010204962 A JP2010204962 A JP 2010204962A
- Authority
- JP
- Japan
- Prior art keywords
- hardware
- event
- processing
- predetermined process
- unit
- 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.)
- Granted
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/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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- 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/4557—Distribution of virtual machine instances; Migration and load balancing
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【解決手段】互いに異なる性質のハードウェアを有する第1システム100aと第2システム100bとは、自システムのハードウェアを使用した処理を実行するための環境である実行環境を提供することが可能である吸収部130と、吸収部130によって提供される実行環境において所定の処理を実行することが可能である処理部120と、をそれぞれが有する。吸収部130は、自システムのハードウェアと他システムのハードウェアとの違いを吸収することによって、自システムの処理部120に対して自システムのハードウェアと他システムのハードウェアとの違いに依存しない実行環境を自システムの処理部120に提供する。
【選択図】図1
Description
1−1. 情報処理システムの概要
1−2. 情報処理システムの機能構成
1−3. サブシステムのハードウェア構成
1−4. 仮想化技術とは
1−5. 仮想化
1−6. 仮想化のメリット
1−7. マイグレーション
1−8. マイグレーションを活用した動的な実行環境の移動
1−9. 情報処理システムを実現するために必要なシステム構成要素
1−9−1. 消費電力・処理能力の異なる二つ以上のサブシステム
1−9−2. サブシステム間の通信手段
1−9−3. サブシステム間でHWリソースを共有する手段
1−9−4. サブシステム間でVMイメージを共有する手段
1−9−5. 切換えイベント検知機能
1−9−6. サブシステム電源制御機能
1−10. 状態遷移図
1−10−1. VM実行
1−10−2. マイグレーション待機(VM実行側)
1−10−3. マイグレーション待機(VM非実行側)
1−10−4. マイグレーション実行(VM実行側)
1−10−5. マイグレーション実行(VM実行側)
1−10−6. マイグレーションの流れ
1−10−7. ライブマイグレーションの流れ
1−10−8. 切換え待機
1−11. システム構成例(その1)
1−12. システム構成例(その2)
1−13. LPSS−>HPSSの切換えに関して
1−14. 切換えの流れ(その1)
1−15. 切換えの流れ(その2)
1−16. VMイメージ用HDD共有例(その1)
1−17. VMイメージ用HDD共有例(その2)
1−18. VMイメージ用HDD共有例(その3)
1−19. VMイメージ用HDD共有例(その4)
1−20. VMイメージ用HDD共有例(その5)
1−21. 命令セットが同一でない場合について
1−22. 将来的な展望
2. 本実施形態の変形例
本発明の第1実施形態について説明する。
低消費電力サブシステム(LPSS:Low Power Sub System)と高パフォーマンスサブシステム(HPSS:High Power Sub System)とを有する情報処理システムが、それぞれのサブシステムにおいては仮想マシン上でOS(Opereting System)を実行する。情報処理システムは、タスク負荷や電源状態などの状況に応じて、処理を実行する仮想マシンをLPSSとHPSSの間で動的にマイグレーションさせる。例えば、起動時や高負荷タスク処理時にはHPSSに、バッテリ駆動時やアイドル時や低負荷処理時にはLPSSに処理を実行させる。情報処理システムは、単一筐体中にLPSSとHPSSの両方を有するシステム(PC単体)であってもよく、ノートPC(Personal Computer)(LPSS)とドック(HPSS)のような分離型システムであってもよい。また、情報処理システムは、LPSSとHPSSとの組み合わせに限らず、ハードウェアの異なる2つのシステムのあらゆる組み合わせによって構成されることとすることもできる。
図1は、本実施形態に係る情報処理システムの機能構成を示す図である。図1に示すように、情報処理システム10は、異なるハードウェアによって構成される2つのサブシステム(第1システム100(100a)および第2システム100(100b))によって構成される。本実施形態では、サブシステムの数は2つであるとするが、3つ以上であることとしてもよい。
図2は、本実施形態に係るサブシステムのハードウェア構成を示す図である。サブシステムは、上記した第1システム100aや、第2システム100bに相当するものである。また、ここでは、第1システム100aと第2システム100bとが別の筐体内に存在し、各々の筐体がネットワーク200を介して接続されている例について説明するが、このような形態に限定されないことについては上記した通りである。
仮想化技術とは、ソフトウェアで仮想的なハードウェアを作り、その上でOSやアプリケーションなどのソフトウェアを動かすことである。
PCの世界で一般的に使われる仮想化技術には、ハイパーバイザ型とアプリケーション型の2種類が存在する。図3は、2種類の仮想化技術を示す図である。図3(a)に示すハイパーバイザ型のサブシステム100は、H/W(ハードウェア)191と、VMM192と、Host OS194を含むVM193と、Guest OS196を含むVM195とを備えるものである。図3(b)に示すアプリケーション型のサブシステム100は、H/W(ハードウェア)191と、Host OS194と、VMM192と、Guest OS196を含むVM195とを備えるものである。
仮想化を行うことのメリットとして、既存のソフトウェアが実行できる「互換性」が挙げられる。その他に、基盤となる物理ハードウェアとはまったく異なる仮想マシンを構成できるという「エミュレーション」、仮想マシンをファイル群として扱うことができるという「カプセル化」、他のソフトウェアのファイルと同様に仮想マシンを一つの場所から別の場所に移動できるという「可搬性」、物理的に存在する一台のマシン上で複数の仮想マシンが実行できるという「パーティショニング」、各仮想マシンがそれぞれ別々のマシンのように振る舞うことができるという「隔離」等が挙げられる。
マイグレーションとは、仮想マシンの持つ上記特徴の「可搬性」を利用して、別のホストに仮想マシンを移動することである。本実施形態では、例えば、イメージファイルが第1システム100aと第2システム100bとの間で移動することを示すものである。マイグレーションの中で、ライブマイグレーションとは、実行中の仮想マシンを(ほぼ)無停止で別のホストに移動する技術である。図4は、LPSS191aからHPSS191bにVMがマイグレーションする様子を示した模式図である。
続いて、マイグレーションを活用して動的に実行環境を移動させる技術(ライブマイグレーション)を本実施形態に適用した技術であるDynamic Platform Switchingについて説明する。仮想マシン上でOSを動作させ、第1システム100aの一例としてのHPSSと第2システム100bの一例としてのLPSSとの間で、Dynamic Platform Switching(いわゆる、ライブマイグレーション)を行う。以下では、第1システム100aの一例としてHPSS、第2システム100bの一例としてLPSSを使用することとする。
本実施形態に係る情報処理システム10を実現するために必要なシステム構成要素としては、消費電力・処理能力の異なる二つ以上のサブシステムが挙げられる。例えば、サブシステムとして、低消費電力サブシステム(LPSS)と高パフォーマンスサブシステム(HPSS)とが挙げられる。その他に、サブシステム間の通信手段(例えば、通信部110)や、サブシステム間で共有するHW(HardWare)リソースの共有手段(例えば、共有部140)、サブシステム間でVMイメージ(例えば、イメージファイル)を共有する手段、切換えイベント検知機能(例えば、監視部160の機能)、サブシステム電源制御機能等が挙げられる。
消費電力・処理能力の異なる二つ以上のサブシステムは、それぞれ、Host OSとVMMとを実行可能である。他サブシステムがVM実行中に、自サブシステムでHost OSとVMMを起動しVM実行サブシステムからのマイグレーション受け入れが可能な構成となっている。このような構成とするためには、サブシステムに、CPU、チップセット、メモリなどが含まれる。Host OSとVMMとを格納するHDDは、構成次第で他サブシステムと共有可能とすることができる。したがって、HDDはサブシステムに属さないこととすることもできる。
サブシステム間の通信手段(例えば、通信部110)による通信方式は、IP(Internet Protocol)ネットワークを介するものであってもよいし、USB(Universal Serial Bus)クライアント機能のような仮想デバイスを用いるものであってもよい。サブシステム間の通信手段は、主として、VMスナップショットの共有やマイグレーションの同期を取るために用いられる。また、自サブシステムの共有リソースを他サブシステムが利用する際や、他サブシステムの共有リソースを自サブシステムが利用する際に使うことも可能である。
本実施形態に係る情報処理システム10では、以下の(1)〜(4)のいずれか、または、それらの組み合わせによってHWリソースの共有手段を提供するHW構成とソフトウェアプログラムとが必要となる。
(1)サブシステム間の通信手段を介して、一つのサブシステムが他のサブシステムに対して機能を提供する技術を使用することができる。例えば、サーバクライアントモデルによるリモートコントロール(例えば、サーバ−クライアント型のシステムによる機能の提供)によって機能を提供する技術や、USBクライアント機能などの仮想デバイスによって機能を提供する技術等を使用することができる。
(2)各サブシステムからアクセス可能なバスもしくはデバイスにデバイスを接続する技術を使用することができる。例えば、i.LINKや、SCSI(Small Computer System Interface)、LAN(Local Area Network)等による接続等が想定される。また、両サブシステムからアクセスがあった場合にアクセスを調停するための調停コントローラを使用することもできる。
(3)HWリソースが接続されたサブシステムにマイグレーションする技術を使用することができる。LPSSには存在しないHWリソースが接続されたHPSSにマイグレーションする場合等が想定される。
(4)スイッチを用いて、VMを実行するサブシステムにHWリソースを接続する技術を使用することができる。
本実施形態に係る情報処理システム10では、以下の(1)〜(3)のいずれか、または、それらの組み合わせによってVMイメージの共有手段を提供するHW構成とソフトウェアプログラムとが必要となる。
(1)一つのサブシステムが他のサブシステムに対してスナップショットを提供する技術を使用することができる。これには、ファイルサーバの使用、USBクライアント機能(VMイメージを保存するストレージを持つサブシステムが他サブシステムに対してデバイスとして振る舞う機能)の使用、ファイル転送(コピー)機能の使用等が想定される。
(2)サブシステムと中立な位置関係に共有ストレージを配置する技術を使用することができる。これには、i.LINK・SCSI・LAN等による接続や、調停コントローラの使用等を使用することが想定される。
(3)スイッチを用いて、ストレージの接続先を切り換えて、VMを実行するサブシステムがストレージを占有する技術を使用する。
本実施形態に係るサブシステムでは、切換えイベント検知機能(例えば、監視部160の機能)として、VMの負荷状況、使用デバイス、ソフトウェアUI(User Interface)によるユーザからの選択等をモニタするソフトウェアプログラムを実行する。また、サブシステムのコンポーネントにおいて、ハードウェアUI(メカニカルスイッチ等)によるユーザからの選択、電源状況変化(AC/Battery)、システムの温度状況、(HPSS分離タイプの場合)HPSS接続状況変化等をモニタするソフトウェアプログラムを実行する。
本実施形態に係るサブシステムでは、VM実行中か否かなど、状況を判断してサブシステムの動作状態を切り換える仕組みや、ソフトウェアプログラム等が必要となる。また、VMを実行せず、かつ、他サブシステムに対して機能を提供しないサブシステムが存在するときには、そのサブシステムの電源を切ったり、そのサブシステムを省電力モードに遷移させたりすることで、システム全体の消費電力を低減することができる。また、マイグレーションする際や、他のサブシステムへ機能を提供する際には、サブシステムを動作状態に復帰させることもできる。
図5は、VM実行側210とVM非実行側220とにおける状態遷移図である。情報処理システム10には、VM実行側のサブシステムとVM非実行側のサブシステムとが存在することになる。
図5において、「VM実行T110」は、VMを実行している状態を示している。この「VM実行T110」において、他サブシステムが提供する機能があれば、サブシステム間の通信機能を介して利用することができる。また、この「VM実行T110」において、切換えイベントを検知すると「マイグレーション待機T130」状態へ遷移する。
図5において、「マイグレーション待機T130(VM実行側210)」は、マイグレーションの準備をし、他サブシステムが「マイグレーション待機T130」状態に遷移するのを待っている状態である。マイグレーション先サブシステムとの通信を確立し、同期が取れたら「マイグレーション実行T150」状態に遷移する。マイグレーション先サブシステムとの通信が確立できないときは「VM実行T110」状態に遷移する。
図5において、「マイグレーション待機T140(VM非実行側220)」は、必要に応じて省電力状態もしくは電源Off状態から復帰する状態である。この状態では、マイグレーション受け入れ準備をし、他サブシステムが「マイグレーション待機T130」状態に遷移するのを待つこととなる。マイグレーション元サブシステムとの通信を確立し、同期が取れたら「マイグレーション実行T160」状態に遷移する。マイグレーション先サブシステムとの通信が確立できないときは「切換え待機T120」状態に遷移する。
図5において、「マイグレーション実行(T150)」は、VMの停止や保存を行う状態である。VMの停止時間を短くするため、VM非実行側220にVMデータを差分転送することとしてもよい(ライブマイグレーション)。マイグレーションが完了したら占有していたHWリソースをマイグレーション先に切り換える。マイグレーションに失敗したら「VM実行T110」状態に遷移する。
図5において、「マイグレーション実行(T160)」は、VMの読み込みや実行を行う状態である。VMの停止時間を短くするため、VM実行側210からVMデータを差分受信することとしてもよい(ライブマイグレーション)。マイグレーションが完了したらマイグレーション先が占有していたHWリソースを受け取る。マイグレーションに失敗したら「切換え待機T120」状態に遷移する。
マイグレーションの流れとしては、例えば、「マイグレーション開始」→「仮想マシン停止(移動元)」→「仮想マシンデータ転送(移動元→移動先)」→「仮想マシン再開(移動先)」の順に処理が実行される。
ライブマイグレーションの流れとしては、「マイグレーション開始」→「仮想マシンデータ転送(移動元→移動先)」→「差分転送(移動元→移動先)」→「差分が十分少なくなるまで差分転送を繰り返す」→「仮想マシン停止(移動元)」→「差分転送(移動元→移動先)」→「仮想マシン再開(移動先)」の順に処理が実行される。
図5において、「切換え待機T120」は、切換えイベント待ちの状態である。この状態では、電源Offや省電力状態、もしくはVM実行サブシステムに対して自サブシステムのHWリソースの機能を提供する。また、この状態において、切換えイベントを検知すると「マイグレーション待機T140」状態へ遷移する。
図6は、本実施形態に係る情報処理システムのシステム構成例(その1)を示す図である。図6に示すように、LPSS191aは、CPU901aと、Mem(Memory)904aと、NB(North Bridge)908aと、SB(South Bridge)909aと、HDD918aと、LAN926aとを備えて構成されている。また、HPSS191bは、CPU901bと、Mem904bと、NB908bと、SB909bと、SSD918bと、LAN926bとを備えて構成されている。LPSS191aとHPSS191bとをLAN926a,926bで接続する。LPSS191aのHDD918aにはLPSS191aのHost OSやVMM、VMイメージを格納する。HPSS191bのSSD(Solid State Drive)918bには、HPSS191bのHost OSとVMMとを格納する。HPSS191bからはLAN926bを介してHDD918aにアクセスする。LPSS191aはLAN926aを介してHPSS191bと通信する。LPSS191aがSMC(System Management Controller)906に切換えタイミングを通知する。SMC906はPlatform Switchingに同期してKBD(KeyBorD)916の接続先とLCD914の接続先とをバススイッチで切り換える。SMC906はHPSS191bへの電源供給を制御する。
図7は、本実施形態に係る情報処理システムのシステム構成例(その2)を示す図である。図7に示すように、LPSS191aとHPSS191bとをUSBで接続する。LPSS191aがUSB Client(USBC924)として動作する。LPSS191aのHDD918aにはLPSS191aのHost OSやVMM、VMイメージを格納する。HPSS191bのSSD918bにはHPSS191bのHost OSとVMMとを格納する。HPSS191bからはUSBを介してHDD918aにアクセスする。LPSS191aはUSBを介してHPSS191bと通信する。LPSS191aがSMCに切換えタイミングを通知する。SMC906はPlatform Switchingに同期してKBD916の接続先とLCD914の接続先とをバススイッチで切り換える。SMC906はHPSS191bへの電源供給を制御する。
Platform Switchingの切換え要求イベント発生からマイグレーション開始までの時間を短くするためには、イベント発生後にできるだけ短い時間でHPSS191bを起動する必要がある。LPSS191a動作時にHPSS191bをスタンバイに入れておくと、HPSS191bの復帰を高速化することができる。また、HPSS191bの復帰に時間がかかることが許容でき、LPSS191a動作中の電力を少しでも減らしたい場合にはHPSS191bの電源を切る方が省電力になる。
図8は、VM実行側のサブシステムの切換えの流れ(その1)を示す図である。図8では、LPSS動作時にHPSSの電源をOffにしておく場合について示している。LPSSは、HPSS切り替えイベント(310)の発生を検知すると、HPSSに起動要求(320)を送信する。HPSSは、起動要求(320)を受信すると、電源をOffからOnに切り替え(ステップS210)、BIOSを起動し(ステップS220)、OSを起動し(ステップS230)、VMMを起動する(ステップS240)。HPSSは、起動が終わると、LPSSにマイグレーション受入準備完了通知(330)を送信する。LPSSは、マイグレーション受入準備完了通知(330)を受信すると、VMを停止し(ステップS250)、VMを保存して(ステップS260)、HPSSにVM保存完了通知(340)を送信する。HPSSは、VM保存完了通知(340)を受信すると、LPSSからマイグレーションされたVMを読み込み(ステップS270)、読み込んだVMを再開して(ステップS280)、LPSSにマイグレーション成功通知(350)を送信する。LPSSは、HPSSから「マイグレーション成功通知(350)」を受信した後、「切換え待機」状態に遷移することとしてもよく、停止状態に遷移することとしてもよい。
図9は、VM実行側のサブシステムの切換えの流れ(その2)を示す図である。図9では、LPSS動作時にHPSSをスタンバイにしておく場合について示している。HPSSは、起動要求(320)を受信すると、電源をスタンバイ状態からOnに切り替え(ステップS310)、BIOSを再開し(ステップS320)、OSを再開し(ステップS330)、VMMを再開する(ステップS340)。その他については、図8に示した処理の流れと同様である。HPSSから「マイグレーション成功通知(350)」を受信した後、「切換え待機」状態に遷移することとしてもよく、停止状態に遷移することとしてもよい。
図10は、VMイメージ用HDDの共有例(その1)を示す図である。図10に示すように、LPSS191aとHPSS191bとを、例えば、PCIe(PCI Express)931などのローカルバスで接続する。HDD918aをLPSS191aに接続し、HDD918aにVMイメージ410を格納する。HPSS191bはLPSS191aを介してHDD918aを使用する。LPSS191aがHPSS191bに対してローカルバスで接続されたデバイスとして振る舞ってもよいし、その逆でもよい。また、LPSS191aとHPSS191bとでローカルバスをネットワークとして使用してもよい。
図11は、VMイメージ用HDDの共有例(その2)を示す図である。図11に示すように、LPSS191aとHPSS191bとを、例えば、LAN(Local Area Network)926などのネットワークで接続する。HDD918aをLPSS191aに接続し、HDD918aにVMイメージ410を格納する。HPSS191bからはネットワークを介してVMイメージ410にアクセスする。LPSS191aのHost OSやVMMはHDD918aに格納する。HPSS191bもHost OSやVMMの格納や仮想記憶などに使用するため、ある程度の容量を持ったSSD918bなどのストレージを持たせるとよい。
図12は、VMイメージ用HDDの共有例(その3)を示す図である。図12に示すように、LPSS191aとHDD918aとをi.LINK(IEEE1394)933aで接続し、HPSS191bとHDD918aとをi.LINK933bで接続する。HDD918aにVMイメージ410を格納する。LPSS191aとHPSS191bとのどちらも、i.LINK933a,933bのプロトコルを使用してHDD918aにアクセスする。この形態によれば、LPSS191aとHPSS191bとのそれぞれのHost OSやVMM格納用にHDD918aを使用できる。LPSS191aとHPSS191bと間の通信にもi.LINK933a,933bを使用できる。i.LINK933a,933bの代わりに、SCSI、SAS、iSCSI、LAN等を使用することもできる。
図13は、VMイメージ用HDDの共有例(その4)を示す図である。図13に示すように、LPSS191a/HPSS191bのアクセスを調停する機能を持つHDD Controller941にHDD918aを接続する。HDD Controller941とHDD918aとの接続には、SATA(Serial ATA)935を使用することができる。Platform Switching時にLPSS191a−HPSS191b間で同期を取るため、LPSS191a−HPSS191b間における通信手段が必要となる。通信手段としての機能は、HDD Controller941にもたせてもよい。HDD Controller941とLPSS191aとはPCIe(PCI Express)931a等で接続することができ、HDD Controller941とHPSS191bとは、PCIe(PCI Express)931b等で接続することができる。
図14は、VMイメージ用HDDの共有例(その5)を示す図である。図14に示すように、LPSS191a/HPSS191bとHDD918aとをSATA(Serial ATA)935a,935b,935cで接続する。バススイッチ(Swith937)を使ってLPSS191aとHPSS191bのどちらにHDD918aを接続するかを決定する。Platform Switching時にLPSS191a−HPSS191b間で同期を取るため、別途LPSS191a−HPSS191b間における通信手段が必要となる。
LPSSとHPSSとの間でCPUがサポートする命令セットが同一でない場合について説明する。HPSSとLPSSとの間でCPUがサポートしている機能や命令セットが同一にできるとは限らない。しかしながら、CPUがサポートしている機能や命令セットが同一でない場合に対してもエミュレーション技術を使用して本実施形態を適用することが可能である。また、例えば、x86CPUが無効な命令を実行すると例外(割り込み)が発生する。この場合、その割り込み処理でどのような命令を実行しようとしたのかを仮想マシンモニタが確認し、命令をエミュレーションすることが可能である。
サーバサイドでの仮想化技術では、仮想化アプライアンスと呼ばれるサービスが広がりつつある。これは、サーバ上にあるVMイメージを、サーバ上もしくはクライアント上で実行するものである。このような仮想化アプライアンスも、広い意味ではLPSSもしくはHPSSとしてとらえることができる。VMとこのような仮想化アプライアンスサービスと間に互換性があれば、仮想化アプライアンスサービスとの間でマイグレーションが可能となる。これにより、VM実行環境を持たない時でもネットワークサービスである仮想化アプライアンスを通してVMを使用したり、仮想化サーバによってパフォーマンスのスケーラビリティを増したりすることが可能になると考えられる。
なお、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
100 サブシステム
100a 第1システム
100b 第2システム
110(110a,110b) 通信部
120(120a,120b) 処理部
130(130a,130b) 吸収部
140(140a,140b) 共有部
150(150a,150b) 出力部
160(160a,160b) 監視部
170(170a,170b) 入力部
200 ネットワーク
Claims (12)
- 自システムのハードウェアを使用した処理を実行するための環境である実行環境を提供することが可能である吸収部と、
前記吸収部によって提供される前記実行環境において所定の処理を実行することが可能である処理部と、
をそれぞれが有するとともに、互いに異なる性質の前記ハードウェアを有する、第1システムおよび第2システムを備え、
前記第1システムの前記吸収部は、
前記第1システムの前記ハードウェアと前記第2システムの前記ハードウェアとの違いを吸収することによって、前記第1システムの前記処理部に対して前記第1システムの前記ハードウェアと前記第2システムの前記ハードウェアとの違いに依存しない前記実行環境を前記第1システムの前記処理部に提供し、
前記第2システムの前記吸収部は、
前記第1システムの前記ハードウェアと前記第2システムの前記ハードウェアとの違いを吸収することによって、前記第2システムの前記処理部に対して前記第1システムの前記ハードウェアと前記第2システムの前記ハードウェアとの違いに依存しない前記実行環境を前記第2システムの前記処理部に提供する、情報処理システム。 - 前記第1システムは、
前記所定の処理を実行するシステムを切り換える旨を示すイベントの発生を検知することが可能である監視部をさらに備え、
前記第1システムの前記処理部は、
前記所定の処理の実行中において前記監視部によって前記イベントの発生が検知されると、前記所定の処理の実行に際して使用している前記ハードウェアに記憶されているデータを抽出して、抽出した前記データを記述したイメージファイルを生成し、生成した前記イメージファイルを前記第2システムに出力する、
請求項1に記載の情報処理システム。 - 前記第2システムは、
前記所定の処理を実行するシステムを切り換える旨を示すイベントの発生を検知することが可能である監視部をさらに備え、
前記第2システムの前記処理部は、
前記所定の処理の実行中において前記監視部によって前記イベントの発生が検知されると、前記所定の処理の実行に際して使用している前記ハードウェアに記憶されているデータを抽出して、抽出した前記データを記述したイメージファイルを生成し、生成した前記イメージファイルを前記第1システムに出力する、
請求項2に記載の情報処理システム。 - 前記第1システムの前記処理部は、
前記所定の処理の待機中において前記監視部によって前記イベントの発生が検知されると、前記第2システムから前記イメージファイルの入力を受け付け、入力を受け付けた前記イメージファイルに記述された前記データを前記第1システムの前記ハードウェアに記憶させ、前記データが記憶された前記ハードウェアを使用して前記所定の処理を実行する、
請求項3に記載の情報処理システム。 - 前記第2システムの前記処理部は、
前記所定の処理の待機中において前記監視部によって前記イベントの発生が検知されると、前記第1システムから前記イメージファイルの入力を受け付け、入力を受け付けた前記イメージファイルに記述された前記データを前記第2システムの前記ハードウェアに記憶させ、前記データが記憶された前記ハードウェアを使用して前記所定の処理を実行する、
請求項4に記載の情報処理システム。 - 前記第1システムの前記ハードウェアは、
前記第2システムの前記ハードウェアよりも動作時における処理速度が低速であり、
前記第1システムの前記監視部は、
前記第1システムの前記ハードウェアに対してかかっている負荷の大きさを監視し、前記負荷の大きさが所定値よりも大きいときには前記イベントを発生させる、
請求項5に記載の情報処理システム。 - 前記第2システムの前記ハードウェアは、
前記第1システムの前記ハードウェアよりも動作時における処理速度が高速であり、
前記第2システムの前記監視部は、
前記第2システムの前記ハードウェアに対してかかっている負荷の大きさを監視し、前記負荷の大きさが所定値よりも小さいときには前記イベントを発生させる、
請求項5に記載の情報処理システム。 - 前記第2システムの前記ハードウェアは、
前記第1システムの前記ハードウェアよりも動作時における消費電力が高く、
前記第2システムの前記監視部は、
前記第2システムの前記ハードウェアの動作状況を監視し、前記動作状況が前記ハードウェアのアイドル状態中であるときには前記イベントを発生させる、
請求項5に記載の情報処理システム。 - 前記第2システムの前記ハードウェアは、
前記第1システムの前記ハードウェアよりも動作時における消費電力が高く、
前記第2システムの前記監視部は、
前記第2システムのバッテリの動作状況を監視し、前記動作状況が前記バッテリの駆動中であるときには前記イベントを発生させる、
請求項5に記載の情報処理システム。 - 前記第1システムの前記監視部は、
前記第1システムの前記処理部が前記所定の処理の実行に際して使用している前記第1システムの前記ハードウェアを監視し、前記第1システムに存在しないハードウェアまたは前記第1システムで故障しているハードウェアを使用する必要が生じた場合に、前記イベントを発生させる、
請求項5に記載の情報処理システム。 - 前記第1システムの前記監視部は、
前記第1システムの前記処理部が前記所定の処理の実行に際して使用している前記第1システム内の温度を監視し、前記温度が所定値よりも高い場合に、前記イベントを発生させる、
請求項5に記載の情報処理システム。 - 前記第1システムは、
前記所定の処理を実行するシステムを切り換える旨を示す切換え指示情報の入力をユーザから受け付けることが可能である入力部をさらに備え、
前記第1システムの前記監視部は、
前記入力部が前記切換え指示情報の入力を受け付けると、前記イベントを発生させる、
請求項5に記載の情報処理システム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009049838A JP4970479B2 (ja) | 2009-03-03 | 2009-03-03 | 情報処理システム |
US12/660,103 US9672055B2 (en) | 2009-03-03 | 2010-02-19 | Information processing system having two sub-systems with different hardware configurations which enable switching therebetween |
CN2010101253004A CN101826033B (zh) | 2009-03-03 | 2010-02-24 | 信息处理系统 |
EP10154514.3A EP2226724B1 (en) | 2009-03-03 | 2010-02-24 | Information processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009049838A JP4970479B2 (ja) | 2009-03-03 | 2009-03-03 | 情報処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010204962A true JP2010204962A (ja) | 2010-09-16 |
JP4970479B2 JP4970479B2 (ja) | 2012-07-04 |
Family
ID=42320957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009049838A Active JP4970479B2 (ja) | 2009-03-03 | 2009-03-03 | 情報処理システム |
Country Status (4)
Country | Link |
---|---|
US (1) | US9672055B2 (ja) |
EP (1) | EP2226724B1 (ja) |
JP (1) | JP4970479B2 (ja) |
CN (1) | CN101826033B (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9762701B1 (en) * | 2009-04-10 | 2017-09-12 | Open Invention Network Llc | System and method for cached streaming application isolation |
EP2580670A4 (en) * | 2010-06-10 | 2017-12-20 | Hewlett-Packard Development Company, L.P. | Virtual machine |
JP5967215B2 (ja) * | 2012-11-07 | 2016-08-10 | 富士通株式会社 | 情報処理装置、プログラムおよび仮想マシン移動方法 |
US9697172B1 (en) * | 2012-12-28 | 2017-07-04 | Juniper Networks, Inc. | Virtual network optimizing a physical network |
US9608876B2 (en) | 2014-01-06 | 2017-03-28 | Microsoft Technology Licensing, Llc | Dynamically adjusting brand and platform interface elements |
US9483811B2 (en) | 2014-01-06 | 2016-11-01 | Microsoft Technology Licensing, Llc | Division of processing between systems based on external factors |
US20150193275A1 (en) * | 2014-01-06 | 2015-07-09 | Microsoft Corporation | Building interactive, data driven apps |
US9501808B2 (en) | 2014-01-06 | 2016-11-22 | Microsoft Technology Licensing, Llc | Division of processing between systems based on business constraints |
US9195401B2 (en) | 2014-02-18 | 2015-11-24 | University Of Florida Research Foundation, Inc. | Method and apparatus for virtual machine live storage migration in heterogeneous storage environment |
DE102015214390A1 (de) * | 2015-07-29 | 2017-02-02 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Betreiben wechselnder Gastsysteme unter einem Hypervisor |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09274608A (ja) * | 1996-04-04 | 1997-10-21 | Hitachi Ltd | マルチプロセッサシステムにおけるプロセッサ間の負荷配分制御方法 |
JP2002215597A (ja) * | 2001-01-15 | 2002-08-02 | Mitsubishi Electric Corp | マルチプロセッサ装置 |
JP2002288150A (ja) * | 2001-03-28 | 2002-10-04 | Matsushita Electric Ind Co Ltd | 半導体集積回路装置 |
JP2004126968A (ja) * | 2002-10-03 | 2004-04-22 | Fujitsu Ltd | 並列計算機のジョブスケジューリング装置 |
JP2007148952A (ja) * | 2005-11-30 | 2007-06-14 | Renesas Technology Corp | 半導体集積回路 |
JP2007323244A (ja) * | 2006-05-31 | 2007-12-13 | Nec Corp | 仮想サーバ管理システムおよびその方法ならびに管理サーバ装置 |
JP2008257578A (ja) * | 2007-04-06 | 2008-10-23 | Toshiba Corp | 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7231531B2 (en) * | 2001-03-16 | 2007-06-12 | Dualcor Technologies, Inc. | Personal electronics device with a dual core processor |
WO2006018307A2 (en) * | 2004-08-18 | 2006-02-23 | Jaluna Sa | Operating systems |
US20060155912A1 (en) * | 2005-01-12 | 2006-07-13 | Dell Products L.P. | Server cluster having a virtual server |
US7496613B2 (en) * | 2006-01-09 | 2009-02-24 | International Business Machines Corporation | Sharing files among different virtual machine images |
JP4961146B2 (ja) * | 2006-02-20 | 2012-06-27 | 株式会社日立製作所 | 負荷分散方法およびシステム |
US20080263324A1 (en) * | 2006-08-10 | 2008-10-23 | Sehat Sutardja | Dynamic core switching |
US8296760B2 (en) * | 2006-10-27 | 2012-10-23 | Hewlett-Packard Development Company, L.P. | Migrating a virtual machine from a first physical machine in response to receiving a command to lower a power mode of the first physical machine |
US7941657B2 (en) * | 2007-03-30 | 2011-05-10 | Lenovo (Singapore) Pte. Ltd | Multi-mode mobile computer with hypervisor affording diskless and local disk operating environments |
US7788522B1 (en) * | 2007-05-31 | 2010-08-31 | Oracle America, Inc. | Autonomous cluster organization, collision detection, and resolutions |
-
2009
- 2009-03-03 JP JP2009049838A patent/JP4970479B2/ja active Active
-
2010
- 2010-02-19 US US12/660,103 patent/US9672055B2/en active Active
- 2010-02-24 CN CN2010101253004A patent/CN101826033B/zh not_active Expired - Fee Related
- 2010-02-24 EP EP10154514.3A patent/EP2226724B1/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09274608A (ja) * | 1996-04-04 | 1997-10-21 | Hitachi Ltd | マルチプロセッサシステムにおけるプロセッサ間の負荷配分制御方法 |
JP2002215597A (ja) * | 2001-01-15 | 2002-08-02 | Mitsubishi Electric Corp | マルチプロセッサ装置 |
JP2002288150A (ja) * | 2001-03-28 | 2002-10-04 | Matsushita Electric Ind Co Ltd | 半導体集積回路装置 |
JP2004126968A (ja) * | 2002-10-03 | 2004-04-22 | Fujitsu Ltd | 並列計算機のジョブスケジューリング装置 |
JP2007148952A (ja) * | 2005-11-30 | 2007-06-14 | Renesas Technology Corp | 半導体集積回路 |
JP2007323244A (ja) * | 2006-05-31 | 2007-12-13 | Nec Corp | 仮想サーバ管理システムおよびその方法ならびに管理サーバ装置 |
JP2008257578A (ja) * | 2007-04-06 | 2008-10-23 | Toshiba Corp | 情報処理装置、スケジューラおよび情報処理置のスケジュール制御方法 |
Non-Patent Citations (1)
Title |
---|
須崎有康: "「ネットワークを渡り歩けるコンピュータ」の実装", 電子情報通信学会技術研究報告, vol. 第100巻,第86号, JPN6009049702, 25 May 2000 (2000-05-25), JP, pages 149 - 156, ISSN: 0001817419 * |
Also Published As
Publication number | Publication date |
---|---|
CN101826033B (zh) | 2013-10-02 |
EP2226724A2 (en) | 2010-09-08 |
JP4970479B2 (ja) | 2012-07-04 |
EP2226724A3 (en) | 2011-09-07 |
US20100229180A1 (en) | 2010-09-09 |
CN101826033A (zh) | 2010-09-08 |
EP2226724B1 (en) | 2018-08-29 |
US9672055B2 (en) | 2017-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4970479B2 (ja) | 情報処理システム | |
US9996396B2 (en) | Cross architecture virtual machine migration | |
KR101602991B1 (ko) | 비가상화 시스템에서의 메모리 확장을 지원하기 위한 상호 운영 시스템 메모리 핫스왑 | |
US9317314B2 (en) | Techniques for migrating a virtual machine using shared storage | |
US9489035B2 (en) | Efficient power management of a system with virtual machines | |
JP4665040B2 (ja) | 計算機およびアクセス制御方法 | |
US9459928B2 (en) | Remote graphics console and virtual media access to virtual machine guests | |
US20110113426A1 (en) | Apparatuses for switching the running of a virtual machine between multiple computer devices belonging to the same computer platform and the associated switching methods | |
TW201543225A (zh) | 用於支持對經由nvme控制器、通過網路存取的遠端存儲設備的熱插拔的系統和方法 | |
JP2012009013A (ja) | 部分仮想化マシンに基づく統一格納装置 | |
US9424205B2 (en) | System and method for SATA virtualization and domain protection | |
JP2013254304A (ja) | 情報処理装置、情報処理方法およびプログラム | |
WO2016101282A1 (zh) | 一种i/o任务处理的方法、设备和系统 | |
WO2020063432A1 (zh) | 一种升级虚拟化模拟器的方法和装置 | |
Kooburat et al. | The Best of Both Worlds with {On-Demand} Virtualization | |
US9286088B2 (en) | User interface for interaction with virtual machine | |
KR101614920B1 (ko) | 다수 개의 컴퓨팅 시스템 및/또는 환경들에서의 입출력 자원들의 공유 | |
US10564918B2 (en) | Techniques of remotely providing user input to thin client | |
US20230026015A1 (en) | Migration of virtual computing storage resources using smart network interface controller acceleration | |
US10394512B2 (en) | Multi-monitor alignment on a thin client |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110111 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110308 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110419 |
|
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: 20120404 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150413 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4970479 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |