(57)【要約】【課題】複数の資源に関するデータを収集するために複数のユーザ定義スケジュールが受け取られる、方法、システム、製品、およびコンピュータ可読媒体を提供する。【解決手段】少なくとも１つの資源に関する余分なデータ収集を除去するために複数のユーザ定義スケジュールの処理に基づいて、少なくとも１つの資源に関するデータ収集についてのスケジュールを生成する。生成されたスケジュールに従って、少なくとも１つの資源に関する操作を実行する。【選択図】図１
2009500704.tif 000002
【特許請求の範囲】
【請求項１】
複数の資源に関するデータを収集するために複数のユーザ定義スケジュールを受け取るステップと、
少なくとも１つの資源に関する余分なデータ収集を除去するために前記複数のユーザ定義スケジュールの処理に基づいて、前記少なくとも１つの資源に関するデータ収集についてのスケジュールを生成するステップと、
前記生成されたスケジュールに従って、前記少なくとも１つの資源に関する操作を実行するステップと、を含む、
方法。
【請求項２】
前記ユーザ定義スケジュールが、前記データ、前記データを収集するための頻度、および収集される前記データの特性を収集するために監視される選択された資源に関する指示を提供する、請求項１に記載の方法。
【請求項３】
前記生成されたスケジュールに従う前記少なくとも１つの資源に関する前記操作が第１の操作であり、前記生成されたスケジュールに従う前記第１の操作を実行する前記ステップが、前記ユーザ定義スケジュールに直接基づいて前記少なくとも１つの資源を監視する第２の操作の実行と比較してより少ない処理時間を消費する、請求項１または２に記載の方法。
【請求項４】
前記複数の資源が複数のグループに含まれることがあり、前記ユーザ定義スケジュールが、前記複数のグループに関するデータの収集を示し、前記方法が、
前記複数のグループに関する前記データ収集を示す前記ユーザ定義スケジュールが、前記複数の資源に関する前記データの収集において競合を引き起こすかどうかを決定するステップと、
前記生成されたスケジュールにおける前記競合を取り除くステップと、をさらに含む、
請求項１、２または３に記載の方法。
【請求項５】
ユーザ定義スケジュール中の、類似するが同一ではない要求の収集をグループ化するステップと、
前記類似の要求の収集を、生成されたスケジュール中の単一のエンティティに結合するステップと、をさらに含む、
先行請求項のいずれか１項に記載の方法。
【請求項６】
ユーザ定義スケジュールが修正されたという指示を受け取るステップと、
前記修正されたユーザ定義スケジュールおよび他の未修正のユーザ定義スケジュールに基づいて前記スケジュールを再構築するステップと、を含む、
先行請求項のいずれか１項に記載の方法。
【請求項７】
メモリと、
該メモリに結合されたプロセッサと、を含むシステムであって、前記プロセッサが、
複数の資源に関するデータを収集するために複数のユーザ定義スケジュールを受け取り、
少なくとも１つの資源に関する余分なデータ収集を除去するために前記複数のユーザ定義スケジュールの処理に基づいて、前記少なくとも１つの資源に関するデータ収集についてのスケジュールを生成し、
前記生成されたスケジュールに従って、前記少なくとも１つの資源に関する操作を実行する、ように動作可能である、
システム。
【請求項８】
前記ユーザ定義スケジュールが、前記データ、前記データを収集するための頻度、および収集される前記データの特性を収集するために監視される選択された資源に関する指示を提供する、請求項７に記載のシステム。
【請求項９】
前記生成されたスケジュールに従う前記少なくとも１つの資源に関する前記操作が第１の操作であり、前記生成されたスケジュールに従う前記第１の操作を実行する前記ステップが、前記ユーザ定義スケジュールに直接基づいて前記少なくとも１つの資源を監視する第２の操作の実行と比較してより少ない処理時間を消費する、請求項７または８に記載のシステム。
【請求項１０】
前記複数の資源が複数のグループに含まれることがあり、前記ユーザ定義スケジュールが、前記複数のグループに関するデータの収集を示し、前記プロセッサがさらに、
前記複数のグループに関する前記データ収集を示す前記ユーザ定義スケジュールが、前記複数の資源に関する前記データの収集において競合を引き起こすかどうかを決定し、
前記生成されたスケジュールにおける前記競合を取り除く、ように動作可能である、
請求項７、８または９に記載のシステム。
【請求項１１】
前記プロセッサはさらに、
ユーザ定義スケジュール中の、類似するが同一ではない要求の収集をグループ化し、
前記類似の要求の収集を、生成されたスケジュール中の単一のエンティティに結合する、ように動作可能である、
請求項７、８、および９または１０に記載のシステム。
【請求項１２】
前記プロセッサがさらに、
ユーザ定義スケジュールが修正されたという指示を受け取り、
前記修正されたユーザ定義スケジュールおよび他の未修正のユーザ定義スケジュールに基づいて前記スケジュールを再構築する、ように動作可能である、
請求項７〜１１のいずれか１項に記載のシステム。
【請求項１３】
製品であって、該製品は、マシン上で操作を実行することができ、前記操作が、
複数の資源に関するデータを収集するために複数のユーザ定義スケジュールを受け取るステップと、
少なくとも１つの資源に関する余分なデータ収集を除去するために前記複数のユーザ定義スケジュールの処理に基づいて、前記少なくとも１つの資源に関するデータ収集についてのスケジュールを生成するステップと、
前記生成されたスケジュールに従って、前記少なくとも１つの資源を処理するステップと、を含む、
製品。
【請求項１４】
前記ユーザ定義スケジュールが、前記データ、前記データを収集するための頻度、および収集される前記データの特性を収集するために監視される選択された資源に関する指示を提供する、請求項１３に記載の製品。
【請求項１５】
前記生成されたスケジュールに従う前記少なくとも１つの資源に関する前記処理が第１の処理操作であり、前記生成されたスケジュールに従う前記第１の処理操作の前記実行ステップが、前記ユーザ定義スケジュールに直接基づいて前記少なくとも１つの資源を監視する第２の処理操作の実行と比較してより少ない処理時間を消費する、請求項１３または１４に記載の製品。
【請求項１６】
前記複数の資源が複数のグループに含まれることがあり、前記ユーザ定義スケジュールが、前記複数のグループに関するデータの収集を示し、前記操作が、
前記複数のグループに関する前記データ収集を示す前記ユーザ定義スケジュールが、前記複数の資源に関する前記データの収集において競合を引き起こすかどうかを決定するステップと、
前記生成されたスケジュールにおける前記競合を取り除くステップと、をさらに含む、
請求項１３、１４または１５に記載の製品。
【請求項１７】
前記操作が、
ユーザ定義スケジュール中の、類似するが同一ではない要求の収集をグループ化するステップと、
前記類似の要求の収集を、生成されたスケジュール中の単一のエンティティに結合するステップと、をさらに含む、
請求項１３、１４、１５または１６に記載の製品。
【請求項１８】
前記操作が、
ユーザ定義スケジュールが修正されたという指示を受け取るステップと、
前記修正されたユーザ定義スケジュールおよび他の未修正のユーザ定義スケジュールに基づいて前記スケジュールを再構築するステップと、をさらに含む、
請求項１３〜１７のいずれか１項に記載の製品。
【請求項１９】
計算インフラストラクチャを導入するための方法であって、コンピュータ可読コードを計算システムに組み入れるステップを含み、前記コードが前記計算システムと共に、
複数の資源に関するデータを収集するために複数のユーザ定義スケジュールを受け取るステップと、
少なくとも１つの資源に関する余分なデータ収集を除去するために前記複数のユーザ定義スケジュールの処理に基づいて、前記少なくとも１つの資源に関するデータ収集についてのスケジュールを生成するステップと、
前記生成されたスケジュールに従って、前記少なくとも１つの資源に関する操作を実行するステップと、を実行することができる、
方法。
【請求項２０】
前記ユーザ定義スケジュールが、前記データ、前記データを収集するための頻度、および収集される前記データの特性を収集するために監視される選択された資源に関する指示を提供する、請求項１９に記載の方法。
【請求項２１】
前記生成されたスケジュールに従う前記少なくとも１つの資源に関する前記操作が第１の操作であり、前記生成されたスケジュールに従う前記第１の操作を実行する前記ステップが、前記ユーザ定義スケジュールに直接基づいて前記少なくとも１つの資源を監視する第２の操作の実行と比較してより少ない処理時間を消費する、請求項１９または２０に記載の方法。
【請求項２２】
前記複数の資源が複数のグループに含まれることがあり、前記ユーザ定義スケジュールが、前記複数のグループに関するデータの収集を示し、前記コードが前記計算システムと共に、
前記複数のグループに関する前記データ収集を示す前記ユーザ定義スケジュールが、前記複数の資源に関する前記データの収集において競合を引き起こすかどうかを決定するステップと、
前記生成されたスケジュールにおける前記競合を取り除くステップと、をさらに実行することができる、
請求項１９、２０または２１に記載の方法。
【請求項２３】
前記コードが前記計算システムと共に、
ユーザ定義スケジュール中の、類似するが同一ではない要求の収集をグループ化するステップと、
前記類似の要求の収集を、生成されたスケジュール中の単一のエンティティに結合するステップと、をさらに実行することができる、
請求項１９、２０、２１または２２に記載の方法。
【請求項２４】
前記コードが前記計算システムと共に、
ユーザ定義スケジュールが修正されたという指示を受け取るステップと、
前記修正されたユーザ定義スケジュールおよび他の未修正のユーザ定義スケジュールに基づいて前記スケジュールを再構築するステップと、をさらに実行することができる、
請求項１９〜２３のいずれか１項に記載の方法。
【請求項２５】
命令を含むコンピュータ可読媒体であって、前記命令は、コンピュータにより実行される場合に操作を引き起こし、該操作が、
複数の資源に関するデータを収集するために複数のユーザ定義スケジュールを受け取るステップと、
少なくとも１つの資源に関する余分なデータ収集を除去するために前記複数のユーザ定義スケジュールの処理に基づいて、前記少なくとも１つの資源に関するデータ収集についてのスケジュールを生成するステップと、
前記生成されたスケジュールに従って、前記少なくとも１つの資源を処理するステップと、を含む、
コンピュータ可読媒体。
【請求項２６】
コンピュータ・プログラムであって、該プログラムがコンピュータ上で走らされる場合に、請求項１〜６のいずれか１項に記載の方法を実行するようにされたプログラム・コード手段を含む、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、監視される資源についてのスケジュールを管理するための方法、システム、および製品に関する。
【背景技術】
【０００２】
プリンタ、スキャナ、ワークステーション等の資源のグループは、計算環境中において１つ以上の管理アプリケーションにより管理されることがある。管理アプリケーションは、その管理アプリケーションにより管理されるプリンタ、スキャナ、ワークステーション等の資源についてのデータを収集することがある。ある特定の状況においては、資源についてのデータをリアルタイムで連続的に収集できるが、多くの状況では、資源についての連続的なデータ収集は実際的ではないことがある。結果として、エンドユーザは、複数の資源についてのデータを収集するために複数のスケジュールを作成することがあり、複数の資源は、データを収集するスケジューラ・アプリケーションによって実行されることがある。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
もし複数のソフトウェア・アプリケーションが同じ資源を監視すると、同じ資源からデータを収集するための複数のスケジュールが場合によっては作成されることがある。もし複数のスケジュールが同じ資源を同時に使用しようとすれば、競合が生じることがあり、ある特定のスケジュールが動作不能になったり、誤ったデータを収集したりすることがある。
【０００４】
ユーザは、異なるスケジュールが競合しているかもしれないこと、または必要なデータが、ユーザのニーズを満たすのに十分頻繁に収集されていないことを見極めるのが困難であると気付くことがある。ある特定の状況において、データ収集は、他の操作のために用いられ得る資源を利用することにより、計算環境の性能に影響することがある。非効率的なスケジューリングは、ある特定の資源に関して要求されるよりも頻繁に生じるデータ収集につながることがあり、また、他の資源に関して要求されるよりも低い頻度で生じるデータ収集につながることもある。もしデータ収集が要求されるよりも頻繁に生じれば、計算時間が浪費される。また、もしデータ収集が要求されるよりも低い頻度で生じれば、収集されたデータは古いことがあり、ソフトウェアまたはユーザが、十分に情報を得た上での管理決定を行うことを支援できないことがある。
【課題を解決するための手段】
【０００５】
複数の資源に関するデータを収集するために、複数のユーザ定義スケジュールが受け取られる方法、システム、製品、およびコンピュータ可読媒体が提供される。少なくとも１つの資源に関する余分なデータ収集を排除するための複数のユーザ定義スケジュールの処理に基づいて、少なくとも１つの資源のデータ収集のためのスケジュールが生成される。操作は、生成されたスケジュールに従って少なくとも１つの資源に関して実行される。
【０００６】
別の実施形態において、ユーザ定義スケジュールは、データを収集するために監視される選択された資源、データを収集する頻度、および収集されるデータの特性に関する指示を提供する。
【０００７】
さらに別の実施形態において、生成されたスケジュールに従う少なくとも１つの資源に関する操作は第１の操作であり、生成されたスケジュールに従う第１の操作の実行は、ユーザ定義スケジュールに直接基づく少なくとも１つの資源を監視する第２の操作の実行と比較して、消費する処理時間が少ない。
【０００８】
さらなる実施形態において、複数の資源が複数のグループに含まれることがあり、ユーザ定義スケジュールは、複数のグループに関するデータの収集を示す。複数のグループに関するデータの収集を示すユーザ定義スケジュールが複数の資源に関するデータの収集において競合するかどうかに関して決定がなされる。競合は、生成されたスケジュールにおいて除去される。
【０００９】
さらなる実施形態において、ユーザ定義スケジュールにおける類似するが同一ではない要求の収集がグループ化される。類似する要求の収集は、生成されたスケジュールにおける単一のエンティティに結合される。
【００１０】
ある特定のさらなる実施形態において、ユーザ定義スケジュールが修正されたという指示が受け取られる。スケジュールは、修正されたユーザ定義スケジュールおよび他の未修正のユーザ定義スケジュールに基づいて再構築される。
【発明を実施するための最良の形態】
【００１１】
本発明の実施形態を、単なる例として、以下の図面に関連して説明する。
【００１２】
参照番号のように、一致パーツを最後まで表している。
【００１３】
以下の説明において、本明細書の一部を成し、いくつかの実施形態を例示する添付図面が参照される。他の実施形態を利用することができ、構造的および操作上の変更を成し得ることが理解される。
【００１４】
もしデータ収集スケジュールが、資源（または、資源のグループ）とは無関係に作成されれば、同じ資源に関するデータを監視または決定するために複数のスケジュールが作成され、競合が生じ得る。ある特定の実施形態において、スケジュールは、それらのスケジュールがデータを収集するグループと関連付けられ、実際に、監視されている各資源についてのデータ収集をいつ実際に実行するかを決定するためにマスタ・スケジュールが作成される。マスタ・スケジュールは、競合および重複を低減または排除することができる。
【００１５】
図１は、ある特定の実施形態による計算環境１００のブロック図を例示する。
【００１６】
少なくとも１つの計算プラットフォーム１０２が１つ以上の資源１０４ａ、１０４ｂ、．．．、１０４ｎに結合されており、ある特定の実施形態においては、計算プラットフォーム１０２はサーバを含み得る。図１は計算プラットフォーム１０２がサーバであることを示しているが、別の実施形態においては、計算プラットフォーム１０２は、パーソナル・コンピュータ、ワークステーション、メインフレーム、ミッドレンジ・コンピュータ、ネットワーク機器、パーム・トップ・コンピュータ、電話通信デバイス、ブレード・コンピュータ、ハンド・ヘルド・コンピュータ等の技術的に現在知られているものを含む任意の適切なコンピュータを含み得る。資源１０４ａ．．．１０４ｎは、プリンタ、スキャナ、ファックス装置、ディスク・ドライブ、ストレージ・デバイス、周辺デバイス、計算デバイス、ルータ等の技術的に現在知られているものを含む任意の適切な資源を含み得る。資源１０４ａ．．．１０４ｎは、ハードウェア資源に限定されず、リスト、待ち行列、スタック、データベース、および計算デバイス中の他のデータ構造のようなソフトウェア資源も含み得る。資源１０４ａ．．．１０４ｎへのサーバ１０２の結合は、直接的、またはストレージ・エリア・ネットワーク（ＳＡＮ）、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、インターネット、イントラネット等の技術的に知られている任意のネットワークを介することもできる。ある特定の実施形態において、監視される資源１０４ａのような、監視される資源は、単一の資源ではなく、資源のグループを表し得る。
【００１７】
様々なプロセスおよびタスクが、資源１０４ａ．．．１０４ｎに関するデータ収集操作を実行できる。代表的な実施形態において、資源に関するデータ収集操作を実行するプロセスおよびタスクは、ある特定の時間またはある特定の間隔で動作するようにスケジュール設定され得る。例えば、監視される資源１０４ａがプリンタである、ある特定の実施形態において、資源１０４ａにおいて最後に印刷されたページ数に関するデータを収集するために、タスクが午後３時にスケジュール設定され得る。
【００１８】
複数の資源１０４ａ．．．１０４ｎは、サーバ１０２により管理または監視され、ある特定の実施形態において、複数の資源１０４ａ．．．１０４ｎは、監視される資源１０４ａ．．．１０４ｎと呼ばれることがある。代表的なスケジュール特性１０６のようなスケジュール特性が、監視される資源１０４ａのような監視される資源と関連付けられ得る。他のスケジュール特性は、他の監視される資源と関連付けられ得る。スケジュール特性１０６のようなスケジュール特性は、１つ以上のユーザ作成スケジュール１０８ａ．．．１０８ｍおよび対応する要件１１０ａ．．．１１０ｍを含み得る。
【００１９】
例えば、代表的なユーザ作成スケジュールは、１つの資源に関してデータ収集が日に４回実行されるという要件を有し得る。
【００２０】
サーバ１０２は、統一スケジューラ１１２、複数のマスタ・スケジュール１１４ａ、１１４ｂ、．．．、１１４ｐ、および処理リスト１１６に対応するアプリケーションまたはデータ構造あるいはその両方を含み得る。統一スケジューラ１１２は、複数の監視される資源１０４ａ．．．１０４ｎについての複数のユーザ作成スケジュールおよび監視される資源１０４ａ．．．１０４ｎに関するスケジュール操作を処理する。マスタ・スケジュール１１４ａ．．．１１４ｐは各々、競合および余剰を除去することによってユーザ作成スケジュールから統一スケジューラ１１２により生成された監視される資源についてのスケジュールに対応する。例えば、マスタ・スケジュール１１４ａは、第１の資源についてのスケジュールを含むことができ、マスタ・スケジュール１１４ｂは、第２の資源についてのスケジュールを含み得る。
【００２１】
処理リスト１１６は、複数の資源１１８ａ、１１８ｂ、．．．１１８ｑおよび対応するスケジューリング特性１２０ａ、１２０ｂ、．．．１２０ｑを含むデータ構造であり、資源１１８ａ．．．１１８ｑは、監視される資源１０４ａ．．．１０４ｎから選択され得る。処理リスト１１６は、ユーザ作成スケジュールからマスタ・スケジュール１１４ａ．．．１１４ｐを生成するために、統一スケジューラ１１２により用いられる。
【００２２】
図１に例示されるある特定の実施形態において、統一スケジューラ１１２は、資源１０４ａ．．．１０４ｎについてのユーザ作成スケジュールを処理し、このユーザ作成スケジュールは、資源１０４ａ．．．１０４ｎに関する操作の競合または不必要な繰り返しを有することがある。ある特定の実施形態において、統一スケジューラ１１２は、資源に関する操作の競合および不必要な繰り返しを低減または除去する一方で、資源１０４ａ．．．１０４ｎに関する操作をスケジュール設定、すなわち、統一スケジューラ１１２は、ユーザ作成スケジュールにおける繰り返しおよび余剰を除去することにより、監視される資源１０４ａ．．．１０４ｎに関する操作をスケジュール設定する。
【００２３】
図２は、ある特定の実施形態による、計算環境１００において実施されるデータ構造を示すブロック図を例示する。
【００２４】
代表的な実施形態において、ユーザ作成スケジュール２００は、代表的な要件２０２ａ、２０２ｂを含むことができ、代表的な要件２０２ａは、資源Ａ２０４中の空き空間に関するデータの収集を日に４回要求し、代表的な要件２０２ｂは、資源Ａ２０４中の空き空間に関するデータの収集を日に２回要求する。例えば、２人の異なるユーザがユーザ作成スケジュール２００を生成したかもしれず、または単一のユーザが、２つの異なるタスクについてユーザ作成スケジュール２００を生成したかもしれない。
【００２５】
統一スケジューラ１１２は、代表的なユーザ作成スケジュール２００の要件２０２ａ、２０２ｂを処理し、資源Ａ２０４についいてのマスタ・スケジュール２０６を生成する。代表的なマスタ・スケジュール２０６は、午前１２時、午前６時、午後１２時、および午後６に資源Ａ中の空き空間に関するデータを収集するという指示２０８を含み得る。マスタ・スケジュール１０６中の指示２０８は、日に４回データを収集するという代表的な要件２０２ａを満たし、日に２回データを収集するという代表的な要件２０２ｂも満たす。
【００２６】
図２に例示されるある特定の実施形態により、ユーザは、重複および競合を低減または除去するスケジュールを作成することが可能になる。統一スケジューラ１１２は、ユーザ作成スケジュールに基づいて、資源についてのマスタ・スケジュールを生成する。統一スケジューラにより生成されたマスタ・スケジュールは、重複および競合を低減または除去し、ユーザ作成スケジュールの要求も満たし得る。
【００２７】
図３は、ある特定の実施形態による、データ収集スケジュールがどのように作成されるかを示す第１の流れ図を例示する。図３の流れ図に例示される操作は、統一スケジューラ１１２において、またはサーバ１０２上で実行される何か他のアプリケーションにおいて実施され得る。統一スケジューラ１１２により作成されたデータ収集スケジュールは、マスタ・スケジュール１１４ａ．．．１１４ｐに対応し得る。
【００２８】
制御は、ブロック３００において開始し、そこで、サーバ１０２上の統一スケジューラ１１２が、１つ以上の資源１０４ａ．．．１０４ｎまたは１人以上のユーザにより作成された１つ以上の資源のグループについてのスケジュールを受け取る。例えば、ある特定の実施形態において、ブロック３００において統一スケジューラ１１２により受け取られたスケジュールは、ユーザ作成スケジュール１０８ａ．．．１０８ｎを含み得る。
【００２９】
統一スケジューラ１１２は（ブロック３０２において）、それらのスケジュールおよびサーバ１０２のリポジトリにおいてそれらのスケジュールが走ると予期される資源を含むスケジュールの特性を格納する。例えば、ある特定の実施形態において、スケジュールは、管理された資源１０４ａ．．．１０４ｎ上で走り得る。加えて、統一スケジューラ１１２は（ブロック３０４において）、処理リスト１１６中のスケジュールに対応する資源のリストのコピーを格納する。
【００３０】
制御は、ブロック３０６に進み、そこで、統一スケジューラ１１２は、要求されたデータ収集または操作のタイプが処理リスト中の選択された資源について適切かどうかを決定する。例えば、最後に印刷されたページ数がプリンタについて要求されれば、その要求は適切であると決定されるのに対して、最後に印刷されたページ数がスキャナについて要求されれば、そのスキャナが印刷をサポートしなければ、その要求は不適切であると決定され得る。ブロック３０６において、要求されたデータ収集のタイプが適切であるという決定がなされれば、制御はブロック３０６に進み、そこで、処理リスト１１６中の全資源が処理されたかどうかについての決定がなされる。もしそうでなければ、制御は、要求されたデータ収集のタイプが処理リスト１１６の次の選択された資源について適切かどうかを決定するためにブロック３０６に戻る。
【００３１】
ブロック３０６において、統一スケジューラ１１２が、要求されたデータ収集のタイプが、選択された資源について不適切であると決定すれば、選択された資源は、処理リスト１１６から取り除かれる。例えば、ある特定の実施形態において、資源１１８ｂが処理リスト１１６から取り去られ得る。
【００３２】
ブロック３０８において、処理リスト２０８中の資源１１８ａ．．．１１８ｎのような全資源が処理されたという決定がなされれば、統一スケジューラ１１２は（ブロック３１０において）、処理リスト１１６上に資源が残っているかどうかを決定する。処理リスト上に残る資源は、資源と関連した適切なデータ収集要求を有する。
【００３３】
統一スケジューラ１１２が（ブロック３１０において）、処理リスト１１６上に資源が残っていると決定すれば、処理リスト１１６中に残っている各資源について、統一スケジューラ１１２は（ブロック３１２において）、資源についてのマスタ・スケジュールを構築または再構築する。例えば、統一スケジューラ１１２は、資源１０４ａのような資源についてのマスタ・スケジュール１１４ａを構築または再構築し得る。処理リスト１１６上に残る全資源についてマスタ・スケジュールがひとたび構築されると、統一スケジューラ１１２は（ブロック３１６において）、マスタ・スケジュールを作成するプロセスを終了する。
【００３４】
ブロック３１０において、統一スケジューラ１１２が、処理リスト上に残る資源は皆無であると決定すれば、統一スケジューラ１１２は（ブロック３１２において）、マスタ・スケジュールを作成するプロセスを終了する。
【００３５】
図３に例示されるある特定の実施形態は、統一スケジューラ１１２による、監視される資源１０４ａ．．．１０４ｎに対応するマスタ・スケジュール１１４ａ．．．１１４ｐの作成を示す。ある資源についてのマスタ・スケジュール１１４ａのようなマスタ・スケジュールは、ユーザ作成スケジュール１０８ａ．．．１０８ｍに基づいて作成され得る。ある特定の実施形態において、ある資源についてのマスタ・スケジュールが統一スケジューラ１１２により生成されている間に、エラー、重複、余剰等が除去される。
【００３６】
図４は、ある特定の実施形態による、マスタ・スケジュールを作成するための操作を例示する第２の流れ図を例示する。図４の流れ図において例示される操作は、統一スケジューラ１１２において、またはサーバ１０２上で実行される任意のアプリケーションにおいて実施され得る。
【００３７】
制御は、ブロック４００において開始し、そこで、統一スケジューラ１１２は、必要とされるデータ収集のタイプおよびデータ収集の頻度を決定するために、ユーザ作成スケジュール１０８ａ．．．１０８ｍのようなスケジュールのリストを処理する。例えば、ある特定の実施形態において、必要とされるデータ収集は、代表的なｐｉｎｇ、走査、またはカスタム・プロファイル操作による走査を含み得る。他の実施形態は、他のタイプのデータ収集操作を含み得る。
【００３８】
統一スケジューラ１１２は（ブロック４０２において）、重複するものをスケジュールのリストから取り除く。例えば、２つのスケジュールが両方とも資源Ｂに関するデータ収集を日に４回要求するのであれば、資源Ｂに関するデータを日に８回収集する代わりに、重複するものを取り除くために２つのスケジュールがマージされ、データが日に４回資源Ｂに関して収集されてもよい。
【００３９】
ある特定の実施形態において、統一スケジューラ１１２は（ブロック４０４において）、類似するが同一ではない要求の収集を作成し得る。例えば、任意のプロファイルを用いて日に２回実行されるデフォルトの走査要求である第１の走査要求は、ある特定のプロファイルを用いる走査要求である第２の走査要求を有する収集にグループ化され得る。
【００４０】
制御は、ブロック４０６に進み、そこで、統一スケジューラ１１２は、データ収集についての最も厳格な要件のみを保持することにより各収集を単一のエンティティに結合することにより収集を処理する。例えば、第１の走査要求および第２の走査要求は、特定のプロファイルで日に２回動作する１つの走査要求に結合され得る。ある特定の代わりの実施形態において、スケジュールおよび資源を処理するためのユーザ指定能力閾値も含まれ得る。
【００４１】
統一スケジューラ１１２は（ブロック４０８において）、ユーザにより要求されたデータ収集の結合の結果に基づき、資源についてのマスタ・スケジュールを作成する。
【００４２】
マスタ・スケジュールの作成に続いて、走らせるスケジュールのリストを統一スケジューラ１１２が構築する場合、統一スケジューラ１１２は、エンドユーザによって作成された個別のスケジュール１０８ａ．．．１０８ｍからではなく、マスタ・スケジュール１１４ａ．．．１１４ｐからスケジュールを構築する。ある特定の実施形態は、エンドユーザが、資源のグループに基づいてどんなタイプのデータ収集が必要であるかを指定できるようにし、サーバ１０２上の管理ソフトウェアを含む統一スケジューラ１１２が、資源１０４ａ．．．１０４ｎの余分な監視なしでデータを収集できるようにする。
【００４３】
万一ユーザが後に、スケジュール特性１０６のようなスケジュール特性をグループから削除すると決めれば、そのスケジュールを削除するために要求がサーバ１０２に送られる。統一スケジューラ１１２は、スケジュールがそれに対して走ると想定された各資源のスケジュール特性から、影響を受けたスケジュールを取り除く。統一スケジューラ１１２は、影響を受けたスケジュールの除去により影響された各資源についてマスタ・スケジュールを再構築する。
【００４４】
図５は、ある特定の実施形態による、監視される資源についてのスケジュールがどのように管理されるかを示す第３の流れ図を例示する。図５の流れ図に例示される操作は、統一スケジューラ１１２において、またはサーバ１０２上で実行される何か他のアプリケーションにおいて実施され得る。
【００４５】
制御は、ブロック５００において開始し、そこで、統一スケジューラ１１２は、複数の資源に関するデータを収集するために複数のユーザ定義スケジュールを受け取る。統一スケジューラ１１２は（ブロック５０２において）、少なくとも１つの資源に関する余分なデータ収集を除去するために複数のユーザ定義スケジュールの処理に基づいて、少なくとも１つの資源に関するデータ収集についてのスケジュールを生成する。
【００４６】
制御は、ブロック５０４に進み、そこで、統一スケジューラ１１２は、複数のグループに関するデータの収集を示すユーザ定義スケジュールが、複数の資源に関するデータの収集において競合を引き起こすかどうかを決定する。統一スケジューラ１１２は（ブロック５０６において）、生成されたスケジュール中の競合を除去する。
【００４７】
統一スケジューラ１１２は（ブロック５０８において）、ユーザ定義スケジュール中の、類似するが同一ではない要求の収集をグループ化する。加えて、統一スケジューラ１１２は（ブロック５１０において）、類似の要求の収集を、生成されたスケジュール中の単一のエンティティに結合し得る。
【００４８】
制御は、ブロック５１２に進み、そこで、統一スケジューラ１１２は、生成されたスケジュールに従って、少なくとも１つの資源上で操作を実行する。（ブロック５１４において）ユーザ定義スケジュールが修正されたという指示を受け取ると、統一スケジューラは（ブロック５１６において）、修正されたユーザ定義スケジュールおよび他の未修正のユーザ定義スケジュールに基づいてスケジュールを再構築する。
【００４９】
ある特定の実施形態は、複数の資源のグループ全体にわたる、場合によっては複数のソフトウェア製品全体にわたるデータの収集を可能にする。不必要な繰り返しなしで、そして競合なしでデータ収集が操作されることが保証される。エンドユーザは、個別の資源スケジュールの作成を回避し、複数の資源がグループ化され得るグループ・レベルにおいてどんな種類のデータがエンドユーザにより必要とされるかを指定できる。そのようなグループは、異種資源を含んだり、他のグループを含んだりし得る。ユーザにとっての有用性は向上され得る。
【００５０】
ある特定の実施形態は、データ収集における計算資源の無駄な使用を低減し、データをより信頼性高く収集するのに効果的である。ある特定の実施形態は、資源の複合グループが作成され、次に再利用されることも可能にする。データ収集用に１つのグループのタイプを有し、データに対するアクション用にもう１つのグループのタイプを有する必要は皆無である。
【００５１】
付加的な実施形態の詳細
説明された手法は、ソフトウェア、ファームウェア、マイクロコード、ハードウェアまたはそれらの任意の組み合わせを伴う方法、装置または製品として実施され得る。本明細書において用いられる用語「製品（ａｒｔｉｃｌｅ  ｏｆ  ｍａｎｕｆａｃｔｕｒｅ）」は、媒体中で実施されるコードまたはロジックを意味し、そのような媒体は、ハードウェア・ロジック［例えば、集積回路チップ、プログラマブル・ゲート・アレイ（ＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等］または磁気ストレージ媒体（例えば、ハード・ディスク・ドライブ、フレキシブル・ディスク、テープ等）、光ストレージ（ＣＤ−ＲＯＭ、光ディスク等）、揮発性および不揮発性メモリ・デバイス［例えば、電気的に消去可能なプログラマブル・リード・オンリー・メモリ（ＥＥＰＲＯＭ）、リード・オンリー・メモリ（ＲＯＭ）、プログラマブル・リード・オンリー・メモリ（ＰＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、ダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、フラッシュ、ファームウェア、プログラマブル・ロジック等］を含む。コンピュータ可読媒体中のコードは、プロセッサによりアクセスおよび実行される。コードまたはロジックが符号化される媒体は、空間または光ファイバ、導線等の伝送媒体を通って伝播する伝送信号も含み得る。コードまたはロジックが符号化される伝送信号はさらに、無線信号、衛星伝送、電波、赤外信号、Ｂｌｕｅｔｏｏｔｈ（Ｒ）等を含み得る。コードまたはロジックが符号化される伝送信号は、送信局によって送信され、受信局によって受信されることができ、伝送信号中の符号化されたコードまたはロジックは、受信および送信局またはデバイスにおいて復号され、ハードウェアまたはコンピュータ可読媒体中に格納され得る。加えて、「製品」は、コードが組み入れ、処理、および実行されるハードウェアおよびソフトウェア・コンポーネントの組み合わせを含み得る。当然、当業者は、実施形態の範囲を逸脱することなく多くの変更がなされ得ること、および製品が任意の情報坦持媒体を含み得ることを認めるであろう。例えば、製品は、機械によって実行された際に実施される操作という結果になる命令をその中に格納したストレージ媒体を含む。
【００５２】
ある特定の実施形態は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態またはハードウェア要素およびソフトウェア要素双方を含む実施形態の形を取ることができる。好ましい実施形態において、本発明はソフトウェア中で実施され、このソフトウェアは、ファームウェア、常駐ソフトウェア、マイクロコード等を含むがそれらに限定されない。
【００５３】
さらに、ある特定の実施形態は、コンピュータまたは任意の命令実行システムによる使用またはそれらに関連して使用するためのプログラム・コードを提供するコンピュータ利用可能なまたはコンピュータ可読媒体からアクセス可能なコンピュータ・プログラム製品の形を取ることができる。この説明の目的のため、コンピュータ利用可能またはコンピュータ可読媒体は、命令実行システム、装置、またはデバイスによる使用またはそれらに関連して使用するためのプログラムを含有、格納、通信、伝搬、または搬送することができる任意の装置であり得る。媒体は、電子的、磁気的、光学的、電磁気的、赤外、半導体システム（または装置もしくはデバイス）あるいは伝搬媒体であり得る。コンピュータ可読媒体の例としては、半導体またはソリッド・ステート・メモリ、磁気テープ、リムーバブル・コンピュータ・ディスケット、ランダム・アクセス・メモリ（ＲＡＭ）、リード・オンリー・メモリ（ＲＯＭ）、剛性磁気ディスクおよび光ディスクが含まれる。光ディスクの現在の例としては、コンパクト・ディスク−リード・オンリー・メモリ（ＣＤ−ＲＯＭ）、コンパクト・ディスク−リード／ライト（ＣＤ−Ｒ／Ｗ）およびＤＶＤが含まれる。
【００５４】
用語「ある特定の実施形態（ｃｅｒｔａｉｎ  ｅｍｂｏｄｉｍｅｎｔ）」、「ある実施形態（ａｎ  ｅｍｂｏｄｉｍｅｎｔ）」、「実施形態（ｅｍｂｏｄｉｍｅｎｔ）」、「複数の実施形態（ｅｍｂｏｄｉｍｅｎｔｓ）」、「その実施形態（ｔｈｅ  ｅｍｂｏｄｉｍｅｎｔ）」、「それらの実施形態（ｔｈｅ  ｅｍｂｏｄｉｍｅｎｔｓ）」、「１つ以上の実施形態（ｏｎｅ  ｏｒ  ｍｏｒｅ  ｅｍｂｏｄｉｍｅｎｔｓ）」、「いくつかの実施形態（ｓｏｍｅ  ｅｍｂｏｄｉｍｅｎｔｓ）」、および「１つの実施形態（ｏｎｅ  ｅｍｂｏｄｉｍｅｎｔ）」は、特に明記してあるもの以外は、１つ以上の（ただし、すべてではない）実施形態を意味する。用語「含む（ｉｎｃｌｕｄｉｎｇ）」、「具備する（ｃｏｍｐｒｉｓｉｎｇ）」、「有する（ｈａｖｉｎｇ）」およびそれらの変型は、特に明記してあるもの以外は、「〜を含むが、それに限定されない（ｉｎｃｌｕｄｉｎｇ  ｂｕｔ  ｎｏｔ  ｌｉｍｉｔｅｄ  ｔｏ）」を意味する。列挙されるアイテムのリストは、特に明記してあるもの以外は、それらのアイテムのいずれかまたはすべてが相互に排他的であることを意味するものではない。用語「ａ」、「ａｎ」および「ｔｈｅ」は、特に明記してあるもの以外は、「１つ以上の（ｏｎｅ  ｏｒ  ｍｏｒｅ）」を意味する。
【００５５】
互いに通信状態にあるデバイスは、特に明記してあるもの以外は、互いに連続的通信状態にある必要はない。加えて、互いに通信状態にあるデバイスは、１つ以上の仲介物を介して直接的または間接的に通信状態にある。加えて、互いに通信状態にあるいくつかの構成要素を有する実施形態の説明は、すべてのそのような構成要素が必要とされることを意味するものではない。それどころか、広範な考え得る実施形態を説明するために、各種の任意の構成要素が説明されている。
【００５６】
さらに、プロセス・ステップ、方法ステップ、アルゴリズム等が逐次的順序で説明されることがあるが、そのようなプロセス、方法およびアルゴリズムは、交互に動作するように構成され得る。言い換えれば、説明され得るステップのどのようなシーケンスまたは順序も、ステップがその順序で実行されるという要件を必ずしも示すわけではない。本明細書において説明されるプロセスのステップは、実際的などのような順序ででも実行され得る。さらに、いくつかのステップが、同時に、平行して、または共に実行され得る。
【００５７】
本明細書中で単一のデバイスまたは製品が説明される場合、２つ以上のデバイス／製品が（それらが協働するかどうかにかかわらず）、単一のデバイス／製品の代わりに用いられ得ることが明白である。同様に、本明細書中で２つ以上のデバイス／製品が説明される場合（それらが協働するかどうかにかかわらず）、２つ以上のデバイスまたは製品の代わりに単一のデバイス／製品が用いられ得ることは明白である。デバイスの機能性または特徴あるいはその両方は、そのような機能性／特徴を有すると明示的に記載されない１つ以上の他のデバイスにより代わりに具体化され得る。従って、他の実施形態は、デバイス自体を含む必要がない。
【００５８】
図６は、ある特定の実施形態が実行され得るシステム６００のブロック図を例示する。ある特定の実施形態において、システム６００に従って、サーバ１０２のような図１に示される計算プラットフォームが実行され得る。システム６００は、ある特定の実施形態においてプロセッサ６０４を含み得る回路系６０２を含み得る。システム６００は、メモリ６０６（例えば、揮発性メモリ・デバイス）、およびストレージ６０８も含み得る。システム６００のある特定の要素は、計算プラットフォーム１０２中に見られることもあるし、見られないこともある。ストレージ６０８としては、不揮発性メモリ・デバイス（例えば、ＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、フラッシュ、ファームウェア、プログラマブル・ロジック等）、磁気ディスク・ドライブ、光ディスク・ドライブ、テープ・ドライブ等が含まれ得る。ストレージ６０８は、内部ストレージ・デバイス、付属ストレージ・デバイスまたはネットワークアクセス可能ストレージ・デバイスあるいはそれら全部を含み得る。システム６００は、メモリ６０６中にロードされて、プロセッサ６０４または回路系６０２により実行され得るコード６１２を含むプログラム・ロジック６１０を含み得る。ある特定の実施形態において、コード６１２を含むプログラム・ロジック６１０は、ストレージ６０８中に格納され得る。ある特定の他の実施形態において、プログラム・ロジック６１０は、回路系６０２において実施され得る。従って、図６はプログラム・ロジック６１０を他の要素から別個に示しているが、プログラム・ロジック６１０は、メモリ６０６または回路系６０２あるいはその両方において実施され得る。
【００５９】
ある特定の実施形態は、人またはコンピュータ可読コードを計算システムに組み込む自動処理による計算命令の導入のための方法に向けられることがあり、その場合、コードは計算システムと共に、説明された実施形態の操作を実行することが可能にされる。
【００６０】
図３、４、および５に例示された操作の少なくともいくつかは、逐次的だけでなく平行しても実行され得る。代わりの実施形態において、操作のいくつかは、修正または取り除かれて、異なる順序で実行され得る。
【００６１】
さらに、ソフトウェアおよびハードウェア構成要素の多くは、例示目的のために、別個のモジュールにおいて説明されている。そのような構成要素は、より少ない構成要素に組み込まれ、またはより多くの構成要素に分割され得る。加えて、特定の構成要素により実行されと説明されたある特定の操作は、他の構成要素により実行され得る。
【００６２】
図１〜６において示されまたは言及されたデータ構造および構成要素は、特定タイプの情報を有すると説明される。代わりの実施形態において、データ構造および構成要素は、異なるように構造化され、図において示されまたは言及されたものよりも少ない、多いあるいは異なるフィールドまたは異なる機能を有し得る。
【００６３】
従って、実施形態の上記の説明は、例示および説明の目的のために提示されている。網羅的であることまたは実施形態を開示された厳密な形態に限定することは意図されていない。上記の教示に照らして多くの変更および変型が可能である。
【図面の簡単な説明】
【００６４】
【図１】ある特定の実施形態による計算環境のブロック図を例示する。
【図２】ある特定の実施形態による、資源についてのマスタ・スケジュールが、複数のユーザ定義スケジュールからどのように生成されるかを示すブロック図を例示する。
【図３】ある特定の実施形態による、データ収集スケジュールがどのように作成されるかを示す第１の流れ図を例示する。
【図４】ある特定の実施形態による、マスタ・スケジュールがどのように構築されるかを示す第２の流れ図を例示する。
【図５】ある特定の実施形態による、監視される資源についてのスケジュールがどのように管理されるかを示す第３の流れ図を例示する。
【図６】ある特定の実施形態による、ある特定の実施形態が実施されるシステムを例示する。
【図１】
2009500704.tif 000003
【図２】
2009500704.tif 000004
【図３】
2009500704.tif 000005
【図４】
2009500704.tif 000006
【図５】
2009500704.tif 000007
【図６】
2009500704.tif 000008
【国際調査報告】
2009500704.tif 000009
2009500704.tif 000010
2009500704.tif 000011