(57)【要約】  サーバが操作される市場／組織の背景に関するサーバ利用情報および組織情報を取得する方法である。サーバ情報を、サーバから収集して、ネットワーク上で送信する。サーバ利用情報は、ネットワーク上でサーバ情報を受信し、そのサーバ情報を処理することによって取得することができる。サーバ利用情報は、サーバを操作する組織の市場区分に基づいて分割することができる。レポートを作成し、顧客に対して提供することができる。サーバ利用情報を使用して、サーバ関連の製品およびサービスを改善することができる。
2009514092.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ上で実装される、サーバ利用情報を取得する方法であって、
第１のサーバを操作する第１の組織に関する第１の組織情報を受信することと、
ネットワーク上で前記第１のサーバに関する第１のサーバ情報を受信することと、
第２のサーバを操作する第２の組織に関する第２の組織情報を受信することと、
ネットワーク上で前記第２のサーバに関する第２のサーバ情報を受信することと、
前記第１および第２の組織情報と前記第１および第２のサーバ情報とに基づいてサーバ利用情報を判定することと
を含むことを特徴とする方法。
【請求項２】
前記第１の組織情報は、前記第１の組織によって雇用される従業員の数を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記第１の組織情報は、前記第１の組織によって操作されるサーバの数を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記第１のサーバに関する前記サーバ情報は、前記第１のサーバに関連するハードウェアおよび／またはソフトウェアについての情報を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記第１のサーバに関する前記サーバ情報は、前記第１のサーバによって果たされる少なくとも１つの役割についての情報を含むことを特徴とする請求項１に記載の方法。
【請求項６】
前記サーバ利用情報に基づいてレポートを作成することをさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記第１の組織情報は第１の市場区分の情報を含み、前記第２の組織情報は第２の市場区分の情報を含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記第１の市場区分の情報は、前記第１の組織によって操作されるサーバの数を含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記第１の市場区分の情報は、前記第１の組織に関連する従業員の数を含むことを特徴とする請求項７に記載の方法。
【請求項１０】
前記第１および第２のサーバ情報と前記第１および第２の市場区分の情報とに基づいてレポートを作成することをさらに含むことを特徴とする請求項７に記載の方法。
【請求項１１】
複数の組織に関する組織情報を受信することと、
ネットワーク上で、前記複数の組織によって操作される複数のサーバに関するサーバ情報を受信することと、
前記受信した組織情報とサーバ情報とに基づいてサーバ利用情報を判定することと
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１２】
コンピュータ上に実装される、サーバ利用情報を提供する方法であって、
サーバを操作する組織に関する組織情報を受信することと、
ネットワーク上で前記サーバに関するサーバ情報を受信することと、
前記サーバ情報に基づいてサーバ利用情報を判定することと、
前記サーバ利用情報を、前記サーバを操作する前記組織に提供することと
を含むことを特徴とする方法。
【請求項１３】
前記サーバ利用情報を前記組織にネットワーク上で提供することをさらに含むことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記サーバ情報を前記第１の組織に提供することをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１５】
前記サーバ利用情報に基づいてレポートを作成することをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１６】
前記レポートを前記第１の組織に提供することをさらに含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
第１のサーバを操作する第１の組織に関する第１の組織情報を受信することと、
ネットワーク上で前記第１のサーバに関する第１のサーバ情報を受信することと、
第２のサーバを操作する第２の組織に関する第２の組織情報を受信することと、
ネットワーク上で前記第２のサーバに関する第２のサーバ情報を受信することと、
前記第１および第２の組織情報と前記第１および第２のサーバ情報とに基づいてサーバ利用情報を判定することと
を備えるステップを実施するための、プロセッサによって実装されるコンピュータ実行可能命令を有するコンピュータ読取可能媒体。
【請求項１８】
前記サーバ利用情報に基づいてレポートを作成すること
を備えるステップを実施するための、プロセッサによって実装されるコンピュータ実行可能命令をさらに含むことを特徴とする請求項１７に記載のコンピュータ読取可能媒体。
【請求項１９】
前記第１のサーバ情報に基づいてレポートを作成すること
を備えるステップを実施するための、プロセッサによって実装されるコンピュータ実行可能命令をさらに含むことを特徴とする請求項１７に記載のコンピュータ読取可能媒体。
【請求項２０】
前記レポートを前記第１の組織にネットワーク上で提供すること
を備えるステップを実施するための、プロセッサによって実装されるコンピュータ実行可能命令をさらに含むことを特徴とする請求項１９に記載のコンピュータ読取可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、サーバ利用情報を取得することに関し、より詳細には、ネットワークを用いて、サーバ利用情報および関連する組織情報を取得することに関する。
【背景技術】
【０００２】
多くの組織（organization）は、様々なコンピューティングタスクを実施する１つまたは複数のサーバを操作する。サーバは、典型的に、ネットワーク上で複数のクライアントコンピュータと通信する。例えば、いくつかのサーバは、ローカルネットワーク上で組織内のクライアントコンピュータと通信し、いくつかのサーバは、インターネット上でクライアントコンピュータと通信する。様々な異なるタスクを実施し、様々な異なる方法で構成することができる多数の異なるタイプのサーバが利用可能である。
【０００３】
例えば、異なるサーバは、プロセッサのタイプ、プロセッサの数、プロセッサ速度およびメモリなどの、ハードウェアのタイプについての相違点を有することがある。異なるサーバは、オペレーティングシステムおよびアプリケーションのタイプなどが異なるソフトウェア構成を用いることができる。
【０００４】
サーバは、様々なサーバの役割を果たすことができる。例えば、サーバは、ファイルサーバ、プリントサーバ、メールサーバ、インターネットサーバ、または仮想プライベートネットワーク（ＶＰＮ）サーバとして機能することができる。いくつかのサーバは、単一の役割の果たすための専用であり、いくつかのサーバは、２つ以上の役割を果たす。
【０００５】
サービスは、どのように組織がサービスを展開するかについての情報を判定するのに利用可能である。例えば、Server TrackerおよびPulseなどのサービスは、代表者が、ネットワーク管理者に電話調査を行うことによってサーバについての情報を収集することに依存する。ネットワーク管理者は、自己のサーバによって実施される役割および自己のサーバの構成についての質問に回答することができる。いくつかの場合では、ネットワーク管理者をランダムに選択して、電話調査に参加させることができる。統計値および他の結果は、取得される調査情報に基づいて編集される。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
電話調査を用いて収集される情報の量は、人間の時間的制約によって制限される。例えば、ネットワーク管理者には、多く質問に回答する時間がないので、電話中に尋ねることができる質問の数は限られることがある。別の例として、調査をすることができるネットワーク管理者の数は、代表者が調査する時間のある人の数に限定される。
【課題を解決するための手段】
【０００７】
本発明の一態様では、サーバ情報を、ネットワーク上でサーバと通信することによって取得することができる。それぞれのサーバに関するサーバ情報は、そのサーバを操作する組織についての情報と関連付けることができる。サーバ情報および組織関連情報を、複数の組織および複数のサーバに関して取得することができる。取得される情報に基づいて、どのように組織がサーバを使用するかで客観的な評価を行うことができる。サーバ利用の評価を、特定の市場区分（market segment）に関して判定することができる。サーバ利用の客観的な評価を取得することにより、サーバ製品およびサービスの提供を促進することができ、最終的には顧客満足度を向上させることができる。
【０００８】
別の態様では、本発明は、コンピュータ上で実装される、サーバ利用情報を取得する方法に関する。上記方法は、第１のサーバを操作する第１の組織に関する第１の組織情報を受信することを含む。上記方法は、第１のサーバに関する第１のサーバ情報をネットワーク上で受信することも含む。上記方法は、第２のサーバを操作する第２の組織に関する第２の組織情報を受信することも含む。上記方法は、第２のサーバに関する第２のサーバ情報をネットワーク上で受信することも含む。上記方法はさらに、第１および第２の組織情報と第１および第２のサーバ情報とに基づいて、サーバ利用情報を判定することを含む。
【０００９】
さらに別の態様では、本発明は、コンピュータ上で実装される、サーバ利用情報を提供する方法に関する。上記方法は、サーバを操作する組織に関する組織情報を受信することを含む。上記方法は、サーバに関するサーバ情報をネットワーク上で受信することも含む。上記方法は、サーバ情報に基づいてサーバ利用情報を判定することも含む。上記方法はさらに、サーバ利用情報をそのサーバを操作する組織に提供することを含む。
【００１０】
さらに別の態様では、本発明は、ステップを実施するためにプロセッサによって実装されるコンピュータ実行可能命令を有するコンピュータ読取可能媒体に関する。上記ステップは、第１のサーバを操作する第１の組織に関する第１の組織情報を受信することを含む。上記ステップは、第１のサーバに関する第１のサーバ情報をネットワーク上で受信することも含む。上記ステップは、第２のサーバを操作する第２の組織に関する第２の組織情報を受信することも含む。上記ステップは、第２のサーバに関する第２のサーバ情報をネットワーク上で受信することも含む。上記ステップはさらに、第１および第２の組織情報と第１および第２のサーバ情報とに基づいて、サーバ利用情報を判定することを含む。
【００１１】
さらなる態様では、本発明は、コンピュータ上で実装される、サーバ利用情報を取得する方法に関する。上記方法は、サーバを操作する組織に関する組織情報をネットワーク上で第１のサイトにより受信することを含む。上記方法は、サーバに関するサーバ情報をネットワーク上で第２のサイトにより受信することを含む。上記方法はさらに、組織情報とサーバ情報とに基づいて、サーバ利用情報を判定することを含む。
【発明を実施するための最良の形態】
【００１２】
添付の図面は、正しい縮尺で描くようには意図されていない。図面においては、様々な図で示されるそれぞれの同一または類似の構成要素を、同様の番号で表す。明瞭性のため、全ての図面において全ての構成要素にはラベル付けをしないこととする。
【００１３】
本発明の一態様では、サーバ情報を、ネットワーク上でサーバと通信することによって取得することができる。以下でさらに詳細に議論するように、組織は、サーバ情報収集プログラムに参加することを選択することができる。サーバ情報を収集するため、ツールを、組織のサーバまたは組織と関連する別の装置にインストールすることができる。サーバ情報が収集されると、ツールは、そのサーバ情報を信頼できるサイトに、ネットワーク上で送信する。信頼できるサイトによって受信されると、サーバ情報を、サーバを操作する組織についての情報（例えば、組織の規模、操作されるサーバの数、および操作されるクライアントコンピュータの数）に関連付けることができる。サーバ情報をネットワーク上で取得することは、この情報を集める先行技術の方法を補完または置換することができ、サーバ利用の客観的な評価を取得することを可能にする。
【００１４】
サーバ情報を受信すると、サーバ情報を様々な方法で使用することができる。
【００１５】
一例として、ネットワーク上でサーバ情報を取得することにより、特定の市場背景において組織がどのようにサーバを使用するかについての公平な評価を取得することが可能となる。サーバ利用情報を、複数の異なる組織およびサーバから受信したサーバ情報に基づいて判定することができる。受信すると、それぞれのサーバについての情報を、そのサーバを操作する組織についての情報（例えば、組織の規模）に結びつけることができる。
【００１６】
正確なサーバ利用情報を取得することにより、サーバのハードウェアおよび／またはソフトウェアの開発者および製造者が、市場の需要に応じて製品およびサービスを提供することが可能となる。サーバ利用情報に基づいて、レポートを作成し、開発チームに提供することができる。開発チームは、これらのレポートを使用して、サーバのハードウェアおよび／またはソフトウェアの製品およびサービスを改善することができる。
【００１７】
特定の製品ライン（例えば、Windows（登録商標） Server）に関与する開発チームは、製品を改善することができるように、組織がどのようにサーバを使用するかについての特定の種類の情報を取得することを望むことがある。サーバについて収集される情報のタイプを、クエリのタイプに基づいて調整することができ、この新しい情報を考慮してサーバ利用レポートを作成することができる。いくつかの場合において、開発チームは、取得されるサーバ情報を使用して、顧客を識別し、関連質問を求めることができる。
【００１８】
サーバ利用情報を、情報を使用してサーバ関連の製品およびサービスを効率的に販売することができるマーケティングチームに提供することができる。
【００１９】
受信したサーバ情報を使用して、特定の顧客に対してサーバについてのレポートを作成することができる。一例として、プログラムに参加している顧客は、自己のサーバがどのように実施しているかについての情報の取得を望むことがある。顧客から受信したサーバ情報を使用することにより、サーバ利用レポートを作成し、顧客に提供することができる。
【００２０】
現在、組織が自己のサーバのパフォーマンスをモニタすることを可能にするソフトウェアパッケージが利用可能である。しかし、これらのソフトウェアパッケージは、特に比較的に小規模な組織にとって、非常に高価なことがある。従って、本発明のこの態様は、比較的小規模な組織に特に有益であり、顧客に対してサーバ情報収集プログラムに参加する利点として提供することができる。
【００２１】
さらなる例として、サーバ関連情報をネットワーク上で取得することにより、顧客の支援の提供を促進することができる。例えば、顧客は、サーバに関する援助または情報を得ることを望むことがある。顧客は、信頼できるサイトに関連する信頼できる組織と連絡をとり、支援を得ることができる。信頼できる組織に関連する代表者は、顧客のサーバから受信した情報に基づいて判定されるサーバ利用情報に基づいて、顧客を援助することができる。例えば、代表者は、サーバ利用レポートを作成し、顧客に口頭のガイダンスを提供することができる。
【００２２】
サーバ情報および組織情報を取得することに関する本発明の態様を、ここで説明することとする。サーバ情報および組織の例を、以下で提供する。しかし、本発明は、本明細書で説明されるサーバ情報および組織情報のいずれか特定のタイプに限定されるものではない。さらに、本発明は、この情報を取得するためのいずれか特定の方法またはシステムに限定されるものでもない。
【００２３】
図１は、サーバ情報を取得する方法１００の例を示すフローチャートである。ブロック１０２で、方法１００が始まる。
【００２４】
ブロック１０４で、組織情報を収集することができる。組織情報は、任意の適切な方法で収集することができる。例えば、組織がサーバ情報収集プログラムに参加することを望む場合、組織は、組織情報の提供を要求されることがある。本発明の一実施形態では、組織情報は、サーバ情報を収集するツールをダウンロードする前に、要求されることがある。例えば、組織の代表者は、ネットワーク化された装置（例えば、サーバ）で情報を入力するように要求されることがあり、その情報は、インターネット上で信頼できるサイトに送信されることがある。
【００２５】
任意の適切なタイプの組織情報を収集することができる。例えば、組織情報は、組織に雇用される従業員の数、その組織によって操作されるサーバの数、および／またはその組織によって操作されるクライアントコンピュータの数を含むことができる。組織情報は、その組織に関連するネットワーク管理者用の連絡先を含むことができる。
【００２６】
組織情報をコンピュータネットワーク上で送信することは、必要ではない。ネットワーク情報を、任意の適切な方法、例えば、メールまたは電話によって送信することができる。
【００２７】
組織情報が、信頼できるサイトによって受信されると、ブロック１０６で、情報収集ツール２００をインストールすることができる。情報収集ツール２００は、以下でさらに詳細に説明されるように、様々なタイプの情報を収集するように構成されるソフトウェアモジュールとすることができる。
【００２８】
情報収集ツール２００を、収集されることが望まれる情報に関するサーバにインストールすることができる。しかし、情報収集ツール２００は必ずしも、情報が収集される同一サーバにインストールする必要はない。一例として、ツールは、ネットワーク接続を介して１つまたは複数のサーバと通信するように結合されるワークステーションにインストールされることがある。そのツールを用いて、参加者は、１つまたは複数のサーバを選択することができる。次いで、そのツールは、選択したサーバに関するデータを受信することができる。
【００２９】
情報収集ツール２００を、任意の適切な方法で取得することができる。例えば、信頼できるサイトから、情報を収集すべきそれぞれのサーバにツールをダウンロードすることによって、ツールを取得することができる。別の例として、組織に関連するネットワーク管理者によって、ツールを複数のサーバに「プッシュ」することができる。
【００３０】
ツールのインストール中または任意の他の適切な時点で、ツールをインストールする組織が、プログラムに参加する（すなわち、組織がオプトインを選択する）ことを望むかどうかについての判定を行うことができる。この判定を、ブロック１０８で行うことができる。
【００３１】
ツールのインストール中に、参加者に、ツールの使用を規定する１つまたは複数の契約を参照し、同意することを要求することができる。例えば、そのような契約は、ソフトウェアライセンス契約、プライバシ契約、非開示契約、および／または他の契約を含むことができる。そのような契約は、現在インストールされているツールのバージョン、およびそのツールに対する任意の後の更新または変更をカバーすることができる。プログラムに参加するため、および／またはツールのインストールを完了するために、参加者に、例えば契約の承諾を示すボタンをクリックすることにより契約の条項に同意することを要求することができる。参加者が契約に同意しない場合、ブロック１０４で収集される組織情報を、信頼できる組織に送信することはできない。この場合、ツールのインストールおよび情報の収集を、ブロック１２０で中止することができる。次いで、方法１００は、ブロック１２２で終了する。
【００３２】
契約を承諾する場合、ブロック１０４で収集される組織情報を、ブロック１１０で、信頼できる組織に送信することができる。例えば、組織情報を、信頼できる組織にネットワーク接続上で送信することができる。信頼できる組織は、顧客情報を受信すると、組織情報を一意のＩＤに関連付けることができる。（組織によって操作されるサーバから）取得されるサーバ情報を、この同一の一意のＩＤと関連付けることができる。組織情報およびサーバ情報を一意のＩＤと関連付けることにより、顧客固有のサーバ利用データを取得すること、および顧客固有のレポートを作成することが可能となる。
【００３３】
サーバ情報を、ブロック１１２で収集することができる。例えば、サーバ情報を、情報収集ツール２００を用いて収集することができる。情報の収集は、＿月＿日出願の「＿」というタイトルの同時係属米国特許出願第＿号明細書、および＿月＿日出願の「＿」というタイトルの同時係属米国特許出願＿号明細書でより詳細に説明されている。
【００３４】
収集されるサーバ情報は、複数の異なるタイプのサーバ情報を含むことができる。
【００３５】
例えば、サーバ情報には、サーバによって果たされる役割の数および／またはタイプを含めることができる。例えば、サーバは、ウェブサーバ、電子メールサーバ、または任意の他の適切なタイプのサーバとすることができる。役割のタイプ、役割の数または任意の他の適切な情報などの、サーバが果たす役割に関する様々なタイプの情報を収集することができる。
【００３６】
サーバ情報には、サーバによって使用される様々な技術に関する情報も含めることができる。一例として、サーバが６４ビットのＣＰＵを使用しているかどうかを判定することができる。別の例として、サーバが仮想マシンを使用しているかどうかを判定することができる。
【００３７】
サーバ情報には、サーバによって使用されるソフトウェアについての情報を含めることもできる。例えば、サーバによって実行されるか、フィルタまたはドライバがインストールされるアプリケーションの数およびタイプに関する情報を収集することができる。任意の適切なタイプのソフトウェア情報を収集することができる。
【００３８】
サーバ情報には、サーバについてのハードウェア情報を含めることもできる。例えば、サーバ情報は、ＣＰＵ速度、ＲＡＭの量、ローカルストレージの量を含むことができるか、任意な他の適切なハードウェア情報を収集することができる。
【００３９】
上述のサーバ情報のタイプに加えて、例えばサーバに接続したユーザの数などの、任意の他の適切なタイプのサーバ情報を収集することができる。
【００４０】
図２は、サーバ情報を収集するのに用いることができる情報収集ツール２００の例を図示する。情報収集ツール２００は、任意の適切なプログラミング言語でプログラムされるソフトウェアモジュールとすることができる。
【００４１】
情報収集ツール２００は、サーバ情報が収集されるべき時刻をスケジュールすることができるタスクスケジューラ２０２を含むことができる。タスクスケジューラ２０２は、サーバ情報がネットワーク上で送信されるべき時刻をスケジュールすることができる。例えば、タスクスケジューラ２０２は、ユーザがネットワーク上でサーバ情報を収集および／または送信することができる時刻を設定するのに用いることができるユーザインタフェースを含むことができる。例えば、タスクスケジューラを用いて、ユーザは、定期的に、例えば毎晩真夜中に情報を収集するようにツールを設定することができる。
【００４２】
情報収集ツール２００は、命令をタスクスケジューラ２０２から受信することができる制御モジュール２０４を含むことができる。制御モジュール２０４は、情報収集および情報の送信の様々な態様を制御することができる。例えば、命令をタスクスケジューラ２０２から受信することに応じて、制御モジュール２０４は、特定の時刻にサーバ情報の収集を開始することができる。
【００４３】
情報収集ツール２００は、収集されるべき情報についての命令を包含することができる構成ファイル２０４を受信することができる。構成ファイル２０４は、例えば、ＸＭＬ構成ファイルとすることができる。情報収集ツール２００が、ＸＭＬ構成ファイル２０４を受信すると、構成ファイル２０４をＸＭＬパーサ２０６で解析して、ツール２００の様々な異なるコンポーネントに対する命令を抽出することができる。この情報が抽出されると、この情報を、データポイントポピュレイションモジュール２２０に送信することができ、この情報には、データポイントポピュレイションモジュール２２０によって抽出される情報のタイプを含めることができる。
【００４４】
データポイントポピュレイションモジュール２２０は、ＷＭＩインタプリタ２０８、レジストリリーダ２１０、エラーログスキャナ２１２および初期化情報モジュール２１４を含むことができる。これらモジュールのそれぞれは、複数のデータポイントを含むことがあるサーバ情報を収集するように動作することができる。ＷＭＩインタプリタ２０８を構成し、Windows（登録商標） Management Interfaceに関する情報を取得することができる。レジストリリーダモジュール２１０を構成し、サーバについてのレジストリ情報を取得することができる。エラーログスキャナモジュール２１２を構成し、サーバに格納されるエラーログからエラーログ情報グおよび／またはイベントログ情報を取得することができる。初期化情報モジュール２１４を構成し、サーバの初期化パラメータに関する情報を判定することができる。
【００４５】
サーバ情報を、データポイントポピュレイションモジュール２２０によって取得すると、ＳＱＭ計測モジュール２３０に送信することができる。ＳＱＭ計測モジュール２３０は、サーバ情報を受信すると、サーバ情報をＳＱＭ情報２１６に変換する。ＳＱＭ情報２１６は、ＳＱＭフォーマットに変換されるサーバ情報とすることができる。ＳＱＭ情報２１６を、セッションファイル２１７に格納することができる。次いで、ＳＱＭアップロードモジュール２１８は、セッションファイル２１７をインターネット２１９上のリモート位置にアップロードすることができる。例えば、セッションファイル２１７を、上述のように信頼できるサイトに送信することができる。
【００４６】
サーバ情報がネットワーク上で送信される際のサーバ情報のセキュリティを保護するために、１つまたは複数の対策をとることができる。例えば、セッションファイル２１７を暗号化することによって、サーバ情報を暗号化することができる。
【００４７】
別の例として、送信されるサーバ情報は、そのサーバについての（例えば、構成ファイルからの）クエリの回答を含むことができるが、送信されるサーバ情報を、クエリ自身とともに送信することはできない。従って、サーバ情報が、第三者によって傍受される場合、その第三者は、サーバについての情報を判定することができない。例えば、第三者は、数字５１２を傍受することができるが、その数字の意味を判定することができない。この場合、５１２は、サーバによって使用されるＲＡＭのメガバイトの数である可能性があるが、この背景では、その情報を傍受する第三者によって容易には取得されない可能性がある。
【００４８】
さらなる例として、サーバ情報を、サーバを識別する一意のＩＤとともに信頼できるエンティティに送信することができる。プライバシを保護するため、この一意のＩＤは、組織が特定のサーバに対して「オプトイン」することを決定するときに作成される、ランダムに生成される数字（例えば、ＧＵＩＤなどの１２８ビットの整数）とすることができる。この一意のＩＤが、サーバデータの送信中に傍受される場合であっても、データを傍受する第三者は、その一意のＩＤを組織に関連付けることはできないはずである。別のセキュリティ対策として、セキュアなＩＤを、任意の適切なアルゴリズムを用いてハッシュ化することができる。
【００４９】
図２に関して図示されるような、情報収集ツール２００は、サーバから情報を収集するのに使用することができるツールの一例に過ぎない。ツールを、任意の適切な方法で構成することができ、図２に関して説明したデータポイントのタイプを必ずしも収集する必要はない。他のタイプのデータポイントを収集することもある。加えて、ツール２００の実装は、図２に関して図示されるような、例えばＸＭＬおよびＳＱＭのような情報の表現方法には限定されない。任意の他の適切な情報の表現を使用することができる。
【００５０】
いくつかの状況においては、ツール２００によって収集されるべき情報のタイプは、ＸＭＬ構成ファイル２０４を受信することにより更新することができる。本発明のいくつかの態様では、ＸＭＬ構成ファイル２０４を、ネットワーク上で（例えば、信頼できるサイトから）様々な時点で受信して、情報収集ツール２００によって収集されるデータポイントを更新することができる。
【００５１】
図１を再度参照すると、サーバ情報をブロック１１２で収集すると、ブロック１１４で、サーバ情報を信頼できる組織に送信することができる。例えば、図２に図示されるように、サーバ情報を、インターネット上または任意の他の適切なネットワーク上で、信頼できる組織に送信することができる。
【００５２】
方法１００は、ブロック１１２でサーバ情報を収集するステップと、ブロック１１４でそのサーバ情報を送信するステップとをさらに含むことができる。これらのステップは、（例えば、定期的に）繰り返し実施することができる。いくつかの場合において、サーバ情報を収集および／または送信することができる時刻を、ユーザによって設定することができる。
【００５３】
参加者が、サーバ情報収集プログラムへの参加をもはや望まない場合、参加者は、任意の時点でプログラムの「オプトアウト」をすることができる。プログラムのオプトアウトをすることより、ツールが、サーバについてのさらなる情報を収集すること、および任意のさらなる通信を送信することを防ぐことができる。参加者は、１つのサーバまたは複数のサーバについてオプトアウトを選択することができる。一例として、ツール２００を用いて（例えば、プルダウンメニューからオプションを選ぶことによって）オプトアウトを開始することができる。
【００５４】
別の選択肢として、参加者がもはや参加を望まない場合、参加者は、情報収集ツール２００をアンインストールすることができる。ツールをアンインストールすることにより、ツールを参加者の装置から除去し、ツールがサーバに関するさらなる情報を収集することおよび任意のさらなる通信を送信することを防ぐこととなる。
【００５５】
参加者が、オプトアウトまたはツール２００のアンインストールを決定すると、方法１００は、ブロック１１８で終了する。
【００５６】
方法１００は、図１に関して説明される全てのステップを必ずしも含む必要はない。例えば、ユーザは、情報収集ツール２００を必ずしもインストールする必要はない。いくつかの状況において、情報収集ツール２００は、オペレーティングシステムとともに組織のサーバ上にインストールされる可能性がある。
【００５７】
方法１００のいくつかの動作を、コンピュータ、例えばサーバ上で実装することができる。しかし、方法１００のステップの全てを、コンピュータ上で実施する必要はない。一例として、ブロック１１０で組織情報を送信することは、必ずしもコンピュータによって実施される必要はない。むしろ、顧客情報を、別の適切な方法、例えば電話またはメールによって取得することができる。
【００５８】
方法１００のステップは、必ずしも図１に図示される順序で実施される必要はない。例えば、いくつかのステップを、他のステップと並行して実施してもよい。
【００５９】
図３は、サーバ利用情報を取得する方法３００の例を図示するブロック図である。ブロック３０２で、方法が始まる。
【００６０】
ブロック３０４で、第１の組織についての情報を受信することができる。ブロック３０４で受信される情報を、図１のブロック１１０で送信されている組織情報に応じて受信することができる。組織情報を、任意の適切な方法、例えばネットワーク上で受信することができる。
【００６１】
第１の組織についての情報を受信すると、組織によって操作されるサーバに関する情報を、ブロック３０６で取得することができる。ブロック３０６で、情報を、信頼できるサイトによって、図１のブロック１１４で送信されているサーバ情報に応じて受信することができる。例えば、サーバ情報を、信頼できるサイトにおいてＳＱＭフォーマットで受信することができる。上述のように、サーバ情報を暗号化フォーマットで受信することができる。
【００６２】
図４は、１つまたは複数の信頼できるサイトと関連付けることができるサーバ情報処理システム４００を図示するブロック図である。サーバ情報処理システム４００は、サーバ情報をサーバまたは他の装置（例えば、サーバ４０２）からネットワーク上で受信して、サーバ情報を処理するように動作することができる。
【００６３】
サーバ情報処理システム４００は、サーバ４０２およびツール２００と通信するウェブポータル４０４、フィードバックサーバ４０６およびＳＱＭサーバ４０８を含むことができる。処理システムはさらに、レポートジェネレータ４１０を含むことができる。
【００６４】
図３のブロック３０４では、組織情報を、ウェブポータル４０４によって受信することができる。ウェブポータル４０４は、組織情報をフィードバックサーバ４０６に送信することができる。フィードバックサーバ４０６は、組織情報を受信すると、構成ファイル（例えば、ＸＭＬ構成ファイル２０４）を生成し、その構成ファイルを、サーバ４０２、または組織と関連する別の装置に送信することができる。
【００６５】
構成ファイルをサーバ４０２に送信することにより、組織と関連するサーバから収集されるべき情報のタイプを更新することが可能となる。構成ファイルを送信することにより、ツール２００の新しいバージョンを再編集または再発送することなく、収集すべき情報の更新が可能となる。
【００６６】
ブロック３０６では、サーバ情報を、ＳＱＭサーバ４０８によって受信することができる。ＳＱＭサーバ４０８は、サーバ情報を処理し、サーバ情報をレポートジェネレータ４１０に送信することができる。
【００６７】
ブロック３０８では、組織情報を、サーバを操作する第２の組織から受信することができる。ブロック３０４に関して上述したように、情報をブロック３０８で受信することができる。
【００６８】
ブロック３１０では、第２の組織のサーバについての情報を受信することができる。ブロック３０６に関して上述したように、サーバ情報を、ブロック３１０で受信することができる。
【００６９】
情報を、上述の２つの組織に加えて複数の組織から受信することができる。サーバ情報を、組織に関連する複数のサーバおよび／または他の装置から受信することができる。サーバ利用情報は、複数の組織および複数のサーバから受信した情報に基づいて決定することができる。
【００７０】
ブロック３１２では、サーバ利用情報を、受信した情報に基づいて判定することができる。サーバ利用情報を、レポートジェネレータ４１０または他の適切な装置によって判定することができる。
【００７１】
様々なサーバ利用情報を判定することができる。サーバ利用情報には、複数のサーバに関して集計されたサーバ情報を含めることができる。様々な操作を、複数のサーバから受信した生のサーバ情報に対して実施して、サーバ利用情報を生成することができる。例えば、アルゴリズムをサーバ情報に適用して、様々な集計パラメータ（例えば、平均サーバ速度、仮想マシンを実行しているサーバの割合、特定のハードウェアコンポーネントを使用しているサーバの総数など）を判定することができる。任意の適切な技術を使用して、受信されるサーバ情報からさらなる有用な情報を判定することができる。
【００７２】
組織の市場区分を、受信した組織情報に基づいて判定することができる。例えば、組織が、小規模な組織、中規模な組織または大規模な組織であるかどうかを判定することができる。集計したサーバ利用情報を、市場区分について、同一市場区分内の組織に関してサーバデータを編集することによって判定することができる。
【００７３】
サーバ利用情報に基づいて、サーバ利用レポートを作成することができる。レポートは、マーケティングチーム４１２、マーケットリサーチチーム４１４およびコンポーネントチーム４１６などの、様々な異なるチームに送達することができる。本発明の一態様では、レポートを顧客に提供することができる。レポートジェネレータ４１０は、レポートをウェブポータル４０４に提供することができる。
【００７４】
顧客は、ウェブポータル４０４と通信して、１つまたは複数のレポートを取得することができる。レポートは、顧客固有とすることができ、顧客のサーバに関するサーバ利用情報を含むこともできる。代替的に、レポートは、複数の顧客に対して、集計したサーバ利用情報を提示することができる。集計したサーバ利用情報を取得することによって、顧客は、自己のサーバの操作を市場における他の組織の操作と比較することができる。しかし、顧客は、別の顧客用の特定のサーバ情報を参照することはできない。
【００７５】
ブロック３１４で、方法３００が終了する。
【００７６】
方法３００は、必ずしも上述の順序で実施される必要はない。例えば、いくつかのステップを、他のステップと並行して実施してもよい。
【００７７】
装置４０２は、必ずしもサーバである必要はなく、ネットワーク上で通信するように動作する任意の適切なコンピューティング装置（例えば、パーソナルコンピュータ）とすることができる。いくつかの状況においては、装置４０２による送信および／または受信の前および／または後に、情報を、他の装置によって処理することができる。装置４０２は、組織によって操作される１つまたは複数のサーバと通信することができ、サーバから収集されるデータを送信および受信することができる。
【００７８】
本発明の一態様では、組織情報およびサーバ情報を、異なるサイト（例えば、ウェブポータル４０４、およびＳＱＭサーバ４０８）によって受信することができる。これらの２つの異なるタイプの情報を、２つまたはそれ以上の異なるサイトによって受信することにより、データのプライバシおよびセキュリティの保護を助けることができる。組織情報およびサーバ情報が２つのサイトによって受信されると、これらの２タイプの情報を、よりセキュアな環境（例えば、ローカルネットワーク）で関連付けることができる。
【００７９】
様々な利点を提供して、サーバ情報収集プログラムへの参加を促すことができる。
【００８０】
一例として、上記で議論したように、顧客に、サーバ情報、サーバ利用情報、および／またはサーバレポートを提供することができる。顧客は、ソフトウェアをダウンロードするためにウェブポータル４０４（例えば、MS Connect）上にアカウントを有することができ、ウェブポータル４０４を使用して、フィードバックを授受することもできる。本発明の一態様では、顧客は、ウェブポータル４０４を介してコンポーネントチーム４１６と直接的な通信を有することができる。サーバ情報収集ツール２００に問題が発生すると、顧客は、ウェブポータル４０４を使用してヘルプの代表者と通信することができる。
【００８１】
本発明の一態様では、顧客は、ウェブポータル４０４を使用して、情報収集に関する技術文書を参照することができる。これにより、プログラムについての十分な量の情報を与えることで、顧客がサーバ情報収集について満足することが可能となる。
【００８２】
本発明の別の態様では、様々な技術によって、顧客との開かれた対話（open dialog）を推進することができる。例えば、情報収集プログラムの開発者は、顧客が参照および応答してフィードバックを提供することができるウェブポータル上に、「ブログ」を掲載することができる。
【００８３】
ここで、いくつかのシナリオを説明することとする。
【００８４】
（シナリオ１）
顧客に、サーバ情報収集プログラムへ参加するように勧誘することができ、顧客が、参加することを決定する。最終的には、ツールは、インストールされた後さらなるやりとりを要求しない。ツールを実行してから１ヶ月後に、顧客は、自己のウェブポータルサイト（例えば、MS Connect）に再ログインすることを決定し、待ち状態のレポート、すなわち、最も頻繁に故障するマシン、ファイルサーバの平均断片化、それぞれのマシン上で発生するＣＨＫＤＳＫエラーの数に関するレポートがあることを発見する可能性がある。これらのレポートは、顧客が、翌年にどのハードウェアを購入するのが自分にとって最良の購入であるか、および自己のファイルサーバをデフラグすべき頻度について決定する助けとなることがある。
【００８５】
（シナリオ２）
新しいＸＭＬ構成ファイルがウェブに掲載されることがあり、顧客は、自己のウェブポータルサイト（例えば、Microsoft Connect）上で、このことを通知される。顧客を、新しいＸＭＬファイルをダウンロードするステップを通してガイドすることができ、その新しいＸＭＬファイルをサーバ上の正しい場所に配置することができる。タスクスケジューラで指定したその夜の遅い時刻に、ＸＭＬ構成ファイルで定義されたデータポイントが集められる。次いで、タスクスケジューラで送信時間として指定した時刻に、サーバデータは、インターネット上で送信される。サーバデータを、マシンを識別する一意のＩＤおよび、ＸＭＬ構成ファイルのバージョンを識別するＩＤとともに送信することができる。
【００８６】
（シナリオ３）
開発チームのメンバーは、まず、中間市場のユーザの何割が特定のデータのバックアップ製品を利用しているかを知りたいであろう。特に、そのメンバーは、これらの中間市場のユーザによってバックアップされているデータの平均量を知りたいであろう。平均数を得た後、開発チームは生データを調べ、平均と近くない（すなわち、外れ値（outlier）の）組織を見つけることができる。例えば、開発チームは、比較的大量のデータをデイリーでバックアップしている人を探すことができる。次いで、チームは、これらの個々の顧客が大容量のバックアップのためにどの種類のハードウェアを使用しているかを判定するために、これらの個々の顧客と連絡をとることができる。そのチームは、大容量のバックアップの全てが特定の技術を用いて行われていることを認識すると、その特定の技術をより活用するようにバックアップコードを最適化することができる。
【００８７】
（シナリオ４）
マーケットリサーチは、製品Ｘが製品Ｙに有利に用いられるものではないことを示すことがある。製品Ｘについてのコンポーネントチームは、データポイントを、製品Ｙのセッティングの任意の出現（存在すれば、これは製品Ｙがインストールされていることを示すことになる）に関してレジストリをチェックするＸＭＬ構成ファイルに追加することを要求することができる。そのチームは、製品Ｘがインストールされているかどうかを示すこととなるデータポイントも要求する。次いで、そのチームは、これらの結果と電話調査によって与えられるものとを比較し、望む場合は市場区分でそれらを切り分けることもできる。
【００８８】
（シナリオ５）
４つの特定のデータポイントを、動的なデータポイントのＸＭＬ構成ファイルに含むことができる。４つの特定のデータポイントはすなわち、プロセッサ速度（メガヘルツ単位）、ＲＡＭの量（メガバイト単位）、ブートボリュームの容量（メガバイト単位）、およびファイル共有が有効か否か、である。タスクスケジューラで指定した時刻に、情報収集ツール２００が実行される。まず、サーバの情報がセッションファイルに書き込まれる。これを行うために、コンポーネントは、ＸＭＬパーサにユーザＩＤとＸＭＬ構成ファイルのバージョン番号との両方を求める。これらの２つの値の両方は、それらのデータポイントに割り当てられ、セッションファイルに書き込まれる。次いでＷＭＩクエリコンポーネントは、ＸＭＬパーサに、ＸＭＬファイル内の全てのＷＭＩクエリのリストを求める。プロセッサ速度、ＲＡＭ、およびボリューム容量に対する要求を、それらを実行するＷＭＩクエリコンポーネントに返す。それぞれのクエリの実行後、コンポーネントは、データ型に基づいて、結果を取り込み、結果をデータポイントに変える。
【００８９】
データポイントは、生成されると、セッションファイルに書き込まれる。この後、レジストリコンポーネントは、ＸＭＬパーサに、読み取る必要がある全てのレジストリ値のリストを求める。本例では、１つのレジストリ位置のみが返され、その位置は、単純なファイル共有が設定されているか否かを指定するフラグ（ブール値（boolean））の位置である。ＸＭＬパーサは、構造体（struct）をレジストリコンポーネントに返す。レジストリコンポーネントは、レジストリ位置にあるフラグ値を読み取り、フラグ値を、ＸＭＬパーサから渡された特定のデータポイントに格納する。次いでデータポイントは、セッションファイルに書き込まれる。この時点で、全てのデータが集められている。これは送信が生じる時点である。セッションファイルを、ＨＴＴＰＳまたはＨＴＴＰを用いてＳＱＭサーバに送信することができる。
【００９０】
本発明の態様を実行することができるコンピュータシステム（例えば、サーバ）の特定の実装の詳細を説明する。これらの実装の詳細は、例として提供されるに過ぎず、本発明はいかなる特定の実装に限定されない。
【００９１】
本明細書で説明される方法、その動作、および様々な実施形態、ならびにこれら方法および動作の変形を、個々にまたは組み合わせて、例えば不揮発性記録媒体、集積回路メモリ要素、またはそれらの組合せである１つまたは複数のコンピュータ読取可能媒体上に明確に具現化されるコンピュータ読取可能信号によって定義することができる。コンピュータ読取可能媒体は、コンピュータがアクセス可能な任意の利用可能な媒体とすることができる。限定ではなく例として、コンピュータ読取可能媒体は、コンピュータ記憶媒体および通信媒体を備えることができる。コンピュータ記憶媒体には、コンピュータ読取可能命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術で実装される、揮発性および不揮発性、リムーバブルおよび非リムーバブルの媒体が含まれる。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気記憶装置、他のタイプの揮発性および不揮発性メモリ、所望の情報の格納に用いることができ且つコンピュータがアクセス可能な任意の他の媒体、ならびに前述の任意の適切な組合せが含まれるが、これらには限定されない。
【００９２】
通信媒体は、典型的に、コンピュータ読取可能命令、データ構造、プログラムモジュール、または他のデータを、搬送波または他のトランスポート機構などの変調データ信号の中に具現化し、任意の情報送達媒体を含む。用語「変調データ信号」は、情報を信号で符号化する方法で設定あるいは変更される１つまたは複数の特性を有する信号を意味する。限定ではなく例として、通信媒体には、有線ネットワークまたは直接配線接続などの有線媒体、音響、ＲＦ、赤外線および他の無線媒体などの無線媒体、他のタイプの通信媒体、ならびに前述の任意の適切な組合せが含まれる。
【００９３】
１つまたは複数のコンピュータ読取可能媒体に具現化されるコンピュータ読取可能信号は、例えば、コンピュータによって実行される結果としてコンピュータに命令して本明細書で説明した１つまたは複数の機能、ならびに／あるいは様々な実施形態、それらの変形および組合せを実施する１つまたは複数のプログラムの一部として、命令を定義することができる。そのような命令を、任意の複数のプログラミング言語、例えば、Java（登録商標）、J#、Visual Basic、C、C#、またはC++、Fortran、Pascal、Eiffel、Basic、COBOLなど、またはこれらの任意の様々な組合せで書くことができる。そのような命令が具現化されるコンピュータ読取可能媒体は、本明細書で説明した任意のシステムの１つまたは複数のコンポーネント上に存在することができ、１つまたは複数の上記コンポーネントに渡って分散させることができ、それらの間で移動させることができる。
【００９４】
コンピュータ読取可能媒体は、自身に格納される命令を任意の適切なコンピュータシステムにロードして本明細書で議論した本発明の態様を実装することができるように、移送することができる。加えて、コンピュータ読取可能媒体に格納される命令は、上述したように、ホストコンピュータで実行しているアプリケーションプログラムの一部として具現化される命令には限定されないことを認識されたい。むしろ、命令を、上記で議論した本発明の態様を実装するようにプロセッサをプログラムするのに利用することができる任意のタイプのコンピュータコード（例えば、ソフトウェアまたはマイクロコード）として具現化することができる。
【００９５】
本発明による様々な実施形態を、１つまたは複数のコンピュータシステムで実装することができる。これらのコンピュータシステムは、例えば、IntelのPENTIUM（登録商標）タイプのプロセッサ、MotorolaのPowerPC、SunのUltraSPARC、Hewlett-PackardのPA-RISCプロセッサ、または任意の他のタイプのプロセッサに基づく汎用コンピュータなどの汎用コンピュータとすることができる。さらに、実施形態を、単一のコンピュータ上に配置するか、または通信ネットワークにより取り付けられる複数のコンピュータ間に分散させることができる。
【００９６】
例えば、本発明の様々な態様を、汎用コンピュータシステムにおいて実行する専用のソフトウェアとして実装することができる。コンピュータシステムは、ディスクドライブ、メモリ、またはデータを格納する他の装置などの１つまたは複数のメモリ装置と接続されるプロセッサを含むことができる。メモリは、典型的に、コンピュータシステムの操作中にプログラムおよびデータを格納するために使用される。コンピュータシステムのコンポーネントを、（例えば、同一マシン内で統合されるコンポーネント間の）１つまたは複数のバス、および／または（例えば、別々の分離したマシン上に存在するコンポーネント間の）ネットワークを含むことができる相互接続機構によって結合することができる。相互接続機構は、通信（例えば、データ、命令）をシステムコンポーネント間で交換することを可能にする。コンピュータシステムは、例えばキーボード、マウス、トラックボール、マイクロフォン、タッチスクリーンのような１つまたは複数の入力装置、および例えば印刷装置、ディスプレイスクリーン、スピーカのような１つまたは複数の出力装置も含む。加えて、コンピュータシステムは、（相互接続機構に対する追加または代替として）コンピュータシステムを通信ネットワークに接続する１つまたは複数のインタフェースを包含することができる。
【００９７】
ストレージシステムは、典型的に、信号が格納されるコンピュータ読取書込可能で不揮発性の記録媒体を含み、その信号は、プロセッサによって実行されるべきプログラムを定義するか、あるいは媒体上または媒体内に格納され、プログラムによって処理されるべき情報を定義する。媒体は、例えばディスクまたはフラッシュメモリとすることができる。典型的に、操作において、プロセッサにより、データが不揮発性記録媒体から別のメモリに読み出され、これにより媒体に行うよりも高速な、プロセッサによる情報への高速なアクセスが可能となる。一般に、このメモリはダイナミックランダムアクセスメモリ（ＤＲＡＭ）またはスタティックメモリ（ＳＲＡＭ）などの、揮発性のランダムアクセスメモリである。このメモリを、ストレージシステム、またはメモリシステムに配置することができる。プロセッサは、一般に、集積回路メモリ内のデータを操作し、処理が完了した後にデータを媒体にコピーする。媒体および集積回路メモリ要素の間のデータ移動を管理するための様々な機構が知られているが、本発明はそれらに限定されない。本発明は、特定のメモリシステムまたはストレージシステムには限定されない。
【００９８】
本コンピュータシステムは、例えばＡＳＩＣのなどの特別にプログラム化された専用のハードウェアを含むことができる。本発明の態様は、ソフトウェア、ハードウェアまたはファームウェア、あるいはそれらの任意の組み合わせで実装することができる。さらに、上記の方法、動作、システム、システム要素およびそれらのコンポーネントは、上述のコンピュータシステムの一部として、または独立のコンポーネントとして実装することができる。
【００９９】
例として議論した本コンピュータシステムを、本発明の様々な態様を実践することができるコンピュータシステムの１つのタイプとして説明してきたが、本発明の態様は、このコンピュータシステムで実装されることには限定されないことを認識されたい。本発明の様々な態様を、異なるアーキテクチャまたはコンポーネントを有する１つまたは複数のコンピュータで実践することができる。
【０１００】
本コンピュータシステムは、高水準プログラミング言語を用いてプログラム可能な、汎用コンピュータシステムとすることができる。本コンピュータシステムは、特別にプログラムされた専用のハードウェアを用いて実装することもできる。本コンピュータシステムでは、プロセッサは、典型的に、Intel社から入手可能な公知のPentium（登録商標）クラスのプロセッサなどの市販のプロセッサである。多くの他のプロセッサも使用可能である。そのようなプロセッサは通常、例えば、Microsoft社から入手可能なWindows（登録商標）95、Windows（登録商標）98、Windows（登録商標） NT、Windows（登録商標）2000（Windows（登録商標）ME）、もしくはWindows（登録商標）XPオペレーティングシステム、Apple Computerから入手可能なMAC OS System X、Sun Microsystemsから入手可能なSolaris Operating System、様々なソースから入手可能なUNIX（登録商標）、または様々なソースから入手可能なLinuxとすることができるオペレーティングシステムを実行する。多くの他のオペレーティングシステムを使用することもできる。
【０１０１】
プロセッサおよびオペレーティングシステムはともに、高水準プログラム言語で書かれるアプリケーションプログラムに対するコンピュータプラットフォームを定義する。本発明は、特定のコンピュータシステムプラットフォーム、プロセッサ、オペレーティングシステム、またはネットワークに限定されないことを理解されたい。また、本発明は、特定のプログラミング言語またはコンピュータシステムに限定されないことを、当業者は理解されたい。さらに、他の適切なプログラミング言語、および他の適切なコンピュータシステムも用いることができるであろうことを認識されたい。
【０１０２】
コンピュータシステムの１つまたは複数の部分を、通信ネットワークに結合された１つまたは複数のコンピュータシステムに渡って分散することができる。これらのコンピュータシステムは、汎用コンピュータシステムとすることができる。例えば、本発明の様々な態様を、１つまたは複数のクライアントコンピュータにサービスを提供するように構成された１つまたは複数のコンピュータシステム（例えば、サーバ）間、または分散システムの一部として全体のタスクを実施するように構成された１つまたは複数のコンピュータシステム間に分散することができる。例えば、本発明の様々な態様は、本発明の様々な実施形態に従って様々な機能を実施する１つまたは複数のサーバシステム間で分散されたコンポーネントを含むクライアントサーバシステムで実施することができる。これらのコンポーネントは、通信ネットワーク（例えば、インターネット）上で通信プロトコル（例えば、ＴＣＰ／ＩＰ）を用いて通信する実行ファイル、中間コード（例えば、ＩＬ）またはインタプリタ（例えば、Ｊａｖａ（登録商標））コードとすることができる。
【０１０３】
ネットワーク２１９は、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、イントラネット、インターネット、またはその任意の組み合わせのような任意の適切なタイプのネットワークとすることができる。例示の目的のため、本例では限られた数の装置を示す。しかし、多くの装置をネットワーク２１９に結合することができることを認識されたい。装置を、ネットワーク２１９に直接結合するように図示するが、１つまたは複数のサーバ、ルータ、プロキシ、ゲートウェイ、ネットワークアドレス変換装置、またはそれらの任意の適切な組み合わせを通して、装置をネットワークに結合することができる。
【０１０４】
本発明は、いずれか特定のシステムまたはシステムグループ上で実行することに限定されないことを認識されたい。また、本発明は、いずれか特定の分散アーキテクチャ、ネットワーク、または通信プロトコルにも限定されないことを認識されたい。
【０１０５】
本発明の様々な実施形態を、SmallTalk、Java（登録商標）、C++、Ada、J#（J-Sharp）、またはC#（C-Sharp）などのオブジェクト指向プログラミング言語を用いてプログラムすることができる。他のオブジェクト指向プログラミング言語を用いることもできる。代替的には、関数型、スクリプト型、および／または論理型のプログラミング言語を用いることができる。本発明の様々な態様を、非プログラム式環境（例えば、閲覧プログラムのウィンドウで参照されるときに、グラフィカルユーザインタフェース（ＧＵＩ）の態様をレンダリングするかまたは他の機能を実施する、ＨＴＭＬ、ＸＭＬまたは他のフォーマットで作成した文書）で実装することができる。本発明の様々な態様を、プログラム式要素または非プログラム式要素、またはそれらの任意の組み合わせとして実装することができる。
【０１０６】
本発明のいくつかの例示的な実施形態を説明してきたが、前述したことは単に例示的であって限定的ではなく、単に例として提示したに過ぎないことを、当業者は理解されたい。多数の修正および他の例示的な実施形態は、当技術分野の通常技術の範囲内であり、本発明の範囲内にあると考えられる。特に、本明細書で提示した多くの例は、方法の動作またはシステム要素の特定の組み合わせを伴うが、これらの動作およびこれらの要素を、他のやり方と組み合わせて同じ目的を達成することができることを理解されたい。一実施形態と関連させて議論しただけの動作、要素および特徴は、他の実施形態における同様な役割から除外されるように意図されるものではない。さらに、請求項に列挙される１つまたは複数のミーンズ・プラス・ファンクション（means-plus-function）限定に関して、手段は、列挙した機能を実施するため本明細書で開示した手段に限定されるように意図されるものではなく、列挙した機能を実施するための、現在公知であるか後に開発される手段と同等の任意の手段の範囲を網羅するように意図されるものである。
【０１０７】
請求項で、請求項の構成要素を修正するための、「第１の」、「第２の」、「第３の」などの順序を示す用語の使用は、それ自体、優先度、先行性、または１つの請求項の構成要素の別の請求項の構成要素に対する順序、または方法の動作を実施する時間的順序を暗示せず、請求項の構成要素を区別するために、ある名前を有する１つの請求項の構成要素を（順序を示す用語の使用以外で）同一の名前を有する別の構成要素から区別するためのラベルとして単に使用されるにすぎない。
【０１０８】
本発明はその適用において、以下の記述で説明または図面に図示される構成の詳細または構成要素の配置に限定されない。本発明は、他の実施形態とすることができ、様々な方法で実践または実行することができる。また、本明細書で用いた言い回しおよび用語は、説明の目的であって限定として見なされるべきではない。「〜を含む」、「〜を備える」、または「〜を有する」、「〜を包含する」、「〜を伴う」およびそれらの変形は本明細書では、その後に列挙された項目およびそれらと同等のもの、ならびに追加項目を含むことが意味される。
【０１０９】
本発明の少なくとも一実施形態のいくつかの態様を説明したので、様々な変更、修正、および改善を当業者は容易に発想するであろうことを認識されたい。上記の変更、修正、および改善は本開示の一部であることが意図されており、本発明の精神および範囲内であることが意図される。従って、前述の説明および図面は例に過ぎない。
【図面の簡単な説明】
【０１１０】
【図１】サーバ情報を取得する方法の例を図示するフローチャートである。
【図２】サーバ情報を収集するのに使用される可能性がある情報収集ツールの例を示す図である。
【図３】サーバ利用情報を取得する方法の例を図示するブロック図である。
【図４】サーバ情報処理システムを図示するブロック図である。
【図１】
2009514092.tif 000003
【図２】
2009514092.tif 000004
【図３】
2009514092.tif 000005
【図４】
2009514092.tif 000006
【国際調査報告】
2009514092.tif 000007
2009514092.tif 000008