(57)【要約】【課題】擬似システムとしてのクラウド・コンピューティング・データの表現および解析を促進する技法を提供する。【解決手段】システムは、コンピュータ実行可能構成要素を記憶するメモリと、コンピュータ実行可能構成要素を実行するプロセッサとを備える。コンピュータ実行可能構成要素は、フレームワーク構成要素と、生成構成要素とを含む。フレームワーク構成要素は、コンピューティング・デバイスのシステム状態をコンピューティング・デバイスの擬似システム状態として再作成することができる。擬似システム状態は、コンピューティング・デバイスの元の動作状態から切り離すことができ、元の動作状態から抽象化されたデータを含むことができる。抽象化されたデータは、コンピューティング・デバイスの動作を模倣することができる。生成構成要素は、擬似システム状態を作成することができ、擬似システム状態上でのソフトウェアのブラック・ボックス実行を促進することができる。ソフトウェアのブラック・ボックス実行は、アプリケーションがコンピューティング・デバイスの元の動作状態において実行しているかのように、擬似システム状態においてアプリケーションを作動させることを含むことができる。【選択図】図６
2021503114.tif 000002
【特許請求の範囲】
【請求項１】
システムであって、
コンピュータ実行可能コンポーネントを記憶するメモリと、
前記メモリに記憶されている前記コンピュータ実行可能コンポーネントを実行するプロセッサと
を備え、前記コンピュータ実行可能コンポーネントは、
コンピューティング・デバイスのシステム状態を前記コンピューティング・デバイスの擬似システム状態として再作成するフレームワークコンポーネントであり、前記擬似システム状態は、前記コンピューティング・デバイスの元の動作状態から切り離され、前記元の動作状態から抽象化されたデータを含み、前記抽象化されたデータは、前記コンピューティング・デバイスの動作を模倣する、前記フレームワークコンポーネントと、
前記擬似システム状態を作成し、前記擬似システム状態上でのソフトウェアのブラック・ボックス実行を促進する生成コンポーネントであり、前記ソフトウェアのブラック・ボックス実行は、アプリケーションが前記コンピューティング・デバイスの前記元の動作状態において実行しているかのように、前記擬似システム状態において前記アプリケーションを作動させることを含む、前記生成コンポーネントと
を含む、システム。
【請求項２】
前記コンピュータ実行可能コンポーネントは、
前記擬似システム状態に応答して１つまたは複数のイベント通知を生成する通知コンポーネントをさらに含み、前記１つまたは複数のイベント通知は、前記コンピューティング・デバイスの前記元の動作状態から切り離される、請求項１に記載のシステム。
【請求項３】
前記コンピュータ実行可能コンポーネントは、
前記コンピューティング・デバイスの１つまたは複数の更新された擬似システム状態を作成する増強コンポーネントをさらに含み、前記通知コンポーネントは、前記１つまたは複数の更新された擬似システム状態に応答して、前記１つまたは複数のイベント通知のうちの１つのイベント通知を生成する、請求項２に記載のシステム。
【請求項４】
前記フレームワークコンポーネントは遡及的に、前記コンピューティング・デバイスの前記システム状態から前記擬似システム状態を作成し、前記コンピューティング・デバイスにソフトウェア・アプリケーションをインストールすることなく前記システムの処理効率を増大させる、請求項１に記載のシステム。
【請求項５】
前記コンピュータ実行可能コンポーネントは、ポータブル・オペレーティング・システム・インターフェース・プロトコルに準拠するインターフェースを介して前記擬似システム状態をレンダリングする出力コンポーネントをさらに含む、請求項１に記載のシステム。
【請求項６】
前記コンピュータ実行可能コンポーネントは、
前記コンピューティング・デバイスの前記システム状態と関連付けられるデータを累積する集約コンポーネントと、
前記コンピューティング・デバイスの前記システム状態に関係する１つまたは複数の解析を収集する解析コンポーネントであって、前記１つまたは複数の解析は、前記集約コンポーネントによって累積される前記データから独立して、前記解析コンポーネントによって収集され、前記フレームワークコンポーネントは、前記データおよび前記１つまたは複数の解析を、前記擬似システム状態に組み込む、前記解析コンポーネントと
をさらに含む、請求項１に記載のシステム。
【請求項７】
前記コンピューティング・デバイスは、第１のコンピューティング・デバイスであり、前記擬似システム状態は、第１の擬似システム状態であり、前記フレームワークコンポーネントは、前記第１の擬似システム状態および少なくとも第２のコンピューティング・デバイスの少なくとも第２の擬似状態を含む擬似システム状態のグローバル・ビューを作成し、前記擬似システム状態の前記グローバル・ビューは、１つまたは複数のコンピューティング・システムにわたって見ることが可能である、請求項１に記載のシステム。
【請求項８】
前記コンピュータ実行可能コンポーネントは、
システム・デバイスの複数のインスタンスにわたるアプリケーションおよびソフトウェアの多重化を可能にする編成コンポーネントをさらに含み、前記システム・デバイスは、前記コンピューティング・デバイスを含む、請求項１に記載のシステム。
【請求項９】
コンピュータ実施方法であって、
プロセッサに動作可能に結合されているシステムによって、コンピューティング・デバイスのシステム状態を前記コンピューティング・デバイスの擬似システム状態として再作成することであり、前記擬似システム状態は、前記コンピューティング・デバイスの元の動作状態から切り離され、前記元の動作状態から抽象化されたデータを含み、前記抽象化されたデータは、前記コンピューティング・デバイスの動作を模倣する、前記再作成することと、
前記システムによって、前記擬似システム状態を作成し、前記擬似システム状態上でのソフトウェアのブラック・ボックス実行を促進することと
を含み、前記ブラック・ボックス実行は、アプリケーションが前記コンピューティング・デバイスの前記元の動作状態において実行しているかのように、前記擬似システム状態において前記アプリケーションを作動させることを含む、コンピュータ実施方法。
【請求項１０】
前記システムによって、前記擬似システム状態に応答して１つまたは複数のイベント通知を生成することをさらに含み、前記１つまたは複数のイベント通知は、前記コンピューティング・デバイスの前記元の動作状態から切り離される、請求項９に記載のコンピュータ実施方法。
【請求項１１】
前記システムによって、前記コンピューティング・デバイスの１つまたは複数の更新された擬似システム状態を作成することと、
前記システムによって、前記１つまたは複数の更新された擬似システム状態に応答して、前記１つまたは複数のイベント通知から１つのイベント通知を生成することと
をさらに含む、請求項１０に記載のコンピュータ実施方法。
【請求項１２】
前記擬似システム状態を前記作成することは、前記システムによって、遡及的に、前記コンピューティング・デバイスの前記システム状態から前記擬似システム状態を作成することと、前記システムによって、前記コンピューティング・デバイスにソフトウェア・アプリケーションをインストールすることなく前記システムの処理効率を増大させることとを含む、請求項９に記載のコンピュータ実施方法。
【請求項１３】
前記システムによって、ポータブル・オペレーティング・システム・インターフェース・プロトコルに準拠するインターフェースを介して前記擬似システム状態をレンダリングすることをさらに含む、請求項９に記載のコンピュータ実施方法。
【請求項１４】
前記システムによって、前記コンピューティング・デバイスの前記システム状態と関連付けられるデータを累積することと、
前記システムによって、前記コンピューティング・デバイスの前記システム状態に関係する１つまたは複数の解析を収集することであって、前記１つまたは複数の解析は、前記データの累積とは独立して収集される、前記収集することと、
前記システムによって、前記データおよび前記１つまたは複数の解析を、前記擬似システム状態に組み込むことと
をさらに含む、請求項９に記載のコンピュータ実施方法。
【請求項１５】
クラウド・コンピューティング・データの擬似システムとしての表現および解析を促進するコンピュータ・プログラム製品であって、プログラム命令が具現化されているコンピュータ可読記憶媒体を備え、前記プログラム命令は、プロセッサに、
コンピューティング・デバイスのシステム状態を前記コンピューティング・デバイスの擬似システム状態として再作成することであり、前記擬似システム状態は、前記コンピューティング・デバイスの元の動作状態から切り離され、前記元の動作状態から抽象化されたデータを含み、前記抽象化されたデータは、前記コンピューティング・デバイスの動作を模倣する、前記再作成することと、
前記擬似システム状態を作成し、前記擬似システム状態上でのソフトウェアのブラック・ボックス実行を促進することと
を行わせるように前記プロセッサによって実行可能であり、前記ブラック・ボックス実行は、アプリケーションが前記コンピューティング・デバイスの前記元の動作状態において実行しているかのように、前記擬似システム状態において前記アプリケーションを作動させることを含む、コンピュータ・プログラム製品。
【請求項１６】
前記プログラム命令は、前記プロセッサに、
前記擬似システム状態に応答して１つまたは複数のイベント通知を生成させ、前記１つまたは複数のイベント通知は、前記コンピューティング・デバイスの前記元の動作状態から切り離される、請求項１５に記載のコンピュータ・プログラム製品。
【請求項１７】
前記プログラム命令は、前記プロセッサに、
前記コンピューティング・デバイスの１つまたは複数の更新された擬似システム状態を作成することと、
前記１つまたは複数の更新された擬似システム状態に応答して、前記１つまたは複数のイベント通知から１つのイベント通知を生成することと
を行わせる、請求項１６に記載のコンピュータ・プログラム製品。
【請求項１８】
前記プログラム命令は、前記プロセッサに、
ポータブル・オペレーティング・システム・インターフェース・プロトコルに準拠するインターフェースを介して前記擬似システム状態をレンダリングさせる、請求項１５に記載のコンピュータ・プログラム製品。
【請求項１９】
前記プログラム命令は、前記プロセッサに、
システム・デバイスの複数のインスタンスにわたって１つまたは複数のアプリケーションおよびソフトウェアを多重化させ、前記システム・デバイスは、前記コンピューティング・デバイスを含む、請求項１５に記載のコンピュータ・プログラム製品。
【請求項２０】
システムであって、
コンピュータ実行可能コンポーネントを記憶するメモリと、
前記メモリに記憶されている前記コンピュータ実行可能コンポーネントを実行するプロセッサと
を備え、前記コンピュータ実行可能コンポーネントは、
１つまたは複数の計算エンティティ・デバイスのそれぞれのヒューズ・ファイルシステムからのデータ収集デバイス・フレームを使用して前記１つまたは複数の計算エンティティ・デバイスのそれぞれの擬似システム状態を遡及的に作成するフレームワークコンポーネントと、
前記それぞれの擬似システム状態を継続的に更新する増強コンポーネントと、
前記それぞれの擬似システム状態上でのアプリケーションのブラック・ボックス実行を促進する生成コンポーネントであり、前記アプリケーションは、前記１つまたは複数の計算エンティティ・デバイス上での実行を模倣するために前記それぞれの擬似システム状態において実行される、前記生成コンポーネントと
を含む、システム。
【請求項２１】
前記コンピュータ実行可能コンポーネントは、前記それぞれの擬似システム状態に応答する１つまたは複数のイベント通知機能を構築する通知コンポーネントをさらに含む、請求項２０に記載のシステム。
【請求項２２】
前記それぞれの擬似システム状態は、ポータブル・オペレーティング・システム・インターフェースに準拠する、請求項２０に記載のシステム。
【請求項２３】
前記コンピュータ実行可能コンポーネントは、前記１つまたは複数の計算エンティティ・デバイスにわたる集約ビューの作成に基づいて大域的スケールの解析を促進する集約コンポーネントをさらに含む、請求項２０に記載のシステム。
【請求項２４】
コンピュータ実施方法であって、
プロセッサに動作可能に結合されているシステムによって、１つまたは複数の計算エンティティ・デバイスのそれぞれのヒューズ・ファイルシステムからのデータ収集デバイス・フレームを使用して前記１つまたは複数の計算エンティティ・デバイスのそれぞれの擬似システム状態を遡及的に作成することと、
前記システムによって、前記それぞれの擬似システム状態を継続的に更新することと、
前記システムによって、前記それぞれの擬似システム状態上でのアプリケーションのブラック・ボックス実行を促進することであり、前記アプリケーションは、前記１つまたは複数の計算エンティティ・デバイス上での実行を模倣するために前記それぞれの擬似システム状態において実行され、前記それぞれの擬似システム状態はポータブル・オペレーティング・システム・インターフェースに準拠する、前記促進することと
を含む、コンピュータ実施方法。
【請求項２５】
前記システムによって、前記それぞれの擬似システム状態に応答する１つまたは複数のイベント通知機能を構築することをさらに含む、請求項２４に記載のコンピュータ実施方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、クラウド・コンピューティング・アーキテクチャに関し、より特定的には、クラウド・コンピューティング環境において利用することができる擬似システム（PSEUDO SYSTEM）としてのクラウド・コンピューティング・データの表現および解析に関する。
【背景技術】
【０００２】
クラウド・コンピューティング環境は、固定物理ノードを含む静的環境として設計されている。しかしながら、クラウド・コンピューティングおよび仮想化技術の技術的進歩によって、クラウド・コンピューティング環境は、１つまたは複数の仮想機械を含むことができる急速に変化する環境へと進化している。仮想機械の提供は高度に動的であり、仮想機械の寿命は短いものであり得、クラウド・コンピューティング環境が絶えず変化することに寄与している。
【０００３】
データ・センター運用は変化しているが、仮想機械の管理および運用は技術的進歩を遅らせている。したがって、固定物理ノードを管理するために元々設計されていたツールの修正バージョンを使用して、様々な性能および安全上のタスクが実施されている。例えば、Ｈａｗｋｅｔｔ（米国特許出願公開第２０１３／０１２４４００号）は、クラウド・コンピューティング・オペレーティング・システム（cloud computing operating system）を論じている。Ｈａｗｋｅｔｔの要約書において論じられているように（明瞭にするために参照符号は除く）、システムは、「システムの要素が含む基本属性を定義するように各々が構成されている複数のコア・データ構造を含む。」Ｈａｗｋｅｔｔはまた、「任意の数のコア・データ構造またはコア・データ構造から継承される要素をインデックス付けするように構成されているコア・データ構造のうちの１つから継承されるインデックス付けデータ構造」をも論じている。さらに、Ｈａｗｋｅｔｔは、「インデックス付けデータ構造から継承され、任意の数のコア・データ構造またはコア・データ構造から継承される要素をカプセル化するように構成されているカプセル化データ構造」を論じている。Ｈａｗｋｅｔｔは、データに対する一定のシステム・モデル化を実施するが、システム・モデルは、ネイティブのシステム・インターフェースとしては現れない。したがって、Ｈａｗｋｅｔｔは単純に、そのクラウド・コンピューティング・オペレーティング・システムのツールの修正バージョンを使用し、ツールは、仮想機械向けに設計されておらず、仮想機械の動的な性質に対処しない適合であり得る。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開第２０１３／０１２４４００号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
擬似システムとしてのクラウド・コンピューティング・データの表現および解析を促進する技術を提供する。
【課題を解決するための手段】
【０００６】
以下は、本発明の１つまたは複数の実施形態の基本的な理解を提供するための概要を提示する。この概要は、主要なもしくは重要な要素を識別するようには意図されておらず、または、特定の実施形態の任意の範囲もしくは特許請求項の任意の範囲を画定するようにも意図されていない。その唯一の目的は、後に提示されるより詳細な説明への前置きとして構想を簡略化された形態で提示することである。本明細書において記載されている１つまたは複数の実施形態において、擬似システムとしてのクラウド・コンピューティング・データの表現および解析を促進するシステム、コンピュータ実施方法、装置、またはコンピュータ・プログラム製品あるいはその組合せが提供される。
【０００７】
一実施形態によれば、システムは、コンピュータ実行可能コンポーネントを記憶するメモリと、メモリに記憶されているコンピュータ実行可能コンポーネントを実行するプロセッサとを備えることができる。コンピュータ実行可能コンポーネントは、コンピューティング・デバイスのシステム状態をコンピューティング・デバイスの擬似システム状態として再作成するフレームワークコンポーネントを含むことができる。擬似システム状態は、コンピューティング・デバイスの元の動作状態から切り離すことができ、元の動作状態から抽象化されたデータを含むことができる。抽象化されたデータは、コンピューティング・デバイスの動作を模倣することができる。コンピュータ実行可能コンポーネントはまた、擬似システム状態を作成することができ、擬似システム状態上でのソフトウェアのブラック・ボックス実行を促進することができる生成コンポーネントをも含むことができる。ソフトウェアのブラック・ボックス実行は、アプリケーションがコンピューティング・デバイスの元の動作状態において実行しているかのように、擬似システム状態においてアプリケーションを作動させることを含むことができる。
【０００８】
一態様において、コンピュータ実行可能コンポーネントは、擬似システム状態に応答して１つまたは複数のイベント通知を生成することができる通知コンポーネントをさらに含むことができる。１つまたは複数のイベント通知は、コンピューティング・デバイスの元の動作状態から切り離すことができる。この態様に付加して、コンピュータ実行可能コンポーネントは、コンピューティング・デバイスの１つまたは複数の更新された擬似システム状態を作成することができる増強コンポーネント（augment component）を含むことができる。通知コンポーネントは、１つまたは複数の更新された擬似システム状態に応答して、１つまたは複数のイベント通知のうちの１つのイベント通知を生成することができる。
【０００９】
一態様によれば、フレームワークコンポーネントは遡及的に、コンピューティング・デバイスのシステム状態から擬似システム状態を作成することができ、コンピューティング・デバイスにソフトウェア・アプリケーションをインストールすることなくシステムの処理効率を増大させることができる。本明細書において論じられているいくつかの態様によれば、コンピュータ実行可能コンポーネントは、ポータブル・オペレーティング・システム・インターフェース・プロトコルに準拠することができるインターフェースを介して擬似システム状態をレンダリングする出力コンポーネントを含むことができる。
【００１０】
１つまたは複数の態様において、コンピュータ実行可能コンポーネントは、コンピューティング・デバイスのシステム状態と関連付けられるデータを累積することができる集約コンポーネントを含むことができる。さらに、コンピュータ実行可能コンポーネントは、コンピューティング・デバイスのシステム状態に関係する１つまたは複数の解析を収集することができる解析コンポーネントを含むことができる。１つまたは複数の解析は、集約コンポーネントによって累積されるデータから独立して、解析コンポーネントによって収集することができる。加えて、フレームワークコンポーネントは、データおよび１つまたは複数の解析を、擬似システム状態に組み込むことができる。
【００１１】
一態様によれば、コンピューティング・デバイスは、第１のコンピューティング・デバイスとすることができ、擬似システム状態は、第１の擬似システム状態とすることができる。この態様に付加して、フレームワークコンポーネントは、第１の擬似システム状態および少なくとも第２のコンピューティング・デバイスの少なくとも第２の擬似状態を含む擬似システム状態のグローバル・ビュー（global view）を作成することができる。擬似システム状態のグローバル・ビューは、１つまたは複数のコンピューティング・システムにわたって見ることが可能であり得る。別の態様において、コンピュータ実行可能コンポーネントは、システム・デバイスの複数のインスタンスにわたるアプリケーションおよびソフトウェアの多重化を可能にすることができるオーケストレーション・コンポーネント（orchestration component）を含むことができる。この態様において、システム・デバイスは、コンピューティング・デバイスを含むことができる。
【００１２】
別の実施形態は、コンピュータ実行可能コンポーネントを記憶するメモリと、メモリに記憶されているコンピュータ実行可能コンポーネントを実行するプロセッサとを備えることができるシステムに関する。コンピュータ実行可能コンポーネントは、１つまたは複数の計算エンティティ・デバイス（compute entity device）のそれぞれのヒューズ・ファイルシステムからのデータ収集デバイス・フレーム（クローラ・フレームとして参照されることがある）を使用して１つまたは複数の計算エンティティ・デバイスのそれぞれの擬似システム状態を遡及的に作成するフレームワークコンポーネントを含むことができる。コンピュータ実行可能コンポーネントはまた、それぞれの擬似システム状態を継続的に更新することができる増強コンポーネント、および、それぞれの擬似システム状態上でのアプリケーションのブラック・ボックス実行を促進することができる生成コンポーネントをも含むことができる。アプリケーションは、１つまたは複数の計算エンティティ・デバイス上での実行を模倣するためにそれぞれの擬似システム状態において実行することができる。それぞれの擬似システム状態は、ポータブル・オペレーティング・システム・インターフェースに準拠することができる。
【００１３】
一態様において、コンピュータ実行可能コンポーネントは、それぞれの擬似システム状態に応答する１つまたは複数のイベント通知機能を構築することができる通知コンポーネントをさらに含むことができる。別の態様において、コンピュータ実行可能コンポーネントは、１つまたは複数の計算エンティティ・デバイスにわたる集約ビュー（aggregate view）の作成に基づいて大域的スケールの解析を促進することができる集約コンポーネントを含むことができる。
【００１４】
ここで例示のみを目的として、添付の図面を参照して本発明の実施形態を説明する。
【図面の簡単な説明】
【００１５】
【図１】本明細書において記載されている１つまたは複数の実施形態による、擬似システムとしてのクラウド・コンピューティング・データの表現および解析を促進する例示的な非限定的システムのブロック図である。
【図２】本明細書において記載されている１つまたは複数の実施形態による、擬似システム・インターフェースを実施するための例示的な非限定的システムを示す図である。
【図３】本明細書において記載されている１つまたは複数の実施形態による、表現および解析コンポーネントのアーキテクチャの例示的な非限定的システムを示す図である。
【図４】本明細書において記載されている１つまたは複数の実施形態による、表現および解析コンポーネントの内部設計の例示的な非限定的表現を示す図である。
【図５】本明細書において記載されている１つまたは複数の実施形態による、シリアライゼーションのための例示的な非限定的システムを示す図である。
【図６】本明細書において記載されている１つまたは複数の実施形態による、イベント作成および通知のための例示的な非限定的システムを示す図である。
【図７】本明細書において記載されている１つまたは複数の実施形態による、データを集約するための例示的な非限定的システムを示す図である。
【図８】本明細書において記載されている１つまたは複数の実施形態による、擬似システムとしてのクラウド・コンピューティング・データの表現および解析を促進する例示的な非限定的コンピュータ実施方法の流れ図である。
【図９】本明細書において記載されている１つまたは複数の実施形態による、イベント生成および通知を促進する例示的な非限定的コンピュータ実施方法の流れ図である。
【図１０】本明細書において記載されている１つまたは複数の実施形態による、集約データ生成を促進する例示的な非限定的コンピュータ実施方法の流れ図である。
【図１１】本明細書において記載されている１つまたは複数の実施形態を促進することができる例示的な非限定的動作環境のブロック図である。
【図１２】本明細書において記載されている１つまたは複数の実施形態による、クラウド・コンピューティング環境を示す図である。
【図１３】本明細書において記載されている１つまたは複数の実施形態による、抽象化モデル・レイヤを示す図である。
【発明を実施するための形態】
【００１６】
以下の詳細な説明は、例示に過ぎず、実施形態もしくは応用形態またはその両方あるいは実施形態の使用を限定するようには意図されていない。さらに、先行する背景または概要の節、あるいは詳細な説明の節において提示されている、任意の表現または暗示されている情報によって制約されることは意図されていない。
【００１７】
ここで、図面を参照して、１つまたは複数の実施形態を説明する。図面において、全体を通じて同様の参照符号が同様の要素を参照するために使用されている。以下の記載において、説明を目的として、１つまたは複数の実施形態のより完全な理解を提供するために、多数の具体的な詳細が記載される。しかしながら、様々な事例において、１つまたは複数の実施形態をこれらの特定の詳細なしに実践することができることは明らかである。
【００１８】
クラウド・コンピューティング・システムは、迅速に提供することができる構成可能なリソース源の共有を可能にすることができる。クラウド・コンピューティング・システムの急速に変化する性質に起因して、クラウド・コンピューティング・システムのデバイスを管理および制御するためのいくつかの技術は、システム・インターフェースの構築に関連し得る。しかしながら、これらのシステム・インターフェースの構築は、会計処理および管理を目的として使用することができる非標準的なデータ・モデルの構築を指す。したがって、従来のクラウド・コンピューティング・システムは、多くの場合、静的コンピューティング・デバイス向けに設計されたツールが再使用されることに起因して非効率である可能性がある。加えて、いくつかの技術は、データに対するシステム・モデル化を論じている。しかしながら、モデル化は、データをネイティブのシステム・インターフェースとしては現れない。それゆえ、従来のクラウド・コンピューティング・システムには改善の余地があり得る。
【００１９】
本明細書において記載されている実施形態は、「現実の」システムから捕捉されるデータから標準的なネイティブの擬似システム・インターフェースを構築することができるシステム、コンピュータ実施方法、およびコンピュータ・プログラム製品を含む。例えば、擬似システム・インターフェースは、現実のシステムから切り離すことができる。したがって、擬似システム・インターフェースは、現実のシステムに影響を与えない。
【００２０】
加えて、様々な実施形態は、擬似システム・インターフェース上でブラック・ボックス・ソフトウェア・アプリケーションを実行するための技法（例えば、ソフトウェア・オーケストレーションおよび管理）に関する。例えば、ブラック・ボックス・ソフトウェア・アプリケーションの実行は、新規の（または新興の）アプリケーションまたはレガシ・アプリケーションあるいはその両方の実行を促進することができる。さらに、様々な実施形態は、オーバレイ・ファイルシステム設計を使用して仮想機械、コンテナ、またはベア・メタルあるいはその組合せの複数のインスタンスにわたってソフトウェア実行を多重化することを可能にする。加えて、様々な実施形態は、「現実の」システムから切り離された継続的な監視および通知サービスの作成を促進することができる。
【００２１】
したがって、下記にさらに詳細に論じるように、様々な態様は、クラウド上のアプリケーションおよびシステムに関するデータを収集および変換して消費可能なフォーマットにすることによって、データ解析手段（data analytics）を実行することに関する。例えば、システム（例えば、コンピューティング・デバイス）に関するデータは、抽出して、ラップトップまたはクラウド内の仮想機械のような作動しているシステム上で実行することができるレガシ・ソリューションと近い将来に出現するソリューション（例えば、ブラック・ボックス技法）の両方によって利用することができるフォーマットに入力することができる。様々な態様は、変換されるデータからのすべてを変換するため、ソリューションは「そのまま」実行することはできない。それゆえ、本明細書において論じるように、様々な態様は、データをコンピューティング・システムとして表現することができるように、データを修正することができる。したがって、コンピューティング・システム（例えば、コンピューティング・デバイス）上で作動しているアプリケーションについて、アプリケーションは、それらがコンピューティング・システム（例えば、ラップトップ）上で作動していると感じるが、そのシーンの背景には、データを抽象化するソフトウェアおよびシステムコンポーネントの中間レイヤが存在し得る。したがって、様々な態様は、コンピューティング・システムの外観および印象を提供するが、コンピューティング・システムがデータに、アプリケーションが要求している質問を求めているものであり得るビュー（例えば、シーンの背後）から現れる（例えば、様々な態様は、エンティティとアプリケーションとの間で対話していることができる）。例えば、システム（例えば、ラップトップ、仮想機械、またはクラウド内で作動しているコンテナあるいはその組合せ）内で作動していることができるコンプライアンス・チェッカーまたはワイヤレス検出手段が存在し得る。ワイヤレス・チェッカーがシステム上で作動すると予測するとき、「ベニヤ」を提示することができ、ワイヤレス・チェッカーはそのベニヤ上でインストールまたは作動することができる。ワイヤレス・チェッカーは、システム上で完全に良好に作動していると考え、その通常の実行を実施する（例えば、データを収集し、解析を実施する）が、システムではなく、データに関して動作している。
【００２２】
本明細書において論じられているように、様々な態様が、データに対して、１つもしくは複数のレガシ・アプリケーションまたは１つもしくは複数の新興のアプリケーションあるいはその両方を作動させることができる。したがって、様々な態様は、クラウド内に留まることができ、１つまたは複数のソリューションは、アプリケーションを再実施（例えば、リバース・エンジニアリング）することなく、１つもしくは複数のレガシ・アプリケーション（例えば、ブラック・ボックス）または１つもしくは複数の新興アプリケーションあるいはその両方を作動させることができる。そのため、クラウド・コンピューティング・システムの正確度またはクラウド・コンピューティング・システムの効率あるいはその両方を改善することができる。さらに、クラウド・コンピューティング・システムと関連付けられるデバイスの性能、クラウド・コンピューティング・システムと関連付けられるデバイスの効率、またはクラウド・コンピューティング・システムと関連付けられるデバイスの別の特性あるいはその組合せを改善することができる。
【００２３】
図１は、本明細書において記載されている１つまたは複数の実施形態による、擬似システムとしてのクラウド・コンピューティング・データの表現および解析を促進する例示的な非限定的システム１００のブロック図を示す。本開示において説明するシステム（例えば、システム１００など）、装置、またはプロセスの態様は、機械内に具現化される、例えば、１つまたは複数の機械と関連付けられる１つまたは複数のコンピュータ可読媒体内に具現化される、機械実行可能コンポーネントを構成することができる。そのようなコンポーネントは、例えば、コンピュータ、コンピューティング・デバイス、仮想機械などの、１つまたは複数の機械によって実行されると、機械に、記載されている動作を実施させることができる。
【００２４】
様々な実施形態において、システム１００は、プロセッサを備え、あるいは、有線もしくはワイヤレス・ネットワークまたはその両方と実効的にもしくは動作可能にまたはその両方で通信することが可能であり得るまたはその両方である任意のタイプのコンポーネント、機械、デバイス、設備、装置、または機器あるいはその組合せとすることができる。システム１００を備えることができるコンポーネント、機械、装置、デバイス、設備、または機器あるいはその組合せは、タブレット・コンピューティング・デバイス、手持ち式デバイス、サーバ・クラス・コンピューティング・マシンまたはデータベースあるいはその組合せ、ラップトップ・コンピュータ、ノートブック・コンピュータ、デスクトップ・コンピュータ、携帯電話、スマート・フォン、家電製品または器具あるいはその組合せ、産業用デバイスまたは市販のデバイスあるいはその両方、手持ち式デバイス、携帯情報端末、マルチメディア・インターネット対応電話、マルチメディア・プレーヤなどを含んでもよい。
【００２５】
様々な実施形態において、システム１００は、限定ではないが、クラウド回路技術、クラウド・コンピューティング技術、人工知能技術、医薬および材料技術、サプライ・チェーンおよび運輸技術、金融サービス技術、または他のデジタル技術あるいはその組合せのような技術と関連付けられるクラウド・コンピューティング・システムであってもよい。システム１００は、抽象化されず、人間によって精神活動のセットとして実施することができない、本質的に高度に技術的な問題を解決するために、ハードウェアまたはソフトウェアあるいはその両方を利用することができる。さらに、特定の実施形態において、実施されるプロセスのいくつかは、クラウド・コンピューティング・データを擬似システムとして表現および解析することに関連する規定のタスクまたは機械学習あるいはその両方を実行するために、１つまたは複数の特殊化コンピュータ（例えば、１つまたは複数の特殊化処理ユニット、クラウド・コンピューティングコンポーネントを有する特殊化コンピュータなど）によって実施することができる。
【００２６】
システム１００またはシステム１００のコンポーネントあるいはその両方は、上記で言及した技術、コンピュータ・アーキテクチャなどの進歩を通じて生じる新たな問題を解決するために利用することができる。システム１００の１つまたは複数の実施形態は、クラウド・コンピューティング・システム、クラウド回路システム、クラウド・プロセッサ・システム、人工知能システム、または他のシステムあるいはその組合せに対する技術的改善を提供することができる。システム１００の１つまたは複数の実施形態はまた、クラウド・プロセッサの処理性能、クラウド・プロセッサの処理効率、クラウド・プロセッサの処理特性、またはクラウド・プロセッサの電力効率あるいはその組合せを改善することによって、クラウド・プロセッサに対する技術的改善を提供することもできる。
【００２７】
図１に示す実施形態において、システム１００は、フレームワークコンポーネント１０２、生成コンポーネント１０４、出力コンポーネント１０６、処理コンポーネント１０８、メモリ１１０、またはストレージ１１２あるいはその組合せを備えることができる。メモリ１１０は、コンピュータ実行可能コンポーネントおよび命令を記憶することができる。処理コンポーネント１０８（例えば、プロセッサ）は、フレームワークコンポーネント１０２、生成コンポーネント１０４、出力コンポーネント１０６、または他のシステムコンポーネントあるいはその組合せによる命令（例えば、コンピュータ実行可能コンポーネントおよび対応する命令）の実行を促進することができる。図示のように、いくつかの実施形態において、フレームワークコンポーネント１０２、生成コンポーネント１０４、出力コンポーネント１０６、処理コンポーネント１０８、メモリ１１０、またはストレージ１１２あるいはその組合せのうちの１つまたは複数は、システム１００の１つまたは複数の機能を実施するために、電気的に、通信可能に、または動作可能にあるいはその組合せで、互いに結合することができる。
【００２８】
フレームワークコンポーネント１０２は、入力データ１１４として、コンピューティング・デバイスのシステム状態を受信することができる。システム状態は、コンピューティング・デバイスの元のコンピューティング状態であり得る。コンピューティング・デバイスは、サーバ、仮想機械、または、クラウド・コンピューティング環境の動作を促進するように構成されている他のコンピューティング・デバイスであってもよい。入力データ１１４に基づいて、フレームワークコンポーネント１０２は、コンピューティング・デバイスのシステム状態をコンピューティング・デバイスの擬似システム状態として再作成することができる。例えば、擬似システム状態は、コンピューティング・デバイスの元の動作状態から切り離すことができる。さらに、擬似システム状態は、元の動作状態から抽象化されたデータを含むことができる。抽象化されたデータは、コンピューティング・デバイスの動作を模倣することができる。
【００２９】
生成コンポーネント１０４は、擬似システム状態を作成することができ、擬似システム状態上でのソフトウェアのブラック・ボックス実行を促進することができる。例えば、ソフトウェアのブラック・ボックス実行は、アプリケーションがコンピューティング・デバイスの元の動作状態において実行しているかのように、擬似システム状態においてアプリケーションを作動させることを含むことができる。出力コンポーネント１０６は、擬似システム状態を、出力データ１１６としてレンダリングすることができる。例えば、出力コンポーネント１０６は、ポータブル・オペレーティング・システム・インターフェース・プロトコルに準拠することができるインターフェースを介して擬似システム状態をレンダリングすることができる。
【００３０】
例えば、コンピューティング・デバイスの元の動作状態に関連するデータを、システム・フォーマットではなく文書フォーマットに変換することができる。様々なアプリケーションまたはソフトウェア（例えば、レガシ・アプリケーション／ソフトウェア、非レガシ・アプリケーション／ソフトウェア、新興アプリケーション／ソフトウェア）が実行されるべきであるとき、様々なアプリケーション／ソフトウェアは、コンピューティング・デバイス内で実行しているように見え得る。しかしながら、アプリケーション／ソフトウェアは実際には、文書から実行している。
【００３１】
いくつかの実施態様によれば、フレームワークコンポーネント１０２は、コンピューティング・デバイスのシステム状態から擬似システム状態を遡及的に作成することができる。擬似システム状態の遡及的作成に基づいて、フレームワークコンポーネント１０２（および他のシステムコンポーネント）は、コンピューティング・デバイスにソフトウェア・アプリケーションをインストールすることなくシステムの処理効率を増大させることができる。
【００３２】
いくつかの実施態様によれば、コンピューティング・デバイスは、第１のコンピューティング・デバイスとすることができ、擬似システム状態は、第１の擬似システム状態とすることができる。これらの実施態様に付加して、フレームワークコンポーネントは、コンピューティング・リソースにわたる、第１の擬似システム状態および少なくとも第２の擬似状態のグローバル・ビューを作成することができる。コンピューティング・リソースは、第１のコンピューティング・デバイスおよび少なくとも第２のコンピューティング・デバイスを含むことができる。
【００３３】
システム１００（例えば、フレームワークコンポーネント１０２、生成コンポーネント１０４、出力コンポーネント１０６、または他のシステムコンポーネントあるいはその組合せ）が、擬似システム状態もしくは擬似システム・インターフェースの生成、または、人間によって実施することができない（例えば、単一の人間の精神の能力を超える）擬似システム上でのブラック・ボックス実行あるいはその両方を実施することは諒解されたい。例えば、一定の時間期間にわたってシステム１００（例えば、フレームワークコンポーネント１０２、生成コンポーネント１０４、出力コンポーネント１０６）によって処理されるデータの量、処理されるデータの速度、または処理されるデータのデータ型あるいはその組合せは、同じ時間期間にわたって単一の人間の精神によって処理することができる量、速度、およびデータ型よりも大きい、速い、および、異なるものであり得る。システム１００（例えば、フレームワークコンポーネント１０２、生成コンポーネント１０４、出力コンポーネント１０６）はまた、上記で参照した擬似システム状態／インターフェースの生成または擬似システム状態上でのブラック・ボックス実行あるいはその両方をも実施しながら、１つまたは複数の他の機能の実施に向けて完全に動作可能とすることもできる（例えば、完全に電源投入される、完全に実行される、など）。その上、システム１００（例えば、フレームワークコンポーネント１０２、生成コンポーネント１０４、出力コンポーネント１０６）によって生成および協調される擬似システム状態／インターフェースは、ユーザによって手動で得ることが不可能である情報を含むことができる。例えば、１つまたは複数の擬似システム状態／インターフェース（例えば、出力データ１１６）を生成および出力するための、入力データ１１４に含まれる情報のタイプ、入力データ１１４の関連付けられる様々な情報、または入力データ１１４の最適化あるいはその組合せは、ユーザによって手動で得ることができ、処理することができる情報よりも複雑であり得る。
【００３４】
図２は、本明細書において記載されている１つまたは複数の実施形態による、擬似システム・インターフェースを実施するための例示的な非限定的システム２００を示す。本明細書において記載されている他の実施形態において利用されている同様の要素の繰り返しの記載は、簡潔にするために省かれる。
【００３５】
システム２００は、システム１００のコンポーネントまたは機能あるいはその両方のうちの１つまたは複数を備えることができ、逆も真である。システム２００は、本明細書において論じられているように、クラウド・コンピューティング・デバイスの収集部分と解析手段部分とを分離することができる。図示のように、１つまたは複数のシステムは、クラウド・コンピューティング環境２０２において実行することができる。例えば、１つまたは複数のシステムは、サーバ（例えば、第１のサーバ２０４および第２のサーバ２０６）または仮想機械（例えば、ＶＭ２０８）あるいはその両方であってもよい。限定ではなく例として、第１のサーバ２０４は、図２に示すように、２つの仮想機械を作動させていることができる。しかしながら、図示および記載されている特定の実施態様に加えて、他の実施態様を利用することができることに留意されたい。
【００３６】
システムの内部でツールを作動させる代わりに、それぞれのデータ収集コンポーネント（例えば、データ収集デバイス２１０１、２１０２、２１０３）は、関連付けられるシステムに関する情報を収集することができ、システム特性のセット（例えば、システムの詳細なリスト）を作成することができる。データは、一態様によれば、文書内に保持することができる。本明細書において提供される様々な態様は、収集されるデータのコンテキストに基づいて動作することができる。データ収集は、メトリック、ファイル、および他の情報を収集するために利用することができる。
【００３７】
例えば、データ・キュレーションコンポーネント２１２が、データに対して（クラウド・コンピューティング環境２０２内に位置する１つまたは複数のシステム内で直接的にではなく）作用することができる。データ・キュレーションコンポーネント２１２のレベルにおいて、様々なツールを実装することができる（例えば、マルウェア、コンプライアンス解析ツール）。データ・キュレーションコンポーネント２１２は、抽出されるデータを評価し、利用可能な情報によって文書を更新することができる。
【００３８】
例えば、図示のように、データ解析手段２１４は、クラウド・コンピューティング環境２０２内に位置するシステムから外部に移動することができ、データに変換することができる。例えば、１つまたは複数のツールは、非レガシ・アプリケーション（例えば、非レガシ・アプリケーション２１６１〜２１６５）であってもよい。さらに、１つまたは複数のツールは、データ解析手段２１４に含まれるレガシ・ツール（例えば、レガシ・アプリケーション２１８１および２１８２）であってもよい。
【００３９】
開示されている態様を実施する前は、レガシ・アプリケーション２１８１および２１８２は使用可能ではなかった。例えば、レガシ・アプリケーション（またはレガシ・ツール）は、クラウド・コンピューティング環境２０２内の計算エンティティ（例えば、サーバ、ＶＭ）上で直接的に作動するように設計および開発されていた。従来、システム状態は、ファイルシステム（例えば、／ｐｒｏｃ、／ｓｙｓ、ルート・ファイルシステム）としてモデル化および提示することができる。したがって、レガシ・ツールは標準ポータブル・オペレーティング・システム・インターフェース（ＰＯＳＩＸ）準拠インターフェースを本質的に予期し、このインターフェースを読み出し専用ファイルシステムとして使用する。ローカルに作動しているレガシ・ツールは、数値計算の機械学習によって駆動される解析を制限する性能オーバーヘッドおよびセキュリティ問題を暗示する。システム／クラウドのグローバル・ビューは利用可能でないため、これによってまた、解析の範囲が限定され得る。
【００４０】
したがって、様々な態様によれば、解析機能がデータ収集から独立してスケーリングすることができるように分離することができるデータ収集および解析手段が提供される。さらに、様々な態様は、集中型データ・キュレーションを通じたグローバル・ビューおよびデータ相関を可能にすることができる。加えて、システム状態は、システムから分離することができ、標準ＰＯＳＩＸインターフェースではなく、ストリーミング・データとして利用可能にすることができる。さらに、様々な態様は、解析ツールを新たなシステム・モデルに書き換えることなく実施することができる。加えて、レガシ・アプリケーション（セキュリティ設定共通化手順（ＳＣＡＰ）、ｏｐｅｎＳｃａｐ、セキュリティ情報およびイベント管理（ＩＥＭ）、アンチウイルス）を、新たなシステム・モデルにポートすることができる。
【００４１】
例えば、本明細書において論じられているように、表現および解析コンポーネント２２０を実装することができる。いくつかの実施態様によれば、表現および解析コンポーネント２２０は、遡及的クラウド・コンピューティング・イントロスペクションコンポーネントまたはｃｏｎＦｕｓｅ（コンテナ（ｃｏｎ）のためのユーザ空間内ファイル・システム（Ｆｕｓｅ））として参照され得る。表現および解析コンポーネント２２０の実施を通じて、コンピューティング・システムは、データに変換することができ、またコンピューティング・システムに戻すことができる。データからコンピューティング・システムへの変換後、コンピューティング・システムは、例えば、擬似システム・インターフェース２２６または擬似システム状態（仮想機械上で実施されるものとして示されている）を備えることができるサーバ２２４上で実施することができる。
【００４２】
擬似システム・インターフェース２２６は、例えば、コンテナを模倣することができる。したがって、擬似システム・インターフェース２２６は、例えば、レガシ・アプリケーション２１８１および２１８２にとってはコンピューティング・システムに見え、そのように動作することができるが、バック・エンドでは（例えば、シーンの背後では）擬似システム・インターフェース２２６はデータに対して作用しているものであり得る。したがって、本明細書において論じられている態様は、レガシ・アプリケーションと新しい新興アプリケーションの両方によって利用することができる。
【００４３】
いくつかの実施態様によれば、システム２００は、サーバ、ＶＭ、およびコンテナのｃｏｎＦｕｓｅ（例えば、表現および解析コンポーネント２２０）を使用して擬似システム・インターフェースを再作成することができる。さらに、レガシ・アプリケーションは、修正なしで作動（例えば、実行）することができる。加えて、システム２００は、既存のおよび新しいアプリケーションのブラック・ボックス解析プラットフォームを提供することができる。システム２００はまた、一実施態様によれば、新しいシステム解析機構を試験するためのスタンド・アロンの分離された試験プラットフォームとしても有用であり得る。
【００４４】
本明細書において論じられているように、様々な態様は、ファイル・システム・コードをデータに対するコードに変換することができる。特定の非限定例において、いくつかのシステム（例えば、Ｌｉｎｕｘシステム）は、例えば、プロセス情報（例えば、プロセス作動情報）であり得るｐｒｏｃｆｓ（／ｐｒｏｃ）、および、カーネル・サブシステム、デバイス・ドライバ、またはハードウェア・デバイスあるいはその組合せであり得るｓｙｓｆｓ（／ｓｙｓ）（例えば、オペレーティング・システムの構成）のような、読み出し専用擬似ファイルシステムを通じてその動作状態を現すことができる。さらに、１つまたは複数の計算エンティティ（例えば、ＶＭ、コンテナ）はまた、それぞれの「ルート・ファイルシステム」（／ｅｔｃ，／ｈｏｍｅ，／ｕｓｒ…）内にそれぞれの持続的状態を有することもできる。データ・コレクタは、これらの状態を捕捉し、これらの状態を、クローラ・フレームとして参照されることがある標準フォーマットのデータに変換することができる。フレームは、解析プラットフォームを分離するために、ネットワークにわたって輸送することができる。一例において、フレームは、データの一般的な表現（例えば、システムがデータとしてどのように表現されるか）とすることができ、任意のデータ表現フォーマットとすることができる。
【００４５】
限定ではなく例として、以下は、利用することができる例示的なサンプル・フレームである。しかしながら、開示されている態様は、以下の例に限定されない。
・  os"linux" {"boottime":1490040337.0,"uptime":614100.0,"ipaddr":["127.0.0.1","172.16.73.76"],"os":"ubuntu","os_version":"16.04","os_kernel":"Linux-4.4.0-53-generic-x86_64-with-debian-stretch-sid","architecture":"x86_64"}...
・  ディスク "/"{"partitionname":"","freepct":90.7,"fstype":"aufs","mountpt":"/","mountopts":"rw,relatime,si=f2ed3824d9539b5c,dio,dirperm1","partitionsize":105389207552}...
・  パッケージ "debianutils"{"installed":null,"pkgname":"debianutils","pkgsize":"213","pkgversion":"4.7","pkgarchitecture":"amd64"}...
・  ファイル"/etc/host.conf"{"atime":1445534121.0,"ctime":1488853389.4237413,"gid":0,"linksto":null,"mode":33188,"mtime":1445534121.0,"name":"host.conf","path":"/etc/host.conf","size":92,"type":"file","uid":0}...
・  プロセス "python/14"{"cmd":"python crawler.py ..}...
・  ...
【００４６】
図３は、本明細書において記載されている１つまたは複数の実施形態による、ｃｏｎＦｕｓｅコンポーネントのアーキテクチャの例示的な非限定的システム３００を示す。本明細書において記載されている他の実施形態において利用されている同様の要素の繰り返しの記載は、簡潔にするために省かれる。
【００４７】
図３の左側には、データ収集デバイス・フレーム３０２として参照される、システムのデータ表現が示されている。例えば、図示されているデータ収集デバイス・フレーム３０２は、クローラ・フレームｃｏｎｔＡ（例えば、コンテナＡのクローラ・フレーム）として参照される。システム状態フレーム・データは、コンテナ、仮想機械、ベア・メタル、ラップトップなどから収集することができる。
【００４８】
コンテナ／ＶＭの各データ収集デバイス・フレーム（例えば、データ収集デバイス・フレーム３０２）は、３０４において、表現および解析コンポーネント２２０（例えば、ｃｏｎＦｕｓｅコンポーネント、ヒューズ・ファイルシステム）によって構文解析することができる。さらに、３０６において、別個のマウント・ポイント（例えば、追加のファイルシステムをマウント（例えば、論理的に付着させる）ことができる、現在アクセス可能なファイルシステム内の（通常は空の）ディレクトリ）を作成することができる。例えば、表現および解析コンポーネント２２０は、データ収集デバイス・フレーム３０２に基づいて、ファイル・システム・ビューを作成することができる。その上に、アプリケーション３０８１、３０８２、３０８３があり得る。３１０において、例えば、１つまたは複数のアプリケーション３０８１、３０８２、３０８３は、様々なレイヤ・ファイル・システム技法および特定の実施態様のｃｈａｎｇｅ  ｒｏｏｔ（ｃｈｒｏｏｔ）を使用して同じファイル・システムの上に構築することができる。例えば、レガシ・アプリケーションは、それぞれのコンテナ／ＶＭのルート・ファイルシステムを見るために、これらのマウント・ポイントにルート変更（ｃｈｒｏｏｔ）することができる。いくつかの実施態様によれば、ｃｈｒｏｏｔは、１つまたは複数のアプリケーションがすべてシステム内にあり、捕捉を実施し、ファイル・システム・コードを実装しているかのように１つまたは複数のアプリケーションを動作させるオペレーティング・システム機能であり得る。
【００４９】
したがって、１つまたは複数のアプリケーション３０８１、３０８２、３０８３は、それぞれのアプリケーションがシステム内にあり、ファイル・システム３１２（例えば、／ｍｎｔ／ｃｏｎｔＡ）の上で動作しているかのように見え得る。例えば、１つまたは複数のファイル・システム・レイヤを構築することができ、根底にあるファイル・システムから選択的に追加または除去あるいはその両方を行うことができる。変更するためのプロセスは、ベース・レイヤ（ＯＳ）を作成し、ベース・レイヤの上に追加のレイヤを構築することであり得る。コンテナＡを利用するファイル・システム内のレイヤは、表現および解析コンポーネント２２０と通信することができる。その上に、システム全体のコンポーネントであるかのように機能することができるレガシ・アプリケーションを含むことができる追加のレイヤがあり得る。
【００５０】
３１４において、マウント・ポイント内部のアプリケーションによって為される１つまたは複数のファイルシステム・コール（例えば、ｏｐｅｎ，  ｒｅａｄ，  ｓｔａｔ，  ｌｓなど）を、ユーザ空間内ファイル・システム（ＦＵＳＥ）によってインターセプトすることができ、３１６において、そのコールを取り扱うために制御を表現および解析コンポーネント２２０に渡すことができる。表現および解析コンポーネント２２０は、（例えば、３０４からの）構文解析されたフレームの出力から関連するファイルシステム・メタデータ／データを返すことができる。
【００５１】
例えば、ファイルシステム・ビューのシーンの背後で、すべてのファイル・システム・コードを捕捉することができ、表現および解析コンポーネント２２０はデータに対して実行することができる。したがって、マウント・コンテナＡ上で作動しているシステム、仮想機械、コンテナ、またはサーバは存在しない。さらに、コンテナＡは存在せず、コンテナＡが存在するという印象が与えられるに過ぎない。
【００５２】
図４は、本明細書において記載されている１つまたは複数の実施形態による、ｃｏｎＦｕｓｅコンポーネントの内部設計４００の例示的な非限定的表現を示す。フレーム４０２（例えば、データ収集デバイス・フレーム３０２）が示されている。４０４に示すように、１つまたは複数のアプリケーション（例えば、Ｏｐｅｎｓｃａｐ  Ｔｒａｃｅ）をスラッシュ（例えば、ルート・ディレクトリ）内にインストールすることができる。データ４０４の様々な要素を評価することができる（例えば、ファイル情報、プロセス情報、オペレーティング・システム（ＯＳ）情報、構成（ｃｏｎｆｉｇ）情報、およびディスク情報）。図示されているように、種々のロジック片をファイル・システムにマッピングすることができる。例えば、ロジックの第１のセット４０６を第１のアプリケーション４０８にマッピングすることができ、ロジックの第２のセット４１０を第２のアプリケーション４１２にマッピングすることができる。
【００５３】
いくつかの実施態様によれば、構築されるアプリケーションは、コンプライアンス解析に使用することができる「Ｏｐｅｎｓｃａｐ」であってもよい。非限定例として、Ｏｐｅｎｓｃａｐに使用されるコードが解析されており、コードのサブセットのみ（例えば、小部分）のみが、開示されている態様によって実施されるために必要であると判定されている。したがって、ファイル・システムを変更するコードのような、実施される必要のないコードは実施されず、本明細書において論じられているようなコンピューティング・システムの効率を改善することができる。
【００５４】
図５は、本明細書において記載されている１つまたは複数の実施形態による、シリアライゼーションのための例示的な非限定的システム５００を示す。システム５００は、システム１００またはシステム２００あるいはその両方のコンポーネントまたは機能あるいはその両方のうちの１つまたは複数を備えることができ、逆も真である。
【００５５】
システム状態５０２によって開始して、５０４においてシリアライゼーションを実施することができる。本明細書において論じられているものとしては、シリアライゼーションとは、システム状態５０２を抽出し、バイナリ・フォーマットまたは別のフォーマットであってもよい異なるフォーマット（例えば、シリアライズされたシステム状態５０６）においてシステム状態５０２を表現することを指す。シリアライズされたシステム状態５０６は、ネットワーク５１０を介して輸送することができる５０８。
【００５６】
図示されているように、非レガシ・アプリケーション５１２は、ネットワーク５１０を介してシステム状態によって直接的に動作することができる。しかしながら、レガシ・アプリケーション５１４については、本明細書において論じられているように、デシリアライゼーション５１８などを通じて、デシリアライズされたシステム状態５１６を作成する必要がある。したがって、非レガシ・アプリケーション５１２およびレガシ・アプリケーション５１４は、いくつかの実施形態において、ともに配置されない。
【００５７】
図６は、本明細書において記載されている１つまたは複数の実施形態による、イベント作成および通知のための例示的な非限定的システム６００を示す。本明細書において記載されている他の実施形態において利用されている同様の要素の繰り返しの記載は、簡潔にするために省かれる。
【００５８】
システム６００は、システム１００、システム２００、またはシステム５００あるいはその組合せのコンポーネントまたは機能あるいはその両方のうちの１つまたは複数を備えることができ、逆も真である。システム６００は、擬似システム状態に応答して１つまたは複数のイベント通知を生成することができる通知コンポーネント６０２を備えることができる。１つまたは複数のイベント通知は、コンピューティング・デバイスの元の動作状態から切り離すことができる。
【００５９】
さらに、システム６００は、コンピューティング・デバイスの１つまたは複数の更新された擬似システム状態を作成することができる増強コンポーネント６０４を備えることができる。通知コンポーネント６０２は、１つまたは複数の更新された擬似システム状態に応答して、１つまたは複数のイベント通知のうちの１つのイベント通知を生成することができる。
【００６０】
本明細書において論じられているものとしては、システム６００は、１つまたは複数のクラウド計算エンティティ・デバイス（例えば、ＶＭ、コンテナ）の擬似システム状態を遡及的に再作成するフレームワークを提供することができる。さらに、擬似システム状態は、オペレーティング・システム間の互換性を維持するために指定されている規格のセットである、ＰＯＳＩＸに準拠することができる。例えば、ＰＯＳＩＸは、アプリケーション・プログラミング・インターフェース（ＡＰＩ、および、１つまたは複数のオペレーティング・システムによるソフトウェア互換性のための他のインターフェースを定義することができる。
【００６１】
本明細書において論じられているように、システムは、擬似状態を継続的に更新することができる。したがって、ソリューションを作成することができ、経時的に変化することができる。さらに、１つまたは複数のイベント通知機能を作成することができる。例えば、ａｕｄｉｔｄまたはｉｎｏｔｉｆｙあるいはその両方を、開示されている態様によって利用することができる。一例において、様々な態様は、様々なコンピューティング・デバイスにわたって動作することができる。例えばフレームワークは、新たなクラウド・スケールの解析を促進するために、すべてのクラウド・リソースにわたって大域または集約ビューを作成することを可能にすることができる。したがって、１つのコンピューティング・デバイス内で何かが変化すると、他のコンピューティング・デバイスを解析して、そこにも変更を適用すべきか否かを判定することができる（例えば、集約ビュー、グローバル・ビュー）。
【００６２】
いくつかの実施態様によれば、システム状態が変化するとき、１つまたは複数のクローラ・フレーム（例えば、収集されているデータ）が、継続的に変化し得る。様々な態様は、これらの変更を捕捉することができ、ａｕｄｉｔｄ、ｓｙｓｃａｌｌ追跡またはｉｎｏｔｉｆｙあるいはその両方、ファイルシステム変更の捕捉と意味的に等価であり得る帯域外イベント生成を可能にすることができる。これらのイベントを使用して、望ましくない変更を捕捉し、アクセス違反および通知のような様々なポリシを駆動することができる。
【００６３】
図７は、本明細書において記載されている１つまたは複数の実施形態による、データを集約するための例示的な非限定的システム７００を示す。本明細書において記載されている他の実施形態において利用されている同様の要素の繰り返しの記載は、簡潔にするために省かれる。
【００６４】
システム７００は、システム１００、システム２００、システム５００、またはシステム６００あるいはその組合せのコンポーネントまたは機能あるいはその両方のうちの１つまたは複数を備えることができ、逆も真である。
【００６５】
図示されているように、システム７００は、コンピューティング・デバイスのシステム状態と関連付けられるデータを累積することができる集約コンポーネント７０２を備えることができる。例えば、集約コンポーネント７０２は、システム状態データに関連する情報、および、他のシステム状態からのデータに関連する情報を保持することができる。
【００６６】
さらに、データは、例えば、関連システムを評価するために利用することができる履歴データとして保持することができる。
【００６７】
さらに、解析コンポーネント７０４が、コンピューティング・デバイスのシステム状態に関係する１つまたは複数の解析を収集することができる。１つまたは複数の解析は、集約コンポーネント７０２によって累積されるデータから独立して、解析コンポーネント７０４によって収集することができる。さらに、フレームワークコンポーネント１０２は、データおよび１つまたは複数の解析を、擬似システム状態に組み込むことができる。
【００６８】
いくつかの実施態様によれば、システム７００は、コンピューティング・デバイスを含む、システム・デバイスの複数のインスタンスにわたるアプリケーションおよびソフトウェアの多重化を可能にすることができる編成コンポーネント７０６を備えることができる。
【００６９】
特定の実施形態において、フレームワークコンポーネント１０２が、システム状態を再作成することができ、または、生成コンポーネント１０４が、人工知能の原理と関連付けられる分類、相関、推論もしくは表現またはその組合せに基づいて擬似システム状態を作成することができ、あるいはその両方が行われ得る。例えば、フレームワークコンポーネント１０２、生成コンポーネント１０４、および他のシステムコンポーネントは、利用されるべき様々なアプリケーションのロジックのセット、および、擬似システム状態について選択的に無視することができる様々なアプリケーションの論理の他のセットを判定するために、自動分類システムまたは自動分類プロセスあるいはその両方を利用することができる。１つの例において、フレームワークコンポーネント１０２または生成コンポーネント１０４あるいはその両方は、確率論または統計あるいはその両方に基づく解析（例えば、解析の効用およびコストへの分解）を利用して、１つまたは複数のアプリケーションのそれぞれのロジックおよび擬似システム状態に適用されるべき対応する特徴に関連する推論の学習または生成あるいはその両方を行うことができる。一態様において、フレームワークコンポーネント１０２または生成コンポーネント１０４あるいはその両方はそれぞれの推論コンポーネント（図示せず）を含み、適切に機能する擬似システム状態を達成するために適用されるべきロジックと関連付けられる推論の学習または生成あるいはその両方を促進するために、推論に基づく手順を部分的に利用して、フレームワークコンポーネント１０２または生成コンポーネント１０４あるいはその両方の自動化された態様をさらに増強することができる。フレームワークコンポーネント１０２または生成コンポーネント１０４あるいはその両方は、任意の適切な機械学習に基づく技法、統計に基づく技法、または確率論に基づく技法あるいはその組合せを利用することができる。例えば、フレームワークコンポーネント１０２または生成コンポーネント１０４あるいはその両方は、エキスパート・システム、ファジー論理、ＳＶＭ、隠れマルコフ・モデル（ＨＭＭ）、欲張り探索アルゴリズム、規則に基づくシステム、ベイズ・モデル（例えば、ベイズ・ネットワーク）、ニューラル・ネットワーク、他の非線形訓練技法、データ融合、効用に基づく解析システム、ベイズ・モデルを利用するシステムなどを利用することができる。別の態様において、フレームワークコンポーネント１０２または生成コンポーネント１０４あるいはその両方は、擬似システム状態の生成と関連付けられる機械学習計算のセットを実施することができる。例えば、フレームワークコンポーネント１０２または生成コンポーネント１０４あるいはその両方は、クラスタリング機械学習計算のセット、ロジスティック回帰機械学習計算のセット、決定ツリー機械学習計算のセット、ランダム・フォレスト機械学習計算のセット、回帰ツリー機械学習計算のセット、最小二乗機械学習計算のセット、インスタンスに基づく機械学習計算のセット、回帰機械学習計算のセット、サポート・ベクタ回帰機械学習計算のセット、ｋ平均機械学習計算のセット、スペクトラル・クラスタリング機械学習計算のセット、規則学習機械学習計算のセット、ベイズ機械学習計算のセット、ディープ・ボルツマン機械学習計算のセット、ディープ・ビリーフ・ネットワーク計算のセット、または擬似システム状態を作成するための異なる機械学習計算のセットあるいはその組合せを実施することができる。
【００７０】
図８は、本明細書において記載されている１つまたは複数の実施形態による、擬似システムとしてのクラウド・コンピューティング・データの表現および解析を促進する例示的な非限定的コンピュータ実施方法８００の流れ図を示す。本明細書において記載されている他の実施形態において利用されている同様の要素の繰り返しの記載は、簡潔にするために省かれる。
【００７１】
コンピュータ実施方法８００の８０２において、プロセッサに動作可能に結合されているシステムが、（例えば、フレームワークコンポーネント１０２を介して）コンピューティング・デバイスのシステム状態をコンピューティング・デバイスの擬似システム状態として再作成することができる。コンピューティング・デバイスのシステム状態は、コンピューティング・デバイスの元のコンピューティング状態であり得る。擬似システム状態は、コンピューティング・デバイスの元の動作状態から切り離すことができ、元の動作状態から抽象化されたデータを含むことができる。さらに、抽象化されたデータは、コンピューティング・デバイスの動作を模倣することができる。
【００７２】
一実施態様において、コンピュータ実施方法８００は、システムによって、コンピューティング・デバイスのシステム状態から擬似システム状態を遡及的に作成することを含むことができる。それゆえ、コンピューティング・デバイスにソフトウェア・アプリケーションをインストールすることなく、システムの処理効率を増大させることができる。
【００７３】
いくつかの実施態様によれば、コンピューティング・デバイスは、第１のコンピューティング・デバイスとすることができ、擬似システム状態は、第１の擬似システム状態とすることができる。これらの実施態様に付加して、コンピュータ実施方法８００は、（例えば、フレームワークコンポーネント１０２を介して）コンピューティング・リソースにわたる、第１の擬似システム状態および第２の擬似状態のグローバル・ビューを作成することを含むことができる。コンピューティング・リソースは、第１のコンピューティング・デバイスおよび第２のコンピューティング・デバイスを含むことができる。
【００７４】
コンピュータ実施方法８００の８０４において、システムは、（例えば、生成コンポーネント１０４を介して）擬似システム状態を作成することができ、擬似システム状態上でのソフトウェアのブラック・ボックス実行を促進することができる。ブラック・ボックス実行は、アプリケーションがコンピューティング・デバイスの元の動作状態において実行しているかのように、擬似システム状態においてアプリケーションを作動させることを含むことができる。
【００７５】
一実施態様によれば、コンピュータ実施方法８００は、システムにより、（例えば、出力コンポーネント１０６を介して）ポータブル・オペレーティング・システム・インターフェース・プロトコルに準拠することができるインターフェースを介して擬似システム状態をレンダリングすることを含むことができる。例えば、擬似システム状態は、限定ではないが、視覚フォーマットおよび可聴フォーマットを含む様々な知覚可能フォーマットにレンダリングすることができる。
【００７６】
図９は、本明細書において記載されている１つまたは複数の実施形態による、イベント生成および通知を促進する例示的な非限定的コンピュータ実施方法９００の流れ図を示す。本明細書において記載されている他の実施形態において利用されている同様の要素の繰り返しの記載は、簡潔にするために省かれる。
【００７７】
コンピュータ実施方法９００は、プロセッサに動作可能に結合されているシステムが、（例えば、フレームワークコンポーネント１０２を介して）コンピューティング・デバイスのシステム状態をコンピューティング・デバイスの擬似システム状態として再作成することができる９０２において開始する。コンピューティング・デバイスは、例えば、仮想機械、サーバ、または別のデバイスであってもよい。コンピュータ実施方法９００の９０４において、システムは、（例えば、生成コンポーネント１０４を介して）擬似システム状態を作成することができ、擬似システム状態上でのソフトウェアのブラック・ボックス実行を促進することができる。ブラック・ボックス実行は、アプリケーションが元のシステム（例えば、コンピューティング・デバイスのシステム状態）上で実行しているかのように、アプリケーションを実行することを可能にすることができる。
【００７８】
さらに、コンピュータ実施方法９００の９０６において、システムは、（例えば、通知コンポーネント６０２を介して）擬似システム状態に応答して１つまたは複数のイベント通知を生成することができる。１つまたは複数のイベント通知は、コンピューティング・デバイスの元の動作状態から切り離すことができる（例えば、擬似システム状態によって実行することができる）。
【００７９】
いくつかの実施態様によれば、コンピュータ実施方法９００の９０８において、システムは、（例えば、増強コンポーネント６０４を介して）コンピューティング・デバイスの１つまたは複数の更新された擬似システム状態を作成することができる。これらの実施態様に付加して、コンピュータ実施方法９００の９１０において、システムは、（例えば、増強コンポーネント６０４を介して）１つまたは複数の更新された擬似システム状態に応答して上記１つまたは複数のイベント通知からイベント通知を生成することができる。
【００８０】
図１０は、本明細書において記載されている１つまたは複数の実施形態による、集約データ生成を促進する例示的な非限定的コンピュータ実施方法１０００の流れ図を示す。本明細書において記載されている他の実施形態において利用されている同様の要素の繰り返しの記載は、簡潔にするために省かれる。
【００８１】
コンピュータ実施方法１０００の１００２において、プロセッサに動作可能に結合されているシステムが、（例えば、フレームワークコンポーネント１０２を介して）１つまたは複数の計算エンティティ・デバイスのそれぞれのヒューズ・ファイルシステムからのデータ収集デバイス・フレーム（例えば、クローラ・フレーム）を使用して１つまたは複数の計算エンティティ・デバイスのそれぞれの擬似システム状態を遡及的に作成することができる。さらに、コンピュータ実施方法１０００の１００４において、システムは、（例えば、生成コンポーネント１０４を介して）それぞれの擬似システム状態を継続的に更新することができる。いくつかの実施態様において、それぞれの擬似システム状態は、ポータブル・オペレーティング・システム・インターフェースに準拠することができる。
【００８２】
コンピュータ実施方法１０００の１００６において、システムは、（例えば、生成コンポーネント１０４を介して）それぞれの擬似システム状態上でのアプリケーションのブラック・ボックス実行を促進することができる。アプリケーションは、１つまたは複数の計算エンティティ・デバイス上での実行を模倣するためにそれぞれの擬似システム状態において実行することができる。さらに、それぞれの擬似システム状態は、ポータブル・オペレーティング・システム・インターフェースに準拠することができる。
【００８３】
１つまたは複数の計算エンティティ・デバイスのそれぞれのシステム状態と関連付けられるデータを、システムによって、（例えば、集約コンポーネント７０２を介して）コンピュータ実施方法１０００の１００８において累積することができる。さらに、コンピュータ実施方法１０００の１０１０において、システムは、（例えば、解析コンポーネント７０４を介して）１つまたは複数の計算エンティティ・デバイスのそれぞれのシステム状態に関連する１つまたは複数の解析を収集することができる。１つまたは複数の解析は、データの累積から独立して収集することができる。コンピュータ実施方法１０００は、システムが、（例えば、フレームワークコンポーネント１０２を介して）データおよび１つまたは複数の解析をそれぞれの擬似システム状態に組み込む１０１２において継続することができる。
【００８４】
いくつかの実施態様によれば、コンピュータ実施方法１０００は、システムによって、（例えば、通知コンポーネント６０２を介して）それぞれの擬似システム状態に応答することができる１つまたは複数のイベント通知機能を構築することを含むことができる。１つまたは複数の実施態様によれば、コンピュータ実施方法１０００は、システムによって、（例えば、集約コンポーネント７０２を介して）１つまたは複数の計算エンティティ・デバイスにわたる集約ビューの作成に基づいて、大域スケールの解析を促進することを含むことができる。
【００８５】
説明を単純にするために、コンピュータ実施方法は、一連の行動として図示および記載されている。本発明は、図示されている行動または行動の順序あるいはその両方によって限定されず、例えば、行動は、様々な順序においてまたは同時にあるいはその両方で、本明細書において提示されておらず、記載されていない他の行動を伴って行われてもよいことは理解および諒解されたい。さらに、開示されている主題によるコンピュータ実施方法を実施するためにすべての図示されている行動が必要とされ得るとは限らない。加えて、コンピュータ実施方法は代替的に、状態図またはイベントを介して一連の相互に関連する状態として表現されてもよいことが、当業者には理解および諒解されよう。加えて、以下におよび本明細書全体を通じて開示されているコンピュータ実施方法は、このようなコンピュータ実施方法のコンピュータへの移送および転送を容易にする製造品上に記憶されることが可能であることがさらに認識されるべきである。製造品という語は、本明細書において使用される場合、任意のコンピュータ可読デバイスまたは記憶媒体からアクセス可能なコンピュータ・プログラムを包含するように意図される。
【００８６】
開示されている主題の様々な態様のコンテキストを提供するために、図１１および以下の論述は、開示されている主題の様々な態様を実施することができる適切な環境の全般的な記載を提供するように意図されている。図１１は、本明細書において記載されている１つまたは複数の実施形態を促進することができる例示的な非限定的動作環境のブロック図を示す。本明細書において記載されている他の実施形態において利用されている同様の要素の繰り返しの記載は、簡潔にするために省かれる。図１１を参照すると、本開示の様々な態様を実施するための適切な動作環境１１００はまた、コンピュータ１１１２を含むことができる。コンピュータ１１１２はまた、処理装置１１１４と、システム・メモリ１１１６と、システム・バス１１１８とを含むことができる。システム・バス１１１８は、限定ではないが、システム・メモリ１１１６を含むシステムコンポーネントを、処理装置１１１４に結合する。処理装置１１１４は、様々な入手可能なプロセッサのいずれかであってもよい。デュアル・マイクロプロセッサおよび他のマルチプロセッサ・アーキテクチャも、処理装置１１１４として利用することができる。システム・バス１１１８は、メモリ・バスもしくはメモリ・コントローラ、周辺バスもしくは外部バス、または、限定ではないが、業界標準アーキテクチャ（ＩＳＡ）、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）、拡張ＩＳＡ（ＥＩＳＡ）、インテリジェント・ドライブ・エレクトロニクス（ＩＤＥ）、ＶＥＳＡローカル・バス（ＶＬＢ）、周辺コンポーネント相互接続（ＰＣＩ）、カード・バス、ユニバーサル・シリアル・バス（ＵＳＢ）、アドバンスド・グラフィック・ポート（ＡＧＰ）、ファイアワイヤ（ＩＥＥＥ１３９４）、および小型コンピュータ・システム・インターフェース（ＳＣＳＩ）を含む任意の様々な入手可能なバス・アーキテクチャを使用するローカル・バスあるいはその組合せを含むいくつかのタイプのバス構造のいずれかであってもよい。システム・メモリ１１１６はまた、揮発性メモリ１１２０および不揮発性メモリ１１２２を含むことができる。起動中などにコンピュータ１１１２内の要素間で情報を転送する基本ルーチンを含む基本入出力システム（ＢＩＯＳ）が、不揮発性メモリ１１２２内に記憶される。限定ではなく例示として、不揮発性メモリ１１２２は、読み出し専用メモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、電気的プログラム可能ＲＯＭ（ＥＰＲＯＭ）、電気的消去可能プログラマブルＲＯＭ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、または不揮発性ランダム・アクセス・メモリ（ＲＡＭ）（例えば、強誘電体ＲＡＭ（ＦｅＲＡＭ））を含むことができる。揮発性メモリ１１２０はまた、外部キャッシュ・メモリとして作用するランダム・アクセス・メモリＲＡＭ）を含むことができる。限定ではなく例示として、ＲＡＭは、スタティックＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、ダブル・データ・レートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、拡張型ＳＤＲＡＭ（ＥＳＤＲＡＭ）、同期リンクＤＲＡＭ（ＳＬＤＲＡＭ）、ダイレクトＲａｍｂｕｓ（Ｒ）ＲＡＭ（ＤＲＲＡＭ）、ダイレクトＲａｍｂｕｓ���Ｒ）ダイナミックＲＡＭ（ＤＲＤＲＡＭ）、およびＲａｍｂｕｓ（Ｒ）ダイナミックＲＡＭのような、多くの形態で入手可能である。
【００８７】
コンピュータ１１１２はまた、取り外し可能／固定、揮発性／不揮発性コンピュータ記憶媒体を含むことができる。図１１は、例えば、ディスク記憶装置１１２４を示す。ディスク記憶装置１１２４はまた、限定ではないが、磁気ディスク・ドライブ、フロッピー（Ｒ）ディスク・ドライブ、テープ・ドライブ、Ｊａｚドライブ、Ｚｉｐドライブ、ＬＳ−１００ドライブ、フラッシュ・メモリ・カード、またはメモリ・スティックのようなデバイスを含むことができる。ディスク記憶装置１１２４はまた、他の記憶媒体とは別個にまたは他の記憶媒体と組み合わせて、限定ではないが、コンパクト・ディスクＲＯＭデバイス（ＣＤ−ＲＯＭ）、ＣＤレコーダブル・ドライブ（ＣＤ−Ｒドライブ）、ＣＤリライタブル・ドライブ（ＣＤ−ＲＷドライブ）、またはデジタル多用途ディスクＲＯＭドライブ（ＤＶＤ−ＲＯＭ）のような光ディスク・ドライブを含む、記憶媒体を含むことができる。システム・バス１１１８へのディスク記憶装置１１２４の接続を促進するために、インターフェース１１２６のような、取り外し可能または取り外し不能インターフェースが一般的に使用される。図１１はまた、ユーザと、適切な動作環境１１００内に記載されている基本コンピュータ・リソースとの間の中間物として作用するソフトウェアをも示している。そのようなソフトウェアはまた、例えば、オペレーティング・システム１１２８を含むことができる。ディスク記憶装置１１２４に記憶することができるオペレーティング・システム１１２８は、コンピュータ１１１２のリソースを制御および配分するように作用する。システム・アプリケーション１１３０は、オペレーティング・システム１１２８によって、例えば、システム・メモリ１１１６内またはディスク記憶装置１１２４上のいずれかに記憶されているプログラム・モジュール１１３２およびプログラム・データ１１３４を通じてリソースの管理を利用する。本開示は、様々なオペレーティング・システムまたはオペレーティング・システムの組合せによって実施することができることは諒解されたい。ユーザは、入力デバイス１１３６を通じてコンピュータ１１１２にコマンドまたは情報を入力する。入力デバイス１１３６は、限定ではないが、マウス、トラックボール、スタイラス、タッチ・パッドのようなポインティング・デバイス、キーボード、マイクロフォン、ジョイスティック、ゲーム・パッド、サテライト・ディッシュ、スキャナ、ＴＶチューナ・カード、デジタル・カメラ、デジタル・ビデオ・カメラ、ウェブ・カメラなどを含む。これらのおよび他の入力デバイスはインターフェース・ポート１１３８を介して、システム・バス１１１８を通じて処理装置１１１４に接続する。インターフェース・ポート１１３８は、例えば、シリアル・ポート、パラレル・ポート、ゲーム・ポート、およびユニバーサル・シリアル・バス（ＵＳＢ）を含む。出力デバイス１１４０は、入力デバイス１１３６と同じタイプのポートのいくつかを使用する。したがって、例えば、ＵＳＢポートを使用して、入力をコンピュータ１１１２に提供し、コンピュータ１１１２からの情報を出力デバイス１１４０に出力することができる。特別なアダプタを必要とする、他の出力デバイス１１４０の中でも、モニタ、スピーカ、およびプリンタ等のいくつかの出力デバイス１１４０が存在することを示すために、出力アダプタ１１４２が提供される。限定ではなく、例示として、出力アダプタ１１４２は、出力デバイス１１４０とシステム・バス１１１８との間の接続の方法を提供するビデオ・カードおよびサウンド・カードを含む。リモート・コンピュータ１１４４等の他のデバイスまたはデバイスのシステムあるいはその両方が、入力機能と出力機能の両方を提供することに留意されたい。
【００８８】
コンピュータ１１１２は、リモート・コンピュータ１１４４のような１つまたは複数のリモート・コンピュータに対する論理接続を使用して、ネットワーク接続環境において動作することができる。リモート・コンピュータ１１４４は、コンピュータ、サーバ、ルータ、ネットワークＰＣ、ワークステーション、マイクロプロセッサに基づく機器、ピア・デバイスまたは他の共通ネットワーク・ノードなどであってよく、通常、コンピュータ１１１２に関して記載した要素の多くまたはすべてをも含んでもよい。簡潔にするために、メモリ記憶デバイス１１４６のみが、リモート・コンピュータ１１４４とともに示されている。リモート・コンピュータ１１４４は、ネットワーク・インターフェース１１４８を通じてコンピュータ１１１２に論理的に接続され、次いで、通信接続１１５０を介して物理的に接続される。ネットワーク・インターフェース１１４８は、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、セルラ・ネットワーク等の、有線通信ネットワークまたは無線通信ネットワークあるいはその両方を含む。ＬＡＮ技術は、光ファイバ分散データ・インターフェース（ＦＤＤＩ）、銅線分散データ・インターフェース（ＣＤＤＩ）、Ｅｔｈｅｒｎｅｔ（Ｒ）、トークン・リングなどを含む。ＷＡＮ技術は、限定ではないが、ポイント・ツー・ポイント・リンク、統合サービス・デジタル通信網（ＩＳＤＮ）およびその変形等の回線交換網、パケット交換網、ならびにデジタル加入者回線（ＤＳＬ）を含む。通信接続１１５０は、ネットワーク・インターフェース１１４８をシステム・バス１１１８に接続するために利用されるハードウェア／ソフトウェアを指す。通信接続１１５０は、例示を明瞭にするために、コンピュータ１１１２内に示されているが、通信接続１１５０はまた、コンピュータ１１１２の外部にあってもよい。ネットワーク・インターフェース１１４８への接続のためのハードウェア／ソフトウェアはまた、例示のみを目的として、通常の電話用モデムを含むモデム、ケーブル・モデムおよびＤＳＬモデム、ＩＳＤＮアダプタ、ならびにＥｔｈｅｒｎｅｔ（Ｒ）カード等の内部技術および外部技術を含んでもよい。
【００８９】
本発明は、任意の可能な技術的詳細レベルの統合における、システム、方法、装置またはコンピュータ・プログラム製品あるいはその組合せであってもよい。コンピュータ・プログラム製品は、プロセッサに、本発明の諸態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体を含み得る。コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持および記憶することができる有形デバイスとすることができる。コンピュータ可読記憶媒体は例えば、限定ではないが、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、または上記の任意の適切な組合せであってもよい。コンピュータ可読記憶馬体のより特定的な例の包括的でないリストはまた、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み出し専用メモリ（ＲＯＭ）、消去可能プログラマブル読み出し専用メモリ（ＥＰＲＯＭまたはフラッシュ・メモリ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、ポータブル・コンパクト・ディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリ・スティック、フロッピー（Ｒ）ディスク、パンチ・カード、または、命令を記録されている溝の中の隆起構造のような機械的に符号化されているデバイス、および、上記の任意の適切な組合せを含むことができる。コンピュータ可読記憶媒体は、本明細書において使用されるものとしては、無線波、または、他の自由に伝播する電磁波、導波路もしくは他の伝送媒体（例えば、光ファイバケーブルを通過する光パルス）を通じて伝播する電磁波、または、ワイヤを通じて伝送される電気信号のような、過渡的信号自体として解釈されるべきではない。
【００９０】
本明細書において記載されているコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング／処理デバイスへ、または、ネットワーク、例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワークもしくはワイヤレス・ネットワークまたはその組合せを介して外部コンピュータもしくは外部記憶デバイスへダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータまたはエッジ・サーバあるいはその両方を含んでもよい。各コンピューティング／処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェースが、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれのコンピューティング／処理デバイス内のコンピュータ可読記憶媒体内に記憶するために、コンピュータ可読プログラム命令を転送する。本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ（ＩＳＡ）命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データ、または、Ｓｍａｌｌｔａｌｋ（Ｒ）、Ｃ＋＋などのようなオブジェクト指向プログラミング言語、および、「Ｃ」プログラミング言語もしくは同様のプログラミング言語のような手続き型プログラミング言語を含む、１つまたは複数のプログラミング言語の任意の組合せで書かれているソース・コードもしくはオブジェクト・コードのいずれかであってもよい。コンピュータ可読プログラム命令は、その全体をユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、独立型ソフトウェア・パッケージとして、部分的にユーザのコンピュータ上でかつ部分的に遠隔コンピュータ上で、またはその全体を遠隔コンピュータもしくはサーバ上で実行することができる。後者のシナリオにおいて、遠隔コンピュータが、ユーザのローカル・エリア・ネットワーク（ＬＡＮ）もしくは広域ネットワーク（ＷＡＮ）を含む任意のタイプのネットワークを通じてユーザのコンピュータに接続されてもよく、または、接続は、外部コンピュータに対して（例えば、インターネット・サービス・プロバイダを使用してインターネットを通じて）行われてもよい。いくつかの実施形態において、例えば、プログラム可能論理回路、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、またはプログラム可能論理アレイ（ＰＬＡ）を含む電子回路が、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路をカスタマイズすることによって、コンピュータ可読プログラム命令を実行することができる。
【００９１】
本発明の態様は、本明細書において、本発明の実施形態による、方法、装置（システム）およびコンピュータ・プログラム製品のフローチャートの図またはブロック図あるいはその両方を参照して説明されている。フローチャートの図またはブロック図あるいはその両方の各ブロック、および、フローチャートの図またはブロック図あるいはその両方の中の複数のブロックの組合せはそれぞれ、コンピュータ可読プログラム命令によって実装されることができることは理解されよう。これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラム可能データ処理装置のプロセッサを介して実行する命令が、フローチャートの図またはブロック図あるいはその両方の１つまたは複数のブロックにおいて指定される機能／動作を実施するための方法を作り出すように、汎用コンピュータ、専用コンピュータ、または他のプログラム可能データ処理装置のプロセッサに提供されて機械を生成するものであってよい。これらのコンピュータ可読プログラム命令はまた、命令が記憶されているコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックに指定される機能／動作の態様を実施する命令を含む製造品を含むように、コンピュータ可読記憶媒体内に記憶され、コンピュータ、プログラム可能データ処理装置、または他のデバイスあるいはその組合せに特定の様式で機能するように指示することができるものであってもよい。コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブル装置、または他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックにおいて指定される機能／動作を実施するように、コンピュータで実施されるプロセスを生成するために、コンピュータ、他のプログラム可能データ処理装置、または他のデバイス上にロードされて、コンピュータ、他のプログラマブル装置、または他のデバイス上で一連の動作ステップを実行させるものであってもよい。
【００９２】
図面内のフローチャートおよびブロック図は本発明の様々な実施形態によるシステム、方法およびコンピュータ・プログラム製品の可能な実施態様のアーキテクチャ、機能、および動作を例示する。これに関連して、流れ図およびブロック図内の各ブロックは、指定の論理機能を実施するための１つまたは複数の実行可能命令を含む、モジュール、セグメント、または命令の一部分を表すことができる。いくつかの代替的な実施態様において、ブロックに記載されている機能は、図面に記載されている順序と一致せずに行われてもよい。例えば、連続して示されている２つのブロックは実際には、関与する機能に応じて、実質的に同時に実行されてもよく、または、これらのブロックは、時として逆順に実行されてもよい。また、ブロック図または流れ図あるいはその両方の図解の各ブロック、およびブロック図または流れ図あるいはその両方の図解のブロックの組合せは、指定の機能もしくは動作を実施するか、または、専用ハードウェアとコンピュータ命令との組合せを実行する専用ハードウェアベース・システムによって実施することができることも留意されよう。
【００９３】
コンピュータ上で作動するコンピュータ・プログラム製品のコンピュータ実行可能命令の一般的な文脈において本主題を上述したが、本開示はまた、他のプログラム・モジュールと組み合わせて実施されてもよいことが、当業者には認識されよう。一般的に、プログラム・モジュールは、特定のタスクを実施することまたは特定の抽象データ型を実装することあるいはその両方を行うルーチン、プログラム、コンポーネント、データ構造などを含む。その上、本発明のコンピュータ実施方法は、シングル・プロセッサまたはマルチプロセッサ・コンピュータ・システム、ミニ・コンピューティング・デバイス、メインフレーム・コンピュータ、および、コンピュータ、手持ち式コンピューティング・デバイス（例えば、ＰＤＡ、電話機）、マイクロプロセッサに基づくまたはプログラム可能消費者または産業用電子機器などを含む、他のコンピュータ・システム構成によって実践されてもよいことが、当業者には諒解されよう。例示される態様は、タスクが、通信ネットワークを通じてリンクされる遠隔処理デバイスによって実行される、分散コンピューティング環境において実践されることもできる。しかしながら、本開示のすべてではなくとも一部の態様は、独立型コンピュータ上で実践されてもよい。分散コンピューティング環境において、プログラム・モジュールは、ローカルおよび遠隔メモリ記憶デバイスの両方内に位置してもよい。
【００９４】
本開示は、クラウド・コンピューティングに関する詳細な説明を含むが、本明細書において記載されている教示の実施態様は、クラウド・コンピューティング環境に限定されないことは理解されたい。むしろ、本発明の実施形態は、現在知られているかまたは後に開発される任意の他のタイプのコンピューティング環境と共に実施されることが可能である。
【００９５】
クラウド・コンピューティングは、最小限の管理労力またはサービスの提供者との対話によって迅速に提供しリリースすることができる、設定可能なコンピューティング・リソース（例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想機械、およびサービス）の共有されるプールに対する簡便なオンデマンドのネットワーク・アクセスを可能にするためのサービス配信のモデルである。このクラウド・モデルは、少なくとも５つの特性、少なくとも３つのサービス・モデル、および少なくとも４つの展開モデルを含むことができる。それらの特性は以下のとおりである。オンデマンド・セルフサービス：クラウド顧客は、人間がサービスの提供者と対話することなく、必要に応じて自動的に、サーバ時間およびネットワーク・ストレージのようなコンピューティング能力を一方的に供給することができる。ブロード・ネットワーク・アクセス：機能がネットワークを介して利用可能であり、異種のシンまたはシック・クライアント・プラットフォーム（例えば、携帯電話、ラップトップ、およびＰＤＡ）による使用を促進する標準的なメカニズムを通じてアクセスされる。リソース・プーリング：提供者のコンピューティング・リソースが、種々の物理的および仮想リソースが需要に従って動的に割り当てられ、再割り当てされる、マルチテナント・モデルを使用して、複数の消費者にサービスするためにプールされる。消費者が一般的に、提供されるリソースの正確なロケーションに対する制御または知識を有しないが、上位の抽象化（例えば、国家、州、またはデータ・センター）におけるロケーションを指定することが可能であり得るという点において、位置独立の感覚がある。スピーディな拡張性：機能を、場合によっては自動的に、迅速かつ適応的に供給して、迅速にスケール・アウトし、迅速にリリースして、迅速にスケール・インすることができる。消費者にとって、供給するために利用可能な機能は多くの場合、無制限であるように見え、いつでも任意の量を購入することができる。サービスが計測可能であること：クラウド・システムは、サービスのタイプにとって適切な何らかのレベルの抽象化（例えば、ストレージ、処理、帯域幅、およびアクティブなユーザ・アカウント）における計量機能を活用することによって、リソース使用を自動的に制御および最適化する。リソース使用は、監視、制御、および報告することができ、利用されるサービスの提供者と消費者の両方にとっても透明性を提供する。
【００９６】
サービス・モデルは以下のとおりである。サービス型ソフトウェア（ＳａａＳ）：消費者に提供される機能は、クラウド・インフラストラクチャ上で作動する提供者のアプリケーションを使用することである。アプリケーションは、ウェブ・ブラウザ（例えば、ウェブベースの電子メール）のようなシン・クライアント・インターフェースを通じて様々なクライアント・デバイスからアクセス可能である。消費者は、場合によっては制限されたユーザ特有のアプリケーション構成設定を除いて、ネットワーク、サーバ、オペレーティング・システム、ストレージ、またはさらには個々のアプリケーション機能を含む、基礎となるクラウド・インフラストラクチャを管理せず、制御しない。サービス型プラットフォーム（ＰａａＳ）：消費者に提供される機能は、プログラミング言語および提供者によってサポートされるツールを使用して作成された、消費者が作成または取得しているアプリケーションを、クラウド・インフラストラクチャ上に展開することである。消費者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む、基礎となるクラウド・インフラストラクチャを管理せず、制御しないが、展開されているアプリケーション、および、場合によっては、環境設定をホストするアプリケーションを制御する。サービス型インフラストラクチャ（ＩａａＳ）：消費者に提供される機能は、消費者が、オペレーティング・システムおよびアプリケーションを含むことができる、任意のソフトウェアを展開および作動させることが可能である場合に、処理、ストレージ、ネットワーク、および他の基礎的なコンピューティング・リソースを供給することである。消費者は、基礎となるクラウド・インフラストラクチャを管理せず、制御しないが、オペレーティング・システム、ストレージ、展開されているアプリケーションを制御し、場合によっては、ネットワーク接続コンポーネント（例えば、ホスト・ファイアウォール）の選択を制限付きで制御する。
【００９７】
展開モデルは以下のとおりである。プライベート・クラウド：クラウド・インフラストラクチャは、組織のためにのみ運用される。当該インフラストラクチャは、組織またはサード・パーティによって管理され得、施設内または施設外に存在し得る。コミュニティ・クラウド：クラウド・インフラストラクチャは、いくつかの組織によって共有され、関心事（例えば、任務、セキュリティ要件、ポリシ、およびコンプライアンス考慮事項）を共有している特定のコミュニティをサポートする。当該インフラストラクチャは、組織またはサード・パーティによって管理され得、施設内または施設外に存在し得る。公衆クラウド：クラウド・インフラストラクチャは、一般人または大規模な業界団体にとって利用可能にされ、クラウド・サービスを販売する組織によって所有される。ハイブリッド・クラウド：クラウド・インフラストラクチャは、固有の実体を保持するが、データおよびアプリケーションの移植性（例えば、クラウド間の負荷平衡のためのクラウド・バースティング）を有効化する標準化されたまたは専有の技術によってともに拘束される２つ以上のクラウド（プライベート、コミュニティ、または公衆）から成る構成体である。
【００９８】
クラウド・コンピューティング環境は、処理状態を把握しないこと、コンピュータ使用が少ないこと、モジュール方式であること、およびセマンティック相互運用性であることに焦点を当てた、サービス指向のものである。クラウド・コンピューティングの中核には、相互接続されたノードのネットワークを含むインフラストラクチャがある。
【００９９】
ここで図１２を参照すると、例示的なクラウド・コンピューティング環境１２５０が示されている。図示されているように、クラウド・コンピューティング環境１２５０は、例えば、個人情報端末（ＰＤＡ）もしくは携帯電話１２５４Ａ、デスクトップ・コンピュータ１２５４Ｂ、ラップトップ・コンピュータ１２５４Ｃ、または自動車コンピュータ・システム１２５４Ｎあるいはその組合せのような、クラウド消費者によって使用されるローカル・コンピューティング・デバイスが通信することができる１つまたは複数のクラウド・コンピューティング・ノード１２１０を含む。ノード１２１０は、互いに通信することができる。それらのノードは、上記で説明したようなプライベート、コミュニティ、公衆、またはハイブリッド・クラウド、またはその組合せのような、１つまたは複数のネットワークに物理的または仮想的にグループ化され得る（図示せず）。これによって、クラウド・コンピューティング環境１２５０は、インフラストラクチャ、プラットフォームまたはソフトウェアあるいはその組合せをサービスとして提供することが可能になり、そのため、クラウド消費者は、ローカル・コンピューティング・デバイス上にリソースを維持する必要がない。図１２に示すコンピューティング・デバイス１２５４Ａ〜Ｎのタイプは例示的であるようにのみ意図されており、コンピューティング・ノード１２１０およびクラウド・コンピューティング環境１２５０は、（例えば、ウェブ・ブラウザを使用して）任意のタイプのネットワークまたはネットワーク・アドレス指定可能接続あるいはその両方を介して任意のタイプのコンピュータ化デバイスと通信することができることが理解される。
【０１００】
ここで図１３を参照すると、クラウド・コンピューティング環境１２５０（図１２）によって提供される機能抽象化レイヤのセットが示されている。図１３に示すコンポーネント、レイヤ、および機能は、例示的であるようにのみ意図されており、本発明の実施形態はこれに限定されないことは、事前に理解されたい。図示されているように、以下のレイヤおよび対応する機能が提供される。ハードウェアおよびソフトウェア・レイヤ１３６０は、ハードウェアおよびソフトウェアコンポーネントを含む。ハードウェアコンポーネントの例は、メインフレーム１３６１、ＲＩＳＣ（縮小命令セット・コンピュータ）アーキテクチャベースのサーバ１３６２、サーバ１３６３、ブレード・サーバ１３６４、記憶デバイス１３６５、ならびにネットワークおよびネットワーク接続コンポーネント１３６６を含む。いくつかの実施形態において、ソフトウェアコンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア１３６７およびデータベース・ソフトウェア１３６８を含む。
【０１０１】
仮想化レイヤ１３７０が、仮想エンティティの以下の例、すなわち、仮想サーバ１３７１、仮想ストレージ１３７２、仮想私設ネットワークを含む仮想ネットワーク１３７３、仮想アプリケーションおよびオペレーティング・システム１３７４、ならびに仮想クライアント１３７５を提供することができる抽象化レイヤを提供する。
【０１０２】
一例において、管理レイヤ１３８０が、後述する機能を提供することができる。リソース・プロビジョニング１３８１が、コンピューティング・リソース、および、クラウド・コンピューティング環境内でタスクを実施するために利用される他のリソースの動的な調達を可能にする。計量および価格決定１３８２が、クラウド・コンピューティング環境内でリソースが利用されるときのコスト追跡、および、これらのリソースの消費に対する課金または請求を可能にする。一例において、これらのリソースは、アプリケーション・ソフトウェア使用許諾を含んでもよい。セキュリティが、クラウド消費者およびタスクの識別検証、ならびに、データおよび他のリソースの保護を可能にする。ユーザ・ポータル１３８３が、消費者およびシステム管理者がクラウド・コンピューティング環境にアクセスすることを可能にする。サービス・レベル管理１３８４が、必要なサービス・レベルが満たされるように、クラウド・コンピューティング・リソース配分および管理を可能にする。サービス品質保証契約（ＳＬＡ）計画および履行１３８５は、ＳＬＡにより将来必要とされることが予測されるクラウド・コンピューティング・リソースの事前手配、調達を可能にする。
【０１０３】
作業負荷レイヤ１３９０は、クラウド・コンピューティング環境が利用され得る機能の例を与える。このレイヤから提供される可能性がある作業負荷および機能の例は、マッピングおよびナビゲーションコンポーネント１３９１、ソフトウェア開発およびライフサイクル管理コンポーネント１３９２、仮想教室の教育の配信コンポーネント１３９３、データ解析処理コンポーネント１３９４、トランザクション処理コンポーネント１３９５、ならびに表現および解析コンポーネント１３９６を含む。
【０１０４】
本出願において使用されるものとしては、「コンポーネント」、「システム」、「プラットフォーム」、「インターフェース」などの用語は、コンピュータ関連エンティティ、または、１つまたは複数の特定の機能を有する動作可能な機械に関連するエンティティを参照することができ、または、含むことができ、あるいはその両方とすることができる。本明細書において開示されるエンティティは、ハードウェア、ハードウェアとソフトウェアとの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかであってもよい。例えば、コンポーネントは、そのように限定されるものではないが、プロセッサ上で作動しているプロセス、プロセッサ、オブジェクト、実行ファイル、実行スレッド、プログラム、またはコンピュータあるいはその組合せであってもよい。例示として、サーバ上で作動しているプリケーションとサーバの両方が、コンポーネントになり得る。１つまたは複数のコンポーネントは、プロセスまたは実行スレッドあるいはその両方の中に存在してもよく、コンポーネントは、１つのコンピュータ上に局在化されてもよく、または、２つ以上のコンピュータの間で分散されてもよく、あるいは、その両方であってもよい。別の例において、それぞれのコンポーネントは、様々なデータ構造を記憶されている様々なコンピュータ可読媒体から実行することができる。コンポーネントは、１つまたは複数のデータ・パケット（例えば、ローカルシステム内で、分散システム内で別のコンポーネントと、または、インターネットのようなネットワークにわたって信号を介して他のシステムと、あるいはその組合せで対話する１つのコンポーネントからのデータ）を有する信号などに従って、ローカル・プロセスまたはリモート・プロセスあるいはその両方を介して通信することができる。別の例として、コンポーネントは、プロセッサによって実行されるソフトウェアまたはファームウェア・アプリケーションによって操作される、電気または電子回路によって操作される機械部品によって提供される特定の機能を有する装置であってもよい。そのような事例において、プロセッサは、装置の内部または外部にあってもよく、ソフトウェアまたはファームウェア・アプリケーションの少なくとも一部を実行することができる。また別の例として、コンポーネントは、機械部品なしに電子コンポーネントを通じて特別な機能を提供する装置であってもよく、電子コンポーネントは、プロセッサ、または、電子コンポーネントの機能を少なくとも部分的に与えるソフトウェアもしくはファームウェアを実行する他の方法を含んでもよい。一態様において、コンポーネントは、例えば、クラウド・コンピューティング・システム内で仮想機械を介して電子コンポーネントをエミュレートすることができる。
【０１０５】
加えて、「または」という用語は、排他的な「または」ではなく、包含的な「または」を意味するように意図されている。すなわち、別途指定されない限り、または文脈から明らかでない限り、「ＸはＡまたはＢを利用する」は、自然な包含的置換のうちのいずれかを意味するように意図される。すなわち、ＸがＡを利用する、ＸがＢを利用する、またはＸがＡとＢの両方を利用する場合、上記の事例のいずれかの下で、「ＸはＡまたはＢを利用する」が満足される。その上、本明細書および添付の図面で使用されるものとしての冠詞「ある（a）」および「１つの（an）」は、一般的に、別途指定されない限り、または文脈から単数形を対象とすることが明らかでない限り、「１つまたは複数の」を意味すると解釈されるべきである。本明細書において使用されるものとしては、用語「例」または「例示的」あるいはその両方は、例、事例、または実例としての役割を果たすことを意味するために利用される。疑義を避けるために、本明細書において開示されている主題は、そのような例によって限定されない。加えて、本明細書において「例」または「例示的」あるいはその両方として記載されているいずれの態様または設計も、必ずしも他の態様または設計よりも好ましいかまたは有利であると解釈されるべきでなく、当業者に知られている等価な例示的構造および技法を除外するようにも意図されない。
【０１０６】
本明細書において利用される場合、「プロセッサ」という用語は、限定ではないが、シングルコア・プロセッサ、ソフトウェア・マルチスレッド実行機能を有するシングル・プロセッサ、マルチコア・プロセッサ、ソフトウェア・マルチスレッド実行機能を有するマルチコア・プロセッサ、ハードウェア・マルチスレッド技術を有するマルチコア・プロセッサ、パラレル・プラットフォーム、および、分散共有メモリを有するパラレル・プラットフォームを含む、実質的に任意のコンピューティング処理装置またはデバイスを指すことができる。加えて、プロセッサは、集積回路、特定用途向け集積回路（ＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、プログラム可能論理コントローラ（ＰＬＣ）、結合プログラム可能論理回路（ＣＰＬＤ）、ディスクリート・ゲートまたはトランジスタ論理、ディスクリート・ハードウェアコンポーネント、または、本明細書において記載されている機能を実施するように設計されている任意のその組合せを参照することができる。さらに、プロセッサは、空間利用を最適にし、または、ユーザ機器の性能を増強するために、限定ではないが、分子および量子ドットに基づくトランジスタ、スイッチおよびゲートのようなナノスケール・アーキテクチャを利用することができる。プロセッサはまた、コンピューティング処理装置の組合せとして実施されてもよい。本開示において、「ストア」、「記憶装置」、「データ・ストア」、「データ記憶装置」、「データベース」のような用語、および、コンポーネントの動作および機能に関連する実質的に任意の他の情報記憶コンポーネントは、「メモリ」またはメモリを備えるコンポーネント内に具現化される「メモリコンポーネント」エンティティを指すために利用される。本明細書において記載されているメモリまたはメモリコンポーネントあるいはその両方は、揮発性メモリもしくは不揮発性メモリのいずれかであってもよく、または、揮発性メモリと不揮発性メモリの両方を含んでもよいことを諒解されたい。限定ではなく例示として、不揮発性メモリは、読み出し専用メモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、電気的プログラム可能ＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＲＯＭ（ＥＥＰＲＯＭ）、フラッシュ・メモリ、または不揮発性ランダム・アクセス・メモリ（ＲＡＭ）（例えば、強誘電体ＲＡＭ（ＦｅＲＡＭ））を含むことができる。揮発性メモリは、例えば、外部キャッシュ・メモリとして作用することができるＲＡＭを含むことができる。限定ではなく例示として、ＲＡＭは、同期ＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、ダブル・データ・レートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、拡張型ＳＤＲＡＭ（ＥＳＤＲＡＭ）、同期リンクＤＲＡＭ（ＳＬＤＲＡＭ）、ダイレクトＲａｍｂｕｓ（Ｒ）ＲＡＭ（ＤＲＲＡＭ）、ダイレクトＲａｍｂｕｓ（Ｒ）ダイナミックＲＡＭ（ＤＲＤＲＡＭ）、およびＲａｍｂｕｓ（Ｒ）ダイナミックＲＡＭ（ＲＤＲＡＭ）のような、多くの形態で入手可能である。加えて、本明細書におけるシステムまたはコンピュータ実施方法の開示されているメモリコンポーネント���、これらのおよび任意の他の適切なタイプのメモリを含むように意図されるが、含むように限定されるものではない。
【０１０７】
上述されているものは、システムおよびコンピュータ実施方法の例に過ぎない。無論、本開示を説明することを目的としてコンポーネントまたはコンピュータ実施方法のすべての考えられる組合せを記載することは不可能であるが、本開示の多くのさらなる組合せおよび置換が可能であることが、当業者には認識され得る。さらに、用語「含む」、「有する」、「保持する」などが詳細な説明、特許請求の範囲、付録および図面において使用されている範囲において、そのような用語は、特許請求の範囲において移行句として利用される場合に「備える」が解釈されるときの用語「備える」と同様に、包含的であるように意図される。様々な実施形態の説明は、例示の目的のために提示されているが、網羅的であることも、開示されている実施形態に限定されることも意図されていない。説明されている実施形態の範囲および思想から逸脱することなく、多くの変更および変形が当業者には明らかであろう。本明細書において使用されている用語は、実施形態の原理、実際の適用または市場に見出される技術にまさる技術的改善を最良に説明するため、または、当業者が本明細書において開示されている実施形態を理解することを可能にするために選択されている。
【図１】
2021503114.tif 000003
【図２】
2021503114.tif 000004
【図３】
2021503114.tif 000005
【図４】
2021503114.tif 000006
【図５】
2021503114.tif 000007
【図６】
2021503114.tif 000008
【図７】
2021503114.tif 000009
【図８】
2021503114.tif 000010
【図９】
2021503114.tif 000011
【図１０】
2021503114.tif 000012
【図１１】
2021503114.tif 000013
【図１２】
2021503114.tif 000014
【図１３】
2021503114.tif 000015
【国際調査報告】
2021503114.tif 000016
2021503114.tif 000017