"ローダおよびフォールトハンドラを持つコンピューティングシステムにおいて、ゲストOSにおいて実行されているオペレーティングシステムOS非依存性のウイルス対策AVアプリケーションにセキュリティポリシーを実施する方法であって、前記AVアプリケーションによって、フォールトハンドラコード画像、フォールトハンドラマニフェスト、前記AVアプリケーションのメモリ位置、および、AVアプリケーションマニフェストを特定する段階と、前記ローダによって、前記フォールトハンドラコード画像および前記フォールトハンドラマニフェストを認証する段階と、前記ローダによって、第1のセキュリティレベルを持つ第1のセキュリティドメインを作成して、前記フォールトハンドラコード画像を前記第1のセキュリティドメインに対応付けられているメモリに複製して、前記フォールトハンドラの実行を開始する段階と、前記ローダによって、前記AVアプリケーションのために確保されている前記ゲストOS内のメモリページをロックするよう要求する段階と、前記フォールトハンドラによって、ゲストOSメモリページ内の選択されたコードセグメントに対してトラップを設定することによって、ゲストOSメモリ内にロードされている前記AVアプリケーションの実行可能なコード画像をロックする段階と、前記ローダによって、AVアプリケーションメモリを測定して、測定結果を前記AVアプリケーションマニフェストと比較する段階と、前記測定および前記比較によって前記AVアプリケーションの認証が成功した場合に、前記ローダによって、前記AVアプリケーションを前記第1のセキュリティドメインに対して進める段階とを備える方法。前記ローダおよび前記フォールトハンドラは、前記コンピューティングシステム内の保護実行環境内で実行される請求項1に記載の方法。前記ゲストOSで実行されている他のアプリケーションは、第2のセキュリティレベルを持つ第2のセキュリティドメイン内にあり、前記第1のセキュリティレベルは前記第2のセキュリティレベルよりも高い請求項1または2に記載の方法。前記第2のセキュリティドメインで実行されているアプリケーションは、前記フォールトハンドラが検出したトラップをトリガすることなく前記第1のセキュリティドメインでメモリを修正することはできない請求項3に記載の方法。前記第2のセキュリティドメインで実行されているゲストOSカーネルコードは、前記フォールトハンドラが検出したトラップをトリガすることなく前記第1のセキュリティドメインでメモリを修正することはできない請求項3または4に記載の方法。前記コンピューティングシステムにおいてマルウェアが存在するか否かをスキャンするべく前記AVアプリケーションを実行する段階をさらに備える請求項1から5のいずれか一項に記載の方法。前記フォールトハンドラによって、前記AVアプリケーションからのメッセージが、ロックされた前記ゲストOSメモリから生じていると確認する段階をさらに備える請求項1から6のいずれか一項に記載の方法。前記第1のセキュリティドメインへのアクセスは、前記コンピューティングシステムのプロセッサのリソースマネージャロジックによって制御される請求項1から7のいずれか一項に記載の方法。前記AVアプリケーションは、仮想マシンマネージャVMMが制御する仮想マシン内で実行される請求項1から8のいずれか一項に記載の方法。ローダおよびフォールトハンドラを持つコンピューティングシステムに、ウイルス対策AVアプリケーションによって、フォールトハンドラコード画像、フォールトハンドラマニフェスト、前記AVアプリケーションのメモリ位置、および、AVアプリケーションマニフェストを特定する手順と、前記ローダによって、前記フォールトハンドラコード画像および前記フォールトハンドラマニフェストを認証する手順と、前記ローダによって、第1のセキュリティレベルを持つ第1のセキュリティドメインを作成して、前記フォールトハンドラコード画像を前記第1のセキュリティドメインに対応付けられているメモリに複製して、前記フォールトハンドラの実行を開始する手順と、前記ローダによって、前記AVアプリケーションのために確保されているゲストOS内のメモリページをロックするよう要求する手順と、前記フォールトハンドラによって、ゲストOSメモリページ内の選択されたコードセグメントに対してトラップを設定することによって、ゲストOSメモリ内にロードされている前記AVアプリケーションの実行可能なコード画像をロックする手順と、前記ローダによって、AVアプリケーションメモリを測定して、測定結果を前記AVアプリケーションマニフェストと比較する手順と、前記測定および前記比較によって前記AVアプリケーションの認証が成功すると、前記ローダによって、前記AVアプリケーションを前記第1のセキュリティドメインに対して進める手順とを実行させるためのプログラム。前記ローダおよび前記フォールトハンドラは、前記コンピューティングシステム内の保護実行環境内で実行される請求項10に記載のプログラム。前記ゲストOSで実行されている他のアプリケーションは、第2のセキュリティレベルを持つ第2のセキュリティドメイン内にあり、前記第1のセキュリティレベルは前記第2のセキュリティレベルよりも高い請求項10または11に記載のプログラム。前記第2のセキュリティドメインで実行されているアプリケーションは、前記フォールトハンドラが検出したトラップをトリガすることなく前記第1のセキュリティドメインでメモリを修正することはできない請求項12に記載のプログラム。前記第2のセキュリティドメインで実行されているゲストOSカーネルコードは、前記フォールトハンドラが検出したトラップをトリガすることなく前記第1のセキュリティドメインでメモリを修正することはできない請求項12または13に記載のプログラム。前記コンピューティングシステムに、マルウェアが存在するか否かをスキャンするべく前記AVアプリケーションを実行させる手順をさらに実行させる請求項10から14のいずれか一項に記載のプログラム。前記コンピューティングシステムにさらに、前記AVアプリケーションからのメッセージが、ロックされた前記ゲストOSメモリから生じていると前記フォールトハンドラによって確認する手順をさらに実行させる請求項10から15のいずれか一項に記載のプログラム。コンピューティングシステムであって、前記コンピューティングシステムについてのセキュリティポリシーを実施する命令を実行するプロセッサであって、複数のセキュリティドメインへのアクセスを制御するリソースマネージャロジックを有するプロセッサと、ローダおよびフォールトハンドラを有する実行コンテナと、ウイルス対策AVアプリケーションを有するゲストオペレーティングシステムOSとを備え、前記AVアプリケーションは、フォールトハンドラコード画像、フォールトハンドラマニフェスト、前記AVアプリケーションのメモリ位置、および、AVアプリケーションマニフェストを特定し、前記ローダは、前記フォールトハンドラコード画像および前記フォールトハンドラマニフェストを認証し、第1のセキュリティレベルを持つ第1のセキュリティドメインを作成し、前記フォールトハンドラコード画像を前記第1のセキュリティドメインに対応付けられているメモリに複製し、前記プロセッサによって前記フォールトハンドラの実行を開始し、前記AVアプリケーションのために確保されているゲストOS内のメモリページをロックするよう要求し、前記フォールトハンドラは、ゲストOSメモリページ内の選択されたコードセグメントに対してトラップを設定することによって、ゲストOSメモリ内にロードされている前記AVアプリケーションの実行可能なコード画像をロックし、前記ローダは、AVアプリケーションメモリを測定し、測定結果を前記AVアプリケーションマニフェストと比較し、前記測定および前記比較に基づいた前記AVアプリケーションの認証が成功すると、前記AVアプリケーションを前記第1のセキュリティドメインに対して進めるコンピューティングシステム。前記ゲストOSで実行されている他のアプリケーションは、第2のセキュリティレベルを持つ第2のセキュリティドメイン内にあり、前記第1のセキュリティレベルは前記第2のセキュリティレベルよりも高い請求項17に記載のコンピューティングシステム。前記第2のセキュリティドメインで実行されているアプリケーションは、前記フォールトハンドラが検出したトラップをトリガすることなく前記第1のセキュリティドメインでメモリを修正することはできない請求項18に記載のコンピューティングシステム。前記第2のセキュリティドメインで実行されているゲストOSカーネルコードは、前記フォールトハンドラが検出したトラップをトリガすることなく前記第1のセキュリティドメインでメモリを修正することはできない請求項18または19に記載のコンピューティングシステム。前記コンピューティングシステムにおいてマルウェアが存在するか否かをスキャンするべく前記AVアプリケーションを実行する請求項17から20のいずれか一項に記載のコンピューティングシステム。前記フォールトハンドラは、前記AVアプリケーションからのメッセージが、ロックされた前記ゲストOSメモリから生じていると確認する請求項17から21のいずれか一項に記載のコンピューティングシステム。仮想マシンをインスタンス化するべく前記ゲストOSに設けられている仮想マシンマネージャVMMをさらに備え、前記AVアプリケーションは、前記仮想マシン内で実行されている請求項17から22のいずれか一項に記載のコンピューティングシステム。前記実行コンテナは、保護実行環境を含む請求項17から23のいずれか一項に記載のコンピューティングシステム。以下に記載する説明では、さまざまな実施形態を深く理解していただくべく、具体的且つ詳細な内容を数多く記載している。しかし、本発明のさまざまな実施形態は、記載する具体的且つ詳細な内容を利用しなくても実施し得る。また、公知の方法、手順、構成要素および回路は、本発明の具体的な実施形態をあいまいにしないよう、詳細な説明を省略している。さらに、本発明の実施形態のさまざまな側面は、さまざまな手段、例えば、集積化された半導体回路ハードウェア、コンピュータ可読格納媒体に格納されている1以上のプログラムに編成されたコンピュータ可読命令ソフトウェア、または、ハードウェアおよびソフトウェアの組み合わせを利用して、実施し得る。本開示の目的を考慮すると、ロジックという表現は、ハードウェア、ソフトウェア例えば、プロセッサの動作を制御するマイクロコードを含む、ファームウェア、または、これらに組み合わせのいずれかを意味するものとする。ある実施形態によると、AVスキャンエージェントアプリケーションプログラムは、コンピューティングシステム内の保護実行環境で実行され得る。この場合、AVスキャンエージェントには、ユーザオペレーティングシステムUOSまたは、仮想マシンマネージャVMMが利用するMAC特権を支配するMAC特権が割り当てられるとしてよい。AVスキャンエージェントは、保護実行環境を利用して保護されている、UOSエージェントを含むメモリページを構成する。このようなメモリページは、UOSまたはVMMによって付与された最も高い特権を超える有効MAC特権を持つので、UOSが侵害されても、UOS内のAVスキャンエージェントが侵害されることにはならない。本発明の実施形態は、少なくとも2つの技術、すなわち、保護実行環境マイクロコードと、オペレーティングシステムMAC抽象化とは別個のハードウェアレベルで適用されるMACラベルを組み合わせて利用する。保護実行環境内の実行コンテナによって、可能な限り最高レベルであるOSのリング0レベルよりも高いセキュリティレベルで動作しているAVスキャンエージェントランタイムについて実行を分離する。このレベルは、保護実行環境によって実施される。保護実行環境はMACセキュリティモデルを考慮するので、保護実行環境は、OSファイルシステムオブジェクトへの読出アクセスを依然として許可しつつ、AVスキャンエージェントランタイムに対する悪意ある修正を防止し得る。本発明の実施形態は、ゲストOSリソースにトラップを設定しつつ、MACラベルを均一に対応付ける。ある実施形態に係る方法では、ゲストリソースおよびページにわたって再帰的に、AVスキャンエージェントアプリケーションおよび対応付けられたデータが保護されるまで、ラベル割当とトラップ割当とを直列接続する。マルウェアによる保護されたリソースを修正しようという試みは、コンピューティングシステムのプロセッサによって検出され防止されるとしてよい。検出された攻撃から回復するには、システムインテグリティモデルに違反することなく、保護実行環境からより高いインテグリティレベルで実行されているハンドラエージェントプログラムを利用するとしてよい。MACセキュリティモデルは、システム内のオブジェクトおよびサブジェクトにセキュリティラベルを割り当てることによって、情報を保護する。このようなMACセキュリティモデルの1つとして、Biba、K.J.、IntegrityConsiderationsforSecureComputerSystems、MTR-3153、TheMitreCorporation、1977年4月に記載されているようなBibaモデルがある。Bibaインテグリティモデルは、データインテグリティを保証するように設定される一連のアクセス制御ルールを記載しているコンピュータシステムセキュリティポリシーの形式的なステート遷移システムである。データおよびサブジェクトは、所定順序に並べられたインテグリティレベルに応じてグループ分けされる。このモデルは、サブジェクトが、当該サブジェクトより高いランクのレベルのデータを破損させないように構成されるか、または、当該サブサブジェクトより低いレベルのデータによって破損させられないように構成されている。概して、データインテグリティを維持することには、権限を持たない第三者によるデータ修正を防止し、権限を持つ第三者による不正データ修正を防止し、内部コンシステンシーおよび外部コンシステンシーを保持するつまり、データは実世界を反映という目標がある。このセキュリティモデルは、データインテグリティを対象としてものであり、下方向への読出および上方向への書込は行わないという表現で表される特徴を持つ。BibaMACルールは、以下のように要約され得る。1リソースサブジェクトおよびオブジェクトにはBibaインテグリティラベルが付与され、より高いレベルがより低いレベルを支配できる。オブジェクトまたは他のサブジェクトを支配するサブジェクトは、そのリソースに下方向の書込が可能である。2より低いレベルのリソースは、より高いレベルのリソースに対して上方向の読出が可能である。Bibaモデルは、保護実行環境に適用され、デバイス、メモリ、ダイレクトメモリアクセスDMAバッファ、割り込みおよび構成スペースをBibaラベルで定型化して、Bibaアクセスルールを平等に適用できるようにするとしてよい。実行コンテナで実行されているOSがBibaセキュリティモデルを実施する保護実行環境で実行されるアプリケーションは、MACラベル制約に対応する仮想化リソースが割り当てられているとしてよい。保護実行環境のリソースマネージャコンポーネントは、実行コンテナ保護メモリとデバイスリソースとの間のハードウェアインターフェース境界を越えて特権セマンティックスを実施するよう、信頼されているとしてよい。図1は、本発明の一部の実施形態に係る実行コンテナインテグリティモデルを示す図である。保護実行環境は、実行コンテナ100で実行されているアプリケーションに対してBibaセキュリティポリシーを実施するとしてよい。実行コンテナは、普通のOS環境から分離されているコンピューティングシステム内のアプリケーション環境を含む。ある実施形態によると、実行コンテナは、機能に制約があるとしてよい。実行コンテナは、フル機能のOSを含まないとしてよい。ある実施形態によると、実行コンテナは、アプリケーションAppポリシーマネージャコンポーネント102と、1以上のアプリケーションプログラムとを含む。図1に示す例では、実行コンテナは、第1のインテグリティレベルでのアプリケーションAppL1、104と、第2のインテグリティレベルでのアプリケーションAppL2106と、第3のインテグリティレベルでのアプリケーションAppL3108とを備える。ある実施形態によると、保護実行環境は、プラットフォームリソース中央演算処理装置CPU、メモリ、チップセット、フラッシュ等を、これらのリソースへのアクセスを抽象化するハードウェアサポートを利用してパーティション化することによって、コンピューティングシステムにおいて実行コンテナを形成するためのメカニズムを提供する。これは、ユーザOSUOSのためのコンテナに加えて、UOSは省電力を目的として動作が少ない間はコアをオフラインにするので、利用されていないマルチコアプロセッサ内のコアでのサイクルを通常は利用して、他の独立した動作環境を実現し得ることを目的としている。このことが消費電力および性能に与える影響はわずかであるが、UOSのアウトオブバンドOOB動作、例えば、セキュリティ、管理、セキュアな商取引、または、ライセンス供与等に利用され得るプログラムを実行するための環境が得られる。OOB実行環境では、これらのコンテナで実行されているアプリケーションは、ユーザの改ざん、マルウェアに対して安全であり、OSエラーに対する耐性を持つ。この機能を可能なものとするべく、幾つか新しいハードウェアの特徴をプロセッサに追加するとしてよい例えば、タイマ、デバイスフィルタリング、スケジューリングバッファ、ページテーブル、割り込みマッピングサポート、フラッシュメモリ内のスペース。大規模なソフトウェアスタックがさらに必要となるとしてよくカーネル、UOSドライバ、カーネルドライバ、ファームウェア等、コアが無いパッチングサポートもまた必要になるとしてよい。各実行コンテナは、別箇に設けられているメモリ個別の拡張ページテーブルEPTを含む、自分のステート、プロセッサで実行するために必要なタイムスライスを制御する方法、および、ハードウェアデバイスに対する専用アクセスの可能性を持つデバイスフィルタリング、ローカルアドバンスドプログラマブルインタラプトコントローラAPIC、および、割り込み再マッピングによって実施される。保護実行環境およびコンピューティングシステムにおける電力効率を改善するための利用モデルの一例は、Kumar他、MethodandApparatusforCostandPowerEfficientScalableOS―IndependentServices、出願日:2007年12月26日、整理番号:第11/964,439に記載されている。当該特許文献は、本願の譲受人に譲渡されているので、参照により本願に組み込まれる。ある実施形態によると、アプリケーションは、保護実行環境リソースマネージャRM110との間で通信を行う。ある実施形態によると、RMは、コンピューティングシステムのプロセッサにおいてマイクロコードとして実施されるとしてよく、さまざまなインテグリティレベルで実行するスレッドを作成するとしてよい。ある実施形態によると、RMは、リング0またはリング3のプロセスによってアクセス不可能な別箇のハイパースレッドとして実行されるとしてよい。保護されたRMのハイパースレッドは、システムブート処理においてインスタンス化されるとしてよく、OSによってスケジューリングはされるが、修正はされないとしてよい。実行コンテナ100で実行されるアプリケーションに対してBibaセキュリティポリシーを実行するべく、RM110を実行コンテナよりも高いインテグリティレベルで動作させ、RMを修正または破壊するような実行コンテナによる試みは、セキュリティポリシーの違反と見なされるとしてよい。RMは、実行コンテナにおいてOSをロードおよび認証する処理の一部として、実行コンテナにおいて信頼を構築することができる。ある実施形態によると、実行コンテナの制御ポリシー開始によって、実行コンテナの機能にBibaセキュリティルールを実施する機能が含まれていると主張する。RMのドメインポリシーマネージャ112は、一定範囲のBibaラベルつまり、特権をアプリケーションポリシーマネージャ102に割り当てる。ドメインポリシーマネージャは、ラベルの記録を取り、ドメインがプロセッサで実行されるようにする。実行コンテナは、供給された範囲に応じて、Bibaルールを実施する。アプリケーションポリシーマネージャはこの後、この範囲の特権を、実行コンテナアプリケーションに割り当てる。これによって、実行コンテナが全てのコンピューティングプラットフォームリソースをグローバルに見ていないとしても、システム全体でBibaレベルのセマンティックスの一貫性が維持される。RM110は、複数のセキュリティドメインを提供する。ある実施形態によると、ドメインは、メモリ、ディスクストレージデバイスまたはネットワークインターフェースデバイス等の物理的リソースの一部である。この一部は、リソースマネージャによって付与されるBibaラベルに応じて分類されたデータを含む。図1に示す例では、カテゴリY1におけるインテグリティレベルがX1のドメインA114と、カテゴリY2におけるインテグリティレベルがX2のドメインB116という2つのドメインがある。物理的メモリおよびデバイス118等、コンピューティングシステムのさまざまな構成要素は、ドメインのうち1つに割り当てられるとしてよい。例えば、デバイス120および122は、ドメインAに割り当てられるとしてよく、デバイス124および126はドメインBに割り当てられるとしてよい。例えば、ダイレクトメモリアクセスDMAバッファに含まれるBibaラベルX1:Y1で指定されたメモリページは、Bibaラベル方式に応じてトラックがパーティション化されているディスクストレージデバイスに書き込まれるとしてよい。尚、ディスクストレージデバイスのトラック0-nは、ラベルX1Y1に対応し、トラックn1-mはラベルX2:Y2に対応し、以降は同様に設定される。また、DMAメモリに対して仮想化方法テーブルが作成され、一の仮想化方法レーンはラベルX1:Y2に対応し、第2の仮想化方法レーンは別のラベルX2:Y2に対応し、以降は同様に設定される。図1はさらに、アプリケーション間で試行された読出および書込のフロー管理を示す。インテグリティレベルが高いドメインAのアプリケーション128は、AppL1のインテグリティレベルX1が高インテグリティレベル以下である場合に、AppL1104に対して下方向に書込を行うとしてよい。ドメインAのアプリケーションはさらに、AppL1から読み出すとしてもよい。AppL1は、ドメインA内のアプリケーションから読み出すとしてもよい。AppL1104は、AppL2106に対して下方向に書き込みを行うとしてよい。これは、AppL2のインテグリティレベルX2が、AppL1のインテグリティレベルX1以下であるためである。AppL1はさらに、AppL2から読み出すとしてもよい。AppL2は、AppL1から読み出すとしてよい。AppL2106は、AppL3108に対して下方向に書き込みを行うとしてよい。これは、AppL3のインテグリティレベルX3が、AppL2のインテグリティレベルX2以下であるためである。AppL2はさらに、AppL3から読み出すとしてもよい。AppL3は、AppL2から読み出すとしてよい。AppL3108は、ドメインB130内のアプリケーションに対して下方向に書き込みを行うとしてよい。これは、ドメインB内のアプリケーションのインテグリティレベルは低く、AppL3のインテグリティレベルX3以下であるためである。AppL3はさらに、ドメインB内のアプリケーションから読み出すとしてもよい。ドメインB内のアプリケーションは、AppL3から読み出すとしてよい。図2は、本発明の一実施形態に係る、ゲストOSを持つ実行コンテナインテグリティモデルを示す図である。信頼がおけるBiba認識カーネルを持たないゲストOS200は、RM110によって、グローバルBiba特権が割り当てられ得る。この特権は、ゲストOSが初期化される際に、対応付けられる。この後のハードウェアに対するアクセスは、RMマイクロコードによって監視される。この結果、実行コンテナで実行されているアプリケーションとの間で共有するデバイスおよびメモリリソースは、ポリシーインピーダンス不整合のために、脅威が増加することはない。しかし、ゲストOSアプリケーションこの例ではAppL3108等は、アクセスがシステムのインテグリティに対して脅威となる場合を除いては、デバイスおよびシステムリソースに対するBibaセキュリティモデル制約を認識することなく、通常は機能し続けることができる。ある実施形態によると、RMは、BibaモデルをゲストOSアクセスに適用するべく、グローバルゲスト特権割り当て部202を有する。例えば、CPUハイパースレッドから成るBiba認識実行コンテナ100が、それぞれBibaラベルX1:Y1およびBibaラベルX2:L2が割り当てられている2つのアプリケーションL2104およびL2106を持つ場合、そして、Biba認識しないゲストOS200第2のCPUハイパースレッド内で実行内の第3のアプリケーションL3108が、リソースマネージャが割り当てたリソースを利用する必要がある場合を考える。ゲストOSに割り当てられるリソースについてデフォルトマッピングを作成するグローバルゲスト特権割り当てが行われると、リソースマネージャがBibaラベルの支配の程度を算出することにより、明確な結果が得られる。Biba認識しないゲストOSは、ゲストOSがアクセスした場合に、Bibaラベルが付与されたリソースによって混乱することはない。AVスキャンエージェントを含むゲストOSにおけるメモリページを保護する新たな方法によって、ゲストOS内のマルウェアによる攻撃に対してこれらのページを硬化するとしてよい。保護実行環境を用いてこのようなメモリページ保護構成およびランタイムソフトウェアを実行することによって、ゲストOSに含まれる保護構成要素の動作時のセキュリティレベルを高くすることができ、そのセキュリティポリシーはシステム全体のポリシーと一致する。図3は、本発明の実施形態に係る、AVアプリケーションを持つゲストOSを備える実行コンテナインテグリティモデルを示す図である。ある実施形態によると、AVスキャンエージェントのインテグリティを保護できるよう、コンピューティングシステムによって一連のドメインを構築するとしてよい。ある実施形態によると、一連のドメインは、変更があるか否か監視されるゲストOSメモリについて作成されるとしてよい。一部のドメインは、ゲストOS200内の保護リソース303を含むとしてよい。少なくとも1つのドメインは、ゲストOS200内の非保護リソース306を含むとしてよい。ある実施形態によると、ドメインは、プロセッサ内のマイクロオペレーションμopスレッドと対応付けられているとしてよい。ドメインA114:最も高いインテグリティレベルSYS_HIこのドメインは、コンピューティングシステムによって構築されるとしてよく、最も高いインテグリティレベルを持つ。これは、コンピューティングハードウェアレジスタ、メモリ、RM110およびRM制御デバイス、ならびに、メモリのマニフェストおよび領域を受け取って、メモリの当該領域が当該マニフェストに一致すると確認し、アプリケーションポリシーマネージャ内に格納されているルートオブトラストRootofTrustに基づいて署名の有効性を検証することができるアプリケーションポリシーマネージャ102から成る。ドメインB:116ドメインB<ドメインAドメインBは、AVスキャンエージェント保護メカニズムをサポートするために実行されている保護実行環境100のアプリケーションを含む。これらのアプリケーションは、実行コンテナ100で実行されている他のプログラムと共に、RM110によって検証されるとしてよい。構成要素は、ランタイム/軽量OS不図示、ローダ302、フォールトハンドラ304、ドメインCAVアプリケーション300にサービスを提供するAppマニフェスト322およびAppポリシーマネージャ102を含み、ドメインCAVアプリケーション300を認証し、実行コンテナ100にAVアプリケーションをインストールする。ドメインC310:ドメインC<ドメインBこれは、AVアプリケーションが実行されるドメインである。ドメインCのAVアプリケーションは、実行コンテナ100のアプリケーションよりもインテグリティレベルが低いが、コンピューティングシステムの残りよりはインテグリティレベルが高い。これは、このドメインにおけるアプリケーションのインテグリティは、デジタル署名およびドメインAのアプリケーションポリシーマネージャ102によって認証されるからである。ある実施形態によると、このドメイン、実行コンテナ100で実行されているフォールトハンドラ304、および、保護ページ内のユーザゲストOS200で実行されているAVアプリケーション300で、には少なくとも2つのアプリケーションがあるとしてよい。AVアプリケーションは、ゲストOS固有情報を持つが、ドメインDよりも高いBibaモードで保護する必要があるとしてよい。ドメインC-1、C-2、C-n:i>jの場合、ドメインC-i<ドメインC-j。ドメインC-2<ドメインC-1<ドメインCドメインCのアプリケーションAVアプリケーション300およびフォールトハンドラ304は、ドメインCの下方に、高い粒度の一連のドメインを形成する。書込トラップがこれらのメモリ領域の周囲に配置されているので、ゲストOS内のメモリをこれらのドメインに配置する。これらのドメインは、メモリ領域内の値はマルウェアが無いか否かについては分からないという点でドメインCよりもインテグリティレベルが低いが、トラップが設定されてから変化していないことが分かっている。これは、含まれているソフトウェアがマニフェストによって署名されており、当該ソフトウェアが作成されてから当該ソフトウェアが変化していないことを示すドメインCとは対照的である。また、ドメインD内においてメモリはいつでも変更可能であるという点において、ドメインD以下で説明する、つまり、ゲストOS環境とも対照的である。ある実施形態によると、これらのドメインは、AVアプリケーションが保護アイテムにおけるインテグリティレベルの違いを識別できるように、利用されるとしてよい。例えば、プロセッサのグローバル記述子テーブルレジスタGDTR内の値は、GDTRがドメインAのハードウェアに格納されているので、高い確率で知ることができる。一方、物理メモリのマッピングの値の線形性は、先に構築されたドメインC-iに格納されている値に応じて決まるとしてよい。このため、ドメインC-iと同じインテグリティレベルで値を構築することができない。このため、独自のドメインC-i1を持つ必要がある。ドメインD312:ドメインD<ドメインC-n<ドメインCある実施形態によると、ドメインDは、ゲストアプリケーション308がアクセス可能な非保護リソース306の全てに割り当てられているグローバルドメインであるとしてよい。ドメインDは、ゲストのリング0のアプリケーションおよびカーネルを含む。また、リング3のアプリケーションソフトウェアを全て含む。ゲストOSストレージリソースは、物理的ストレージデバイスの一パーティションから割り当てられる。尚、パーティション320は、ドメインD内のラベルX4:Yのトラックt0-tnから成る。保護ゲストOSメモリページ303に含まれているAVアプリケーション300は、メモリページトラップを持つ。メモリページトラップは、デリファレンスされると、フォールトハンドラ304にBibaMACポリシーを参照させて、デフォルトゲストOSBibaMACラベルは、ドメインCを含むデフォルトラベルを支配するラベルで無効にされ得る。これらのメモリページはまとめて318と示している。実行コンテナ100が消費する物理リソースは、メモリおよびストレージリソース314および316から割り当てられる。実行コンテナ100は、これらのリソースに対して、ラベル分離およびパーティション化によって実施される排他的なアクセスを持つ。アプリケーションマニフェスト322は、ドメインA114に一致するラベルが割り当てられた実行コンテナストレージ314に格納されているとしてよい。図4は、本発明の一実施形態に係る、Cドメインを構築するためのフローチャート400を示す図である。ブロック402において、AVアプリケーションコンポーネント300が、プロセッサ命令を用いて、フォールトハンドラコンポーネント304のコード画像、フォールトハンドラのマニフェスト、AVアプリケーションのメモリ位置、および、AVアプリケーションマニフェスト322を特定する。ブロック404において、ローダコンポーネント302は、アプリケーションポリシーマネージャ102との間で、フォールトハンドラ304のコード画像およびアプリケーションマニフェスト322の認証を行う。アプリケーションマニフェストおよびフォールトハンドラの認証に成功すると、処理を続ける。ローダは、ドメインC310を作成し、フォールトハンドラコード画像をドメインCに対応付けられているメモリに複製し、プロセッサによるフォールトハンドラコードの実行を開始する。ブロック406において、ローダ302は、フォールトハンドラ304に対して、AVアプリケーション300について確保されているゲストOS200内のメモリページをロックするように要求する。ブロック408において、フォールトハンドラは、ゲストOSメモリ318内の選択されたコードセグメントに対してトラップを設定することによって、ゲストメモリに現在ロードされているAVアプリケーション300の実行可能コード画像をロックする。ゲストOSの保護されたページは、最初はドメインDにある。ブロック410において、ローダは、AVアプリケーションメモリを測定して、AVアプリケーションマニフェスト322と比較する。ゲストOS内の攻撃者が間違ったページアドレスを供給してフォールトハンドラを既にスプーフィングしている場合、インテグリティチェックは失敗するはずである。このため、ローダは、インテグリティチェックを実行する際にドメインD内のページテーブルに依存することはなく、ドメインAで実行されているアプリケーションポリシーマネージャ102によって認証されているマニフェストに依存する。ブロック412において、ローダがAVアプリケーション画像のインテグリティを認証して条件を設定し、他のゲストOSアプリケーションまたは、ゲストOSカーネルコードがページトラップをトリガすることなく当該画像を修正できないフォールトハンドラが検出可能ようにすると、ローダはAVアプリケーションをドメインCに進める。ある実施形態によると、この時点でフォールトハンドラ304およびAVアプリケーション300が同じドメイン内にあり、プロセッサを介して、ハードウェア実装されたSendMessageコマンドをやり取りすることができる。ブロック414において、フォールトハンドラは、AVアプリケーションから受信したメッセージが全て、上述したように定義およびロックされたメモリ領域内から生じていることを確認する。コードセグメントおよびデータセグメントの両方をドメインCに含まれている。メッセージ用のコードセグメントは、フォールトハンドラのコードセグメントで、ロックされると共にドメインCに配置され、AVアプリケーションはこれらのページに対するアクセスする許可が与えられるとしてよい。この時点において、ドメインCが構築されている。ドメインCは、実行コンテナ100で実行されているフォールトハンドラと、ゲストOS200で実行されているAVアプリケーション300とから成る。これらのコンポーネントは共に、マニフェストによる認証が済んでおり、メモリトラップはソフトウェア画像のインテグリティを維持する。AVアプリケーションはこの時点で、マルウェアの有無を確認するべくスキャンを行うべく実行されるとしてよい。図5は、本発明の一実施形態に係る、一連のリソーストラップメカニズムに対応する縦列接続されたBibaセキュリティレベルを示す図である。最初のカーネルトラップを設定することは、ドメインC-1、C-2等を構築または変更することを含む。リソースを異なる複数のドメインに入れることによって、システム全体のセキュリティが改善される。図5は、図4のブロック408の詳細な内容をさらに示す図である。ゲストOS200は、ドメインC用の保護リソース領域500を含むとしてよい。保護リソース領域500は、ある実施形態によると、AV設定プログラム510を含む。ゲストOSはさらに、ドメインD用の非保護リソース領域306、および、ドメインD用の保護リソース領域508を持つとしてよい。非保護リソース領域306は、ある実施形態によると、非保護ページ520を含む。ドメインC-1502は、サブCドメインの中で最も高いインテグリティレベルを持つ。これは、外部の認証者によって署名されたマニフェストで認証されていないので、マルウェアを含んでいないと保証することはできない。サブCドメインについては、トラップが設定された時点からは非認証ソフトウェアによる値の変更はないと主張されるしかし、トラップを設定する前に非認証ソフトウェアが情報を変更していないという保証はない。ある実施形態によると、ドメインC-1502は、最初に構築されるとしてよく、保護すべきレジスタ512にあるカーネル要素全てから構成される。ドメインC-2504はこの後、正しいアドレスを取得するべく、ドメインC-1の要素を用いて構築されるとしてよい。ドメインC-1は、非認可の変更があるか否かを監視する必要があるシステムのレジスタ514を含むSYSENTERMSR、CR3等。そして、ドメインC-2は、アドレス変換ページテーブルPTおよびページフォールトハンドラPFH514から成る。これらのドメインが構築されると、ドメインC-1およびC-2のインテグリティに左右されるC-iドメイン例えば、ドメインC-N506がさらに形成されるとしてよい。更なるドメインnは、AVスキャナ518等、ページフォールトトラップを利用してそれらのページを保護するデバイスドライバ516およびアプリケーションを含むとしてもよい。図6は、本発明の一実施形態に係る、サブCドメインの構築を説明するためのフローチャート600である。ブロック602において、AVアプリケーション300は、トラップすべきカーネルレジスタ512、および、これらのレジスタを修正可能なカーネル内のコード位置、例えば、CR3の値をゲストOS200のコンテクストのために変更可能なスケジューリングソフトウェア等を特定する。ブロック604において、AVアプリケーションは、選択されたレジスタにトラップを設定するべくフォールトハンドラ304にメッセージとレジスタを修正可能なコード位置のリストとを送る。ブロック606において、フォールトハンドラは、レジスタおよびコード位置を、ドメインC-1502に入れて、レジスタおよび認証されたコード位置に対して書込トラップを設定する。この時点において、レジスタに対する非認証アクセスは全て、ドメインD306からドメインC-1502への書き込みであるので、保護実行環境システム内でトラップを生成し、Biba違反を生成する。ブロック608において、AVアプリケーションは、ドメインC-1内のレジスタの値を利用して、ドメインC-2504内で保護を必要とするシステムのページテーブル514を特定する。ブロック610において、AVアプリケーションは、選択されたページテーブルエントリに対してトラップを設定するべくフォールトハンドラにメッセージを送り、これらの位置を修正可能な位置のリストを含める例えば、ページフォールトハンドラ。ブロック612において、フォールトハンドラは、選択されたページテーブルエントリ、ページテーブルを修正するよう認証されたコード位置に対してトラップを設定し、メモリおよびコード位置をドメインC-2504に入れる。この時点において、ページテーブルへの非認証アクセスは全て、ドメインD306からドメインC-2504への書き込みであるので、保護実行環境システムにおいてトラップを生成し、Biba違反を生成する。認証される処理は全て、ドメインC-2504からドメインC-2またはドメインC-2からドメインD306への書き込みである。この時点において、コアシステムカーネルレジスタおよびページテーブルは、保護されている。これによって、システムは、コア要素に対してより複雑なトラップを構築することができる。図7は、本発明の一実施形態に係る、アプリケーショントラップの設定を説明するためのフローチャート700である。図7は、ドメインC-iを構築または変更するべく、図6のブロック604の実施形態をさらに詳細に説明するための図である。この処理は、AVアプリケーションがカーネルまたはユーザメモリの一領域を保護しなければならないと判断すると常に、または、システム状態が変化して、特定のメモリ領域に対するアクセスを持たなかったコードの一領域が今や、当該領域へのアクセスを必要とする場合に行われる。ブロック702において、AVアプリケーション300は、保護する必要があるカーネルまたはアプリケーションメモリ内の位置を決定する。AVアプリケーションは、ゲストOSハードウェアレジスタ512およびページテーブル514を読出し、トラップの位置を算出する。これらの値は、ドメインC-1502またはドメインC-2504にある。ブロック704において、AVアプリケーションは、必要なメモリ位置にトラップを設定するべくフォールトハンドラ304にメッセージと、これらのメモリ位置を修正可能なコード位置のリストを送信する。ブロック706において、フォールトハンドラは、メモリ位置、および、このメモリ位置を修正する権利を持つ全てのコード位置に対して、書込トラップを設定する。フォールトハンドラはこの後、これらの要素をドメインC-iに入れる。iは、jがトラップの位置およびアドレスの算出に用いられる最も高いドメインレベルである場合、j-1と定義される。保護されていない領域からの非認証アクセスは全て、ドメインD306からドメインC-iへの書込であるので、Biba違反を生成する。しかし、ドメインC-iでの書込は、ドメイン内に複数の領域がある場合、識別する必要がある一のメモリ領域への書込の権限が与えられている位置からの書込は、ドメインの全ての領域には許可できない。図8は、本発明の別の実施形態に係る、アプリケーショントラップの設定を説明するためのフローチャート800である。このプロセスは、図7のプロセスの代わりとして利用されるとしてよい。ブロック802において、AVアプリケーションは、カーネルまたはアプリケーションコード内の一の位置がドメインC-i内のメモリ位置へのアクセスを必要としていると判断する。これは、新しいドライバまたはその他のソフトウェアのインストールが原因であるとしてよい。ブロック804において、AVアプリケーションは、コード領域をドメインC-i内に含めるよう求めるメッセージをフォールトハンドラに送る。ブロック806において、フォールトハンドラは、コード位置に対して書込トラップを設定し、コード位置をドメインC-iに入れる。これまで、AVアプリケーションは、保護実行環境システム内の一のエンティティとして説明してきたが、ある実施形態によると、AVアプリケーションは、複数の部分から構成されており、これらの部分はシステム内の複数のドメインに分散しているとしてもよい。例えば、ある実施形態によると、AVアプリケーションは、ゲストOSオブジェクトに対してトラップを設定するAV設定Configアプリケーション510、および、マルウェア感染を検索するべく保護されていないページおよびファイルを読出すAVスキャナアプリケーション518という2つのコンポーネントから成るとしてよい。この分割モデルでは、AV設定コンポーネントはドメインC500に上昇させるが、AVスキャナ518は相対的に低いドメインに留まるとしてよい。一実施形態によると、AVスキャナは、サブCドメインのうち最も低いサブCドメイン、ドメインC-n506に入れられるとしてよく、AVスキャナは、相対的に高いドメインの全てのインテグリティに左右されるが、ドメインDのマルウェアによるAVスキャナへの書込はBibaフォールトを生成するので、ドメインD306のマルウェアからの攻撃からは隔離される。Bibaをリングモードで用いる場合、AVスキャナ518は、ドメインC-n506で動作している間、ドメインDのオブジェクトを読み出すことが許可される。感染したオブジェクトが検出されると、AVスキャナはドメインDにおいてサブプロセスを生成して、感染したオブジェクトを削除または隔離するとしてよい。AVスキャナは、ドメインC-nでは実行できないので、マルウェアを攻撃することによって脅威を感じることはない。AVスキャナは、新しいラベルをハードディスクドライブHDDまたはソリッドステートドライブSSD320またはAVスキャンに合格したメモリページに割り当てるとしてよい。この新しいラベルは、Dよりも上のドメインであり、ドメインC-nよりも下のドメインである。リソースマネージャRM110は、ページトラップがアクティブ化されている間にラベル変更要求がAVスキャナページから生成されたこと、および、AVスキャナラベルがドメインC-n以上のドメインにあることを確認することで、AVスキャナが信頼されており例えば、ページトラップ保護が実行されているラベル変更をスキャン済みのオブジェクトに対して実行することを確認する。低ウォーターマークモードでBibaを用いる場合、AVスキャナは、自動的にラベルをドメインDに切り替えてスキャンを実行する。感染したオブジェクトが検出されると、スキャナは即座に削除または隔離を行うとしてよいが、クリーンなオブジェクトのラベルは変更しないとしてよい。しかし、AVスキャナは、上述したように、AVスキャナがドメインC-nの要件を満たしていると主張することによって、自身のラベルをドメインC-nに変更するとしてよい。この要件とは、トラップが全てのクリティカルコードおよびデータ領域に配置済みであること、および、これらのトラップは、AVスキャナがドメインDで動作している間に配置されている、というものである。AVスキャナ518は、リソーストラップのみでドメインDのマルウェアに対して保護されている。Biba制約は課されていない。Bibaを厳密モードで利用する場合、AVスキャナは、オブジェクトスキャンを実行し、隔離する前にドメインDへのラベル変更を要求しなければならない。そして、完了すると、AVスキャナは、クリーンなオブジェクトにラベルを付与し直すべく、ドメインC-nへのラベル変更を要求しなければならない。ある実施形態によると、AVスキャナをドメインC-nに入れるには、以下のような処理を行うとしてよい。AV設定アプリケーション510が、保護が必要なAVスキャナアプリケーション518内の位置を決定する。AV設定アプリケーションは、フォールトハンドラ304に対して、適切なAVスキャナアプリケーションの位置にトラップを配置するよう信号を送る。フォールトハンドラは、適切なトラップを設定し、位置をドメインC-n506内に入れる。これは、ドメインC-nが他の全てのサブCドメインに依存しているためである。図9は、本発明の実施形態に係る、トラップの実行を説明するためのフローチャート900である。いずれかの時点において、トラップが設定された位置に対して書込が発生する。これによって、フォールトが生成されるAVスキャナメカニズムによって、または、相対的に低いインテグリティのドメインから相対的に高いインテグリティのドメインへの書込によるBiba違反によって生成される。ブロック902において、ゲストOS200のアプリケーションまたはカーネルが、トラップが設定されているメモリに書き込む場合、ページアクセスはRM110によってフラグが立てられ、フォールトハンドラ304が呼び出される。ブロック904において、RMはレジスタから一連のシステムステートテーブルを生成する。ブロック906において、RMはフォールトハンドラを呼び出して、システムステートテーブルをフォールトハンドラに渡す。ステートテーブルは、正しく構築されていると信頼されている。ブロック908において、フォールトハンドラは、アクセスを試みるメモリのドメイン、および、メモリにアクセスしているコードのドメインを決定する。ブロック910において、試みたメモリアクセスがこのメモリのドメインと同じかそれより高いドメインからのアクセスであり、メモリにアクセスしようと試みているコード位置が当該メモリ位置を変更することが許可されている範囲に含まれている場合、フォールトハンドラは処理を許可する。ブロック912において、試みたメモリアクセスがこのメモリのドメインよりも低いドメインからのアクセスである場合、フォールトハンドラはこのアクセスでメモリを変更することを許可しない。図10は、本発明の別の実施形態に係る、仮想マシンマネージャVMM1002に適用される場合の、ゲストOSを持つ実行コンテナインテグリティモデルを示す図である。VMMは、仮想化技術の分野で良く知られているので、利用されるとしてよい。ある実施形態によると、VMMは、一般的に理解されているBibaセキュリティポリシーを実施することができる。RM110は、VMMよりも高いインテグリティレベルで動作し、VMMによるRMを修正または破損させようという試みはセキュリティポリシーの違反となる。RMは、VMMのロード処理の一環としてVMM内で信頼を構築することができ、VMM機能をアサートする開始制御ポリシーはBibaセキュリティルールを実施する機能を含むことを確認することができる。RM内のドメインポリシーマネージャ112は、所与の範囲のBibaラベルつまり、特権を、VMM内のVMポリシーマネージャ1004に割り当てる。VMMは、供給された範囲に応じてBibaルールを実施する。VMM内のVMポリシーマネージャはこの後、この範囲の特権をVMコンテナに割り当てる。これによって、VMMは全てのコンピューティングプラットフォームリソースをグローバルに見ていないとしても、システム全体でBibaレベルのセマンティックスの一貫性が保証される。例えば、実行コンテナ100内のAppL1104等のアプリケーションプログラムが特権としてドメインA114を割り当てられており、ゲストVM11008で実行されているAppG11006等のアプリケーションが特権としてドメインA114を割り当てられている場合、両方のアプリケーションは同様の特権を用いて動作する。さらに、AppL1104がAppL2106によって利用できるように情報の格下げを行うと、AppL2は、システム全体のセキュリティポリシーに違反することなく、ゲストOS200環境内のゲストVM21012で実行されるAppG21010にこの情報を通信することができる。同様に、AppG21010は、情報の格下げを行って、セキュリティポリシーに違反することなく、ゲストVM31016で実行されておりドメインC310を持つAppG31014、および/または、AppL3108と共有することができる。セキュリティポリシーモデルが共通して理解されているので、システム構成要素同士のやり取りを柔軟に行うことができる一方、システムのセキュリティを守るという目的は変わらず維持される。保護実行環境よりも低い最高レベルの信頼性をゲストOS環境が持つと判断される場合、RMは、所与の範囲のうち、VMM環境に割り当てられていない上位にある特権レベルを確保する。VMMが侵害され、割り当てられた範囲外の特権を割り当てられている場合、RMは、メモリおよびデバイスアクセスに対して範囲チェックを実行して不正行為を検出することができる。VMM環境がセキュア開始方式例えば、トラステッドエグゼキューションテクノロジTXTを利用して開始される場合、RMは、VMMを信用してVMページに対する範囲チェックを実施させるとしてよい。これによって、性能に良い影響が出るとしてよい。Bibaセキュリティポリシーの一貫性をシステム全体で維持しつつ、保護実行環境と仮想化とを組み合わせるとしてよい。図11は、本発明の実施形態に係る、仮想マシンがAVアプリケーションを含み、VMM1002に適用される場合の、ゲストOS200を備える実行コンテナインテグリティモデルを示す図である。保護実行環境は、VM11008内の相対的に高い特権のAppにドメイン境界を実施するために利用されるとしてよい。VM1は、同じ特権レベルでVMMによって信頼されている例えば、ドメイン0は、VMMとして動作するVMである。しかし、VMが侵害されると、VMはVMMの動作に悪影響を与える可能性がある。図11は、メモリサンドボックス技術を利用して保護されているVM11008にアプリケーションAppG11006をポピュレートするべく利用される実行環境1022を示す図である。VMMは、RM110のドメインポリシーマネージャ112によって管理され、一般的に理解されるポリシーシンタックスおよびポリシーセマンティックスを利用して、VMに対してBiba特権を実施する。さらなるページ保護がVM11008内のAppG11006に適用され得る。アプリケーションポリシーマネージャ102は、Bibaポリシーが割り当てられるとしてよく、AppG11006に割り当てられるBibaラベルは、VMMポリシーマネージャ1004がVM11008に割り当てたラベル範囲内に入っている。Bibaを認識しないVM1008内のゲストOSの場合、アプリケーション1006のページ1018は、VMM1002によってVMExitトラップを生成するように登録され得るので、VMマニフェスト1020は、VMExitトラップを構築するためのポリシーを含み、Bibaを認識するVMM1002によって割り当てられるデフォルトラベルを無効化するBibaラベル割り当てを含む。Bibaを認識するVM1012および1016内のゲストOSの場合、VMは、VMが作成したラベル割り当てに応じてメモリページを割り当てる。本発明の実施形態は、プロセッサのマイクロコードによって実施される強制インテグリティポリシーを実装することによって、保護実行環境を提供する。インテグリティルールは、形式が定められ例えば、Biba、検証およびセキュリティ評価を簡略化する。プロセッサハードウェアマイクロコードで実施することによって、侵害されたOSは容易にセキュリティポリシーを無効化できないことになる。本発明の実施形態は、仮想化環境および非仮想化環境の両方に適用されるとしてよく、任意のオペレーティングシステム環境で適用されるとしてよい。図12は、コンピューティングシステム1200の実施形態を示すブロック図である。さまざまな実施形態によると、システム1200の構成要素のうち1以上は、本発明の一部の実施形態を参照しつつ本明細書で説明する処理のうち1以上を実行可能なさまざまな電子デバイスで提供されるとしてよい。例えば、システム1200の構成要素のうち1以上は、本明細書で説明した処理に応じて、例えば、命令を処理することによって、サブルーチンを実行することによって等、図1から図11を参照しつつ説明した処理を実行するべく利用されるとしてよい。また、例えば、図12および/または図13を参照して本明細書で説明するさまざまなストレージデバイスは、データ、演算結果等を格納するべく利用されるとしてよい。一実施形態によると、ネットワーク1203を介して例えば、ネットワークインターフェースデバイス1230および/または1330を介して受信するデータは、プロセッサ1202および/または図13の1302にあるキャッシュ例えば、ある実施形態ではL1キャッシュに格納されるとしてよい。これらのプロセッサは、本発明のさまざまな実施形態に応じた本明細書で説明する処理を適用するとしてよい。より具体的には、コンピューティングシステム1200は、相互接続ネットワークまたはバス1204を介して通信を行う1以上の中央演算処理装置CPU1202またはプロセッサを備えるとしてよい。このため、本明細書で説明したさまざまな処理は、一部の実施形態において、プロセッサによって実行されるとしてよい。さらに、プロセッサ1202は、汎用プロセッサ、ネットワークプロセッサコンピュータネットワーク1203を介してやり取りされたデータを処理するもの、または、他の種類のプロセッサ縮小命令セットコンピュータRISCプロセッサまたは複合命令セットコンピュータCISCプロセッサを含むを含むとしてよい。さらに、プロセッサ1202は、シングルコア構成またはマルチコア構成であってよい。マルチコア構成のプロセッサ1202は、同一集積回路ICダイ上にさまざまな種類のプロセッサコアが集積化されているとしてよい。また、マルチコア構成のプロセッサ1202は、対称マルチプロセッサまたは非対称マルチプロセッサとして実現されるとしてよい。さらに、図1から図11を参照しつつ説明した処理は、システム1200の1以上の構成要素によって実行されるとしてよい。ある実施形態によると、プロセッサ例えば、プロセッサ11202-1は、ハードワイヤードロジック例えば、回路またはマイクロコードとしてリソースマネージャRM110を構成するとしてよい。チップセット1206はさらに、相互接続ネットワーク1204との間で通信を行うとしてよい。チップセット1206は、グラフィクスおよびメモリ制御ハブGMCH1208を含むとしてよい。GMCH1208は、メモリ1212と通信を行うメモリコントローラ1210を含むとしてよい。メモリ1212は、プロセッサ1202またはコンピューティングシステム1200内の任意のその他のデバイスによって実行される命令シーケンスを含むデータを格納するとしてよい。さらに、メモリ1212は、本明細書で説明するプログラムまたはアルゴリズムのうち1以上、例えば、実行コンテナ100、ゲストOS200、コンパイラ1213、実行ファイルに対応する命令、マッピング等を格納するとしてよい。このデータ命令を含むと同じもの、または、少なくともその一部は、ディスクドライブ1228、および/または、プロセッサ1202内の1以上のキャッシュに格納されているとしてよい。本発明の一実施形態によると、メモリ1212は、1以上の揮発性ストレージまたはメモリデバイス、例えば、ランダムアクセスメモリRAM、ダイナミックRAMDRAM、シンクロナスDRAMSDRAM、スタティックRAMSRAM、または、その他の種類のストレージデバイスを含むとしてよい。ハードディスク等の不揮発性メモリはさらに、利用されるとしてよい。複数のプロセッサおよび/または複数のシステムメモリ等、他のデバイスがさらに、相互接続ネットワーク1204を介して通信を行うとしてよい。GMCH1208はさらに、ディスプレイ1216と通信を行うグラフィクスインターフェース1214を有するとしてよい。本発明の一実施形態によると、グラフィクスインターフェース1214は、アクセラレーテッドグラフィクスポートAGPを介して、ディスプレイ1216との間で通信を行うとしてよい。本発明の一実施形態によると、ディスプレイ1216は、例えば、ビデオメモリまたはシステムメモリ等のストレージデバイスに格納されている画像をデジタル形式からディスプレイ1216で解釈および表示される表示信号に変換する信号変換器を介してグラフィクスインターフェース1214との間で通信を行うフラットパネルディスプレイであってよい。インターフェース1214が生成する表示信号は、ディスプレイ1216で解釈された後に表示される前に、さまざまな制御デバイスを通過するとしてよい。ハブインターフェース1218によって、GMCH1208および入出力I/O制御ハブICH1220が通信できるようになるとしてよい。ICH1220は、コンピューティングシステム1200と通信するI/Oデバイスに対するインターフェースとなるとしてよい。ICH1220は、ペリフェラルコンポーネントインターコネクトPCIブリッジ、ユニバーサルシリアルバスUSBコントローラ、または、その他の種類の周辺機器であるブリッジまたはコントローラ等、周辺機器であるブリッジまたはコントローラ1224を介して、バス1222と通信を行うとしてよい。ブリッジ1224は、プロセッサ1202と周辺デバイスとの間のデータ経路を提供するとしてよい。他の種類のトポロジーを利用するとしてもよい。また、複数のバスは、例えば、複数のブリッジまたはコントローラを介して、ICH1220と通信を行うとしてよい。さらに、ICH1220と通信を行う他の周辺機器には、本発明のさまざまな実施形態によると、インテグレーテッドドライブエレクトロニクスIDEまたは小型計算機システムインターフェースSCSIハードドライブ、USBポート、キーボード、マウス、パラレルポート、シリアルポート、フロッピー登録商標ディスクドライブ、デジタルアウトプットサポート例えば、デジタルビデオインターフェースDVIまたは他のデバイスが含まれるとしてよい。バス1222は、コンピュータネットワーク1203と通信を行うオーディオデバイス1226、1以上のディスクドライブ1228およびネットワークインターフェースデバイス1230と通信を行うとしてよい。ある実施形態によると、デバイス1230は、有線通信または無線通信を実行可能なネットワークインターフェースコントローラNICであってよい。他のデバイスは、バス1222を介して通信を行うとしてよい。また、さまざまな構成要素例えば、ネットワークインターフェースデバイス1230は、本発明の一部の実施形態によると、GMCH1208と通信を行うとしてよい。また、プロセッサ1202、GMCH1208、および/または、グラフィクスインターフェース1214を組み合わせて一のチップを形成するとしてよい。さらに、コンピューティングシステム1200は、揮発性メモリおよび/または不揮発性メモリまたはストレージを備えるとしてよい。例えば、不揮発性メモリは、リードオンリーメモリROM、プログラマブルROMPROM、消去可能PROMEPROM、電気的EPROMEEPROM、ディスクドライブ例えば、1228、フロッピー登録商標ディスク、コンパクトディスクROMCD-ROM、デジタルバーサティルディスクDVD、フラッシュメモリ、光磁気ディスク、または、電子データ命令を含むを格納可能な他の種類の不揮発性機械可読媒体のうち1以上を含むとしてよい。ある実施形態によると、システム1200の構成要素は、図13を参照しつつ説明するように、ポイントツーポイントPtP構成にしたがって構成されるとしてよい。例えば、プロセッサ、メモリおよび/または入出力デバイスは、多くのポイントツーポイントインターフェースで相互接続するとしてよい。より具体的には、図13は、本発明の一実施形態に係る、ポイントツーポイントPtP構成にしたがって構成されているコンピューティングシステム1300を示す図である。具体的には、図13は、プロセッサ、メモリおよび入出力デバイスが多くのポイントツーポイントインターフェースで相互接続されているシステムを示す。図1から図12を参照しつつ説明した処理は、システム1300の1以上の構成要素によって実行されるとしてよい。図13に示すように、システム1300は、複数のプロセッサを備えるとしてよい。分かり易いように、このうち2つのみ、プロセッサ1302および1304を図示している。プロセッサ1302および604はそれぞれ、メモリ1310および1312と結合されるべく、ローカルメモリコントローラハブMCH1306および1308一部の実施形態では、図12のGMCH1208と同一または同様であってよいを有するとしてよい。メモリ1310および/または1312は、図13のメモリ1212を参照しつつ説明したようなさまざまなデータを格納するとしてよい。プロセッサ1302および1304は、図13のプロセッサ1302を参照しつつ説明したような任意の適切なプロセッサであってよい。プロセッサ1302および1304はそれぞれ、PtPインターフェース回路1316および1318を用いて、ポイントツーポイントPtPインターフェース1314を介してデータのやり取りを行うとしてよい。プロセッサ1302および1304はそれぞれ、ポイントツーポイントインターフェース回路1326、1328、1330および1332を用いて、それぞれのPtPインターフェース1322および1324を介して、チップセット1320との間でデータのやり取りを行うとしてよい。チップセット1320はさらに、PtPインターフェース回路1337を用いて、高性能グラフィクスインターフェース1336を介して、高性能グラフィクス回路1334との間でデータのやり取りを行うとしてよい。本発明の少なくとも1つの実施形態は、プロセッサ1302および1304を用いることによって提供されるとしてよい。例えば、プロセッサ1302および/または1304は、図1から図11の処理のうち1以上を実行するとしてよい。しかし、本発明の他の実施形態は、図13のシステム1300内の他の回路、ロジックユニット、またはデバイスで実現されるとしてもよい。さらに、本発明の他の実施形態は、図13に示す複数の回路、ロジックユニットまたはデバイスに分散して設けられているとしてもよい。チップセット1320は、PtPインターフェース回路1341を用いて、バス1340に結合されるとしてよい。バス1340は、バスブリッジ1342およびI/Oデバイス1343等、1以上のデバイスが結合されているとしてよい。バス1344を介して、バスブリッジ1343は、キーボード/マウス1345、図12を参照しつつ説明したネットワークインターフェースデバイス1330コンピュータネットワーク1303に結合され得るモデム、ネットワークインターフェースカードNIC等、オーディオI/Oデバイス1347、および/または、データストレージデバイス1348等、他のデバイスに結合されるとしてよい。データストレージデバイス1348は、プロセッサ1302および/または1304によって実行されるコード1349を格納するとしてよい。本発明のさまざまな実施形態によると、本明細書、例えば、図1から図13で説明した処理は、ハードウェア例えば、ロジック回路、ソフトウェア例えば、図12および図13を参照しつつ説明したプロセッサ等のプロセッサの処理を制御するマイクロコードを含む、ファームウェアまたはこれらの組み合わせで実現されるとしてよい。これらのハードウェア、ソフトウェアおよびファームウェアは、コンピュータプログラム製品として、例えば、コンピュータ例えば、プロセッサまたはコンピューティングデバイスの他のロジックをプログラミングして本明細書で説明した処理を実行させるために用いられる命令または、ソフトウェア手順を格納した有形の機械可読媒体またはコンピュータ可読媒体として提供されるとしてよい。機械可読媒体は、本明細書で説明したようなストレージデバイスを含むとしてよい。本明細書において一実施形態またはある実施形態という表現は、当該実施形態に関連付けて説明している特定の特徴、構造または特性が少なくとも1つの実施例に含まれることを意味する。一実施形態においてという表現は何度も本明細書で見られるが、全てが同じ実施形態を必ずしも意味しているわけではないとしてよい。また、明細書および請求項において、結合および接続という用語を用いている場合がある。本発明の一部の実施形態では、接続は、2つ以上の構成要素が直接的に物理的または電気的に接触していることを意味するために用いられる用語であるとしてよい。結合は、2つ以上の構成要素が直接的に物理的または電気的に接触していることを意味する用語であるとしてよい。しかし、結合は、2つ以上の構成要素が互いに直接接触していないが、互いに協働またはインタラクションすることも意味するとしてよい。さらに、このようなコンピュータ可読媒体は、コンピュータプログラム製品としてダウンロードされるとしてよい。このプログラムは、通信リンク例えば、バス、モデムまたはネットワーク接続を介して、データ信号を利用して、リモートコンピュータ例えば、サーバから要求元のコンピュータ例えば、クライアントへと転送されるとしてよい。このように、本発明の実施形態は構造上の特徴および/または方法を構成する動作に特有の表現で説明したが、請求の主題は説明した具体的な特徴または動作に限定されるものではないと理解されたい。さらに、具体的な特徴および動作は、請求の主題を実施するための形態の一例として開示されている。"