(57)【要約】  コンピューティング製品の性能特性を取得するための方法及びシステムが記載される。コンピューティング製品の属性、有能性、及び特徴を取得する段階は、コンピューティング製品を評価して、製品の属性、有能性、及び特徴を判定する段階を含む。評価が終了すると、評価データが将来利用するために記録及び記憶される。評価は、評価ツールを介してオペレーティングシステムによって行うことができる。評価は、パーソナルコンピュータ、コンピュータ構成要素、コンピュータのクラスタ、及びサーバを含む種々のコンピューティング製品に対して行うことができる。【選択図】図５
2008538642.tif 000002
【特許請求の範囲】
【請求項１】
システム有能性評価を行うための方法であって、
コンピューティング製品に対する評価を行うリクエストを受け取る段階と、
少なくとも１つの属性、有能性、及び機能を含む少なくとも１つのコンピューティング製品特性を分析することによって評価データを判定する段階と、
前記評価データを記憶する段階と、
を含む方法。
【請求項２】
前記コンピューティング製品の評価データを判定する段階が、前記コンピューティング製品の複数の評価を行う段階を含む、
ことを特徴とする請求項１に記載の方法。
【請求項３】
前記コンピューティング製品が単一のコンピューティングデバイスである、
ことを特徴とする請求項１に記載の方法。
【請求項４】
前記コンピューティング製品がサーバである、
ことを特徴とする請求項１に記載の方法。
【請求項５】
前記コンピューティング製品がコンピューティングデバイスのクラスタである、
ことを特徴とする請求項１に記載の方法。
【請求項６】
前記評価データに基づいて前記コンピューティング製品に対する互換性格付けを生成する段階を更に含む、
ことを特徴とする請求項１に記載の方法。
【請求項７】
前記属性が、固有のシステム特性と、システムが標準規格に準拠している程度との少なくとも１つを含み、前記有用性が、個々のファンクション、タスク、ファンクションのクラス、及びタスクのクラスを効率的に実行する製品又はシステムの能力の少なくとも１つを含み、前記特徴が、顕著なシステム部分、構成要素、及び特性の少なくとも１つを含む、
ことを特徴とする請求項１に記載の方法。
【請求項８】
データ記憶装置、アプリケーションプログラムインタフェース、オペレーティングシステム、ユーザ、及び通信チャンネルからの情報を含む複数のファクターの少なくとも１つに基づいて評価を行う方法を判定する段階を更に含む、
ことを特徴とする請求項１に記載の方法。
【請求項９】
前記評価データを追加のコンピューティング製品に提供する段階を更に含む、
ことを特徴とする請求項１に記載の方法。
【請求項１０】
前記コンピューティング製品に対する評価を行うリクエストを受け取る段階、少なくとも１つの属性、有能性、及び特徴を含む少なくとも１つのコンピューティング製品特性を分析することによって評価データを判定する段階、及び前記評価データを記憶する段階が、オペレーティングシステムによって実行される、
ことを特徴とする請求項１に記載の方法。
【請求項１１】
コンピューティング製品に対する評価を行う要求を受け取る段階と、
少なくとも１つの属性、有能性、及び特徴を含む少なくとも１つのコンピューティング製品特性を分析することによって評価データを判定する段階と、
前記評価データを記憶する段階と、
を含む方法を実行するためのコンピュータ実行可能命令を有するコンピュータ可読媒体。
【請求項１２】
前記コンピューティング製品が単一のコンピューティングデバイスである、
ことを特徴とする請求項１１に記載のコンピュータ可読媒体。
【請求項１３】
前記コンピューティング製品がサーバである、
ことを特徴とする請求項１１に記載のコンピュータ可読媒体。
【請求項１４】
前記コンピューティング製品がコンピューティングデバイスのクラスタである、
ことを特徴とする請求項１１に記載のコンピュータ可読媒体。
【請求項１５】
前記評価データに基づいて前記コンピューティング製品に対する互換性格付けを生成するためのコンピュータ実行可能命令を更に含む、
ことを特徴とする請求項１１に記載のコンピュータ可読媒体。
【請求項１６】
前記属性が、固有のシステム特性と、システムが標準規格に準拠している程度との少なくとも１つを含み、前記有用性が、個々のファンクション、タスク、ファンクションのクラス、及びタスクのクラスを効率的に実行する製品又はシステムの能力の少なくとも１つを含み、前記特徴が、顕著なシステム部分、構成要素、及び特性の少なくとも１つを含む、
ことを特徴とする請求項１５に記載のコンピュータ可読媒体。
【請求項１７】
システム有能性評価を行うためのシステムであって、
コンピューティング製品についての評価を行うリクエストを受け取り、少なくとも１つの属性、有能性、及び機能を含む少なくとも１つのコンピューティング製品特性を分析することによって評価データを判定するためのプロセッサと、
少なくとも１つの属性、有能性、及び特徴を有する少なくとも１つのコンピューティング製品特性を含む評価データを記憶するための記憶デバイスと、
を備えるシステム。
【請求項１８】
前記プロセッサは、データ記憶装置、アプリケーションプログラムインタフェース、オペレーティングシステム、ユーザ、及び通信チャンネルからの情報を含む複数のファクターの少なくとも１つに基づいて評価を行う方法を判定する、
ことを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記コンピューティング製品は、コンピュータシステム、サーバ、コンピュータシステムのクラスタ、及びコンピュータシステム構成要素の少なくとも１つを含む、
ことを特徴とする請求項１７に記載のシステム。
【請求項２０】
前記プロセッサは、前記評価データに基づいて前記コンピューティング製品に対する互換性格付けを生成する、
ことを特徴とする請求項１７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、コンピューティング製品の特性を判定することに関し、より詳細には、コンピュータ製品を評価してコンピュータ製品の性能特性を判定することに関する。
【背景技術】
【０００２】
属性、有能性、及び特徴を含むコンピュータシステムの性能特性の判定は、複雑なタスクである。限定ではないが、アプリケーション、ミドルウェア、オペレーティングシステム、ドライバ、及びソフトウェアコンポーネントを含むソフトウェアは、基本となるコンピュータシステムの種々の属性、有能性、及び特徴に対する感度が異なるので、このような情報を知ることはソフトウェアを選択する上で有用とすることができる。例えば、あるソフトウェアは、より高い計算能力（ＣＰＵ又はプロセッサ性能と呼ばれることもある）を有するシステムに対して良好に調整することができる。他のソフトウェアは、例えばグラフィックス及びビデオサブシステム或いは記憶サブシステムの性能により依存する場合がある。従って、システムの属性、有能性、及び特徴を知ることは、新しいソフトウェアを選択する場合に極めて有益である。
【０００３】
消費者は、ソフトウェアの特定の部分又はソフトウェアのクラスを実行するコンピュータシステムの能力に基づいてコンピュータシステムを購入することが多い。従って、システムがどのように良好にソフトウェアを実行するかに関してコンピュータシステム性能を理解するニーズは重要なタスクである。ソフトウェアの性能及びオペレーションに影響を与える可能性のあるコンピュータシステムの多くの特性がある。これらの性能特性を特徴付けることは通常、コンピュータシステムの性能を測定することを目的とした「ベンチマーク」と呼ばれるアプリケーションのファンクションである。
【０００４】
ベンチマークは有用であるが、これらは、（１）使用するのが難しい、（２）オペレーティングシステム製品又はプラットフォーム内に一体化されない、及び（３）コンピュータ性能の評価を必要としている人が容易に利用可能ではない、といったことが多い。ベンチマークは、オペレーティングシステムプラットフォームにビルトイン、或いはこれと共に提供されないので、コンピュータシステムの属性、有能性、及び特徴に基づいて静的又は動的なオペレーション上又は構成上の決定を行うためにソフトウェアが使用することができない。
【０００５】
上述の観点から、従来技術の限界及び欠点を克服するシステム及び方法に対する必要性が存在する。
【発明の開示】
【０００６】
以下の要約は、本発明の種々の態様の概要を提供する。該要約は、本発明の重要な態様の全ての網羅的な説明を示すことを意図するものではなく、また本発明の範囲を定めることも意図するものではない。逆に、当該要約は、以下の詳細な説明及び各図に対する導入の役割を果たすものである。
【０００７】
コンピュータ製品の性能特性の判定は、コンピュータ製品の属性、有能性、及び特徴を判定することによって達成することができる。コンピュータ製品の属性は、コンピューティング製品の問い合わせによって判定され、比較のために記録することができる。更に、コンピュータ製品（又はコンピュータハードウェアコンポーネント）のインベントリを行うことができ、特徴セットをもたらす。インベントリは、製品の構成要素及び該構成要素の特徴のインベントリを含むことができる。コンピュータ製品の有能性をテストすることができ、属性又は特徴のセットについての有能性の結果がもたらされる。
【０００８】
コンピュータ製品の属性、有能性、及び特徴の判定は、評価ツールの使用によって達成することができる。例示的な評価ツールは、オペレーティングシステムプラットフォームの一部とすることができる。評価ツールは、人又はソフトウェア自体にとって価値のある情報（例えば、コンピュータシステムの属性、有能性、及び特徴）を集め、コンピュータシステムがどのように良好にソフトウェアを実行するかに関しての決定、比較、及び判断を行うことができる。このような決定、比較、及び判断は、静的に（例えば一度）、或いは動的に（すなわち、システムが動作中であるときに）行うことができる。評価ツールはまた、ローカルに実行するためにダウンロード及び／又は記憶された、或いは、例えばウェブ又はネットワークインタフェースを介してリモートコンピュータから実行されるソフトウェアプログラムとすることができる。
【０００９】
例示的な評価ツールは、個々のコンピュータ製品と共に使用するだけのものではない。評価ツールを用いてコンピューティング製品のクラスタ（例えばコンピュータのクラスタ）を評価し、その属性、有能性、及び特徴に基づいて性能特性を判定することもできる。更に、評価ツールは、例えば評価サーバにおいて使用してもよい。
【００１０】
データが評価ツールの使用によって取得されると、このデータは記録及び記憶することができる。記憶されたデータは、特定のコンピューティングデバイスが例えばソフトウェアの一部と互換性があるかどうかを評価するために後で利用することができる。例えば、このデータは、ユーザがコンピューティングデバイスにソフトウェアをロードしようとするときに、ソフトウェアの一部が直接アクセスすることができる。データはまた、例えばオペレーティングシステムのコントロールパネルを介してなど、ユーザがインタフェースを通じてアクセスすることができる。データはまた、ネットワーク接続又は他の通信メカニズムを介して他のシステム又はエンティティがアクセスすることができる。
【００１１】
特に高度な技術的詳細にあまり精通していないユーザが簡単に決定を行うために、このような評価データをより単純な形式に集約させることができる。このような集約は、平均化及び決定木又はマトリクスの使用を含む、多くの方法によって行うことができる。更に、評価データを使用して、コンピュータ製品の性能特性に基づいてコンピュータ製品を格付けすることができる。このような格付けにより、コンピューティング製品が知覚される性能特性に基づいて格付け又はスコアを受け取るようにすることができる。
【発明を実施するための最良の形態】
【００１２】
本発明の付加的な特徴及び利点は、添付図面を参照しながら以下の例示的な実施形態の詳細説明から明らかになるであろう。
【００１３】
前述の要約、並びに好ましい実施形態に関する以下の詳細な説明は、添付図面を参照しながら読むとより理解される。本発明を例証する目的において、本発明の例示的な構成が各図面に示されているが、本発明は、開示される特定の方法及び手段に限定されるものではない。
【００１４】
（概要）
属性、有能性、及び特徴を含むコンピューティング製品の性能特性を評価するためのシステム及び方法について説明する。評価データは、コンピュータ製品がどのように良好にアプリケーションを動作又は実施するかに関してユーザ又はソフトウェアアプリケーションが決定することができるように判定され記憶される。更に、評価データを用いて、新しいコンピューティング製品をプレポピュレートすることができる。また評価データを用いて、性能特性格付けを判定することができる。
【００１５】
評価ツールは、コンピュータシステム構成要素、システム全体、或いは例えばコンピュータシステムクラスタ、及びサーバを含む他のコンピューティング製品に対する複数の属性を静的又は動的に測定、評価、及び列挙することができる。属性は、固有のシステム特性として、或いはシステムが標準規格に準拠する程度として定義することができる。属性は、ソフトウェアの特定の部分又はソフトウェアのクラスを効率的に実行するシステムの能力に直接寄与することが多い。更に、属性は、システムの購入及び構成決定に大きく影響する。属性はまた、検出又は列挙されるのとは対称的に、一般に測定されるものである。属性は、動作することを目的としてシステムが組み立てられ構成される前には判定することはできない。属性は、多くの場合、例えば、（１）連続体における程度又はポイントの問題、（２）品質の尺度、（３）標準規格又は一般的な通例に対する適合の程度又は尺度、或いは（４）測定単位（例えば、インチ、バイト／秒、周波数、１秒当たりのオペレーション、平均ＣＰＵ利用率、メガバイト、ビット幅）として表わされる。性能は、一般的に測定され表現される属性である。性能は、プロセッサ、グラフィクス及びビデオサブシステム、並びに記憶サブシステムを含む、多くのＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標） ＰＣシステム構成要素の主要な属性である。
【００１６】
属性の評価は、限定ではないが、ハードドライブ、光ドライブ、又は不揮発性メモリなどの記憶構成要素、ではないが、キャッシュ、整数演算ユニット、及び浮動小数点演算ユニットを含むシステムマイクロプロセッサもしくはマイクロプロセッサ及びサブ構成要素、システムメインメモリ（すなわちＲＡＭ）、並びにビデオ及びグラフィクスサブシステム（すなわち、グラフィクスカード、ＵＭＡ、又は内蔵グラフィックス）を含むことができる。
【００１７】
例示的な評価ツールは、コンピュータシステム構成要素、システム全体、或いは例えばコンピュータシステムクラスタ、及びサーバを含む他のコンピューティング製品に対する複数の有能性を静的又は動的に測定、評価、及び列挙することができるのが望ましい。有能性とは、特定の特徴又はタスク或いは特徴もしくはタスクのクラスを効率的に行う製品又はシステムの能力である。有能性は、存在することもあれば、存在しないこともあるが、程度、尺度、又はメトリックの一部の問題にも存在する可能性がある。存在するためには、有用性には、（１）１つ又はそれ以上の属性の指定された（又は最小の）レベル、（２）１つ又はそれ以上の指定された特徴の存在、及び（３）特定のファンクション又はタスク或いはファンクション又はタスクのクラスの直接測定又は検出された能力又は表現を必要とする。
【００１８】
コンピューティング製品の有能性の評価は、限定ではないが、種々のタイプのビデオを再生する能力、インターネットに接続する能力、ユーザインタフェース要素に詳細及び高度化の種々のレベルを提供する能力、及び特定のソフトウェア又はソフトウェアのクラスを実行する能力（限定ではないが、ゲーム、マルチメディアアプリケーション、データ分析ソフトウェア、ＣＡＤソフトウェア、オペレーティングシステム構成要素、ミドルウェア、及びドライバ）をコンピューティング製品が有するかどうかを判定する段階を含むことができる。
【００１９】
更に、評価ツールは、コンピュータシステム構成要素、システム全体、或いは例えばコンピュータシステムクラスタ及びサーバを含む他のコンピューティング製品に対する特徴を検出又は列挙することができるのが望ましい。特徴は、一般に、顕著な又は特異なシステム部分、構成要素、或いは特性である。特徴は、存在する場合もあれば、存在しない場合もある。特徴は、属性のように測定されず、検出又は列挙される。特徴の実施例は、限定ではないが、（１）ＵＳＢ２．０、（２）ハイパースレッディングテクノロジー、（３）ＡＭＤ６４、（４）１３９４、（５）デュアルチャンネルＤＤＲ４００メモリ、（６）カードバス、（７）ＡＭＤ  ＰｏｗｅｒＮｏｗ！テクノロジー、（８）インテルスピードステップテクノロジー、（９）ＡＣＰＩ２．０、（１０）少なくとも５１２ＭＢのメモリサイズ、（１１）少なくとも１２８ＭＢのビデオメモリサイズ、（１２）ＵＭＡグラフィクス、（１３）ＤＶＤプレーヤー又はレコーダ、（１４）２．０シェーダーサポート、（１５）ＭＭＸ、ＳＳＥ１、ＳＳＥ２、ＫＮＩ、３ＤＮｏｗ、及び（１６）１０２４ｘ７６８画面解像度のサポートを含む。
【００２０】
幾つかの実施形態では、評価ツールはオペレーティングシステムの一部とすることができる。オペレーティングシステムは、プログラムの実行を制御し、且つこれを行うために必要なサービスを提供する役割を担うコンピュータシステムの基本ソフトウェアとして定義することができる。オペレーティングシステムは、例えば、タスクのスケジューリング、記憶の割り当て、周辺ハードウェアへのインタフェースの処理、及びアプリケーションプログラムが実行されていないときにユーザにデフォルトインタフェースを提示することができる。オペレーティングシステムはまた、例えばディスク、メモリデバイス、キーボード、画面、及びＣＰＵ時間などのコンピュータの基本ハードウェアリソースを監視することができる。例えば、ＰＣ上で実行中のオペレーティングシステムは、コンピューティング製品の性能特性を判定するためにコンピューティング製品の評価を指示する本発明の評価ツールを含む。評価ツールはまた、例えばコンピューティング製品がアップグレードされたときにコンピューティング製品に対する評価データを更新することができる。評価ツールが新しい評価を開始する他のトリガは、（１）ソフトウェアの新しい部分がコンピューティングシステム上にダウンロード／ロードされたとき、（２）オペレーティングシステムがハードウェア又はソフトウェアの新しい部分を検出したとき、及び（３）ユーザが新しい評価の実行を要求したときを含むことができる。評価結果は、例えば、オペレーティングシステムのコントロールパネル内のインタフェース又はツールを介してユーザが見ることができる。
【００２１】
データが評価ツールの使用によって取得されると、該データを記録及び記憶することができる。データは、オペレーティングシステム、ソフトウェア、又は個人が集合的に或いは個々に使用して、例えば、（１）どのソフトウェアを効率的又は正確にシステムにインストールすることができるか、（２）オペレーティングシステム自体をどのように構成すべきか（例えば、効率的に動作するためにシステムの有能性に基づいて幾つかの特徴をオン又はオフにすべきか）、（３）他の構成要素又はシステムに対するシステム構成要素又はシステム全体の相対的又は絶対的な性能、特徴、及び有能性を判断する方法、（４）評価から得られた離散的データ、或いは離散的データからのポリシーエンジンによって生成された集約又は変換データの観点で測定及び表現されるようにシステムの有能性又は性能を修正するためにどのようにハードウェアを変更できるか或いは変更すべきか、及び（５）コンピューティング製品への格付けを割当てるための有能性格付けシステム（ＣＳＲ）への入力に関して、決定又は判断するのを助けるようにすることができる。
【００２２】
（例示的なコンピューティング環境）
図１は、本発明を実施することのできる適切なコンピューティングシステム環境１００の実施例を示す。コンピューティングシステム環境１００は、好適なコンピューティング環境の単なる１つの実施例であり、本発明の用途又は機能性の範囲に関してどのような限定も示唆するものではない。コンピューティング環境１００はまた、例示的なオペレーティング環境１００において図示される構成要素のいずれか１つ又は組み合わせに関してなんらかの依存性又は必要性があるものとして解釈すべきではない。
【００２３】
本発明は、多くの他の汎用又は特定用途のコンピューティングシステム環境又は構成と共に使用可能である。本発明と共に使用するのに好適な公知のコンピューティングシステム、環境、及び／又は構成の実施例は、限定ではないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルド又はラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースシステム、セットトップボックス、プログラム可能家庭用機器、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記のシステム又はデバイスのいずれかを含む分散型コンピューティング環境、及びその他同様のものを含む。
【００２４】
本発明は、コンピュータによって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的なコンテキストにおいて説明することができる。一般に、プログラムモジュールは、特定のタスクを実行する、又は特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、構成要素、データ構造その他を含む。本発明はまた、通信ネットワーク又は他のデータ送信媒体によってリンクされているリモート処理デバイスがタスクを実行する分散コンピューティング環境において実施することができる。分散コンピューティング環境では、プログラムモジュール及び他のデータは、メモリ記憶デバイスを含むローカル及びリモート両方のコンピュータ記憶媒体内に位置付けることができる。
【００２５】
図１に関して、本発明を実施するための例示的なシステムは、コンピュータ１１０の形式の汎用コンピューティングデバイスを含む。コンピュータ１１０の構成要素は、限定ではないが、処理ユニット１２０、システムメモリ１３０、及びシステムメモリを含む種々のシステム構成要素を処理ユニット１２０に結合するシステムバス１２１を含むことができる。システムバス１２１は、メモリバス又はメモリコントローラ、周辺バス、及び多様なバスアーキテクチャのいずれかを使用するローカルバスを含むバス構造の幾つかのタイプのいずれかとすることができる。限定ではなく例証として、このようなアーキテクチャは、業界標準アーキテクチャ（ＩＳＡ）バス、マイクロチャンネルアーキテクチャ（ＭＣＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ビデオ機器業界標準化団体（ＶＥＳＡ）ローカルバス、及び周辺構成要素相互接続（ＰＣＩ）バス（メザニンバスとして知られている）を含む。
【００２６】
コンピュータ１１０は通常、多様なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ１１０がアクセス可能ないずれかの利用可能な媒体とすることができ、揮発性及び不揮発性媒体、取外し可能及び取り外し不能媒体のいずれも含む。限定ではなく例証として、コンピュータ可読媒体は、コンピュータ記憶媒体及び通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール又は他のデータなどの情報を記憶するためのいずれかの方法又は技術で実装された揮発性及び不揮発性、取外し可能及び取り外し不能媒体のいずれも含む。コンピュータ記憶媒体は、限定ではないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ又は他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多機能ディスク（ＤＶＤ）又は他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又は他の磁気記憶デバイス、或いは所要の情報を記憶するために使用することができ且つコンピュータ１１０がアクセス可能な他のいずれかの媒体を含む。通信媒体は通常、搬送波又は他の転送メカニズムなどの変調データ信号内にコンピュータ可読命令、データ構造、プログラムモジュール、又は他のデータを組み込み、あらゆる情報配信媒体を含む。用語「変調データ信号」は、情報を信号内に符号化するような方法でその特性の１つ又はそれ以上を設定又は変更させた信号を意味する。限定ではなく例証として、通信媒体は、有線ネットワーク又は直接有線接続などの有線媒体、及び音響、ＲＦ、赤外線、及び他の無線媒体などの無線媒体を含む。上記のいずれかの組み合わせもまた、コンピュータ可読媒体の範囲内に含められるはずである。
【００２７】
システムメモリ１３０は、ＲＯＭ１３１及びＲＡＭ１３２などの揮発性及び／又は不揮発性メモリの形式でのコンピュータ記憶媒体を含む。典型的には、起動時などにコンピュータ１１０内の要素間での情報の転送を助ける基本ルーチンを含む基本入力／出力システム１３３（ＢＩＯＳ）がＲＯＭ１３１内に記憶されている。ＲＡＭ１３２は通常、処理ユニット１２０に即時アクセス可能である、及び／又は処理ユニット１２０によって現在動作中であるデータ及び／又はプログラムモジュールを含む。限定ではなく例証として、図１は、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、及びプログラムデータ１３７を示す。
【００２８】
コンピュータ１１０はまた、他の取外し可能／取外し不能、揮発性／不揮発性コンピュータ記憶媒体を含むことができる。例証として、図１は、取外し不能不揮発性磁気媒体から読み取るか又はこれに書き込むハードディスクドライブ１４０、取外し可能不揮発性磁気ディスク１５２から読み取るか又はこれに書き込む磁気ディスクドライブ１５１、並びにＣＤ−ＲＯＭ又は他の光学媒体などの取外し可能不揮発性光ディスク１５６から読み取るか又はこれに書き込む光ディスクドライブ１５５を示す。例示的なオペレーティング環境で使用できる他の取外し可能／取外し不能、揮発性／不揮発性コンピュータ記憶媒体は、限定ではないが、磁気テープカセット、フラッシュメモリカード、デジタル多機能ディスク、デジタルビデオテープ、固体ＲＡＭ、固体ＲＯＭ、及び同様のものを含む。ハードディスクドライブ１４１は通常、インタフェース１４０などの取外し不能メモリインタフェースを介してシステムバス１２１に接続されており、磁気ディスクドライブ１５１及び光ディスクドライブ１５５は通常、インタフェース１５０などの取外し可能メモリインタフェースによってシステムバス１２１に接続されている。
【００２９】
上述され図１に示されるドライブ及びこれに関連したコンピュータ記憶媒体は、コンピュータ１１０のためのコンピュータ可読命令、データ構造、プログラムモジュール、及び他のデータの記憶装置を提供する。図１では、例えば、ハードディスクドライブ１４１が、オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、及びプログラムデータ１４７を記憶しているものとして示されている。これらの構成要素は、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、及びプログラムデータ１３７と同じ或いは異なることができる点に留意されたい。オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、及びプログラムデータ１４７は、少なくともこれらが異なるコピーであることを示すために、ここでは異なる数字が与えられている。ユーザは、キーボード１６２、並びに通常はマウス、トラックボール、又はタッチパッドと呼ばれるポインティングデバイス１６１などの入力デバイスを介してコマンド及び情報をコンピュータ１１０に入力することができる。他の入力デバイス（図示せず）は、マイクロフォン、ジョイスティック、ゲームパッド、受信アンテナ、スキャナ、又は同様のものを含むことができる。これら及び他の入力デバイスは、システムバスに結合されているユーザ入力インタフェース１６０を介して処理ユニット１２０に接続されることが多いが、パラレルポート、ゲームポート、又はユニバーサルシリアルバス（ＵＳＢ）などの他のインタフェース及びバス構造で接続してもよい。モニター１９１又はディスプレイデバイスの他のタイプもまた、ビデオインタフェース１９０などのインタフェースを介してシステムバス１２１に接続されている。モニターに加えて、コンピュータはまた、スピーカ１９７及びプリンター１９６などの他の周辺出力デバイスを含むことができ、これらは、出力周辺インタフェース１９５を介して接続することができる。
【００３０】
コンピュータ１１０は、リモートコンピュータ１８０などの１つ又はそれ以上のリモートコンピュータへの論理接続を使用してネットワーク接続された環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、又は他の共通ネットワークノードとすることができ、通常はコンピュータ１１０に対して上述された要素の中の多く又は全てを含むが、メモリ記憶デバイス１８１だけが図１に示されている。図示された論理接続は、ローカルエリアネットワーク（ＬＡＮ）１７１及びワイドエリアネットワーク（ＷＡＮ）１７３を含むが、他のネットワークも含んでもよい。このようなネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、及びインターネットで普及している。
【００３１】
ＬＡＮネットワーキング環境で使用される場合、コンピュータ１１０は、ネットワークインタフェース（有線又は無線）又はアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーキング環境で使用される場合、コンピュータ１１０は通常、インターネットなどのＷＡＮ１７３を介した通信を設定するためのモデム１７２又は他の手段を含む。内蔵又は外付けとすることができるモデム１７２は、ユーザ入力インタフェース１６０又は他の適切なメカニズムを介してシステムバス１２１に接続することができる。ネットワーク接続された環境では、コンピュータ１１０に対して示されたプログラムモジュール又はその一部分をリモートメモリ記憶デバイスに記憶することができる。限定ではなく例証として、図１は、メモリデバイス１８１上に常駐しているリモートアプリケーションプログラム１８５を示す。図示されたネットワーク接続は例証であり、コンピュータ間の通信リンクを設定する他の手段を使用してもよいことは理解されるであろう。
【００３２】
（例示的な実施形態）
図２は、評価ツールを使用して、本発明によるコンピュータシステムの属性、有能性、及び特徴を判定するためのデータを取得する例示的なコンピューティング環境２００のブロック図である。ポリシーデータ２２０は、ポリシーエンジン２３０によって使用された情報を記憶し、コンピューティング製品の評価２１０を実行する時間及び方法に関して決定を行う。評価２１０は、例えば、予め定義された時間に、ユーザ又はソフトウェアによる要求に応じて、予め定義されたある事象が発生した時、ポリシーエンジンが評価２１０の実行を認可する動的状態を検出した時、或いはネットワーク又は他の通信メカニズムを介したコマンドが評価２１０の実行を指示した時に実行することができる。
【００３３】
ポリシーエンジン２３０は、コマンドに基づいて評価２１０の１つ、一部、或いは全てを実行することができる。実行時には、各評価２１０は、パラメータ化された方式で実行することができる（すなわち、評価２１０は固定されていないが、ポリシーデータ２２０、データ記憶装置２４０又はソフトウェア２５０から、或いはオペレーティングシステム（ＯＳ）２７０からの情報を直接又はアプリケーションプログラムインタフェース（ＡＰＩ）２６０を介して使用してポリシーエンジン２３０によって判定することができる）。このような情報はまた、ユーザ、或いはネットワーク又は他の通信メカニズムなどの他の外部ソースから導くことができる。
【００３４】
複数の評価２１０が存在することができ、図２では５つが示されている。図２に示された評価２１０は、単に例示的な評価を表しており、これらは、本発明で使用できる評価の全範囲を表すものではない。評価２１０は、コンピューティング製品又は構成要素に関する情報を収集する。評価２１０は、上記に定められたように製品の属性、有能性、及び機能を記述しているデータを返すことができる。評価ツールは、測定、列挙、及び／又は検出など、データを収集するための幾つかの技術を用いることができる。評価２１０は、ドライバ、ミドルウェア、オペレーティングシステム２７０自体、或いはハードウェアに直接接続できる他のアプリケーションなどの他のソフトウェアコンポーネントを使用してデータを収集することができる。
【００３５】
評価２１０が実施されると、ポリシーエンジン２３０は、ソフトウェア２５０によって直接又はＡＰＩ２６０を介してアクセス可能なデータ記憶装置２４０内に評価データを記憶することができる。ソフトウェアコンポーネント２５０は、評価２１０の実行をリクエストし、或いは、ＡＰＩ２６０を介して評価２１０のオペレーションを制御することができる。このようなデータはまた、他の外部システム、或いは例えばネットワーク接続又は他の通信メカニズムを介してソフトウェアパッケージ２８０などのアプリケーションが利用可能にすることができる。更に、ポリシーエンジン２３０はまた、データ記憶装置２４０から評価２１０によって生成された離散的データを取り出し、データの決定木、マトリクス、又は他の形式を使用して離散的データを集約し、平均化し、或いは別の形式に変換することができる。このようなデータは、引き続いてデータ記憶装置２４０内にセーブすることができる。ソフトウェア２５０は、データ記憶装置２４０から直接或いはＡＰＩ２６０を介してこの集約され又は変換されたデータにアクセスすることができる。
【００３６】
ソフトウェア２５０は、評価の実行をリクエストし、或いはＡＰＩ２６０及びポリシーエンジン２３０を介して評価のオペレーションを制御することができる。ポリシーエンジン２３０はまた、ポリシーデータ２２０及びデータ記憶装置２４０へのアクセスを制御し、ポリシーデータ２２０及び／又はデータ記憶装置２３０内の情報を読み取り、修正し、追加し、更に削除するメカニズムを提供することができる。
【００３７】
図３は、評価ツールを使用して、本発明によるコンピュータシステムの属性、有能性、及び特徴を判定するためのデータを取得する別の例示的なコンピューティング環境３００のブロック図である。図３は、図２に関して上述されたものに類似する要素を含む。これらの要素は、同じように表記されており、その説明は簡潔にするために省略する。図３は、オペレーティングシステム３７０が例示的なコンピューティング環境３００にＡＰＩ３６０を含むことを除いて、図２の例示的なコンピューティング環境と実質的に同じように機能する。
【００３８】
図４は、本発明によるコンピュータシステムの属性、有能性、及び機能を判定するための例示的な方法のフロー図である。プロセスは、事象トリガ４１０から始まり、これは、限定ではないが、評価のユーザ要求の実施、評価のオペレーティングシステムによる要求の実施、及び評価のソフトウェアプログラムによる要求の実施を含むことができる。
【００３９】
ステップ４２０で、評価ツールは、例えばデータ記憶装置、ＡＰＩ、ＯＳ、ユーザ、及び通信チャンネルによってステップ４３０でプロトコルセットをレビューすることにより、評価をどのように行うべきかを判断する。評価は、ステップ４４０で評価をリクエストする直接コマンドが存在するかどうかを考慮する。
【００４０】
ステップ４４０で直接コマンドが存在する場合、ツールは、ステップ４５０で直接コマンドに従って評価を実行することになる。評価が終了すると、評価ツールは、ステップ４６０で評価が正常に終了したかどうかを判定する。評価がステップ４６０で正常に終了した場合、評価データは、ステップ４７０でセーブするか或いはレポート／リターンすることができる。ステップ４８０で、評価ツールは、データが他のコンピューティング製品をプレポピュレートするようリクエストされているかどうかを判定する。評価データがプレポピュレーションするように判定された場合、評価データは、４９０で他の同一の製品にコピーされローカルでセーブされることになる。次いで評価方法は、ステップ４９９で終了する。評価データがステップ４８０でプレポピュレーションをリクエストされていないと判定された場合、本方法はステップ４９９で終了する。
【００４１】
評価コマンドがステップ４４０で直接コマンドでなかった場合、評価ツールは、ステップ４４５でポリシー及び決定テーブルを使用して、評価を実行するためのパラメータを決定することになる。ステップ４４５でのポリシー及び決定テーブルの使用に続いて、評価ツールは、ステップ４５０で評価を続行する。ステップ４６０で評価が正常に終了しなかった場合、予め設定されたファクターに基づいた評価ツール、又は好みに基づいたユーザは、ステップ４６５で評価を再実行するかどうかを決定する。予め設定されたファクターに基づいた評価ツール、又は好みに基づいたユーザが、ステップ４６５で再度評価を実行すると決定した場合、プロセスは、ステップ４４０で評価をリクエストする直接コマンドが存在するかどうかに関する判定から再スタートする。予め設定されたファクターに基づいた評価ツール、又は好みに基づいたユーザが、ステップ４６５で再度評価を実行しないと決定した場合、プロセスはステップ４９９で終了する。
【００４２】
図５は、本発明によるコンピュータ製品を評価し且つ評価データを使用するための例示的な方法のフロー図である。本方法は、例えば本方法のトリガに基づいて行うことができるステップ５１０から始まる。例示的なトリガは、ユーザ指示、ソフトウェアリクエスト、又は他の何らかのトリガファクターを含む。評価ツールは、ステップ５２０でコンピューティング製品の評価を行う。評価は、コンピューティング製品の属性、有能性、及び特徴を判定する段階を含むことができる。
【００４３】
評価がステップ５２０で行われると、ステップ５３０で評価データが記録され記憶される。データは、例えばデータ記憶装置内に記憶することができる。次にステップ５４０で、記憶された評価データは、例えばシステム互換性の評価を試みるオペレーションシステムによって引き続き用いることができる。記憶された評価データはまた、他の同一のコンピューティング製品のプレポピュレーションのために使用することができる。更に、記憶された評価データは、有能性格付けシステム又はツールに入力され、特定のコンピューティングデバイスの格付けを決定することができる。記憶された評価データはまた、ユーザがアプリケーションを実行するか又はファイルを開こうとするときに、コンピューティングデバイスがサポートできないことをユーザに警告するためにソフトウェア又はオペレーティングシステムによって使用することができる。
【００４４】
図６は、本発明によるソフトウェアにアクセスしようとする場合にコンピュータ製品の評価データを利用する例示的な方法のフロー図である。ステップ６１０で、本方法はトリガに基づいて始まる。評価ツールは、ステップ６２０でコンピューティング製品の評価を行う。評価は、コンピューティング製品の属性、有能性、及び特徴を判定する段階を含むことができる。ステップ６２０で評価が行われると、ステップ６３０で評価データが記録され記憶される。
【００４５】
続いて、ユーザは、例えばファイルを開くよう試行することができる。ステップ６４０で、コンピューティング製品は、ファイルをサポートしているかどうかを判定する。コンピューティング製品がファイルをサポートすることができる場合、ステップ６８０でファイルが実行され、ステップ６９９で本方法は終了する。しかしながら、コンピューティング製品がファイルをサポートできない場合、ステップ６５０で、警告が表示されるか、或いは他の方法で警告が指示又は提供され、ステップ６６０で、ユーザは、引き続きファイルを実行するか、或いは動作を中止するかを決定する。ステップ６６０で、ユーザが引きファイルの開くのを継続すると決定した場合、第２の警告が表示され、ステップ６７０で、コンピューティング製品はファイルを実行するよう試みる。次いでステップ６９９で、本方法は終了する。
【００４６】
ステップ６６０で、ユーザがファイルを開くのを継続しないと決定した場合、ステップ６６２でファイルは中止される。ステップ６６４で、ユーザは、コンピューティング製品をアップグレードする機会が与えられるのが望ましい。ユーザがステップ６６４でアップグレードを望まない場合、本方法はステップ６９９で終了する。ユーザが６６４でアップグレードを望む場合、ステップ６６６でコンピューティングデバイスはアップグレードされる。アップグレードは、例えばソフトウェアプロバイダに提供されている支払い又は他の条件に従って行われる。コンピューティング製品がステップ６６６でアップグレードされた後、コンピューティングデバイスは、ステップ６２０で再び評価され、ステップ６３０で新しい評価データが記録及び記憶される。ステップ６６６からの新しいアップグレードでは、コンピューティング製品は、ステップ６４０でファイルをサポートすることを判定する必要があり、従って、ステップ６８０でファイルを実行し、ステップ６９９で終了する。
【００４７】
本明細書で説明される種々の技術は、ハードウェア又はソフトウェアで、或いは適切な場合にはこれらの両方を組み合わせて実施することができる。従って、本発明の方法及び装置、或いはその幾つかの態様又は一部分は、フロッピー（登録商標）ディスク、ＣＤ−ＲＯＭ、ハードドライブ、又は他のいずれかの機械可読記憶媒体などの有形媒体で具現化されたプログラムコードの形式（すなわち命令）を取ることができ、ここで、プログラムコードがコンピュータなどの機械にロードされ該機械によって実行される場合、該機械は本発明を実施するための装置となる。１つ又はそれ以上のプログラムは、コンピュータシステムと通信するためにハイレベル手順又はオブジェクト指向のプログラミング言語で実装されるのが好ましい。しかしながら、プログラムは、必要な場合にはアセンブリ又は機械言語で実装することができる。いずれの場合においても、言語は、コンパイル済み又は翻訳済みの言語とすることができ、ハードウェア実装と組み合わせることができる。
【００４８】
本発明の方法はまた、電気配線又はケーブルを通じて、光ファイバーを介して、或いは他のいずれかの伝送形式などのある伝送媒体を通じて送信されるブログラムコードの形式で具現化することができ、ここで、プログラムコードが、ＥＰＲＯＭ、ゲートアレイ、プログラム可能論理デバイス（ＰＬＤ）、クライアントコンピュータ、ビデオレコーダ又は同様のものなどの機械によって受信され、該機械にロードされて、該機械によって実行された場合、当該機械は本発明を実施するための装置となる。汎用プロセッサ上で実装される場合、プログラムコードは、プロセッサと組み合わされ、本発明のバージョニング機能を実行するよう動作する固有の装置を提供する。
【００４９】
前述の実施例は、単に説明の目的のために提供されており、本発明を限定するものとして解釈すべきではない点に留意されたい。本発明を種々の実施形態に関して説明してきたが、本明細書で使用される用語は、説明及び例証の用語であり、限定する用語ではない点を理解されたい。更に、本発明を特定の手段、構成要素、及び実施形態に関して本明細書で説明してきたが、本発明は、本明細書で開示される詳細に限定されるものではなく、本発明は、添付の請求項の範囲内にある全ての機能的に均等な構造、方法、及び用途に拡張される。
【図面の簡単な説明】
【００５０】
【図１】本発明の態様を実装することができる例示的なコンピューティング環境を示すブロック図である。
【図２】本発明によるコンピュータシステムの属性、有能性、及び特徴を判定するためのデータを取得するのに使用できる例示的なコンピューティング環境を示すブロック図である。
【図３】本発明によるコンピュータシステムの属性、有能性、及び特徴を判定するためのデータを取得するのに使用できる別の例示的なコンピューティング環境を示すブロック図である。
【図４】本発明によるコンピュータシステムの属性、有能性、及び特徴を判定するための例示的な方法を示すフロー図である。
【図５】本発明によるコンピュータ製品を評価し且つ評価データを使用するための例示的な方法を示すフロー図である。
【図６】本発明によるソフトウェアにアクセスを試みる場合にコンピュータ製品の評価データを利用するための例示的な方法を示すフロー図である。
【符号の説明】
【００５１】
５１０  開始
５２０  コンピューティング製品を評価する
５３０  評価データを記録及び記憶する
５４０  評価データを使用する
５９９  終了
【図１】
2008538642.tif 000003
【図２】
2008538642.tif 000004
【図３】
2008538642.tif 000005
【図４】
2008538642.tif 000006
【図５】
2008538642.tif 000007
【図６】
2008538642.tif 000008
【国際調査報告】
2008538642.tif 000009
2008538642.tif 000010