(57)【要約】      （修正有）【課題】ＣＰＵのさまざまな構成要素に対する複数のインタフェースを有するバスを備える中央演算処理装置の割り込みインタフェースを提供する。【解決手段】構成要素は、プロセッサ構成要素、複数の仮想機械および複数のＶＭを実行するように構成される仮想機械モニタ／ハイパーバイザの動作を実行するための命令を含むメモリを含む。プロセッサは、割り込み要求をサービス要求として並列に受信することができ、割り込み要求はＶＭＭまたは１つまたは複数によって実行可能である。ＶＭアプリケーションをタスクのためのゲスト・オペレーティングシステムの専用インスタンス上で実行する。プロセッサは、所定の基準に基づいて、ＶＭＭおよびＶＭに対する割り込み要求を認めるべきかをさらに決定する。所定の基準は、現在のタスク優先度、保留中の割り込み優先度、構成要素の各々の現状に関連付けられた割り込み可能性を含む。【選択図】図２
2019036303.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサ構成要素を備えるシステムであって、
前記プロセッサ構成要素は、
複数の仮想機械（ＶＭ）と、
前記複数のＶＭを制御するように構成される仮想機械モニタ（ＶＭＭ）／ハイパーバイザと、
を備え、
前記プロセッサ構成要素は、
前記ＶＭＭ／ハイパーバイザまたは前記複数のＶＭの１つまたは複数に対応する複数の割り込み要求を受信し、
一組の所定の基準に基づいて、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭに対する前記複数の割り込み要求の割り込み要求を認めるべきかを決定する、
ように構成される、
システム。
【請求項２】
前記ＶＭＭ／ハイパーバイザおよび前記複数の仮想機械（ＶＭ）は、それぞれ、割り込み制御レジスタ（ＩＣＲ）と、以前のコンテクストおよび実行情報（ＰＣＸＩ）レジスタと、を備え、
前記プロセッサ構成要素は、前記一組の所定の基準の一部として、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭにそれぞれ対応する割り込み優先度方式の現状を決定するようにさらに構成される、
請求項１に記載のシステム。
【請求項３】
前記一組の所定の基準は、現在のタスク優先度、保留中の割り込み優先度、または、前記現状に関連付けられた割り込み可能性の１つまたは複数を備える、
請求項２に記載のシステム。
【請求項４】
前記プロセッサ構成要素は、拡張プロセッサ状態語（ｅＰＳＷ）を備えるプロセッサ状態レジスタと、割り込み制御レジスタ（ＩＣＲ）構成制御（ＩＣＲ  ＣＴＲＬ）を備える追加のレジスタと、をさらに備え、
前記割り込み制御レジスタ（ＩＣＲ）構成制御（ＩＣＲ  ＣＴＲＬ）は、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭに関連したさまざまな割り込み条件に対する複数の応答を備える、
請求項１に記載のシステム。
【請求項５】
前記複数の割り込み要求は、１つまたは複数のＶＭアプリケーションに対応する複数のＶＭサービス要求を備える、
請求項１に記載のシステム。
【請求項６】
前記プロセッサ構成要素は、前記複数の割り込み要求の１つまたは複数の割り込み要求を前記複数のＶＭの１つのＶＭに、前記１つのＶＭが同時に実行中の間、直接転送するようにさらに構成され、
前記１つのＶＭは、前記ＶＭＭ／ハイパーバイザからのＶＭＭ呼び出しなしで、前記１つまたは複数の割り込み要求を受信するようにさらに構成される、
請求項１に記載のシステム。
【請求項７】
前記プロセッサ構成要素は、決定ロジック構成要素をさらに備え、
前記決定ロジック構成要素は、前記複数のＶＭの第１のＶＭが、前記ＶＭＭ／ハイパーバイザによって構成される１つまたは複数の条件に基づいて、前記複数のＶＭの第２のＶＭから受信されるサービス要求によって割り込みされるように構成されるかを決定するように構成される、
請求項１に記載のシステム。
【請求項８】
前記ＶＭＭ／ハイパーバイザは、前記１つまたは複数の条件を前記決定ロジック構成要素のために定義するようにさらに構成され、
前記１つまたは複数の条件は、
前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭにそれぞれ関連付けられた保留中の割り込み番号と、
前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭにそれぞれ関連付けられた現在の中央演算処理装置（ＣＰＵ）の優先度番号と、
ＶＭモードで動作する前記プロセッサ構成要素に応答して、第１のＶＭが、第２のＶＭにマップされる割り込みによって直接割り込み可能かを決定するための１つまたは複数の追加の優先度閾値と、
を備える優先度閾値を備える、
請求項７に記載のシステム。
【請求項９】
プロセッサ構成要素を備える装置であって、
前記プロセッサ構成要素は、動作を実行する命令を含むメモリと、複数のインタフェースと、バスと、を備え、
前記バスは、
前記メモリおよび前記複数のインタフェースを、複数の仮想機械（ＶＭ）および仮想機械モニタ（ＶＭＭ）／ハイパーバイザに通信可能に結合し、
前記複数のＶＭおよび前記ＶＭＭ／ハイパーバイザの複数の割り込み要求に関連したデータを、前記プロセッサ構成要素の決定ロジック構成要素に通信する、
ように構成され、
前記プロセッサ構成要素は、一組の所定の基準に基づいて、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭに対するまたは前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭからの前記複数の割り込み要求の割り込み要求を認めるべきかを決定するように構成される、
装置。
【請求項１０】
前記一組の所定の基準は、ＶＭモードおよびＶＭＭ／ハイパーバイザ・モードを備える一組のモードからの前記プロセッサ構成要素の動作モードを備え、
前記プロセッサ構成要素は、前記ＶＭモードにあることに応答して、前記割り込み要求を直接認め、前記複数のＶＭの１つのＶＭで割り込みサービスルーチン（ＩＳＲ）をトリガするようにさらに構成される、
請求項９に記載の装置。
【請求項１１】
前記複数の割り込み要求は、前記ＶＭＭおよび前記複数のＶＭの異なる割り込み優先度方式から生じる複数の勝つサービス要求を備え、
前記プロセッサ構成要素は、ＩＳＲを、前記複数のＶＭの１つのＶＭで、前記割り込み要求に応答して、勝つサービス要求として、前記複数のＶＭによって実行されるアプリケーションの第１の優先度レベルおよび前記ＶＭＭ／ハイパーバイザによって定義される前記複数のＶＭの第２の優先度レベルに基づいてトリガするようにさらに構成される、
請求項９に記載の装置。
【請求項１２】
前記装置は、プロセッサ状態レジスタおよび追加のレジスタをさらに備え、
前記プロセッサ状態レジスタは、拡張プロセッサ状態語（ｅＰＳＷ）を備え、前記決定ロジック構成要素に結合され、前記ｅＰＳＷを前記決定ロジック構成要素に提供するように構成され、
前記追加のレジスタは、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭに関連したさまざまな割り込み条件に対する複数の応答を備える割り込み制御レジスタ（ＩＣＲ）構成制御（ＩＣＲ  ＣＴＲＬ）を備え、前記決定ロジック構成要素に結合され、前記ＩＣＲ  ＣＴＲＬを前記決定ロジック構成要素に提供するように構成される、
請求項９に記載の装置。
【請求項１３】
前記ｅＰＳＷは、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭの１つまたは複数のＶＭがビジー状態にあるかを示し、前記ビジー状態にある前記１つまたは複数のＶＭを識別する、
請求項１１に記載の装置。
【請求項１４】
前記決定ロジック構成要素は、
前記複数のＶＭの第１のＶＭｘが、前記さまざまな割り込み条件に基づいて、前記複数のＶＭの第２のＶＭｙから受信されるサービス要求によって割り込みされるように構成されるかを決定するように構成され、
優先度閾値との比較に基づいて、前記さまざまな条件に対する前記応答を決定するように構成される、
請求項１１に記載の装置。
【請求項１５】
前記優先度閾値は、
前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭにそれぞれ関連付けられた保留中の割り込み番号と、
前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭにそれぞれ関連付けられた現在の中央演算処理装置（ＣＰＵ）の優先度番号と、
ＶＭモードまたはＶＭＭ／ハイパーバイザ動作モードで動作する前記プロセッサ構成要素に応答して、第１のＶＭが、第２のＶＭにマップされる割り込みによって直接割り込み可能かを決定するための１つまたは複数の追加の優先度閾値と、
を備える、
請求項１４に記載の装置。
【請求項１６】
１つまたは複数のプロセッサを介して、ＶＭＭ／ハイパーバイザまたは複数のＶＭの１つまたは複数に対応する割り込みを受信するステップと、
前記１つまたは複数のプロセッサを介して、一組の所定の基準に基づいて、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭに対する前記割り込みを認めるべきかの決定を生成するステップと、
前記決定に基づいて、前記１つまたは複数のプロセッサ、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭに通信可能に結合されるバスを介して、前記割り込みを通信するステップと、
を含む方法。
【請求項１７】
前記動作は、前記ＶＭＭ／ハイパーバイザおよび前記複数の仮想機械（ＶＭ）の中央演算処理装置（ＣＰＵ）割り込み制御レジスタ（ＩＣＵ）と、以前のコンテクストおよび実行情報（ＰＣＸＩ）レジスタと、からの情報に基づいて、前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭに対応する割り込み優先度方式の現状を決定するステップをさらに含む、
請求項１６に記載の方法。
【請求項１８】
前記動作は、ＶＭＭ／ハイパーバイザ・モードの代わりにＶＭモードで動作することに応答して、前記バスを介して、前記割り込みを前記複数のＶＭの１つのＶＭに、前記１つのＶＭが同時に実行中の間、前記ＶＭＭ／ハイパーバイザからのＶＭＭ呼び出しなしで直接転送するステップをさらに含む、
請求項１６に記載の方法。
【請求項１９】
前記動作は、前記１つまたは複数のプロセッサを介して、前記複数のＶＭの第１のＶＭが、前記ＶＭＭ／ハイパーバイザによって構成される１つまたは複数の条件に基づいて、前記複数のＶＭの第２のＶＭからの前記割り込みとして受信されるサービス要求によって割り込みされるように構成されるかを決定するステップをさらに含む、
請求項１６に記載の方法。
【請求項２０】
前記動作は、優先度閾値を含む前記１つまたは複数の条件を定義するステップをさらに含み、前記優先度閾値は、
前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭにそれぞれ関連付けられた保留中の割り込み番号と、
前記ＶＭＭ／ハイパーバイザおよび前記複数のＶＭにそれぞれ関連付けられた現在の中央演算処理装置（ＣＰＵ）の優先度番号と、
ＶＭモードで動作する前記プロセッサ構成要素に応答して、第１のＶＭが、第２のＶＭにマップされる割り込みによって直接割り込み可能かを決定するための１つまたは複数の追加の優先度閾値と、
を備える、
請求項１９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュリティの分野にあり、より詳しくは、コンピュータ処理装置（ＣＰＵ）の割り込みをサポートするための仮想機械および技術に関するものである。
【背景技術】
【０００２】
ハイパーバイザまたは仮想機械モニタ（ＶＭＭ）サポートを有するＣＰＵは、複数の仮想機械（ＶＭ）を実行可能である。各ＶＭは、自分自身のアプリケーションをオペレーティングシステムの専用インスタンス上で実行することができる。各ＶＭアプリケーションは、割り込み駆動可能であり、すなわち、ＶＭアプリケーションに割り当てられるハードウェア資源（例えば、インタフェース、ダイレクトメモリアクセス（ＤＭＡ）チャネルまたは他の資源）は、割り込みをアプリケーションに送信し、注意／資源配分を要求することができる。他のＣＰＵは、ソフトウェア（ＳＷ）割り込みを、物理的な資源またはノードと同じ機能を実行する仮想化資源（ＶＲ）の一部とすることができるＶＭアプリケーションに送信することも可能である。
【０００３】
ハイパーバイザまたはＶＭＭは、仮想機械を作成／実行するコンピュータ・ソフトウェア、ファームウェアまたはハードウェアとすることができる。ハイパーバイザが１つまたは複数の仮想機械を実行するコンピュータまたは処理装置は、ホスト機械と称することができ、各ＶＭは、ゲスト機械と称することができる。ハイパーバイザは、ゲスト・オペレーティングシステムに仮想のオペレーティング・プラットフォームを提供し、ゲスト・オペレーティングシステムの実行を管理する。さまざまなオペレーティングシステムの複数の例は、仮想化されたハードウェア資源を共有してもよい。例えば、Ｌｉｎｕｘ、ＷｉｎｄｏｗｓおよびｍａｃＯＳのインスタンスはすべて、単一の物理的なｘ８６機械上で実行することができる。これは、オペレーティングシステム・レベルの仮想化とは対照的であり、オペレーティングシステム・レベルの仮想化では、すべてのインスタンス（例えば、コンテナ）は、単一のカーネルを共有するが、ただし、ゲスト・オペレーティングシステムは、同じカーネルを有する異なるＬｉｎｕｘ分布のように、ユーザ空間において異なることができる。
【図面の簡単な説明】
【０００４】
【図１】本願明細書に記載されている１つまたは複数の態様または実施形態に従って、ネットワーク装置の構成要素を示すブロック図である。
【図２】本願明細書に記載されているさまざまな態様または実施形態に従って、ハイパーバイザ／仮想機械モニタ（ＶＭＭ）を有するコンピュータ処理装置（ＣＰＵ）インタフェースに対する割り込み制御装置（ＩＣＵ）を示すブロック図である。
【図３】本願明細書に記載されているさまざまな態様または実施形態に従う、ＣＰＵの他のブロック図である。
【図４】本願明細書に記載されているさまざまな態様または実施形態に従う、ハイパーバイザ／ＶＭＭサポートを有する割り込みのための構成要素のＣＰＵ構成の他のブロック図である。
【図５】本願明細書に記載されているさまざまな態様または実施形態に従う、ハイパーバイザ／ＶＭＭサポートを有する割り込みのための拡張した構成要素データを有するＣＰＵの他のブロック図である。
【図６】本願明細書に記載されているさまざまな態様または実施形態に従う、ハイパーバイザ／ＶＭＭサポートを有する割り込みのためのＣＰＵ構成要素のＣＰＵ入力および出力の他のブロック図である。
【図７】本願明細書に記載されているさまざまな態様または実施形態に従う、ハイパーバイザを有するＣＰＵ内の割り込みをサポートするための例示的プロセスフローである。
【発明を実施するための形態】
【０００５】
本発明は、以下、添付図面を参照して説明され、全図面において、類似の参照符号は、類似の要素を参照するために用いられ、図示の構造および装置は、必ずしも一定の比率で描画されているわけではない。本願明細書において利用されるように、「構成要素」、「システム」、「インタフェース」等の用語は、コンピュータ関連のエンティティ、ハードウェア、（例えば、実行中の）ソフトウェアおよび／またはファームウェアを参照することを意図する。例えば、構成要素は、プロセッサ、プロセッサ上で実行するプロセス、コントローラ、オブジェクト、実行ファイル、プログラム、記憶装置および／または処理装置を有するコンピュータとすることができる。例えば、サーバ上で実行するアプリケーションおよびサーバもまた、構成要素とすることができる。１つまたは複数の構成要素は、プロセス内に存在することができ、構成要素は、１つのコンピュータ上にローカルに存在することができ、および／または、２つ以上のコンピュータ間で分散することができる。一組の要素または一組の他の構成要素は、本願明細書において記載可能であり、「組」という用語は、「１つまたは複数」と解釈可能である。
【０００６】
さらに、これらの構成要素は、例えば、モジュールとともに格納されるさまざまなデータ構造を有するさまざまなコンピュータ可読記憶媒体から実行することができる。構成要素は、ローカルおよび／またはリモートプロセスを介して、例えば、１つまたは複数のデータパケットを有する信号に従って通信することができる（例えば、データは、ローカルシステム、分散システムおよび／またはネットワーク全体における他の構成要素と相互作用する１つの構成要素からのものであり、ネットワークは、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークまたは信号を介して他のシステムを有する類似のネットワークである）。構成要素は、機械と称することもできる。
【０００７】
他の例として、構成要素は、電気または電子回路によって動作される機械部分により提供される特定の機能を有する装置とすることができ、電気または電子回路は、１つまたは複数のプロセッサによって実行されるソフトウェア・アプリケーションまたはファームウェア・アプリケーションによって動作可能である。１つまたは複数のプロセッサは、装置の内部にあっても外部にあってもよく、ソフトウェアまたはファームウェア・アプリケーションの少なくとも一部を実行することができる。さらに他の例として、構成要素は、電子構成要素により、機械部分なしで特定の機能を提供する装置とすることができ、電子構成要素は、電子構成要素の機能を少なくとも部分的に与えるソフトウェアおよび／またはファームウェアを実行するための１つまたは複数のプロセッサを含むことができる。
【０００８】
例示的用語の使用は、本発明の概念を具体的に提示することを意図する。本出願において用いられているように、「または」という用語は、排他的な「または」ではなく、非排他的な包含「または」を意味することを意図する。すなわち、特に明記しない限り、または、前後関係から明らかでない限り、「Ｘは、ＡまたはＢを使用する」は、自然な非排他的な包含の順列のいずれかを意味することを意図する。すなわち、ＸがＡを使用し、ＸがＢを使用し、または、ＸがＡおよびＢを使用する場合、上述した例のいずれかに従って、「Ｘは、ＡまたはＢを使用する」が満たされる。さらに、特に明記しない限り、または、前後関係から単数形に向けられることが明らかでない限り、本願明細書および添付の請求の範囲において用いられている単数形の冠詞は、一般的に、「１つまたは複数」を意味するものと解釈されるべきである。さらに、「含んでいる」、「含む」、「有している」、「有する」という用語またはその異形が詳細な説明および請求項において用いられる範囲において、この種の用語は、「備えている」という用語に類似の方法で非排他的な包含を意図する。
【０００９】
本願明細書では、「回路」という用語は、特定用途向け集積回路（ＡＳＩＣ）、電子回路、プロセッサ（共有、専用または群）および／またはメモリ（共有、専用または群）の一部であるか、または、これらを含むものとして参照されてもよく、ＡＳＩＣ等は、１つまたは複数のソフトウェアまたはファームウェア・プログラム、組み合わせロジック回路および／または記載されている機能を提供する他の適切なハードウェア構成要素を実行する。いくつかの実施形態では、回路は、１つまたは複数のソフトウェアまたはファームウェアモジュールにおいて実施されてもよく、または、回路に関連付けられた機能は、１つまたは複数のソフトウェアまたはファームウェアモジュールによって実施されてもよい。いくつかの実施形態では、回路は、ハードウェアにおいて少なくとも部分的に動作可能なロジックを含んでもよい。
【００１０】
導入
ハイパーバイザおよび仮想機械は、より大きなコンピューティング・インフラの利用効率を改善するために動作することができ、オリジナルのＩＢＭ３６０の形であれ、または、現在のｘ８６、ＣＰＵ、サーバラック／バンクまたは他の類似の処理装置の形であれ、ハイパーバイザおよび仮想機械は、例えば、一般的にハードウェアの利用効率を改善するアプリケーションまたはソフトウェアの一部とすることができる。本願明細書において、ハイパーバイザまたは仮想機械モニタ（ＶＭＭ）は、区別せずに参照可能であり、そのいずれかは、仮想機械（ＶＭ）を作成および実行するコンピュータ・ソフトウェア、ファームウェアまたはハードウェアとみなすことができる。ハイパーバイザが１つまたは複数のＶＭを実行するコンピュータ、プロセスまたは処理装置は、ホスト機械と称することができ、各ＶＭは、ゲスト機械と称することができる。これらのような製造テクノロジ（例えば、シリコンテクノロジ）を、適合可能な割り込みおよび割り込み応答時間を有するハードなリアルタイム・システム（現在では、以前よりはるかに重要である）に使用することは、ＶＭＭとの割り込みインタフェースの効率、および、特に、割り込み通信リンク内の効率、または、ＣＰＵパッケージまたは処理装置とのインタフェースの効率を改善する機会を提供する。
【００１１】
例えば、動作がより完全かつ完璧な仮想化を目指すことができる従来のサーバ技術環境では、処理動作が、資源サポートのためにゲスト・オペレーティングシステムに戻る前にハイパーバイザ内の１つまたは複数のプロセスを追跡または模倣する場合、ゲスト・オペレーティングシステムを妨害／変更することは、有害なものではない。特に、ハードウェアのリアルタイムの安全性の考慮（例えば、自動車の安全性等）に関して、一定量の準仮想化（すなわち、パブリック／ゲスト・オペレーティングシステムを変化し、安全特徴を保存するとともに、リアルタイム特徴を保存する）が可能になりうる。準仮想化は、ゲスト・オペレーティングシステムがＶＭ内で再コンパイル可能な仮想化技術の強化とすることができ、ＶＭに対する割り込みインタフェース・システムが、例えば、下にあるハードウェアと異なることを動的に可能にすることができる。
【００１２】
ハードウェアにおいて、本願明細書における特定の態様／実施形態については、割り込みは、動的かつリアルタイムな資源条件に基づいて、ゲスト・オペレーティングシステムに導かれる／向けられることができる。処理のためにハイパーバイザまたはＶＭＭに向けられるアプリケーションまたはタスクのすべての割り込みを予め構成するよりはむしろ、決定ロジックまたは判断プロセスの組は、ＶＭＭおよび関連付けられたソフトウェアが、割り込みをどう処理すべきか、および、割り込みをどの資源に向けるべきかを決定するのを可能にするように構成可能である。
【００１３】
特定の態様／実施形態では、ＣＰＵは、ＶＭＭおよび１つまたは複数のＶＭを含むすべての割り込み構成要素の状態に並列にまたはすべて一緒に即座に常に気付くように構成可能である。これらのＶＭおよびハイパーバイザ／ＶＭＭは、同じプロセッサ・パッケージ、パッケージングコアまたは同じ装置上に位置するＣＰＵの処理構成要素によって制御、管理または可能にされうる。ＣＰＵは、ＶＭＭモードまたはＶＭｘモードで動作することができ、ｘは任意の自然数であり、ＣＰＵによってホストされるゲスト機械またはＶＭの数の関数とすることができる。ＣＰＵが、例えば、ＶＭＭモードでまたはＶＭｘモードで動作する場合、ＣＰＵは、並列に（または即座に）割り込みバスを介して、各ＶＭ／ゲスト機械およびＶＭＭのために、各ＶＭおよびＶＭＭのための最高優先度を有する任意の保留中の割り込みの知識を有する。
【００１４】
動作モードに応じて、ＣＰＵまたはＣＰＵのプロセッサ構成要素は、新規な割り込みを、任意の所定のまたはターゲットのＶＭに、ＶＭモードにおいて直接渡すことを決定する、または、ＶＭＭモードへ切り替え、例えば、意思決定または割り込みプロセスをＶＭＭにＶＭのために委任することを決定することができる。この新規な割り込みは、ＣＰＵの１つのＶＭからＣＰＵの他のＶＭ、例えば、ＣＰＵの内部的に制御された他の構成要素までとすることができ、同様に、例えば、装置アプリケーションの外部構成要素からとすることもできる。追加の態様、実施形態または開示の詳細は、以下、図面を参照してさらに記載される。
【００１５】
図１は、いつかの例示的実施形態に従う、システムまたはネットワーク装置１００の構成要素を示すブロック図であり、構成要素は、命令を機械可読またはコンピュータ可読媒体（例えば、機械可読記憶媒体）から読み出すことができ、本願明細書において述べられる機能、動作、プロセスまたは方法の任意の１つまたは複数を実行する。システムまたは装置１００の１つまたは複数の構成要素は、ネットワーク装置またはシステム内でまたはこれらの一部として使用または利用可能であり、ネットワーク装置またはシステムは、例えば、モバイル機器、無線装置、ネットワーク装置／構成要素（例えば、ネットワークアクセスノード、ネットワーク・オーケストレータ、ネットワークサーバ、ラックサーバ、ネットワーク・コントローラ／プロセッサ、ネットワーク・データベース、ＣＰＵ等）である。詳しくは、図１は、ネットワーク装置またはシステム１００内での使用のために構成可能なハードウェア資源１０１の図の表現を示し、ネットワーク装置またはシステム１００は、１つまたは複数のプロセッサ（またはプロセッサコア）１１０、１つまたは複数のメモリ／記憶装置１２０および１つまたは複数の通信資源１３０を含み、各々は、通信リンク（例えば、バス１４０）または他の接続（例えば、光リンク、無線接続、有線接続または他の同様の通信接続）を介して通信可能に結合可能である。
【００１６】
ノードの仮想化が利用可能な実施形態のために、ネットワーク機能仮想化（ＮＦＶ）動作のように、ハイパーバイザ１０２（またはＶＭＭ）が実行され、１つまたは複数のネットワーク・スライス／サブスライスのための実行環境を提供し、ハードウェア資源１０１を利用することができる。この種のハイパーバイザ１０２は、例えば、コンピュータ・ソフトウェア、ファームウェアまたはハードウェア資源を備える仮想機械モニタ（ＶＭＭ）を備えることができ、これらは、仮想機械上で作成または実行し、コンピュータ／処理装置上で動作する。本願明細書において参照されるように、仮想化は、機能を装置から除去すること、および、機能をネットワーク上の他の装置に割り当てるまたは再配置することを称することができ、これは、ソフトウェア、ファームウェア、専門ハードウェア、または、例えば、装置、システムまたはネットワーク内の異なる位置の他の構成要素に類似または同じ機能を実行するための組み合わせのいずれかとして行われる。
【００１７】
プロセッサ１１０（例えば、ＣＰＵ、縮小命令セットコンピューティング（ＲＩＳＣ）プロセッサ、複雑命令セットコンピューティング（ＣＩＳＣ）プロセッサ、グラフィックス処理装置（ＧＰＵ）、デジタル信号プロセッサ（ＤＳＰ）、例えばベースバンド・プロセッサ、特定用途向け集積回路（ＡＳＩＣ）、高周波集積回路（ＲＦＩＣ）、他のプロセッサまたはこれらの任意の適切な組み合わせ）は、例えば、任意数の処理構成要素、例えばプロセッサ１１２およびプロセッサ１１４を含むことができる。メモリ／記憶装置１２０は、メインメモリ、ディスク記憶装置または任意のこれらの組み合わせを含むことができる。
【００１８】
通信資源１３０は、相互接続および／またはネットワーク・インタフェース構成要素または１つまたは複数の周辺装置１０４と通信するまたはネットワーク１０８を介して１つまたは複数のデータベース１０６と通信する他の適切な装置を含むことができる。例えば、通信資源１３０は、有線通信構成要素（例えば、ユニバーサルシリアルバス（ＵＳＢ）を介した結合のため）、セルラー通信構成要素、近距離無線通信（ＮＦＣ）構成要素、ブルートゥース（登録商標）構成要素（例えば、ブルートゥース（登録商標）ローエナジー）、Ｗｉ−Ｆｉ（登録商標）（Ｗｉ−Ｆｉ／ＷｉＦｉ）構成要素および他の通信構成要素を含むことができる。
【００１９】
命令１５０は、ソフトウェア、プログラム、アプリケーション、アプレット、アプリ、または、プロセッサ１１０の少なくともいずれかに、本願明細書において述べられる方法の任意の１つまたは複数を実行させるための他の実行コードを備えることができる。命令１５０は、全体的または部分的に、プロセッサ１１０（例えば、プロセッサのキャッシュメモリ内）、メモリ／記憶装置１２０またはこれらの任意の適切な組み合わせの少なくとも１つ内に存在することができる。さらに、命令１５０の任意の部分は、周辺装置１０４および／またはデータベース１０６の任意の組み合わせからハードウェア資源１０１に転送可能である。従って、プロセッサ１１０のメモリ、メモリ／記憶装置１２０、周辺装置１０４およびデータベース１０６は、コンピュータ可読媒体および機械可読媒体の例である。
【００２０】
一態様では、ネットワーク装置１００は、信号を、無線装置、例えば、ＡＰ、アクセス端末、無線ポートおよびルータ等に、一組のＬ個のアンテナ１２０１〜Ｌを介して送受信することができ、アンテナ１２０１〜Ｌは、本願明細書に記載されている１つまたは複数の実施形態または態様に従って構成可能である。一例では、アンテナ１２０は、通信プラットフォーム１３０の一部として実施可能であり、次に、通信プラットフォーム１３０は、電子構成要素および関連付けられた回路、および／または、受信信号および送信信号の処理および操作を提供する他の手段を備えることができる。アンテナ１２０は、本願明細書に開示される異なる態様または実施形態を組み込むさまざまなアンテナ要素を備えることができる。
【００２１】
一態様では、通信プラットフォーム／資源１３０は、受信信号および他の送信信号の処理および操作を提供する関連付けられた回路を有する電子構成要素を含むことができる。通信プラットフォーム１３０は、受信機／送信機またはトランシーバ１１６をさらに備えることができ、トランシーバ１１６は、信号を送受信することができ、および／または、この種の信号における１つまたは複数の処理動作（例えば、受信時のアナログデジタル変換、送信時のデジタルアナログ変換等）を実行することができる。さらに、トランシーバ１１６は、単一のデータ流を複数の並列データ流に分割することができる、または、逆の動作を実行することができる。
【００２２】
さらに、ネットワーク装置１００は、表示インタフェース１２２を含むことができ、表示インタフェース１２２は、装置１００の機能を制御する機能を表示することができる、または、その動作条件を公開することができる。さらに、表示インタフェース１２２は、スクリーンを含み、情報をエンドユーザに送信することができる。一態様では、表示インタフェース１２２は、液晶ディスプレイ、プラズマパネル、モノリシック薄膜ベースのエレクトロクロミックディスプレイ等とすることができる。さらに、表示インタフェース１２２は、聴覚指示の通信を容易にする構成要素（例えば、スピーカ）を含むことができ、この構成要素は、動作命令をエンドユーザに送信するメッセージに関連して使用可能である。表示インタフェース１２２は、（例えば、連結されたキーパッドを介した、または、タッチジェスチャを介した）データ入力を容易にすることもでき、データ入力によって、アクセス装置および／またはソフトウェア１００は、外部コマンド（例えば、再開動作）を受信することができる。
【００２３】
広帯域ネットワーク・インタフェース１２４は、ネットワーク装置１００がネットワーク１０８に接続するのを容易にし、ネットワーク１０８は、バックホール・リンク（図示せず）を介した１つまたは複数のネットワーク／セルラー技術を含むことができ、入出力データフローを可能にする。広帯域ネットワーク・インタフェース１２４は、ネットワーク装置１００の内部にあっても外部にあってもよく、表示インタフェース１２２をエンドユーザ相互作用および状態情報配信のために利用することができる。
【００２４】
１つまたは複数のプロセッサ１１０は、１つまたは複数のプロセッサ１１２、１１４を含むことができ、プロセッサ１１２、１１４は、通信プラットフォーム／資源１３０に機能的に接続可能であり、データ（例えば、シンボル、ビットまたはチップ）上の動作を容易にすることができ、動作とは、多重化／逆多重化、例えば、直接および逆の高速フーリエ変換、変調率の選択、データパケット・フォーマットの選択、パケット間時間等に作用するものである。さらに、１つまたは複数のプロセッサ１１０は、データ、システムまたはアドレスバス１４０を介して、表示インタフェース１２２および広帯域ネットワーク・インタフェース１２４に機能的に接続可能であり、機能をこの種の構成要素の各々に少なくとも部分的に与える。
【００２５】
他の例では、マルチプレクサ／デマルチプレクサ（ＭＵＸ／ＤＥＭＵＸ）ユニット１１７は、トランシーバ１１６に結合可能である。ＭＵＸ／ＤＥＭＵＸユニット１１７は、例えば、時間および周波数空間において信号の操作を容易にすることができる。追加的または代替的に、ＭＵＸ／ＤＥＭＵＸユニット１１７は、情報（例えば、データ／トラフィック、制御／信号送信等）の多重化を、さまざまな多重化スキームに従って、例えば、時分割多重化（ＴＤＭ）、周波数分割多重化（ＦＤＭ）、直交周波数分割多重化（ＯＦＤＭ）、コード分割多重化（ＣＤＭ）、空間分割多重化（ＳＤＭ）等に従って行うことができる。さらに、ＭＵＸ／ＤＥＭＵＸユニット１１７は、情報のスクランブルおよび拡散を、一般的に従来技術において周知の実質的に任意のコードに従って、例えば、アダマール・ウォルシュ・コード、ベーカー・コード、カサミ・コード、多相コード等に従って行うことができる。
【００２６】
さらなる例では、通信プラットフォーム１３０内で実施される変調器／復調器（ＭＯＤ／ＤＥＭＯＤ）ユニット１１８は、情報の変調を、複数の変調技術に従って、例えば、周波数変調、振幅変調（例えば、Ｌ変数直交振幅変調（Ｌ−ＱＡＭ）等）、位相偏移変調（ＰＳＫ）等に従って行うことができる。さらに、通信プラットフォーム１３０は、受信信号を復号するおよび／または送信信号を符号化するのを容易にする符号器／復号器（コーデック）モジュール１１９を含むこともできる。
【００２７】
他の態様によれば、無線端末／ネットワーク装置またはシステム１００は、プロセッサ１１０（例えば、１１２、１１４）を含むことができ、プロセッサ１１０は、機能を、少なくとも部分的にネットワーク装置／システム１００によって利用される実質的に任意の電子構成要素に与えるように構成される。システム１００においてさらに示すように、電源１２５は、送電網に取り付けることができ、１つまたは複数のトランスを含むことができ、無線端末１００に関連付けられたさまざまな構成要素および／または回路が動作可能な電力レベルを達成する。一例では、電源１２５は、再充電可能な電力機構を含むことができ、無線端末１００が送電網から分離され、送電網が動作していない等の場合、無線端末１００の継続的な動作を容易にする。
【００２８】
さらなる態様では、プロセッサ１１０は、通信プラットフォーム１３０に機能的に接続可能であり、データ（例えば、シンボル、ビット、チップ等）上のさまざまな動作を容易にすることができ、動作とは、直接および逆の高速フーリエ変換、変調率の選択、データパケット・フォーマットの選択、パケット間時間等に作用することを含むことができるが、これらに限定されるものではない。他の例では、プロセッサ１１０は、データまたはシステムバス１４０（例えば、無線ＰＣＩＥ等）を介して、システム１００内に示されていない他の任意の構成要素または回路に機能的に接続可能であり、機能を、この種の構成要素の各々に、例えば本願明細書に開示されるアンテナシステムによって少なくとも部分的に与える。
【００２９】
さらに示されるように、メモリ１２０またはデータベース１０６は、無線端末／装置／システム１００により用いられ、データ構造、コード命令１５０およびプログラムモジュール、システムまたは装置情報、スクランブル、拡散および試験的送信のためのコードシーケンス、位置情報記憶（ｌｏｃａｔｉｏｎ  ｉｎｔｅｌｌｉｇｅｎｃｅ  ｓｔｏｒａｇｅ）、決定された遅延オフセット、無線伝播モデル等を格納することができる。１つまたは複数のプロセッサ１１０は、メモリ１２０またはデータベース１０６に結合され、動作するおよび／または機能を通信プラットフォーム１３０および／または無線端末１００の他の任意の構成要素に与えるのに必要な情報を格納および導出することができる。
【００３０】
さらに、装置１００について上述したアンテナシステムは、例えば、高周波数帯域範囲内の広範囲の周波数で動作するようにも構成され、さらに、しばしば対になっていない無認可のスペクトルを用いるピア・ツー・ピア（例えば、携帯電話間）アドホック・ネットワークシステム、１０２．ｘｘ無線ＬＡＮ、ブルートゥースおよび任意の他の短距離または長距離、無線周波数範囲および通信技術を含む。本願明細書に開示される狭帯域アンテナ要素、例えば、開示される装置のアンテナ共振システムは、例えば、他の周波数範囲でも動作するように構成可能である。
【００３１】
他の例では、本願明細書に開示される構成要素は、表示インタフェース１２２のような他の構成要素と無線装置のように無線通信する、または、例えば、無線ＵＳＢ装置のような他の無線インタフェースと無線通信するように動作することができる。例えば、無線ＵＳＢ装置は、周波数範囲内で通信することができる。さらに、開示されるアンテナシステムは、他の無線接続、構成要素、インタフェースまたは装置と通信するように構成され、無線構成要素間の通信のための通信インタフェースを提供することができる。例えば、ＰＣＢ間のインタフェースは、高帯域アンテナシステムならびにマイクロ波・ミリ波通信によって、１つまたは複数の内部または外部構成要素の間で容易にされることができる。他の通信インタフェースもまた、開示されるアンテナ要素によって、例えば、インターネット・オブ・シングス（ＩｏＴ）間の構成要素、ウェアラブル構成要素、携帯電話間、ネットワーク基地局（例えば、マクロセルネットワーク装置、フェムトセル装置、ピコセル装置または他のネットワーク装置）またはこれらの任意の組み合わせによって、例えば、アンテナ要素の１つまたは複数を介して、例えば、アンテナシステムまたは本願明細書の装置を介して通信するのを容易にされることができる。本願明細書に開示されるアンテナシステムが、異なる周波数範囲で動作することができ、１つまたは複数の無線構成要素または装置と、または、これらの間での通信を容易にすることができる追加の他の例もまた想定される。例えば、工業、科学および医療（ＩＳＭ）無線帯域、レーダー帯域幅または周波数スペクトルの他の範囲もまた、開示されているアンテナシステムによる通信のために容易にされることができる。
【００３２】
ネットワーク装置／システム１００または関連付けられた割り込みインタフェースの構成要素は、１つの物理ノード内または別々の物理ノード内で実施可能であり、物理ノードは、命令を機械可読またはコンピュータ可読媒体（例えば、非一時的機械可読記憶媒体）から読み出し、実行するための構成要素または機能を含む。いくつかの実施形態では、ネットワーク機能仮想化（ＮＦＶ）を利用して、任意の１つまたは複数の記載された処理または割り込み機能を、１つまたは複数のコンピュータ可読記憶媒体内に格納される実行可能命令を介して仮想化する（以下で詳述される）。
【００３３】
ＮＦＶアーキテクチャおよびインフラを用いて、１つまたは複数のネットワーク機能を仮想化することができ、代替的には、ＮＦＶアーキテクチャおよびインフラは、専用のハードウェアによって、例えば、業界標準サーバハードウェア、記憶装置ハードウェアまたはスイッチの組み合わせを備える物理資源／構成要素上で実行可能である。換言すれば、ＮＦＶ構成要素／装置／システムを用いて、１つまたは複数の割り込み構成要素／機能の仮想のまたは再構成可能な実施態様を実行することができる。
【００３４】
図２には、図１のプロセッサ１１０および構成要素に含まれる／一部である／通信可能に結合可能である一例の割り込みインタフェース・システム２００が示される。システム２００は、ＣＰＵ２０４／他のプロセッサ構成要素に通信可能に結合される割り込みコントローラまたは割り込み制御装置（ＩＣＵ）２０２／プロセッサ構成要素を含み、割り込みコントローラまたは割り込み制御装置（ＩＣＵ）２０２／プロセッサ構成要素は、単一のＣＰＵ２０４にマップされる保留中の割り込みの間で仲裁し、例えば、プロセッサ１１０またはプロセッサ１１０内の任意の１つのプロセッサ１１２、１１４のユニットとすることもできる。
【００３５】
単一のハードウェアＣＰＵ２０２は、割り込みをマップすることができ、割り込みは、最高約２５５までの優先度を有することができ／正反対には最低ゼロからの優先度を有することができ、割り込みは、優先度ベクトル２２０（例えば、８ビット優先度ベクトル）を介して、割り込みの優先度をもって、ＣＰＵ２０４に、１つまたは複数の割り込みインタフェースバス２０８を介して、さらに包含または通信可能である。ベクトル２２０の受信に応答して、ＣＰＵ２０４は、バス２０６上の割り込み承認（ＡＣＫ）によって応答することができ、バス２０６は、例えば、半二重バスまたは全二重バスまたは光リンク等の他の通信リンクとすることができる。
【００３６】
割り込みまたはサービス要求がＣＰＵ２０４によってＩＣＵ２０２または他の構成要素から受信されると、ＣＰＵ２０４によってタスクとしてサービスされなければならず、タスクは、プログラミングまたはシステム制御として動作するファームウェア／ハードウェアとしての実行の基本的なユニットとすることができ、タスクは、例えば、専用インスタンス上のアプリケーションのために実行されるプロセスとして、プログラムまたはプログラムの連続した呼び出しの少なくとも一部とすることができる。さらに、ＣＰＵ２０４上で実行される各タスクもまた、優先度を含むことができる。
【００３７】
さらに、ＩＣＵ２０２は、割り込みをオンチップ資源または外部資源から取得することができる。割り込みは、ＣＰＵ２０４により利用される資源に対する注意のためのサービス要求とすることができる。ＩＣＵ２０２は、例えば、情報を追加することによって、割り込みを割り込み要求に変えることができ、本願明細書では、割り込みおよびサービス要求を区別せずに用いることができ、資源、例えば、ＶＭ、ＶＭＭ、処理アレイまたは構成要素がビジーであるかまたは他のタスクを実行中のとき、割り込みは、例えば、割り込みサービスルーチンまたは他の割り込みプロセスをトリガするサービス要求として受信される。
【００３８】
ＩＣＵ２０２は、単一の信号２２０をＣＰＵｘ２０４に送信し、単一の信号２２０は、アプリケーションまたは他の構成要素がＣＰＵ２０４に対して、割り込みサービスルーチン（ＩＳＲ）を開始することによって処理を望むことについての情報を送信する。このように、ＩＣＵ２０２内の単一の信号情報は、この追加情報を用いて強化される。
【００３９】
例えば、ＩＣＵ２０２は、優先度情報を割り込みに追加し、割り込みに割り込み優先度を提供することができ、ＣＰＵのための他のすべての保留中の割り込みの間で仲裁することができ、さらに、割り込みサイズのような他の情報をＣＰＵ２０４に送信することができる。このように、ＩＣＵ２０２は、ハイパーバイザまたはＶＭＭサポートを有するＣＰＵ２０４と一体化される／一部としての処理／プロセッサ装置として動作することができる。これは、ＣＰＵ２０２が、そこに存在するまたはその上で動作するアプリケーション・ソフトウェアを有するオペレーティングシステムの単一のタスクを必ずしも実行しているというわけではないことを意味する。オペレーティングシステムは、０から２５５までの優先度割り込みの優先度もまた得る単一のアプリケーション・ソフトウェアとすることができる。
【００４０】
ＣＰＵ２０４は、ＶＭＭ２１０と、例えば、ＶＭ０（２１２）、ＶＭ１（２１４）、ＶＭ２（２１６）を備える複数のＶＭと、を含むことができる。ベクトル２２０のグレーの部分は、ＩＣＵ２０２の信号送信を、ＶＭｘ（例えば、ＶＭ０（２１２）、ＶＭ１（２１４）またはＶＭ２（２１６））／ＶＭＭ２１０に、指定される有効なサービス要求／割り込みのために提供することができる。ベクトル２２０のグレーでない部分は、ＶＭｘ／ＶＭＭのための有効なサービス要求／割り込みがないことを空のスロットとして示すことができる。ＣＰＵ２０４内のＩＣＵ２０２からのこれらの割り込みは、例えば、単一の信号またはベクトルとして、異なる機械のためとすることができ、例えば、異なる仮想機械のための割り込みは、本願明細書における一態様の一部として、ＩＣＵ２０２からＣＰＵ２０４まで時分割多重化可能である。
【００４１】
各ＶＭは、オペレーティングシステムに加えてアプリケーション・ソフトウェアおよび割り込みを含むことができ、割り込みは、例えば、０から約２５５までの優先度または異なる優先度の範囲を有し、ならびに、優先度に基づき勝つ割り込みを決定または識別するために互いに異なる優先度方式またはプロトコルを有する。いくつかの動作では、例えば、０から２５５の優先度（または優先度の他の範囲）を有する新規な割り込みが来るときはいつでも、割り込みは、ＣＰＵ２０４に送信され、ＶＭＭ２１０は、呼び出され／信号送信され／トリガされ、ＶＭＭは、例えば、優先度番号がＶＭ０（２１２）のような特定のＶＭにまたは他の特定のＶＭにマップされることを理解し／導出し、そのＶＭｘ（例えば、ＶＭ０（２１２））を、割り込みを有する関連付けられたタスクの実行のために優先度方式に基づいて呼び出し、その他の割り込みは、タスクの現在の実行のために待ち行列に入れられる。次に、すべての割り込みの仲裁は、１つの仮想機械にマップ可能であり、仮想機械において、すべての割り込みの勝者は、ＶＭ０（２１２）のために送信可能であり、同様に、ＶＭ１（２１４）、ＶＭ２（２１６）等のために、すべての保留中の割り込みの間から各ＶＭの勝つ要求／割り込みが送信可能である。
【００４２】
図３には、本願明細書の１つまたは複数の態様／実施形態に従って、割り込みインタフェースを有する例示的ＣＰＵが示される。ＣＰＵ３１０が示すＣＰＵは、ＶＭＭ２１０と、インタフェースバス（図示せず）を介してＣＰＵプロセッサ状態語（ＰＳＷ）３０４に通信可能に結合される複数のＶＭ２１２〜２１６と、ＩＣＲ３０６と、対応するレジスタとしての以前のコンテクスト情報レジスタ（ＰＣＸＩ）３０８と、を有する。
【００４３】
ＣＰＵ３０２およびＣＰＵ３１０は、ＣＰＵインターネット制御レジスタ（ＣＰＵ  ＩＣＲ）３０６を備え、ＣＰＵインターネット制御レジスタ（ＣＰＵ  ＩＣＲ）３０６は、ＩＣＵ２０２から例えばＣＰＵ３０２、３１０に送信される情報を含む、または、内部ＣＰＵ構成要素、例えば、ＶＭＭ、ＶＭまたは他の構成要素により送信される情報を含む。ＣＰＵ３０２およびＣＰＵ３１０は、例えば、プロセッサ１１０またはプロセッサ１１０内の任意の１つのプロセッサ１１２、１１４のユニットである／一部である／結合可能である。送受信する情報は、現在のタスク優先度、すなわち実行するＣＰＵソフトウェアの優先度と、ＩＣＵ２０２によってＣＰＵ３０２、３１０に送信される最新の割り込み優先度と、追加の制御ビットと、を含むことができ、追加の制御ビットは、ＣＰＵが現在、タスク／サブタスク優先度より高い優先度を有する新規な割り込みによって割り込み可能であるか、または、所定の閾値を満たすかを示す。
【００４４】
ＰＳＷ３０４は、各インスタントで構成要素またはＣＰＵの条件を記載するワード／バイトとすることができ、どのクラスの動作が禁止または許可されるかを示すことができ、ＣＰＵまたはプロセッサに関連付けられた割り込みの状態を示すことができる。ＰＳＷ３０４はまた、現在実行されている命令のアドレスを示すこともできる。このように、ＣＰＵ３１０は、機構のためのリアルタイム・システムサポートを可能にし、機構によって、アプリケーション・ソフトウェアは、割り込みシステムを介して受信される新規な割り込みが実行中のタスクに割り込み可能にする条件を制御することができる。
【００４５】
特に、ＣＰＵ３１０は、ＩＣＲ３０６に、例えば、現在のＣＰＵ優先度番号（ＩＣＲ．ＣＣＰＮ）３１２と、保留中の割り込み優先度番号（ＩＣＲ．ＰＩＰＮ）３１４と、割り込み可能ビット（ＩＣＲ．ＩＥ）３１６と、を提供することができる。ＩＣＲ．ＣＣＰＮ３１２は、ビットフィールドを備えることができ、ビットフィールドは、オペレーティングシステムによって設定可能であり、現在のソフトウェアタスクの優先度番号を示し、優先度番号では、例えば、より高い値がより高い優先度を有することができる。本願明細書において参照されるＣＣＰＮは、現在の機械優先度番号（ＣＭＰＮ）と同様に称することができ、逆もまた同様であり、前後関係に応じて区別せずに使用可能である。
【００４６】
ＩＣＲ．ＰＩＰＮ３１４は、割り込みシステムハードウェア、例えば、ＩＣＵ２０２またはＣＰＵ２０４、３０２、３１０のプロセッサ構成要素（例えば、ＰＣ４０８）によって設定可能なビットを備えることができる。ＩＣＲ．ＰＩＰＮ３１４は、このＣＰＵ３１０によってサービスされる保留中の割り込み（サービス要求）を示す。例えば、ＰＩＰＮ＝０は、例えば、より高い優先度を有するより高い値によって、「保留中の割り込みではない」と定義される。
【００４７】
ＩＣＲ．ＩＥ３１６は、ビット割り込み可能と設定されると、アクティブになりうる。このビット３１６が設定される（または真である）場合、さらに、以下の閾値、ＰＩＰＮ＞ＣＣＰＮが満たされると、すなわちＰＩＰＮ３１４がＣＣＰＮ３１２番号より大きい場合、ＣＰＵ３１０は、ＰＩＰＮ番号によって定義される割り込みサービスルーチン（ＩＳＲ）から開始する。このように、ＣＣＰＮ３１２≧ＰＩＰＮ３１４である限り、ＣＰＵ３１０は、ＩＳＲを開始することができる。
【００４８】
ＩＥ３１６が設定されない限り、ＣＰＵ３１０は、ＰＩＰＮ３１４レジスタ値を無視することができる（ＣＰＵ３１０が任意の新規な割り込み／サービス要求を無視できる（動作を無視／保留できる）ことを意味する）。ＩＥビット３１６は、ＩＳＲのスタートに応答して、ハードウェアによって自動的にクリア可能である。この機構によって、ＩＳＲは、より高い優先度（例えば、より高いＰＩＰＮ）を有する割り込み／サービス要求によって再び割り込みされうる前に最小数の命令を実行することができる。ソフトウェア／ＣＰＵ３１０プロセッサ構成要素は、再び割り込みされる用意ができると、次に、ＩＥ３１６を再び設定することができる。
【００４９】
ＣＰＵ３１０は、ＰＣＸＩ３０８レジスタをさらに含み、ＰＣＸＩ３０８レジスタは、以前の割り込み／サービス要求によって割り込みされた以前の割り込みまたはタスクに関連したデータを制御する。この情報／関連データは、以前のＣＰＵ優先度番号（ＰＣＸＩ．ＰＣＰＮ）、ＰＣＸＩおよび以前のＣＰＵ割り込み可能性（ＰＣＸＩ．ＰＣＩＥ）を含むことができ、各々は、以前の割り込み／サービス要求によって割り込みされたタスクについてのデータを提供する。このＰＣＸＩ情報は、以前のタスクの関連したソフトウェアまたはアプリケーションが「割り込み命令からのリターン」（ＲＦＩ）命令を実行するように望むとき、ＣＰＵハードウェア３１０により用いられることができ、以前に割り込みされたタスクを継続することができ、例えば、割り込みされた資源または構成要素によって以前のタスクへのリターンを容易にすることができる。ＣＰＵ３１０は、アプリケーション／ソフトウェアがＲＦＩを実行し、以前のタスクにリターンするか（ＰＣＸＩ．ＰＣＰＮとしてレジスタ構成要素３０８内に保存されるタスク優先度を有する）、または、新規な保留中の割り込み／サービス要求から直接開始するか（ＩＣＲ．ＰＩＰＮ３１４内で利用できるサービス要求優先度を有する）、を決定することができる。このように、ソフトウェア／アプリケーションが、実行される以前に割り込みされたタスクのためのＲＦＩを実行することを要求する状況に応答して、ＩＣＲ．ＰＩＰＮ３１４がＰＣＸＩ．ＰＣＰＮより大きい（例えば、ＩＣＲ．ＰＩＰＮ３１４＞ＰＣＸＩ．ＰＣＰＮ）場合、または、関連した閾値を満たす場合、ＣＰＵ３１０は、新規な割り込み／サービス要求を有する動作を開始することができ、さもなければＣＰＵ３１０は、実行のための以前のタスクにリターンすることができる。
【００５０】
ＶＭＭサポートを有するＣＰＵのための割り込みインタフェースは、ＣＰＵに単一の割り込みインタフェースおよび特別でないハードウェアサポートを提供することができ、しばしば、ＣＰＵに、ＶＭＭのための１つの割り込みインタフェースおよびＶＭのための１つの割り込みインタフェースを与えることができる。このように、すべての割り込みは、ＶＭＭ２１０によって処理可能である。これが意味するのは、すべての割り込みが１つの優先度方式（例えば０〜２５５）においてＣＰＵにマップ可能であり、任意の割り込みがＶＭＭ呼び出しを実行のために要求し、ＶＭＭ２１０が一度に１つのみの割り込みを見る／対応することができ、または、ＶＭＭオーバヘッドが割り込みの数に線形接続されていることである。
【００５１】
すべての割り込み（現在保留中または到来する、１つまたは複数のＣＰＵ構成要素または他の装置構成要素からの新規な割り込み）がＶＭＭ２１０によって処理されるとき、これが意味することができるのは、すべてのＶＭｘ（例えば、２１２〜２１６）割り込みが、各ＶＭｘのための対応するまたは個々の優先度方式の代わりに、単一の優先度方式（例えば０〜２５５）にマップ可能であり、ＶＭＭ割り込みが専用の優先度方式（例えば０〜３２）を用いて可能であり、任意の割り込みがＶＭＭ呼び出し（またはＶＭＭに向けられた開始のための動作／信号）を要求し、ＶＭＭ２１０が１つのみのＶＭＭおよび１つのみのＶＭｘ割り込みを同時に見ることができ、または、ＶＭＭオーバヘッドが割り込みの数に線形接続されていることである。
【００５２】
図４は、本願明細書の他のさまざまな態様／実施形態に従って、他の例示的ＣＰＵ４０２を示す。ＣＰＵ４０２は、例えば、ハイパーバイザ／ＶＭＭサポートによって構成可能であり、ハイパーバイザ／ＶＭＭサポートは、割り込みを処理するための性能オーバヘッドを大幅に減少することができ、割り込みインタフェースのために、または、ＣＰＵ４０２またはプロセッサの構成要素に一体化された割り込みバスシステムのために利用されるクロックサイクルの数を減少することができる。ＣＰＵ４０２もまた、ＣＰＵ３０２およびＣＰＵ３１０と同様に、および、本願明細書の任意の他のプロセッサまたはＣＰＵと同様に、例えば、プロセッサ１１０またはプロセッサ１１０内の任意の１つのプロセッサ１１２、１１４のユニットである／一部である／結合可能である。
【００５３】
一態様では、ＣＰＵ４０２は、ＰＳＷ４０４、ＩＣＲ＿ＣＴＲＬ４０６、プロセッサ装置４０８、ＶＭＭ４１０および一組のＶＭ４１２〜４１６を備える。ＣＰＵ４０２のＶＭＭ４１０およびＶＭ４１２〜４１６は、各々、対応するＩＣＲ４２０、４２４、４２８および４３２を備え、これらは、各々、図３のＣＰＵ３１０のＩＣＲ３０６に類似の構成要素を備えることができる。さらに、ＣＰＵ４０２のＶＭＭ４１０およびＶＭ４１２〜４１６は、各々、対応するＰＣＸＩ４２２、４２６、４３０および４３４をそれぞれ備え、これらすべては、一緒にバス４５０を介して１つまたは複数のインタフェースでそれぞれ結合され、ＣＰＵ４０２は、各構成要素からのデータに同時にまたは並列に即座に気付くまたは処理することができる。
【００５４】
図３のＩＣＲ３０６について上述したように、ＩＣＲレジスタ４２０、４２４、４２８および４３２は、現在のタスク優先度、保留中の割り込み優先度および割り込み可能状態を（例えば、バス４５０等を介して）示すように構成される。さらに、ＰＣＸＩ４２２、４２６、４３０および４３４は、バスを介して、以前の／割り込みされたタスクに関連した情報を示すように構成可能であり、情報は、対応する構成要素、ＶＭＭ、ＶＭまたはＣＰＵによって実行される以前の／割り込みされたタスクの可能状態を含む。
【００５５】
一例では、ＣＰＵ４０２は、各機械、ＶＭＭ４１０および各ＶＭｘ４１２、４１４、４１６からの並列入力に、その専用の割り込み優先度方式を用いて気付く／動作することができる（例えば、優先度０〜２５５を有するＶＭＭ４１０への割り込み、優先度０〜２５５を有するＶＭ０（４１２）への割り込み、優先度０〜２５５を有するＶＭ１（４１４）への割り込み、優先度０〜２５５を有するＶＭ２（４１６）への割り込み）。ＣＰＵ４０２ハードウェアは、現在の機械ソフトウェアタスクの状態に気付く（ＶＭＭ４１０、または、ＶＭＭ４１０ではない場合にはＶＭｘ４１２〜４１６は、現在動作している、または、実行ビジー状態ではない）。ＶＭＭ４１０および各ＶＭｘ４１２〜４１６の状態は、ＣＰＵ４０２または関連付けられた処理構成要素に、例えば、ＣＰＵハードウェアおよびＶＭＭソフトウェアに並列に／同時にトランスペアレントになることができる。このように、示されるＣＰＵ４０２の構成要素を通信可能に結合するインタフェースバス４５０は、１つまたは複数の現在のタスク優先度、１つまたは複数の保留中の割り込み優先度および割り込み可能性に関してトランスペアレントに動作することができる。これらの態様によって、ＣＰＵ４０２は、例えば、ＣＰＵ４０２上のＶＭによる実行のために提供されるまたは到来する仮想機械サービス要求または割り込みのより柔軟な実行をサポートすることができる。
【００５６】
他の態様では、専用の優先度方式は、ＶＭｘ４１２〜４１６ごとに独立して、および、ＶＭＭ４１０のために提供可能であり、または、使用可能にされ、その出力は、ＶＭＭ４１０によって、または、ＣＰＵ４０２の処理装置４０８によって、ＣＰＵの動作モード（ＶＭモードまたはＶＭＭモード）に応じて集計可能であり、受信可能であり、処理可能である。現在実行中のＶＭにマップされる割り込みは、任意のＶＭ４１２〜４１６に、ＶＭＭ呼び出しなしで、または、換言すれば、プロセッサ構成要素４０８によって、あたかも、例えば、ＶＭ動作モードにあるかのように、直接転送可能である。
【００５７】
ハードウェア制御／決定機構またはプロセッサ構成要素（例えば、ＰＣ４０８）は、ＶＭＭ４１０によって構成可能であり、ＶＭＭ４１０は、ＶＭｘ（例えば、４１２〜４１６）が異なるＶＭに対するサービス要求によって、または、換言すれば、ＣＰＵ４０２のＶＭ間の割り込み／サービス要求によって割り込み可能な条件を定義する。
【００５８】
さらに、（ＰＩＰＮおよびＣＣＰＮの他に、すなわち、ＰＩＰＮおよびＣＣＰＮに加えて）追加の優先度閾値は、ＶＭ（例えば、ＶＭ０（４１２））が他のＶＭ（ＶＭ１（４１４））にマップされる割り込みによって、直接割り込み可能であるか否か（またはいつ割り込み可能であるか）を含む決定における要因であるために定義可能である。すなわち、同じＣＰＵ４０２のＶＭの間からの割り込みおよび応答するＩＳＲを可能にする決定は、ＶＭＭ４１０からのＶＭＭ呼び出しなしで、以下の１つ以上（すなわち、ＰＩＰＮ、ＣＣＰＮ、または、追加の優先度／満たされる追加の優先度閾値）に基づいて、ＰＣ４０８によるこの決定動作の要因／機能として直接実施されるように決定可能である。
【００５９】
他の態様／実施形態では、ＣＰＵ４０２は、そのハードウェア（例えば、処理構成要素または処理機能）をＩＣＲ４０６にさまざまなＶＭ４１２〜４１６のために複製するように構成可能であり、これは、割り込みハードウェアに、割り込みを特定のＶＭ４１２〜４１６、ＶＭＭ４１０のために提示する能力を与え、ＣＰＵは、ただ１つの優先度を一度比較するよりむしろ、複数の優先度を並列に比較する。このように、ＣＰＵ４０２は、処理構成要素４０８を介して、例えば、各構成要素４０４〜４３４から並列に入力される情報を有することができ、この情報は、多重化可能または比較可能な複数の異なる優先度を有し、ＣＰＵ４０２は、割り込みサービス要求、現在の条件および以前の条件を決定し、ＩＳＲを開始し、実行されるタスクのためにゲスト・オペレーティングシステムのアプリケーションの専用のインスタンス上の構成要素／資源に割り込みすることができる。それゆえ、ＣＰＵ４０２は、複数の機械割り込み（ＶＭ割り込み）を並列に受信／処理するように動作することができ、割り込みを直ちにゲスト・オペレーティングシステムに受け入れるべきか、または、割り込みを直ちにハイパーバイザ／ＶＭＭに受け入れるべきか、または、割り込みがいずれも行われなかったので、割り込みを一般的に無視するべきかについて、並列にハードウェア決定をするように動作することができる。
【００６０】
他の態様では、ＣＰＵ４０２は、複数の動作モードで動作する間、自分自身の状態について、および、ＣＰＵ４０２内で使用される他のすべての構成要素の状態について気付く／処理することができる。例えば、ＶＭＭモードで動作している場合、または、ＶＭ／ＶＭｘモードにある場合、例えば、ＣＰＵ４０２は、どの保留中の割り込みが、各ＶＭ４１２〜４１６およびＶＭＭ４１０のために、例えば、一緒にまたは独立して同時に、最高の優先度（または勝つ割り込み）を有するのかという知識を並列に有する、または、同時に処理する。（例えば、ＰＣ４０８を介して）ＣＰＵ４０２は、自分がＶＭモードにあると決定することができ、それゆえ、例えば、ＶＭ１（４１４）のための新規な割り込み／サービス要求がある場合、ＶＭＭモードに切り替える必要なく、新規な割り込み／サービス要求を直接渡すべきか、または、ＩＳＲをＶＭ１（４１４）または実行中の他のＶＭ（例えば、ＶＭ２（４１６））に生成するべきか、という決定をすることができ、さもなければ、ＶＭＭ４１０は、ＶＭＭ呼び出しをＶＭ１（４１４）に実行中に提供することができる。
【００６１】
ＶＭＭ動作モードにおいて、ＶＭＭ４１０は、ＶＭ４１２〜４１６への割り込みおよびＶＭ４１２〜４１６の個々の優先度状態を、ＩＣＲ４２４、４２８および４３２の各々からの情報およびＶＭＭ４１０自身のＩＣＲ４２０を用いて制御／管理し、ＩＣＲ４２０は、各々、ＣＰＵ３１０のそれぞれのＩＣＲ．ＣＣＰＮ３１２、ＩＣＲ．ＰＩＰＮ３１４およびＩＣＲ．ＩＥ３１６と同様に、ＣＣＰＮ、ＰＩＰＮおよびＩＥを、データを有する構成要素として備えることができ、さらに、ＰＣＸＩ４２２〜４３４を、上述したＰＣＸＩ３０８に類似のデータを有する類似の構成要素として有する。ＶＭＭモードは、ハイパーバイザ・モード（または追加の優先度モードに類似のモード）と称することもでき、このモードでは、仮想機械モニタは、実行するただ１つの構成要素であり、ハイパーバイザ・ポートがＣＰＵ４０２において使用可能である場合、ＶＭＭ４１０は、そのハイパーバイザ優先度において実行するただ１つとすることができ、例えば、ＶＭが他のＶＭに割り込み可能か、または、装置１００またはＣＰＵ４０２の他のアプリケーション／構成要素によって割り込み可能かを決定する。
【００６２】
図５および図６を一緒に参照すると、図５には、図６に関連して記載されている割り込みシステムに対するＣＰＵインタフェース内のデータの一例が示される。図５は、決定を制御するための（決定が基づく）特定のデータまたは入力を有するＣＰＵ４０２を示し（例えば、拡張したＰＳＷ（ｅＰＳＷ）または専用のＩＳＲ／ＰＣＸＲ（ＰＣＸＩ））、一方、図６は、プロセッサ構成要素４０８の決定ロジック構成要素６０２に入力されているデータを示す。
【００６３】
一例では、図１および図４に記載されているバスインタフェース（例えば、１４０または４５０）もまた、一例のコンテクストとして機能することができ、そのコンテクストによってＣＰＵ４０２は、例えば、ＣＰＵ４０２に関連付けられるかまたはＣＰＵ４０２によって制御されるさまざまな構成要素と相互作用することができる。このように、決定ロジック構成要素６０２を有するプロセッサ構成要素４０８を介して決定するためのインタフェースのこの情報またはデータは、１つまたは複数の入力を通じて処理され、ＶＭＭ４１０／ＶＭＭ４１２〜４１６をどのように制御するか、または、どのように権限を委譲するかを決定することができる。
【００６４】
図５に示されるＣＰＵ４０２は、さまざまなタイプの受信データを有して示され、さまざまなタイプの受信データは、新規に受信した割り込みに関連した仲裁決定のために、例えば、ＶＭモードにおいて直接、または、ＶＭＭ動作モードにおいてＶＭＭ読み出しを介してのいずれかで処理可能である。割り込みシステムに対するＣＰＵインタフェースは、１つまたは複数のＶＭ（例えば、４１２〜４１６）を、ゲスト・オペレーティングシステムのインスタンス上のアプリケーションのタスクのために制御するように動作することができる。ＣＰＵ４０２は、例えば、割り込みシステムに対する１つまたは複数のインタフェース（例えば、ポート／入力／出力端子等）を有することができ、決定構成要素６０２は、１つまたは複数のＶＭおよびＶＭＭのための最新の勝つサービス要求についての情報を受信することができる。このように、ＶＭＭ４１０および各ＶＭ４１２〜４１６は、異なる優先度方式を格納またはアクセスすることができ、優先度方式は、異なる入力、および、ＩＣＲおよび以前のコンテクストレジスタ（ＰＣＸＲまたはＰＣＸＩとして）に関連した各データフィールドにより示されるデータ、異なる優先度閾値等に基づいて、変化することができ、各優先度方式／閾値は、例えば、割り込み待ち時間、割り込み待ちアプリケーション起源、現状、タスク関連、他の資源有効性、または、他の優先度方式要因に関連した１つまたは複数の独立要因に基づくことができる。
【００６５】
一態様／一実施形態では、入力データは、ＶＭ４１０／ＶＭＭ４１２〜４１６ごとに専用とすることができ、または、割り込み／サービス要求情報は、（資源のためのサービス要求としてまたは資源のための現在プロセスの割り込みとして）、割り込みシステム５００によって時分割多重化されることによって、ＣＰＵ４０２に信号送信可能であり、または、割り込み／サービス要求情報は、（例えば、ＶＭＭサービス要求情報のための）専用のインタフェースと、（例えば、ＶＭ４１２〜４１６のためのサービス要求情報のための）時分割多重化と、の混合とすることができる。時分割多重化方法は、例えば、専用のインタフェースの混合と比較してわずかに高い割り込みレイテンシを提供することができ、ＣＰＵ４０２のためのＶＭＭ割り込み構造／構成要素サポートによって、それなしの場合より少ないクロックサイクルを潜在的に生成することができる。
【００６６】
他の態様では、ＰＳＷデータ５０２は、ＣＰＵ４０２のＰＳＷ４０４構成要素によって制御可能であり、拡張ＰＳＷ（ｅＰＳＷ）５０２とすることができる。ＣＰＵ  ＰＳＷ４０４は、ＣＰＵ４０２のＶＭＭ／ＶＭｘ状態についてのレジスタビット情報５０２を提供することができる。これが意味するのは、ＣＰＵ４０２ハードウェア（プロセッサ構成要素４０８）は、ＶＭＭ４１０またはＶＭ４１２〜４１６の任意の１つが現在実行中であるかに関して常に気付くことができ、特に新規な割り込み／サービス要求を受信するとき、ＶＭ０（４１２）、ＶＭ１（４１４）またはＶＭ２（４１６）のうち、どのＶＭが実行中であるかの情報を含む、ということである。
【００６７】
ｅＰＳＷ５０２は、ＰＳＷ．ＶＭＭビット／表示およびＰＳＷ．ＶＭビット／表示フィールドならびに他の内容情報またはデータを備えることができる。ＰＳＷ．ＶＭビットフィールドは、割り当てられた多数の隣接するコンピュータメモリ位置の表示を含むことができ、ビット列、または、例えば、ｅＰＳＷ５０２に対応する類似のデータ構造を保つ。ＰＳＷ．ＶＭＭおよびＰＳＷ．ＶＭ情報の変更態様は、例えば、ＶＭＭ４１０に制限可能である。これが意味するのは、ＶＭＭビットが設定される（または真である）場合にのみ、ソフトウェアまたはアプリケーションは、それを変えることができ、ＣＰＵ４０２は、ＶＭＭモードで動作しており、実行中のソフトウェア／アプリケーションは、ＶＭＭ特権を有する、ということである。上述したように、他のＶＭのための割り込み／サービス要求を行うアプリケーションまたは他のＶＭに応答して、ＶＭＭモードは、ＶＭＭ４１０が、ＩＳＲのためのＶＭへのＶＭＭ呼び出しを介してＶＭ４１２〜４１６を管理することができると決定し、ＣＰＵ４０２またはＣＰＵ４０２のプロセッサ構成要素４０８が、決定を直接管理／制御し、受信した割り込み／サービス要求に応答してＩＳＲを実施するのではない。ソフトウェアは、ＶＭＭ特権を有することができ、ＶＭＭ４１０にアクセスまたは通信可能であり、例えば、資源（または他のＶＭ）のために要求することができ、または、記載されるように、ＶＭＭ４１０のソフトウェアは、ＶＭＭ動作モードに従って、ＶＭ４１２〜４１６を制御するように動作可能である。
【００６８】
例えば、他のデータまたは関連した入力は、ＩＣＲ＿ＣＴＲＬ（またはＩＣＲ．ＣＴＲＬ）５０４によって、ＶＭｘ４１２〜４１６、ＶＭＭ４１０ごとの専用のＩＣＲのために送信可能であり、決定動作または方式の変数を含むことができる。このように、ＣＰＵ５０４は、ＩＣＲ４２０、４２４、４２８および４３２の複数のインスタンスを、ＩＣＲ．ＣＴＲＬ４０６を介して実施／制御することができ、送信データの各インスタンスは、ＣＰＵ４０２に対するデータ入力５０６および５０８１〜５０８ｎとすることができる。
【００６９】
例えば、ＶＭＭ４１０のための専用の１つのインスタンスは、データ入力としてのＩＣＲ＿ＶＭＭ５０６とすることができ、ＩＣＲ＿ＶＭＭ５０６は、ビットフィールド、現在の機械（ＶＭＭ／ＶＭｘ）の優先度番号（ＣＭＰＮ）および割り込み可能性（ＩＥ）を備えることができる。ＩＣＲ＿ＶＭＭ．ＰＩＰＮビット／表示フィールドは、保留中の割り込み優先度番号をＶＭＭ４１０に提供する。ＩＣＲ＿ＶＭＭ．ＣＭＰＮは、実行中またはサービスされている現在のＶＭＭタスクの優先度を備える。さらに、ＩＣＲ＿ＶＭＭ．ＩＥは、実行中のＶＭＭタスクが割り込み可能か否かを信号送信する。
【００７０】
ＩＣＲ＿ＶＭＭレジスタ５０６は、ＰＳＷ５０２のＰＳＷ．ＶＭＭビットに割り当て可能である。このように、ＰＳＷ．ＶＭＭビット／表示フィールドは、データをＶＭＭ４１０のＩＣＲ＿ＶＭＭレジスタ５０６で制御、管理または通信することができる。ＰＳＷは、（ＶＭＭモードにあるのか、ＶＭＭモードにないならば、どのＶＭｘがＶＭモードのために動作しているかについての）ＣＰＵハードウェア状態を各ハードウェア状態（ＶＭＭ、ＶＭ０、ＶＭ１、・・・等）のために定義する。それに割り当てられる１つのＩＣＲレジスタ・フィックスが存在することができる。これは、ＩＣＲ変更のためのアクセス保護を含み、ＣＰＵがＶＭＭモードにある場合、ソフトウェアは、すべてのＩＣＲレジスタを変更することができ、ＣＰＵが例えばＶＭ１モードにある場合、ソフトウェアは、ＩＣＲ＿ＶＭ１のみを変更することができるが、ＩＣＲ＿ＶＭＭ、ＩＣＲ＿ＶＭ０を変更することができず、ＩＣＲ＿ＶＭｘ／ＩＣＲ＿ＶＭｎ等も同様である（ｘまたはｎは、例えば、ゼロより大きい正の整数を表すことができる）。
【００７１】
他のデータ・インスタンスは、各サポートされたＶＭ４１２〜４１６のためにＩＣＲ＿ＶＭｘ５０８として専用とすることができる。ただし、ｘ＝０〜ｎすなわち５０８１〜５０８ｎである。ＩＣＲ＿ＶＭｘ．ＰＩＰＮビットフィールド５０８１〜５０８ｎは、ＶＭｘ（例えば、ＶＭｘ４１２〜４１６）のための保留中の割り込み優先度番号を示す。ＩＣＲ＿ＶＭｘ．ＣＭＰＮ５０８１〜５０８ｎは、実行中またはビジー状態にある現在のＶＭｘ４１２〜４１６タスクの優先度を示す。ＩＣＲ＿ＶＭｘ．ＩＥ５０８１〜５０８ｎは、実行中のＶＭｘタスクが割り込み可能か否かを信号送信する。各ＩＣＲ＿ＶＭｘレジスタ５０８１〜５０８ｎは、それぞれ、ハードウェアによって１つのＰＳＷ．ＶＭビット符号化に割り当て／制御可能であり、ＰＳＷ．ＶＭｘが関連した符号化に設定される場合、または、ＰＳＷ．ＶＭＭが設定される場合、ソフトウェアによって制御可能である。
【００７２】
専用の以前のコンテクスト情報レジスタ（ＰＣＸＩ）は、ＶＭｘ５１２１〜５１２ｎおよびＶＭＭ４１０ごとに構成可能であり、以前のコンテクストレジスタ（ＰＣＸＲ）とも称される。ＰＣＸＩレジスタ４２２、４２６、４３０および４３４は、例えば、ＶＭｘ４１２〜４１６／ＶＭＭ４１０それぞれの以前の／割り込みされたタスクについての情報を含む。例えば、ＰＣＸＩ／ＰＣＸＲ５１０、５１２１〜５１２ｎに関連したこの情報は、以前の割り込み可能（ＩＥ）ビット、以前の機械優先度番号および追加の情報またはポインタを備える。以前の割り込みＩＥビットは、割り込みによって割り込みされる関連付けられた機械の以前の／割り込みされたタスクの状態を提供することができる。以前の機械優先度番号は、この機械の以前の／割り込みされたタスクのレベルを参照することができる。追加情報は、例えば、タスクコンテクスト保存領域へのポインタまたは他のインジケータ、コンテクスト保存動作のタイプ、または、実行または割り込みされた他のメモリ関連のフェッチまたは命令リコールを含むことができる。
【００７３】
ＣＰＵ４０２は、さまざまな機械のためのＰＣＸＩの複数のインスタンスもまた実施することができる。１つのインスタンスは、ＶＭＭ（ＰＣＸＩ＿ＶＭＭ／ＰＣＸＲ＿ＶＭＭ）５１０のために専用とすることができる。ＰＣＸＩ＿ＶＭＭレジスタ４２２は、ＰＳＷ．ＶＭＭビット５１０に割り当て可能であり、他のインスタンスは、各サポートされた仮想機械（ＰＣＸＩ＿ＶＭｘ、ｘ＝０〜ｎ）５１２１〜５１２ｎのために専用とすることができる。各ＰＣＸＩ＿ＶＭｘレジスタ４２６、４３０および４３４は、ＣＰＵ４０２によってＰＳＷ．ＶＭビット符号化に割り当て可能である。
【００７４】
各ＶＭｘインスタンスは、ハードウェアによって１つのＰＳＷ．ＶＭｘ符号化に割り当て可能である。ＣＰＵがＶＭＭモードにある場合、これは、ＰＳＷ．ＶＭＭビット５０２が設定される（または真である）ことを意味することができるが、以下のことが発生しうる。
１）アプリケーション／ソフトウェアは、ＩＣＲ＿ＶＭＭ／ＶＭｘ４２０、４２４、４２８および４３２、さらにはＰＣＸＩ＿ＶＭＭ／ＶＭｘ４２２、４２６、４３０および４３４構成要素／レジスタを変更することができる。
２）ハードウェア／ＣＰＵは、ＲＦＩ命令をＰＣＸＩ＿ＶＭＭ５１０設定として考慮する。
３）例外（割り込み）または例外／割り込みからのリターンは、ＰＣＸＩ＿ＶＭＭ５１０を変更することができる。
【００７５】
ＣＰＵ４０２がＶＭｘモードにある場合、これは、ＰＳＷ５０２のＰＳＷ．ＶＭＭビットが設定されないことを意味することができるが、ＰＳＷ．ＶＭは、ＶＭｘ符号化に設定され、以下のことが発生しうる。
１）ハードウェア／ＣＰＵは、ＲＦＩ命令ＰＣＸＩ＿ＶＭｘ設定５１２１〜５１２ｎを考慮することができる。
２）アプリケーション／ソフトウェアは、ＶＭｘ＿ＩＣＲ構成要素／レジスタ５１２１〜５１２ｎのみを変更することができる。
３）例外（割り込み）または例外からのリターンは、ＰＣＸＩ＿ＶＭｘ５１２１〜５１２ｎの変更を変更／トリガする。
【００７６】
一態様では、専用のＩＣＲ構成制御レジスタ（ＩＣＲ＿ＣＴＲＬ）４０６を利用して、常に、ＣＰＵハードウェアが、ＶＭＭ４１０または各ＶＭｘの状態に（ＰＳＷ．ＶＭＭおよびＰＳＷ．ＶＭを介して、または、それによって）気付くように保つことができる。ＣＰＵ４０２がＶＭＭモードにある間にのみ、ＩＣＲ＿ＣＴＲＬ構成要素は、アプリケーション・ソフトウェアによって変更可能である。さらに、ＣＰＵ４０２または他の構成要素は、実行中の間、ＩＣＲ＿ＣＴＲＬ４０６をロックすることができる。
【００７７】
ＣＰＵ４０２は、追加の構成レジスタ（ＩＣＲ＿ＣＴＲＬ）４０６を提供し、アプリケーション・ソフトウェアは、ＶＭｘが実行中の間、どのようにＣＰＵがＩＣＲ＿ＶＭｘ／ＩＣＲ＿ＶＭＭ５０６、５０８１〜５０８ｎレジスタにおける新規なＰＩＰＮの値に反応するかを定義することができる。追加のレジスタは、ＩＣＲ＿ＣＴＲＬを含むことができ、ＩＣＲ＿ＣＴＲＬは、ＶＭＭ／ハイパーバイザおよび複数のＶＭに関連したさまざまな割り込み条件に対するさまざまな応答を備え、または、示し、決定ロジック構成要素６０２に結合される。こうして次に、決定ロジック構成要素６０２は、変更を実施しないことによって新規なＰＩＰＮ値に応答することを決定し、実行中またはビジーのＶＭのために新規なＰＩＰＮを利用し、次に、ＶＭモードにある場合、実行中のＰＩＰＮに直接転送する、または、新規なＰＩＰＮを利用し、ＶＭ変化を要求する場合、ＶＭＭ呼び出しを有するＶＭに、例えば、ＶＭＭ４１０を介して送信する。
【００７８】
さまざまな応答または反応およびどのような条件下であるかは、以下、いくつかの例にて説明するように表すことができる。一例では、ＶＭｘが実行中であり（ＰＳＷ．ＶＭまたはＰＳＷ＿ＶＭｘを介して定義される）、ＶＭＭ４１０のための新規な割り込みが割り込みシステムによってＣＰＵ４０２に信号送信され、ＩＣＲ＿ＶＭｘ．ＩＥが設定され（または真であり）、閾値ＩＣＲ＿ＶＭＭ．ＰＩＰＮ＞ＩＣＲ＿ＶＭｘ．ＰＩＰＮが真であり、ＶＭｘがＶＭＭ割り込みによって割り込み可能に構成される場合、ＣＰＵ４０２ハードウェアは、ＶＭＭモードに変化するか、さもなければ、ＶＭｘは割り込みされない。
【００７９】
他の例では、ＶＭｘが実行中であり、ＶＭｙ（例えば、ＶＭｘとは異なるＶＭ）のための新規な割り込みが割り込み／割り込みシステムによってＣＰＵ４０２に信号送信され、ＩＣＲ＿ＶＭｘ．ＩＥが設定され（または真であり）、ＩＣＲ＿ＶＭｙ．ＰＩＰＮ＞ＩＣＲ＿ＶＭｘ．ＰＩＰＮかつＩＣＲ＿ＶＭｙ．ＰＩＰＮ＞ＩＣＲ＿ＶＭｙ．ＣＭＰＮ（例えば、第１のＶＭＰＩＰＮが他の第１のＶＭＰＩＰＮより大きく、かつ、第２のＶＭＰＩＰＮが他の第２のＶＭＰＩＰＮより大きい）のような閾値が満たされ、ＶＭｘがＶＭｙ割り込みによって割り込み可能に構成され、第１のＶＭが割り込みによって割り込みされるように構成されるとき、他の応答は、ＶＭＭ／ハイパーバイザ動作モードに変化し、ＶＭＭ／ハイパーバイザを介して第１のＶＭに割り込みすることを含むことができ、さもなければ、ＶＭｘは割り込みされない。
【００８０】
さらなる例では、ＶＭｘが実行中であり、ＶＭｘのための新規な割り込みが割り込み／割り込みシステムによってＣＰＵ４０２に信号送信され、ＩＣＲ＿ＶＭｘ．ＩＥが設定され（または真であり）、閾値ＩＣＲ＿ＶＭｘ．ＰＩＰＮ＞ＩＣＲ＿ＶＭｘ．ＰＩＰＮが満たされる場合、ＣＰＵがＶＭＭ状態に変化するか、または、ＶＭｘモードにとどまり、現在のタスクに割り込みするか、が構成可能である。
【００８１】
他の実施形態では、ＣＰＵ４０２は、１つの汎用レジスタまたはＶＭｘごとの１つのレジスタを導入することができ、ＶＭｘごとの１つのレジスタは、割り込み優先度レベルを定義し、ＶＭｘ  ＩＣＲ＿ＶＭｘ．ＩＥビットが設定される場合、ＶＭｘは割り込み可能であり、ＩＣＲ＿ＶＭｙ．ＰＩＰＮ＞ＩＣＲ＿ＶＭｘ．ＰＩＰＮを満たす少なくとも１つのＶＭｙが存在し、ＶＭｘは、他のＶＭによって割り込み可能である。このオプションの利点は、ＶＭｘタスクがＩＣＲ＿ＶＭｘ．ＰＩＰＮ＞ＩＣＲ＿ＶＭｘ．ＣＣＰＮを満たすＶＭｘにマップされる任意の割り込みによって割り込み可能であり、ＶＭｘに他のＶＭｙによって割り込みする独立した優先度レベル／閾値が実行可能なことである。利点は、各ＶＭのために、１つのレベルが、ＶＭによって（ＣＭＰＮを介して）実行されるアプリケーション・ソフトウェアによって定義され、第２のレベルが、このＶＭのためにＶＭＭによって定義可能であり、より高い優先度サービス要求を有する他のＶＭがＶＭｘに割り込み可能であることである。
【００８２】
このように、決定ロジック構成要素６０２は、現在および以前の異なる状態ならびに割り込み呼び出しのためのＣＰＵ４０２の各仮想構成要素の優先度番号付けを考慮するように動作することができ、所定のＶＭが実行しているか否か、例えば、状態関数と同様に、資源を仲裁するように動作することができる。このように、決定ロジック構成要素６０２の第１のステージは、各ＶＭのための最高の割り込みを発見するために、ＶＭのローカル仲裁を含むことができ、次に、第２のステージは、どのＶＭが現在アクティブなのか、異なるＶＭからのすべての要求を考慮し、このデータに基づいて、現在のＶＭに転送すべきか、または、他のＶＭに割り込みするべきか、を決定することができる。
【００８３】
本願明細書では、方法が一連のステップまたは事象として記載および図示されているが、この種のステップまたは事象の順番は、図示例に限定して解釈されるものではないことを認識されたい。例えば、いくつかのステップは、異なる順番でおよび／または他のステップまたは事象と同時に、本願明細書に図示および／または記載されたものから離れて発生してもよい。さらに、すべての図示のステップが、本願明細書に記載の１つまたは複数の態様または実施形態を実施するのに必要でなくてもよい。さらに、本願明細書において表されるステップの１つまたは複数は、１つまたは複数の別々のステップおよび／または段階において実行されてもよい。
【００８４】
図７は、ＣＰＵのためのハイパーバイザ／ＶＭＭおよびＶＭの割り込みサービス要求制御のためのプロセスフロー７００である。方法は、７１０において、１つまたは複数のプロセッサを介して、ＶＭＭ／ハイパーバイザまたは複数のＶＭの１つまたは複数に対応する割り込み要求を受信するステップで開始し、複数のＶＭは、ゲスト・オペレーティングシステムの１つまたは複数のＶＭアプリケーションを１つまたは複数のタスクのために実行するように構成可能である。
【００８５】
７２０において、一組の所定の基準に基づいて、ＶＭＭ／ハイパーバイザおよび複数のＶＭに対する割り込み要求を認めるべきかの決定を生成することができる。
【００８６】
７３０において、決定に基づいて、割り込み要求を通信することができる、または、ＩＳＲを生成することができる。
【００８７】
他の態様では、ＶＭＭ／ハイパーバイザおよびＶＭにそれぞれ対応するＣＰＵ  ＩＣＵおよびＰＣＸＩレジスタからの情報に基づいて、決定は、ＶＭＭ／ハイパーバイザおよび複数のＶＭに対応する割り込み優先度方式の現在の状態からなるものとすることもできる。
【００８８】
プロセスフロー７００の動作は、ＶＭＭ／ハイパーバイザ・モードの代わりにＶＭモードにあるＣＰＵに応答して、バスを介して、割り込みをＶＭに、ＶＭが同時に実行中の間、ＶＭＭ／ハイパーバイザからのＶＭＭ呼び出しなしで直接転送するステップをさらに含むことができる。
【００８９】
第１のＶＭが、ＶＭＭ／ハイパーバイザによって構成可能な条件（または定義された応答／閾値）に基づいて、複数のＶＭの第２のＶＭからの割り込みとして受信されるサービス要求によって割り込みされるように構成されるかについての決定を行うこともできる。これらの条件または反応は、優先度閾値を含むことができ、優先度閾値は、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ関連付けられた保留中の割り込み番号と、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ関連付けられた現在の中央演算処理装置（ＣＰＵ）の優先度番号と、ＶＭモードで動作するプロセッサ構成要素に応答して、第１のＶＭが、第２のＶＭにマップされる割り込みによって直接割り込み可能かを決定するための１つまたは複数の追加の優先度閾値と、を備える。
【００９０】
例は、特徴事項、例えば、方法、方法のステップまたはブロックを実行するための手段、命令を含む少なくとも１つの機械可読媒体を含んでもよく、命令は、機械によって実行されるとき、本願明細書に記載されている実施形態および例に従って複数の通信技術を用いた同時通信のために、機械に方法のステップまたは装置またはシステムのステップを実行させる。
【００９１】
例１は、プロセッサ構成要素を備えるシステムであって、プロセッサ構成要素は、複数の仮想機械（ＶＭ）と、複数のＶＭを制御するように構成される仮想機械モニタ（ＶＭＭ）／ハイパーバイザと、を備え、プロセッサは、ＶＭＭ／ハイパーバイザまたは複数のＶＭの１つまたは複数に対応する複数の割り込み要求を受信し、一組の所定の基準に基づいて、ＶＭＭ／ハイパーバイザおよび複数のＶＭに対する複数の割り込み要求の割り込み要求を認めるべきかを決定する、ように構成される。
【００９２】
例２は、例１の特徴事項を含み、ＶＭＭ／ハイパーバイザおよび複数の仮想機械（ＶＭ）は、それぞれ、割り込み制御レジスタ（ＩＣＲ）と、以前のコンテクストおよび実行情報（ＰＣＸＩ）レジスタと、を備え、プロセッサ構成要素は、一組の所定の基準の一部として、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ対応する割り込み優先度方式の現状を決定するようにさらに構成される。
【００９３】
例３は、例１〜２のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、一組の所定の基準は、現在のタスク優先度、保留中の割り込み優先度、または、現状に関連付けられた割り込み可能性の１つまたは複数を備える。
【００９４】
例４は、例１〜３のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、プロセッサ構成要素は、拡張プロセッサ状態語（ｅＰＳＷ）を備えるプロセッサ状態レジスタと、割り込み制御レジスタ（ＩＣＲ）構成制御（ＩＣＲ  ＣＴＲＬ）を備える追加のレジスタと、をさらに備え、割り込み制御レジスタ（ＩＣＲ）構成制御（ＩＣＲ  ＣＴＲＬ）は、ＶＭＭ／ハイパーバイザおよび複数のＶＭに関連したさまざまな割り込み条件に対する複数の応答を備える。
【００９５】
例５は、例１〜４のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、複数の割り込み要求は、１つまたは複数のＶＭアプリケーションに対応する複数のＶＭサービス要求を備える。
【００９６】
例６は、例１〜５のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、プロセッサ構成要素は、複数の割り込み要求の１つまたは複数の割り込み要求を複数のＶＭの１つのＶＭに、１つのＶＭが同時に実行中の間、直接転送するようにさらに構成され、１つのＶＭは、ＶＭＭ／ハイパーバイザからのＶＭＭ呼び出しなしで、１つまたは複数の割り込み要求を受信するようにさらに構成される。
【００９７】
例７は、例１〜６のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、プロセッサ構成要素は、決定ロジック構成要素をさらに備え、決定ロジック構成要素は、複数のＶＭの第１のＶＭが、ＶＭＭ／ハイパーバイザによって構成される１つまたは複数の条件に基づいて、複数のＶＭの第２のＶＭから受信されるサービス要求によって割り込みされるように構成されるかを決定して構成される。
【００９８】
例８は、例１〜７のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、ＶＭＭ／ハイパーバイザは、１つまたは複数の条件を決定ロジック構成要素のために定義するようにさらに構成され、１つまたは複数の条件は、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ関連付けられた保留中の割り込み番号と、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ関連付けられた現在の中央演算処理装置（ＣＰＵ）の優先度番号と、ＶＭモードで動作するプロセッサ構成要素に応答して、第１のＶＭが第２のＶＭにマップされる割り込みによって直接割り込み可能かを決定するための１つまたは複数の追加の優先度閾値と、を備える優先度閾値を備える。
【００９９】
例９は、プロセッサ構成要素を備える装置であって、プロセッサ構成要素は、動作を実行する命令を含むメモリと、複数のインタフェースと、バスと、を備え、バスは、メモリおよび複数のインタフェースを、複数の仮想機械（ＶＭ）および仮想機械モニタ（ＶＭＭ）／ハイパーバイザに通信可能に結合し、複数のＶＭおよびＶＭＭ／ハイパーバイザの複数の割り込み要求に関連したデータを、プロセッサ構成要素の決定ロジック構成要素に通信する、ように構成され、プロセッサ構成要素は、一組の所定の基準に基づいて、ＶＭＭ／ハイパーバイザおよび複数のＶＭに対するまたはＶＭＭ／ハイパーバイザおよび複数のＶＭからの複数の割り込み要求の割り込み要求を認めるべきかを決定するように構成される。
【０１００】
例１０は、例９のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、一組の所定の基準は、ＶＭモードおよびＶＭＭ／ハイパーバイザ・モードを備える一組のモードからのプロセッサ構成要素の動作モードを備え、プロセッサ構成要素は、ＶＭモードにあることに応答して、割り込み要求を直接認め、複数のＶＭの１つのＶＭで割り込みサービスルーチン（ＩＳＲ）をトリガするようにさらに構成される。
【０１０１】
例１１は、例９〜１０のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、複数の割り込み要求は、ＶＭＭおよび複数のＶＭの異なる割り込み優先度方式から生じる複数の勝つサービス要求を備え、プロセッサ構成要素は、ＩＳＲを、複数のＶＭの１つのＶＭで、割り込み要求に応答して、勝つサービス要求として、複数のＶＭによって実行されているアプリケーションの第１の優先度レベルおよびＶＭＭ／ハイパーバイザによって定義される複数のＶＭの第２の優先度レベルに基づいてトリガするようにさらに構成される。
【０１０２】
例１２は、例９〜１１のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、プロセッサ状態レジスタおよび追加のレジスタをさらに備え、プロセッサ状態レジスタは、拡張プロセッサ状態語（ｅＰＳＷ）を備え、決定ロジック構成要素に結合され、ｅＰＳＷを決定ロジック構成要素に提供するように構成され、追加のレジスタは、ＶＭＭ／ハイパーバイザおよび複数のＶＭに関連したさまざまな割り込み条件に対する複数の応答を備える割り込み制御レジスタ（ＩＣＲ）構成制御（ＩＣＲ  ＣＴＲＬ）を備え、決定ロジック構成要素に結合され、ＩＣＲ  ＣＴＲＬを決定ロジック構成要素に提供するように構成される。
【０１０３】
例１３は、例９〜１２のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、ｅＰＳＷは、ＶＭＭ／ハイパーバイザおよび複数のＶＭの１つまたは複数のＶＭがビジー状態にあるかを示し、ビジー状態にある１つまたは複数のＶＭを識別する。
【０１０４】
例１４は、例９〜１３のいずれかの特徴事項を含み、決定ロジックは、複数のＶＭの第１のＶＭｘが、さまざまな割り込み条件に基づいて、複数のＶＭの第２のＶＭｙから受信されるサービス要求によって割り込みされるように構成されるかを決定するように構成され、優先度閾値との比較に基づいて、さまざまな条件に対する応答を決定するように構成される。
【０１０５】
例１５は、例９〜１４のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、優先度閾値は、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ関連付けられた保留中の割り込み番号と、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ関連付けられた現在の中央演算処理装置（ＣＰＵ）の優先度番号と、ＶＭモードまたはＶＭＭ／ハイパーバイザ動作モードで動作するプロセッサ構成要素に応答して、第１のＶＭが、第２のＶＭにマップされる割り込みによって直接割り込み可能かを決定するための１つまたは複数の追加の優先度閾値と、を備える。
【０１０６】
例１６は、１つまたは複数のプロセッサを介して、ＶＭＭ／ハイパーバイザまたは複数のＶＭの１つまたは複数に対応する割り込みを受信するステップと、１つまたは複数のプロセッサを介して、一組の所定の基準に基づいて、ＶＭＭ／ハイパーバイザおよび複数のＶＭに対する割り込みを認めるべきかの決定を生成するステップと、決定に基づいて、１つまたは複数のプロセッサ、ＶＭＭ／ハイパーバイザおよび複数のＶＭに通信可能に結合されるバスを介して、割り込みを通信するステップと、を含む方法である。
【０１０７】
例１７は、例１６の特徴事項を含み、動作は、ＶＭＭ／ハイパーバイザおよび複数の仮想機械（ＶＭ）の中央演算処理装置（ＣＰＵ）割り込み制御レジスタ（ＩＣＵ）と、以前のコンテクストおよび実行情報（ＰＣＸＩ）レジスタと、からの情報に基づいて、ＶＭＭ／ハイパーバイザおよび複数のＶＭに対応する割り込み優先度方式の現状を決定するステップをさらに含む。
【０１０８】
例１８は、例１６〜１７のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、動作は、ＶＭＭ／ハイパーバイザ・モードの代わりにＶＭモードで動作することに応答して、バスを介して、割り込みを複数のＶＭの１つのＶＭに、１つのＶＭが同時に実行中の間、ＶＭＭ／ハイパーバイザからのＶＭＭ呼び出しなしで直接転送するステップをさらに含む。
【０１０９】
例１９は、例１６〜１８のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、動作は、１つまたは複数のプロセッサを介して、複数のＶＭの第１のＶＭが、ＶＭＭ／ハイパーバイザによって構成される１つまたは複数の条件に基づいて、複数のＶＭの第２のＶＭからの割り込みとして受信されるサービス要求によって割り込みされるように構成されるかを決定するステップをさらに含む。
【０１１０】
例２０は、例１６〜１９のいずれかの特徴事項を含み、任意のオプション要素を含み、または、省略し、動作は、優先度閾値を含む１つまたは複数の条件を定義するステップをさらに含み、優先度閾値は、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ関連付けられた保留中の割り込み番号と、ＶＭＭ／ハイパーバイザおよび複数のＶＭにそれぞれ関連付けられた現在の中央演算処理装置（ＣＰＵ）の優先度番号と、ＶＭモードで動作するプロセッサ構成要素に応答して、第１のＶＭが、第２のＶＭにマップされる割り込みによって直接割り込み可能かを決定するための１つまたは複数の追加の優先度閾値と、を備える。
【０１１１】
アプリケーション（例えば、プログラムモジュール）は、ルーチン、プログラム、構成要素、データ構造等、特定のタスクを実行するもの、または、特定の抽象データ型を実施するものを含むことができる。さらに、当業者は、開示される動作が他のシステム構成によって実行可能であることを理解するものであり、他のシステム構成は、シングルプロセッサまたはマルチプロセッサ・システム、ミニコンピュータ、メインフレームコンピュータならびにパーソナルコンピュータ、携帯型コンピューティング装置、マイクロプロセッサベースまたはプログラム可能な家電等を含み、各々は、１つまたは複数の関連付けられたモバイルまたはパーソナルコンピューティング装置に動作可能に結合可能である。
【０１１２】
コンピューティング装置は、典型的には、さまざまなコンピュータ可読媒体を含むことができる。コンピュータ可読媒体は、コンピュータによってアクセス可能な任意の利用できる媒体とすることができ、揮発性および不揮発性媒体ならびに取り外し可能および取り外し不可能な媒体を含む。例えば、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を備えることができるが、これらに限定されるものではない。コンピュータ記憶媒体は、情報、例えば、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータの記憶のための任意の方法または技術で実施される揮発性および不揮発性ならびに取り外し可能および取り外し不可能な媒体を含む。コンピュータ記憶媒体（例えば、１つまたは複数のデータストア）は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光学的ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置または所望の情報を格納するのに使用可能で、コンピュータによってアクセス可能な任意の他の媒体を含むことができるが、これらに限定されるものではない。
【０１１３】
通信媒体は、典型的には、コンピュータ可読命令、データ構造、プログラムモジュールまたは変調データ信号（例えば、搬送波または他の搬送機構）における他のデータを実施し、任意の情報配信媒体を含む。「変調データ信号」という用語は、信号内の情報を符号化するように設定または変化された信号特性の１つまたは複数を有する信号を意味する。例えば、通信媒体は、有線媒体（例えば、有線ネットワークまたは直接有線接続）および無線媒体（例えば、音響、ＲＦ、赤外線および他の無線媒体）を含むが、これらに限定されるものではない。上記の任意の組み合わせもまた、コンピュータ可読媒体の範囲内に含まれなければならない。
【０１１４】
本願明細書に記載されている態様がハードウェア、ソフトウェア、ファームウェアまたはこれらの任意の組み合わせによって実施可能であることを理解すべきである。ソフトウェアで実施されるとき、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に格納または送信可能である。コンピュータ可読媒体は、コンピュータ記憶媒体と、コンピュータプログラムをある場所から他の場所に転送するのを容易にする任意の媒体を含む通信媒体と、を含む。記憶媒体は、汎用または専用コンピュータによってアクセス可能な任意の利用できる媒体でもよい。例えば、この種のコンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光学的ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶装置を備えることができる、または、所望のプログラムコード手段を命令またはデータ構造の形で実行または格納するのに使用可能かつ汎用もしくは専用コンピュータまたは汎用もしくは専用プロセッサによってアクセス可能な任意の他の媒体を備えることができるが、これらに限定されるものではない。また、任意の接続は、コンピュータ可読媒体において適切に用いられる。例えば、ソフトウェアがウェブサイト、サーバまたは他のリモートソースから、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）または無線技術、例えば、赤外線、無線およびマイクロ波を用いて送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、ＤＳＬまたは無線技術、例えば、赤外線、無線およびマイクロ波は、媒体の定義内に含まれる。本願明細書で用いられるディスク（ｄｉｓｋ／ｄｉｓｃ）は、コンパクトディスク（ＣＤ）、レーザーディスク、光ディスク、デジタル多用途ディスク（ＤＶＤ）、フロッピーディスクおよびブルーレイディスクを含み、ディスク（ｄｉｓｋ）は、通常データを磁気的に再生する場合に用いられ、一方、ディスク（ｄｉｓｃ）は、レーザーで光学的にデータを再生する場合に用いられる。上記の組み合わせもまた、コンピュータ可読媒体の範囲内に含まれなければならない。
【０１１５】
本願明細書に開示される態様に関連して記載されているさまざまな図示のロジック、ロジックブロック、モジュールおよび回路は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラム可能なロジック装置、別々のゲートまたはトランジスタロジック、別々のハードウェア構成要素または本願明細書に記載されている機能を実行するように設計されたこれらの任意の組み合わせを用いて実施または実行されてもよい。汎用プロセッサは、マイクロプロセッサでもよいが、代替的に、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラまたは状態機械でもよい。プロセッサは、コンピューティング装置の組み合わせ、例えば、ＤＳＰおよびマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアに関連する１つまたは複数のマイクロプロセッサまたは任意の他のこの種の構成として実施されてもよい。さらに、少なくとも１つのプロセッサは、本願明細書に記載されているステップおよび／または動作の１つまたは複数を実行するように動作可能な１つまたは複数のモジュールを備えてもよい。
【０１１６】
ソフトウェア実施のために、本願明細書に記載されている技術は、本願明細書に記載されている機能を実行するモジュール（例えば、手順、機能等）で実施されてもよい。ソフトウェアコードは、メモリユニット内に格納され、プロセッサによって実行されてもよい。メモリユニットは、プロセッサ内で実施されてもよいし、または、プロセッサの外部で実施されてもよく、その場合には、メモリユニットは、周知のさまざまな手段を介してプロセッサに通信可能に結合可能である。さらに、少なくとも１つのプロセッサは、本願明細書に記載されている機能を実行するように動作可能な１つまたは複数のモジュールを含んでもよい。
【０１１７】
本願明細書に記載されている技術は、さまざまな無線通信システム、例えば、ＣＤＭＡ、ＴＤＭＡ、ＦＤＭＡ、ＯＦＤＭＡ、ＳＣ−ＦＤＭＡおよび他のシステムのために用いられてもよい。「システム」および「ネットワーク」という用語は、しばしば区別せずに用いられる。ＣＤＭＡシステムは、無線技術、例えば、ユニバーサル地上波無線アクセス（ＵＴＲＡ）、ＣＤＭＡ２０００等を実施することができる。ＵＴＲＡは、広帯域ＣＤＭＡ（Ｗ−ＣＤＭＡ）およびＣＤＭＡの他の異型を含む。さらに、ＣＤＭＡ２０００は、ＩＳ−２０００、ＩＳ−９５およびＩＳ−８５６標準をカバーする。ＴＤＭＡシステムは、無線技術、例えば、グローバル・システム・フォー・モバイル・コミュニケーションズ（ＧＳＭ）を実施してもよい。ＯＦＤＭＡシステムは、無線技術、例えば、進化型ＵＴＲＡ（Ｅ−ＵＴＲＡ）、ウルトラ・モバイル・ブロードバンド（ＵＭＢ）、ＩＥＥＥ８０２．１１（Ｗｉ−Ｆｉ）、ＩＥＥＥ８０２．１６（ＷｉＭＡＸ）、ＩＥＥＥ８０２．２０、フラッシュＯＦＤＭ等を実施してもよい。ＵＴＲＡおよびＥＵＴＲＡは、ユニバーサル・モバイル・テレコミュニケーション・システム（ＵＭＴＳ）の一部である。３ＧＰＰロング・ターム・エボリューション（ＬＴＥ）は、ＥＵＴＲＡを使用するＵＭＴＳのリリースであり、ダウンリンク上のＯＦＤＭＡおよびアップリンク上のＳＣ−ＦＤＭＡを使用する。ＵＴＲＡ、ＥＵＴＲＡ、ＵＭＴＳ、ＬＴＥおよびＧＳＭは、「３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ」（３ＧＰＰ）という名称の組織からの文書に記載されている。さらに、ＣＤＭＡ２０００およびＵＭＢは、「３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ  ２」（３ＧＰＰ２）という名称の組織からの文書に記載されている。さらに、この種の無線通信システムは、しばしば対になってない無認可のスペクトルを用いるピア・ツー・ピア（例えば、携帯電話間）アドホック・ネットワークシステム、８０２．ｘｘ無線ＬＡＮ、ブルートゥース、および、任意の短距離または長距離の無線通信技術、例えば、３０ＧＨｚから３００ＧＨｚの範囲のミリ波帯域を追加で含んでもよい。
【０１１８】
単一キャリア変調および周波数領域等化を利用する単一キャリア周波数分割多元接続（ＳＣ−ＦＤＭＡ）は、開示された態様によって利用可能な技術である。ＳＣ−ＦＤＭＡは、ＯＦＤＭＡシステムに類似の性能および基本的に類似の全体の複雑性を有する。ＳＣ−ＦＤＭＡ信号は、その固有の単一キャリア構造のため、より低いピーク対平均電力比（ＰＡＰＲ）を有する。ＳＣ−ＦＤＭＡは、より低いＰＡＰＲが送信電力効率に関して移動端末に利益を与えることができるアップリンク通信において利用可能である。
【０１１９】
さらに、本願明細書に記載されているさまざまな態様または特徴は、標準プログラミングおよび／または工学技術を用いて、方法、装置または製品として実施されてもよい。本願明細書で用いられる「製品」という用語は、任意のコンピュータ可読装置、キャリアまたは媒体からアクセス可能なコンピュータプログラムを包含することを意図する。例えば、コンピュータ可読媒体は、磁気記憶装置（例えば、ハードディスク、フロッピーディスク、磁気ストリップ等）、光ディスク（例えば、コンパクトディスク（ＣＤ）、デジタル多用途ディスク（ＤＶＤ）等）、スマートカードおよびフラッシュメモリ装置（例えば、ＥＰＲＯＭ、カードスティック、キードライブ等）を含むことができるが、これらに限定されるものではない。さらに、本願明細書に記載されているさまざまな記憶媒体は、１つまたは複数の装置および／または情報を記憶するための他の機械可読媒体を表すことができる。「機械可読媒体」という用語は、命令および／またはデータを格納し、含み、および／または、伝えることができる無線チャネルおよびさまざまな他の媒体を含むことができるが、これらに限定されるものではない。さらに、コンピュータプログラム製品は、コンピュータに本願明細書に記載されている機能を実行させるように動作可能な１つまたは複数の命令またはコードを有するコンピュータ可読媒体を含んでもよい。
【０１２０】
さらに、本願明細書に開示される態様に関連して記載されている方法またはアルゴリズムのステップおよび／または動作は、直接ハードウェアで、プロセッサによって実行されるソフトウェアモジュールで、または、これらの組み合わせで実施されてもよい。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭまたは周知の任意の他の形態の記憶媒体内に存在してもよい。例示的な記憶媒体は、プロセッサに結合されてもよく、その結果、プロセッサは、情報を記憶媒体から読み出すことができ、情報を記憶媒体に書き込むことができる。代替的に、記憶媒体は、プロセッサに統合されてもよい。さらに、いくつかの態様では、プロセッサおよび記憶媒体は、ＡＳＩＣ内に存在してもよい。さらに、ＡＳＩＣは、ユーザ端末内に存在してもよい。代替的に、プロセッサおよび記憶媒体は、別々の構成要素としてユーザ端末内に存在してもよい。さらに、いくつかの態様では、方法またはアルゴリズムのステップおよび／または動作は、コードおよび／または命令の１つまたは任意の組み合わせまたは組として、コンピュータプログラム製品に組み込まれてもよい機械可読媒体および／またはコンピュータ可読媒体上に存在してもよい。
【０１２１】
本件開示の図示の実施形態の上述した記載は、要約に記載されていることを含み、包括的であることを意図しないし、または、開示された実施形態を開示された正確な形に制限することを意図しない。特定の実施形態および例が本願明細書において説明のために記載されているが、当業者が認識できるように、さまざまな変更が、この種の実施形態および例の範囲内にあるとみなすことができる。
【０１２２】
この点に関しては、開示された特徴事項は、各種実施形態および対応する図面に関連して記載されてきたが、該当する場合、他の類似の実施形態が使用可能である、または、記載された実施形態に変更および追加を行い、開示された特徴事項と同一、類似、代替または代わりの機能を、そこから逸脱することなく実行できることを理解されたい。それゆえ、開示された特徴事項は、本願明細書に記載されているただ１つの実施形態に限定されるべきではなく、むしろ、以下に添付の請求の範囲に従って幅および範囲において解釈されるべきである。
【０１２３】
特に、上述した構成要素または構造（アセンブリ、装置、回路、システム等）によって実行されるさまざまな機能に関して、この種の構成要素を記載するために用いられる用語（「手段」の参照を含む）は、特に明記しない限り、本発明の例示的な実施態様に図示される本願明細書における機能を実行する開示された構造に構造的に等しくないとしても、記載されている構成要素の特定の機能を実行する任意の構成要素または構造（例えば、機能的に等価である）に対応することを意図する。さらに、特定の特徴がいくつかの実施態様のただ１つに関して開示されてきたかもしれないが、この種の特徴は、要望されるように、および、任意の所定のまたは特定の用途に有利であるように、他の実施態様の１つまたは複数の他の特徴と組み合わせてもよい。
【図１】
2019036303.tif 000003
【図２】
2019036303.tif 000004
【図３】
2019036303.tif 000005
【図４】
2019036303.tif 000006
【図５】
2019036303.tif 000007
【図６】
2019036303.tif 000008
【図７】
2019036303.tif 000009
【外国語明細書】
2019036303.tif 000010
2019036303.tif 000011
2019036303.tif 000012
2019036303.tif 000013
2019036303.tif 000014
2019036303.tif 000015
2019036303.tif 000016
2019036303.tif 000017
2019036303.tif 000018
2019036303.tif 000019
2019036303.tif 000020
2019036303.tif 000021
2019036303.tif 000022
2019036303.tif 000023
2019036303.tif 000024
2019036303.tif 000025
2019036303.tif 000026
2019036303.tif 000027
2019036303.tif 000028
2019036303.tif 000029
2019036303.tif 000030
2019036303.tif 000031
2019036303.tif 000032
2019036303.tif 000033
2019036303.tif 000034
2019036303.tif 000035
2019036303.tif 000036
2019036303.tif 000037
2019036303.tif 000038
2019036303.tif 000039
2019036303.tif 000040
2019036303.tif 000041
2019036303.tif 000042
2019036303.tif 000043
2019036303.tif 000044
2019036303.tif 000045
2019036303.tif 000046
2019036303.tif 000047
2019036303.tif 000048
2019036303.tif 000049
2019036303.tif 000050
2019036303.tif 000051
2019036303.tif 000052
2019036303.tif 000053
2019036303.tif 000054
2019036303.tif 000055
2019036303.tif 000056
2019036303.tif 000057
2019036303.tif 000058
2019036303.tif 000059
2019036303.tif 000060