(57)【要約】優先制御されたマルチプロセス計算システムにおける優先順位に依存する計算時間配分をもとめるための方法において、以下のステップ、すなわち、予め設定された計算時間及び予め設定された優先順位を有する別個の測定プロセスを発生し、予め設定された測定期間の間に測定プロセスを繰り返し実行し、測定期間内の測定プロセスの実行回数をもとめ、測定期間内の測定プロセスの実行回数及び測定プロセスの予め設定された計算時間に依存して優先順位に依存する計算時間配分を決定するステップを有する。
2005524904.tif 000002
【特許請求の範囲】
【請求項１】
優先制御されたマルチプロセス計算システムにおける優先順位に依存する計算時間配分をもとめるための方法において、
以下のステップ、すなわち、
ａ）予め設定された計算時間（ＴＲＥＣＨ）及び予め設定された優先順位（ＰＲＩＯＭＥＳＳ）を有する別個の測定プロセス（２）を発生し、該測定プロセス（２）の優先順位は自由に選択可能であり、
ｂ）予め設定された測定期間（ＴＭＥＳＳ）の間に前記測定プロセス（２）を繰り返し実行し、
ｃ）前記測定期間（ＴＭＥＳＳ）内の前記測定プロセス（２）の実行回数（ｉ）をもとめ、
ｄ）前記測定期間（ＴＭＥＳＳ）の間の前記測定プロセス（２）の前記実行回数（ｉ）及び前記測定プロセス（２）の前記予め設定された計算時間（ＴＲＥＣＨ）に依存して優先順位に依存する計算時間配分を決定する
ステップを有する、優先制御されたマルチプロセス計算システムにおける優先順位に依存する計算時間配分をもとめるための方法。
【請求項２】
測定期間（ＴＭＥＳＳ）の間に、測定プロセス（２）の優先順位よりも低い優先順位を有する少なくとも１つのプロセスが前記測定プロセス（２）によって置き換えられる又はストップされることを特徴とする、請求項１記載の方法。
【請求項３】
測定期間（ＴＭＥＳＳ）の間に、測定プロセス（２）の優先順位よりも低い優先順位を有する全てのプロセスが前記測定プロセス（２）によって置き換えられる又はストップされることを特徴とする、請求項１及び／又は２記載の方法。
【請求項４】
測定期間（ＴＭＥＳＳ）の間に予め設定された優先順位を有するプロセスに対して使用可能な計算時間をもとめるために、前記測定期間（ＴＭＥＳＳ）の間の測定プロセス（２）の繰り返しの回数（ｉ）が前記測定プロセス（２）の予め設定された計算時間（ＴＲＥＣＨ）によって乗算されることを特徴とする、請求項１〜３のうちの少なくとも１項記載の方法。
【請求項５】
測定期間（ＴＭＥＳＳ）は測定プロセス（２）の計算時間（ＴＲＥＣＨ）よりもはるかに大きいことを特徴とする、請求項１〜４のうちの少なくとも１項記載の方法。
【請求項６】
予め設定された測定インターバル（ＴＩＮＴ）を有する少なくとも１回の繰り返しを特徴とする、請求項１〜５のうちの少なくとも１項記載の方法。
【請求項７】
測定インターバル（ＴＩＮＴ）は測定期間（ＴＭＥＳＳ）よりもはるかに大きいことを特徴とする、請求項６記載の方法。
【請求項８】
測定インターバル（ＴＩＮＴ）及び／又は測定プロセス（２）の計算時間（ＴＲＥＣＨ）及び／又は測定期間（ＴＭＥＳＳ）は変化することを特徴とする、請求項１〜９のうちの少なくとも１項記載の方法。
【請求項９】
マルチプロセス計算システムの計算負荷（Ｂ）がもとめられ、測定インターバル（ＴＩＮＴ）及び／又は測定プロセス（２）の計算時間（ＴＲＥＣＨ）及び／又は測定期間（ＴＭＥＳＳ）は前記計算負荷（Ｂ）に依存して適合されることを特徴とする、請求項８記載の方法。
【請求項１０】
スタティックな又はダイナミックなプロセス管理を特徴とする、請求項１〜９のうちの少なくとも１項記載の方法。
【請求項１１】
プリエンプティブ又はノンプリエンプティブ又は混合プリエンプティブプロセス管理を特徴とする、請求項１〜１０のうちの少なくとも１項記載の方法。
【請求項１２】
プロセス管理は各プロセスに固定優先順位を割り当てることを特徴とする、請求項１〜１１のうちの少なくとも１項記載の方法。
【請求項１３】
測定プロセス（２）の計算時間（ＴＲＥＣＨ）は前記測定プロセス（２）の発生の前に及び／又は活性化の前にもとめられることを特徴とする、請求項１〜１２のうちの少なくとも１項記載の方法。
【請求項１４】
測定プロセス（２）の計算時間（ＴＲＥＣＨ）は前記測定プロセス（２）の実行中にもとめられることを特徴とする、請求項１〜１２のうちの少なくとも１項記載の方法。
【請求項１５】
測定プロセス（２）の計算時間（ＴＲＥＣＨ）は測定期間（ＴＭＥＳＳ）の終了後にかつ優先順位に依存する計算時間配分の決定前にもとめられることを特徴とする、請求項１〜１２のうちの少なくとも１項記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、請求項１記載の優先制御されたマルチプロセス計算システムにおける優先順位に依存する計算時間配分をもとめるための方法に関する。
【０００２】
マルチプロセス計算システムはユーザにとって一見すると同時に実行される異なる機能を有する複数のプロセスを管理する。個々のプロセスには、この場合、それぞれ優先順位が割り当てられており、この優先順位はプロセス管理による使用可能な計算時間の配分を決定する。プロセス管理による計算時間配分はこの場合いわゆるスケジューリング法によって行われ、要求と境界条件に依存して例えばプリエンプティブ又はノンプリエンプティブスケジューリング法ならびにスタティック又はダイナミックスケジューリング法が使用されうる。ノンプリエンプティブプロセス管理の場合には、例えばそれぞれプロセスの終了後に最も高い優先順位を有するプロセスがスタートされる。
【０００３】
このようなマルチプロセス計算システムでは優先順位に依存する計算時間配分を決定することが望ましい。
【０００４】
これは一方では予め設定された優先順位を有するプロセスがどの程度の計算時間を消費するのかをもとめるために重要である。例えば高い優先順位を有する多数のプロセスを管理する場合、低い優先順位を有するプロセスは相対的にほんのわずかな計算時間しか得られない。よって、予め設定された優先順位を有するプロセスに使用可能な計算時間はマルチプロセス計算システムの動作中には他のプロセスの優先順位に依存して変化する。
【０００５】
他方で計算時間配分の優先順位に依存する決定は、予め設定された優先順位閾値より上の優先順位を有するプロセスによってどの程度の計算時間が消費されるかをもとめるために望ましい。
【０００６】
計算時間配分の決定のために、予め設定された優先順位及び既知の計算時間を有するバックグラウンドプロセスを考察することが公知であり、これらのバックグラウンドプロセスは、例えばシステムアイドルループ（英語では、Idle Loop）のように、マルチプロセス計算システムにおいて継続的に繰り返される。この場合、測定期間の間にバックグラウンドプロセスの繰り返し回数が測定される。次いで、バックグラウンドプロセスの既知の計算時間及び測定期間の間のバックグラウンドプロセスの繰り返し回数から、測定期間の間のバックグラウンドプロセスに全体として消費される計算時間が決定される。これから、より高い優先順位を有する他のプロセスによって測定期間の間に消費される計算時間が得られる。
【０００７】
しかし、この公知の方法の欠点は、一方でこの方法が予め設定された一定の計算時間を有しかつ継続的に繰り返されるバックグランドプロセスによってのみ使用可能であるという事実である。これに対して、測定において考慮されるバックグラウンドプロセスが可変的な計算時間を必要とする場合、この方法は測定エラーを引き起こす。なぜなら、可変的な計算時間はこの測定には受け入れられないからである。
【０００８】
この公知の方法の更に別の欠点は、優先順位閾値が測定のために使用されるバックグラウンドプロセスの優先順位によって決定されることにある。すなわち、バックグラウンドプロセスよりも高い優先順位を有するプロセスによって消費される計算時間だけが決定できる。しかし、この方法によっては任意の優先順位閾値より上のプロセスによって消費される計算時間を決定することは不可能である。
【０００９】
さらに、優先順位に依存する計算時間配分の決定のための方法が公知であり、この方法ではそれぞれ既知の優先順位を有するプロセスの開始時点及び終了時点が検出される。この方法は一方では次のような利点を提供する。すなわち、専ら可変的な計算時間を有するプロセスを有するようなマルチプロセス計算システムによっても優先順位に依存する計算時間配分がもとめられる。他方で、この方法によって異なる優先順位に対して同時に計算時間配分がもとめられる。なぜなら、この測定は固定された優先順位を有するバックグラウンドプロセスには限定されなていないからである。
【００１０】
しかし、この公知の方法の欠点は、ハードウェアリソース及び計算時間の比較的大きな消費である。
【００１１】
それゆえ、本発明は、冒頭に記述された公知の方法を次のように改善することである。すなわち、任意の優先順位閾値より上の又は下のプロセスの計算時間消費が測定可能であり、しかも一定の計算時間を有するバックグラウンドプロセスが必要とされないことである。
【００１２】
上記課題は冒頭に記述された公知の方法から出発して請求項１の構成によって解決される。
【００１３】
本発明は、マルチプロセス計算システムにおける優先順位に依存する計算時間配分の決定のために、予め設定された優先順位及び予め設定された計算時間を有する別個の測定プロセスを使用する、という一般的な技術的アイデアを含む。
【００１４】
これは一方で次のような利点を提供する。すなわち、優先順位閾値が優先順位に依存する計算時間配分の決定において自由に決定できる。なぜなら、測定プロセスの優先順位は自由に選択可能だからである。
【００１５】
他方で、本発明の方法は、予め設定された計算時間を有する測定プロセスの使用によって全ての他のプロセスの計算時間が可変的であるプロセス管理方法においても適用可能である。
【００１６】
本発明では、測定プロセスは測定期間の間に繰り返し実行され、測定プロセスの実行回数が検出される。測定プロセスの予め設定された計算時間及び測定期間の間の実行回数から、測定期間の間にどの程度の計算時間が測定プロセスによって消費されたかがわかる。このために測定プロセスの繰り返し回数が有利には測定プロセスの予め設定された計算時間によって乗算される。この値は、この測定プロセスの優先順位を有するプロセスに対して使用可能である計算時間に相応する。
【００１７】
さらに、この値からはどの程度の計算時間がより高い優先順位を有するプロセスによって消費されるのかが導出される。予め設定された優先順位値ｎ−１＝１０を有する測定プロセスが例えば使用可能な計算時間の２０％を得る場合、これはより高い優先順位ｎ≧１０を有するプロセスが使用可能な計算時間の８０％を消費することを意味する。
【００１８】
有利には、測定プロセスによって測定の間により低い優先順位を有する少なくとも１つのプロセスが置き換えられる。本発明の有利な実施形態では、しかし、測定プロセスによってより低い優先順位を有する全てのプロセスが置き換えられる。
【００１９】
しかし、測定プロセスよりも低い優先順位を有するプロセスが測定期間の間に単にサスペンドされることも可能である。
【００２０】
本発明の有利な実施形態では、測定プロセスの測定される実行回数ができるだけ歪曲されないように、測定期間は測定プロセスの計算時間よりもはるかに大きい。例えば、測定期間は１００ｍｓを有しうる。しかし、測定期間に対するより大きな値又はより小さな値も可能である。
【００２１】
さらに、有利には、優先順位に依存する計算時間配分の決定はマルチプロセス計算システムの動作中に例えば複数のプロセスにより必要とされる計算時間のその間の変化に起因する変動を検出するために、繰り返し実施される。よって、例えば１つのプロセスにより必要とされる計算時間の延長が優先順位に依存する計算時間配分の変化を引き起こす。それゆえ、有利には、優先順位に依存する計算時間配分の決定は規則的に予め設定された測定インターバルで行われる。この測定インターバルは例えば５００ｍｓの長さであればよい。
【００２２】
しかし、本発明の優先順位に依存する計算時間配分の決定自体が計算時間を消費することを言及しておかなくてはならない。５００ｍｓの測定インターバル及び１００ｍｓの測定期間において本発明の方法の実施のためには例えばこの測定プロセスの優先順位より下のプロセスのために使用可能である計算時間の２０％が必要とされる。
【００２３】
それゆえ、本発明の変形実施形態では、測定インターバル、測定期間及び／又は測定プロセスの計算時間は別のパラメータに依存して調整される。このために、有利には、マルチプロセス計算システムの計算負荷が決定され、測定インターバル、測定期間及び／又は測定プロセスの計算時間が相応に適合される。
【００２４】
優先順位に依存する計算時間配分の本発明による決定は測定プロセスの計算時間が既知であることを前提とする。それゆえ、測定プロセスとして有利には予め設定された既知の計算時間を有するプロセスが使用される。
【００２５】
しかし、代替的に、計算時間がまず最初に既知ではなく、それゆえ本発明の方法の枠内で決定されるようなプロセスを測定プロセスとして使用することも可能である。測定プロセスとして使用されるプロセスの計算時間のこの決定は、例えば本来の方法の前に、較正方法において行われうる。このためには測定プロセスが活性化され、測定プロセスの開始時点及び終了時点が測定され、この結果、これらから測定プロセスの計算時間がもとめられる。
【００２６】
しかし、測定プロセスとして使用されるプロセスの計算時間は、例えば測定プロセスの実行の際に測定プロセスの開始時点及び終了時点を測定することによって、代替的に本来の方法の間に「オンライン」でも行われうる。
【００２７】
最後に、測定プロセスの計算時間は、測定期間の終了後、優先順位に依存する計算時間配分の決定の前にも行われうる。
【００２８】
本発明はプリエンプティブプロセス管理方法によってもノンプリエンプティブ（コオペラティブ）プロセス管理方法によっても使用可能であり、これらの管理方法は当業者には周知であり、それゆえここではこれ以上は記述する必要はない。さらに本発明の枠内では、プリエンプティブ及びノンプリエンプティブプロセス管理方法の混合形式も使用されうる。
【００２９】
さらに、本発明は選択的にスタティック又はダイナミックプロセス管理方法によっても使用されうるものであり、プリエンプティブ及びノンプリエンプティブプロセス管理方法とスタティック及びダイナミックプロセス管理方法との任意の組み合わせが可能である。
【００３０】
さらに、本発明の枠内で使用されるプロセスの概念は一般的に解釈すべきであり、例えばタスク、スレッド及びプログラムモジュールも含む。
【００３１】
本発明の他の有利な実施形態は従属請求項に記述されており、又は、以下において本発明の有利な実施例の記述とともに図面に基づいて詳しく説明される。
【００３２】
図１は、フローチャートとしての本発明の方法を示し、
図２は、フローチャートの形式の本発明の方法の変形実施例を示し、ならびに、
図３は、本発明の方法を明瞭に説明するためのタイムチャートを示す。
【００３３】
図１に図示されたフローチャートは計算時間割り当て分の決定を可能にし、この計算時間割り当て分はマルチプロセス計算システムにおいてプロセス１によって消費され、このプロセス１の優先順位は概略的に図３のタイムチャートに図示されているような優先順位閾値より大きいか又は等しい。
【００３４】
このために、第１のステップにおいてまず最初に優先順位閾値ｎが予め設定される。計算時間配分を優先順位に依存して異なる優先順位に対して決定することができるように、この優先順位閾値ｎは自由に選択可能である。
【００３５】
次いで、測定プロセス２が発生され、この測定プロセス２の優先順位はＰＲＩＯＭＥＳＳ＝ｎ−１である。これは、優先順位が優先順位閾値ｎより大きいか又は等しい全てのプロセスが測定プロセス２よりも高い優先権を有することを意味する。測定プロセス２はこの場合測定プロセス２により消費される計算時間を簡単に決定することができるように予め設定された計算時間ＴＲＥＣＨを有する。さらに、測定プロセス２はその実行の後で直ぐに再び新たな実行が準備され、この結果、より高い優先順位を有する他のプロセスが存在しない場合には、この測定プロセス２が自動的に繰り返される。
【００３６】
次のステップにおいて、測定プロセス２が活性化され、この結果、より小さい優先順位を有する全てのプロセスがこの測定プロセス２によって置き換えられる。
【００３７】
予め設定された測定期間ＴＭＥＳＳの間に、ループにおいて測定期間ＴＭＥＳＳ内の測定プロセス２の実行回数ｉがもとめられ、測定時間ＴＭＥＳＳが経過したかこのループの最後に継続的に検査される。
【００３８】
測定期間ＴＭＥＳＳの経過後に、この測定プロセスが不活性化される。
【００３９】
最後に、測定期間ＴＭＥＳＳの間の測定プロセス２の測定された実行回数ｉ、測定期間ＴＭＥＳＳ及び測定プロセス２の予め設定された計算時間ＴＲＥＣＨから、次の公式
Ａ（ｎ）＝１−ｉ（ｎ）・（ＴＲＥＣＨ／ＴＭＥＳＳ）
に従って、プロセス１の計算時間割り当て分Ａが計算される。これらのプロセス１の優先順位は優先順位閾値ｎよりも大きいか又は等しい。
【００４０】
図２は、上述の本発明の方法の変形実施例を示し、この変形実施例では、ｎより大きいか又は等しい優先順位を有するプロセスに割り当てられる計算時間割り当て分Ａの測定が継続的にループにおいて繰り返される。
【００４１】
さらに、ループにおいて継続的にマルチプロセス計算システムの計算負荷Ｂがもとめられ、この結果、測定が計算負荷Ｂに適合される。
【００４２】
このために、ループにおいて測定プロセスの計算時間ＴＲＥＣＨが計算負荷Ｂの関数として決定される。
【００４３】
さらに、測定期間ＴＭＥＳＳも計算負荷Ｂの関数として決定される。
【００４４】
最後に、このループにおいて、測定インターバルＴＩＮＴが計算負荷Ｂの関数として決定され、この測定インターバルＴＩＮＴは、どのような時間間隔で本発明の測定方法が図１に従って実施されるかを示している。
【００４５】
測定インターバルＴＩＮＴの経過後に、このループは改めて実施され、その都度計算時間割り当て分Ａが図１に従って決定される。
【００４６】
本発明は上述の有利な実施例に限定されない。むしろ多数の変形形態及び修正形態が可能であり、これらも同様に本発明の思想を利用し、それゆえ権利保護範囲に入る。
【図面の簡単な説明】
【００４７】
【図１】フローチャートとしての本発明の方法を示す。
【図２】フローチャートの形式の本発明の方法の変形実施例を示す。
【図３】本発明の方法を明瞭に説明するためのタイムチャートを示す。
【符号の説明】
【００４８】
ＴＲＥＣＨ  測定プロセスの計算時間
ＰＲＩＯＭＥＳＳ  測定プロセスの優先順位
ＴＭＥＳＳ  測定プロセスの測定期間
ＴＩＮＴ  測定インターバル
ｎ  優先順位閾値
ｉ  測定プロセスの実行回数
Ａ  計算時間割り当て分
Ｂ  計算負荷
１  プロセス
２  測定プロセス
【図１】
2005524904.tif 000003
【図２】
2005524904.tif 000004
【図３】
2005524904.tif 000005
【国際調査報告】
2005524904.tif 000006
2005524904.tif 000007
2005524904.tif 000008
2005524904.tif 000009
2005524904.tif 000010
2005524904.tif 000011