JP4972171B2 - 仮想環境割り当てシステム及び仮想環境割り当て方法 - Google Patents

仮想環境割り当てシステム及び仮想環境割り当て方法 Download PDF

Info

Publication number
JP4972171B2
JP4972171B2 JP2009544031A JP2009544031A JP4972171B2 JP 4972171 B2 JP4972171 B2 JP 4972171B2 JP 2009544031 A JP2009544031 A JP 2009544031A JP 2009544031 A JP2009544031 A JP 2009544031A JP 4972171 B2 JP4972171 B2 JP 4972171B2
Authority
JP
Japan
Prior art keywords
virtual
devices
stack
stacks
computer system
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
Application number
JP2009544031A
Other languages
English (en)
Other versions
JP2010515152A (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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2010515152A publication Critical patent/JP2010515152A/ja
Application granted granted Critical
Publication of JP4972171B2 publication Critical patent/JP4972171B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • 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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • 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
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources

Description

本発明は、仮想環境割り当てシステム及び仮想環境割り当て方法に関する。
仮想化は、コンピュータハードウェアとオペレーティングシステム(OS)との間に、複数のOSが同じコンピュータシステム上で同時に動作すること及び複数のユーザが同じコンピュータシステムを操作することを可能にする抽象化のレイヤを作成する。
さらに、いくつかの状況では、仮想化は、単一のユーザが、仮想環境で複数のソフトウェアスタックを利用することも可能にする。
OSの各マニフェステーション(manifestation:表出、表示)は、一般に、すべての入力/出力(I/O)デバイスにフルアクセスすることができる。
したがって、このような仮想環境では、異なるOS間及び特定のユーザの制御下にある異なるソフトウェアスタック間でI/Oデバイスのコンフリクトの可能性がある。
本発明にかかる仮想環境割り当てシステム(10)は、複数の仮想スタック(S1、S2、S3、S4)を有するコンピュータシステム(100)であって、複数の入力/出力(I/O)デバイス(105)が該コンピュータシステム(100)に連結されるように構成されるコンピュータシステム(100)と、前記複数のI/Oデバイス(105)のうちの少なくとも1つを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第1の仮想スタックに割り当て、前記複数のI/Oデバイス(105)のうちの少なくとも別のI/Oデバイスを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第2の仮想スタックに割り当てるように構成される割り当てコントローラ(143)とを備える。
次に、本発明、本発明の目的、及び本発明の利点のより完全な理解のために、添付図面と共に取り入れられた以下の説明を参照する。
仮想環境割り当てシステムの一実施形態を示すブロック図である。 仮想環境割り当て方法の一実施形態を示すフロー図である。
本発明の好ましい実施形態及び本発明の利点は、図面の図1及び図2を参照することによって最も良く理解される。同様の参照符号は、さまざまな図面の同様の部分及び対応する部分に使用される。
図1は、仮想環境割り当てシステム10の一実施形態を示すブロック図である。
図1に示す実施形態では、システム10は、入力/出力(I/O)デバイス105が通信可能に連結されているコンピュータシステム100を備える。
図1に示す実施形態では、I/Oデバイス105は、ディスプレイ110及び111、マウス120、キーボード121、スマートカードリーダ122、指紋リーダ123、システム管理(SM:system management)システム124、SMレコード125、リモコン126、ゲームコントローラ127、及びデジタル媒体ドライブ128を備える。
しかしながら、I/Oデバイス105は、追加のタイプのデバイス及び異なるタイプのデバイス又はこれらのいずれか(追加のタイプのデバイス及び/又は異なるタイプのデバイス)を備えうることが理解されるべきである。この追加のタイプのデバイス及び/又は異なるタイプのデバイスには、ユニバーサルシリアルバス(USB)デバイス、カメラ、マイクロホン、バイオメトリックデバイス、プリンタ、スキャナ、地理空間測位システム(geospatial positioning system)(GPS)受信機、通信デバイス、及びオーディオ/ビデオデバイス等が含まれるが、これらに限定されるものではない。
さらに、コンピュータシステム100に連結されているI/Oデバイス105の量は変更することができることが理解されるべきである。
図1では、コンピュータシステム100は、2つの中央処理装置(CPU)101及び102を用いるが、これよりも多くの量のCPU又は少ない量のCPUを使用することができる。
また、コンピュータシステム100は、CPU101及び102と4つの例示のスタックS1〜S4との間の抽象化のソフトウェアレイヤを含む仮想化レイヤ103も備える。
好ましくは、各スタックS1〜S4は、統合化されたソリューション又はコンポーネントとして管理されるハードウェア、ソフトウェア、ファームウェア、又はそれらの組み合わせを含む。
図1に示す実施形態では、スタックS1は、汎用アプリケーションスタックを含み、スタックS2は、財務プログラムを実行するか又はプロセス医療情報若しくは他の機密情報を処理するためのプライベートアプリケーションスタックを含み、スタックS3は、セキュリティ関連プロセス及び管理関連プロセスを実行するためのセキュリティ/システム管理スタックを含み、スタックS4は、エンターテインメント関連プログラム及びエンターテインメント関連プロセスを動作させるためのエンターテインメントスタックを含む。
したがって、図1では、スタックS1〜S4は、異なる使用及び/若しくは機能向けに構成され且つ/又は他の方法で専用化されている。
しかしながら、スタックS1〜S4が他のタイプのスタックを含みうることが理解されるべきであり、スタックの量が他の方法で変更されうることが理解されるべきである。
さらに、スタックS1〜S4は単一のユーザまたは複数のユーザに割り当てられうることが理解されるべきである(たとえば、いくつかのスタックは或るユーザに割り当てられる一方、他のスタックは異なるユーザに割り当てられる)。
図1に示す実施形態では、スタックS1は、オペレーティングシステム(OS)OS1、ミドルウェア(MW)MW1、及びアプリケーションAPP1を備える。
スタックS2は、OS OS2(スタックS1で動作するOS1と異なるものとすることもできるし、同じものとすることもできる)、及びOS1とアプリケーションAPP2との間に配置されたセキュリティレイヤSECURITY1を備える。
スタックS3は、より基本的なセキュリティサービスを実行することができるので、OSを実行しないものとして図1には示されている。
しかしながら、いくつかの実施形態では、スタックS3はOSを実行することができることが理解されるべきである。
スタックS4は、OS OS3を備える。このOS OS3は、いくつかの実施形態では、エンターテインメント関連アプリケーションのみを実行するための簡易OSを含む。
スタックS4は、MW MW2及びエンターテインメントアプリケーションAPP3も備える。エンターテインメントアプリケーションAPP3は、ゲーム又はメディアプレイヤでありうる。
図1に示す実施形態では、マウス120、キーボード122、及びディスプレイ110は、スタックS1に割り当てられる。
さらに、図1では、いくつかのプライベートアプリケーションについてはセキュリティレベルを増加させることが一般に望まれている結果として、スマートカードリーダ122がスタックS2に割り当てられる。
しかしながら、スタックS2で実行されるどのアプリケーションも、マウス、キーボード、及びディスプレイの使用を必要し得ることが理解されるべきである。
したがって、図1では、マウス120、キーボード121、及びディスプレイ110も、スタックS2に割り当てられる。
図1に示す実施形態では、スタックS3には、指紋リーダ123、SM124、及びSMレコード125が割り当てられる。
セキュリティ及びシステム管理は別個のスタックで実行されうることが理解されるべきである。
図1では、リモコン126及びゲームコントローラ127は、スタックS4に割り当てられる。
他の機能及び使用に基づいて、スタックS1〜S4の複製又は他のタイプのスタックのいずれかとして、他のスタックが設けられうることが理解されるべきである。
加えて、図1に示すようなマルチCPUシステム(たとえば、CPU101及び102)では、特定のスタックを特定のCPUに関連付けることができる。
図1では、コンピュータシステム100は、アクセスコントローラ140、優先順位付けルール142、及び割り当てコントローラ143を記憶するメモリ104も備える。
アクセスコントローラ140及び割り当てコントローラ143は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの組み合わせを含み、コンピュータ可読媒体上に具現化されるコンピュータプログラムを含むことができる。
アクセスコントローラ140は、ユーザが優先順位付けルール142及び割り当てコントローラ143の変更に影響を与える能力を制限する等、コンピュータシステム10の一定の特徴へのユーザアクセスを制限するのに使用される。
たとえば、適切なログインクレデンシャル(credential)を有するユーザしか優先順位付けルール142及び割り当てコントローラ143に変更を行うことができないようにアクセスを制限することができる。
ログインクレデンシャルは、基本ユーザクレデンシャルとすることができるか、又はスーパユーザ特権若しくはコンピュータアドミニストレータ特権等の予約済み特権(reserved privilege)とすることができる。
割り当てコントローラ143は、コンピュータシステム100に連結されているI/Oデバイス105を特定し且つ/又は別の方法で決定し、I/Oデバイス105をさまざまなスタックS1〜S4に割り当てる。
割り当てコントローラ143は、仮想化レイヤ103の一部とすることができ、且つ/又は、スタックS1〜S4のオペレーティングシステムOS1〜OS3のうちの1つ若しくは複数又はコンピュータシステム100の全体のオペレーティングシステムの一部とすることができる。
優先順位付けルール142は、コンピュータシステム10が動作している間又はブートアップするときに、割り当てコントローラ140によって、I/Oデバイス105のうちのさまざまなI/OデバイスをスタックS1〜S4に割り当てるのに使用されるルールのリストである。
いくつかの実施形態では、優先順位付けルール142は、コンピュータシステム100がブートするとき及び/又は新しいI/Oデバイスがコンピュータシステム100に接続されるときに自動的に適用されうるデフォルト設定を含む。
たとえば、いくつかの実施形態では、デフォルト設定は、新しく追加されたすべてのデバイス(たとえば、デバイス106)が、セキュリティ機能を有しない限り又はゲーム制御に関連しない限り、スタックS1に追加されることを示すことができる。
したがって、たとえば、ユーザが、網膜スキャナ129等の新しいバイオメトリック読み取りデバイスを追加する場合、網膜スキャナ129はセキュリティ関連デバイスであるので、デバイス129に付随するインストールソフトウェア130は、割り当てコントローラ140がスキャナ129をスタックS3に割り当てるべきであることを示すように優先順位付けルール142を更新することができる。
代替的に、割り当てコントローラ140は、インストール中、新しいデバイス106を分類するようにユーザに促すことができ、且つ/又は、新しく追加されたデバイスを割り当てのために自動的に認識し且つ/若しくは分類することができる。
したがって、たとえば、マウス120又はキーボード121を通じて割り当てコントローラ140によって受信される可能性のあるユーザ入力の受信に応答して、割り当てコントローラ140は、デフォルト優先順位付けルール142を自動的に適用して、スキャナ129をセキュリティスタックS3に割り当てることができる。
しかしながら、いくつかの実施形態では、ユーザは、割り当てコントローラ140を使用して、割り当てコントローラ140が、スタックS1、S2、S4等の別のスタック又は複数のスタックにデバイス106を割り当てるように異なる割り当てを入力することができる。
インストールソフトウェア130及び/又は優先順位付けルール142は、一定のタイプのデバイス105が複数のスタックに割り当てられることを示しうることも理解されるべきである。
いくつかの実施形態では、優先順位付けルール142は、条件付き(contingency)を含む。この条件付きは、I/Oデバイス105のうちの一定のI/Oデバイスを、アプリケーションAPP3が動作を開始した時はスタックS4に割り当てることを示すが、APP3がクローズした時はスタックS1に割り当てることを示すこと等であるが、これに限定されるものではない。
別の可能な条件付き割り当てルールは、指紋リーダ123がコンピュータシステム100から切り離されるまではスマートカードリーダ122がスタックS2に標準的に割り当てられ、切り離された時は、スマートカードリーダ122がスタックS3に再割り当てされることとすることができる。
さらに、指紋リーダ123をコンピュータシステム100に再接続することによって、スマートカードリーダ122をスタックS2に再割り当てするように割り当てコントローラ140をトリガすることができる。
さらに、いくつかの実施形態では、ルール142は、I/Oデバイス105のうちの一定のI/Oデバイスの割り当てが、I/Oデバイス105のうちの他のI/Oデバイスの割り当て又はどのスタックが動作中であるのかを条件とするように階層的である。
たとえば、スタックS3がセキュリティデバイスの優先順位を有する等、スタック自体が優先順位を有しうる。
このようなスタック優先順位方式では、スタックS3が動作中である場合には、I/Oデバイス105からの少なくとも1つのセキュリティ関連デバイスがスタックS3に割り当てられ、スタックS3で動作中でない場合には、S2のみがセキュリティ関連デバイスを有する。
したがって、この例では、スタックS3が実行中でない場合には、スタックS2に、I/Oデバイス105からの少なくとも1つのセキュリティ関連デバイスが割り当てられるように、スタックS2は、セキュリティ関連デバイスについてスタックS1及びS4よりも高い優先順位を有しうる。
いくつかの実施形態では、ルール142の1つのグループ又は1つのセットが、異なる状況についてI/Oデバイス105の割り当てを制御するのに使用されるように、ルール142は複数のグループ又は複数のセットに編成され、したがって、セットとして修正及び/又は取り替え/代用されうる。
したがって、たとえば、優先順位付けルール142は、複数のセットを含むことができ、この場合、割り当てコントローラ143は、1つのセットを現在のセット又はデフォルトセットとして使用し、一定のイベント発生に応答して、現在のセットをルール142の別の記憶されたセットに取り替え(すなわち、ルール142の異なるセットを使用し)、それによって、動的な割り当て及び/又は再割り当てを提供する。
イベントには、新しいデバイス106の追加若しくはI/Oデバイス105のうちの1つの除去/接続解除、ユーザ入力、又はアプリケーションAPP2の開始若しくはクローズが含まれ得る。
いくつかの実施形態では、ルール142の異なるセットは、コンピュータシステム100の特定の使用に基づいている(たとえば、コンピュータシステム100がゲームに使用される場合、ルール142の特定のセットが、I/Oデバイス105を割り当てるのに使用される)。
ルール142のうちの1つ又はセットの代用及び/又は取り替えは、(たとえば、条件が変化したとき、以前使用されていたルールのセットが、現在のセットとして回復されるように)一時的なものとすることもできるし、永久的なものとすることもできる(たとえば、ルール142の以前のセットが廃棄されるか、又は、ユーザ入力によって若しくは別の方法で再び使用するように指示されていない限り、再び使用されない)。
いくつかの実施形態では、ルール142の代用によって、再割り当てがトリガされ、この再割り当てにおいて、割り当てコントローラ143は、優先順位付けルール142の新しく変更されたセット又は取り替えセットに基づいてI/Oデバイス105をスタックS1〜S4のうちの特定のスタックに再割り当てする。
しかしながら、いくつかの実施形態では、再割り当ては、新しい優先順位付けルール142を使用するためにコンピュータシステム100の再起動を必要とする場合があることが理解されるべきである。
図2は、仮想環境割り当て方法20の一実施形態を示すフロー図である。
この方法は、ブロック201で開始する。ブロック201において、初期I/Oデバイス105の割り当てが、割り当てコントローラ143によって行われる。
たとえば、いくつかの実施形態では、割り当てコントローラ143は、ルール142にアクセスし、ルール142に基づいてI/Oデバイス105を割り当てる。
いくつかの実施形態では、異なるイベントによって、特定のスタック及び/又は異なるスタックへのI/Oデバイス105の割り当て及び/又は再割り当てがトリガされる。
たとえば、ブロック202において、コンピュータシステム100に対する1つ又は複数のI/Oデバイス105の追加又は除去が検出される。
ブロック203において、ユーザ入力が受信される(たとえば、特定のI/Oデバイス105又は特定の機能の分類及び/又は再分類)。
ブロック204において、アプリケーションのオープン又はクローズが検出される。
たとえば、アプリケーションAPP3が映画プレイヤであり、且つ、リモコン126が最初にエンターテインメントスタックS4に割り当てられる場合、アプリケーションAPP3の終了(たとえば、映画の終了を示す)によって、リモコン126の一般スタックS1への再割り当てがトリガされる。一般スタックS1では、リモコン126は、APP1を制御するために使用されうる。
ブロック205に示すように、いくつかの実施形態では、他のイベントによっても、I/Oデバイス105の割り当て及び/又は再割り当てをトリガすることができる。
他のイベントには、タイマ起動、スケジューリングされたイベント、外部システムアドミニストレータの送信要求及び更新要求、環境表示又はタンパリング表示等のさまざまなセンサ送信信号、ユーザログイン、ハイパーバイザ要求、並びにOS要求が含まれ得る。
オプションのブロック206に示すように、イベントによって、優先順位付けルール142の変更又は代用をオプションとしてトリガすることができる。
たとえば、優先順位付けルール142は、キーボード121及びディスプレイ110が一般スタックS1及びプライベートアプリケーションスタックS2の双方に割り当てられる一方、ゲームコントローラ127及びディスプレイ111は、エンターテインメントスタックS4に割り当てられることを示すルールを含みうる。
しかしながら、ゲームコントローラ127が除去されると、割り当て制御装置143は、ルール142の変更を統率する選択肢のセットから選択を行うようにユーザに促すことができる(たとえば、おそらく、ユーザは、もはやコンピュータをゲームに使用することを望まず、その場合、デバイスはスタックS4に割り当てられない。又は、おそらく、ユーザは、キーボード入力を使用してゲームを制御する必要があり、その場合、キーボード121は、スタックS4にさらに割り当てられる)。
ブロック207において、1つ又は複数のイベント(たとえば、ブロック202〜205において示したイベント)の検出に応答して、割り当てコントローラ143は、1つ又は複数のI/Oデバイス105を特定のスタック及び/又は異なるスタックに割り当て且つ/又は再割り当てする。
したがって、システム10の実施形態によって、たとえば、特定のI/Oデバイス105の異なる使用及び機能、並びに/又は、特定のI/Oデバイス105との関連において使用されるコンピュータシステム100の異なる使用及び/若しくは機能に基づいて、I/Oデバイス105を仮想環境の1つ又は複数のスタックに割り当てることが可能になる。
10 仮想環境割り当てシステム
100 コンピュータシステム
101,102 CPU
103 仮想化レイヤ
104 メモリ
105 I/Oデバイス
106 デバイス
110 ディスプレイ1
111 ディスプレイ2
120 マウス
121 キーボード
122 スマートカード
123 指紋リーダ
124 システム管理
125 SMレコード
126 リモコン
127 ゲームコントローラ
128 デバイス媒体ドライブ
129 網膜スキャナ
130 インストールソフトウェア
140 アクセスコントローラ
142 ルール
143 割り当てコントローラ

Claims (8)

  1. 仮想環境割り当てシステム(10)であって、
    複数の仮想スタック(S1、S2、S3、S4)を有するコンピュータシステム(100)であって、複数の入力/出力(I/O)デバイス(105)が該コンピュータシステム(100)に連結されるように構成されるコンピュータシステム(100)と、
    前記複数のI/Oデバイス(105)のうちの少なくとも1つを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第1の仮想スタックに割り当て、前記複数のI/Oデバイス(105)のうちの少なくとも別のI/Oデバイスを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第2の仮想スタックに割り当てるように構成される割り当てコントローラ(143)と
    前記複数のI/Oデバイス(105)のいずれが前記複数の仮想スタック(S1、S2、S3、S4)のいずれに割り当てられるべきかを決定するための、前記割り当てコントローラ(143)によってアクセス可能な優先順位付けルール(142)の複数のセットと
    を備え
    前記割り当てコントローラ(143)は、イベントに応答して、前記優先順位付けルール(142)のセットを別のセットに取り替えて、前記少なくとも1つのI/Oデバイス(105)を別の仮想スタック(S1、S2、S3、S4)に再割り当てする
    仮想環境割り当てシステム。
  2. 仮想環境割り当てシステム(10)であって、
    複数の仮想スタック(S1、S2、S3、S4)を有するコンピュータシステム(100)であって、複数の入力/出力(I/O)デバイス(105)が該コンピュータシステム(100)に連結されるように構成されるコンピュータシステム(100)と、
    前記複数のI/Oデバイス(105)のうちの少なくとも1つを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第1の仮想スタックに割り当て、前記複数のI/Oデバイス(105)のうちの少なくとも別のI/Oデバイスを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第2の仮想スタックに割り当てるように構成される割り当てコントローラ(143)と、
    を備え、
    前記複数のI/Oデバイス(105)のうちの第2のI/Oデバイスが前記コンピュータシステム(100)に連結されたときに前記複数のI/Oデバイス(105)のうちの第1のI/Oデバイスが前記第1の仮想スタックに割り当てられていた場合であって前記第2のI/Oデバイスが前記コンピュータシステム(100)から切り離されたとき、または、アプリケーションが動作を開始したときに前記第1のI/Oデバイスが前記第1の仮想スタックに割り当てられていた場合であって前記アプリケーションがクローズしたときに、前記割り当てコントローラ(143)は、前記第1のI/Oデバイス(105)を、前記第1の仮想スタックから別の仮想スタックに再割り当てする
    仮想環境割り当てシステム。
  3. 前記割り当てコントローラ(143)は、ユーザ入力に基づいて、前記複数のI/Oデバイス(105)を前記複数の仮想スタック(S1、S2、S3、S4)に割り当てるように構成されている
    請求項1または2に記載の仮想環境割り当てシステム。
  4. 前記割り当てコントローラ(143)は、前記複数のI/Oデバイス(105)を前記複数の仮想スタック(S1、S2、S3、S4)に動的に割り当てるように構成されている
    請求項1または2に記載の仮想環境割り当てシステム。
  5. 仮想環境割り当て方法であって、
    複数の仮想スタック(S1、S2、S3、S4)を有するコンピュータシステム(100)に連結されている複数の入力/出力(I/O)デバイス(105)を特定することと、
    前記複数のI/Oデバイス(105)のうちの少なくとも1つを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第1の仮想スタックに割り当て、前記複数のI/Oデバイス(105)のうちの少なくとも別のI/Oデバイスを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第2の仮想スタックに割り当てることと
    前記複数のI/Oデバイス(105)のいずれが前記複数の仮想スタック(S1、S2、S3、S4)のいずれに割り当てられるべきかを決定するための優先順位付けルール(142)のセットにアクセスすることと、
    イベントに応答して、前記優先順位付けルール(142)のセットを別のセットに取り替えて、前記少なくとも1つのI/Oデバイス(105)を別の仮想スタック(S1、S2、S3、S4)に再割り当てすること
    を含む仮想環境割り当て方法。
  6. 仮想環境割り当て方法であって、
    複数の仮想スタック(S1、S2、S3、S4)を有するコンピュータシステム(100)に連結されている複数の入力/出力(I/O)デバイス(105)を特定することと、
    前記複数のI/Oデバイス(105)のうちの少なくとも1つを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第1の仮想スタックに割り当て、前記複数のI/Oデバイス(105)のうちの少なくとも別のI/Oデバイスを前記複数の仮想スタック(S1、S2、S3、S4)のうちの第2の仮想スタックに割り当てることと、
    前記複数のI/Oデバイス(105)のうちの第2のI/Oデバイスが前記コンピュータシステム(100)に連結されたときに前記複数のI/Oデバイス(105)のうちの第1のI/Oデバイスが前記複数の仮想スタック(S1、S2、S3、S4)のうちの第1の仮想スタックに割り当てられていた場合であって前記第2のI/Oデバイスが前記コンピュータシステム(100)から切り離されたとき、または、アプリケーションが動作を開始したときに前記第1のI/Oデバイスが前記第1の仮想スタックに割り当てられていた場合であって前記アプリケーションがクローズしたときに、前記第1のI/Oデバイス(105)を、前記第1の仮想スタックから別の仮想スタックに再割り当てすることと
    を含む仮想環境割り当て方法。
  7. ユーザ入力に基づいて、前記複数のI/Oデバイス(105)を前記複数の仮想スタック(S1、S2、S3、S4)に割り当てること
    をさらに含む請求項5または6に記載の仮想環境割り当て方法。
  8. 前記複数のI/Oデバイス(105)を前記複数の仮想スタック(S1、S2、S3、S4)に動的に割り当てること
    をさらに含む請求項5または6に記載の仮想環境割り当て方法。
JP2009544031A 2006-12-28 2007-12-17 仮想環境割り当てシステム及び仮想環境割り当て方法 Expired - Fee Related JP4972171B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/646,903 US9317309B2 (en) 2006-12-28 2006-12-28 Virtualized environment allocation system and method
US11/646,903 2006-12-28
PCT/US2007/025813 WO2008085339A1 (en) 2006-12-28 2007-12-17 Virtualized environment allocation system and method

Publications (2)

Publication Number Publication Date
JP2010515152A JP2010515152A (ja) 2010-05-06
JP4972171B2 true JP4972171B2 (ja) 2012-07-11

Family

ID=39585935

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009544031A Expired - Fee Related JP4972171B2 (ja) 2006-12-28 2007-12-17 仮想環境割り当てシステム及び仮想環境割り当て方法

Country Status (7)

Country Link
US (1) US9317309B2 (ja)
EP (1) EP2097813B1 (ja)
JP (1) JP4972171B2 (ja)
KR (1) KR101457719B1 (ja)
CN (1) CN101601015A (ja)
BR (1) BRPI0719631B1 (ja)
WO (1) WO2008085339A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782637B2 (en) * 2007-11-03 2014-07-15 ATM Shafiqul Khalid Mini-cloud system for enabling user subscription to cloud service in residential environment
CN102473108B (zh) * 2009-08-11 2015-06-03 惠普开发有限公司 外壳气流控制器
US20110283278A1 (en) * 2010-05-13 2011-11-17 Vmware, Inc. User interface for managing a distributed virtual switch
US8812830B2 (en) 2011-08-31 2014-08-19 Microsoft Corporation Attestation protocol for securely booting a guest operating system
CN105389203B (zh) * 2015-10-19 2017-11-17 广东欧珀移动通信有限公司 一种指纹识别设备的调用方法、装置及移动终端

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63142451A (ja) 1986-12-04 1988-06-14 Fujitsu Ltd ワ−クステ−シヨンにおける入出力管理方式
JPH0193830A (ja) 1987-10-05 1989-04-12 Nec Corp 仮想計算機システムにおける割り込み制御方式
US5572694A (en) * 1992-11-25 1996-11-05 Fujitsu Limited Virtual system for detecting access paths belonging to same group from plurality of access paths to reach device designated by command with reference to table
US6802062B1 (en) * 1997-04-01 2004-10-05 Hitachi, Ltd. System with virtual machine movable between virtual machine systems and control method
US6195734B1 (en) * 1997-07-02 2001-02-27 Micron Technology, Inc. System for implementing a graphic address remapping table as a virtual register file in system memory
US6996828B1 (en) * 1997-09-12 2006-02-07 Hitachi, Ltd. Multi-OS configuration method
US6636901B2 (en) * 1998-01-30 2003-10-21 Object Technology Licensing Corp. Object-oriented resource lock and entry register
US7039922B1 (en) * 1999-11-29 2006-05-02 Intel Corporation Cluster with multiple paths between hosts and I/O controllers
US6715016B1 (en) * 2000-06-01 2004-03-30 Hitachi, Ltd. Multiple operating system control method
JP2002132518A (ja) * 2000-10-25 2002-05-10 Fujitsu Ltd 仮想計算機システムおよび仮想計算機間の入出力装置交換方法
JP2002229806A (ja) * 2001-02-02 2002-08-16 Hitachi Ltd 計算機システム
US7065761B2 (en) * 2001-03-01 2006-06-20 International Business Machines Corporation Nonvolatile logical partition system data management
US7111100B2 (en) * 2002-04-26 2006-09-19 The Boeing Company Systems and methods for assigning an address to a network device added to an existing network
US6961941B1 (en) * 2001-06-08 2005-11-01 Vmware, Inc. Computer configuration for resource management in systems including a virtual machine
US7254813B2 (en) * 2002-03-21 2007-08-07 Network Appliance, Inc. Method and apparatus for resource allocation in a raid system
IES20030216A2 (en) 2002-03-22 2003-09-17 Rococo Software Ltd A local area wireless network simulator
US7945652B2 (en) * 2002-08-06 2011-05-17 Sheng (Ted) Tai Tsao Display multi-layers list item in web-browser with supporting of concurrent multi-users
JP4256693B2 (ja) * 2003-02-18 2009-04-22 株式会社日立製作所 計算機システム、i/oデバイス及びi/oデバイスの仮想共有方法
US7028157B2 (en) * 2003-04-24 2006-04-11 International Business Machines Corporation On-demand allocation of data structures to partitions
US8776050B2 (en) * 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
US20050149940A1 (en) * 2003-12-31 2005-07-07 Sychron Inc. System Providing Methodology for Policy-Based Resource Allocation
US7644407B2 (en) * 2004-03-05 2010-01-05 Intel Corporation Method, apparatus and system for seamlessly sharing a graphics device amongst virtual machines
US7454756B2 (en) * 2004-03-05 2008-11-18 Intel Corporation Method, apparatus and system for seamlessly sharing devices amongst virtual machines
US7530071B2 (en) * 2004-04-22 2009-05-05 International Business Machines Corporation Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions
US20060069828A1 (en) * 2004-06-30 2006-03-30 Goldsmith Michael A Sharing a physical device among multiple clients
JP4295184B2 (ja) * 2004-09-17 2009-07-15 株式会社日立製作所 仮想計算機システム
US8706942B2 (en) * 2004-12-29 2014-04-22 Intel Corporation Direct memory access (DMA) address translation between peer-to-peer input/output (I/O) devices
US7496790B2 (en) * 2005-02-25 2009-02-24 International Business Machines Corporation Method, apparatus, and computer program product for coordinating error reporting and reset utilizing an I/O adapter that supports virtualization
US8312142B2 (en) * 2005-02-28 2012-11-13 Motorola Mobility Llc Discontinuous transmission/reception in a communications system
US7685635B2 (en) 2005-03-11 2010-03-23 Microsoft Corporation Systems and methods for multi-level intercept processing in a virtual machine environment
US7689800B2 (en) * 2005-05-12 2010-03-30 Microsoft Corporation Partition bus
US8001543B2 (en) * 2005-10-08 2011-08-16 International Business Machines Corporation Direct-memory access between input/output device and physical memory within virtual machine environment
US7657675B1 (en) * 2005-10-17 2010-02-02 Unisys Corporation Dynamic distribution of I/O resources in a partitioned computer system
JP2009512939A (ja) * 2005-10-21 2009-03-26 ヴァー2アス インコーポレイテッド 複数のオペレーティングシステムのインスタンスが単一のマシン資源を安全に共有することを可能とする、オペレーティングシステムの仮想化、を有するコンピュータセキュリティ方法
US7937534B2 (en) * 2005-12-30 2011-05-03 Rajesh Sankaran Madukkarumukumana Performing direct cache access transactions based on a memory access data structure
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
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
US7685401B2 (en) * 2006-12-27 2010-03-23 Intel Corporation Guest to host address translation for devices to access memory in a partitioned system

Also Published As

Publication number Publication date
JP2010515152A (ja) 2010-05-06
KR101457719B1 (ko) 2014-11-03
KR20090108607A (ko) 2009-10-15
CN101601015A (zh) 2009-12-09
BRPI0719631B1 (pt) 2018-11-13
US9317309B2 (en) 2016-04-19
EP2097813A1 (en) 2009-09-09
BRPI0719631A2 (pt) 2013-12-17
US20080163232A1 (en) 2008-07-03
EP2097813B1 (en) 2018-04-11
WO2008085339A1 (en) 2008-07-17
EP2097813A4 (en) 2011-01-26

Similar Documents

Publication Publication Date Title
US8429443B2 (en) Computer system and boot control method
US8185905B2 (en) Resource allocation in computing systems according to permissible flexibilities in the recommended resource requirements
US10445258B1 (en) Method for creation of device drivers and device objects for peripheral devices
CN100517287C (zh) 多客户机间共享物理设备
CN110199271B (zh) 用于现场可编程门阵列虚拟化的方法和设备
JP4261543B2 (ja) 動作不能なマスタ作業負荷管理プロセスを代替するシステムおよび方法
US20150106822A1 (en) Method and system for supporting resource isolation in multi-core architecture
US10423450B2 (en) Method and system for scheduling input/output resources of a virtual machine
EP1691287A1 (en) Information processing device, process control method, and computer program
US20110004687A1 (en) Information processing apparatus, information processing system, setting program transmission method and server setting program
WO2006035728A1 (ja) 情報処理装置、割り込み処理制御方法、並びにコンピュータ・プログラム
JP2004220218A (ja) 情報処理装置
US10289564B2 (en) Computer and memory region management method
JP4972171B2 (ja) 仮想環境割り当てシステム及び仮想環境割り当て方法
JP2009230596A (ja) サーバ装置のユーザデータ保護方法、サーバ装置及びコンピュータプログラム
KR101460451B1 (ko) 프로세스 주소 공간을 제어하는 장치 및 방법
US20040003221A1 (en) Method and apparatus for tuning multiple instances of kernel modules
KR20150120607A (ko) 클라우드 컴퓨팅 시스템
KR102575524B1 (ko) 가상화 기반 전투체계를 위한 분산정보처리장치 및 이의 자원 할당 방법
US20130191621A1 (en) System and method for providing multiple processor state operation in a multiprocessor processing system
CN113934509A (zh) 支持混合虚拟机管理器的系统和运行方法
JP2013178697A (ja) 計算機、計算機システムおよび計算機システムの起動方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111026

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: 20120402

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: 20120406

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: 4972171

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees