(57)【要約】【課題】プログラムのある区間でＣＰＵの割り当てが行われないと、システムの運用に影響を及ぼす場合、ＣＰＵリソースの利用割合のＣＰＵ使用時間を超えても、ＣＰＵを割り当てる。【解決手段】各ワークロード毎に最大ＣＰＵ使用時間を設定し、ＣＰＵ使用停止の禁止が要求されているプログラムに係るプロセスのＣＰＵ使用停止禁止フラグをオンにし、ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオフである場合に、当該実行中のプロセスからＣＰＵを解放し、ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオンである場合に、当該実行中のプロセスからＣＰＵを解放することを禁止する。【選択図】図１
2008158852.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵのプログラムによる利用時間を管理するＣＰＵリソース管理方法において、
各ワークロード毎に最大ＣＰＵ使用時間を設定するステップと、
ＣＰＵ使用停止の禁止が要求されているプログラムに係るプロセスのＣＰＵ使用停止禁止フラグをオンにするステップと、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオフである場合に、当該実行中のプロセスからＣＰＵを解放するステップと、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオンである場合に、当該実行中のプロセスからＣＰＵを解放することを禁止するステップと、
を備えることを特徴とするＣＰＵリソース管理方法。
【請求項２】
請求項１に記載のＣＰＵリソース管理方法において、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行可能キューに存在するプロセスであって、当該ワークロードに属するプロセスのＣＰＵ使用停止フラグをオンに設定するステップと、
ＣＰＵがアイドル状態になった時に、実行可能キューに存在するプロセスであって、前記ＣＰＵ使用停止禁止フラグがオンになっているプロセス又は前記ＣＰＵ使用停止フラグがオフであるプロセスにＣＰＵを割り当てるステップと、
を更に備えることを特徴とするＣＰＵリソース管理方法。
【請求項３】
ＣＰＵのプログラムによる利用時間を管理するＣＰＵリソース管理装置において、
各ワークロード毎に最大ＣＰＵ使用時間を設定する手段と、
ＣＰＵ使用停止の禁止が要求されているプログラムに係るプロセスのＣＰＵ使用停止禁止フラグをオンにする手段と、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオフである場合に、当該実行中のプロセスからＣＰＵを解放する手段と、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオンである場合に、当該実行中のプロセスからＣＰＵを解放することを禁止する手段と、
を備えることを特徴とするＣＰＵリソース管理装置。
【請求項４】
請求項３に記載のＣＰＵリソース管理装置において、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行可能キューに存在するプロセスであって、当該ワークロードに属するプロセスのＣＰＵ使用停止フラグをオンに設定する手段と、
ＣＰＵがアイドル状態になった時に、実行可能キューに存在するプロセスであって、前記ＣＰＵ使用停止禁止フラグがオンになっているプロセス又は前記ＣＰＵ使用停止フラグがオフであるプロセスにＣＰＵを割り当てる手段と、
を更に備えることを特徴とするＣＰＵリソース管理装置。
【請求項５】
ＣＰＵのプログラムによる利用時間を管理するＣＰＵリソース管理方法をコンピュータに行わせるためのプログラムにおいて、
前記ＣＰＵリソース管理方法は、
各ワークロード毎に最大ＣＰＵ使用時間を設定するステップと、
ＣＰＵ使用停止の禁止が要求されているプログラムに係るプロセスのＣＰＵ使用停止禁止フラグをオンにするステップと、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオフである場合に、当該実行中のプロセスからＣＰＵを解放するステップと、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオンである場合に、当該実行中のプロセスからＣＰＵを解放することを禁止するステップと、
を備えることを特徴とするプログラム。
【請求項６】
請求項５に記載のプログラムにおいて、
前記ＣＰＵリソース管理方法は、
ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行可能キューに存在するプロセスであって、当該ワークロードに属するプロセスのＣＰＵ使用停止フラグをオンに設定するステップと、
ＣＰＵがアイドル状態になった時に、実行可能キューに存在するプロセスであって、前記ＣＰＵ使用停止禁止フラグがオンになっているプロセス又は前記ＣＰＵ使用停止フラグがオフであるプロセスにＣＰＵを割り当てるステップと、
を更に備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵのプログラムによる利用時間を管理するＣＰＵリソース管理方法、その装置及びそのプログラムに関する。
【背景技術】
【０００２】
従来のＣＰＵリソース管理装置の一例が、特許文献１に記載されている。図８に示すように、この従来のＣＰＵリソース管理方法は、中央処理装置３０と、主記憶装置４０とから構成されている。
【０００３】
中央処理装置３０は、ＣＰＵリソース配分初期化手段３１と、プロセスＣＰＵ時間監視手段３２と、ＣＰＵ使用停止手段３３と、プロセスＣＰＵ解放手段３４と、プロセス選択手段３５と、プロセスＣＰＵ割当手段３６とを含む。
【０００４】
主記憶装置４０は、ワークロード管理表４１と、実行可能キュー４２とを含む。
【０００５】
このような構成を有する従来のＣＰＵリソース管理装置はつぎのように動作する。
【０００６】
プロセスＣＰＵ時間監視手段３２は、プロセスのＣＰＵ使用時間を監視して、ワークロード管理表４１に格納された予め決められたＣＰＵリソースの利用割合に従って、ＣＰＵ使用停止手段３３によって、ＣＰＵリソースの利用割合のＣＰＵ使用時間を使用した場合、そのワークロードにＣＰＵを割り当てないことによって、ＣＰＵリソースの割り当てを調整する。
【特許文献１】特開平０６−０２８３２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
従って、プログラムのある区間でＣＰＵの割り当てが行われないと、システムの運用に影響を及ぼす場合でも、ＣＰＵが割り当てられないため、システムの運用に影響を及ぼす。
【０００８】
そこで本発明は、プログラムのある区間でＣＰＵの割り当てが行われないと、システムの運用に影響を及ぼす場合、ＣＰＵリソースの利用割合のＣＰＵ使用時間を超えても、ＣＰＵを割り当てることを可能とするＣＰＵリソース管理方法、その装置及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明によれば、ＣＰＵのプログラムによる利用時間を管理するＣＰＵリソース管理方法において、各ワークロード毎に最大ＣＰＵ使用時間を設定するステップと、ＣＰＵ使用停止の禁止が要求されているプログラムに係るプロセスのＣＰＵ使用停止禁止フラグをオンにするステップと、ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオフである場合に、当該実行中のプロセスからＣＰＵを解放するステップと、ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行中プロセスのＣＰＵ使用停止禁止フラグがオンである場合に、当該実行中のプロセスからＣＰＵを解放することを禁止するステップと、を備えることを特徴とするＣＰＵリソース管理方法が提供される。
【００１０】
上記のＣＰＵリソース管理方法において、ＣＰＵ利用時間初期化後の当該ワークロードによるＣＰＵ使用時間が前記最大ＣＰＵ使用時間以上となった時に、実行可能キューに存在するプロセスであって、当該ワークロードに属するプロセスのＣＰＵ使用停止フラグをオンに設定するステップと、ＣＰＵがアイドル状態になった時に、実行可能キューに存在するプロセスであって、前記ＣＰＵ使用停止禁止フラグがオンになっているプロセス又は前記ＣＰＵ使用停止フラグがオフであるプロセスにＣＰＵを割り当てるステップと、を更に備えるようにしてもよい。
【発明の効果】
【００１１】
本発明の効果は、プログラムのある区間でＣＰＵの割り当てが行われないと、システムの運用に影響を及ぼす場合、ＣＰＵリソースの利用割合のＣＰＵ使用時間を超えても、ＣＰＵを割り当てることができることにある。
【００１２】
その理由は、プログラムのある区間でＣＰＵの割り当てが行われないと、システムの運用に影響を及ぼす場合、プログラムがＣＰＵ使用停止禁止区間を指定するためである。
【発明を実施するための最良の形態】
【００１３】
以下、図面を参照して本発明を実施するための最良の形態について詳細に説明する。
【００１４】
予め決められたＣＰＵリソースの利用割合に従って、各ワークロードで使用するＣＰＵリソースの配分を行うＣＰＵリソース管理において、プログラムのある区間でＣＰＵの割り当てが行われないと、システムの運用に影響を及ぼす場合、プログラムがＣＰＵ使用停止禁止区間を指定することによって、ＣＰＵリソースの利用割合のＣＰＵ使用時間を超えても、ＣＰＵを割り当てることができる。
【００１５】
次に、本発明の実施形態の構成について図面を参照して詳細に説明する。
【００１６】
図１を参照すると、本発明の第１の実施形態のコンピュータは、中央処理装置１０と、主記憶装置２０とを備える。
【００１７】
中央処理装置１０は、ＣＰＵリソース配分初期化手段１１と、ＣＰＵ使用停止禁止手段１２と、プロセスＣＰＵ時間監視手段１３と、ＣＰＵ使用停止手段１４と、プロセスＣＰＵ解放手段１５と、プロセス選択手段１６と、プロセスＣＰＵ割当手段１７とを含む。
【００１８】
主記憶装置２０は、ワークロード管理表２１と、実行可能キュー２２とを含む。
【００１９】
図２を参照すると、ワークロード管理表２１は、システム管理者が指定したＣＰＵリソースの利用割合を格納したＣＰＵリソース配分比率２１１と、システム管理者が指定したＣＰＵリソースの利用割合に従って一定インターバル時間内で使用可能なＣＰＵ時間を格納する最大ＣＰＵ使用時間２１２と、各ワークロードに属するプロセスがＣＰＵを使用した時間の総和を格納したＣＰＵ使用時間２１３とを有する。
【００２０】
図３を参照すると、実行可能キュー２２は、プロセスが属するワークロードを格納した所属ワークロード２２１と、プロセスがＣＰＵ使用停止であることを示すＣＰＵ使用停止フラグ２２２と、プロセスがＣＰＵ使用停止禁止であることを示すＣＰＵ使用停止禁止フラグ２２３とを有する。
【００２１】
これらの手段はそれぞれ概略つぎのように動作する。
【００２２】
ＣＰＵリソース配分初期化手段１１は、一定のインターバル時間で呼び出されて、ワークロード管理表２１のＣＰＵ使用時間２１３、および、実行可能キュー２２のＣＰＵ使用停止フラグ２２２を初期化する。
【００２３】
ＣＰＵ使用停止禁止手段１２は、プログラムから呼び出されて、プログラムの指示に従い、ＣＰＵ使用停止禁止フラグ２２３を設定する。
【００２４】
プロセスＣＰＵ時間監視手段１３は、プロセスのＣＰＵ使用時間を取得して、プロセスが属するワークロードのＣＰＵ使用時間２１３に加算する。このとき、ＣＰＵ使用時間２１３が最大ＣＰＵ使用時間２１２を超えると、ＣＰＵ使用停止設定手段１４を呼び出す。
【００２５】
ＣＰＵ使用停止手段１４は、ＣＰＵ使用停止となったワークロードに属するプロセスについて、ＣＰＵ使用停止フラグ２２２をｏｎに設定して、ＣＰＵ使用停止となったワークロードに属する実行中のプロセスがＣＰＵ使用停止禁止フラグ２２３ｏｆｆの場合に、プロセスＣＰＵ解放手段１５を呼び出す。
【００２６】
プロセスＣＰＵ解放手段１５は、ＣＰＵ使用停止手段１４でＣＰＵ使用停止と選択された実行中のプロセスからＣＰＵを解放する。
【００２７】
プロセス選択手段１６は、ＣＰＵがアイドル状態となったときに呼び出されて、実行可能キュー２２からＣＰＵ使用停止禁止フラグ２２３がｏｎ、または、ＣＰＵ使用停止フラグ２２２がｏｆｆに設定されているプロセスを選択して、プロセスＣＰＵ割当手段１７を呼び出す。
【００２８】
プロセスＣＰＵ割当手段１７は、プロセス選択手段１６で選択されたプロセスにＣＰＵを割り当てる。
【００２９】
次に、図４、図５、図６、図７のフローチャートを参照して本発明の実施形態の動作について詳細に説明する。
【００３０】
まず、一定のインターバル時間で、ＣＰＵリソース配分初期化手段１１が呼び出されて、ワークロード管理表２１にある全ワークロードのＣＰＵ使用時間２１３を初期化して（図４のステップＳ１０１、Ｓ１０２）、実行可能キュー２２にある全プロセスのＣＰＵ使用停止フラグ２２２をｏｆｆに初期化する（ステップＳ１０３、Ｓ１０４）。
【００３１】
なお、ステップＳ１０１、Ｓ１０２のループは、全てのワークロードについて繰り返されるループであり、ステップＳ１０３、Ｓ１０４のループは、全ての実行可能キューに存在するプロセスについて繰り返されるループである。
【００３２】
次に、プログラムのある区間でＣＰＵの割り当てが行われないと、システムの運用に影響を及ぼす場合、そのプログラムはＣＰＵ使用停止禁止区間の開始と終了において、ＣＰＵ使用停止禁止手段１２を呼び出して、実行可能キュー２２にある当該プログラムが動作するプロセスを検索して（図５のステップＳ２０１、Ｓ２０２）、ＣＰＵ使用停止禁止区間の開始時には当該プロセスのＣＰＵ使用停止禁止フラグ２２３をｏｎに、ＣＰＵ使用停止禁止区間の終了時には当該プロセスのＣＰＵ使用停止禁止フラグ２２３をｏｆｆに設定する（ステップＳ２０３）。
【００３３】
すなわち、或るプログラムの或るプロセスでＣＰＵ使用停止禁止をしたいのであれば、そのプロセスが実行可能キューにあれば、ＣＰＵ使用停止禁止フラグをｏｎに設定し、あるプログラムの或る箇所から、ＣＰＵ使用停止禁止を解除したいのであれば、その箇所を含むプロセスが実行可能キューにあれば、ＣＰＵ使用停止禁止フラグをｏｆｆに設定する。
【００３４】
さらに、プロセスＣＰＵ時間監視手段１３で、実行中のプロセスの所属ワークロード２２１に該当するＣＰＵ使用時間２１３をカウントアップする（図６のステップＳ３０１）。当該ワークロードのＣＰＵ使用時間２１３が最大ＣＰＵ使用時間２１２以上となった場合（ステップＳ３０２でＹＥＳ）、当該ワークロードに属する全プロセスのＣＰＵ使用停止フラグ２２２をｏｎに設定する(ステップＳ３０３でＹＥＳ、Ｓ３０４でＹＥＳ、Ｓ３０５)。
【００３５】
その後（ステップＳ３０３、Ｓ３０４、Ｓ３０５のループを抜けた後）、実行中のプロセスのＣＰＵ使用停止禁止フラグ２２３がｏｆｆの場合（ステップＳ３０６でＹＥＳ）、プロセスＣＰＵ解放手段１５が呼び出されて、当該プロセスからＣＰＵを解放する（ステップＳ３０７）。
【００３６】
一方、実行中のプロセスのＣＰＵ使用停止禁止フラグ２２３がｏｎの場合（ステップＳ３０６でＮＯ）、プロセスＣＰＵ解放手段１５は呼び出されず、当該プロセスの実行は継続される。
【００３７】
図７を参照すると、最後に、ＣＰＵがアイドル状態となったとき、プロセス選択手段１６が呼び出されて、実行可能キュー２２からＣＰＵ使用停止禁止フラグ２２３がｏｎ、または、ＣＰＵ使用停止フラグ２２２がｏｆｆに設定されているプロセスを選択して（ステップＳ４０１、Ｓ４０２、Ｓ４０３）、プロセスＣＰＵ割当手段１７が呼び出されて、当該プロセスにＣＰＵを割り当てる（ステップＳ４０４）。
【００３８】
本発明の実施形態では、プログラムのある区間でＣＰＵの割り当てが行われないと、システムの運用に影響を及ぼす場合、プログラムがＣＰＵ使用停止禁止区間を指定することによって、ＣＰＵリソースの利用割合のＣＰＵ使用時間を超えても、ＣＰＵを割り当てることができる。
【産業上の利用可能性】
【００３９】
本発明によれば、予め決められたＣＰＵリソースの利用割合に従って、各ワークロードで使用するＣＰＵリソースの配分を行うＣＰＵリソース管理といった用途に適用できる。
【図面の簡単な説明】
【００４０】
【図１】本発明の実施形態によるコンピュータの構成を示すブロック図である。
【図２】図１に示すワークロード管理表の構成例を示す図である。
【図３】図１に示す実行可能キューの構成例を示す図である。
【図４】本発明の実施形態によるＣＰＵリソース配分初期化処理を示すフローチャートである。
【図５】本発明の実施形態によるＣＰＵ使用停止禁止フラグ設定処理を示すフローチャートである。
【図６】本発明の実施形態によるプロセスＣＰＵ時間監視処理を示すフローチャートである。
【図７】本発明の実施形態によるプロセスＣＰＵ割当処理を示す図である。
【図８】従来例によるコンピュータの構成を示すブロック図である。
【符号の説明】
【００４１】
１０  中央処理装置
１１  ＣＰＵリソース配分初期化手段
１２  ＣＰＵ使用停止禁止手段
１３  プロセスＣＰＵ時間監視手段
１４  ＣＰＵ使用停止手段
１５  プロセスＣＰＵ解放手段
１６  プロセス選択手段
１７  プロセスＣＰＵ割当手段
２０  主記憶装置
２１  ワークロード管理表
２２  実行可能キュー
【図１】
2008158852.tif 000003
【図２】
2008158852.tif 000004
【図３】
2008158852.tif 000005
【図４】
2008158852.tif 000006
【図５】
2008158852.tif 000007
【図６】
2008158852.tif 000008
【図７】
2008158852.tif 000009
【図８】
2008158852.tif 000010